WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
hcc_cfg_comm.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2021-2023. All rights reserved.
3 * Description: hcc product configuration.
4 */
5
6#ifndef __HCC_CFG_COMM_H__
7#define __HCC_CFG_COMM_H__
8
9#include "osal_types.h"
10#include "td_base.h"
11
12#ifdef __cplusplus
13#if __cplusplus
14extern "C" {
15#endif
16#endif
17
18#define HCC_TRANS_THREAD_TASK_STACK_SIZE 4096
19
20/*
21 * 各个bus使用差异说明:
22 * SDIO: h->D: 无论是否聚合都带描述符, && 发送之前需要发送控制帧标识队列
23 * D->h: 不论是否聚合都不带描述符,使用64个寄存器存储,第0个标识队列ID, && 发送之前不需要发送控制帧
24 */
31
38
50
51#define HCC_CHANNEL_AP HCC_BUS_IPC
52
53typedef enum _hcc_serv_main_type {
54 HCC_ACTION_TYPE_BT = 0, /* data from bt */
55 HCC_ACTION_TYPE_OAM = 1, /* data from oam,plat etc. */
56 HCC_ACTION_TYPE_TEST = 2, /* used for hcc transfer test,msg,dfx etc */
57 HCC_ACTION_TYPE_GLP = 3, /* used for device chr exception, discarded by hso now */
58 HCC_ACTION_TYPE_CUSTOMIZE = 4, /* used for wifi control message */
59 HCC_ACTION_TYPE_BTC_MSG = 5, /* used for btc msg */
60 HCC_ACTION_TYPE_WIFI = 6, /* data from wifi data transfer */
61 HCC_SERVICE_VIRTUAL_HMAC = 7, /* test for resv1 */
62 HCC_SERVICE_VIRTUAL_DMAC = 8, /* test for resv2 */
63 HCC_SERVICE_FOR_HCC_INTERNAL = 9, /* test for resv3 */
64 HCC_ACTION_TYPE_SLE = 0xA, /* data from sle */
67
68typedef enum _hcc_queue_type {
69 CTRL_QUEUE = 0, /* used for wifi control message */
70 DATA_HI_QUEUE = 1, /* used for wifi mgmt frame */
71 DATA_LO_QUEUE = 2, /* used for wifi data frame */
72 BT_DATA_QUEUE = 3, /* used for bt data */
73 SLE_DATA_QUEUE = 4, /* used for gle data */
74 HCC_QUEUE_INTERNAL = 5, /* used for oam,plat etc */
75 BTC_MSG_QUEUE = 6, /* used for btc msg */
76 HCC_TEST_QUEUE = 7, /* used for hcc test */
79
81 SYSCH_MSG_QUEUE = 0, /* used for syschannel message */
82 SYSCH_DATA_QUEUE = 1, /* used for syschannel data */
83 SYSCH_TEST_QUEUE = 2, /* used for syschannel test */
85
86typedef enum _d2h_msg_type {
87 D2H_MSG_FLOWCTRL_ON = 0, /* can't send data, now discard, wifi flowctrl self */
88 D2H_MSG_FLOWCTRL_OFF = 1, /* can send data, now discard, wifi flowctrl self */
91 D2H_MSG_TEST_START = 4, /* hcc test 开始测试,时间在Host侧记录 */
92 D2H_MSG_TEST_STOP = 5, /* hcc test 结束测试,时间在Host侧记录 */
93 D2H_MSG_CREDIT_UPDATE = 6, /* update high priority buffer credit value, not used */
95 D2H_MSG_BSP_READY = 8, /* device boot msg */
96 D2H_MSG_WLAN_READY = 9, /* wlan ready msg */
97 D2H_MSG_PLAT_END = 10, /* 保留前十个 */
99
100/* Host to device sdio message type */
101typedef enum _h2d_msg_type {
103 H2D_MSG_FLOWCTRL_OFF = 1, /* can send data, force to open */
106 H2D_MSG_TEST = 4, /* msg for hcc test */
107 H2D_MSG_TEST_LOOP = 5, /* 双向测试使用msg机制触发 */
108 H2D_MSG_WLAN_OPEN = 6, /* wlan open msg */
109 H2D_MSG_WLAN_CLOSE = 7, /* wlan close msg */
112 H2D_MSG_PLAT_END = 10, /* 保留前十个 */
114
115#define FC_MSG_FLOWCTRL_ON D2H_MSG_FLOWCTRL_ON
116#define FC_MSG_FLOWCTRL_OFF D2H_MSG_FLOWCTRL_OFF
117#define FC_MSG_FLOWCTRL_CHECK D2H_MSG_FLOWCTRL_CHECK
118
121
122#ifdef __cplusplus
123#if __cplusplus
124}
125#endif
126#endif
127
128#endif /* __HCC_CFG_COMM_H__ */
_hcc_bus_type_
Definition hcc_cfg_comm.h:39
@ HCC_BUS_MAX
Definition hcc_cfg_comm.h:48
@ HCC_BUS_IPC
Definition hcc_cfg_comm.h:43
@ HCC_BUS_BUTT
Definition hcc_cfg_comm.h:47
@ HCC_BUS_SDIO
Definition hcc_cfg_comm.h:42
@ HCC_BUS_UART
Definition hcc_cfg_comm.h:46
@ HCC_BUS_USB
Definition hcc_cfg_comm.h:41
@ HCC_BUS_VIRTUAL
Definition hcc_cfg_comm.h:45
@ HCC_BUS_MIN
Definition hcc_cfg_comm.h:40
@ HCC_BUS_PCIE
Definition hcc_cfg_comm.h:44
enum _hcc_serv_main_type hcc_service_type
_hcc_serv_main_type
Definition hcc_cfg_comm.h:53
@ HCC_ACTION_TYPE_BTC_MSG
Definition hcc_cfg_comm.h:59
@ HCC_ACTION_TYPE_OAM
Definition hcc_cfg_comm.h:55
@ HCC_ACTION_TYPE_SLE
Definition hcc_cfg_comm.h:64
@ HCC_SERVICE_TYPE_MAX
Definition hcc_cfg_comm.h:65
@ HCC_ACTION_TYPE_WIFI
Definition hcc_cfg_comm.h:60
@ HCC_ACTION_TYPE_CUSTOMIZE
Definition hcc_cfg_comm.h:58
@ HCC_ACTION_TYPE_BT
Definition hcc_cfg_comm.h:54
@ HCC_SERVICE_VIRTUAL_DMAC
Definition hcc_cfg_comm.h:62
@ HCC_SERVICE_VIRTUAL_HMAC
Definition hcc_cfg_comm.h:61
@ HCC_SERVICE_FOR_HCC_INTERNAL
Definition hcc_cfg_comm.h:63
@ HCC_ACTION_TYPE_TEST
Definition hcc_cfg_comm.h:56
@ HCC_ACTION_TYPE_GLP
Definition hcc_cfg_comm.h:57
_h2d_msg_type
Definition hcc_cfg_comm.h:101
@ H2D_MSG_FLOWCTRL_CHECK
Definition hcc_cfg_comm.h:104
@ H2D_MSG_TEST
Definition hcc_cfg_comm.h:106
@ H2D_MSG_FLOWCTRL_ON
Definition hcc_cfg_comm.h:102
@ H2D_MSG_FLOWCTRL_OFF
Definition hcc_cfg_comm.h:103
@ H2D_MSG_BT_OPEN
Definition hcc_cfg_comm.h:110
@ H2D_MSG_WLAN_OPEN
Definition hcc_cfg_comm.h:108
@ H2D_MSG_BT_CLOSE
Definition hcc_cfg_comm.h:111
@ H2D_MSG_PLAT_END
Definition hcc_cfg_comm.h:112
@ H2D_MSG_TEST_INIT
Definition hcc_cfg_comm.h:105
@ H2D_MSG_TEST_LOOP
Definition hcc_cfg_comm.h:107
@ H2D_MSG_WLAN_CLOSE
Definition hcc_cfg_comm.h:109
_d2h_msg_type
Definition hcc_cfg_comm.h:86
@ D2H_MSG_TEST_START
Definition hcc_cfg_comm.h:91
@ D2H_MSG_FLOWCTRL_CHECK
Definition hcc_cfg_comm.h:89
@ D2H_MSG_DEVICE_PANIC
Definition hcc_cfg_comm.h:94
@ D2H_MSG_WLAN_READY
Definition hcc_cfg_comm.h:96
@ D2H_MSG_CREDIT_UPDATE
Definition hcc_cfg_comm.h:93
@ D2H_MSG_FLOWCTRL_OFF
Definition hcc_cfg_comm.h:88
@ D2H_MSG_FLOWCTRL_ON
Definition hcc_cfg_comm.h:87
@ D2H_MSG_TEST_STOP
Definition hcc_cfg_comm.h:92
@ D2H_MSG_PLAT_END
Definition hcc_cfg_comm.h:97
@ D2H_MSG_TEST
Definition hcc_cfg_comm.h:90
@ D2H_MSG_BSP_READY
Definition hcc_cfg_comm.h:95
_syschannel_queue_type
Definition hcc_cfg_comm.h:80
@ SYSCH_MSG_QUEUE
Definition hcc_cfg_comm.h:81
@ SYSCH_TEST_QUEUE
Definition hcc_cfg_comm.h:83
@ SYSCH_DATA_QUEUE
Definition hcc_cfg_comm.h:82
enum _d2h_msg_type d2h_msg_type
td_u32 hcc_tx_msg_type
Definition hcc_cfg_comm.h:119
_hcc_queue_type
Definition hcc_cfg_comm.h:68
@ SLE_DATA_QUEUE
Definition hcc_cfg_comm.h:73
@ CTRL_QUEUE
Definition hcc_cfg_comm.h:69
@ DATA_HI_QUEUE
Definition hcc_cfg_comm.h:70
@ HCC_QUEUE_INTERNAL
Definition hcc_cfg_comm.h:74
@ DATA_LO_QUEUE
Definition hcc_cfg_comm.h:71
@ HCC_TEST_QUEUE
Definition hcc_cfg_comm.h:76
@ BT_DATA_QUEUE
Definition hcc_cfg_comm.h:72
@ HCC_QUEUE_COUNT
Definition hcc_cfg_comm.h:77
@ BTC_MSG_QUEUE
Definition hcc_cfg_comm.h:75
_hcc_ipc_transfer_mode_
Definition hcc_cfg_comm.h:32
@ HCC_IPC_TRANS_MODE_INVALID
Definition hcc_cfg_comm.h:36
@ HCC_IPC_TRANS_PREMEM
Definition hcc_cfg_comm.h:34
@ HCC_IPC_TRANS_MODE_BUTT
Definition hcc_cfg_comm.h:35
@ HCC_IPC_TRANS_POSTMEM
Definition hcc_cfg_comm.h:33
enum _hcc_queue_type hcc_queue_type
_hcc_transfer_mode_
Definition hcc_cfg_comm.h:25
@ HCC_TRANS_MODE_BUTT
Definition hcc_cfg_comm.h:28
@ HCC_TRANS_MODE_INVALID
Definition hcc_cfg_comm.h:29
@ HCC_SINGLE_MODE
Definition hcc_cfg_comm.h:26
@ HCC_ASSEMBLE_MODE
Definition hcc_cfg_comm.h:27
enum _hcc_transfer_mode_ hcc_transfer_mode
enum _syschannel_queue_type syschannel_queue_type
enum _hcc_bus_type_ hcc_bus_type
td_u32 hcc_rx_msg_type
Definition hcc_cfg_comm.h:120
enum _h2d_msg_type h2d_msg_type
enum _hcc_ipc_transfer_mode_ hcc_ipc_transfer_mode
#define TD_U8_MAX
Definition td_base.h:24
unsigned int td_u32
Definition td_type.h:38