162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/* Copyright(c) 2009-2014  Realtek Corporation.*/
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci#include "../pwrseqcmd.h"
562306a36Sopenharmony_ci#include "pwrseq.h"
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci/* drivers should parse below arrays and do the corresponding actions */
962306a36Sopenharmony_ci/*3 Power on  Array*/
1062306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_power_on_flow[RTL8723B_TRANS_CARDEMU_TO_ACT_STEPS +
1162306a36Sopenharmony_ci					   RTL8723B_TRANS_END_STEPS] = {
1262306a36Sopenharmony_ci	RTL8723B_TRANS_CARDEMU_TO_ACT
1362306a36Sopenharmony_ci	RTL8723B_TRANS_END
1462306a36Sopenharmony_ci};
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci/*3Radio off GPIO Array */
1762306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_radio_off_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS
1862306a36Sopenharmony_ci					    + RTL8723B_TRANS_END_STEPS] = {
1962306a36Sopenharmony_ci	RTL8723B_TRANS_ACT_TO_CARDEMU
2062306a36Sopenharmony_ci	RTL8723B_TRANS_END
2162306a36Sopenharmony_ci};
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci/*3Card Disable Array*/
2462306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_card_disable_flow
2562306a36Sopenharmony_ci				[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS +
2662306a36Sopenharmony_ci				 RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS +
2762306a36Sopenharmony_ci				 RTL8723B_TRANS_END_STEPS] = {
2862306a36Sopenharmony_ci	RTL8723B_TRANS_ACT_TO_CARDEMU
2962306a36Sopenharmony_ci	RTL8723B_TRANS_CARDEMU_TO_CARDDIS
3062306a36Sopenharmony_ci	RTL8723B_TRANS_END
3162306a36Sopenharmony_ci};
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci/*3 Card Enable Array*/
3462306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_card_enable_flow
3562306a36Sopenharmony_ci				[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS +
3662306a36Sopenharmony_ci				 RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS +
3762306a36Sopenharmony_ci				 RTL8723B_TRANS_END_STEPS] = {
3862306a36Sopenharmony_ci	RTL8723B_TRANS_CARDDIS_TO_CARDEMU
3962306a36Sopenharmony_ci	RTL8723B_TRANS_CARDEMU_TO_ACT
4062306a36Sopenharmony_ci	RTL8723B_TRANS_END
4162306a36Sopenharmony_ci};
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci/*3Suspend Array*/
4462306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_suspend_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS +
4562306a36Sopenharmony_ci					  RTL8723B_TRANS_CARDEMU_TO_SUS_STEPS +
4662306a36Sopenharmony_ci					  RTL8723B_TRANS_END_STEPS] = {
4762306a36Sopenharmony_ci	RTL8723B_TRANS_ACT_TO_CARDEMU
4862306a36Sopenharmony_ci	RTL8723B_TRANS_CARDEMU_TO_SUS
4962306a36Sopenharmony_ci	RTL8723B_TRANS_END
5062306a36Sopenharmony_ci};
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci/*3 Resume Array*/
5362306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_resume_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS +
5462306a36Sopenharmony_ci					 RTL8723B_TRANS_CARDEMU_TO_SUS_STEPS +
5562306a36Sopenharmony_ci					 RTL8723B_TRANS_END_STEPS] = {
5662306a36Sopenharmony_ci	RTL8723B_TRANS_SUS_TO_CARDEMU
5762306a36Sopenharmony_ci	RTL8723B_TRANS_CARDEMU_TO_ACT
5862306a36Sopenharmony_ci	RTL8723B_TRANS_END
5962306a36Sopenharmony_ci};
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci/*3HWPDN Array*/
6262306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_hwpdn_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS +
6362306a36Sopenharmony_ci					RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS +
6462306a36Sopenharmony_ci					RTL8723B_TRANS_END_STEPS] = {
6562306a36Sopenharmony_ci	RTL8723B_TRANS_ACT_TO_CARDEMU
6662306a36Sopenharmony_ci	RTL8723B_TRANS_CARDEMU_TO_PDN
6762306a36Sopenharmony_ci	RTL8723B_TRANS_END
6862306a36Sopenharmony_ci};
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_ci/*3 Enter LPS */
7162306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_enter_lps_flow[RTL8723B_TRANS_ACT_TO_LPS_STEPS +
7262306a36Sopenharmony_ci					    RTL8723B_TRANS_END_STEPS] = {
7362306a36Sopenharmony_ci	/*FW behavior*/
7462306a36Sopenharmony_ci	RTL8723B_TRANS_ACT_TO_LPS
7562306a36Sopenharmony_ci	RTL8723B_TRANS_END
7662306a36Sopenharmony_ci};
7762306a36Sopenharmony_ci
7862306a36Sopenharmony_ci/*3 Leave LPS */
7962306a36Sopenharmony_cistruct wlan_pwr_cfg rtl8723B_leave_lps_flow[RTL8723B_TRANS_LPS_TO_ACT_STEPS +
8062306a36Sopenharmony_ci					    RTL8723B_TRANS_END_STEPS] = {
8162306a36Sopenharmony_ci	/*FW behavior*/
8262306a36Sopenharmony_ci	RTL8723B_TRANS_LPS_TO_ACT
8362306a36Sopenharmony_ci	RTL8723B_TRANS_END
8462306a36Sopenharmony_ci};
85