diff options
Diffstat (limited to 'rfid_asic_rc632.c')
-rw-r--r-- | rfid_asic_rc632.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/rfid_asic_rc632.c b/rfid_asic_rc632.c index eeb6d89..fae4f01 100644 --- a/rfid_asic_rc632.c +++ b/rfid_asic_rc632.c @@ -576,7 +576,6 @@ rc632_iso14443a_transcieve_sf(struct rfid_asic_handle *handle, if (ret < 0) return ret; - ret = rc632_clear_bits(handle, RC632_REG_CONTROL, RC632_CONTROL_CRYPTO1_ON); if (ret < 0) @@ -631,10 +630,13 @@ rc632_iso14443ab_transcieve(struct rfid_asic_handle *handle, switch (frametype) { case RFID_14443A_FRAME_REGULAR: - case RFID_14443B_FRAME_REGULAR: - channel_red = RC632_CR_TX_CRC_ENABLE|RC632_CR_TX_CRC_ENABLE + channel_red = RC632_CR_RX_CRC_ENABLE|RC632_CR_TX_CRC_ENABLE |RC632_CR_PARITY_ENABLE|RC632_CR_PARITY_ODD; break; + case RFID_14443B_FRAME_REGULAR: + channel_red = RC632_CR_RX_CRC_ENABLE|RC632_CR_TX_CRC_ENABLE + |RC632_CR_CRC3309; + break; case RFID_MIFARE_FRAME: channel_red = RC632_CR_PARITY_ENABLE|RC632_CR_PARITY_ODD; break; @@ -1255,7 +1257,7 @@ rc632_mifare_transcieve(struct rfid_asic_handle *handle, RC632_CR_RX_CRC_ENABLE)); #endif ret = rc632_clear_bits(handle, RC632_REG_CHANNEL_REDUNDANCY, - RC632_CR_TX_CRC_ENABLE|RC632_CR_TX_CRC_ENABLE); + RC632_CR_RX_CRC_ENABLE|RC632_CR_TX_CRC_ENABLE); if (ret < 0) return ret; |