]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/staging/rtl8723au/include/rtl8723a_recv.h
Merge tag 'soc2-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[karo-tx-linux.git] / drivers / staging / rtl8723au / include / rtl8723a_recv.h
1 /******************************************************************************
2  *
3  * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of version 2 of the GNU General Public License as
7  * published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12  * more details.
13  *
14  ******************************************************************************/
15 #ifndef __RTL8723A_RECV_H__
16 #define __RTL8723A_RECV_H__
17
18 #include <osdep_service.h>
19 #include <drv_types.h>
20
21 #define NR_RECVBUFF                     4
22
23 #define NR_PREALLOC_RECV_SKB            8
24
25 #define RECV_BLK_SZ                     512
26 #define RECV_BLK_CNT                    16
27 #define RECV_BLK_TH                     RECV_BLK_CNT
28
29 #define MAX_RECVBUF_SZ                  15360 /*  15k < 16k */
30
31 #define RECV_BULK_IN_ADDR               0x80
32 #define RECV_INT_IN_ADDR                0x81
33
34 #define PHY_RSSI_SLID_WIN_MAX           100
35 #define PHY_LINKQUALITY_SLID_WIN_MAX    20
36
37
38 struct phy_stat
39 {
40         unsigned int phydw0;
41         unsigned int phydw1;
42         unsigned int phydw2;
43         unsigned int phydw3;
44         unsigned int phydw4;
45         unsigned int phydw5;
46         unsigned int phydw6;
47         unsigned int phydw7;
48 };
49
50 /*  Rx smooth factor */
51 #define Rx_Smooth_Factor                20
52
53 struct interrupt_msg_format {
54         unsigned int C2H_MSG0;
55         unsigned int C2H_MSG1;
56         unsigned int C2H_MSG2;
57         unsigned int C2H_MSG3;
58         unsigned int HISR; /*  from HISR Reg0x124, read to clear */
59         unsigned int HISRE;/*  from HISRE Reg0x12c, read to clear */
60         unsigned int  MSG_EX;
61 };
62
63 int rtl8723au_init_recv_priv(struct rtw_adapter * padapter);
64 void rtl8723au_free_recv_priv(struct rtw_adapter * padapter);
65 void rtl8723a_process_phy_info(struct rtw_adapter *padapter, void *prframe);
66 void update_recvframe_attrib(struct recv_frame *precvframe, struct recv_stat *prxstat);
67 void update_recvframe_phyinfo(struct recv_frame *precvframe, struct phy_stat *pphy_info);
68
69 #endif