]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - drivers/net/wireless/rtlwifi/rtl8188ee/pwrseq.c
rtlwifi: rtl8188ee: Update driver to match Realtek release of 06282014
[mirror_ubuntu-artful-kernel.git] / drivers / net / wireless / rtlwifi / rtl8188ee / pwrseq.c
1 /******************************************************************************
2 *
3 * Copyright(c) 2009-2013 Realtek Corporation.
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 * The full GNU General Public License is included in this distribution in the
15 * file called LICENSE.
16 *
17 * Contact Information:
18 * wlanfae <wlanfae@realtek.com>
19 * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
20 * Hsinchu 300, Taiwan.
21 *
22 * Larry Finger <Larry.Finger@lwfinger.net>
23 *
24 *****************************************************************************/
25
26 #include "pwrseqcmd.h"
27 #include "pwrseq.h"
28
29 /* drivers should parse below arrays and do the corresponding actions */
30 /*3 Power on Array*/
31 struct wlan_pwr_cfg rtl8188E_power_on_flow[RTL8188E_TRANS_CARDEMU_TO_ACT_STEPS
32 + RTL8188E_TRANS_END_STEPS] = {
33 RTL8188E_TRANS_CARDEMU_TO_ACT
34 RTL8188E_TRANS_END
35 };
36
37 /*3Radio off GPIO Array */
38 struct wlan_pwr_cfg rtl8188E_radio_off_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS
39 + RTL8188E_TRANS_END_STEPS] = {
40 RTL8188E_TRANS_ACT_TO_CARDEMU
41 RTL8188E_TRANS_END
42 };
43
44 /*3Card Disable Array*/
45 struct wlan_pwr_cfg rtl8188E_card_disable_flow
46 [RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS +
47 RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS +
48 RTL8188E_TRANS_END_STEPS] = {
49 RTL8188E_TRANS_ACT_TO_CARDEMU
50 RTL8188E_TRANS_CARDEMU_TO_CARDDIS
51 RTL8188E_TRANS_END
52 };
53
54 /*3 Card Enable Array*/
55 struct wlan_pwr_cfg rtl8188E_card_enable_flow
56 [RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS +
57 RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS +
58 RTL8188E_TRANS_END_STEPS] = {
59 RTL8188E_TRANS_CARDDIS_TO_CARDEMU
60 RTL8188E_TRANS_CARDEMU_TO_ACT
61 RTL8188E_TRANS_END
62 };
63
64 /*3Suspend Array*/
65 struct wlan_pwr_cfg rtl8188E_suspend_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS
66 + RTL8188E_TRANS_CARDEMU_TO_SUS_STEPS
67 + RTL8188E_TRANS_END_STEPS] = {
68 RTL8188E_TRANS_ACT_TO_CARDEMU
69 RTL8188E_TRANS_CARDEMU_TO_SUS
70 RTL8188E_TRANS_END
71 };
72
73 /*3 Resume Array*/
74 struct wlan_pwr_cfg rtl8188E_resume_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS
75 + RTL8188E_TRANS_CARDEMU_TO_SUS_STEPS
76 + RTL8188E_TRANS_END_STEPS] = {
77 RTL8188E_TRANS_SUS_TO_CARDEMU
78 RTL8188E_TRANS_CARDEMU_TO_ACT
79 RTL8188E_TRANS_END
80 };
81
82 /*3HWPDN Array*/
83 struct wlan_pwr_cfg rtl8188E_hwpdn_flow[RTL8188E_TRANS_ACT_TO_CARDEMU_STEPS
84 + RTL8188E_TRANS_CARDEMU_TO_PDN_STEPS
85 + RTL8188E_TRANS_END_STEPS] = {
86 RTL8188E_TRANS_ACT_TO_CARDEMU
87 RTL8188E_TRANS_CARDEMU_TO_PDN
88 RTL8188E_TRANS_END
89 };
90
91 /*3 Enter LPS */
92 struct wlan_pwr_cfg rtl8188E_enter_lps_flow[RTL8188E_TRANS_ACT_TO_LPS_STEPS
93 + RTL8188E_TRANS_END_STEPS] = {
94 /*FW behavior*/
95 RTL8188E_TRANS_ACT_TO_LPS
96 RTL8188E_TRANS_END
97 };
98
99 /*3 Leave LPS */
100 struct wlan_pwr_cfg rtl8188E_leave_lps_flow[RTL8188E_TRANS_LPS_TO_ACT_STEPS
101 + RTL8188E_TRANS_END_STEPS] = {
102 /*FW behavior*/
103 RTL8188E_TRANS_LPS_TO_ACT
104 RTL8188E_TRANS_END
105 };