1 /*
2  * Copyright 2012-2020,2023-2024 NXP
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 <string.h>
21 #define NCI_MT_CMD 0x20
22 #define NCI_MT_RSP 0x40
23 #define NCI_MT_NTF 0x60
24 #define NCI_MSG_CORE_RESET 0x00
25 #define NCI_MSG_CORE_INIT 0x01
26 
27 /* libnfc_nci -> AIDL Mapping Support */
28 #define HAL_NFC_REQUEST_CONTROL_EVT 0x04
29 #define HAL_NFC_RELEASE_CONTROL_EVT 0x05
30 #define HAL_HCI_NETWORK_RESET_EVT 0x07
31 
32 #define NXP_NFC_SET_CONFIG_PARAM_EXT 0xA0
33 #define NXP_NFC_PARAM_ID_SWP2 0xD4
34 #define NXP_NFC_PARAM_ID_SWPUICC3 0xDC
35 
36 #define CORE_GENERIC_ERR_CURRENT_NTF 0xEA
37 // PROTECTED_USER_AREA_AT_CRC_MISMATCH
38 #define CORE_GENERIC_ERR_UA_CRC_NTF 0xF6
39 // PROTECTED_MIR_USER_AREA_AT_CRC_MISMATCH
40 #define CORE_GENERIC_ERR_UA_MIR_CRC_NTF 0xF7
41 
42 void printNfcMwVersion();
43 void phNxpNciHal_ext_init(void);
44 NFCSTATUS phNxpNciHal_process_ext_rsp(uint8_t* p_ntf, uint16_t* p_len);
45 NFCSTATUS phNxpNciHal_send_ext_cmd(uint16_t cmd_len, uint8_t* p_cmd);
46 NFCSTATUS phNxpNciHal_write_ext(uint16_t* cmd_len, uint8_t* p_cmd_data,
47                                 uint16_t* rsp_len, uint8_t* p_rsp_data);
48 
49 extern bool_t wFwUpdateReq;
50 extern bool_t wRfUpdateReq;
51 extern fpRegRfFwDndl_t fpRegRfFwDndl;
52 extern fpPropConfCover_t fpPropConfCover;
53 #define UINT8_TO_STREAM(p, u8) \
54   { *(p)++ = (uint8_t)(u8); }
55 
56 #endif /* _PHNXPNICHAL_EXT_H_ */
57