hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
/** @file */
/******************************************************************************
 *
 * Copyright(c) 2019 Realtek Corporation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of version 2 of the GNU General Public License as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 *
 ******************************************************************************/
 
#ifndef _MAC_AX_H_
#define _MAC_AX_H_
 
#include "mac_def.h"
#include "mac_ax/fwcmd.h"
#include "mac_ax/security_cam.h"
#include "mac_ax/secure_boot.h"
#include "mac_ax/efuse.h"
#include "mac_ax/p2p.h"
#include "mac_ax/twt.h"
#include "mac_ax/dbcc.h"
#if MAC_AX_SDIO_SUPPORT
#include "mac_ax/_sdio.h"
#endif
#if MAC_AX_FEATURE_HV
#include "hv_ax/init_hv.h"
#include "hv_ax/fwcmd_hv.h"
#endif
 
#if MAC_AX_FEATURE_HV
#include "hv_type.h"
#endif
 
#define MAC_AX_MAJOR_VER    0    /*Software Architcture Modify*/
#define MAC_AX_PROTOTYPE_VER    29    /*New Feature;Regular Release*/
#define MAC_AX_SUB_VER        71    /*for bug fix*/
#define MAC_AX_SUB_INDEX    0    /*for special used*/
 
#define MAC_AX_SRC_VER(a, b, c, d)                                             \
               (((a) << 24) + ((b) << 16) + ((c) << 8) + (d))
 
#define acv_mask        0x0F
 
#ifdef CONFIG_NEW_HALMAC_INTERFACE
 
/**
 * @brief mac_ax_ops_init_v1
 *
 * @param *phl_adapter
 * @param *drv_adapter
 * @param chip_id
 * @param hci
 * @param **mac_adapter
 * @param **mac_ops
 * @return Please Place Description here.
 * @retval u32
 */
u32 mac_ax_ops_init_v1(void *phl_adapter, void *drv_adapter,
              enum rtw_chip_id chip_id,
              enum rtw_hci_type hci,
              struct mac_ax_adapter **mac_adapter,
              struct mac_ax_ops **mac_ops);
 
/**
 * @brief mac_ax_ops_init
 *
 * @param *drv_adapter
 * @param *pltfm_cb
 * @param intf
 * @param **mac_adapter
 * @param **mac_ops
 * @return Please Place Description here.
 * @retval u32
 */
#else
u32 mac_ax_ops_init(void *drv_adapter, struct mac_ax_pltfm_cb *pltfm_cb,
           enum mac_ax_intf intf,
           struct mac_ax_adapter **mac_adapter,
           struct mac_ax_ops **mac_ops);
 
/**
 * @brief mac_ax_phl_init
 *
 * @param *phl_adapter
 * @param *mac_adapter
 * @return Please Place Description here.
 * @retval u32
 */
 
#endif
#if MAC_AX_PHL_H2C
u32 mac_ax_phl_init(void *phl_adapter, struct mac_ax_adapter *mac_adapter);
 
/**
 * @brief mac_ax_ops_exit
 *
 * @param *adapter
 * @return Please Place Description here.
 * @retval u32
 */
#endif
 
u32 mac_ax_ops_exit(struct mac_ax_adapter *adapter);
 
/**
 * @brief is_chip_id
 *
 * @param *adapter
 * @param id
 * @return Please Place Description here.
 * @retval u32
 */
 
u32 is_chip_id(struct mac_ax_adapter *adapter, enum mac_ax_chip_id id);
 
/**
 * @brief is_cv
 *
 * @param *adapter
 * @param rtw_cv cv
 * @return Please Place Description here.
 * @retval u32
 */
 
u32 is_cv(struct mac_ax_adapter *adapter, enum rtw_cv cv);
 
/**
 * @brief xlat_chip_id
 *
 * @param hw_id
 * @param *chip_id
 * @return Please Place Description here.
 * @retval u32
 */
u32 xlat_chip_id(u8 hw_id, u8 *chip_id);
 
#endif