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

📄 aironet4500.h

📁 Linux内核源代码 为压缩文件 是<<Linux内核>>一书中的源代码
💻 H
📖 第 1 页 / 共 4 页
字号:
	#define aironet4500_gap_len_without_802_3	6	#define aironet4500_gap_len_with_802_3		0	struct ieee_802_3_header	   		ieee_802_3;	u8					*	payload;	};struct awc_fid {	u32	type;	#define p80211_llc_snap		0x0100	#define p80211_8021H		0x0200	#define p80211_8022		0x0400	#define p80211_8023		0x0800	#define p80211_snap_8021H	0x1000	#define p80211copy_path_skb	0x2000	u8	priority;	u8	busy;		#define awc_tx_fid_complete_read 0x01	u16	state;	union {		struct aironet4500_tx_fid tx;		struct aironet4500_rx_fid rx;		} u;		struct ieee_802_11_snap_header snap;	struct ieee_802_11_802_1H_header bridge;	u16			bridge_size;	struct ieee_802_11_802_2_header p8022;	u16			pkt_len;	u8	* mac;	struct sk_buff *	skb;	long long		transmit_start_time;	struct awc_fid	*	next;	struct awc_fid	*	prev;	};struct awc_fid_queue {	struct awc_fid * head;	struct awc_fid * tail;	int	size;	my_spinlock_t spinlock;};extern  __inline__ voidawc_fid_queue_init(struct awc_fid_queue * queue){	unsigned long flags;	memset(queue,0, sizeof(struct awc_fid_queue));		my_spin_lock_init(&queue->spinlock);	my_spin_lock_irqsave(&queue->spinlock,flags);	queue->head = NULL;	queue->tail = NULL;	queue->size = 0;	my_spin_unlock_irqrestore(&queue->spinlock,flags);	};extern inline voidawc_fid_queue_push_tail(	struct awc_fid_queue * 	queue,				struct awc_fid *	fid){	unsigned long flags;	my_spin_lock_irqsave(&queue->spinlock,flags);			fid->prev = queue->tail;	fid->next = NULL;		if (queue->tail){		queue->tail->next = fid;	} 		queue->tail  = fid;		if (!queue->head)		queue->head = fid;	queue->size++;	my_spin_unlock_irqrestore(&queue->spinlock,flags);		};extern inline voidawc_fid_queue_push_head(	struct awc_fid_queue * 	queue,				struct awc_fid *	fid){	unsigned long flags;	my_spin_lock_irqsave(&queue->spinlock,flags);			fid->prev = NULL;	fid->next = queue->head;		if (queue->head){		queue->head->prev = fid;	} 		queue->head  = fid;		if (!queue->tail)		queue->tail = fid;	queue->size++;			my_spin_unlock_irqrestore(&queue->spinlock,flags);	};extern inline voidawc_fid_queue_rm(		struct awc_fid_queue * 	queue,				struct awc_fid *	fid){	if (fid->prev) {		fid->prev->next = fid->next;	};	if (fid->next) {		fid->next->prev = fid->prev;	};		if (fid == queue->tail) {		queue->tail = fid->prev;	};	if (fid == queue->head) {		queue->head = fid->next;	};	fid->next = NULL;	fid->prev = NULL;	queue->size--;	if (queue->size ==0 ){		queue->tail = NULL;		queue->head = NULL;	}		};extern inline voidawc_fid_queue_remove(		struct awc_fid_queue * 	queue,				struct awc_fid *	fid){	unsigned long flags;	my_spin_lock_irqsave(&queue->spinlock,flags);			awc_fid_queue_rm(queue,fid);		my_spin_unlock_irqrestore(&queue->spinlock,flags);	};extern inline struct awc_fid * awc_fid_queue_pop_head(		struct awc_fid_queue * 	queue){	unsigned long flags;	struct awc_fid * fid;		my_spin_lock_irqsave(&queue->spinlock,flags);		fid = queue->head;	if (fid)		awc_fid_queue_rm(queue,fid);				my_spin_unlock_irqrestore(&queue->spinlock,flags);		return fid;};extern inline struct awc_fid * awc_fid_queue_pop_tail(		struct awc_fid_queue * 	queue){	unsigned long flags;	struct awc_fid * fid;		my_spin_lock_irqsave(&queue->spinlock,flags);		fid = queue->tail;	if (fid)			awc_fid_queue_rm(queue,fid);		my_spin_unlock_irqrestore(&queue->spinlock,flags);		return fid;};#define AWC_TX_HEAD_SIZE		0x44#define AWC_TX_ALLOC_SMALL_SIZE 	200#define AWC_RX_BUFFS			50/*****************************     	RID & CONFIG 	***********************/struct awc_config{    unsigned short    Len;                                /* sizeof(PC4500_CONFIG) */    unsigned short    OperatingMode;                      /* operating mode        */    #define           MODE_STA_IBSS                0    #define           MODE_STA_ESS                 1    #define           MODE_AP                      2    #define           MODE_AP_RPTR                 3    #define           MODE_ETHERNET_HOST           (0<<8)    /* rx payloads converted */    #define           MODE_LLC_HOST                (1<<8)    /* rx payloads left as is */    #define           MODE_AIRONET_EXTEND          (1<<9)    /* enable Aironet extenstions */    #define           MODE_AP_INTERFACE            (1<<10) /* enable ap interface extensions */    unsigned short    ReceiveMode;                        /* receive mode */    #define           RXMODE_BC_MC_ADDR            0    #define           RXMODE_BC_ADDR               1         /* ignore multicasts */    #define           RXMODE_ADDR                  2         /* ignore multicast and broadcast */    #define           RXMODE_RFMON                 3         /* wireless monitor mode */    #define           RXMODE_RFMON_ANYBSS 4    #define           RXMODE_LANMON                5         /* lan style monitor -- data packets only */    #define           RXMODE_DISABLE_802_3_HEADER  0x100    /* disables 802.3 header on rx */    unsigned short    FragmentThreshold;    unsigned short    RtsThreshold;    unsigned char     StationMacAddress[6];    unsigned char     Rates[8];    unsigned short    ShortRetryLimit;    unsigned short    LongRetryLimit;    unsigned short    TxLifetime;                         /* in kusec */    unsigned short    RxLifetime;                         /* in kusec */    unsigned short    Stationary;    unsigned short    Ordering;    unsigned short    DeviceType;                         /* for overriding device type */    unsigned short    _reserved1[5];                         /*---------- Scanning/Associating ----------*/    unsigned short    ScanMode;    #define           SCANMODE_ACTIVE              0    #define           SCANMODE_PASSIVE             1    #define           SCANMODE_AIROSCAN            2    unsigned short    ProbeDelay;                         /* in kusec */    unsigned short    ProbeEnergyTimeout;                 /* in kusec */    unsigned short    ProbeResponseTimeout;    unsigned short    BeaconListenTimeout;    unsigned short    JoinNetTimeout;    unsigned short    AuthenticationTimeout;    unsigned short    AuthenticationType;    #define           AUTH_OPEN                    1    #define           AUTH_SHAREDKEY               2    #define           AUTH_EXCLUDENONWEP           4    unsigned short    AssociationTimeout;    unsigned short    SpecifiedApTimeout;    unsigned short    OfflineScanInterval;    unsigned short    OfflineScanDuration;    unsigned short    LinkLossDelay;    unsigned short    MaxBeaconLostTime;    unsigned short    RefreshInterval;   #define           DISABLE_REFRESH           0xFFFF   unsigned short    _reserved1a[1];                      /*---------- Power save operation ----------*/   unsigned short    PowerSaveMode;   #define           POWERSAVE_CAM             0   #define           POWERSAVE_PSP             1   #define           POWERSAVE_PSP_CAM         2   unsigned short    SleepForDtims;   unsigned short    ListenInterval;   unsigned short    FastListenInterval;   unsigned short    ListenDecay;   unsigned short    FastListenDelay;   unsigned short    _reserved2[2];                       /*---------- Ap/Ibss config items ----------*/   unsigned short    BeaconPeriod;   unsigned short    AtimDuration;   unsigned short    HopPeriod;   unsigned short    ChannelSet;   unsigned short    Channel;   unsigned short    DtimPeriod;   unsigned short    _reserved3[2];                       /*---------- Radio configuration ----------*/   unsigned short    RadioType;   #define           RADIOTYPE_DEFAULT         0   #define           RADIOTYPE_802_11          1   #define           RADIOTYPE_LEGACY          2   unsigned char     u8RxDiversity;   unsigned char     u8TxDiversity;   unsigned short    TxPower;   #define           TXPOWER_DEFAULT           0   unsigned short    RssiThreshold;   #define           RSSI_DEFAULT              0   unsigned short    RadioSpecific[4];                 /*---------- Aironet Extensions ----------*/   unsigned char     NodeName[16];   unsigned short    ArlThreshold;   unsigned short    ArlDecay;   unsigned short    ArlDelay;   unsigned short    _reserved4[1];                       /*---------- Aironet Extensions ----------*/   unsigned short    MagicAction;   #define           MAGIC_ACTION_STSCHG       1   #define           MACIC_ACTION_RESUME       2   #define           MAGIC_IGNORE_MCAST        (1<<8)   #define           MAGIC_IGNORE_BCAST        (1<<9)   #define           MAGIC_SWITCH_TO_PSP       (0<<10)   #define           MAGIC_STAY_IN_CAM         (1<<10)};struct awc_SSID {	u16 	lenght;	u8	SSID[32];};struct awc_SSIDs {	u16 	ridLen;	struct awc_SSID SSID[3];};struct awc_fixed_APs{	u16	ridLen;	u8	AP[4][6];};struct awc_driver_name{	u16	ridLen;	u8	name[16];};struct awc_encapsulation{	u16 	etherType;	u16	Action;};struct awc_enc_trans{	u16				ridLen;	struct awc_encapsulation 	rules[8];};struct awc_wep_key {	u16	ridLen;	u16	KeyIndex;	u8	Address[6];	u16	KeyLen;	u8	Key[16];};struct awc_modulation {	u16	ridLen;	u16	Modulation;};struct awc_cap{	u16		ridLen;	u8		OUI[3];	u8		ProductNum[3];	u8		ManufacturerName[32];	u8		ProductName[16];	u8		ProductVersion[8];	u8		FactoryAddress[6];	u8		AironetAddress[6];	u16		RadioType;	u16		RegDomain;	u8		Callid[6];	u8		SupportedRates[8];	u8		RxDiversity;	u8		TxDiversity;	u16		TxPowerLevels[8];	u16		HardwareVersion;	u16		HardwareCapabilities;	u16		TemperatureRange;	u16		SoftwareVersion;	u16		SoftwareSubVersion;	u16		InterfaceVersion;	u16		SoftwareCapabilities;	u8		BootBlockVersionMajor;	u8              BootBlockVersionMinor;	        };struct awc_status{	u16	ridLen;	u8	MacAddress[6];	u16	OperationalMode;	u16	ErrorCode;	u16	CurrentSignalQuality;	u16	SSIDlength;	u8	SSID[32];	u8	ApName[16];	u8	CurrentBssid[32];	u8	PreviousBSSIDs[3][6];	u16	BeaconPeriod;	u16	DtimPeriod;	u16	AtimDuration;	u16	HopPeriod;	u16	ChannelSet;	u16	Channel;	u16	HopsToBackbone;	u16	ApTotalLoad;	u16	OurGeneratedLoad;	u16	AccumulatedArl;	};

⌨️ 快捷键说明

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