Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / staging / rtl8723au / hal / Hal8723PwrSeq.c
1 /******************************************************************************
2  *
3  * Copyright(c) 2007 - 2012 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
16 #include "Hal8723PwrSeq.h"
17
18 /*
19     drivers should parse below arrays and do the corresponding actions
20 */
21 /* 3 Power on  Array */
22 struct wlan_pwr_cfg rtl8723AU_power_on_flow[RTL8723A_TRANS_CARDEMU_TO_ACT_STEPS+RTL8723A_TRANS_END_STEPS] = {
23         RTL8723A_TRANS_CARDEMU_TO_ACT
24         RTL8723A_TRANS_END
25 };
26
27 /* 3 Radio off GPIO Array */
28 struct wlan_pwr_cfg rtl8723AU_radio_off_flow[RTL8723A_TRANS_ACT_TO_CARDEMU_STEPS+RTL8723A_TRANS_END_STEPS] = {
29         RTL8723A_TRANS_ACT_TO_CARDEMU
30         RTL8723A_TRANS_END
31 };
32
33 /* 3 Card Disable Array */
34 struct wlan_pwr_cfg rtl8723AU_card_disable_flow[RTL8723A_TRANS_ACT_TO_CARDEMU_STEPS+RTL8723A_TRANS_CARDEMU_TO_PDN_STEPS+RTL8723A_TRANS_END_STEPS] = {
35         RTL8723A_TRANS_ACT_TO_CARDEMU
36         RTL8723A_TRANS_CARDEMU_TO_CARDDIS
37         RTL8723A_TRANS_END
38 };
39
40 /* 3 Card Enable Array */
41 struct wlan_pwr_cfg rtl8723AU_card_enable_flow[RTL8723A_TRANS_ACT_TO_CARDEMU_STEPS+RTL8723A_TRANS_CARDEMU_TO_PDN_STEPS+RTL8723A_TRANS_END_STEPS] = {
42         RTL8723A_TRANS_CARDDIS_TO_CARDEMU
43         RTL8723A_TRANS_CARDEMU_TO_ACT
44         RTL8723A_TRANS_END
45 };
46
47 /* 3 Suspend Array */
48 struct wlan_pwr_cfg rtl8723AU_suspend_flow[RTL8723A_TRANS_ACT_TO_CARDEMU_STEPS+RTL8723A_TRANS_CARDEMU_TO_SUS_STEPS+RTL8723A_TRANS_END_STEPS] = {
49         RTL8723A_TRANS_ACT_TO_CARDEMU
50         RTL8723A_TRANS_CARDEMU_TO_SUS
51         RTL8723A_TRANS_END
52 };
53
54 /* 3 Resume Array */
55 struct wlan_pwr_cfg rtl8723AU_resume_flow[RTL8723A_TRANS_ACT_TO_CARDEMU_STEPS+RTL8723A_TRANS_CARDEMU_TO_SUS_STEPS+RTL8723A_TRANS_END_STEPS] = {
56         RTL8723A_TRANS_SUS_TO_CARDEMU
57         RTL8723A_TRANS_CARDEMU_TO_ACT
58         RTL8723A_TRANS_END
59 };
60
61 /* 3 HWPDN Array */
62 struct wlan_pwr_cfg rtl8723AU_hwpdn_flow[RTL8723A_TRANS_ACT_TO_CARDEMU_STEPS+RTL8723A_TRANS_CARDEMU_TO_PDN_STEPS+RTL8723A_TRANS_END_STEPS] = {
63         RTL8723A_TRANS_ACT_TO_CARDEMU
64         RTL8723A_TRANS_CARDEMU_TO_PDN
65         RTL8723A_TRANS_END
66 };
67
68 /* 3 Enter LPS */
69 struct wlan_pwr_cfg rtl8723AU_enter_lps_flow[RTL8723A_TRANS_ACT_TO_LPS_STEPS+RTL8723A_TRANS_END_STEPS] = {
70         /* FW behavior */
71         RTL8723A_TRANS_ACT_TO_LPS
72         RTL8723A_TRANS_END
73 };
74
75 /* 3 Leave LPS */
76 struct wlan_pwr_cfg rtl8723AU_leave_lps_flow[RTL8723A_TRANS_LPS_TO_ACT_STEPS+RTL8723A_TRANS_END_STEPS] = {
77         /* FW behavior */
78         RTL8723A_TRANS_LPS_TO_ACT
79         RTL8723A_TRANS_END
80 };