mirror of
https://github.com/Mange/rtl8192eu-linux-driver
synced 2025-12-10 00:04:17 +00:00
Updated to v4.3.8_12406.20140929
This commit is contained in:
@@ -77,9 +77,14 @@
|
||||
|
||||
// xmit extension buff defination
|
||||
#define MAX_XMIT_EXTBUF_SZ (1536)
|
||||
#define NR_XMIT_EXTBUFF (32)
|
||||
|
||||
#define MAX_CMDBUF_SZ (4096)
|
||||
#ifdef CONFIG_SINGLE_XMIT_BUF
|
||||
#define NR_XMIT_EXTBUFF (1)
|
||||
#else
|
||||
#define NR_XMIT_EXTBUFF (32)
|
||||
#endif
|
||||
|
||||
#define MAX_CMDBUF_SZ (5120) //(4096)
|
||||
|
||||
#define MAX_NUMBLKS (1)
|
||||
|
||||
@@ -144,8 +149,24 @@ do{\
|
||||
|
||||
#define HWXMIT_ENTRY 4
|
||||
|
||||
#if defined(CONFIG_RTL8812A) || defined(CONFIG_RTL8821A)|| defined(CONFIG_RTL8192E) || defined(CONFIG_RTL8723B)
|
||||
// For Buffer Descriptor ring architecture
|
||||
#ifdef BUF_DESC_ARCH
|
||||
#if defined (CONFIG_RTL8192E)
|
||||
#define TX_BUFFER_SEG_NUM 1 // 0:2 seg, 1: 4 seg, 2: 8 seg.
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_RTL8812A) || defined(CONFIG_RTL8821A)|| defined(CONFIG_RTL8723B)
|
||||
#define TXDESC_SIZE 40
|
||||
//8192EE_TODO
|
||||
#elif defined (CONFIG_RTL8192E) // this section is defined for buffer descriptor ring architecture
|
||||
#ifdef CONFIG_PCI_HCI
|
||||
#define TXDESC_SIZE ((TX_BUFFER_SEG_NUM ==0)?16: ((TX_BUFFER_SEG_NUM ==1)? 32:64) )
|
||||
#define TX_WIFI_INFO_SIZE 40
|
||||
#else //USB or SDIO
|
||||
#define TXDESC_SIZE 40
|
||||
#endif
|
||||
//8192EE_TODO
|
||||
#else
|
||||
#define TXDESC_SIZE 32
|
||||
#endif
|
||||
@@ -169,9 +190,13 @@ do{\
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PCI_HCI
|
||||
#if defined(CONFIG_RTL8192E) // this section is defined for buffer descriptor ring architecture
|
||||
#define TXDESC_OFFSET TX_WIFI_INFO_SIZE
|
||||
#else
|
||||
#define TXDESC_OFFSET 0
|
||||
#endif
|
||||
#define TX_DESC_NEXT_DESC_OFFSET (TXDESC_SIZE + 8)
|
||||
#endif
|
||||
#endif //CONFIG_PCI_HCI
|
||||
|
||||
enum TXDESC_SC{
|
||||
SC_DONT_CARE = 0x00,
|
||||
@@ -186,6 +211,20 @@ enum TXDESC_SC{
|
||||
#define TXDESC_40_BYTES
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_RTL8192E) && defined(CONFIG_PCI_HCI) //8192ee
|
||||
//8192EE_TODO
|
||||
struct tx_desc
|
||||
{
|
||||
unsigned int txdw0;
|
||||
unsigned int txdw1;
|
||||
unsigned int txdw2;
|
||||
unsigned int txdw3;
|
||||
unsigned int txdw4;
|
||||
unsigned int txdw5;
|
||||
unsigned int txdw6;
|
||||
unsigned int txdw7;
|
||||
};
|
||||
#else
|
||||
struct tx_desc
|
||||
{
|
||||
unsigned int txdw0;
|
||||
@@ -216,7 +255,7 @@ struct tx_desc
|
||||
unsigned int txdw15;
|
||||
#endif
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
union txdesc {
|
||||
struct tx_desc txdesc;
|
||||
@@ -227,12 +266,13 @@ union txdesc {
|
||||
#define PCI_MAX_TX_QUEUE_COUNT 8
|
||||
|
||||
struct rtw_tx_ring {
|
||||
unsigned char qid;
|
||||
struct tx_desc *desc;
|
||||
dma_addr_t dma;
|
||||
unsigned int idx;
|
||||
unsigned int entries;
|
||||
_queue queue;
|
||||
u32 qlen;
|
||||
dma_addr_t dma;
|
||||
unsigned int idx;
|
||||
unsigned int entries;
|
||||
_queue queue;
|
||||
u32 qlen;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -331,6 +371,7 @@ struct pkt_attrib
|
||||
u8 ch_offset;//PRIME_CHNL_OFFSET
|
||||
u8 sgi;//short GI
|
||||
u8 ampdu_en;//tx ampdu enable
|
||||
u8 ampdu_spacing; //ampdu_min_spacing for peer sta's rx
|
||||
u8 mdata;//more data bit
|
||||
u8 pctrl;//per packet txdesc control enable
|
||||
u8 triggered;//for ap mode handling Power Saving sta
|
||||
@@ -491,6 +532,10 @@ struct xmit_buf
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PCI_HCI
|
||||
struct tx_desc *desc;
|
||||
#endif
|
||||
|
||||
#if defined(DBG_XMIT_BUF )|| defined(DBG_XMIT_BUF_EXT)
|
||||
u8 no;
|
||||
#endif
|
||||
@@ -587,6 +632,12 @@ struct agg_pkt_info{
|
||||
u16 pkt_len;
|
||||
};
|
||||
|
||||
enum cmdbuf_type {
|
||||
CMDBUF_BEACON = 0x00,
|
||||
CMDBUF_RSVD,
|
||||
CMDBUF_MAX
|
||||
};
|
||||
|
||||
struct xmit_priv {
|
||||
|
||||
_lock lock;
|
||||
@@ -674,7 +725,7 @@ struct xmit_priv {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SDIO_HCI
|
||||
#if defined (CONFIG_SDIO_HCI) || defined(CONFIG_GSPI_HCI)
|
||||
#ifdef CONFIG_SDIO_TX_TASKLET
|
||||
#ifdef PLATFORM_LINUX
|
||||
struct tasklet_struct xmit_tasklet;
|
||||
@@ -697,7 +748,7 @@ struct xmit_priv {
|
||||
u8 *pxmit_extbuf;
|
||||
uint free_xmit_extbuf_cnt;
|
||||
|
||||
struct xmit_buf pcmd_xmitbuf;
|
||||
struct xmit_buf pcmd_xmitbuf[CMDBUF_MAX];
|
||||
|
||||
u16 nqos_ssn;
|
||||
#ifdef CONFIG_TX_EARLY_MODE
|
||||
@@ -720,9 +771,10 @@ struct xmit_priv {
|
||||
_lock lock_sctx;
|
||||
};
|
||||
|
||||
extern struct xmit_frame *rtw_alloc_cmdxmitframe(struct xmit_priv *pxmitpriv);
|
||||
extern struct xmit_buf *rtw_alloc_cmd_xmitbuf(struct xmit_priv *pxmitpriv);
|
||||
extern s32 rtw_free_cmd_xmitbuf(struct xmit_priv *pxmitpriv);
|
||||
extern struct xmit_frame *__rtw_alloc_cmdxmitframe(struct xmit_priv *pxmitpriv,
|
||||
enum cmdbuf_type buf_type);
|
||||
#define rtw_alloc_cmdxmitframe(p) __rtw_alloc_cmdxmitframe(p, CMDBUF_RSVD)
|
||||
#define rtw_alloc_bcnxmitframe(p) __rtw_alloc_cmdxmitframe(p, CMDBUF_BEACON)
|
||||
|
||||
extern struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv);
|
||||
extern s32 rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf);
|
||||
@@ -733,7 +785,7 @@ extern s32 rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitb
|
||||
void rtw_count_tx_stats(_adapter *padapter, struct xmit_frame *pxmitframe, int sz);
|
||||
extern void rtw_update_protection(_adapter *padapter, u8 *ie, uint ie_len);
|
||||
static s32 update_attrib_sec_info(_adapter *padapter, struct pkt_attrib *pattrib, struct sta_info *psta);
|
||||
static void update_attrib_phy_info(struct pkt_attrib *pattrib, struct sta_info *psta);
|
||||
static void update_attrib_phy_info(_adapter *padapter, struct pkt_attrib *pattrib, struct sta_info *psta);
|
||||
extern s32 rtw_make_wlanhdr(_adapter *padapter, u8 *hdr, struct pkt_attrib *pattrib);
|
||||
extern s32 rtw_put_snap(u8 *data, u16 h_proto);
|
||||
|
||||
@@ -776,7 +828,7 @@ void rtw_free_hwxmits(_adapter *padapter);
|
||||
|
||||
|
||||
s32 rtw_xmit(_adapter *padapter, _pkt **pkt);
|
||||
|
||||
bool xmitframe_hiq_filter(struct xmit_frame *xmitframe);
|
||||
#if defined(CONFIG_AP_MODE) || defined(CONFIG_TDLS)
|
||||
sint xmitframe_enqueue_for_sleeping_sta(_adapter *padapter, struct xmit_frame *pxmitframe);
|
||||
void stop_sta_xmit(_adapter *padapter, struct sta_info *psta);
|
||||
|
||||
Reference in New Issue
Block a user