1 /*
2  * Copyright (C) 2012-2020 NXP Semiconductors
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #ifndef _PHNXPNCIHAL_EXT_H_
17 #define _PHNXPNCIHAL_EXT_H_
18 
19 #include <phNxpNciHal.h>
20 #include <phNxpNciHal_dta.h>
21 #include <string.h>
22 #define NCI_MT_CMD 0x20
23 #define NCI_MT_RSP 0x40
24 #define NCI_MT_NTF 0x60
25 #define NCI_MSG_CORE_RESET 0x00
26 #define NCI_MSG_CORE_INIT 0x01
27 
28 #define NXP_NFC_SET_CONFIG_PARAM_EXT 0xA0
29 #define NXP_NFC_PARAM_ID_SWP2 0xD4
30 #define NXP_NFC_PARAM_ID_SWPUICC3 0xDC
31 
32 void phNxpNciHal_ext_init(void);
33 NFCSTATUS phNxpNciHal_process_ext_rsp(uint8_t* p_ntf, uint16_t* p_len);
34 NFCSTATUS phNxpNciHal_send_ext_cmd(uint16_t cmd_len, uint8_t* p_cmd);
35 NFCSTATUS phNxpNciHal_send_ese_hal_cmd(uint16_t cmd_len, uint8_t* p_cmd);
36 NFCSTATUS phNxpNciHal_write_ext(uint16_t* cmd_len, uint8_t* p_cmd_data,
37                                 uint16_t* rsp_len, uint8_t* p_rsp_data);
38 
39 extern bool_t wFwUpdateReq;
40 extern bool_t wRfUpdateReq;
41 extern fpRegRfFwDndl_t fpRegRfFwDndl;
42 extern fpPropConfCover_t fpPropConfCover;
43 #define UINT8_TO_STREAM(p, u8) \
44   { *(p)++ = (uint8_t)(u8); }
45 
46 #endif /* _PHNXPNICHAL_EXT_H_ */
47