Blame view
include/linux/nfc.h
4.84 KB
4d12b8b12 NFC: add nfc gene... |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
/* * Copyright (C) 2011 Instituto Nokia de Tecnologia * * Authors: * Lauro Ramos Venancio <lauro.venancio@openbossa.org> * Aloisio Almeida Jr <aloisio.almeida@openbossa.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the * Free Software Foundation, Inc., * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef __LINUX_NFC_H #define __LINUX_NFC_H |
23b7869c0 NFC: add the NFC ... |
26 27 |
#include <linux/types.h> #include <linux/socket.h> |
4d12b8b12 NFC: add nfc gene... |
28 29 30 31 32 33 34 35 36 37 38 39 |
#define NFC_GENL_NAME "nfc" #define NFC_GENL_VERSION 1 #define NFC_GENL_MCAST_EVENT_NAME "events" /** * enum nfc_commands - supported nfc commands * * @NFC_CMD_UNSPEC: unspecified command * * @NFC_CMD_GET_DEVICE: request information about a device (requires * %NFC_ATTR_DEVICE_INDEX) or dump request to get a list of all nfc devices |
8b3fe7b59 NFC: Add dev_up a... |
40 41 42 43 |
* @NFC_CMD_DEV_UP: turn on the nfc device * (requires %NFC_ATTR_DEVICE_INDEX) * @NFC_CMD_DEV_DOWN: turn off the nfc device * (requires %NFC_ATTR_DEVICE_INDEX) |
4d12b8b12 NFC: add nfc gene... |
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
* @NFC_CMD_START_POLL: start polling for targets using the given protocols * (requires %NFC_ATTR_DEVICE_INDEX and %NFC_ATTR_PROTOCOLS) * @NFC_CMD_STOP_POLL: stop polling for targets (requires * %NFC_ATTR_DEVICE_INDEX) * @NFC_CMD_GET_TARGET: dump all targets found by the previous poll (requires * %NFC_ATTR_DEVICE_INDEX) * @NFC_EVENT_TARGETS_FOUND: event emitted when a new target is found * (it sends %NFC_ATTR_DEVICE_INDEX) * @NFC_EVENT_DEVICE_ADDED: event emitted when a new device is registred * (it sends %NFC_ATTR_DEVICE_NAME, %NFC_ATTR_DEVICE_INDEX and * %NFC_ATTR_PROTOCOLS) * @NFC_EVENT_DEVICE_REMOVED: event emitted when a device is removed * (it sends %NFC_ATTR_DEVICE_INDEX) */ enum nfc_commands { NFC_CMD_UNSPEC, NFC_CMD_GET_DEVICE, |
8b3fe7b59 NFC: Add dev_up a... |
61 62 |
NFC_CMD_DEV_UP, NFC_CMD_DEV_DOWN, |
1ed28f610 NFC: Add a DEP li... |
63 64 |
NFC_CMD_DEP_LINK_UP, NFC_CMD_DEP_LINK_DOWN, |
4d12b8b12 NFC: add nfc gene... |
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
NFC_CMD_START_POLL, NFC_CMD_STOP_POLL, NFC_CMD_GET_TARGET, NFC_EVENT_TARGETS_FOUND, NFC_EVENT_DEVICE_ADDED, NFC_EVENT_DEVICE_REMOVED, /* private: internal use only */ __NFC_CMD_AFTER_LAST }; #define NFC_CMD_MAX (__NFC_CMD_AFTER_LAST - 1) /** * enum nfc_attrs - supported nfc attributes * * @NFC_ATTR_UNSPEC: unspecified attribute * * @NFC_ATTR_DEVICE_INDEX: index of nfc device * @NFC_ATTR_DEVICE_NAME: device name, max 8 chars * @NFC_ATTR_PROTOCOLS: nfc protocols - bitwise or-ed combination from * NFC_PROTO_*_MASK constants * @NFC_ATTR_TARGET_INDEX: index of the nfc target * @NFC_ATTR_TARGET_SENS_RES: NFC-A targets extra information such as NFCID * @NFC_ATTR_TARGET_SEL_RES: NFC-A targets extra information (useful if the * target is not NFC-Forum compliant) |
288e0713f NFC: Export a new... |
89 |
* @NFC_ATTR_TARGET_NFCID1: NFC-A targets identifier, max 10 bytes |
1ed28f610 NFC: Add a DEP li... |
90 91 |
* @NFC_ATTR_COMM_MODE: Passive or active mode * @NFC_ATTR_RF_MODE: Initiator or target |
4d12b8b12 NFC: add nfc gene... |
92 93 94 95 96 97 98 99 100 |
*/ enum nfc_attrs { NFC_ATTR_UNSPEC, NFC_ATTR_DEVICE_INDEX, NFC_ATTR_DEVICE_NAME, NFC_ATTR_PROTOCOLS, NFC_ATTR_TARGET_INDEX, NFC_ATTR_TARGET_SENS_RES, NFC_ATTR_TARGET_SEL_RES, |
288e0713f NFC: Export a new... |
101 |
NFC_ATTR_TARGET_NFCID1, |
1ed28f610 NFC: Add a DEP li... |
102 103 |
NFC_ATTR_COMM_MODE, NFC_ATTR_RF_MODE, |
4d12b8b12 NFC: add nfc gene... |
104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
/* private: internal use only */ __NFC_ATTR_AFTER_LAST }; #define NFC_ATTR_MAX (__NFC_ATTR_AFTER_LAST - 1) #define NFC_DEVICE_NAME_MAXSIZE 8 /* NFC protocols */ #define NFC_PROTO_JEWEL 1 #define NFC_PROTO_MIFARE 2 #define NFC_PROTO_FELICA 3 #define NFC_PROTO_ISO14443 4 #define NFC_PROTO_NFC_DEP 5 #define NFC_PROTO_MAX 6 |
1ed28f610 NFC: Add a DEP li... |
119 120 121 122 123 124 125 |
/* NFC communication modes */ #define NFC_COMM_ACTIVE 0 #define NFC_COMM_PASSIVE 1 /* NFC RF modes */ #define NFC_RF_INITIATOR 0 #define NFC_RF_TARGET 1 |
4d12b8b12 NFC: add nfc gene... |
126 127 128 129 130 131 |
/* NFC protocols masks used in bitsets */ #define NFC_PROTO_JEWEL_MASK (1 << NFC_PROTO_JEWEL) #define NFC_PROTO_MIFARE_MASK (1 << NFC_PROTO_MIFARE) #define NFC_PROTO_FELICA_MASK (1 << NFC_PROTO_FELICA) #define NFC_PROTO_ISO14443_MASK (1 << NFC_PROTO_ISO14443) #define NFC_PROTO_NFC_DEP_MASK (1 << NFC_PROTO_NFC_DEP) |
23b7869c0 NFC: add the NFC ... |
132 133 134 135 136 137 |
struct sockaddr_nfc { sa_family_t sa_family; __u32 dev_idx; __u32 target_idx; __u32 nfc_protocol; }; |
d646960f7 NFC: Initial LLCP... |
138 139 140 141 142 143 144 145 146 147 148 |
#define NFC_LLCP_MAX_SERVICE_NAME 63 struct sockaddr_nfc_llcp { sa_family_t sa_family; __u32 dev_idx; __u32 target_idx; __u32 nfc_protocol; __u8 dsap; /* Destination SAP, if known */ __u8 ssap; /* Source SAP to be bound to */ char service_name[NFC_LLCP_MAX_SERVICE_NAME]; /* Service name URI */; size_t service_name_len; }; |
c7fe3b52c NFC: add NFC sock... |
149 |
/* NFC socket protocols */ |
23b7869c0 NFC: add the NFC ... |
150 |
#define NFC_SOCKPROTO_RAW 0 |
d646960f7 NFC: Initial LLCP... |
151 152 |
#define NFC_SOCKPROTO_LLCP 1 #define NFC_SOCKPROTO_MAX 2 |
c7fe3b52c NFC: add NFC sock... |
153 |
|
e8753043f NFC: Reserve tx h... |
154 |
#define NFC_HEADER_SIZE 1 |
4d12b8b12 NFC: add nfc gene... |
155 |
#endif /*__LINUX_NFC_H */ |