WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
hmac_sta_pm.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2020-2020. All rights reserved.
3 * Description: hmac_sta_pm_rom.c 的头文件。
4 * Create: 2020-07-03
5 */
6
7#ifndef HMAC_STA_PM_H
8#define HMAC_STA_PM_H
9
10/*****************************************************************************
11 1 其他头文件包含
12*****************************************************************************/
13#include "hmac_vap.h"
14#include "msg_psm_rom.h"
15
16#ifdef __cplusplus
17#if __cplusplus
18extern "C" {
19#endif
20#endif
21
22/*****************************************************************************
23 2 宏定义
24*****************************************************************************/
25#define HMAC_ALLOW_SLEEP (1)
26#define HMAC_DISALLOW_SLEEP (0)
27
28#define HMAC_WAKUP_MSG_WAIT_TIMEOUT (600)
29#define HMAC_SLEEP_MSG_WAIT_TIMEOUT (600)
30
31#define HMAC_SLEEP_TIMER_PERIOD (20) /* 睡眠定时器20ms定时 */
32
33#define HMAC_MSG_RETRY_NUM (3)
34#define HMAC_FAIL_MAX_TIMES (3) /* 连续多少次wakeup失败,可进入DFR流程 */
35/*****************************************************************************
36 3 枚举定义
37*****************************************************************************/
38/* TIM processing result */
39typedef enum {
40 STA_PWR_SAVE_STATE_ACTIVE = 0, /* active状态 */
41 STA_PWR_SAVE_STATE_DOZE, /* doze状态 */
42 STA_PWR_SAVE_STATE_AWAKE, /* wake状态 */
43
44 STA_PWR_SAVE_STATE_BUTT /* 最大状态 */
46
47
49 HMAC_PM_STAGE_INIT = 0, // 初始
50 HMAC_SLEEP_REQ_SND = 1, // sleep request发送完成
51 HMAC_SLEEP_ALLOW_RCV = 2, // 收到allow sleep response
52 HMAC_SLEEP_DISALLOW_RCV = 3, // 收到allow sleep response
53 HMAC_SLEEP_CMD_SND = 4, // 允许睡眠reg设置完成
58};
59
69
81/*****************************************************************************
82 4 全局变量声明
83*****************************************************************************/
84
85/*****************************************************************************
86 7 STRUCT定义
87*****************************************************************************/
104/*****************************************************************************
105 8 内联函数定义
106*****************************************************************************/
107
108/*****************************************************************************
109 10 函数声明
110*****************************************************************************/
116
117static osal_u32 hmac_sta_pm_init_weakref(osal_void) __attribute__ ((weakref("hmac_sta_pm_init"), used));
118static osal_void hmac_sta_pm_deinit_weakref(osal_void) __attribute__ ((weakref("hmac_sta_pm_deinit"), used));
119
128
130
134#ifdef __cplusplus
135#if __cplusplus
136}
137#endif
138#endif
139
140#endif /* end of hmac_sts_pm.h */
osal_s32 hmac_sta_pm_linkloss_ignor(osal_void)
osal_void hmac_pm_sta_attach(hmac_vap_stru *hmac_vap)
osal_u32(* hmac_sta_pm_wakeup_dev_cb)(uintptr_t *buf, osal_u32 len, osal_u32 data_type)
Definition hmac_sta_pm.h:133
osal_u8(* hmac_sta_pm_get_wlan_dev_state_cb)(osal_void)
Definition hmac_sta_pm.h:131
WIFI_HMAC_TCM_TEXT osal_u32 hmac_wifi_pm_get_host_allow_sleep(osal_void)
WIFI_HMAC_TCM_TEXT hmac_sta_pm_ctrl_info * hmac_sta_pm_get_ctrl(osal_void)
osal_bool hmac_sta_pm_achba_keepalive(osal_u8 enable)
osal_void hmac_sta_pm_feed_wdg(hmac_sta_pm_ctrl_info *hmac_sta_pm_ctrl)
sta_pwr_save_state_info
Definition hmac_sta_pm.h:39
@ STA_PWR_SAVE_STATE_ACTIVE
Definition hmac_sta_pm.h:40
@ STA_PWR_SAVE_STATE_DOZE
Definition hmac_sta_pm.h:41
@ STA_PWR_SAVE_STATE_BUTT
Definition hmac_sta_pm.h:44
@ STA_PWR_SAVE_STATE_AWAKE
Definition hmac_sta_pm.h:42
osal_u32 hmac_sta_pm_ctrl_set(osal_u32 flag)
osal_s32(* hmac_sta_pm_ignor_linkloss_cb)(osal_void)
Definition hmac_sta_pm.h:132
osal_void hmac_set_sta_pm_on_cb(hmac_vap_stru *hmac_vap, mac_cfg_ps_open_stru *pm_cfg)
osal_void hmac_config_mvap_set_sta_pm_on(hmac_vap_stru *hmac_vap, oal_bool_enum mvap_up)
osal_s32 hmac_sta_pm_on(hmac_vap_stru *hmac_vap, mac_pm_switch_enum_uint8 enable, mac_pm_ctrl_type_enum_uint8 ctrl_type)
osal_void hmac_sta_pm_stop_wdg(hmac_sta_pm_ctrl_info *hmac_sta_pm_ctrl)
osal_u32 hmac_sta_pm_wakeup_dev(uintptr_t *buf, osal_u32 len, osal_u32 data_type)
HMAC_PM_STAGE
Definition hmac_sta_pm.h:48
@ HMAC_PM_STAGE_INIT
Definition hmac_sta_pm.h:49
@ HMAC_WKUP_RSP_RCV
Definition hmac_sta_pm.h:55
@ HMAC_SLEEP_ALLOW_RCV
Definition hmac_sta_pm.h:51
@ HMAC_WKUP_CMD_SND
Definition hmac_sta_pm.h:56
@ HMAC_SLEEP_DISALLOW_RCV
Definition hmac_sta_pm.h:52
@ HMAC_SLEEP_REQ_SND
Definition hmac_sta_pm.h:50
@ HMAC_WKUP_REQ_SND
Definition hmac_sta_pm.h:54
@ HMAC_PM_STAGE_BUTT
Definition hmac_sta_pm.h:57
@ HMAC_SLEEP_CMD_SND
Definition hmac_sta_pm.h:53
hmac_not_sleep_type
Definition hmac_sta_pm.h:70
@ HMAC_NOT_SLEEP_INFO_START
Definition hmac_sta_pm.h:71
@ HMAC_NOT_SLEEP_VAP_NUM
Definition hmac_sta_pm.h:73
@ HMAC_NOT_SLEEP_INFO_BUTT
Definition hmac_sta_pm.h:79
@ HMAC_NOT_SLEEP_SCAN
Definition hmac_sta_pm.h:72
@ HMAC_NOT_SLEEP_FRW
Definition hmac_sta_pm.h:76
@ HMAC_NOT_SLEEP_HCC
Definition hmac_sta_pm.h:75
@ HMAC_NOT_SLEEP_PS_MODE
Definition hmac_sta_pm.h:74
@ HMAC_NOT_SLEEP_TX_CNT
Definition hmac_sta_pm.h:77
static osal_u32 used
Definition hmac_sta_pm.h:117
osal_u8 hmac_sta_pm_get_wlan_dev_state(osal_void)
sta_pm_debug_info
Definition hmac_sta_pm.h:60
@ STA_SYS_PM_STATE
Definition hmac_sta_pm.h:61
@ STA_WAKUP_REASON_DUMP
Definition hmac_sta_pm.h:63
@ STA_11B_BCN_INFO
Definition hmac_sta_pm.h:64
@ STA_PM_DEBUG_INFO_BUTT
Definition hmac_sta_pm.h:67
@ STA_NOT_SLEEP_REASON_DUMP
Definition hmac_sta_pm.h:62
@ STA_WAKEUP_TIME_DUMP
Definition hmac_sta_pm.h:65
osal_u8 rsv[3]
Definition oal_net.h:2
oal_bool_enum
Definition oal_types_device_rom.h:40
#define WIFI_HMAC_TCM_TEXT
Definition oal_util_hcm.h:68
int osal_s32
Definition osal_types.h:19
unsigned char osal_u8
Definition osal_types.h:11
osal_u8 osal_bool
Definition osal_types.h:27
void osal_void
Definition osal_types.h:29
unsigned int osal_u32
Definition osal_types.h:13
Log message information header.
Definition log_oam_logger.h:564
Definition frw_ext_common_rom.h:20
Definition hmac_sta_pm.h:88
osal_u8 wlan_dev_state
Definition hmac_sta_pm.h:90
osal_u8 wakeup_err_count
Definition hmac_sta_pm.h:92
osal_u8 ignor_linkloss
Definition hmac_sta_pm.h:94
osal_u8 wlan_pm_enable
Definition hmac_sta_pm.h:89
osal_wait wakeup_done
Definition hmac_sta_pm.h:100
frw_timeout_stru watchdog_timer
Definition hmac_sta_pm.h:97
osal_u8 fail_sleep_count
Definition hmac_sta_pm.h:93
osal_u32 wdg_timeout_cnt
Definition hmac_sta_pm.h:98
osal_wait sleep_request_ack
Definition hmac_sta_pm.h:101
osal_u8 pm_stage
Definition hmac_sta_pm.h:91
osal_mutex sleep_state_mutex
Definition hmac_sta_pm.h:102
osal_u32 pm_tx_activity_cnt
Definition hmac_sta_pm.h:96
Definition mac_vap_ext.h:2019
Definition msg_psm_rom.h:11
Definition osal_mutex.h:20
Definition osal_wait.h:21
unsigned int uintptr_t
Definition td_type.h:65
osal_u8 mac_pm_ctrl_type_enum_uint8
Definition wlan_resource_common_rom.h:198
osal_u8 mac_pm_switch_enum_uint8
Definition wlan_resource_common_rom.h:187