1 /****************************************************************************** 2 * 3 * Copyright(c) 2016 - 2019 Realtek Corporation. All rights reserved. 4 * 5 * This program is free software; you can redistribute it and/or modify it 6 * under the terms of version 2 of the GNU General Public License as 7 * published by the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 * more details. 13 * 14 ******************************************************************************/ 15 16 #ifndef _HAL_ORIGINALH2CFORMAT_H2C_C2H_AP_H_ 17 #define _HAL_ORIGINALH2CFORMAT_H2C_C2H_AP_H_ 18 #define CMD_ID_ORIGINAL_H2C 0X00 19 #define CMD_ID_H2C2H_LB 0X0 20 #define CMD_ID_D0_SCAN_OFFLOAD_CTRL 0X06 21 #define CMD_ID_RSVD_PAGE 0X0 22 #define CMD_ID_MEDIA_STATUS_RPT 0X01 23 #define CMD_ID_KEEP_ALIVE 0X03 24 #define CMD_ID_DISCONNECT_DECISION 0X04 25 #define CMD_ID_AP_OFFLOAD 0X08 26 #define CMD_ID_BCN_RSVDPAGE 0X09 27 #define CMD_ID_PROBE_RSP_RSVDPAGE 0X0A 28 #define CMD_ID_SINGLE_CHANNELSWITCH 0X1C 29 #define CMD_ID_SINGLE_CHANNELSWITCH_V2 0X1D 30 #define CMD_ID_SET_PWR_MODE 0X00 31 #define CMD_ID_PS_TUNING_PARA 0X01 32 #define CMD_ID_PS_TUNING_PARA_II 0X02 33 #define CMD_ID_PS_LPS_PARA 0X03 34 #define CMD_ID_P2P_PS_OFFLOAD 0X04 35 #define CMD_ID_PS_SCAN_EN 0X05 36 #define CMD_ID_SAP_PS 0X06 37 #define CMD_ID_INACTIVE_PS 0X07 38 #define CMD_ID_MACID_CFG 0X00 39 #define CMD_ID_TXBF 0X01 40 #define CMD_ID_RSSI_SETTING 0X02 41 #define CMD_ID_AP_REQ_TXRPT 0X03 42 #define CMD_ID_INIT_RATE_COLLECTION 0X04 43 #define CMD_ID_IQK_OFFLOAD 0X05 44 #define CMD_ID_MACID_CFG_3SS 0X06 45 #define CMD_ID_RA_PARA_ADJUST 0X07 46 #define CMD_ID_REQ_TXRPT_ACQ 0X12 47 #define CMD_ID_WWLAN 0X00 48 #define CMD_ID_REMOTE_WAKE_CTRL 0X01 49 #define CMD_ID_AOAC_GLOBAL_INFO 0X02 50 #define CMD_ID_AOAC_RSVD_PAGE 0X03 51 #define CMD_ID_AOAC_RSVD_PAGE2 0X04 52 #define CMD_ID_D0_SCAN_OFFLOAD_INFO 0X05 53 #define CMD_ID_CHANNEL_SWITCH_OFFLOAD 0X07 54 #define CMD_ID_AOAC_RSVD_PAGE3 0X08 55 #define CMD_ID_DBG_MSG_CTRL 0X1E 56 #define CLASS_ORIGINAL_H2C 0X00 57 #define CLASS_H2C2H_LB 0X07 58 #define CLASS_D0_SCAN_OFFLOAD_CTRL 0X04 59 #define CLASS_RSVD_PAGE 0X0 60 #define CLASS_MEDIA_STATUS_RPT 0X0 61 #define CLASS_KEEP_ALIVE 0X0 62 #define CLASS_DISCONNECT_DECISION 0X0 63 #define CLASS_AP_OFFLOAD 0X0 64 #define CLASS_BCN_RSVDPAGE 0X0 65 #define CLASS_PROBE_RSP_RSVDPAGE 0X0 66 #define CLASS_SINGLE_CHANNELSWITCH 0X0 67 #define CLASS_SINGLE_CHANNELSWITCH_V2 0X0 68 #define CLASS_SET_PWR_MODE 0X01 69 #define CLASS_PS_TUNING_PARA 0X01 70 #define CLASS_PS_TUNING_PARA_II 0X01 71 #define CLASS_PS_LPS_PARA 0X01 72 #define CLASS_P2P_PS_OFFLOAD 0X01 73 #define CLASS_PS_SCAN_EN 0X1 74 #define CLASS_SAP_PS 0X1 75 #define CLASS_INACTIVE_PS 0X1 76 #define CLASS_MACID_CFG 0X2 77 #define CLASS_TXBF 0X2 78 #define CLASS_RSSI_SETTING 0X2 79 #define CLASS_AP_REQ_TXRPT 0X2 80 #define CLASS_INIT_RATE_COLLECTION 0X2 81 #define CLASS_IQK_OFFLOAD 0X2 82 #define CLASS_MACID_CFG_3SS 0X2 83 #define CLASS_RA_PARA_ADJUST 0X02 84 #define CLASS_REQ_TXRPT_ACQ 0X02 85 #define CLASS_WWLAN 0X4 86 #define CLASS_REMOTE_WAKE_CTRL 0X4 87 #define CLASS_AOAC_GLOBAL_INFO 0X04 88 #define CLASS_AOAC_RSVD_PAGE 0X04 89 #define CLASS_AOAC_RSVD_PAGE2 0X04 90 #define CLASS_D0_SCAN_OFFLOAD_INFO 0X04 91 #define CLASS_CHANNEL_SWITCH_OFFLOAD 0X04 92 #define CLASS_AOAC_RSVD_PAGE3 0X04 93 #define CLASS_DBG_MSG_CTRL 0X07 94 #define ORIGINAL_H2C_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 95 #define ORIGINAL_H2C_SET_CMD_ID(h2c_pkt, value) \ 96 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 97 #define ORIGINAL_H2C_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 98 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 99 #define ORIGINAL_H2C_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 100 #define ORIGINAL_H2C_SET_CLASS(h2c_pkt, value) \ 101 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 102 #define ORIGINAL_H2C_SET_CLASS_NO_CLR(h2c_pkt, value) \ 103 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 104 #define H2C2H_LB_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 105 #define H2C2H_LB_SET_CMD_ID(h2c_pkt, value) \ 106 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 107 #define H2C2H_LB_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 108 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 109 #define H2C2H_LB_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 110 #define H2C2H_LB_SET_CLASS(h2c_pkt, value) \ 111 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 112 #define H2C2H_LB_SET_CLASS_NO_CLR(h2c_pkt, value) \ 113 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 114 #define H2C2H_LB_GET_SEQ(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 115 #define H2C2H_LB_SET_SEQ(h2c_pkt, value) \ 116 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 117 #define H2C2H_LB_SET_SEQ_NO_CLR(h2c_pkt, value) \ 118 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 119 #define H2C2H_LB_GET_PAYLOAD1(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 16) 120 #define H2C2H_LB_SET_PAYLOAD1(h2c_pkt, value) \ 121 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 16, value) 122 #define H2C2H_LB_SET_PAYLOAD1_NO_CLR(h2c_pkt, value) \ 123 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 16, value) 124 #define H2C2H_LB_GET_PAYLOAD2(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 0, 32) 125 #define H2C2H_LB_SET_PAYLOAD2(h2c_pkt, value) \ 126 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 32, value) 127 #define H2C2H_LB_SET_PAYLOAD2_NO_CLR(h2c_pkt, value) \ 128 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 32, value) 129 #define D0_SCAN_OFFLOAD_CTRL_GET_CMD_ID(h2c_pkt) \ 130 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 131 #define D0_SCAN_OFFLOAD_CTRL_SET_CMD_ID(h2c_pkt, value) \ 132 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 133 #define D0_SCAN_OFFLOAD_CTRL_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 134 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 135 #define D0_SCAN_OFFLOAD_CTRL_GET_CLASS(h2c_pkt) \ 136 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 137 #define D0_SCAN_OFFLOAD_CTRL_SET_CLASS(h2c_pkt, value) \ 138 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 139 #define D0_SCAN_OFFLOAD_CTRL_SET_CLASS_NO_CLR(h2c_pkt, value) \ 140 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 141 #define D0_SCAN_OFFLOAD_CTRL_GET_D0_SCAN_FUN_EN(h2c_pkt) \ 142 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 143 #define D0_SCAN_OFFLOAD_CTRL_SET_D0_SCAN_FUN_EN(h2c_pkt, value) \ 144 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 145 #define D0_SCAN_OFFLOAD_CTRL_SET_D0_SCAN_FUN_EN_NO_CLR(h2c_pkt, value) \ 146 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 147 #define D0_SCAN_OFFLOAD_CTRL_GET_RTD3FUN_EN(h2c_pkt) \ 148 GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 149 #define D0_SCAN_OFFLOAD_CTRL_SET_RTD3FUN_EN(h2c_pkt, value) \ 150 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 151 #define D0_SCAN_OFFLOAD_CTRL_SET_RTD3FUN_EN_NO_CLR(h2c_pkt, value) \ 152 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 153 #define D0_SCAN_OFFLOAD_CTRL_GET_U3_SCAN_FUN_EN(h2c_pkt) \ 154 GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 155 #define D0_SCAN_OFFLOAD_CTRL_SET_U3_SCAN_FUN_EN(h2c_pkt, value) \ 156 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 157 #define D0_SCAN_OFFLOAD_CTRL_SET_U3_SCAN_FUN_EN_NO_CLR(h2c_pkt, value) \ 158 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 159 #define D0_SCAN_OFFLOAD_CTRL_GET_NLO_FUN_EN(h2c_pkt) \ 160 GET_H2C_FIELD(h2c_pkt + 0X00, 11, 1) 161 #define D0_SCAN_OFFLOAD_CTRL_SET_NLO_FUN_EN(h2c_pkt, value) \ 162 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 11, 1, value) 163 #define D0_SCAN_OFFLOAD_CTRL_SET_NLO_FUN_EN_NO_CLR(h2c_pkt, value) \ 164 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 11, 1, value) 165 #define D0_SCAN_OFFLOAD_CTRL_GET_IPS_DEPENDENT(h2c_pkt) \ 166 GET_H2C_FIELD(h2c_pkt + 0X00, 12, 1) 167 #define D0_SCAN_OFFLOAD_CTRL_SET_IPS_DEPENDENT(h2c_pkt, value) \ 168 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 12, 1, value) 169 #define D0_SCAN_OFFLOAD_CTRL_SET_IPS_DEPENDENT_NO_CLR(h2c_pkt, value) \ 170 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 12, 1, value) 171 #define D0_SCAN_OFFLOAD_CTRL_GET_LOC_PROBE_PACKET(h2c_pkt) \ 172 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 17) 173 #define D0_SCAN_OFFLOAD_CTRL_SET_LOC_PROBE_PACKET(h2c_pkt, value) \ 174 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 17, value) 175 #define D0_SCAN_OFFLOAD_CTRL_SET_LOC_PROBE_PACKET_NO_CLR(h2c_pkt, value) \ 176 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 17, value) 177 #define D0_SCAN_OFFLOAD_CTRL_GET_LOC_SCAN_INFO(h2c_pkt) \ 178 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 179 #define D0_SCAN_OFFLOAD_CTRL_SET_LOC_SCAN_INFO(h2c_pkt, value) \ 180 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 181 #define D0_SCAN_OFFLOAD_CTRL_SET_LOC_SCAN_INFO_NO_CLR(h2c_pkt, value) \ 182 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 183 #define D0_SCAN_OFFLOAD_CTRL_GET_LOC_SSID_INFO(h2c_pkt) \ 184 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 185 #define D0_SCAN_OFFLOAD_CTRL_SET_LOC_SSID_INFO(h2c_pkt, value) \ 186 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 187 #define D0_SCAN_OFFLOAD_CTRL_SET_LOC_SSID_INFO_NO_CLR(h2c_pkt, value) \ 188 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 189 #define RSVD_PAGE_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 190 #define RSVD_PAGE_SET_CMD_ID(h2c_pkt, value) \ 191 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 192 #define RSVD_PAGE_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 193 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 194 #define RSVD_PAGE_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 195 #define RSVD_PAGE_SET_CLASS(h2c_pkt, value) \ 196 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 197 #define RSVD_PAGE_SET_CLASS_NO_CLR(h2c_pkt, value) \ 198 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 199 #define RSVD_PAGE_GET_LOC_PROBE_RSP(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 200 #define RSVD_PAGE_SET_LOC_PROBE_RSP(h2c_pkt, value) \ 201 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 202 #define RSVD_PAGE_SET_LOC_PROBE_RSP_NO_CLR(h2c_pkt, value) \ 203 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 204 #define RSVD_PAGE_GET_LOC_PS_POLL(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 205 #define RSVD_PAGE_SET_LOC_PS_POLL(h2c_pkt, value) \ 206 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 207 #define RSVD_PAGE_SET_LOC_PS_POLL_NO_CLR(h2c_pkt, value) \ 208 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 209 #define RSVD_PAGE_GET_LOC_NULL_DATA(h2c_pkt) \ 210 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 211 #define RSVD_PAGE_SET_LOC_NULL_DATA(h2c_pkt, value) \ 212 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 213 #define RSVD_PAGE_SET_LOC_NULL_DATA_NO_CLR(h2c_pkt, value) \ 214 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 215 #define RSVD_PAGE_GET_LOC_QOS_NULL(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 216 #define RSVD_PAGE_SET_LOC_QOS_NULL(h2c_pkt, value) \ 217 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 218 #define RSVD_PAGE_SET_LOC_QOS_NULL_NO_CLR(h2c_pkt, value) \ 219 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 220 #define RSVD_PAGE_GET_LOC_BT_QOS_NULL(h2c_pkt) \ 221 GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 222 #define RSVD_PAGE_SET_LOC_BT_QOS_NULL(h2c_pkt, value) \ 223 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 224 #define RSVD_PAGE_SET_LOC_BT_QOS_NULL_NO_CLR(h2c_pkt, value) \ 225 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 226 #define RSVD_PAGE_GET_LOC_CTS2SELF(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 227 #define RSVD_PAGE_SET_LOC_CTS2SELF(h2c_pkt, value) \ 228 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 229 #define RSVD_PAGE_SET_LOC_CTS2SELF_NO_CLR(h2c_pkt, value) \ 230 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 231 #define RSVD_PAGE_GET_LOC_LTECOEX_QOSNULL(h2c_pkt) \ 232 GET_H2C_FIELD(h2c_pkt + 0X04, 24, 8) 233 #define RSVD_PAGE_SET_LOC_LTECOEX_QOSNULL(h2c_pkt, value) \ 234 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 24, 8, value) 235 #define RSVD_PAGE_SET_LOC_LTECOEX_QOSNULL_NO_CLR(h2c_pkt, value) \ 236 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 24, 8, value) 237 #define MEDIA_STATUS_RPT_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 238 #define MEDIA_STATUS_RPT_SET_CMD_ID(h2c_pkt, value) \ 239 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 240 #define MEDIA_STATUS_RPT_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 241 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 242 #define MEDIA_STATUS_RPT_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 243 #define MEDIA_STATUS_RPT_SET_CLASS(h2c_pkt, value) \ 244 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 245 #define MEDIA_STATUS_RPT_SET_CLASS_NO_CLR(h2c_pkt, value) \ 246 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 247 #define MEDIA_STATUS_RPT_GET_OP_MODE(h2c_pkt) \ 248 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 249 #define MEDIA_STATUS_RPT_SET_OP_MODE(h2c_pkt, value) \ 250 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 251 #define MEDIA_STATUS_RPT_SET_OP_MODE_NO_CLR(h2c_pkt, value) \ 252 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 253 #define MEDIA_STATUS_RPT_GET_MACID_IN(h2c_pkt) \ 254 GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 255 #define MEDIA_STATUS_RPT_SET_MACID_IN(h2c_pkt, value) \ 256 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 257 #define MEDIA_STATUS_RPT_SET_MACID_IN_NO_CLR(h2c_pkt, value) \ 258 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 259 #define MEDIA_STATUS_RPT_GET_MACID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 260 #define MEDIA_STATUS_RPT_SET_MACID(h2c_pkt, value) \ 261 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 262 #define MEDIA_STATUS_RPT_SET_MACID_NO_CLR(h2c_pkt, value) \ 263 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 264 #define MEDIA_STATUS_RPT_GET_MACID_END(h2c_pkt) \ 265 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 266 #define MEDIA_STATUS_RPT_SET_MACID_END(h2c_pkt, value) \ 267 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 268 #define MEDIA_STATUS_RPT_SET_MACID_END_NO_CLR(h2c_pkt, value) \ 269 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 270 #define KEEP_ALIVE_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 271 #define KEEP_ALIVE_SET_CMD_ID(h2c_pkt, value) \ 272 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 273 #define KEEP_ALIVE_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 274 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 275 #define KEEP_ALIVE_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 276 #define KEEP_ALIVE_SET_CLASS(h2c_pkt, value) \ 277 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 278 #define KEEP_ALIVE_SET_CLASS_NO_CLR(h2c_pkt, value) \ 279 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 280 #define KEEP_ALIVE_GET_ENABLE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 281 #define KEEP_ALIVE_SET_ENABLE(h2c_pkt, value) \ 282 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 283 #define KEEP_ALIVE_SET_ENABLE_NO_CLR(h2c_pkt, value) \ 284 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 285 #define KEEP_ALIVE_GET_ADOPT_USER_SETTING(h2c_pkt) \ 286 GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 287 #define KEEP_ALIVE_SET_ADOPT_USER_SETTING(h2c_pkt, value) \ 288 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 289 #define KEEP_ALIVE_SET_ADOPT_USER_SETTING_NO_CLR(h2c_pkt, value) \ 290 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 291 #define KEEP_ALIVE_GET_PKT_TYPE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 292 #define KEEP_ALIVE_SET_PKT_TYPE(h2c_pkt, value) \ 293 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 294 #define KEEP_ALIVE_SET_PKT_TYPE_NO_CLR(h2c_pkt, value) \ 295 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 296 #define KEEP_ALIVE_GET_KEEP_ALIVE_CHECK_PERIOD(h2c_pkt) \ 297 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 298 #define KEEP_ALIVE_SET_KEEP_ALIVE_CHECK_PERIOD(h2c_pkt, value) \ 299 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 300 #define KEEP_ALIVE_SET_KEEP_ALIVE_CHECK_PERIOD_NO_CLR(h2c_pkt, value) \ 301 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 302 #define DISCONNECT_DECISION_GET_CMD_ID(h2c_pkt) \ 303 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 304 #define DISCONNECT_DECISION_SET_CMD_ID(h2c_pkt, value) \ 305 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 306 #define DISCONNECT_DECISION_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 307 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 308 #define DISCONNECT_DECISION_GET_CLASS(h2c_pkt) \ 309 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 310 #define DISCONNECT_DECISION_SET_CLASS(h2c_pkt, value) \ 311 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 312 #define DISCONNECT_DECISION_SET_CLASS_NO_CLR(h2c_pkt, value) \ 313 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 314 #define DISCONNECT_DECISION_GET_ENABLE(h2c_pkt) \ 315 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 316 #define DISCONNECT_DECISION_SET_ENABLE(h2c_pkt, value) \ 317 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 318 #define DISCONNECT_DECISION_SET_ENABLE_NO_CLR(h2c_pkt, value) \ 319 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 320 #define DISCONNECT_DECISION_GET_ADOPT_USER_SETTING(h2c_pkt) \ 321 GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 322 #define DISCONNECT_DECISION_SET_ADOPT_USER_SETTING(h2c_pkt, value) \ 323 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 324 #define DISCONNECT_DECISION_SET_ADOPT_USER_SETTING_NO_CLR(h2c_pkt, value) \ 325 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 326 #define DISCONNECT_DECISION_GET_TRY_OK_BCN_FAIL_COUNT_EN(h2c_pkt) \ 327 GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 328 #define DISCONNECT_DECISION_SET_TRY_OK_BCN_FAIL_COUNT_EN(h2c_pkt, value) \ 329 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 330 #define DISCONNECT_DECISION_SET_TRY_OK_BCN_FAIL_COUNT_EN_NO_CLR(h2c_pkt, \ 331 value) \ 332 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 333 #define DISCONNECT_DECISION_GET_DISCONNECT_EN(h2c_pkt) \ 334 GET_H2C_FIELD(h2c_pkt + 0X00, 11, 1) 335 #define DISCONNECT_DECISION_SET_DISCONNECT_EN(h2c_pkt, value) \ 336 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 11, 1, value) 337 #define DISCONNECT_DECISION_SET_DISCONNECT_EN_NO_CLR(h2c_pkt, value) \ 338 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 11, 1, value) 339 #define DISCONNECT_DECISION_GET_DISCON_DECISION_CHECK_PERIOD(h2c_pkt) \ 340 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 341 #define DISCONNECT_DECISION_SET_DISCON_DECISION_CHECK_PERIOD(h2c_pkt, value) \ 342 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 343 #define DISCONNECT_DECISION_SET_DISCON_DECISION_CHECK_PERIOD_NO_CLR(h2c_pkt, \ 344 value) \ 345 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 346 #define DISCONNECT_DECISION_GET_TRY_PKT_NUM(h2c_pkt) \ 347 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 348 #define DISCONNECT_DECISION_SET_TRY_PKT_NUM(h2c_pkt, value) \ 349 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 350 #define DISCONNECT_DECISION_SET_TRY_PKT_NUM_NO_CLR(h2c_pkt, value) \ 351 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 352 #define DISCONNECT_DECISION_GET_TRY_OK_BCN_FAIL_COUNT_LIMIT(h2c_pkt) \ 353 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 354 #define DISCONNECT_DECISION_SET_TRY_OK_BCN_FAIL_COUNT_LIMIT(h2c_pkt, value) \ 355 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 356 #define DISCONNECT_DECISION_SET_TRY_OK_BCN_FAIL_COUNT_LIMIT_NO_CLR(h2c_pkt, \ 357 value) \ 358 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 359 #define AP_OFFLOAD_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 360 #define AP_OFFLOAD_SET_CMD_ID(h2c_pkt, value) \ 361 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 362 #define AP_OFFLOAD_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 363 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 364 #define AP_OFFLOAD_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 365 #define AP_OFFLOAD_SET_CLASS(h2c_pkt, value) \ 366 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 367 #define AP_OFFLOAD_SET_CLASS_NO_CLR(h2c_pkt, value) \ 368 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 369 #define AP_OFFLOAD_GET_ON(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 370 #define AP_OFFLOAD_SET_ON(h2c_pkt, value) \ 371 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 372 #define AP_OFFLOAD_SET_ON_NO_CLR(h2c_pkt, value) \ 373 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 374 #define AP_OFFLOAD_GET_CFG_MIFI_PLATFORM(h2c_pkt) \ 375 GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 376 #define AP_OFFLOAD_SET_CFG_MIFI_PLATFORM(h2c_pkt, value) \ 377 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 378 #define AP_OFFLOAD_SET_CFG_MIFI_PLATFORM_NO_CLR(h2c_pkt, value) \ 379 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 380 #define AP_OFFLOAD_GET_LINKED(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 381 #define AP_OFFLOAD_SET_LINKED(h2c_pkt, value) \ 382 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 383 #define AP_OFFLOAD_SET_LINKED_NO_CLR(h2c_pkt, value) \ 384 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 385 #define AP_OFFLOAD_GET_EN_AUTO_WAKE(h2c_pkt) \ 386 GET_H2C_FIELD(h2c_pkt + 0X00, 11, 1) 387 #define AP_OFFLOAD_SET_EN_AUTO_WAKE(h2c_pkt, value) \ 388 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 11, 1, value) 389 #define AP_OFFLOAD_SET_EN_AUTO_WAKE_NO_CLR(h2c_pkt, value) \ 390 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 11, 1, value) 391 #define AP_OFFLOAD_GET_WAKE_FLAG(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 12, 1) 392 #define AP_OFFLOAD_SET_WAKE_FLAG(h2c_pkt, value) \ 393 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 12, 1, value) 394 #define AP_OFFLOAD_SET_WAKE_FLAG_NO_CLR(h2c_pkt, value) \ 395 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 12, 1, value) 396 #define AP_OFFLOAD_GET_HIDDEN_ROOT(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 1) 397 #define AP_OFFLOAD_SET_HIDDEN_ROOT(h2c_pkt, value) \ 398 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 1, value) 399 #define AP_OFFLOAD_SET_HIDDEN_ROOT_NO_CLR(h2c_pkt, value) \ 400 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 1, value) 401 #define AP_OFFLOAD_GET_HIDDEN_VAP1(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 17, 1) 402 #define AP_OFFLOAD_SET_HIDDEN_VAP1(h2c_pkt, value) \ 403 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 17, 1, value) 404 #define AP_OFFLOAD_SET_HIDDEN_VAP1_NO_CLR(h2c_pkt, value) \ 405 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 17, 1, value) 406 #define AP_OFFLOAD_GET_HIDDEN_VAP2(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 18, 1) 407 #define AP_OFFLOAD_SET_HIDDEN_VAP2(h2c_pkt, value) \ 408 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 18, 1, value) 409 #define AP_OFFLOAD_SET_HIDDEN_VAP2_NO_CLR(h2c_pkt, value) \ 410 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 18, 1, value) 411 #define AP_OFFLOAD_GET_HIDDEN_VAP3(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 19, 1) 412 #define AP_OFFLOAD_SET_HIDDEN_VAP3(h2c_pkt, value) \ 413 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 19, 1, value) 414 #define AP_OFFLOAD_SET_HIDDEN_VAP3_NO_CLR(h2c_pkt, value) \ 415 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 19, 1, value) 416 #define AP_OFFLOAD_GET_HIDDEN_VAP4(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 20, 1) 417 #define AP_OFFLOAD_SET_HIDDEN_VAP4(h2c_pkt, value) \ 418 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 20, 1, value) 419 #define AP_OFFLOAD_SET_HIDDEN_VAP4_NO_CLR(h2c_pkt, value) \ 420 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 20, 1, value) 421 #define AP_OFFLOAD_GET_DENYANY_ROOT(h2c_pkt) \ 422 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 1) 423 #define AP_OFFLOAD_SET_DENYANY_ROOT(h2c_pkt, value) \ 424 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 1, value) 425 #define AP_OFFLOAD_SET_DENYANY_ROOT_NO_CLR(h2c_pkt, value) \ 426 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 1, value) 427 #define AP_OFFLOAD_GET_DENYANY_VAP1(h2c_pkt) \ 428 GET_H2C_FIELD(h2c_pkt + 0X00, 25, 1) 429 #define AP_OFFLOAD_SET_DENYANY_VAP1(h2c_pkt, value) \ 430 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 25, 1, value) 431 #define AP_OFFLOAD_SET_DENYANY_VAP1_NO_CLR(h2c_pkt, value) \ 432 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 25, 1, value) 433 #define AP_OFFLOAD_GET_DENYANY_VAP2(h2c_pkt) \ 434 GET_H2C_FIELD(h2c_pkt + 0X00, 26, 1) 435 #define AP_OFFLOAD_SET_DENYANY_VAP2(h2c_pkt, value) \ 436 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 26, 1, value) 437 #define AP_OFFLOAD_SET_DENYANY_VAP2_NO_CLR(h2c_pkt, value) \ 438 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 26, 1, value) 439 #define AP_OFFLOAD_GET_DENYANY_VAP3(h2c_pkt) \ 440 GET_H2C_FIELD(h2c_pkt + 0X00, 27, 1) 441 #define AP_OFFLOAD_SET_DENYANY_VAP3(h2c_pkt, value) \ 442 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 27, 1, value) 443 #define AP_OFFLOAD_SET_DENYANY_VAP3_NO_CLR(h2c_pkt, value) \ 444 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 27, 1, value) 445 #define AP_OFFLOAD_GET_DENYANY_VAP4(h2c_pkt) \ 446 GET_H2C_FIELD(h2c_pkt + 0X00, 28, 1) 447 #define AP_OFFLOAD_SET_DENYANY_VAP4(h2c_pkt, value) \ 448 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 28, 1, value) 449 #define AP_OFFLOAD_SET_DENYANY_VAP4_NO_CLR(h2c_pkt, value) \ 450 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 28, 1, value) 451 #define AP_OFFLOAD_GET_WAIT_TBTT_CNT(h2c_pkt) \ 452 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 453 #define AP_OFFLOAD_SET_WAIT_TBTT_CNT(h2c_pkt, value) \ 454 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 455 #define AP_OFFLOAD_SET_WAIT_TBTT_CNT_NO_CLR(h2c_pkt, value) \ 456 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 457 #define AP_OFFLOAD_GET_WAKE_TIMEOUT(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 458 #define AP_OFFLOAD_SET_WAKE_TIMEOUT(h2c_pkt, value) \ 459 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 460 #define AP_OFFLOAD_SET_WAKE_TIMEOUT_NO_CLR(h2c_pkt, value) \ 461 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 462 #define AP_OFFLOAD_GET_LEN_IV_PAIR(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 463 #define AP_OFFLOAD_SET_LEN_IV_PAIR(h2c_pkt, value) \ 464 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 465 #define AP_OFFLOAD_SET_LEN_IV_PAIR_NO_CLR(h2c_pkt, value) \ 466 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 467 #define AP_OFFLOAD_GET_LEN_IV_GRP(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 24, 8) 468 #define AP_OFFLOAD_SET_LEN_IV_GRP(h2c_pkt, value) \ 469 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 24, 8, value) 470 #define AP_OFFLOAD_SET_LEN_IV_GRP_NO_CLR(h2c_pkt, value) \ 471 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 24, 8, value) 472 #define BCN_RSVDPAGE_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 473 #define BCN_RSVDPAGE_SET_CMD_ID(h2c_pkt, value) \ 474 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 475 #define BCN_RSVDPAGE_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 476 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 477 #define BCN_RSVDPAGE_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 478 #define BCN_RSVDPAGE_SET_CLASS(h2c_pkt, value) \ 479 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 480 #define BCN_RSVDPAGE_SET_CLASS_NO_CLR(h2c_pkt, value) \ 481 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 482 #define BCN_RSVDPAGE_GET_LOC_ROOT(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 483 #define BCN_RSVDPAGE_SET_LOC_ROOT(h2c_pkt, value) \ 484 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 485 #define BCN_RSVDPAGE_SET_LOC_ROOT_NO_CLR(h2c_pkt, value) \ 486 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 487 #define BCN_RSVDPAGE_GET_LOC_VAP1(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 488 #define BCN_RSVDPAGE_SET_LOC_VAP1(h2c_pkt, value) \ 489 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 490 #define BCN_RSVDPAGE_SET_LOC_VAP1_NO_CLR(h2c_pkt, value) \ 491 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 492 #define BCN_RSVDPAGE_GET_LOC_VAP2(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 493 #define BCN_RSVDPAGE_SET_LOC_VAP2(h2c_pkt, value) \ 494 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 495 #define BCN_RSVDPAGE_SET_LOC_VAP2_NO_CLR(h2c_pkt, value) \ 496 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 497 #define BCN_RSVDPAGE_GET_LOC_VAP3(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 498 #define BCN_RSVDPAGE_SET_LOC_VAP3(h2c_pkt, value) \ 499 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 500 #define BCN_RSVDPAGE_SET_LOC_VAP3_NO_CLR(h2c_pkt, value) \ 501 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 502 #define BCN_RSVDPAGE_GET_LOC_VAP4(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 503 #define BCN_RSVDPAGE_SET_LOC_VAP4(h2c_pkt, value) \ 504 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 505 #define BCN_RSVDPAGE_SET_LOC_VAP4_NO_CLR(h2c_pkt, value) \ 506 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 507 #define PROBE_RSP_RSVDPAGE_GET_CMD_ID(h2c_pkt) \ 508 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 509 #define PROBE_RSP_RSVDPAGE_SET_CMD_ID(h2c_pkt, value) \ 510 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 511 #define PROBE_RSP_RSVDPAGE_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 512 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 513 #define PROBE_RSP_RSVDPAGE_GET_CLASS(h2c_pkt) \ 514 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 515 #define PROBE_RSP_RSVDPAGE_SET_CLASS(h2c_pkt, value) \ 516 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 517 #define PROBE_RSP_RSVDPAGE_SET_CLASS_NO_CLR(h2c_pkt, value) \ 518 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 519 #define PROBE_RSP_RSVDPAGE_GET_LOC_ROOT(h2c_pkt) \ 520 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 521 #define PROBE_RSP_RSVDPAGE_SET_LOC_ROOT(h2c_pkt, value) \ 522 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 523 #define PROBE_RSP_RSVDPAGE_SET_LOC_ROOT_NO_CLR(h2c_pkt, value) \ 524 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 525 #define PROBE_RSP_RSVDPAGE_GET_LOC_VAP1(h2c_pkt) \ 526 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 527 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP1(h2c_pkt, value) \ 528 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 529 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP1_NO_CLR(h2c_pkt, value) \ 530 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 531 #define PROBE_RSP_RSVDPAGE_GET_LOC_VAP2(h2c_pkt) \ 532 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 533 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP2(h2c_pkt, value) \ 534 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 535 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP2_NO_CLR(h2c_pkt, value) \ 536 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 537 #define PROBE_RSP_RSVDPAGE_GET_LOC_VAP3(h2c_pkt) \ 538 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 539 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP3(h2c_pkt, value) \ 540 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 541 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP3_NO_CLR(h2c_pkt, value) \ 542 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 543 #define PROBE_RSP_RSVDPAGE_GET_LOC_VAP4(h2c_pkt) \ 544 GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 545 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP4(h2c_pkt, value) \ 546 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 547 #define PROBE_RSP_RSVDPAGE_SET_LOC_VAP4_NO_CLR(h2c_pkt, value) \ 548 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 549 #define SINGLE_CHANNELSWITCH_GET_CMD_ID(h2c_pkt) \ 550 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 551 #define SINGLE_CHANNELSWITCH_SET_CMD_ID(h2c_pkt, value) \ 552 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 553 #define SINGLE_CHANNELSWITCH_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 554 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 555 #define SINGLE_CHANNELSWITCH_GET_CLASS(h2c_pkt) \ 556 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 557 #define SINGLE_CHANNELSWITCH_SET_CLASS(h2c_pkt, value) \ 558 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 559 #define SINGLE_CHANNELSWITCH_SET_CLASS_NO_CLR(h2c_pkt, value) \ 560 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 561 #define SINGLE_CHANNELSWITCH_GET_CHANNEL_NUM(h2c_pkt) \ 562 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 563 #define SINGLE_CHANNELSWITCH_SET_CHANNEL_NUM(h2c_pkt, value) \ 564 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 565 #define SINGLE_CHANNELSWITCH_SET_CHANNEL_NUM_NO_CLR(h2c_pkt, value) \ 566 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 567 #define SINGLE_CHANNELSWITCH_GET_BW(h2c_pkt) \ 568 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 2) 569 #define SINGLE_CHANNELSWITCH_SET_BW(h2c_pkt, value) \ 570 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 2, value) 571 #define SINGLE_CHANNELSWITCH_SET_BW_NO_CLR(h2c_pkt, value) \ 572 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 2, value) 573 #define SINGLE_CHANNELSWITCH_GET_BW40SC(h2c_pkt) \ 574 GET_H2C_FIELD(h2c_pkt + 0X00, 18, 3) 575 #define SINGLE_CHANNELSWITCH_SET_BW40SC(h2c_pkt, value) \ 576 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 18, 3, value) 577 #define SINGLE_CHANNELSWITCH_SET_BW40SC_NO_CLR(h2c_pkt, value) \ 578 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 18, 3, value) 579 #define SINGLE_CHANNELSWITCH_GET_BW80SC(h2c_pkt) \ 580 GET_H2C_FIELD(h2c_pkt + 0X00, 21, 3) 581 #define SINGLE_CHANNELSWITCH_SET_BW80SC(h2c_pkt, value) \ 582 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 21, 3, value) 583 #define SINGLE_CHANNELSWITCH_SET_BW80SC_NO_CLR(h2c_pkt, value) \ 584 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 21, 3, value) 585 #define SINGLE_CHANNELSWITCH_GET_RFE_TYPE(h2c_pkt) \ 586 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 4) 587 #define SINGLE_CHANNELSWITCH_SET_RFE_TYPE(h2c_pkt, value) \ 588 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 4, value) 589 #define SINGLE_CHANNELSWITCH_SET_RFE_TYPE_NO_CLR(h2c_pkt, value) \ 590 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 4, value) 591 #define SINGLE_CHANNELSWITCH_V2_GET_CMD_ID(h2c_pkt) \ 592 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 593 #define SINGLE_CHANNELSWITCH_V2_SET_CMD_ID(h2c_pkt, value) \ 594 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 595 #define SINGLE_CHANNELSWITCH_V2_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 596 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 597 #define SINGLE_CHANNELSWITCH_V2_GET_CLASS(h2c_pkt) \ 598 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 599 #define SINGLE_CHANNELSWITCH_V2_SET_CLASS(h2c_pkt, value) \ 600 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 601 #define SINGLE_CHANNELSWITCH_V2_SET_CLASS_NO_CLR(h2c_pkt, value) \ 602 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 603 #define SINGLE_CHANNELSWITCH_V2_GET_CENTRAL_CH(h2c_pkt) \ 604 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 605 #define SINGLE_CHANNELSWITCH_V2_SET_CENTRAL_CH(h2c_pkt, value) \ 606 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 607 #define SINGLE_CHANNELSWITCH_V2_SET_CENTRAL_CH_NO_CLR(h2c_pkt, value) \ 608 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 609 #define SINGLE_CHANNELSWITCH_V2_GET_PRIMARY_CH_IDX(h2c_pkt) \ 610 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 4) 611 #define SINGLE_CHANNELSWITCH_V2_SET_PRIMARY_CH_IDX(h2c_pkt, value) \ 612 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 4, value) 613 #define SINGLE_CHANNELSWITCH_V2_SET_PRIMARY_CH_IDX_NO_CLR(h2c_pkt, value) \ 614 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 4, value) 615 #define SINGLE_CHANNELSWITCH_V2_GET_BW(h2c_pkt) \ 616 GET_H2C_FIELD(h2c_pkt + 0X00, 20, 4) 617 #define SINGLE_CHANNELSWITCH_V2_SET_BW(h2c_pkt, value) \ 618 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 20, 4, value) 619 #define SINGLE_CHANNELSWITCH_V2_SET_BW_NO_CLR(h2c_pkt, value) \ 620 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 20, 4, value) 621 #define SET_PWR_MODE_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 622 #define SET_PWR_MODE_SET_CMD_ID(h2c_pkt, value) \ 623 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 624 #define SET_PWR_MODE_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 625 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 626 #define SET_PWR_MODE_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 627 #define SET_PWR_MODE_SET_CLASS(h2c_pkt, value) \ 628 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 629 #define SET_PWR_MODE_SET_CLASS_NO_CLR(h2c_pkt, value) \ 630 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 631 #define SET_PWR_MODE_GET_MODE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 7) 632 #define SET_PWR_MODE_SET_MODE(h2c_pkt, value) \ 633 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 7, value) 634 #define SET_PWR_MODE_SET_MODE_NO_CLR(h2c_pkt, value) \ 635 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 7, value) 636 #define SET_PWR_MODE_GET_CLK_REQUEST(h2c_pkt) \ 637 GET_H2C_FIELD(h2c_pkt + 0X00, 15, 1) 638 #define SET_PWR_MODE_SET_CLK_REQUEST(h2c_pkt, value) \ 639 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 15, 1, value) 640 #define SET_PWR_MODE_SET_CLK_REQUEST_NO_CLR(h2c_pkt, value) \ 641 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 15, 1, value) 642 #define SET_PWR_MODE_GET_RLBM(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 4) 643 #define SET_PWR_MODE_SET_RLBM(h2c_pkt, value) \ 644 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 4, value) 645 #define SET_PWR_MODE_SET_RLBM_NO_CLR(h2c_pkt, value) \ 646 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 4, value) 647 #define SET_PWR_MODE_GET_SMART_PS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 20, 4) 648 #define SET_PWR_MODE_SET_SMART_PS(h2c_pkt, value) \ 649 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 20, 4, value) 650 #define SET_PWR_MODE_SET_SMART_PS_NO_CLR(h2c_pkt, value) \ 651 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 20, 4, value) 652 #define SET_PWR_MODE_GET_AWAKE_INTERVAL(h2c_pkt) \ 653 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 654 #define SET_PWR_MODE_SET_AWAKE_INTERVAL(h2c_pkt, value) \ 655 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 656 #define SET_PWR_MODE_SET_AWAKE_INTERVAL_NO_CLR(h2c_pkt, value) \ 657 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 658 #define SET_PWR_MODE_GET_B_ALL_QUEUE_UAPSD(h2c_pkt) \ 659 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 1) 660 #define SET_PWR_MODE_SET_B_ALL_QUEUE_UAPSD(h2c_pkt, value) \ 661 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 1, value) 662 #define SET_PWR_MODE_SET_B_ALL_QUEUE_UAPSD_NO_CLR(h2c_pkt, value) \ 663 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 1, value) 664 #define SET_PWR_MODE_GET_BCN_EARLY_RPT(h2c_pkt) \ 665 GET_H2C_FIELD(h2c_pkt + 0X04, 2, 1) 666 #define SET_PWR_MODE_SET_BCN_EARLY_RPT(h2c_pkt, value) \ 667 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 2, 1, value) 668 #define SET_PWR_MODE_SET_BCN_EARLY_RPT_NO_CLR(h2c_pkt, value) \ 669 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 2, 1, value) 670 #define SET_PWR_MODE_GET_PORT_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 5, 3) 671 #define SET_PWR_MODE_SET_PORT_ID(h2c_pkt, value) \ 672 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 5, 3, value) 673 #define SET_PWR_MODE_SET_PORT_ID_NO_CLR(h2c_pkt, value) \ 674 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 5, 3, value) 675 #define SET_PWR_MODE_GET_PWR_STATE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 676 #define SET_PWR_MODE_SET_PWR_STATE(h2c_pkt, value) \ 677 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 678 #define SET_PWR_MODE_SET_PWR_STATE_NO_CLR(h2c_pkt, value) \ 679 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 680 #define SET_PWR_MODE_GET_RSVD_NOUSED(h2c_pkt) \ 681 GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 682 #define SET_PWR_MODE_SET_RSVD_NOUSED(h2c_pkt, value) \ 683 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 684 #define SET_PWR_MODE_SET_RSVD_NOUSED_NO_CLR(h2c_pkt, value) \ 685 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 686 #define SET_PWR_MODE_GET_BCN_RECEIVING_TIME(h2c_pkt) \ 687 GET_H2C_FIELD(h2c_pkt + 0X04, 24, 5) 688 #define SET_PWR_MODE_SET_BCN_RECEIVING_TIME(h2c_pkt, value) \ 689 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 24, 5, value) 690 #define SET_PWR_MODE_SET_BCN_RECEIVING_TIME_NO_CLR(h2c_pkt, value) \ 691 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 24, 5, value) 692 #define SET_PWR_MODE_GET_BCN_LISTEN_INTERVAL(h2c_pkt) \ 693 GET_H2C_FIELD(h2c_pkt + 0X04, 29, 2) 694 #define SET_PWR_MODE_SET_BCN_LISTEN_INTERVAL(h2c_pkt, value) \ 695 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 29, 2, value) 696 #define SET_PWR_MODE_SET_BCN_LISTEN_INTERVAL_NO_CLR(h2c_pkt, value) \ 697 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 29, 2, value) 698 #define SET_PWR_MODE_GET_ADOPT_BCN_RECEIVING_TIME(h2c_pkt) \ 699 GET_H2C_FIELD(h2c_pkt + 0X04, 31, 1) 700 #define SET_PWR_MODE_SET_ADOPT_BCN_RECEIVING_TIME(h2c_pkt, value) \ 701 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 31, 1, value) 702 #define SET_PWR_MODE_SET_ADOPT_BCN_RECEIVING_TIME_NO_CLR(h2c_pkt, value) \ 703 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 31, 1, value) 704 #define PS_TUNING_PARA_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 705 #define PS_TUNING_PARA_SET_CMD_ID(h2c_pkt, value) \ 706 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 707 #define PS_TUNING_PARA_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 708 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 709 #define PS_TUNING_PARA_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 710 #define PS_TUNING_PARA_SET_CLASS(h2c_pkt, value) \ 711 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 712 #define PS_TUNING_PARA_SET_CLASS_NO_CLR(h2c_pkt, value) \ 713 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 714 #define PS_TUNING_PARA_GET_BCN_TO_LIMIT(h2c_pkt) \ 715 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 7) 716 #define PS_TUNING_PARA_SET_BCN_TO_LIMIT(h2c_pkt, value) \ 717 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 7, value) 718 #define PS_TUNING_PARA_SET_BCN_TO_LIMIT_NO_CLR(h2c_pkt, value) \ 719 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 7, value) 720 #define PS_TUNING_PARA_GET_DTIM_TIME_OUT(h2c_pkt) \ 721 GET_H2C_FIELD(h2c_pkt + 0X00, 15, 1) 722 #define PS_TUNING_PARA_SET_DTIM_TIME_OUT(h2c_pkt, value) \ 723 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 15, 1, value) 724 #define PS_TUNING_PARA_SET_DTIM_TIME_OUT_NO_CLR(h2c_pkt, value) \ 725 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 15, 1, value) 726 #define PS_TUNING_PARA_GET_PS_TIME_OUT(h2c_pkt) \ 727 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 4) 728 #define PS_TUNING_PARA_SET_PS_TIME_OUT(h2c_pkt, value) \ 729 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 4, value) 730 #define PS_TUNING_PARA_SET_PS_TIME_OUT_NO_CLR(h2c_pkt, value) \ 731 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 4, value) 732 #define PS_TUNING_PARA_GET_ADOPT(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 733 #define PS_TUNING_PARA_SET_ADOPT(h2c_pkt, value) \ 734 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 735 #define PS_TUNING_PARA_SET_ADOPT_NO_CLR(h2c_pkt, value) \ 736 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 737 #define PS_TUNING_PARA_II_GET_CMD_ID(h2c_pkt) \ 738 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 739 #define PS_TUNING_PARA_II_SET_CMD_ID(h2c_pkt, value) \ 740 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 741 #define PS_TUNING_PARA_II_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 742 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 743 #define PS_TUNING_PARA_II_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 744 #define PS_TUNING_PARA_II_SET_CLASS(h2c_pkt, value) \ 745 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 746 #define PS_TUNING_PARA_II_SET_CLASS_NO_CLR(h2c_pkt, value) \ 747 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 748 #define PS_TUNING_PARA_II_GET_BCN_TO_PERIOD(h2c_pkt) \ 749 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 7) 750 #define PS_TUNING_PARA_II_SET_BCN_TO_PERIOD(h2c_pkt, value) \ 751 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 7, value) 752 #define PS_TUNING_PARA_II_SET_BCN_TO_PERIOD_NO_CLR(h2c_pkt, value) \ 753 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 7, value) 754 #define PS_TUNING_PARA_II_GET_ADOPT(h2c_pkt) \ 755 GET_H2C_FIELD(h2c_pkt + 0X00, 15, 1) 756 #define PS_TUNING_PARA_II_SET_ADOPT(h2c_pkt, value) \ 757 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 15, 1, value) 758 #define PS_TUNING_PARA_II_SET_ADOPT_NO_CLR(h2c_pkt, value) \ 759 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 15, 1, value) 760 #define PS_TUNING_PARA_II_GET_DRV_EARLY_IVL(h2c_pkt) \ 761 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 762 #define PS_TUNING_PARA_II_SET_DRV_EARLY_IVL(h2c_pkt, value) \ 763 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 764 #define PS_TUNING_PARA_II_SET_DRV_EARLY_IVL_NO_CLR(h2c_pkt, value) \ 765 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 766 #define PS_LPS_PARA_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 767 #define PS_LPS_PARA_SET_CMD_ID(h2c_pkt, value) \ 768 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 769 #define PS_LPS_PARA_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 770 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 771 #define PS_LPS_PARA_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 772 #define PS_LPS_PARA_SET_CLASS(h2c_pkt, value) \ 773 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 774 #define PS_LPS_PARA_SET_CLASS_NO_CLR(h2c_pkt, value) \ 775 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 776 #define PS_LPS_PARA_GET_LPS_CONTROL(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 777 #define PS_LPS_PARA_SET_LPS_CONTROL(h2c_pkt, value) \ 778 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 779 #define PS_LPS_PARA_SET_LPS_CONTROL_NO_CLR(h2c_pkt, value) \ 780 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 781 #define P2P_PS_OFFLOAD_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 782 #define P2P_PS_OFFLOAD_SET_CMD_ID(h2c_pkt, value) \ 783 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 784 #define P2P_PS_OFFLOAD_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 785 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 786 #define P2P_PS_OFFLOAD_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 787 #define P2P_PS_OFFLOAD_SET_CLASS(h2c_pkt, value) \ 788 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 789 #define P2P_PS_OFFLOAD_SET_CLASS_NO_CLR(h2c_pkt, value) \ 790 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 791 #define P2P_PS_OFFLOAD_GET_OFFLOAD_EN(h2c_pkt) \ 792 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 793 #define P2P_PS_OFFLOAD_SET_OFFLOAD_EN(h2c_pkt, value) \ 794 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 795 #define P2P_PS_OFFLOAD_SET_OFFLOAD_EN_NO_CLR(h2c_pkt, value) \ 796 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 797 #define P2P_PS_OFFLOAD_GET_ROLE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 798 #define P2P_PS_OFFLOAD_SET_ROLE(h2c_pkt, value) \ 799 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 800 #define P2P_PS_OFFLOAD_SET_ROLE_NO_CLR(h2c_pkt, value) \ 801 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 802 #define P2P_PS_OFFLOAD_GET_CTWINDOW_EN(h2c_pkt) \ 803 GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 804 #define P2P_PS_OFFLOAD_SET_CTWINDOW_EN(h2c_pkt, value) \ 805 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 806 #define P2P_PS_OFFLOAD_SET_CTWINDOW_EN_NO_CLR(h2c_pkt, value) \ 807 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 808 #define P2P_PS_OFFLOAD_GET_NOA0_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 11, 1) 809 #define P2P_PS_OFFLOAD_SET_NOA0_EN(h2c_pkt, value) \ 810 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 11, 1, value) 811 #define P2P_PS_OFFLOAD_SET_NOA0_EN_NO_CLR(h2c_pkt, value) \ 812 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 11, 1, value) 813 #define P2P_PS_OFFLOAD_GET_NOA1_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 12, 1) 814 #define P2P_PS_OFFLOAD_SET_NOA1_EN(h2c_pkt, value) \ 815 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 12, 1, value) 816 #define P2P_PS_OFFLOAD_SET_NOA1_EN_NO_CLR(h2c_pkt, value) \ 817 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 12, 1, value) 818 #define P2P_PS_OFFLOAD_GET_ALL_STA_SLEEP(h2c_pkt) \ 819 GET_H2C_FIELD(h2c_pkt + 0X00, 13, 1) 820 #define P2P_PS_OFFLOAD_SET_ALL_STA_SLEEP(h2c_pkt, value) \ 821 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 13, 1, value) 822 #define P2P_PS_OFFLOAD_SET_ALL_STA_SLEEP_NO_CLR(h2c_pkt, value) \ 823 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 13, 1, value) 824 #define P2P_PS_OFFLOAD_GET_DISCOVERY(h2c_pkt) \ 825 GET_H2C_FIELD(h2c_pkt + 0X00, 14, 1) 826 #define P2P_PS_OFFLOAD_SET_DISCOVERY(h2c_pkt, value) \ 827 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 14, 1, value) 828 #define P2P_PS_OFFLOAD_SET_DISCOVERY_NO_CLR(h2c_pkt, value) \ 829 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 14, 1, value) 830 #define PS_SCAN_EN_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 831 #define PS_SCAN_EN_SET_CMD_ID(h2c_pkt, value) \ 832 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 833 #define PS_SCAN_EN_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 834 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 835 #define PS_SCAN_EN_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 836 #define PS_SCAN_EN_SET_CLASS(h2c_pkt, value) \ 837 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 838 #define PS_SCAN_EN_SET_CLASS_NO_CLR(h2c_pkt, value) \ 839 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 840 #define PS_SCAN_EN_GET_ENABLE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 841 #define PS_SCAN_EN_SET_ENABLE(h2c_pkt, value) \ 842 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 843 #define PS_SCAN_EN_SET_ENABLE_NO_CLR(h2c_pkt, value) \ 844 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 845 #define SAP_PS_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 846 #define SAP_PS_SET_CMD_ID(h2c_pkt, value) \ 847 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 848 #define SAP_PS_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 849 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 850 #define SAP_PS_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 851 #define SAP_PS_SET_CLASS(h2c_pkt, value) \ 852 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 853 #define SAP_PS_SET_CLASS_NO_CLR(h2c_pkt, value) \ 854 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 855 #define SAP_PS_GET_ENABLE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 856 #define SAP_PS_SET_ENABLE(h2c_pkt, value) \ 857 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 858 #define SAP_PS_SET_ENABLE_NO_CLR(h2c_pkt, value) \ 859 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 860 #define SAP_PS_GET_EN_PS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 861 #define SAP_PS_SET_EN_PS(h2c_pkt, value) \ 862 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 863 #define SAP_PS_SET_EN_PS_NO_CLR(h2c_pkt, value) \ 864 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 865 #define SAP_PS_GET_EN_LP_RX(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 866 #define SAP_PS_SET_EN_LP_RX(h2c_pkt, value) \ 867 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 868 #define SAP_PS_SET_EN_LP_RX_NO_CLR(h2c_pkt, value) \ 869 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 870 #define SAP_PS_GET_MANUAL_32K(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 11, 1) 871 #define SAP_PS_SET_MANUAL_32K(h2c_pkt, value) \ 872 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 11, 1, value) 873 #define SAP_PS_SET_MANUAL_32K_NO_CLR(h2c_pkt, value) \ 874 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 11, 1, value) 875 #define SAP_PS_GET_DURATION(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 876 #define SAP_PS_SET_DURATION(h2c_pkt, value) \ 877 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 878 #define SAP_PS_SET_DURATION_NO_CLR(h2c_pkt, value) \ 879 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 880 #define INACTIVE_PS_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 881 #define INACTIVE_PS_SET_CMD_ID(h2c_pkt, value) \ 882 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 883 #define INACTIVE_PS_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 884 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 885 #define INACTIVE_PS_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 886 #define INACTIVE_PS_SET_CLASS(h2c_pkt, value) \ 887 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 888 #define INACTIVE_PS_SET_CLASS_NO_CLR(h2c_pkt, value) \ 889 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 890 #define INACTIVE_PS_GET_ENABLE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 891 #define INACTIVE_PS_SET_ENABLE(h2c_pkt, value) \ 892 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 893 #define INACTIVE_PS_SET_ENABLE_NO_CLR(h2c_pkt, value) \ 894 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 895 #define INACTIVE_PS_GET_IGNORE_PS_CONDITION(h2c_pkt) \ 896 GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 897 #define INACTIVE_PS_SET_IGNORE_PS_CONDITION(h2c_pkt, value) \ 898 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 899 #define INACTIVE_PS_SET_IGNORE_PS_CONDITION_NO_CLR(h2c_pkt, value) \ 900 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 901 #define INACTIVE_PS_GET_FREQUENCY(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 902 #define INACTIVE_PS_SET_FREQUENCY(h2c_pkt, value) \ 903 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 904 #define INACTIVE_PS_SET_FREQUENCY_NO_CLR(h2c_pkt, value) \ 905 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 906 #define INACTIVE_PS_GET_DURATION(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 907 #define INACTIVE_PS_SET_DURATION(h2c_pkt, value) \ 908 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 909 #define INACTIVE_PS_SET_DURATION_NO_CLR(h2c_pkt, value) \ 910 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 911 #define MACID_CFG_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 912 #define MACID_CFG_SET_CMD_ID(h2c_pkt, value) \ 913 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 914 #define MACID_CFG_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 915 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 916 #define MACID_CFG_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 917 #define MACID_CFG_SET_CLASS(h2c_pkt, value) \ 918 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 919 #define MACID_CFG_SET_CLASS_NO_CLR(h2c_pkt, value) \ 920 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 921 #define MACID_CFG_GET_MAC_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 922 #define MACID_CFG_SET_MAC_ID(h2c_pkt, value) \ 923 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 924 #define MACID_CFG_SET_MAC_ID_NO_CLR(h2c_pkt, value) \ 925 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 926 #define MACID_CFG_GET_RATE_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 5) 927 #define MACID_CFG_SET_RATE_ID(h2c_pkt, value) \ 928 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 5, value) 929 #define MACID_CFG_SET_RATE_ID_NO_CLR(h2c_pkt, value) \ 930 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 5, value) 931 #define MACID_CFG_GET_INIT_RATE_LV(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 21, 2) 932 #define MACID_CFG_SET_INIT_RATE_LV(h2c_pkt, value) \ 933 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 21, 2, value) 934 #define MACID_CFG_SET_INIT_RATE_LV_NO_CLR(h2c_pkt, value) \ 935 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 21, 2, value) 936 #define MACID_CFG_GET_SGI(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 23, 1) 937 #define MACID_CFG_SET_SGI(h2c_pkt, value) \ 938 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 23, 1, value) 939 #define MACID_CFG_SET_SGI_NO_CLR(h2c_pkt, value) \ 940 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 23, 1, value) 941 #define MACID_CFG_GET_BW(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 2) 942 #define MACID_CFG_SET_BW(h2c_pkt, value) \ 943 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 2, value) 944 #define MACID_CFG_SET_BW_NO_CLR(h2c_pkt, value) \ 945 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 2, value) 946 #define MACID_CFG_GET_LDPC_CAP(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 26, 1) 947 #define MACID_CFG_SET_LDPC_CAP(h2c_pkt, value) \ 948 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 26, 1, value) 949 #define MACID_CFG_SET_LDPC_CAP_NO_CLR(h2c_pkt, value) \ 950 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 26, 1, value) 951 #define MACID_CFG_GET_NO_UPDATE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 27, 1) 952 #define MACID_CFG_SET_NO_UPDATE(h2c_pkt, value) \ 953 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 27, 1, value) 954 #define MACID_CFG_SET_NO_UPDATE_NO_CLR(h2c_pkt, value) \ 955 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 27, 1, value) 956 #define MACID_CFG_GET_WHT_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 28, 2) 957 #define MACID_CFG_SET_WHT_EN(h2c_pkt, value) \ 958 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 28, 2, value) 959 #define MACID_CFG_SET_WHT_EN_NO_CLR(h2c_pkt, value) \ 960 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 28, 2, value) 961 #define MACID_CFG_GET_DISPT(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 30, 1) 962 #define MACID_CFG_SET_DISPT(h2c_pkt, value) \ 963 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 30, 1, value) 964 #define MACID_CFG_SET_DISPT_NO_CLR(h2c_pkt, value) \ 965 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 30, 1, value) 966 #define MACID_CFG_GET_DISRA(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 31, 1) 967 #define MACID_CFG_SET_DISRA(h2c_pkt, value) \ 968 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 31, 1, value) 969 #define MACID_CFG_SET_DISRA_NO_CLR(h2c_pkt, value) \ 970 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 31, 1, value) 971 #define MACID_CFG_GET_RATE_MASK7_0(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 972 #define MACID_CFG_SET_RATE_MASK7_0(h2c_pkt, value) \ 973 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 974 #define MACID_CFG_SET_RATE_MASK7_0_NO_CLR(h2c_pkt, value) \ 975 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 976 #define MACID_CFG_GET_RATE_MASK15_8(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 977 #define MACID_CFG_SET_RATE_MASK15_8(h2c_pkt, value) \ 978 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 979 #define MACID_CFG_SET_RATE_MASK15_8_NO_CLR(h2c_pkt, value) \ 980 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 981 #define MACID_CFG_GET_RATE_MASK23_16(h2c_pkt) \ 982 GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 983 #define MACID_CFG_SET_RATE_MASK23_16(h2c_pkt, value) \ 984 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 985 #define MACID_CFG_SET_RATE_MASK23_16_NO_CLR(h2c_pkt, value) \ 986 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 987 #define MACID_CFG_GET_RATE_MASK31_24(h2c_pkt) \ 988 GET_H2C_FIELD(h2c_pkt + 0X04, 24, 8) 989 #define MACID_CFG_SET_RATE_MASK31_24(h2c_pkt, value) \ 990 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 24, 8, value) 991 #define MACID_CFG_SET_RATE_MASK31_24_NO_CLR(h2c_pkt, value) \ 992 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 24, 8, value) 993 #define TXBF_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 994 #define TXBF_SET_CMD_ID(h2c_pkt, value) \ 995 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 996 #define TXBF_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 997 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 998 #define TXBF_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 999 #define TXBF_SET_CLASS(h2c_pkt, value) \ 1000 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1001 #define TXBF_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1002 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1003 #define TXBF_GET_NDPA0_HEAD_PAGE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1004 #define TXBF_SET_NDPA0_HEAD_PAGE(h2c_pkt, value) \ 1005 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1006 #define TXBF_SET_NDPA0_HEAD_PAGE_NO_CLR(h2c_pkt, value) \ 1007 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1008 #define TXBF_GET_NDPA1_HEAD_PAGE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1009 #define TXBF_SET_NDPA1_HEAD_PAGE(h2c_pkt, value) \ 1010 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1011 #define TXBF_SET_NDPA1_HEAD_PAGE_NO_CLR(h2c_pkt, value) \ 1012 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1013 #define TXBF_GET_PERIOD_0(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1014 #define TXBF_SET_PERIOD_0(h2c_pkt, value) \ 1015 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1016 #define TXBF_SET_PERIOD_0_NO_CLR(h2c_pkt, value) \ 1017 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1018 #define RSSI_SETTING_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1019 #define RSSI_SETTING_SET_CMD_ID(h2c_pkt, value) \ 1020 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1021 #define RSSI_SETTING_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1022 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1023 #define RSSI_SETTING_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1024 #define RSSI_SETTING_SET_CLASS(h2c_pkt, value) \ 1025 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1026 #define RSSI_SETTING_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1027 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1028 #define RSSI_SETTING_GET_MAC_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1029 #define RSSI_SETTING_SET_MAC_ID(h2c_pkt, value) \ 1030 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1031 #define RSSI_SETTING_SET_MAC_ID_NO_CLR(h2c_pkt, value) \ 1032 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1033 #define RSSI_SETTING_GET_RSSI(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 7) 1034 #define RSSI_SETTING_SET_RSSI(h2c_pkt, value) \ 1035 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 7, value) 1036 #define RSSI_SETTING_SET_RSSI_NO_CLR(h2c_pkt, value) \ 1037 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 7, value) 1038 #define RSSI_SETTING_GET_RA_INFO(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 1039 #define RSSI_SETTING_SET_RA_INFO(h2c_pkt, value) \ 1040 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 1041 #define RSSI_SETTING_SET_RA_INFO_NO_CLR(h2c_pkt, value) \ 1042 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 1043 #define AP_REQ_TXRPT_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1044 #define AP_REQ_TXRPT_SET_CMD_ID(h2c_pkt, value) \ 1045 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1046 #define AP_REQ_TXRPT_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1047 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1048 #define AP_REQ_TXRPT_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1049 #define AP_REQ_TXRPT_SET_CLASS(h2c_pkt, value) \ 1050 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1051 #define AP_REQ_TXRPT_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1052 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1053 #define AP_REQ_TXRPT_GET_STA1_MACID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1054 #define AP_REQ_TXRPT_SET_STA1_MACID(h2c_pkt, value) \ 1055 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1056 #define AP_REQ_TXRPT_SET_STA1_MACID_NO_CLR(h2c_pkt, value) \ 1057 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1058 #define AP_REQ_TXRPT_GET_STA2_MACID(h2c_pkt) \ 1059 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1060 #define AP_REQ_TXRPT_SET_STA2_MACID(h2c_pkt, value) \ 1061 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1062 #define AP_REQ_TXRPT_SET_STA2_MACID_NO_CLR(h2c_pkt, value) \ 1063 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1064 #define AP_REQ_TXRPT_GET_RTY_OK_TOTAL(h2c_pkt) \ 1065 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 1) 1066 #define AP_REQ_TXRPT_SET_RTY_OK_TOTAL(h2c_pkt, value) \ 1067 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 1, value) 1068 #define AP_REQ_TXRPT_SET_RTY_OK_TOTAL_NO_CLR(h2c_pkt, value) \ 1069 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 1, value) 1070 #define AP_REQ_TXRPT_GET_RTY_CNT_MACID(h2c_pkt) \ 1071 GET_H2C_FIELD(h2c_pkt + 0X00, 25, 1) 1072 #define AP_REQ_TXRPT_SET_RTY_CNT_MACID(h2c_pkt, value) \ 1073 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 25, 1, value) 1074 #define AP_REQ_TXRPT_SET_RTY_CNT_MACID_NO_CLR(h2c_pkt, value) \ 1075 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 25, 1, value) 1076 #define INIT_RATE_COLLECTION_GET_CMD_ID(h2c_pkt) \ 1077 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1078 #define INIT_RATE_COLLECTION_SET_CMD_ID(h2c_pkt, value) \ 1079 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1080 #define INIT_RATE_COLLECTION_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1081 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1082 #define INIT_RATE_COLLECTION_GET_CLASS(h2c_pkt) \ 1083 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1084 #define INIT_RATE_COLLECTION_SET_CLASS(h2c_pkt, value) \ 1085 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1086 #define INIT_RATE_COLLECTION_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1087 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1088 #define INIT_RATE_COLLECTION_GET_STA1_MACID(h2c_pkt) \ 1089 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1090 #define INIT_RATE_COLLECTION_SET_STA1_MACID(h2c_pkt, value) \ 1091 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1092 #define INIT_RATE_COLLECTION_SET_STA1_MACID_NO_CLR(h2c_pkt, value) \ 1093 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1094 #define INIT_RATE_COLLECTION_GET_STA2_MACID(h2c_pkt) \ 1095 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1096 #define INIT_RATE_COLLECTION_SET_STA2_MACID(h2c_pkt, value) \ 1097 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1098 #define INIT_RATE_COLLECTION_SET_STA2_MACID_NO_CLR(h2c_pkt, value) \ 1099 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1100 #define INIT_RATE_COLLECTION_GET_STA3_MACID(h2c_pkt) \ 1101 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1102 #define INIT_RATE_COLLECTION_SET_STA3_MACID(h2c_pkt, value) \ 1103 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1104 #define INIT_RATE_COLLECTION_SET_STA3_MACID_NO_CLR(h2c_pkt, value) \ 1105 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1106 #define INIT_RATE_COLLECTION_GET_STA4_MACID(h2c_pkt) \ 1107 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 1108 #define INIT_RATE_COLLECTION_SET_STA4_MACID(h2c_pkt, value) \ 1109 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 1110 #define INIT_RATE_COLLECTION_SET_STA4_MACID_NO_CLR(h2c_pkt, value) \ 1111 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 1112 #define INIT_RATE_COLLECTION_GET_STA5_MACID(h2c_pkt) \ 1113 GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 1114 #define INIT_RATE_COLLECTION_SET_STA5_MACID(h2c_pkt, value) \ 1115 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 1116 #define INIT_RATE_COLLECTION_SET_STA5_MACID_NO_CLR(h2c_pkt, value) \ 1117 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 1118 #define INIT_RATE_COLLECTION_GET_STA6_MACID(h2c_pkt) \ 1119 GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 1120 #define INIT_RATE_COLLECTION_SET_STA6_MACID(h2c_pkt, value) \ 1121 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 1122 #define INIT_RATE_COLLECTION_SET_STA6_MACID_NO_CLR(h2c_pkt, value) \ 1123 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 1124 #define INIT_RATE_COLLECTION_GET_STA7_MACID(h2c_pkt) \ 1125 GET_H2C_FIELD(h2c_pkt + 0X04, 24, 8) 1126 #define INIT_RATE_COLLECTION_SET_STA7_MACID(h2c_pkt, value) \ 1127 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 24, 8, value) 1128 #define INIT_RATE_COLLECTION_SET_STA7_MACID_NO_CLR(h2c_pkt, value) \ 1129 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 24, 8, value) 1130 #define IQK_OFFLOAD_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1131 #define IQK_OFFLOAD_SET_CMD_ID(h2c_pkt, value) \ 1132 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1133 #define IQK_OFFLOAD_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1134 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1135 #define IQK_OFFLOAD_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1136 #define IQK_OFFLOAD_SET_CLASS(h2c_pkt, value) \ 1137 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1138 #define IQK_OFFLOAD_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1139 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1140 #define IQK_OFFLOAD_GET_CHANNEL(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1141 #define IQK_OFFLOAD_SET_CHANNEL(h2c_pkt, value) \ 1142 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1143 #define IQK_OFFLOAD_SET_CHANNEL_NO_CLR(h2c_pkt, value) \ 1144 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1145 #define IQK_OFFLOAD_GET_BWBAND(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1146 #define IQK_OFFLOAD_SET_BWBAND(h2c_pkt, value) \ 1147 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1148 #define IQK_OFFLOAD_SET_BWBAND_NO_CLR(h2c_pkt, value) \ 1149 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1150 #define IQK_OFFLOAD_GET_EXTPALNA(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1151 #define IQK_OFFLOAD_SET_EXTPALNA(h2c_pkt, value) \ 1152 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1153 #define IQK_OFFLOAD_SET_EXTPALNA_NO_CLR(h2c_pkt, value) \ 1154 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1155 #define MACID_CFG_3SS_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1156 #define MACID_CFG_3SS_SET_CMD_ID(h2c_pkt, value) \ 1157 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1158 #define MACID_CFG_3SS_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1159 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1160 #define MACID_CFG_3SS_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1161 #define MACID_CFG_3SS_SET_CLASS(h2c_pkt, value) \ 1162 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1163 #define MACID_CFG_3SS_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1164 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1165 #define MACID_CFG_3SS_GET_MACID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1166 #define MACID_CFG_3SS_SET_MACID(h2c_pkt, value) \ 1167 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1168 #define MACID_CFG_3SS_SET_MACID_NO_CLR(h2c_pkt, value) \ 1169 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1170 #define MACID_CFG_3SS_GET_RATE_MASK_39_32(h2c_pkt) \ 1171 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 1172 #define MACID_CFG_3SS_SET_RATE_MASK_39_32(h2c_pkt, value) \ 1173 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 1174 #define MACID_CFG_3SS_SET_RATE_MASK_39_32_NO_CLR(h2c_pkt, value) \ 1175 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 1176 #define MACID_CFG_3SS_GET_RATE_MASK_47_40(h2c_pkt) \ 1177 GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 1178 #define MACID_CFG_3SS_SET_RATE_MASK_47_40(h2c_pkt, value) \ 1179 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 1180 #define MACID_CFG_3SS_SET_RATE_MASK_47_40_NO_CLR(h2c_pkt, value) \ 1181 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 1182 #define RA_PARA_ADJUST_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1183 #define RA_PARA_ADJUST_SET_CMD_ID(h2c_pkt, value) \ 1184 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1185 #define RA_PARA_ADJUST_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1186 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1187 #define RA_PARA_ADJUST_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1188 #define RA_PARA_ADJUST_SET_CLASS(h2c_pkt, value) \ 1189 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1190 #define RA_PARA_ADJUST_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1191 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1192 #define RA_PARA_ADJUST_GET_MAC_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1193 #define RA_PARA_ADJUST_SET_MAC_ID(h2c_pkt, value) \ 1194 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1195 #define RA_PARA_ADJUST_SET_MAC_ID_NO_CLR(h2c_pkt, value) \ 1196 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1197 #define RA_PARA_ADJUST_GET_PARAMETER_INDEX(h2c_pkt) \ 1198 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1199 #define RA_PARA_ADJUST_SET_PARAMETER_INDEX(h2c_pkt, value) \ 1200 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1201 #define RA_PARA_ADJUST_SET_PARAMETER_INDEX_NO_CLR(h2c_pkt, value) \ 1202 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1203 #define RA_PARA_ADJUST_GET_RATE_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1204 #define RA_PARA_ADJUST_SET_RATE_ID(h2c_pkt, value) \ 1205 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1206 #define RA_PARA_ADJUST_SET_RATE_ID_NO_CLR(h2c_pkt, value) \ 1207 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1208 #define RA_PARA_ADJUST_GET_VALUE_BYTE0(h2c_pkt) \ 1209 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 1210 #define RA_PARA_ADJUST_SET_VALUE_BYTE0(h2c_pkt, value) \ 1211 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 1212 #define RA_PARA_ADJUST_SET_VALUE_BYTE0_NO_CLR(h2c_pkt, value) \ 1213 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 1214 #define RA_PARA_ADJUST_GET_VALUE_BYTE1(h2c_pkt) \ 1215 GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 1216 #define RA_PARA_ADJUST_SET_VALUE_BYTE1(h2c_pkt, value) \ 1217 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 1218 #define RA_PARA_ADJUST_SET_VALUE_BYTE1_NO_CLR(h2c_pkt, value) \ 1219 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 1220 #define RA_PARA_ADJUST_GET_ASK_FW_FOR_FW_PARA(h2c_pkt) \ 1221 GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 1222 #define RA_PARA_ADJUST_SET_ASK_FW_FOR_FW_PARA(h2c_pkt, value) \ 1223 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 1224 #define RA_PARA_ADJUST_SET_ASK_FW_FOR_FW_PARA_NO_CLR(h2c_pkt, value) \ 1225 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 1226 #define REQ_TXRPT_ACQ_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1227 #define REQ_TXRPT_ACQ_SET_CMD_ID(h2c_pkt, value) \ 1228 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1229 #define REQ_TXRPT_ACQ_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1230 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1231 #define REQ_TXRPT_ACQ_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1232 #define REQ_TXRPT_ACQ_SET_CLASS(h2c_pkt, value) \ 1233 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1234 #define REQ_TXRPT_ACQ_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1235 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1236 #define REQ_TXRPT_ACQ_GET_STA1_MACID(h2c_pkt) \ 1237 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1238 #define REQ_TXRPT_ACQ_SET_STA1_MACID(h2c_pkt, value) \ 1239 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1240 #define REQ_TXRPT_ACQ_SET_STA1_MACID_NO_CLR(h2c_pkt, value) \ 1241 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1242 #define REQ_TXRPT_ACQ_GET_PASS_DROP_SEL(h2c_pkt) \ 1243 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1244 #define REQ_TXRPT_ACQ_SET_PASS_DROP_SEL(h2c_pkt, value) \ 1245 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1246 #define REQ_TXRPT_ACQ_SET_PASS_DROP_SEL_NO_CLR(h2c_pkt, value) \ 1247 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1248 #define WWLAN_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1249 #define WWLAN_SET_CMD_ID(h2c_pkt, value) \ 1250 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1251 #define WWLAN_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1252 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1253 #define WWLAN_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1254 #define WWLAN_SET_CLASS(h2c_pkt, value) \ 1255 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1256 #define WWLAN_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1257 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1258 #define WWLAN_GET_FUNC_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 1259 #define WWLAN_SET_FUNC_EN(h2c_pkt, value) \ 1260 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 1261 #define WWLAN_SET_FUNC_EN_NO_CLR(h2c_pkt, value) \ 1262 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 1263 #define WWLAN_GET_PATTERM_MAT_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 1264 #define WWLAN_SET_PATTERM_MAT_EN(h2c_pkt, value) \ 1265 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 1266 #define WWLAN_SET_PATTERM_MAT_EN_NO_CLR(h2c_pkt, value) \ 1267 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 1268 #define WWLAN_GET_MAGIC_PKT_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 1269 #define WWLAN_SET_MAGIC_PKT_EN(h2c_pkt, value) \ 1270 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 1271 #define WWLAN_SET_MAGIC_PKT_EN_NO_CLR(h2c_pkt, value) \ 1272 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 1273 #define WWLAN_GET_UNICAST_WAKEUP_EN(h2c_pkt) \ 1274 GET_H2C_FIELD(h2c_pkt + 0X00, 11, 1) 1275 #define WWLAN_SET_UNICAST_WAKEUP_EN(h2c_pkt, value) \ 1276 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 11, 1, value) 1277 #define WWLAN_SET_UNICAST_WAKEUP_EN_NO_CLR(h2c_pkt, value) \ 1278 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 11, 1, value) 1279 #define WWLAN_GET_ALL_PKT_DROP(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 12, 1) 1280 #define WWLAN_SET_ALL_PKT_DROP(h2c_pkt, value) \ 1281 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 12, 1, value) 1282 #define WWLAN_SET_ALL_PKT_DROP_NO_CLR(h2c_pkt, value) \ 1283 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 12, 1, value) 1284 #define WWLAN_GET_GPIO_ACTIVE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 13, 1) 1285 #define WWLAN_SET_GPIO_ACTIVE(h2c_pkt, value) \ 1286 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 13, 1, value) 1287 #define WWLAN_SET_GPIO_ACTIVE_NO_CLR(h2c_pkt, value) \ 1288 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 13, 1, value) 1289 #define WWLAN_GET_REKEY_WAKEUP_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 14, 1) 1290 #define WWLAN_SET_REKEY_WAKEUP_EN(h2c_pkt, value) \ 1291 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 14, 1, value) 1292 #define WWLAN_SET_REKEY_WAKEUP_EN_NO_CLR(h2c_pkt, value) \ 1293 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 14, 1, value) 1294 #define WWLAN_GET_DEAUTH_WAKEUP_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 15, 1) 1295 #define WWLAN_SET_DEAUTH_WAKEUP_EN(h2c_pkt, value) \ 1296 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 15, 1, value) 1297 #define WWLAN_SET_DEAUTH_WAKEUP_EN_NO_CLR(h2c_pkt, value) \ 1298 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 15, 1, value) 1299 #define WWLAN_GET_GPIO_NUM(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 16, 7) 1300 #define WWLAN_SET_GPIO_NUM(h2c_pkt, value) \ 1301 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 7, value) 1302 #define WWLAN_SET_GPIO_NUM_NO_CLR(h2c_pkt, value) \ 1303 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 7, value) 1304 #define WWLAN_GET_DATAPIN_WAKEUP_EN(h2c_pkt) \ 1305 GET_H2C_FIELD(h2c_pkt + 0X00, 23, 1) 1306 #define WWLAN_SET_DATAPIN_WAKEUP_EN(h2c_pkt, value) \ 1307 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 23, 1, value) 1308 #define WWLAN_SET_DATAPIN_WAKEUP_EN_NO_CLR(h2c_pkt, value) \ 1309 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 23, 1, value) 1310 #define WWLAN_GET_GPIO_DURATION(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1311 #define WWLAN_SET_GPIO_DURATION(h2c_pkt, value) \ 1312 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1313 #define WWLAN_SET_GPIO_DURATION_NO_CLR(h2c_pkt, value) \ 1314 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1315 #define WWLAN_GET_GPIO_PLUS_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 0, 1) 1316 #define WWLAN_SET_GPIO_PLUS_EN(h2c_pkt, value) \ 1317 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 1, value) 1318 #define WWLAN_SET_GPIO_PLUS_EN_NO_CLR(h2c_pkt, value) \ 1319 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 1, value) 1320 #define WWLAN_GET_GPIO_PULSE_COUNT(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 1, 7) 1321 #define WWLAN_SET_GPIO_PULSE_COUNT(h2c_pkt, value) \ 1322 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 1, 7, value) 1323 #define WWLAN_SET_GPIO_PULSE_COUNT_NO_CLR(h2c_pkt, value) \ 1324 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 1, 7, value) 1325 #define WWLAN_GET_DISABLE_UPHY(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 8, 1) 1326 #define WWLAN_SET_DISABLE_UPHY(h2c_pkt, value) \ 1327 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 1, value) 1328 #define WWLAN_SET_DISABLE_UPHY_NO_CLR(h2c_pkt, value) \ 1329 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 1, value) 1330 #define WWLAN_GET_HST2DEV_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 9, 1) 1331 #define WWLAN_SET_HST2DEV_EN(h2c_pkt, value) \ 1332 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 9, 1, value) 1333 #define WWLAN_SET_HST2DEV_EN_NO_CLR(h2c_pkt, value) \ 1334 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 9, 1, value) 1335 #define WWLAN_GET_GPIO_DURATION_MS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X04, 10, 1) 1336 #define WWLAN_SET_GPIO_DURATION_MS(h2c_pkt, value) \ 1337 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 10, 1, value) 1338 #define WWLAN_SET_GPIO_DURATION_MS_NO_CLR(h2c_pkt, value) \ 1339 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 10, 1, value) 1340 #define REMOTE_WAKE_CTRL_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1341 #define REMOTE_WAKE_CTRL_SET_CMD_ID(h2c_pkt, value) \ 1342 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1343 #define REMOTE_WAKE_CTRL_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1344 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1345 #define REMOTE_WAKE_CTRL_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1346 #define REMOTE_WAKE_CTRL_SET_CLASS(h2c_pkt, value) \ 1347 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1348 #define REMOTE_WAKE_CTRL_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1349 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1350 #define REMOTE_WAKE_CTRL_GET_REMOTE_WAKE_CTRL_EN(h2c_pkt) \ 1351 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 1352 #define REMOTE_WAKE_CTRL_SET_REMOTE_WAKE_CTRL_EN(h2c_pkt, value) \ 1353 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 1354 #define REMOTE_WAKE_CTRL_SET_REMOTE_WAKE_CTRL_EN_NO_CLR(h2c_pkt, value) \ 1355 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 1356 #define REMOTE_WAKE_CTRL_GET_ARP_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 9, 1) 1357 #define REMOTE_WAKE_CTRL_SET_ARP_EN(h2c_pkt, value) \ 1358 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 9, 1, value) 1359 #define REMOTE_WAKE_CTRL_SET_ARP_EN_NO_CLR(h2c_pkt, value) \ 1360 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 9, 1, value) 1361 #define REMOTE_WAKE_CTRL_GET_NDP_EN(h2c_pkt) \ 1362 GET_H2C_FIELD(h2c_pkt + 0X00, 10, 1) 1363 #define REMOTE_WAKE_CTRL_SET_NDP_EN(h2c_pkt, value) \ 1364 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 10, 1, value) 1365 #define REMOTE_WAKE_CTRL_SET_NDP_EN_NO_CLR(h2c_pkt, value) \ 1366 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 10, 1, value) 1367 #define REMOTE_WAKE_CTRL_GET_GTK_EN(h2c_pkt) \ 1368 GET_H2C_FIELD(h2c_pkt + 0X00, 11, 1) 1369 #define REMOTE_WAKE_CTRL_SET_GTK_EN(h2c_pkt, value) \ 1370 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 11, 1, value) 1371 #define REMOTE_WAKE_CTRL_SET_GTK_EN_NO_CLR(h2c_pkt, value) \ 1372 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 11, 1, value) 1373 #define REMOTE_WAKE_CTRL_GET_NLO_OFFLOAD_EN(h2c_pkt) \ 1374 GET_H2C_FIELD(h2c_pkt + 0X00, 12, 1) 1375 #define REMOTE_WAKE_CTRL_SET_NLO_OFFLOAD_EN(h2c_pkt, value) \ 1376 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 12, 1, value) 1377 #define REMOTE_WAKE_CTRL_SET_NLO_OFFLOAD_EN_NO_CLR(h2c_pkt, value) \ 1378 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 12, 1, value) 1379 #define REMOTE_WAKE_CTRL_GET_REAL_WOW_V1_EN(h2c_pkt) \ 1380 GET_H2C_FIELD(h2c_pkt + 0X00, 13, 1) 1381 #define REMOTE_WAKE_CTRL_SET_REAL_WOW_V1_EN(h2c_pkt, value) \ 1382 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 13, 1, value) 1383 #define REMOTE_WAKE_CTRL_SET_REAL_WOW_V1_EN_NO_CLR(h2c_pkt, value) \ 1384 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 13, 1, value) 1385 #define REMOTE_WAKE_CTRL_GET_REAL_WOW_V2_EN(h2c_pkt) \ 1386 GET_H2C_FIELD(h2c_pkt + 0X00, 14, 1) 1387 #define REMOTE_WAKE_CTRL_SET_REAL_WOW_V2_EN(h2c_pkt, value) \ 1388 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 14, 1, value) 1389 #define REMOTE_WAKE_CTRL_SET_REAL_WOW_V2_EN_NO_CLR(h2c_pkt, value) \ 1390 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 14, 1, value) 1391 #define REMOTE_WAKE_CTRL_GET_FW_UNICAST(h2c_pkt) \ 1392 GET_H2C_FIELD(h2c_pkt + 0X00, 15, 1) 1393 #define REMOTE_WAKE_CTRL_SET_FW_UNICAST(h2c_pkt, value) \ 1394 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 15, 1, value) 1395 #define REMOTE_WAKE_CTRL_SET_FW_UNICAST_NO_CLR(h2c_pkt, value) \ 1396 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 15, 1, value) 1397 #define REMOTE_WAKE_CTRL_GET_P2P_OFFLOAD_EN(h2c_pkt) \ 1398 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 1) 1399 #define REMOTE_WAKE_CTRL_SET_P2P_OFFLOAD_EN(h2c_pkt, value) \ 1400 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 1, value) 1401 #define REMOTE_WAKE_CTRL_SET_P2P_OFFLOAD_EN_NO_CLR(h2c_pkt, value) \ 1402 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 1, value) 1403 #define REMOTE_WAKE_CTRL_GET_RUNTIME_PM_EN(h2c_pkt) \ 1404 GET_H2C_FIELD(h2c_pkt + 0X00, 17, 1) 1405 #define REMOTE_WAKE_CTRL_SET_RUNTIME_PM_EN(h2c_pkt, value) \ 1406 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 17, 1, value) 1407 #define REMOTE_WAKE_CTRL_SET_RUNTIME_PM_EN_NO_CLR(h2c_pkt, value) \ 1408 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 17, 1, value) 1409 #define REMOTE_WAKE_CTRL_GET_NET_BIOS_DROP_EN(h2c_pkt) \ 1410 GET_H2C_FIELD(h2c_pkt + 0X00, 18, 1) 1411 #define REMOTE_WAKE_CTRL_SET_NET_BIOS_DROP_EN(h2c_pkt, value) \ 1412 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 18, 1, value) 1413 #define REMOTE_WAKE_CTRL_SET_NET_BIOS_DROP_EN_NO_CLR(h2c_pkt, value) \ 1414 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 18, 1, value) 1415 #define REMOTE_WAKE_CTRL_GET_ARP_ACTION(h2c_pkt) \ 1416 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 1) 1417 #define REMOTE_WAKE_CTRL_SET_ARP_ACTION(h2c_pkt, value) \ 1418 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 1, value) 1419 #define REMOTE_WAKE_CTRL_SET_ARP_ACTION_NO_CLR(h2c_pkt, value) \ 1420 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 1, value) 1421 #define REMOTE_WAKE_CTRL_GET_TIM_PARSER_EN(h2c_pkt) \ 1422 GET_H2C_FIELD(h2c_pkt + 0X00, 26, 1) 1423 #define REMOTE_WAKE_CTRL_SET_TIM_PARSER_EN(h2c_pkt, value) \ 1424 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 26, 1, value) 1425 #define REMOTE_WAKE_CTRL_SET_TIM_PARSER_EN_NO_CLR(h2c_pkt, value) \ 1426 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 26, 1, value) 1427 #define REMOTE_WAKE_CTRL_GET_FW_PARSING_UNTIL_WAKEUP(h2c_pkt) \ 1428 GET_H2C_FIELD(h2c_pkt + 0X00, 28, 1) 1429 #define REMOTE_WAKE_CTRL_SET_FW_PARSING_UNTIL_WAKEUP(h2c_pkt, value) \ 1430 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 28, 1, value) 1431 #define REMOTE_WAKE_CTRL_SET_FW_PARSING_UNTIL_WAKEUP_NO_CLR(h2c_pkt, value) \ 1432 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 28, 1, value) 1433 #define REMOTE_WAKE_CTRL_GET_FW_PARSING_AFTER_WAKEUP(h2c_pkt) \ 1434 GET_H2C_FIELD(h2c_pkt + 0X00, 29, 1) 1435 #define REMOTE_WAKE_CTRL_SET_FW_PARSING_AFTER_WAKEUP(h2c_pkt, value) \ 1436 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 29, 1, value) 1437 #define REMOTE_WAKE_CTRL_SET_FW_PARSING_AFTER_WAKEUP_NO_CLR(h2c_pkt, value) \ 1438 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 29, 1, value) 1439 #define AOAC_GLOBAL_INFO_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1440 #define AOAC_GLOBAL_INFO_SET_CMD_ID(h2c_pkt, value) \ 1441 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1442 #define AOAC_GLOBAL_INFO_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1443 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1444 #define AOAC_GLOBAL_INFO_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1445 #define AOAC_GLOBAL_INFO_SET_CLASS(h2c_pkt, value) \ 1446 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1447 #define AOAC_GLOBAL_INFO_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1448 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1449 #define AOAC_GLOBAL_INFO_GET_PAIR_WISE_ENC_ALG(h2c_pkt) \ 1450 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1451 #define AOAC_GLOBAL_INFO_SET_PAIR_WISE_ENC_ALG(h2c_pkt, value) \ 1452 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1453 #define AOAC_GLOBAL_INFO_SET_PAIR_WISE_ENC_ALG_NO_CLR(h2c_pkt, value) \ 1454 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1455 #define AOAC_GLOBAL_INFO_GET_GROUP_ENC_ALG(h2c_pkt) \ 1456 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1457 #define AOAC_GLOBAL_INFO_SET_GROUP_ENC_ALG(h2c_pkt, value) \ 1458 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1459 #define AOAC_GLOBAL_INFO_SET_GROUP_ENC_ALG_NO_CLR(h2c_pkt, value) \ 1460 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1461 #define AOAC_RSVD_PAGE_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1462 #define AOAC_RSVD_PAGE_SET_CMD_ID(h2c_pkt, value) \ 1463 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1464 #define AOAC_RSVD_PAGE_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1465 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1466 #define AOAC_RSVD_PAGE_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1467 #define AOAC_RSVD_PAGE_SET_CLASS(h2c_pkt, value) \ 1468 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1469 #define AOAC_RSVD_PAGE_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1470 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1471 #define AOAC_RSVD_PAGE_GET_LOC_REMOTE_CTRL_INFO(h2c_pkt) \ 1472 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1473 #define AOAC_RSVD_PAGE_SET_LOC_REMOTE_CTRL_INFO(h2c_pkt, value) \ 1474 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1475 #define AOAC_RSVD_PAGE_SET_LOC_REMOTE_CTRL_INFO_NO_CLR(h2c_pkt, value) \ 1476 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1477 #define AOAC_RSVD_PAGE_GET_LOC_ARP_RESPONSE(h2c_pkt) \ 1478 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1479 #define AOAC_RSVD_PAGE_SET_LOC_ARP_RESPONSE(h2c_pkt, value) \ 1480 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1481 #define AOAC_RSVD_PAGE_SET_LOC_ARP_RESPONSE_NO_CLR(h2c_pkt, value) \ 1482 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1483 #define AOAC_RSVD_PAGE_GET_LOC_NEIGHBOR_ADVERTISEMENT(h2c_pkt) \ 1484 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1485 #define AOAC_RSVD_PAGE_SET_LOC_NEIGHBOR_ADVERTISEMENT(h2c_pkt, value) \ 1486 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1487 #define AOAC_RSVD_PAGE_SET_LOC_NEIGHBOR_ADVERTISEMENT_NO_CLR(h2c_pkt, value) \ 1488 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1489 #define AOAC_RSVD_PAGE_GET_LOC_GTK_RSP(h2c_pkt) \ 1490 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 1491 #define AOAC_RSVD_PAGE_SET_LOC_GTK_RSP(h2c_pkt, value) \ 1492 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 1493 #define AOAC_RSVD_PAGE_SET_LOC_GTK_RSP_NO_CLR(h2c_pkt, value) \ 1494 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 1495 #define AOAC_RSVD_PAGE_GET_LOC_GTK_INFO(h2c_pkt) \ 1496 GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 1497 #define AOAC_RSVD_PAGE_SET_LOC_GTK_INFO(h2c_pkt, value) \ 1498 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 1499 #define AOAC_RSVD_PAGE_SET_LOC_GTK_INFO_NO_CLR(h2c_pkt, value) \ 1500 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 1501 #define AOAC_RSVD_PAGE_GET_LOC_GTK_EXT_MEM(h2c_pkt) \ 1502 GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 1503 #define AOAC_RSVD_PAGE_SET_LOC_GTK_EXT_MEM(h2c_pkt, value) \ 1504 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 1505 #define AOAC_RSVD_PAGE_SET_LOC_GTK_EXT_MEM_NO_CLR(h2c_pkt, value) \ 1506 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 1507 #define AOAC_RSVD_PAGE_GET_LOC_NDP_INFO(h2c_pkt) \ 1508 GET_H2C_FIELD(h2c_pkt + 0X04, 24, 8) 1509 #define AOAC_RSVD_PAGE_SET_LOC_NDP_INFO(h2c_pkt, value) \ 1510 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 24, 8, value) 1511 #define AOAC_RSVD_PAGE_SET_LOC_NDP_INFO_NO_CLR(h2c_pkt, value) \ 1512 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 24, 8, value) 1513 #define AOAC_RSVD_PAGE2_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1514 #define AOAC_RSVD_PAGE2_SET_CMD_ID(h2c_pkt, value) \ 1515 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1516 #define AOAC_RSVD_PAGE2_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1517 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1518 #define AOAC_RSVD_PAGE2_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1519 #define AOAC_RSVD_PAGE2_SET_CLASS(h2c_pkt, value) \ 1520 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1521 #define AOAC_RSVD_PAGE2_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1522 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1523 #define AOAC_RSVD_PAGE2_GET_LOC_ROUTER_SOLICATION(h2c_pkt) \ 1524 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1525 #define AOAC_RSVD_PAGE2_SET_LOC_ROUTER_SOLICATION(h2c_pkt, value) \ 1526 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1527 #define AOAC_RSVD_PAGE2_SET_LOC_ROUTER_SOLICATION_NO_CLR(h2c_pkt, value) \ 1528 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1529 #define AOAC_RSVD_PAGE2_GET_LOC_BUBBLE_PACKET(h2c_pkt) \ 1530 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1531 #define AOAC_RSVD_PAGE2_SET_LOC_BUBBLE_PACKET(h2c_pkt, value) \ 1532 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1533 #define AOAC_RSVD_PAGE2_SET_LOC_BUBBLE_PACKET_NO_CLR(h2c_pkt, value) \ 1534 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1535 #define AOAC_RSVD_PAGE2_GET_LOC_TEREDO_INFO(h2c_pkt) \ 1536 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1537 #define AOAC_RSVD_PAGE2_SET_LOC_TEREDO_INFO(h2c_pkt, value) \ 1538 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1539 #define AOAC_RSVD_PAGE2_SET_LOC_TEREDO_INFO_NO_CLR(h2c_pkt, value) \ 1540 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1541 #define AOAC_RSVD_PAGE2_GET_LOC_REALWOW_INFO(h2c_pkt) \ 1542 GET_H2C_FIELD(h2c_pkt + 0X04, 0, 8) 1543 #define AOAC_RSVD_PAGE2_SET_LOC_REALWOW_INFO(h2c_pkt, value) \ 1544 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 0, 8, value) 1545 #define AOAC_RSVD_PAGE2_SET_LOC_REALWOW_INFO_NO_CLR(h2c_pkt, value) \ 1546 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 0, 8, value) 1547 #define AOAC_RSVD_PAGE2_GET_LOC_KEEP_ALIVE_PKT(h2c_pkt) \ 1548 GET_H2C_FIELD(h2c_pkt + 0X04, 8, 8) 1549 #define AOAC_RSVD_PAGE2_SET_LOC_KEEP_ALIVE_PKT(h2c_pkt, value) \ 1550 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 8, 8, value) 1551 #define AOAC_RSVD_PAGE2_SET_LOC_KEEP_ALIVE_PKT_NO_CLR(h2c_pkt, value) \ 1552 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 8, 8, value) 1553 #define AOAC_RSVD_PAGE2_GET_LOC_ACK_PATTERN(h2c_pkt) \ 1554 GET_H2C_FIELD(h2c_pkt + 0X04, 16, 8) 1555 #define AOAC_RSVD_PAGE2_SET_LOC_ACK_PATTERN(h2c_pkt, value) \ 1556 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 16, 8, value) 1557 #define AOAC_RSVD_PAGE2_SET_LOC_ACK_PATTERN_NO_CLR(h2c_pkt, value) \ 1558 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 16, 8, value) 1559 #define AOAC_RSVD_PAGE2_GET_LOC_WAKEUP_PATTERN(h2c_pkt) \ 1560 GET_H2C_FIELD(h2c_pkt + 0X04, 24, 8) 1561 #define AOAC_RSVD_PAGE2_SET_LOC_WAKEUP_PATTERN(h2c_pkt, value) \ 1562 SET_H2C_FIELD_CLR(h2c_pkt + 0X04, 24, 8, value) 1563 #define AOAC_RSVD_PAGE2_SET_LOC_WAKEUP_PATTERN_NO_CLR(h2c_pkt, value) \ 1564 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X04, 24, 8, value) 1565 #define D0_SCAN_OFFLOAD_INFO_GET_CMD_ID(h2c_pkt) \ 1566 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1567 #define D0_SCAN_OFFLOAD_INFO_SET_CMD_ID(h2c_pkt, value) \ 1568 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1569 #define D0_SCAN_OFFLOAD_INFO_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1570 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1571 #define D0_SCAN_OFFLOAD_INFO_GET_CLASS(h2c_pkt) \ 1572 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1573 #define D0_SCAN_OFFLOAD_INFO_SET_CLASS(h2c_pkt, value) \ 1574 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1575 #define D0_SCAN_OFFLOAD_INFO_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1576 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1577 #define D0_SCAN_OFFLOAD_INFO_GET_LOC_CHANNEL_INFO(h2c_pkt) \ 1578 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1579 #define D0_SCAN_OFFLOAD_INFO_SET_LOC_CHANNEL_INFO(h2c_pkt, value) \ 1580 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1581 #define D0_SCAN_OFFLOAD_INFO_SET_LOC_CHANNEL_INFO_NO_CLR(h2c_pkt, value) \ 1582 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1583 #define CHANNEL_SWITCH_OFFLOAD_GET_CMD_ID(h2c_pkt) \ 1584 GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1585 #define CHANNEL_SWITCH_OFFLOAD_SET_CMD_ID(h2c_pkt, value) \ 1586 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1587 #define CHANNEL_SWITCH_OFFLOAD_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1588 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1589 #define CHANNEL_SWITCH_OFFLOAD_GET_CLASS(h2c_pkt) \ 1590 GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1591 #define CHANNEL_SWITCH_OFFLOAD_SET_CLASS(h2c_pkt, value) \ 1592 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1593 #define CHANNEL_SWITCH_OFFLOAD_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1594 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1595 #define CHANNEL_SWITCH_OFFLOAD_GET_CHANNEL_NUM(h2c_pkt) \ 1596 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1597 #define CHANNEL_SWITCH_OFFLOAD_SET_CHANNEL_NUM(h2c_pkt, value) \ 1598 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1599 #define CHANNEL_SWITCH_OFFLOAD_SET_CHANNEL_NUM_NO_CLR(h2c_pkt, value) \ 1600 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1601 #define CHANNEL_SWITCH_OFFLOAD_GET_EN_RFE(h2c_pkt) \ 1602 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1603 #define CHANNEL_SWITCH_OFFLOAD_SET_EN_RFE(h2c_pkt, value) \ 1604 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1605 #define CHANNEL_SWITCH_OFFLOAD_SET_EN_RFE_NO_CLR(h2c_pkt, value) \ 1606 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1607 #define CHANNEL_SWITCH_OFFLOAD_GET_RFE_TYPE(h2c_pkt) \ 1608 GET_H2C_FIELD(h2c_pkt + 0X00, 24, 8) 1609 #define CHANNEL_SWITCH_OFFLOAD_SET_RFE_TYPE(h2c_pkt, value) \ 1610 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 24, 8, value) 1611 #define CHANNEL_SWITCH_OFFLOAD_SET_RFE_TYPE_NO_CLR(h2c_pkt, value) \ 1612 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 24, 8, value) 1613 #define AOAC_RSVD_PAGE3_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1614 #define AOAC_RSVD_PAGE3_SET_CMD_ID(h2c_pkt, value) \ 1615 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1616 #define AOAC_RSVD_PAGE3_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1617 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1618 #define AOAC_RSVD_PAGE3_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1619 #define AOAC_RSVD_PAGE3_SET_CLASS(h2c_pkt, value) \ 1620 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1621 #define AOAC_RSVD_PAGE3_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1622 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1623 #define AOAC_RSVD_PAGE3_GET_LOC_NLO_INFO(h2c_pkt) \ 1624 GET_H2C_FIELD(h2c_pkt + 0X00, 8, 8) 1625 #define AOAC_RSVD_PAGE3_SET_LOC_NLO_INFO(h2c_pkt, value) \ 1626 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 8, value) 1627 #define AOAC_RSVD_PAGE3_SET_LOC_NLO_INFO_NO_CLR(h2c_pkt, value) \ 1628 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 8, value) 1629 #define AOAC_RSVD_PAGE3_GET_LOC_AOAC_REPORT(h2c_pkt) \ 1630 GET_H2C_FIELD(h2c_pkt + 0X00, 16, 8) 1631 #define AOAC_RSVD_PAGE3_SET_LOC_AOAC_REPORT(h2c_pkt, value) \ 1632 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 16, 8, value) 1633 #define AOAC_RSVD_PAGE3_SET_LOC_AOAC_REPORT_NO_CLR(h2c_pkt, value) \ 1634 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 16, 8, value) 1635 #define DBG_MSG_CTRL_GET_CMD_ID(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 0, 5) 1636 #define DBG_MSG_CTRL_SET_CMD_ID(h2c_pkt, value) \ 1637 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 0, 5, value) 1638 #define DBG_MSG_CTRL_SET_CMD_ID_NO_CLR(h2c_pkt, value) \ 1639 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 0, 5, value) 1640 #define DBG_MSG_CTRL_GET_CLASS(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 5, 3) 1641 #define DBG_MSG_CTRL_SET_CLASS(h2c_pkt, value) \ 1642 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 5, 3, value) 1643 #define DBG_MSG_CTRL_SET_CLASS_NO_CLR(h2c_pkt, value) \ 1644 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 5, 3, value) 1645 #define DBG_MSG_CTRL_GET_FUN_EN(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 8, 1) 1646 #define DBG_MSG_CTRL_SET_FUN_EN(h2c_pkt, value) \ 1647 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 8, 1, value) 1648 #define DBG_MSG_CTRL_SET_FUN_EN_NO_CLR(h2c_pkt, value) \ 1649 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 8, 1, value) 1650 #define DBG_MSG_CTRL_GET_MODE(h2c_pkt) GET_H2C_FIELD(h2c_pkt + 0X00, 12, 4) 1651 #define DBG_MSG_CTRL_SET_MODE(h2c_pkt, value) \ 1652 SET_H2C_FIELD_CLR(h2c_pkt + 0X00, 12, 4, value) 1653 #define DBG_MSG_CTRL_SET_MODE_NO_CLR(h2c_pkt, value) \ 1654 SET_H2C_FIELD_NO_CLR(h2c_pkt + 0X00, 12, 4, value) 1655 #endif 1656