xref: /aosp_15_r20/prebuilts/build-tools/sysroots/i686-unknown-linux-musl/include/linux/nfc.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Worker /*
2*cda5da8dSAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*cda5da8dSAndroid Build Coastguard Worker  *
4*cda5da8dSAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*cda5da8dSAndroid Build Coastguard Worker  * for more information.
6*cda5da8dSAndroid Build Coastguard Worker  */
7*cda5da8dSAndroid Build Coastguard Worker #ifndef __LINUX_NFC_H
8*cda5da8dSAndroid Build Coastguard Worker #define __LINUX_NFC_H
9*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h>
10*cda5da8dSAndroid Build Coastguard Worker #include <linux/socket.h>
11*cda5da8dSAndroid Build Coastguard Worker #define NFC_GENL_NAME "nfc"
12*cda5da8dSAndroid Build Coastguard Worker #define NFC_GENL_VERSION 1
13*cda5da8dSAndroid Build Coastguard Worker #define NFC_GENL_MCAST_EVENT_NAME "events"
14*cda5da8dSAndroid Build Coastguard Worker enum nfc_commands {
15*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_UNSPEC,
16*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_GET_DEVICE,
17*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_DEV_UP,
18*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_DEV_DOWN,
19*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_DEP_LINK_UP,
20*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_DEP_LINK_DOWN,
21*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_START_POLL,
22*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_STOP_POLL,
23*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_GET_TARGET,
24*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_TARGETS_FOUND,
25*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_DEVICE_ADDED,
26*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_DEVICE_REMOVED,
27*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_TARGET_LOST,
28*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_TM_ACTIVATED,
29*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_TM_DEACTIVATED,
30*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_LLC_GET_PARAMS,
31*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_LLC_SET_PARAMS,
32*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_ENABLE_SE,
33*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_DISABLE_SE,
34*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_LLC_SDREQ,
35*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_LLC_SDRES,
36*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_FW_DOWNLOAD,
37*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_SE_ADDED,
38*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_SE_REMOVED,
39*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_SE_CONNECTIVITY,
40*cda5da8dSAndroid Build Coastguard Worker   NFC_EVENT_SE_TRANSACTION,
41*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_GET_SE,
42*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_SE_IO,
43*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_ACTIVATE_TARGET,
44*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_VENDOR,
45*cda5da8dSAndroid Build Coastguard Worker   NFC_CMD_DEACTIVATE_TARGET,
46*cda5da8dSAndroid Build Coastguard Worker   __NFC_CMD_AFTER_LAST
47*cda5da8dSAndroid Build Coastguard Worker };
48*cda5da8dSAndroid Build Coastguard Worker #define NFC_CMD_MAX (__NFC_CMD_AFTER_LAST - 1)
49*cda5da8dSAndroid Build Coastguard Worker enum nfc_attrs {
50*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_UNSPEC,
51*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_DEVICE_INDEX,
52*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_DEVICE_NAME,
53*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_PROTOCOLS,
54*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_INDEX,
55*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_SENS_RES,
56*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_SEL_RES,
57*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_NFCID1,
58*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_SENSB_RES,
59*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_SENSF_RES,
60*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_COMM_MODE,
61*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_RF_MODE,
62*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_DEVICE_POWERED,
63*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_IM_PROTOCOLS,
64*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TM_PROTOCOLS,
65*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_LLC_PARAM_LTO,
66*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_LLC_PARAM_RW,
67*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_LLC_PARAM_MIUX,
68*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_SE,
69*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_LLC_SDP,
70*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_FIRMWARE_NAME,
71*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_SE_INDEX,
72*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_SE_TYPE,
73*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_SE_AID,
74*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS,
75*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_SE_APDU,
76*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_ISO15693_DSFID,
77*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_TARGET_ISO15693_UID,
78*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_SE_PARAMS,
79*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_VENDOR_ID,
80*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_VENDOR_SUBCMD,
81*cda5da8dSAndroid Build Coastguard Worker   NFC_ATTR_VENDOR_DATA,
82*cda5da8dSAndroid Build Coastguard Worker   __NFC_ATTR_AFTER_LAST
83*cda5da8dSAndroid Build Coastguard Worker };
84*cda5da8dSAndroid Build Coastguard Worker #define NFC_ATTR_MAX (__NFC_ATTR_AFTER_LAST - 1)
85*cda5da8dSAndroid Build Coastguard Worker enum nfc_sdp_attr {
86*cda5da8dSAndroid Build Coastguard Worker   NFC_SDP_ATTR_UNSPEC,
87*cda5da8dSAndroid Build Coastguard Worker   NFC_SDP_ATTR_URI,
88*cda5da8dSAndroid Build Coastguard Worker   NFC_SDP_ATTR_SAP,
89*cda5da8dSAndroid Build Coastguard Worker   __NFC_SDP_ATTR_AFTER_LAST
90*cda5da8dSAndroid Build Coastguard Worker };
91*cda5da8dSAndroid Build Coastguard Worker #define NFC_SDP_ATTR_MAX (__NFC_SDP_ATTR_AFTER_LAST - 1)
92*cda5da8dSAndroid Build Coastguard Worker #define NFC_DEVICE_NAME_MAXSIZE 8
93*cda5da8dSAndroid Build Coastguard Worker #define NFC_NFCID1_MAXSIZE 10
94*cda5da8dSAndroid Build Coastguard Worker #define NFC_NFCID2_MAXSIZE 8
95*cda5da8dSAndroid Build Coastguard Worker #define NFC_NFCID3_MAXSIZE 10
96*cda5da8dSAndroid Build Coastguard Worker #define NFC_SENSB_RES_MAXSIZE 12
97*cda5da8dSAndroid Build Coastguard Worker #define NFC_SENSF_RES_MAXSIZE 18
98*cda5da8dSAndroid Build Coastguard Worker #define NFC_ATR_REQ_MAXSIZE 64
99*cda5da8dSAndroid Build Coastguard Worker #define NFC_ATR_RES_MAXSIZE 64
100*cda5da8dSAndroid Build Coastguard Worker #define NFC_ATR_REQ_GB_MAXSIZE 48
101*cda5da8dSAndroid Build Coastguard Worker #define NFC_ATR_RES_GB_MAXSIZE 47
102*cda5da8dSAndroid Build Coastguard Worker #define NFC_GB_MAXSIZE 48
103*cda5da8dSAndroid Build Coastguard Worker #define NFC_FIRMWARE_NAME_MAXSIZE 32
104*cda5da8dSAndroid Build Coastguard Worker #define NFC_ISO15693_UID_MAXSIZE 8
105*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_JEWEL 1
106*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_MIFARE 2
107*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_FELICA 3
108*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_ISO14443 4
109*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_NFC_DEP 5
110*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_ISO14443_B 6
111*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_ISO15693 7
112*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_MAX 8
113*cda5da8dSAndroid Build Coastguard Worker #define NFC_COMM_ACTIVE 0
114*cda5da8dSAndroid Build Coastguard Worker #define NFC_COMM_PASSIVE 1
115*cda5da8dSAndroid Build Coastguard Worker #define NFC_RF_INITIATOR 0
116*cda5da8dSAndroid Build Coastguard Worker #define NFC_RF_TARGET 1
117*cda5da8dSAndroid Build Coastguard Worker #define NFC_RF_NONE 2
118*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_JEWEL_MASK (1 << NFC_PROTO_JEWEL)
119*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_MIFARE_MASK (1 << NFC_PROTO_MIFARE)
120*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_FELICA_MASK (1 << NFC_PROTO_FELICA)
121*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_ISO14443_MASK (1 << NFC_PROTO_ISO14443)
122*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_NFC_DEP_MASK (1 << NFC_PROTO_NFC_DEP)
123*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_ISO14443_B_MASK (1 << NFC_PROTO_ISO14443_B)
124*cda5da8dSAndroid Build Coastguard Worker #define NFC_PROTO_ISO15693_MASK (1 << NFC_PROTO_ISO15693)
125*cda5da8dSAndroid Build Coastguard Worker #define NFC_SE_UICC 0x1
126*cda5da8dSAndroid Build Coastguard Worker #define NFC_SE_EMBEDDED 0x2
127*cda5da8dSAndroid Build Coastguard Worker #define NFC_SE_DISABLED 0x0
128*cda5da8dSAndroid Build Coastguard Worker #define NFC_SE_ENABLED 0x1
129*cda5da8dSAndroid Build Coastguard Worker struct sockaddr_nfc {
130*cda5da8dSAndroid Build Coastguard Worker   __kernel_sa_family_t sa_family;
131*cda5da8dSAndroid Build Coastguard Worker   __u32 dev_idx;
132*cda5da8dSAndroid Build Coastguard Worker   __u32 target_idx;
133*cda5da8dSAndroid Build Coastguard Worker   __u32 nfc_protocol;
134*cda5da8dSAndroid Build Coastguard Worker };
135*cda5da8dSAndroid Build Coastguard Worker #define NFC_LLCP_MAX_SERVICE_NAME 63
136*cda5da8dSAndroid Build Coastguard Worker struct sockaddr_nfc_llcp {
137*cda5da8dSAndroid Build Coastguard Worker   __kernel_sa_family_t sa_family;
138*cda5da8dSAndroid Build Coastguard Worker   __u32 dev_idx;
139*cda5da8dSAndroid Build Coastguard Worker   __u32 target_idx;
140*cda5da8dSAndroid Build Coastguard Worker   __u32 nfc_protocol;
141*cda5da8dSAndroid Build Coastguard Worker   __u8 dsap;
142*cda5da8dSAndroid Build Coastguard Worker   __u8 ssap;
143*cda5da8dSAndroid Build Coastguard Worker   char service_name[NFC_LLCP_MAX_SERVICE_NAME];
144*cda5da8dSAndroid Build Coastguard Worker ;
145*cda5da8dSAndroid Build Coastguard Worker   __kernel_size_t service_name_len;
146*cda5da8dSAndroid Build Coastguard Worker };
147*cda5da8dSAndroid Build Coastguard Worker #define NFC_SOCKPROTO_RAW 0
148*cda5da8dSAndroid Build Coastguard Worker #define NFC_SOCKPROTO_LLCP 1
149*cda5da8dSAndroid Build Coastguard Worker #define NFC_SOCKPROTO_MAX 2
150*cda5da8dSAndroid Build Coastguard Worker #define NFC_HEADER_SIZE 1
151*cda5da8dSAndroid Build Coastguard Worker #define NFC_RAW_HEADER_SIZE 2
152*cda5da8dSAndroid Build Coastguard Worker #define NFC_DIRECTION_RX 0x00
153*cda5da8dSAndroid Build Coastguard Worker #define NFC_DIRECTION_TX 0x01
154*cda5da8dSAndroid Build Coastguard Worker #define RAW_PAYLOAD_LLCP 0
155*cda5da8dSAndroid Build Coastguard Worker #define RAW_PAYLOAD_NCI 1
156*cda5da8dSAndroid Build Coastguard Worker #define RAW_PAYLOAD_HCI 2
157*cda5da8dSAndroid Build Coastguard Worker #define RAW_PAYLOAD_DIGITAL 3
158*cda5da8dSAndroid Build Coastguard Worker #define RAW_PAYLOAD_PROPRIETARY 4
159*cda5da8dSAndroid Build Coastguard Worker #define NFC_LLCP_RW 0
160*cda5da8dSAndroid Build Coastguard Worker #define NFC_LLCP_MIUX 1
161*cda5da8dSAndroid Build Coastguard Worker #define NFC_LLCP_REMOTE_MIU 2
162*cda5da8dSAndroid Build Coastguard Worker #define NFC_LLCP_REMOTE_LTO 3
163*cda5da8dSAndroid Build Coastguard Worker #define NFC_LLCP_REMOTE_RW 4
164*cda5da8dSAndroid Build Coastguard Worker #endif
165