1 /******************************************************************************
2  *
3  *  Copyright (C) 2012-2014 Broadcom Corporation
4  *
5  *  Licensed under the Apache License, Version 2.0 (the "License");
6  *  you may not use this file except in compliance with the License.
7  *  You may obtain a copy of the License at:
8  *
9  *  http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *  Unless required by applicable law or agreed to in writing, software
12  *  distributed under the License is distributed on an "AS IS" BASIS,
13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *  See the License for the specific language governing permissions and
15  *  limitations under the License.
16  *
17  ******************************************************************************/
18 
19 /******************************************************************************
20  *
21  *  This file contains the Broadcom-specific defintions that are shared
22  *  between HAL, nfc stack, adaptation layer and applications.
23  *
24  ******************************************************************************/
25 
26 #ifndef NFC_BRCM_DEFS_H
27 #define NFC_BRCM_DEFS_H
28 
29 /*****************************************************************************
30 ** Broadcom HW ID definitions
31 *****************************************************************************/
32 #define BRCM_20791B3_ID 0x20791b03
33 #define BRCM_20791B4_ID 0x20791b04
34 #define BRCM_20791B5_ID 0x20791b05
35 #define BRCM_43341B0_ID 0x43341b00
36 #define BRCM_20795T1_ID 0x20795a01
37 #define BRCM_20795A0_ID 0x20795a00
38 #define BRCM_20795A1_ID 0x20795a10
39 
40 #define BRCM_NFC_GEN_MASK 0xFFFFF000 /* HW generation mask */
41 #define BRCM_NFC_REV_MASK 0x00000FFF /* HW revision mask   */
42 #define BRCM_NFC_20791_GEN 0x20791000
43 #define BRCM_NFC_20791_GEN_MAX_EE 3 /* HCI access and 2 UICCs */
44 #define BRCM_NFC_43341_GEN 0x43341000
45 #define BRCM_NFC_43341_GEN_MAX_EE 3 /* HCI access and 2 UICCs */
46 #define BRCM_NFC_20795_GEN 0x20795000
47 #define BRCM_NFC_20795_GEN_MAX_EE 4 /* HCI access and 3 UICCs */
48 
49 /*****************************************************************************
50 ** Broadcom-specific NCI definitions
51 *****************************************************************************/
52 
53 /**********************************************
54  * NCI Message Proprietary  Group       - F
55  **********************************************/
56 #define NCI_MSG_TAG_SET_MEM 0x00
57 #define NCI_MSG_TAG_GET_MEM 0x01
58 #define NCI_MSG_T1T_SET_HR 0x02
59 #define NCI_MSG_SET_CLF_REGISTERS 0x03
60 #define NCI_MSG_GET_BUILD_INFO 0x04
61 #define NCI_MSG_HCI_NETWK 0x05
62 #define NCI_MSG_SET_FWFSM 0x06
63 #define NCI_MSG_SET_UICCRDRF 0x07
64 #define NCI_MSG_POWER_LEVEL 0x08
65 #define NCI_MSG_FRAME_LOG 0x09
66 #define NCI_MSG_UICC_READER_ACTION 0x0A
67 #define NCI_MSG_SET_PPSE_RESPONSE 0x0B
68 #define NCI_MSG_PRBS_SET 0x0C
69 /* reset HCI network/close all pipes (S,D) register */
70 #define NCI_MSG_RESET_ALL_UICC_CFG 0x0D
71 #define NCI_MSG_GET_NFCEE_INFO 0x0E
72 #define NCI_MSG_DISABLE_INIT_CHECK 0x0F
73 #define NCI_MSG_ANTENNA_SELF_TEST 0x10
74 #define NCI_MSG_SET_MAX_PKT_SIZE 0x11
75 #define NCI_MSG_NCIP_CLK_REQ_OR_CAR_DET 0x12
76 #define NCI_MSG_NCIP_CONFIG_DBUART 0x13
77 #define NCI_MSG_NCIP_ENABLE_DVT_DRIVER 0x14
78 #define NCI_MSG_SET_ASWP 0x15
79 #define NCI_MSG_ENCAPSULATE_NCI 0x16
80 #define NCI_MSG_CONFIGURE_ARM_JTAG 0x17
81 #define NCI_MSG_STATISTICS 0x18
82 #define NCI_MSG_SET_DSP_TABLE 0x19
83 #define NCI_MSG_GET_DSP_TABLE 0x1a
84 #define NCI_MSG_READY_RX_CMD 0x1b
85 #define NCI_MSG_GET_VBAT 0x1c
86 #define NCI_MSG_GET_XTAL_INDEX_FROM_DH 0x1d
87 #define NCI_MSG_SWP_LOG 0x1e
88 #define NCI_MSG_GET_PWRLEVEL 0x1f
89 #define NCI_MSG_SET_VBAT_MONITOR 0x20
90 #define NCI_MSG_SET_TINT_MODE 0x21
91 #define NCI_MSG_ACCESS_APP 0x22
92 #define NCI_MSG_SET_SECURE_MODE 0x23
93 #define NCI_MSG_GET_NV_DEVICE 0x24
94 #define NCI_MSG_LPTD 0x25
95 #define NCI_MSG_SET_CE4_AS_SNOOZE 0x26
96 #define NCI_MSG_NFCC_SEND_HCI 0x27
97 #define NCI_MSG_CE4_PATCH_DOWNLOAD_DONE 0x28
98 #define NCI_MSG_EEPROM_RW 0x29
99 #define NCI_MSG_GET_CLF_REGISTERS 0x2A
100 #define NCI_MSG_RF_TEST 0x2B
101 #define NCI_MSG_DEBUG_PRINT 0x2C
102 #define NCI_MSG_GET_PATCH_VERSION 0x2D
103 #define NCI_MSG_SECURE_PATCH_DOWNLOAD 0x2E
104 #define NCI_MSG_SPD_FORMAT_NVM 0x2F
105 #define NCI_MSG_SPD_READ_NVM 0x30
106 #define NCI_MSG_SWP_BIST 0x31
107 #define NCI_MSG_WLESS_DBG_MODE 0x32
108 #define NCI_MSG_I2C_REQ_POLARITY 0x33
109 #define NCI_MSG_AID_FILTER 0x39
110 
111 /**********************************************
112  * Proprietary  NCI status codes
113  **********************************************/
114 #define NCI_STATUS_SPD_ERROR_ORDER 0xE0
115 #define NCI_STATUS_SPD_ERROR_DEST 0xE1
116 #define NCI_STATUS_SPD_ERROR_PROJECTID 0xE2
117 #define NCI_STATUS_SPD_ERROR_CHIPVER 0xE3
118 #define NCI_STATUS_SPD_ERROR_MAJORVER 0xE4
119 #define NCI_STATUS_SPD_ERROR_INVALID_PARAM 0xE5
120 #define NCI_STATUS_SPD_ERROR_INVALID_SIG 0xE6
121 #define NCI_STATUS_SPD_ERROR_NVM_CORRUPTED 0xE7
122 #define NCI_STATUS_SPD_ERROR_PWR_MODE 0xE8
123 #define NCI_STATUS_SPD_ERROR_MSG_LEN 0xE9
124 #define NCI_STATUS_SPD_ERROR_PATCHSIZE 0xEA
125 
126 #define NCI_NV_DEVICE_NONE 0x00
127 #define NCI_NV_DEVICE_EEPROM 0x08
128 #define NCI_NV_DEVICE_UICC1 0x10
129 
130 /* The events reported on tNFC_VS_CBACK */
131 /* The event is (NCI_NTF_BIT|oid) or (NCI_RSP_BIT|oid) */
132 #define NFC_VS_HCI_NETWK_EVT (NCI_NTF_BIT | NCI_MSG_HCI_NETWK)
133 #define NFC_VS_HCI_NETWK_RSP (NCI_RSP_BIT | NCI_MSG_HCI_NETWK)
134 #define NFC_VS_UICC_READER_ACTION_EVT (NCI_NTF_BIT | NCI_MSG_UICC_READER_ACTION)
135 #define NFC_VS_POWER_LEVEL_RSP (NCI_RSP_BIT | NCI_MSG_POWER_LEVEL)
136 #define NFC_VS_GET_NV_DEVICE_EVT (NCI_RSP_BIT | NCI_MSG_GET_NV_DEVICE)
137 #define NFC_VS_LPTD_EVT (NCI_NTF_BIT | NCI_MSG_LPTD)
138 #define NFC_VS_GET_BUILD_INFO_EVT (NCI_RSP_BIT | NCI_MSG_GET_BUILD_INFO)
139 #define NFC_VS_GET_PATCH_VERSION_EVT (NCI_RSP_BIT | NCI_MSG_GET_PATCH_VERSION)
140 #define NFC_VS_SEC_PATCH_DOWNLOAD_EVT \
141   (NCI_RSP_BIT | NCI_MSG_SECURE_PATCH_DOWNLOAD)
142 #define NFC_VS_SEC_PATCH_AUTH_EVT (NCI_NTF_BIT | NCI_MSG_SECURE_PATCH_DOWNLOAD)
143 #define NFC_VS_EEPROM_RW_EVT (NCI_RSP_BIT | NCI_MSG_EEPROM_RW)
144 
145 #define NCI_GET_PATCH_VERSION_NVM_OFFSET 37
146 
147 /* Static and dynamic pipe id and status for each pipe to uicc0 and uicc1. */
148 #define NCI_NFCC_PIPE_INFO_NV_SIZE 24
149 #define NCI_PERSONALITY_SLOT_SIZE 19
150 #define NCI_DYNAMIC_PIPE_SIZE 8
151 
152 /* Type of TLV in NCI_MSG_HCI_NETWK */
153 #define NCI_SWP_INTERFACE_TYPE 0xFF
154 /* Type of TLV in NCI_MSG_HCI_NETWK */
155 #define NCI_HCI_GATE_TYPE 0xFE
156 
157 /* Secure Patch Download definitions (patch type definitions) */
158 #define NCI_SPD_TYPE_HEADER 0x00
159 #define NCI_SPD_TYPE_SRAM 0x01
160 #define NCI_SPD_TYPE_AON 0x02
161 #define NCI_SPD_TYPE_PATCH_TABLE 0x03
162 #define NCI_SPD_TYPE_SECURE_CONFIG 0x04
163 #define NCI_SPD_TYPE_CONTROLLED_CONFIG 0x05
164 #define NCI_SPD_TYPE_SIGNATURE 0x06
165 #define NCI_SPD_TYPE_SIGCHEK 0x07
166 
167 /* Secure Patch Download definitions (NCI_SPD_TYPE_HEADER definitions) */
168 #define NCI_SPD_HEADER_OFFSET_CHIPVERLEN 0x18
169 #define NCI_SPD_HEADER_CHIPVER_LEN 16
170 
171 /* NVM Type (in GET_PATCH_VERSION RSP) */
172 #define NCI_SPD_NVM_TYPE_NONE 0x00
173 #define NCI_SPD_NVM_TYPE_EEPROM 0x01
174 #define NCI_SPD_NVM_TYPE_UICC 0x02
175 
176 /**********************************************
177  * NCI NFCC proprietary features in octet 3
178  **********************************************/
179 #define NCI_FEAT_SIGNED_PATCH 0x01000000
180 
181 /**********************************************
182  * NCI Interface Types
183  **********************************************/
184 #define NCI_INTERFACE_VS_MIFARE 0x80
185 #define NCI_INTERFACE_VS_CALYPSO_CE 0x81
186 #define NCI_INTERFACE_VS_T2T_CE 0x82 /* for Card Emulation side */
187 /* for both Reader/Writer and Card Emulation side */
188 #define NCI_INTERFACE_VS_15693 0x83
189 #define NCI_INTERFACE_VS_T1T_CE 0x84 /* for Card Emulation side */
190 
191 /**********************************************
192  * NCI Proprietary Parameter IDs
193  **********************************************/
194 #define NCI_PARAM_ID_LA_FSDI 0xA0
195 #define NCI_PARAM_ID_LB_FSDI 0xA1
196 #define NCI_PARAM_ID_HOST_LISTEN_MASK 0xA2
197 #define NCI_PARAM_ID_CHIP_TYPE 0xA3 /* NFCDEP */
198 #define NCI_PARAM_ID_PA_ANTICOLL 0xA4
199 #define NCI_PARAM_ID_CONTINUE_MODE 0xA5
200 #define NCI_PARAM_ID_LBP 0xA6
201 #define NCI_PARAM_ID_T1T_RDR_ONLY 0xA7
202 #define NCI_PARAM_ID_LA_SENS_RES 0xA8
203 #define NCI_PARAM_ID_PWR_SETTING_BITMAP 0xA9
204 #define NCI_PARAM_ID_WI_NTF_ENABLE 0xAA
205 #define NCI_PARAM_ID_LN_BITRATE 0xAB /* NFCDEP Listen Bitrate */
206 #define NCI_PARAM_ID_LF_BITRATE 0xAC /* FeliCa */
207 #define NCI_PARAM_ID_SWP_BITRATE_MASK 0xAD
208 #define NCI_PARAM_ID_KOVIO 0xAE
209 #define NCI_PARAM_ID_UICC_NTF_TO 0xAF
210 #define NCI_PARAM_ID_NFCDEP 0xB0
211 #define NCI_PARAM_ID_CLF_REGS_CFG 0xB1
212 #define NCI_PARAM_ID_NFCDEP_TRANS_TIME 0xB2
213 #define NCI_PARAM_ID_CREDIT_TIMER 0xB3
214 #define NCI_PARAM_ID_CORRUPT_RX 0xB4
215 #define NCI_PARAM_ID_ISODEP 0xB5
216 #define NCI_PARAM_ID_LF_CONFIG 0xB6
217 #define NCI_PARAM_ID_I93_DATARATE 0xB7
218 #define NCI_PARAM_ID_CREDITS_THRESHOLD 0xB8
219 #define NCI_PARAM_ID_TAGSNIFF_CFG 0xB9
220 #define NCI_PARAM_ID_PA_FSDI 0xBA /* ISODEP */
221 #define NCI_PARAM_ID_PB_FSDI 0xBB /* ISODEP */
222 #define NCI_PARAM_ID_FRAME_INTF_RETXN 0xBC
223 
224 #define NCI_PARAM_ID_UICC_RDR_PRIORITY 0xBD
225 #define NCI_PARAM_ID_GUARD_TIME 0xBE
226 #define NCI_PARAM_ID_STDCONFIG 0xBF /* dont not use this config item */
227 /* dont not use this config item  */
228 #define NCI_PARAM_ID_PROPCFG 0xC0
229 #define NCI_PARAM_ID_MAXTRY2ACTIVATE 0xC1
230 #define NCI_PARAM_ID_SWPCFG 0xC2
231 #define NCI_PARAM_ID_CLF_LPM_CFG 0xC3
232 #define NCI_PARAM_ID_DCLB 0xC4
233 #define NCI_PARAM_ID_ACT_ORDER 0xC5
234 #define NCI_PARAM_ID_DEP_DELAY_ACT 0xC6
235 #define NCI_PARAM_ID_DH_PARITY_CRC_CTL 0xC7
236 #define NCI_PARAM_ID_PREINIT_DSP_CFG 0xC8
237 #define NCI_PARAM_ID_FW_WORKAROUND 0xC9
238 #define NCI_PARAM_ID_RFU_CONFIG 0xCA
239 #define NCI_PARAM_ID_EMVCO_ENABLE 0xCB
240 #define NCI_PARAM_ID_ANTDRIVER_PARAM 0xCC
241 #define NCI_PARAM_ID_PLL325_CFG_PARAM 0xCD
242 #define NCI_PARAM_ID_OPNLP_ADPLL_ENABLE 0xCE
243 #define NCI_PARAM_ID_CONFORMANCE_MODE 0xCF
244 
245 #define NCI_PARAM_ID_LPO_ON_OFF_ENABLE 0xD0
246 #define NCI_PARAM_ID_FORCE_VANT 0xD1
247 #define NCI_PARAM_ID_COEX_CONFIG 0xD2
248 #define NCI_PARAM_ID_INTEL_MODE 0xD3
249 
250 #define NCI_PARAM_ID_AID 0xFF
251 
252 /**********************************************
253  * NCI Parameter ID Lens
254  **********************************************/
255 #define NCI_PARAM_LEN_PWR_SETTING_BITMAP 3
256 #define NCI_PARAM_LEN_HOST_LISTEN_MASK 2
257 #define NCI_PARAM_LEN_PLL325_CFG_PARAM 14
258 #define NCI_PARAM_LEN_POWER_LEVEL 6
259 
260 /**********************************************
261  * Snooze Mode
262  **********************************************/
263 #define NFC_SNOOZE_MODE_NONE 0x00    /* Snooze mode disabled    */
264 #define NFC_SNOOZE_MODE_UART 0x01    /* Snooze mode for UART    */
265 #define NFC_SNOOZE_MODE_SPI_I2C 0x08 /* Snooze mode for SPI/I2C */
266 
267 #define NFC_SNOOZE_ACTIVE_LOW 0x00  /* high to low voltage is asserting */
268 #define NFC_SNOOZE_ACTIVE_HIGH 0x01 /* low to high voltage is asserting */
269 
270 /**********************************************
271  * HCI definitions
272  **********************************************/
273 #define NFC_HAL_HCI_SESSION_ID_LEN 8
274 #define NFC_HAL_HCI_SYNC_ID_LEN 2
275 
276 /* HCI Network command definitions */
277 #define NFC_HAL_HCI_NETWK_INFO_SIZE 250
278 #define NFC_HAL_HCI_NO_RW_MODE_NETWK_INFO_SIZE 184
279 #define NFC_HAL_HCI_DH_NETWK_INFO_SIZE 111
280 #define NFC_HAL_HCI_MIN_NETWK_INFO_SIZE 12
281 #define NFC_HAL_HCI_MIN_DH_NETWK_INFO_SIZE 11
282 
283 /* Card emulation RF Gate A definitions */
284 #define NFC_HAL_HCI_CE_RF_A_UID_REG_LEN 10
285 #define NFC_HAL_HCI_CE_RF_A_ATQA_RSP_CODE_LEN 2
286 #define NFC_HAL_HCI_CE_RF_A_MAX_HIST_DATA_LEN 15
287 #define NFC_HAL_HCI_CE_RF_A_MAX_DATA_RATE_LEN 3
288 
289 /* Card emulation RF Gate B definitions */
290 #define NFC_HAL_HCI_CE_RF_B_PUPI_LEN 4
291 #define NFC_HAL_HCI_CE_RF_B_ATQB_LEN 4
292 #define NFC_HAL_HCI_CE_RF_B_HIGHER_LAYER_RSP_LEN 61
293 #define NFC_HAL_HCI_CE_RF_B_MAX_DATA_RATE_LEN 3
294 
295 /* Card emulation RF Gate BP definitions */
296 #define NFC_HAL_HCI_CE_RF_BP_MAX_PAT_IN_LEN 8
297 #define NFC_HAL_HCI_CE_RF_BP_DATA_OUT_LEN 40
298 
299 /* Reader RF Gate A definitions */
300 #define NFC_HAL_HCI_RD_RF_B_HIGHER_LAYER_DATA_LEN 61
301 
302 /* DH HCI Network command definitions */
303 #define NFC_HAL_HCI_DH_MAX_DYN_PIPES 20
304 
305 /* Target handle for different host in the network */
306 #define NFC_HAL_HCI_DH_TARGET_HANDLE 0xF2
307 #define NFC_HAL_HCI_UICC0_TARGET_HANDLE 0xF3
308 #define NFC_HAL_HCI_UICC1_TARGET_HANDLE 0xF4
309 #define NFC_HAL_HCI_UICC2_TARGET_HANDLE 0xF5
310 
311 /* Card emulation RF Gate A registry information */
312 typedef struct {
313   uint8_t pipe_id; /* if MSB is set then valid, 7 bits for Pipe ID */
314   uint8_t mode; /* Type A card emulation enabled indicator, 0x02:enabled    */
315   uint8_t sak;
316   uint8_t uid_reg_len;
317   uint8_t uid_reg[NFC_HAL_HCI_CE_RF_A_UID_REG_LEN];
318   uint8_t atqa[NFC_HAL_HCI_CE_RF_A_ATQA_RSP_CODE_LEN]; /* ATQA response code */
319   uint8_t app_data_len;
320   uint8_t
321       app_data[NFC_HAL_HCI_CE_RF_A_MAX_HIST_DATA_LEN]; /* 15 bytes optional
322                                                           storage for historic
323                                                           data, use 2 slots */
324   uint8_t fwi_sfgi; /* FRAME WAITING TIME, START-UP FRAME GUARD TIME */
325   uint8_t cid_support;
326   uint8_t datarate_max[NFC_HAL_HCI_CE_RF_A_MAX_DATA_RATE_LEN];
327   uint8_t clt_support;
328 } tNCI_HCI_CE_RF_A;
329 
330 /* Card emulation RF Gate B registry information */
331 typedef struct {
332   uint8_t pipe_id; /* if MSB is set then valid, 7 bits for Pipe ID */
333   uint8_t mode; /* Type B card emulation enabled indicator, 0x02:enabled    */
334   uint8_t pupi_len;
335   uint8_t pupi_reg[NFC_HAL_HCI_CE_RF_B_PUPI_LEN];
336   uint8_t afi;
337   uint8_t
338       atqb[NFC_HAL_HCI_CE_RF_B_ATQB_LEN]; /* 4 bytes ATQB application data */
339   uint8_t higherlayer_resp
340       [NFC_HAL_HCI_CE_RF_B_HIGHER_LAYER_RSP_LEN]; /* 0~ 61 bytes ATRB_INF use
341                                                      1~4 personality slots */
342   uint8_t datarate_max[NFC_HAL_HCI_CE_RF_B_MAX_DATA_RATE_LEN];
343   uint8_t natrb;
344 } tNCI_HCI_CE_RF_B;
345 
346 /* Card emulation RF Gate BP registry information */
347 typedef struct {
348   uint8_t pipe_id; /* if MSB is set then valid, 7 bits for Pipe ID */
349   uint8_t
350       mode; /* Type B prime card emulation enabled indicator, 0x02:enabled */
351   uint8_t pat_in_len;
352   uint8_t pat_in[NFC_HAL_HCI_CE_RF_BP_MAX_PAT_IN_LEN];
353   uint8_t dat_out_len;
354   uint8_t
355       dat_out[NFC_HAL_HCI_CE_RF_BP_DATA_OUT_LEN]; /* ISO7816-3 <=64 byte, and
356                                                      other fields are 9 bytes */
357   uint8_t natr;
358 } tNCI_HCI_CE_RF_BP;
359 
360 /* Card emulation RF Gate F registry information */
361 typedef struct {
362   uint8_t pipe_id; /* if MSB is set then valid, 7 bits for Pipe ID */
363   uint8_t mode; /* Type F card emulation enabled indicator, 0x02:enabled    */
364   uint8_t speed_cap;
365   uint8_t clt_support;
366 } tNCI_HCI_CE_RF_F;
367 
368 /* Reader RF Gate A registry information */
369 typedef struct {
370   uint8_t pipe_id; /* if MSB is set then valid, 7 bits for Pipe ID */
371   uint8_t datarate_max;
372 } tNCI_HCI_RD_RF_A;
373 
374 /* Reader RF Gate B registry information */
375 typedef struct {
376   uint8_t pipe_id; /* if MSB is set then valid, 7 bits for Pipe ID */
377   uint8_t afi;
378   uint8_t hldata_len;
379   uint8_t
380       high_layer_data[NFC_HAL_HCI_RD_RF_B_HIGHER_LAYER_DATA_LEN]; /* INF field
381                                                                      in ATTRIB
382                                                                      command */
383 } tNCI_HCI_RD_RF_B;
384 
385 /* Dynamic pipe information */
386 typedef struct {
387   uint8_t source_host;
388   uint8_t dest_host;
389   uint8_t source_gate;
390   uint8_t dest_gate;
391   uint8_t pipe_id; /* if MSB is set then valid, 7 bits for Pipe ID */
392 } tNCI_HCI_DYN_PIPE_INFO;
393 
394 /*************************************************************
395  * HCI Network CMD/NTF structure for UICC host in the network
396  *************************************************************/
397 typedef struct {
398   uint8_t target_handle;
399   uint8_t session_id[NFC_HAL_HCI_SESSION_ID_LEN];
400   uint8_t sync_id[NFC_HAL_HCI_SYNC_ID_LEN];
401   uint8_t static_pipe_info;
402   tNCI_HCI_CE_RF_A ce_rf_a;
403   tNCI_HCI_CE_RF_B ce_rf_b;
404   tNCI_HCI_CE_RF_BP ce_rf_bp;
405   tNCI_HCI_CE_RF_F ce_rf_f;
406   tNCI_HCI_RD_RF_A rw_rf_a;
407   tNCI_HCI_RD_RF_B rw_rf_b;
408 } tNCI_HCI_NETWK;
409 
410 /************************************************
411  * HCI Network CMD/NTF structure for Device host
412  ************************************************/
413 typedef struct {
414   uint8_t target_handle;
415   uint8_t session_id[NFC_HAL_HCI_SESSION_ID_LEN];
416   uint8_t static_pipe_info;
417   uint8_t num_dyn_pipes;
418   tNCI_HCI_DYN_PIPE_INFO dyn_pipe_info[NFC_HAL_HCI_DH_MAX_DYN_PIPES];
419 } tNCI_HCI_NETWK_DH;
420 
421 #endif /* NFC_BRCM_DEFS_H */
422