mirror of
				https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
				synced 2025-10-31 16:18:51 +01:00 
			
		
		
		
	Fixed MTP to work with TWRP
This commit is contained in:
		
						commit
						f6dfaef42e
					
				
					 50820 changed files with 20846062 additions and 0 deletions
				
			
		
							
								
								
									
										105
									
								
								drivers/misc/modem_v1/modem_pktlog.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										105
									
								
								drivers/misc/modem_v1/modem_pktlog.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,105 @@ | |||
| #ifndef __MODEM_PKTLOG_H__ | ||||
| #define __MODEM_PKTLOG_H__ | ||||
| 
 | ||||
| #ifdef CONFIG_DEBUG_PKTLOG | ||||
| 
 | ||||
| #include <linux/time.h> | ||||
| 
 | ||||
| struct pktbuf_private { | ||||
| 	unsigned char dir; | ||||
| } __packed; | ||||
| #define pktpriv(pkt) ((struct pktbuf_private *)&pkt->cb) | ||||
| 
 | ||||
| #define PCAP_VERSION_MAJOR 2 | ||||
| #define PCAP_VERSION_MINOR 4 | ||||
| #define TCPDUMP_MAGIC 0xa1b2c3d4 | ||||
| 
 | ||||
| #define DLT_LINUX_SLL 113 | ||||
| #define WTAP_ENCAP_USER0 147 /* sipc5 header */ | ||||
| 
 | ||||
| struct pcap_file_header { | ||||
| 	unsigned magic; | ||||
| 	unsigned short version_major; | ||||
| 	unsigned short version_minor; | ||||
| 	int thiszone; | ||||
| 	unsigned sigflag; | ||||
| 	unsigned snaplen; | ||||
| 	unsigned linktype; | ||||
| } __packed; | ||||
| 
 | ||||
| struct pcap_hdr { | ||||
| 	unsigned tv_sec; | ||||
| 	unsigned tv_usec; | ||||
| 	unsigned caplen; | ||||
| 	unsigned len; | ||||
| } __packed; | ||||
| 
 | ||||
| #define SLL_ADDRLEN 8 | ||||
| struct sll_hdr { | ||||
| 	unsigned short pkttype; | ||||
| 	unsigned short hatype; | ||||
| 	unsigned short halen; | ||||
| 	unsigned char addr[SLL_ADDRLEN]; | ||||
| 	unsigned short protocol; | ||||
| } __packed; | ||||
| 
 | ||||
| struct sipc_debug { | ||||
| 	unsigned char dir; | ||||
| } __packed; | ||||
| 
 | ||||
| struct pktdump_hdr { | ||||
| 	struct pcap_hdr pcap; | ||||
| 	struct sipc_debug sd; | ||||
| } __packed; | ||||
| 
 | ||||
| struct pktlog_data { | ||||
| 	struct miscdevice misc; | ||||
| 	atomic_t opened; | ||||
| 	wait_queue_head_t wq; | ||||
| 
 | ||||
| 	unsigned qmax; | ||||
| 	unsigned snaplen; | ||||
| 
 | ||||
| 	struct sk_buff_head logq; | ||||
| 
 | ||||
| 	bool copy_file_header; | ||||
| 	struct pcap_file_header file_hdr; | ||||
| 	struct pktdump_hdr hdr; | ||||
| }; | ||||
| 
 | ||||
| enum { | ||||
| 	PKTLOG_BOTTOM, 	/* to/from phy layer */ | ||||
| 	PKTLOG_TOP,	/* to/from network/ril layer */ | ||||
| 	PKTLOG_TEXT, | ||||
| }; | ||||
| 
 | ||||
| #define PKT_TX 0x10 | ||||
| #define PKT_RX 0x20 | ||||
| #define PKT_IP 0x40 | ||||
| 
 | ||||
| #define PKT_BOT 0x0 | ||||
| #define PKT_TOP 0xF | ||||
| 
 | ||||
| 
 | ||||
| extern struct pktlog_data *create_pktlog(char *name); | ||||
| extern void remove_pktlog(struct pktlog_data *pktlog); | ||||
| extern void pktlog_queue_skb(struct pktlog_data *pktlog, unsigned char dir, | ||||
| 		struct sk_buff *skb); | ||||
| 
 | ||||
| #define pktlog_tx_bottom_skb(mld, skb)	pktlog_queue_skb((mld)->pktlog, (PKT_TX | PKT_BOT) , skb) | ||||
| #define pktlog_tx_top_skb(mld, skb)	pktlog_queue_skb((mld)->pktlog, (PKT_TX | PKT_TOP) , skb) | ||||
| #define pktlog_rx_bottom_skb(mld, skb)	pktlog_queue_skb((mld)->pktlog, (PKT_RX | PKT_BOT) , skb) | ||||
| #define pktlog_rx_top_skb(mld, skb)	pktlog_queue_skb((mld)->pktlog, (PKT_RX | PKT_TOP) , skb) | ||||
| #define pktlog_text_buf(mld, buf)	do {} while (0) | ||||
| 
 | ||||
| #else /* else of DEBUG_PKTLOG */ | ||||
| static inline struct pktlog_data *create_pktlog(char *name) { return NULL; } | ||||
| #define remove_pktlog(pkt)		do {} while (0) | ||||
| #define pktlog_tx_bottom_skb(mld, skb)	do {} while (0) | ||||
| #define pktlog_tx_top_skb(mld, skb)	do {} while (0) | ||||
| #define pktlog_rx_bottom_skb(mld, skb)	do {} while (0) | ||||
| #define pktlog_rx_top_skb(mld, skb)	do {} while (0) | ||||
| #define pktlog_text_buf(mld, buf)	do {} while (0) | ||||
| #endif /* end of DEBUG_PKTLOG */ | ||||
| 
 | ||||
| #endif | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 awab228
						awab228