aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/staging/rtl8192e/r8192E.h174
1 files changed, 6 insertions, 168 deletions
diff --git a/drivers/staging/rtl8192e/r8192E.h b/drivers/staging/rtl8192e/r8192E.h
index 720faf1939d..41acd9eb21b 100644
--- a/drivers/staging/rtl8192e/r8192E.h
+++ b/drivers/staging/rtl8192e/r8192E.h
@@ -20,7 +20,6 @@
20 20
21#include <linux/module.h> 21#include <linux/module.h>
22#include <linux/kernel.h> 22#include <linux/kernel.h>
23//#include <linux/config.h>
24#include <linux/init.h> 23#include <linux/init.h>
25#include <linux/ioport.h> 24#include <linux/ioport.h>
26#include <linux/sched.h> 25#include <linux/sched.h>
@@ -28,7 +27,6 @@
28#include <linux/slab.h> 27#include <linux/slab.h>
29#include <linux/netdevice.h> 28#include <linux/netdevice.h>
30#include <linux/pci.h> 29#include <linux/pci.h>
31//#include <linux/usb.h>
32#include <linux/etherdevice.h> 30#include <linux/etherdevice.h>
33#include <linux/delay.h> 31#include <linux/delay.h>
34#include <linux/rtnetlink.h> //for rtnl_lock() 32#include <linux/rtnetlink.h> //for rtnl_lock()
@@ -130,9 +128,9 @@ do { if(rt_global_debug_component & component) \
130#define COMP_EVENTS BIT19 // Event handling 128#define COMP_EVENTS BIT19 // Event handling
131 129
132#define COMP_RF BIT20 // For RF. 130#define COMP_RF BIT20 // For RF.
133//1!!!!!!!!!!!!!!!!!!!!!!!!!!! 131
134//1//1Attention Please!!!<11n or 8190 specific code should be put below this line> 132/* 11n or 8190 specific code should be put below this line */
135//1!!!!!!!!!!!!!!!!!!!!!!!!!!! 133
136 134
137#define COMP_FIRMWARE BIT21 //for firmware downloading 135#define COMP_FIRMWARE BIT21 //for firmware downloading
138#define COMP_HT BIT22 // For 802.11n HT related information. by Emily 2006-8-11 136#define COMP_HT BIT22 // For 802.11n HT related information. by Emily 2006-8-11
@@ -354,8 +352,6 @@ typedef struct _rx_fwinfo_819x_pci{
354#define MAX_FIRMWARE_INFORMATION_SIZE 32 /*2006/04/30 by Emily forRTL8190*/ 352#define MAX_FIRMWARE_INFORMATION_SIZE 32 /*2006/04/30 by Emily forRTL8190*/
355#define MAX_802_11_HEADER_LENGTH (40 + MAX_FIRMWARE_INFORMATION_SIZE) 353#define MAX_802_11_HEADER_LENGTH (40 + MAX_FIRMWARE_INFORMATION_SIZE)
356#define ENCRYPTION_MAX_OVERHEAD 128 354#define ENCRYPTION_MAX_OVERHEAD 128
357//#define USB_HWDESC_HEADER_LEN sizeof(tx_desc_819x_usb)
358//#define TX_PACKET_SHIFT_BYTES (USB_HWDESC_HEADER_LEN + sizeof(tx_fwinfo_819x_usb))
359#define MAX_FRAGMENT_COUNT 8 355#define MAX_FRAGMENT_COUNT 8
360#define MAX_TRANSMIT_BUFFER_SIZE (1600+(MAX_802_11_HEADER_LENGTH+ENCRYPTION_MAX_OVERHEAD)*MAX_FRAGMENT_COUNT) 356#define MAX_TRANSMIT_BUFFER_SIZE (1600+(MAX_802_11_HEADER_LENGTH+ENCRYPTION_MAX_OVERHEAD)*MAX_FRAGMENT_COUNT)
361 357
@@ -401,7 +397,7 @@ typedef struct _rt_firmware{
401 u8 firmware_buf[MAX_FW_INIT_STEP][RTL8190_MAX_FIRMWARE_CODE_SIZE]; 397 u8 firmware_buf[MAX_FW_INIT_STEP][RTL8190_MAX_FIRMWARE_CODE_SIZE];
402 u16 firmware_buf_size[MAX_FW_INIT_STEP]; 398 u16 firmware_buf_size[MAX_FW_INIT_STEP];
403}rt_firmware, *prt_firmware; 399}rt_firmware, *prt_firmware;
404//+by amy 080507 400
405#define MAX_RECEIVE_BUFFER_SIZE 9100 // Add this to 9100 bytes to receive A-MSDU from RT-AP 401#define MAX_RECEIVE_BUFFER_SIZE 9100 // Add this to 9100 bytes to receive A-MSDU from RT-AP
406 402
407/* Firmware Queue Layout */ 403/* Firmware Queue Layout */
@@ -427,55 +423,12 @@ typedef struct _rt_firmware{
427#define RSVD_FW_QUEUE_PAGE_BCN_SHIFT 0x00 423#define RSVD_FW_QUEUE_PAGE_BCN_SHIFT 0x00
428#define RSVD_FW_QUEUE_PAGE_PUB_SHIFT 0x08 424#define RSVD_FW_QUEUE_PAGE_PUB_SHIFT 0x08
429 425
430//8187B Security
431//#define RWCAM 0xA0 // Software read/write CAM config
432//#define WCAMI 0xA4 // Software write CAM input content
433//#define RCAMO 0xA8 // Output value from CAM according to 0xa0 setting
434#define DCAM 0xAC // Debug CAM Interface 426#define DCAM 0xAC // Debug CAM Interface
435#define AESMSK_FC 0xB2 // AES Mask register for frame control (0xB2~0xB3). Added by Annie, 2006-03-06. 427#define AESMSK_FC 0xB2 // AES Mask register for frame control (0xB2~0xB3). Added by Annie, 2006-03-06.
436 428
437 429
438#define CAM_CONTENT_COUNT 8 430#define CAM_CONTENT_COUNT 8
439//#define CFG_DEFAULT_KEY BIT5
440#define CFG_VALID BIT15 431#define CFG_VALID BIT15
441#if 0
442//----------------------------------------------------------------------------
443// 8187B WPA Config Register (offset 0xb0, 1 byte)
444//----------------------------------------------------------------------------
445#define SCR_UseDK 0x01
446#define SCR_TxSecEnable 0x02
447#define SCR_RxSecEnable 0x04
448
449//----------------------------------------------------------------------------
450// 8187B CAM Config Setting (offset 0xb0, 1 byte)
451//----------------------------------------------------------------------------
452#define CAM_VALID 0x8000
453#define CAM_NOTVALID 0x0000
454#define CAM_USEDK 0x0020
455
456
457#define CAM_NONE 0x0
458#define CAM_WEP40 0x01
459#define CAM_TKIP 0x02
460#define CAM_AES 0x04
461#define CAM_WEP104 0x05
462
463//#define CAM_SIZE 16
464#define TOTAL_CAM_ENTRY 16
465#define CAM_ENTRY_LEN_IN_DW 6 // 6, unit: in u4byte. Added by Annie, 2006-05-25.
466#define CAM_ENTRY_LEN_IN_BYTE (CAM_ENTRY_LEN_IN_DW*sizeof(u32)) // 24, unit: in u1byte. Added by Annie, 2006-05-25.
467
468#define CAM_CONFIG_USEDK 1
469#define CAM_CONFIG_NO_USEDK 0
470
471#define CAM_WRITE 0x00010000
472#define CAM_READ 0x00000000
473#define CAM_POLLINIG 0x80000000
474
475//=================================================================
476//=================================================================
477
478#endif
479#define EPROM_93c46 0 432#define EPROM_93c46 0
480#define EPROM_93c56 1 433#define EPROM_93c56 1
481 434
@@ -523,17 +476,6 @@ typedef struct rtl_reg_debug{
523 unsigned char buf[0xff]; 476 unsigned char buf[0xff];
524}rtl_reg_debug; 477}rtl_reg_debug;
525 478
526#if 0
527
528typedef struct tx_pendingbuf
529{
530 struct ieee80211_txb *txb;
531 short ispending;
532 short descfrag;
533} tx_pendigbuf;
534
535#endif
536
537typedef struct _rt_9x_tx_rate_history { 479typedef struct _rt_9x_tx_rate_history {
538 u32 cck[4]; 480 u32 cck[4];
539 u32 ofdm[8]; 481 u32 ofdm[8];
@@ -565,10 +507,6 @@ typedef struct Stats
565{ 507{
566 unsigned long txrdu; 508 unsigned long txrdu;
567 unsigned long rxrdu; 509 unsigned long rxrdu;
568 //unsigned long rxnolast;
569 //unsigned long rxnodata;
570// unsigned long rxreset;
571// unsigned long rxnopointer;
572 unsigned long rxok; 510 unsigned long rxok;
573 unsigned long rxframgment; 511 unsigned long rxframgment;
574 unsigned long rxcmdpkt[4]; //08/05/08 amy rx cmd element txfeedback/bcn report/cfg set/query 512 unsigned long rxcmdpkt[4]; //08/05/08 amy rx cmd element txfeedback/bcn report/cfg set/query
@@ -591,18 +529,12 @@ typedef struct Stats
591 unsigned long txnperr; 529 unsigned long txnperr;
592 unsigned long txnpdrop; 530 unsigned long txnpdrop;
593 unsigned long txresumed; 531 unsigned long txresumed;
594// unsigned long rxerr;
595 unsigned long rxoverflow; 532 unsigned long rxoverflow;
596 unsigned long rxint; 533 unsigned long rxint;
597 unsigned long txnpokint; 534 unsigned long txnpokint;
598// unsigned long txhpokint;
599// unsigned long txhperr;
600 unsigned long ints; 535 unsigned long ints;
601 unsigned long shints; 536 unsigned long shints;
602 unsigned long txoverflow; 537 unsigned long txoverflow;
603// unsigned long rxdmafail;
604// unsigned long txbeacon;
605// unsigned long txbeaconerr;
606 unsigned long txlpokint; 538 unsigned long txlpokint;
607 unsigned long txlpdrop; 539 unsigned long txlpdrop;
608 unsigned long txlperr; 540 unsigned long txlperr;
@@ -663,8 +595,6 @@ typedef struct Stats
663 u32 Slide_Beacon_Total; //cosa add for beacon rssi 595 u32 Slide_Beacon_Total; //cosa add for beacon rssi
664 RT_SMOOTH_DATA_4RF cck_adc_pwdb; 596 RT_SMOOTH_DATA_4RF cck_adc_pwdb;
665 u32 CurrentShowTxate; 597 u32 CurrentShowTxate;
666
667
668} Stats; 598} Stats;
669 599
670 600
@@ -673,8 +603,6 @@ typedef struct Stats
673#define HAL_PRIME_CHNL_OFFSET_LOWER 1 603#define HAL_PRIME_CHNL_OFFSET_LOWER 1
674#define HAL_PRIME_CHNL_OFFSET_UPPER 2 604#define HAL_PRIME_CHNL_OFFSET_UPPER 2
675 605
676//+by amy 080507
677
678typedef struct ChnlAccessSetting { 606typedef struct ChnlAccessSetting {
679 u16 SIFS_Timer; 607 u16 SIFS_Timer;
680 u16 DIFS_Timer; 608 u16 DIFS_Timer;
@@ -795,9 +723,7 @@ typedef enum _RT_CUSTOMER_ID
795 RT_CID_COREGA = 14, 723 RT_CID_COREGA = 14,
796}RT_CUSTOMER_ID, *PRT_CUSTOMER_ID; 724}RT_CUSTOMER_ID, *PRT_CUSTOMER_ID;
797 725
798//================================================================================ 726/* LED customization. */
799// LED customization.
800//================================================================================
801 727
802typedef enum _LED_STRATEGY_8190{ 728typedef enum _LED_STRATEGY_8190{
803 SW_LED_MODE0, // SW control 1 LED via GPIO0. It is default option. 729 SW_LED_MODE0, // SW control 1 LED via GPIO0. It is default option.
@@ -1048,7 +974,6 @@ typedef struct r8192_priv
1048 974
1049 struct work_struct reset_wq; 975 struct work_struct reset_wq;
1050 976
1051/**********************************************************/
1052//for rtl819xPci 977//for rtl819xPci
1053 // Data Rate Config. Added by Annie, 2006-04-13. 978 // Data Rate Config. Added by Annie, 2006-04-13.
1054 u16 basic_rate; 979 u16 basic_rate;
@@ -1227,95 +1152,10 @@ typedef struct r8192_priv
1227 struct workqueue_struct *priv_wq; 1152 struct workqueue_struct *priv_wq;
1228}r8192_priv; 1153}r8192_priv;
1229 1154
1230// for rtl8187
1231// now mirging to rtl8187B
1232/*
1233typedef enum{
1234 LOW_PRIORITY = 0x02,
1235 NORM_PRIORITY
1236 } priority_t;
1237*/
1238//for rtl8187B
1239#if 0
1240typedef enum{
1241 BULK_PRIORITY = 0x01,
1242 //RSVD0,
1243 //RSVD1,
1244 LOW_PRIORITY,
1245 NORM_PRIORITY,
1246 VO_PRIORITY,
1247 VI_PRIORITY, //0x05
1248 BE_PRIORITY,
1249 BK_PRIORITY,
1250 CMD_PRIORITY,//0x8
1251 RSVD3,
1252 BEACON_PRIORITY, //0x0A
1253 HIGH_PRIORITY,
1254 MANAGE_PRIORITY,
1255 RSVD4,
1256 RSVD5,
1257 UART_PRIORITY //0x0F
1258} priority_t;
1259#endif
1260typedef enum{ 1155typedef enum{
1261 NIC_8192E = 1, 1156 NIC_8192E = 1,
1262 } nic_t; 1157} nic_t;
1263
1264
1265#if 0 //defined in Qos.h
1266//typedef u32 AC_CODING;
1267#define AC0_BE 0 // ACI: 0x00 // Best Effort
1268#define AC1_BK 1 // ACI: 0x01 // Background
1269#define AC2_VI 2 // ACI: 0x10 // Video
1270#define AC3_VO 3 // ACI: 0x11 // Voice
1271#define AC_MAX 4 // Max: define total number; Should not to be used as a real enum.
1272
1273//
1274// ECWmin/ECWmax field.
1275// Ref: WMM spec 2.2.2: WME Parameter Element, p.13.
1276//
1277typedef union _ECW{
1278 u8 charData;
1279 struct
1280 {
1281 u8 ECWmin:4;
1282 u8 ECWmax:4;
1283 }f; // Field
1284}ECW, *PECW;
1285
1286//
1287// ACI/AIFSN Field.
1288// Ref: WMM spec 2.2.2: WME Parameter Element, p.12.
1289//
1290typedef union _ACI_AIFSN{
1291 u8 charData;
1292
1293 struct
1294 {
1295 u8 AIFSN:4;
1296 u8 ACM:1;
1297 u8 ACI:2;
1298 u8 Reserved:1;
1299 }f; // Field
1300}ACI_AIFSN, *PACI_AIFSN;
1301 1158
1302//
1303// AC Parameters Record Format.
1304// Ref: WMM spec 2.2.2: WME Parameter Element, p.12.
1305//
1306typedef union _AC_PARAM{
1307 u32 longData;
1308 u8 charData[4];
1309
1310 struct
1311 {
1312 ACI_AIFSN AciAifsn;
1313 ECW Ecw;
1314 u16 TXOPLimit;
1315 }f; // Field
1316}AC_PARAM, *PAC_PARAM;
1317
1318#endif
1319bool init_firmware(struct net_device *dev); 1159bool init_firmware(struct net_device *dev);
1320short rtl8192_tx(struct net_device *dev, struct sk_buff* skb); 1160short rtl8192_tx(struct net_device *dev, struct sk_buff* skb);
1321u32 read_cam(struct net_device *dev, u8 addr); 1161u32 read_cam(struct net_device *dev, u8 addr);
@@ -1334,7 +1174,6 @@ void rtl8192_rx_enable(struct net_device *);
1334void rtl8192_tx_enable(struct net_device *); 1174void rtl8192_tx_enable(struct net_device *);
1335 1175
1336void rtl8192_disassociate(struct net_device *dev); 1176void rtl8192_disassociate(struct net_device *dev);
1337//void fix_rx_fifo(struct net_device *dev);
1338void rtl8185_set_rf_pins_enable(struct net_device *dev,u32 a); 1177void rtl8185_set_rf_pins_enable(struct net_device *dev,u32 a);
1339 1178
1340void rtl8192_set_anaparam(struct net_device *dev,u32 a); 1179void rtl8192_set_anaparam(struct net_device *dev,u32 a);
@@ -1349,7 +1188,6 @@ void write_phy_cck(struct net_device *dev, u8 adr, u32 data);
1349void write_phy_ofdm(struct net_device *dev, u8 adr, u32 data); 1188void write_phy_ofdm(struct net_device *dev, u8 adr, u32 data);
1350void rtl8185_tx_antenna(struct net_device *dev, u8 ant); 1189void rtl8185_tx_antenna(struct net_device *dev, u8 ant);
1351void rtl8187_set_rxconf(struct net_device *dev); 1190void rtl8187_set_rxconf(struct net_device *dev);
1352//short check_nic_enough_desc(struct net_device *dev, priority_t priority);
1353void CamResetAllEntry(struct net_device* dev); 1191void CamResetAllEntry(struct net_device* dev);
1354void EnableHWSecurityConfig8192(struct net_device *dev); 1192void EnableHWSecurityConfig8192(struct net_device *dev);
1355void setKey(struct net_device *dev, u8 EntryNo, u8 KeyIndex, u16 KeyType, const u8 *MacAddr, u8 DefaultKey, u32 *KeyContent ); 1193void setKey(struct net_device *dev, u8 EntryNo, u8 KeyIndex, u16 KeyType, const u8 *MacAddr, u8 DefaultKey, u32 *KeyContent );