diff options
author | Mark A. Greer <mgreer@animalcreek.com> | 2014-07-21 21:24:39 -0700 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2014-07-23 01:17:31 +0200 |
commit | bf30a67c947ed57c1cf7c68a47dc24331458037e (patch) | |
tree | abd0341d5faa9431a964d3cd7349d5bc801b8f44 /net/nfc/digital.h | |
parent | f63bac94bfe2b7f98d28e5c7d3432a5060841f51 (diff) | |
download | linux-bf30a67c947ed57c1cf7c68a47dc24331458037e.tar.gz linux-bf30a67c947ed57c1cf7c68a47dc24331458037e.tar.bz2 linux-bf30a67c947ed57c1cf7c68a47dc24331458037e.zip |
NFC: digital: Add 'tg_listen_md' and 'tg_get_rf_tech' driver hooks
The digital layer of the NFC subsystem currently
supports a 'tg_listen_mdaa' driver hook that supports
devices that can do mode detection and automatic
anticollision. However, there are some devices that
can do mode detection but not automatic anitcollision
so add the 'tg_listen_md' hook to support those devices.
In order for the digital layer to get the RF technology
detected by the device from the driver, add the
'tg_get_rf_tech' hook. It is only valid to call this
hook immediately after a successful call to 'tg_listen_md'.
CC: Thierry Escande <thierry.escande@linux.intel.com>
Signed-off-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'net/nfc/digital.h')
-rw-r--r-- | net/nfc/digital.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/nfc/digital.h b/net/nfc/digital.h index 71ad7eefddd4..3c39c72eb038 100644 --- a/net/nfc/digital.h +++ b/net/nfc/digital.h @@ -29,6 +29,7 @@ #define DIGITAL_CMD_TG_SEND 1 #define DIGITAL_CMD_TG_LISTEN 2 #define DIGITAL_CMD_TG_LISTEN_MDAA 3 +#define DIGITAL_CMD_TG_LISTEN_MD 4 #define DIGITAL_MAX_HEADER_LEN 7 #define DIGITAL_CRC_LEN 2 @@ -121,6 +122,8 @@ int digital_tg_send_dep_res(struct nfc_digital_dev *ddev, struct sk_buff *skb); int digital_tg_listen_nfca(struct nfc_digital_dev *ddev, u8 rf_tech); int digital_tg_listen_nfcf(struct nfc_digital_dev *ddev, u8 rf_tech); +void digital_tg_recv_md_req(struct nfc_digital_dev *ddev, void *arg, + struct sk_buff *resp); typedef u16 (*crc_func_t)(u16, const u8 *, size_t); |