add rk3288 pinctrl dts code
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rtl8188eu / hal / OUTSRC-BTCoexist / HalBtc8188c2Ant.h
1 //===========================================\r
2 // The following is for 8188C 2Ant BT Co-exist definition\r
3 //===========================================\r
4 #define         BTC_RSSI_COEX_THRESH_TOL_8188C_2ANT             6\r
5 \r
6 typedef enum _BT_INFO_SRC_8188C_2ANT{\r
7         BT_INFO_SRC_8188C_2ANT_WIFI_FW                  = 0x0,\r
8         BT_INFO_SRC_8188C_2ANT_BT_RSP                           = 0x1,\r
9         BT_INFO_SRC_8188C_2ANT_BT_ACTIVE_SEND           = 0x2,\r
10         BT_INFO_SRC_8188C_2ANT_MAX\r
11 }BT_INFO_SRC_8188C_2ANT,*PBT_INFO_SRC_8188C_2ANT;\r
12 \r
13 typedef enum _BT_8188C_2ANT_BT_STATUS{\r
14         BT_8188C_2ANT_BT_STATUS_IDLE                            = 0x0,\r
15         BT_8188C_2ANT_BT_STATUS_CONNECTED_IDLE  = 0x1,\r
16         BT_8188C_2ANT_BT_STATUS_NON_IDLE                        = 0x2,\r
17         BT_8188C_2ANT_BT_STATUS_MAX\r
18 }BT_8188C_2ANT_BT_STATUS,*PBT_8188C_2ANT_BT_STATUS;\r
19 \r
20 typedef enum _BT_8188C_2ANT_COEX_ALGO{\r
21         BT_8188C_2ANT_COEX_ALGO_UNDEFINED                       = 0x0,\r
22         BT_8188C_2ANT_COEX_ALGO_SCO                                     = 0x1,\r
23         BT_8188C_2ANT_COEX_ALGO_HID                                     = 0x2,\r
24         BT_8188C_2ANT_COEX_ALGO_A2DP                            = 0x3,\r
25         BT_8188C_2ANT_COEX_ALGO_PAN                                     = 0x4,\r
26         BT_8188C_2ANT_COEX_ALGO_HID_A2DP                        = 0x5,\r
27         BT_8188C_2ANT_COEX_ALGO_HID_PAN                         = 0x6,\r
28         BT_8188C_2ANT_COEX_ALGO_PAN_A2DP                        = 0x7,\r
29         BT_8188C_2ANT_COEX_ALGO_MAX\r
30 }BT_8188C_2ANT_COEX_ALGO,*PBT_8188C_2ANT_COEX_ALGO;\r
31 \r
32 typedef struct _COEX_DM_8188C_2ANT{\r
33         // fw mechanism\r
34         BOOLEAN         bPreBalanceOn;\r
35         BOOLEAN         bCurBalanceOn;\r
36 \r
37         // diminishWifi\r
38         BOOLEAN         bPreDacOn;\r
39         BOOLEAN         bCurDacOn;\r
40         BOOLEAN         bPreInterruptOn;\r
41         BOOLEAN         bCurInterruptOn;\r
42         u1Byte          preFwDacSwingLvl;\r
43         u1Byte          curFwDacSwingLvl;\r
44         BOOLEAN         bPreNavOn;\r
45         BOOLEAN         bCurNavOn;\r
46 \r
47         // sw mechanism\r
48         BOOLEAN         bPreRfRxLpfShrink;\r
49         BOOLEAN         bCurRfRxLpfShrink;\r
50         u4Byte          btRf0x1eBackup;\r
51         BOOLEAN         bPreLowPenaltyRa;\r
52         BOOLEAN         bCurLowPenaltyRa;\r
53         BOOLEAN         bPreDacSwingOn;\r
54         u4Byte          preDacSwingLvl;\r
55         BOOLEAN         bCurDacSwingOn;\r
56         u4Byte          curDacSwingLvl;\r
57         BOOLEAN         bPreAdcBackOff;\r
58         BOOLEAN         bCurAdcBackOff;\r
59         BOOLEAN         bPreAgcTableEn;\r
60         BOOLEAN         bCurAgcTableEn;\r
61         //u4Byte                preVal0x6c0;\r
62         //u4Byte                curVal0x6c0;\r
63         u4Byte          preVal0x6c4;\r
64         u4Byte          curVal0x6c4;\r
65         u4Byte          preVal0x6c8;\r
66         u4Byte          curVal0x6c8;\r
67         u4Byte          preVal0x6cc;\r
68         u4Byte          curVal0x6cc;\r
69         //BOOLEAN               bLimitedDig;\r
70 \r
71         // algorithm related\r
72         u1Byte          preAlgorithm;\r
73         u1Byte          curAlgorithm;\r
74         //u1Byte                btStatus;\r
75         //u1Byte                wifiChnlInfo[3];\r
76 } COEX_DM_8188C_2ANT, *PCOEX_DM_8188C_2ANT;\r
77 \r
78 typedef struct _COEX_STA_8188C_2ANT{\r
79         u1Byte                                  preWifiRssiState[4];\r
80         BOOLEAN                                 bBtBusy;\r
81         BOOLEAN                                 bBtUplink;\r
82         BOOLEAN                                 bBtDownLink;\r
83         BOOLEAN                                 bA2dpBusy;\r
84 }COEX_STA_8188C_2ANT, *PCOEX_STA_8188C_2ANT;\r
85 \r
86 //===========================================\r
87 // The following is interface which will notify coex module.\r
88 //===========================================\r
89 VOID\r
90 EXhalbtc8188c2ant_InitHwConfig(\r
91         IN      PBTC_COEXIST            pBtCoexist\r
92         );\r
93 VOID\r
94 EXhalbtc8188c2ant_InitCoexDm(\r
95         IN      PBTC_COEXIST            pBtCoexist\r
96         );\r
97 VOID\r
98 EXhalbtc8188c2ant_IpsNotify(\r
99         IN      PBTC_COEXIST            pBtCoexist,\r
100         IN      u1Byte                  type\r
101         );\r
102 VOID\r
103 EXhalbtc8188c2ant_LpsNotify(\r
104         IN      PBTC_COEXIST            pBtCoexist,\r
105         IN      u1Byte                  type\r
106         );\r
107 VOID\r
108 EXhalbtc8188c2ant_ScanNotify(\r
109         IN      PBTC_COEXIST            pBtCoexist,\r
110         IN      u1Byte                  type\r
111         );\r
112 VOID\r
113 EXhalbtc8188c2ant_ConnectNotify(\r
114         IN      PBTC_COEXIST            pBtCoexist,\r
115         IN      u1Byte                  type\r
116         );\r
117 VOID\r
118 EXhalbtc8188c2ant_MediaStatusNotify(\r
119         IN      PBTC_COEXIST                    pBtCoexist,\r
120         IN      u1Byte                          type\r
121         );\r
122 VOID\r
123 EXhalbtc8188c2ant_SpecialPacketNotify(\r
124         IN      PBTC_COEXIST                    pBtCoexist,\r
125         IN      u1Byte                          type\r
126         );\r
127 VOID\r
128 EXhalbtc8188c2ant_HaltNotify(\r
129         IN      PBTC_COEXIST                    pBtCoexist\r
130         );\r
131 VOID\r
132 EXhalbtc8188c2ant_Periodical(\r
133         IN      PBTC_COEXIST                    pBtCoexist\r
134         );\r
135 VOID\r
136 EXhalbtc8188c2ant_BtInfoNotify(\r
137         IN      PBTC_COEXIST            pBtCoexist,\r
138         IN      pu1Byte                 tmpBuf,\r
139         IN      u1Byte                  length\r
140         );\r
141 VOID\r
142 EXhalbtc8188c2ant_DisplayCoexInfo(\r
143         IN      PBTC_COEXIST            pBtCoexist\r
144         );\r