WiFi: add rtl8189es/etv support, Optimization wifi configuration.
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8189es / hal / rtl8188e / Hal8188EPwrSeq.c
1 /******************************************************************************\r
2  *\r
3  * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.\r
4  *                                        \r
5  * This program is free software; you can redistribute it and/or modify it\r
6  * under the terms of version 2 of the GNU General Public License as\r
7  * published by the Free Software Foundation.\r
8  *\r
9  * This program is distributed in the hope that it will be useful, but WITHOUT\r
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\r
11  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for\r
12  * more details.\r
13  *\r
14  * You should have received a copy of the GNU General Public License along with\r
15  * this program; if not, write to the Free Software Foundation, Inc.,\r
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA\r
17  *\r
18  *\r
19  ******************************************************************************/\r
20 \r
21 #include "Hal8188EPwrSeq.h"\r
22 #include <rtl8188e_hal.h>\r
23 \r
24 /* \r
25     drivers should parse below arrays and do the corresponding actions\r
26 */\r
27 //3 Power on  Array\r
28 WLAN_PWR_CFG rtl8188E_power_on_flow[RTL8188E_TRANS_CARDEMU_TO_ACT_STEPS+RTL8188E_TRANS_END_STEPS]=\r
29 {\r
30         RTL8188E_TRANS_CARDEMU_TO_ACT\r
31         RTL8188E_TRANS_END\r
32 };\r
33 \r
34 //3Radio off Array\r
35 WLAN_PWR_CFG rtl8188E_radio_off_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS+RTL8188E_TRANS_END_STEPS]=\r
36 {\r
37         RTL8188E_TRANS_ACT_TO_CARDEMU\r
38         RTL8188E_TRANS_END\r
39 };\r
40 \r
41 //3Card Disable Array\r
42 WLAN_PWR_CFG rtl8188E_card_disable_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS+RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS+RTL8188E_TRANS_END_STEPS]=\r
43 {\r
44         RTL8188E_TRANS_ACT_TO_CARDEMU\r
45         RTL8188E_TRANS_CARDEMU_TO_CARDDIS\r
46         RTL8188E_TRANS_END\r
47 };\r
48 \r
49 //3 Card Enable Array\r
50 WLAN_PWR_CFG rtl8188E_card_enable_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS+RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS+RTL8188E_TRANS_END_STEPS]=\r
51 {\r
52         RTL8188E_TRANS_CARDDIS_TO_CARDEMU\r
53         RTL8188E_TRANS_CARDEMU_TO_ACT\r
54         RTL8188E_TRANS_END\r
55 };\r
56 \r
57 //3Suspend Array\r
58 WLAN_PWR_CFG rtl8188E_suspend_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS+RTL8188E_TRANS_CARDEMU_TO_SUS_STEPS+RTL8188E_TRANS_END_STEPS]=\r
59 {\r
60         RTL8188E_TRANS_ACT_TO_CARDEMU\r
61         RTL8188E_TRANS_CARDEMU_TO_SUS\r
62         RTL8188E_TRANS_END\r
63 };\r
64 \r
65 //3 Resume Array\r
66 WLAN_PWR_CFG rtl8188E_resume_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS+RTL8188E_TRANS_CARDEMU_TO_SUS_STEPS+RTL8188E_TRANS_END_STEPS]=\r
67 {\r
68         RTL8188E_TRANS_SUS_TO_CARDEMU\r
69         RTL8188E_TRANS_CARDEMU_TO_ACT\r
70         RTL8188E_TRANS_END\r
71 };\r
72 \r
73 \r
74 //3HWPDN Array\r
75 WLAN_PWR_CFG rtl8188E_hwpdn_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS+RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS+RTL8188E_TRANS_END_STEPS]=\r
76 {\r
77         RTL8188E_TRANS_ACT_TO_CARDEMU\r
78         RTL8188E_TRANS_CARDEMU_TO_PDN   \r
79         RTL8188E_TRANS_END\r
80 };\r
81 \r
82 //3 Enter LPS \r
83 WLAN_PWR_CFG rtl8188E_enter_lps_flow[RTL8188E_TRANS_ACT_TO_LPS_STEPS+RTL8188E_TRANS_END_STEPS]=\r
84 {\r
85         //FW behavior\r
86         RTL8188E_TRANS_ACT_TO_LPS       \r
87         RTL8188E_TRANS_END\r
88 };\r
89 \r
90 //3 Leave LPS \r
91 WLAN_PWR_CFG rtl8188E_leave_lps_flow[RTL8188E_TRANS_LPS_TO_ACT_STEPS+RTL8188E_TRANS_END_STEPS]=\r
92 {\r
93         //FW behavior\r
94         RTL8188E_TRANS_LPS_TO_ACT\r
95         RTL8188E_TRANS_END\r
96 };\r
97 \r