aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/nfc
diff options
context:
space:
mode:
authorMark A. Greer <mgreer@animalcreek.com>2014-03-31 20:52:33 -0400
committerSamuel Ortiz <sameo@linux.intel.com>2014-04-21 18:37:28 -0400
commit742b1f9fa292a1b8f5c8368464e114c9b71c2a81 (patch)
tree43320ee89415f4cb0422f6f719c191abeecca195 /drivers/nfc
parent24734607351a4f1c418f127f61958585dc7ed51d (diff)
NFC: trf7970a: Add support for the ISO/IEC 14443-B and Type 4B tags
Now that the NFC digital layer has support for the ISO/IEC 14443-B protocol and type 4B tags, add the corresponding support to the trf7970a driver. Signed-off-by: Mark A. Greer <mgreer@animalcreek.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'drivers/nfc')
-rw-r--r--drivers/nfc/trf7970a.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/nfc/trf7970a.c b/drivers/nfc/trf7970a.c
index a91859b133e8..efb36593ecb4 100644
--- a/drivers/nfc/trf7970a.c
+++ b/drivers/nfc/trf7970a.c
@@ -105,7 +105,7 @@
105 105
106#define TRF7970A_SUPPORTED_PROTOCOLS \ 106#define TRF7970A_SUPPORTED_PROTOCOLS \
107 (NFC_PROTO_MIFARE_MASK | NFC_PROTO_ISO14443_MASK | \ 107 (NFC_PROTO_MIFARE_MASK | NFC_PROTO_ISO14443_MASK | \
108 NFC_PROTO_ISO15693_MASK) 108 NFC_PROTO_ISO14443_B_MASK | NFC_PROTO_ISO15693_MASK)
109 109
110#define TRF7970A_AUTOSUSPEND_DELAY 30000 /* 30 seconds */ 110#define TRF7970A_AUTOSUSPEND_DELAY 30000 /* 30 seconds */
111 111
@@ -863,6 +863,10 @@ static int trf7970a_config_rf_tech(struct trf7970a *trf, int tech)
863 trf->iso_ctrl_tech = TRF7970A_ISO_CTRL_14443A_106; 863 trf->iso_ctrl_tech = TRF7970A_ISO_CTRL_14443A_106;
864 trf->modulator_sys_clk_ctrl = TRF7970A_MODULATOR_DEPTH_OOK; 864 trf->modulator_sys_clk_ctrl = TRF7970A_MODULATOR_DEPTH_OOK;
865 break; 865 break;
866 case NFC_DIGITAL_RF_TECH_106B:
867 trf->iso_ctrl_tech = TRF7970A_ISO_CTRL_14443B_106;
868 trf->modulator_sys_clk_ctrl = TRF7970A_MODULATOR_DEPTH_ASK10;
869 break;
866 case NFC_DIGITAL_RF_TECH_ISO15693: 870 case NFC_DIGITAL_RF_TECH_ISO15693:
867 trf->iso_ctrl_tech = TRF7970A_ISO_CTRL_15693_SGL_1OF4_2648; 871 trf->iso_ctrl_tech = TRF7970A_ISO_CTRL_15693_SGL_1OF4_2648;
868 trf->modulator_sys_clk_ctrl = TRF7970A_MODULATOR_DEPTH_OOK; 872 trf->modulator_sys_clk_ctrl = TRF7970A_MODULATOR_DEPTH_OOK;
@@ -892,6 +896,8 @@ static int trf7970a_config_framing(struct trf7970a *trf, int framing)
892 break; 896 break;
893 case NFC_DIGITAL_FRAMING_NFCA_STANDARD_WITH_CRC_A: 897 case NFC_DIGITAL_FRAMING_NFCA_STANDARD_WITH_CRC_A:
894 case NFC_DIGITAL_FRAMING_NFCA_T4T: 898 case NFC_DIGITAL_FRAMING_NFCA_T4T:
899 case NFC_DIGITAL_FRAMING_NFCB:
900 case NFC_DIGITAL_FRAMING_NFCB_T4T:
895 case NFC_DIGITAL_FRAMING_ISO15693_INVENTORY: 901 case NFC_DIGITAL_FRAMING_ISO15693_INVENTORY:
896 case NFC_DIGITAL_FRAMING_ISO15693_T5T: 902 case NFC_DIGITAL_FRAMING_ISO15693_T5T:
897 trf->tx_cmd = TRF7970A_CMD_TRANSMIT; 903 trf->tx_cmd = TRF7970A_CMD_TRANSMIT;