Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / drivers / net / wireless / realtek / rtlwifi / rtl8188ee / pwrseq.c
1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright(c) 2009-2013  Realtek Corporation.*/
3
4 #include "../pwrseqcmd.h"
5 #include "pwrseq.h"
6
7 /* drivers should parse below arrays and do the corresponding actions */
8 /*3 Power on  Array*/
9 struct wlan_pwr_cfg rtl8188ee_power_on_flow[RTL8188EE_TRANS_CARDEMU_TO_ACT_STEPS
10                                         + RTL8188EE_TRANS_END_STEPS] = {
11         RTL8188EE_TRANS_CARDEMU_TO_ACT
12         RTL8188EE_TRANS_END
13 };
14
15 /*3Radio off GPIO Array */
16 struct wlan_pwr_cfg rtl8188ee_radio_off_flow[RTL8188EE_TRANS_ACT_TO_CARDEMU_STEPS
17                                         + RTL8188EE_TRANS_END_STEPS] = {
18         RTL8188EE_TRANS_ACT_TO_CARDEMU
19         RTL8188EE_TRANS_END
20 };
21
22 /*3Card Disable Array*/
23 struct wlan_pwr_cfg rtl8188ee_card_disable_flow
24                 [RTL8188EE_TRANS_ACT_TO_CARDEMU_STEPS +
25                  RTL8188EE_TRANS_CARDEMU_TO_PDN_STEPS +
26                  RTL8188EE_TRANS_END_STEPS] = {
27         RTL8188EE_TRANS_ACT_TO_CARDEMU
28         RTL8188EE_TRANS_CARDEMU_TO_CARDDIS
29         RTL8188EE_TRANS_END
30 };
31
32 /*3 Card Enable Array*/
33 struct wlan_pwr_cfg rtl8188ee_card_enable_flow
34                 [RTL8188EE_TRANS_ACT_TO_CARDEMU_STEPS +
35                  RTL8188EE_TRANS_CARDEMU_TO_PDN_STEPS +
36                  RTL8188EE_TRANS_END_STEPS] = {
37         RTL8188EE_TRANS_CARDDIS_TO_CARDEMU
38         RTL8188EE_TRANS_CARDEMU_TO_ACT
39         RTL8188EE_TRANS_END
40 };
41
42 /*3Suspend Array*/
43 struct wlan_pwr_cfg rtl8188ee_suspend_flow[RTL8188EE_TRANS_ACT_TO_CARDEMU_STEPS
44                                         + RTL8188EE_TRANS_CARDEMU_TO_SUS_STEPS
45                                         + RTL8188EE_TRANS_END_STEPS] = {
46         RTL8188EE_TRANS_ACT_TO_CARDEMU
47         RTL8188EE_TRANS_CARDEMU_TO_SUS
48         RTL8188EE_TRANS_END
49 };
50
51 /*3 Resume Array*/
52 struct wlan_pwr_cfg rtl8188ee_resume_flow[RTL8188EE_TRANS_ACT_TO_CARDEMU_STEPS
53                                         + RTL8188EE_TRANS_CARDEMU_TO_SUS_STEPS
54                                         + RTL8188EE_TRANS_END_STEPS] = {
55         RTL8188EE_TRANS_SUS_TO_CARDEMU
56         RTL8188EE_TRANS_CARDEMU_TO_ACT
57         RTL8188EE_TRANS_END
58 };
59
60 /*3HWPDN Array*/
61 struct wlan_pwr_cfg rtl8188ee_hwpdn_flow[RTL8188EE_TRANS_ACT_TO_CARDEMU_STEPS
62                                 + RTL8188EE_TRANS_CARDEMU_TO_PDN_STEPS
63                                 + RTL8188EE_TRANS_END_STEPS] = {
64         RTL8188EE_TRANS_ACT_TO_CARDEMU
65         RTL8188EE_TRANS_CARDEMU_TO_PDN
66         RTL8188EE_TRANS_END
67 };
68
69 /*3 Enter LPS */
70 struct wlan_pwr_cfg rtl8188ee_enter_lps_flow[RTL8188EE_TRANS_ACT_TO_LPS_STEPS
71                                         + RTL8188EE_TRANS_END_STEPS] = {
72         /*FW behavior*/
73         RTL8188EE_TRANS_ACT_TO_LPS
74         RTL8188EE_TRANS_END
75 };
76
77 /*3 Leave LPS */
78 struct wlan_pwr_cfg rtl8188ee_leave_lps_flow[RTL8188EE_TRANS_LPS_TO_ACT_STEPS
79                                         + RTL8188EE_TRANS_END_STEPS] = {
80         /*FW behavior*/
81         RTL8188EE_TRANS_LPS_TO_ACT
82         RTL8188EE_TRANS_END
83 };