1 /* SPDX-License-Identifier: GPL-2.0 */
2 /******************************************************************************
4 * Copyright(c) 2016 Realtek Corporation.
7 * wlanfae <wlanfae@realtek.com>
8 * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
11 * Larry Finger <Larry.Finger@lwfinger.net>
13 *****************************************************************************/
14 #ifndef _HAL_H2CEXTRAINFO_H2C_C2H_NIC_H_
15 #define _HAL_H2CEXTRAINFO_H2C_C2H_NIC_H_
16 #define PHY_PARAMETER_INFO_GET_LENGTH(__extra_info) \
17 LE_BITS_TO_4BYTE(__extra_info + 0X00, 0, 8)
18 #define PHY_PARAMETER_INFO_SET_LENGTH(__extra_info, __value) \
19 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 0, 8, __value)
20 #define PHY_PARAMETER_INFO_GET_IO_CMD(__extra_info) \
21 LE_BITS_TO_4BYTE(__extra_info + 0X00, 8, 7)
22 #define PHY_PARAMETER_INFO_SET_IO_CMD(__extra_info, __value) \
23 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 8, 7, __value)
24 #define PHY_PARAMETER_INFO_GET_MSK_EN(__extra_info) \
25 LE_BITS_TO_4BYTE(__extra_info + 0X00, 15, 1)
26 #define PHY_PARAMETER_INFO_SET_MSK_EN(__extra_info, __value) \
27 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 15, 1, __value)
28 #define PHY_PARAMETER_INFO_GET_LLT_PG_BNDY(__extra_info) \
29 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 8)
30 #define PHY_PARAMETER_INFO_SET_LLT_PG_BNDY(__extra_info, __value) \
31 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 8, __value)
32 #define PHY_PARAMETER_INFO_GET_EFUSE_RSVDPAGE_LOC(__extra_info) \
33 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 8)
34 #define PHY_PARAMETER_INFO_SET_EFUSE_RSVDPAGE_LOC(__extra_info, __value) \
35 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 8, __value)
36 #define PHY_PARAMETER_INFO_GET_EFUSE_PATCH_EN(__extra_info) \
37 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 8)
38 #define PHY_PARAMETER_INFO_SET_EFUSE_PATCH_EN(__extra_info, __value) \
39 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 8, __value)
40 #define PHY_PARAMETER_INFO_GET_RF_ADDR(__extra_info) \
41 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 8)
42 #define PHY_PARAMETER_INFO_SET_RF_ADDR(__extra_info, __value) \
43 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 8, __value)
44 #define PHY_PARAMETER_INFO_GET_IO_ADDR(__extra_info) \
45 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 16)
46 #define PHY_PARAMETER_INFO_SET_IO_ADDR(__extra_info, __value) \
47 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 16, __value)
48 #define PHY_PARAMETER_INFO_GET_DELAY_VALUE(__extra_info) \
49 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 16)
50 #define PHY_PARAMETER_INFO_SET_DELAY_VALUE(__extra_info, __value) \
51 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 16, __value)
52 #define PHY_PARAMETER_INFO_GET_RF_PATH(__extra_info) \
53 LE_BITS_TO_4BYTE(__extra_info + 0X00, 24, 8)
54 #define PHY_PARAMETER_INFO_SET_RF_PATH(__extra_info, __value) \
55 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 24, 8, __value)
56 #define PHY_PARAMETER_INFO_GET_DATA(__extra_info) \
57 LE_BITS_TO_4BYTE(__extra_info + 0X04, 0, 32)
58 #define PHY_PARAMETER_INFO_SET_DATA(__extra_info, __value) \
59 SET_BITS_TO_LE_4BYTE(__extra_info + 0X04, 0, 32, __value)
60 #define PHY_PARAMETER_INFO_GET_MASK(__extra_info) \
61 LE_BITS_TO_4BYTE(__extra_info + 0X08, 0, 32)
62 #define PHY_PARAMETER_INFO_SET_MASK(__extra_info, __value) \
63 SET_BITS_TO_LE_4BYTE(__extra_info + 0X08, 0, 32, __value)
64 #define CHANNEL_INFO_GET_CHANNEL(__extra_info) \
65 LE_BITS_TO_4BYTE(__extra_info + 0X00, 0, 8)
66 #define CHANNEL_INFO_SET_CHANNEL(__extra_info, __value) \
67 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 0, 8, __value)
68 #define CHANNEL_INFO_GET_PRI_CH_IDX(__extra_info) \
69 LE_BITS_TO_4BYTE(__extra_info + 0X00, 8, 4)
70 #define CHANNEL_INFO_SET_PRI_CH_IDX(__extra_info, __value) \
71 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 8, 4, __value)
72 #define CHANNEL_INFO_GET_BANDWIDTH(__extra_info) \
73 LE_BITS_TO_4BYTE(__extra_info + 0X00, 12, 4)
74 #define CHANNEL_INFO_SET_BANDWIDTH(__extra_info, __value) \
75 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 12, 4, __value)
76 #define CHANNEL_INFO_GET_TIMEOUT(__extra_info) \
77 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 8)
78 #define CHANNEL_INFO_SET_TIMEOUT(__extra_info, __value) \
79 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 8, __value)
80 #define CHANNEL_INFO_GET_ACTION_ID(__extra_info) \
81 LE_BITS_TO_4BYTE(__extra_info + 0X00, 24, 7)
82 #define CHANNEL_INFO_SET_ACTION_ID(__extra_info, __value) \
83 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 24, 7, __value)
84 #define CHANNEL_INFO_GET_CH_EXTRA_INFO(__extra_info) \
85 LE_BITS_TO_4BYTE(__extra_info + 0X00, 31, 1)
86 #define CHANNEL_INFO_SET_CH_EXTRA_INFO(__extra_info, __value) \
87 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 31, 1, __value)
88 #define CH_EXTRA_INFO_GET_CH_EXTRA_INFO_ID(__extra_info) \
89 LE_BITS_TO_4BYTE(__extra_info + 0X00, 0, 7)
90 #define CH_EXTRA_INFO_SET_CH_EXTRA_INFO_ID(__extra_info, __value) \
91 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 0, 7, __value)
92 #define CH_EXTRA_INFO_GET_CH_EXTRA_INFO(__extra_info) \
93 LE_BITS_TO_4BYTE(__extra_info + 0X00, 7, 1)
94 #define CH_EXTRA_INFO_SET_CH_EXTRA_INFO(__extra_info, __value) \
95 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 7, 1, __value)
96 #define CH_EXTRA_INFO_GET_CH_EXTRA_INFO_SIZE(__extra_info) \
97 LE_BITS_TO_4BYTE(__extra_info + 0X00, 8, 8)
98 #define CH_EXTRA_INFO_SET_CH_EXTRA_INFO_SIZE(__extra_info, __value) \
99 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 8, 8, __value)
100 #define CH_EXTRA_INFO_GET_CH_EXTRA_INFO_DATA(__extra_info) \
101 LE_BITS_TO_4BYTE(__extra_info + 0X00, 16, 1)
102 #define CH_EXTRA_INFO_SET_CH_EXTRA_INFO_DATA(__extra_info, __value) \
103 SET_BITS_TO_LE_4BYTE(__extra_info + 0X00, 16, 1, __value)