pwrseq.c 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. /******************************************************************************
  2. *
  3. * Copyright(c) 2009-2014 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. #include "pwrseq.h"
  26. /* drivers should parse below arrays and do the corresponding actions */
  27. /*3 Power on Array*/
  28. struct wlan_pwr_cfg rtl8192E_power_on_flow
  29. [RTL8192E_TRANS_CARDEMU_TO_ACT_STEPS +
  30. RTL8192E_TRANS_END_STEPS] = {
  31. RTL8192E_TRANS_CARDEMU_TO_ACT
  32. RTL8192E_TRANS_END
  33. };
  34. /*3Radio off GPIO Array */
  35. struct wlan_pwr_cfg rtl8192E_radio_off_flow
  36. [RTL8192E_TRANS_ACT_TO_CARDEMU_STEPS
  37. + RTL8192E_TRANS_END_STEPS] = {
  38. RTL8192E_TRANS_ACT_TO_CARDEMU
  39. RTL8192E_TRANS_END
  40. };
  41. /*3Card Disable Array*/
  42. struct wlan_pwr_cfg rtl8192E_card_disable_flow
  43. [RTL8192E_TRANS_ACT_TO_CARDEMU_STEPS +
  44. RTL8192E_TRANS_CARDEMU_TO_PDN_STEPS +
  45. RTL8192E_TRANS_END_STEPS] = {
  46. RTL8192E_TRANS_ACT_TO_CARDEMU
  47. RTL8192E_TRANS_CARDEMU_TO_CARDDIS
  48. RTL8192E_TRANS_END
  49. };
  50. /*3 Card Enable Array*/
  51. struct wlan_pwr_cfg rtl8192E_card_enable_flow
  52. [RTL8192E_TRANS_ACT_TO_CARDEMU_STEPS +
  53. RTL8192E_TRANS_CARDEMU_TO_PDN_STEPS +
  54. RTL8192E_TRANS_END_STEPS] = {
  55. RTL8192E_TRANS_CARDDIS_TO_CARDEMU
  56. RTL8192E_TRANS_CARDEMU_TO_ACT
  57. RTL8192E_TRANS_END
  58. };
  59. /*3Suspend Array*/
  60. struct wlan_pwr_cfg rtl8192E_suspend_flow
  61. [RTL8192E_TRANS_ACT_TO_CARDEMU_STEPS +
  62. RTL8192E_TRANS_CARDEMU_TO_SUS_STEPS +
  63. RTL8192E_TRANS_END_STEPS] = {
  64. RTL8192E_TRANS_ACT_TO_CARDEMU
  65. RTL8192E_TRANS_CARDEMU_TO_SUS
  66. RTL8192E_TRANS_END
  67. };
  68. /*3 Resume Array*/
  69. struct wlan_pwr_cfg rtl8192E_resume_flow
  70. [RTL8192E_TRANS_ACT_TO_CARDEMU_STEPS +
  71. RTL8192E_TRANS_CARDEMU_TO_SUS_STEPS +
  72. RTL8192E_TRANS_END_STEPS] = {
  73. RTL8192E_TRANS_SUS_TO_CARDEMU
  74. RTL8192E_TRANS_CARDEMU_TO_ACT
  75. RTL8192E_TRANS_END
  76. };
  77. /*3HWPDN Array*/
  78. struct wlan_pwr_cfg rtl8192E_hwpdn_flow
  79. [RTL8192E_TRANS_ACT_TO_CARDEMU_STEPS +
  80. RTL8192E_TRANS_CARDEMU_TO_PDN_STEPS +
  81. RTL8192E_TRANS_END_STEPS] = {
  82. RTL8192E_TRANS_ACT_TO_CARDEMU
  83. RTL8192E_TRANS_CARDEMU_TO_PDN
  84. RTL8192E_TRANS_END
  85. };
  86. /*3 Enter LPS */
  87. struct wlan_pwr_cfg rtl8192E_enter_lps_flow
  88. [RTL8192E_TRANS_ACT_TO_LPS_STEPS +
  89. RTL8192E_TRANS_END_STEPS] = {
  90. /*FW behavior*/
  91. RTL8192E_TRANS_ACT_TO_LPS
  92. RTL8192E_TRANS_END
  93. };
  94. /*3 Leave LPS */
  95. struct wlan_pwr_cfg rtl8192E_leave_lps_flow
  96. [RTL8192E_TRANS_LPS_TO_ACT_STEPS +
  97. RTL8192E_TRANS_END_STEPS] = {
  98. /*FW behavior*/
  99. RTL8192E_TRANS_LPS_TO_ACT
  100. RTL8192E_TRANS_END
  101. };