⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 am930hw.h

📁 wlan_monitor monitor utility for wlan device
💻 H
📖 第 1 页 / 共 2 页
字号:
	volatile UINT32	rsvd1;	volatile UINT8	rts_attempts;	volatile UINT8	data_attempts;	volatile UINT8	tx_cntl;	volatile UINT8	rsvd2;} SU_PACK am930tx_desc_t;#define TXD_OFF_START_FRAME		0#define TXD_OFF_NEXT			4#define TXD_OFF_LEN				8#define TXD_OFF_STATE			10#define TXD_OFF_RATE			11#define TXD_OFF_DIFS_ATTEMPTS	12#define TXD_OFF_DIFS_FAILURES	13#define TXD_OFF_SIFS_ATTEMPTS	14#define TXD_OFF_SIFS_FAILURES	15#define TXD_OFF_RSVD1			16#define TXD_OFF_RTS_ATTEMPTS	20#define TXD_OFF_DATA_ATTEMPTS	21#define TXD_OFF_TX_CNTL			22#define TXD_OFF_RSVD2			23/*--- TX Descriptor - state values and testing macros -*/#define SUTXD_ST_FWOWN				(BIT7)#define SUTXD_ST_DONE				(BIT6)#define SUTXD_ST_REJECTED			(BIT5)#define SUTXD_ST_MSDU_TMOUT			(BIT4)#define SUTXD_ST_ABRT				(BIT3)#define SUTXD_ST_ABRT_NOTX			(BIT2)#define SUTXD_ST_MAX_RETRY			(BIT1)#define SUTXD_ST_TXERR				(BIT0)#define SUTXD_ST_IS_FWOWN(x)		((x) & SUTXD_ST_FWOWN)#define SUTXD_ST_IS_HOSTOWN(x)		(~(x) & SUTXD_ST_FWOWN)#define SUTXD_ST_IS_DONE(x)			((x) & SUTXD_ST_DONE)#define SUTXD_ST_IS_REJECTED(x)		((x) & SUTXD_ST_REJECTED)#define SUTXD_ST_IS_MSDU_TMOUT(x)	((x) & SUTXD_ST_MSDU_TMOUT)#define SUTXD_ST_IS_ABRT(x)			((x) & SUTXD_ST_ABRT)#define SUTXD_ST_IS_ABRT_NOTX(x)	((x) & SUTXD_ST_ABRT_NOTX)#define SUTXD_ST_IS_MAX_RETRY(x)	((x) & SUTXD_ST_MAX_RETRY)#define SUTXD_ST_IS_TXERR(x)		((x) & SUTXD_ST_TXERR)/*--- TX Descriptor - tx_cntl values ----*/#define SUTXD_CTL_PRESERVE_SEQ		(BIT7)#define SUTXD_CTL_RSVD1				(BIT6)#define SUTXD_CTL_RSVD2				(BIT5)#define SUTXD_CTL_RSVD3				(BIT4)#define SUTXD_CTL_RSVD4				(BIT3)#define SUTXD_CTL_RSVD5				(BIT2)#define SUTXD_CTL_BURST				(BIT1)#define SUTXD_CTL_FRAGS				(BIT0)/*=============================================================*//*--- Command Argument Types  ---------------------------------*//*=============================================================*//*--- Test Interface/NOP -SUCMD_TEST_NOP ----------------------*//*typedef struct sucmd_test_nop{} SU_PACK sucmd_test_nop_t;*//*--- Set MIB Variables - SUCMD_SET_MIB_VAR -------------------*/typedef struct sucmd_set_mib_var{	UINT8	type;	UINT8	size;	UINT8	index;	UINT8	rsvd;	UINT8	data[72];} SU_PACK sucmd_set_mib_var_t;/*--- Init Tx Routines --- SUCMD_INIT_TX ----------------------*/typedef struct sucmd_init_tx{	UINT32	data_desc;	UINT32	mgmt_desc;	UINT32	bcast_desc;	UINT32	pspoll_desc;	UINT32	cfpoll_desc;} SU_PACK sucmd_init_tx_t;/*--- Flush Tx ----------- SUCMD_FLUSH_TX ---------------------*/typedef struct sucmd_flush_tx{	UINT8	data;	UINT8	mgmt;	UINT8	bcast;	UINT8	pspoll;	UINT8	cfpoll;} SU_PACK sucmd_flush_tx_t;/*--- Enable Receiver ---- SUCMD_EN_RCVR ----------------------*/typedef struct sucmd_en_rcvr{	UINT32	data_desc;	UINT32	pspoll_desc;} SU_PACK sucmd_en_rcvr_t;/*--- Disable Receiver --- SUCMD_DIS_RCVR ---------------------*//*typedef struct sucmd_dis_rcvr{} SU_PACK sucmd_dis_rcvr_t;*//*--- Sleep -------------- SUCMD_SLEEP ------------------------*/typedef struct sucmd_sleep{	UINT64	wake_up_time;} SU_PACK sucmd_sleep_t;/*--- Wake --------------- SUCMD_WAKE -------------------------*//*typedef struct sucmd_wake{} SU_PACK sucmd_wake_t;*//*--- Get MIB variables -- SUCMD_GET_MIB_VAR ------------------*/typedef struct sucmd_get_mib_var{	UINT8	type;	UINT8	size;	UINT8	index;	UINT8	rsvd;	UINT8	data[72];} SU_PACK sucmd_get_mib_var_t;/*--- Scan --------------- SUCMD_SCAN -------------------------*/typedef struct sucmd_scan{	UINT16	duration;	UINT8	set_or_ch;	UINT8	pattern;	UINT8	index;	UINT8	suspend;} SU_PACK sucmd_scan_t;/*--- Sync --------------- SUCMD_SYNC -------------------------*/typedef struct sucmd_sync{	UINT8	set_or_ch;	UINT8	pattern;	UINT8	index;	UINT8	start_BSS;	UINT16	dwell_interval;	UINT16	rsvd;  /* MUST be zero */	UINT8	bss_timestamp[WLAN_BSS_TS_LEN];	UINT32	ref_time;} SU_PACK sucmd_sync_t;/*--- Resume ------------- SUCMD_RESUME -----------------------*//*typedef struct sucmd_resume{} SU_PACK sucmd_resume_t;*//*=============================================================*//*--- AM930 Hardware interface types        -------------------*//*=============================================================*/typedef void (*am930hw_scan_callback_t)(void *);typedef struct am930mem		/* used for tx buffer mem mgmt */{	atomic_t	lock;	UINT32		bits;	UINT32		start;	UINT32		len;	UINT32		fragsize;} am930mem_t;typedef struct am930hw_stats{	UINT32	tx_tmout;	UINT32	tx_fifo_uflow;	UINT32	tx_retry;	UINT32	tx_rejected;	UINT32	rx_crcerr;	UINT32	rx_buf_oflow;} am930hw_stats_t;typedef struct am930hw{	/* object status indicator */	volatile UINT32	state;	/* driver support */	struct am930mac	*mac;	/* resource assignments */	UINT32			membase;	UINT32			usemem;		/* use mem mapped io?? */	UINT32			iobase;	UINT32			irq;	/* firmware revision */	UINT32			fw_major;	UINT32			fw_minor;	UINT32			fw_api;	UINT32			fw_date;	/* firmware interface, note: the addrs are in card space */	UINT32			banner;	UINT32			cs;	UINT32			cmd;	UINT32			txcmplt;	UINT32			vbm;	/* tx queue location */	UINT32			tx_base;	UINT32			mgmt_tx_base;	/* rx queue location */	UINT32			rx_base;	UINT32			rx_len;	/* tx queue management */	am930mem_t		*mem;	UINT32			tx_tail;	UINT32			mgmt_tx_tail;	UINT8			*txfrbuf;	/* rx queue current head ptr */	UINT32			rx_head;	/* F/W command support elements */	volatile UINT8	last_cmd;	volatile UINT8	scan_ch;		/* when scannning,  this is the channel */	am930hw_stats_t	stats;	/* callback ptr(s) */	am930hw_scan_callback_t		scan_callback;	void						*scan_callbackarg;} am930hw_t;/* bit flags for state information */#define AM930HW_CONFIG_PENDING	(BIT0)#define AM930HW_CONFIG			(BIT1)#define AM930HW_INTOCURRED		(BIT2)#define AM930HW_SCANNING		(BIT3)#define AM930HW_RXENABLED		(BIT4)#define AM930HW_TXENABLED		(BIT5)/* Method return codes */#define AM930HW_SUCCESS			0#define AM930HW_FAILURE			1#define AM930HW_NOTSUPPORTED	2/* Scan method bit flags */#define	AM930HWSCAN_ACTIVE		(BIT0)#define	AM930HWSCAN_PASSIVE		(BIT1)#define	AM930HWSCAN_IBSS		(BIT2)#define	AM930HWSCAN_ESS			(BIT3)/*=============================================================*//*--- Methods -------------------------------------------------*//*=============================================================*//* public: */am930hw_t*	am930hw_construct(UINT32 irq, UINT32 iobase,								UINT32 membase, am930mac_t *mac);void 		am930hw_destruct(am930hw_t *hw);UINT32	am930hw_reset( am930hw_t *hw );int		am930hw_init_rx_tx( am930hw_t *hw );void 	am930hw_ISR( am930hw_t *hw );UINT32	am930hw_scan( am930hw_t *hw, UINT32 cntl, UINT48 bssid, 					UINT32 ch, UINT32 duration,					am930hw_scan_callback_t cb, void *callback_arg );UINT32 am930hw_joinbss( am930hw_t *hw, UINT32 ch, UINT32 newBSS, 						UINT48 bssid, char *ssid, UINT32 bcn_int,						wlan_bss_ts_t ts, UINT32 sutro_ref_time );UINT32 am930hw_txdata( am930hw_t* hw, UINT8 *buf, UINT32 len, UINT32 rate);UINT32 am930hw_txmgmt( am930hw_t* hw, UINT8 *buf, UINT32 len);UINT32 am930hw_mibget( am930hw_t *hw, UINT32 mibsec, UINT32 offset,						UINT32 len, void *buf);UINT32 am930hw_mibgetitem( am930hw_t *hw, UINT32 itemid, void *buf, UINT32 len);UINT32 am930hw_mibset( am930hw_t *hw, UINT32 mibsec, UINT32 offset,						UINT32 len, void *buf);UINT32 am930hw_mibsetitem( am930hw_t *hw, UINT32 itemid, void *buf, UINT32 len);/* start mod: tld */UINT32 am930hw_rssi_tld(int tld_v);/* end mod: tld */#endif /* _LINUX_AM930HW_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -