1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright(c) 2007 - 2011 Realtek Corporation. */
3 
4 #include "../include/Hal8188EPwrSeq.h"
5 #include "../include/rtl8188e_hal.h"
6 
7 /*
8     drivers should parse below arrays and do the corresponding actions
9 */
10 /* 3 Power on  Array */
11 struct wl_pwr_cfg rtl8188E_power_on_flow[RTL8188E_TRANS_CARDEMU_TO_ACT_STEPS + RTL8188E_TRANS_END_STEPS] = {
12 	RTL8188E_TRANS_CARDEMU_TO_ACT
13 	RTL8188E_TRANS_END
14 };
15 
16 /* 3Radio off Array */
17 struct wl_pwr_cfg rtl8188E_radio_off_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS + RTL8188E_TRANS_END_STEPS] = {
18 	RTL8188E_TRANS_ACT_TO_CARDEMU
19 	RTL8188E_TRANS_END
20 };
21 
22 /* 3Card Disable Array */
23 struct wl_pwr_cfg rtl8188E_card_disable_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS + RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS + RTL8188E_TRANS_END_STEPS] = {
24 	RTL8188E_TRANS_ACT_TO_CARDEMU
25 	RTL8188E_TRANS_CARDEMU_TO_CARDDIS
26 	RTL8188E_TRANS_END
27 };
28 
29 /* 3 Card Enable Array */
30 struct wl_pwr_cfg rtl8188E_card_enable_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS + RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS + RTL8188E_TRANS_END_STEPS] = {
31 	RTL8188E_TRANS_CARDDIS_TO_CARDEMU
32 	RTL8188E_TRANS_CARDEMU_TO_ACT
33 	RTL8188E_TRANS_END
34 };
35 
36 /* 3Suspend Array */
37 struct wl_pwr_cfg rtl8188E_suspend_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS + RTL8188E_TRANS_CARDEMU_TO_SUS_STEPS + RTL8188E_TRANS_END_STEPS] = {
38 	RTL8188E_TRANS_ACT_TO_CARDEMU
39 	RTL8188E_TRANS_CARDEMU_TO_SUS
40 	RTL8188E_TRANS_END
41 };
42 
43 /* 3 Resume Array */
44 struct wl_pwr_cfg rtl8188E_resume_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS + RTL8188E_TRANS_CARDEMU_TO_SUS_STEPS + RTL8188E_TRANS_END_STEPS] = {
45 	RTL8188E_TRANS_SUS_TO_CARDEMU
46 	RTL8188E_TRANS_CARDEMU_TO_ACT
47 	RTL8188E_TRANS_END
48 };
49 
50 /* 3HWPDN Array */
51 struct wl_pwr_cfg rtl8188E_hwpdn_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS + RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS + RTL8188E_TRANS_END_STEPS] = {
52 	RTL8188E_TRANS_ACT_TO_CARDEMU
53 	RTL8188E_TRANS_CARDEMU_TO_PDN
54 	RTL8188E_TRANS_END
55 };
56 
57 /* 3 Enter LPS */
58 struct wl_pwr_cfg rtl8188E_enter_lps_flow[RTL8188E_TRANS_ACT_TO_LPS_STEPS + RTL8188E_TRANS_END_STEPS] = {
59 	/* FW behavior */
60 	RTL8188E_TRANS_ACT_TO_LPS
61 	RTL8188E_TRANS_END
62 };
63 
64 /* 3 Leave LPS */
65 struct wl_pwr_cfg rtl8188E_leave_lps_flow[RTL8188E_TRANS_LPS_TO_ACT_STEPS + RTL8188E_TRANS_END_STEPS] = {
66 	/* FW behavior */
67 	RTL8188E_TRANS_LPS_TO_ACT
68 	RTL8188E_TRANS_END
69 };
70