]> git.baikalelectronics.ru Git - kernel.git/commit
NFC: Add NCI over SPI receive
authorFrederic Danis <frederic.danis@linux.intel.com>
Wed, 29 May 2013 13:35:04 +0000 (15:35 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Fri, 14 Jun 2013 11:44:16 +0000 (13:44 +0200)
commit5ec33adf701ee41deaf9e058f91d8dc533518501
tree038e24a044d3f3780c76d61a13f65c038e8c05bc
parentbd3d94b817bd684bfaf25757a798f328bfb15c11
NFC: Add NCI over SPI receive

Before any operation, driver interruption is de-asserted to prevent
race condition between TX and RX.

Transaction starts by emitting "Direct read" and acknowledged mode
bytes. Then packet length is read allowing to allocate correct NCI
socket buffer. After that payload is retrieved.

A delay after the transaction can be added.
This delay is determined by the driver during nci_spi_allocate_device()
call and can be 0.

If acknowledged mode is set:
- CRC of header and payload is checked
- if frame reception fails (CRC error): NACK is sent
- if received frame has ACK or NACK flag: unblock nci_spi_send()

Payload is passed to NCI module.

At the end, driver interruption is re asserted.

Signed-off-by: Frederic Danis <frederic.danis@linux.intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
include/net/nfc/nci_core.h
net/nfc/nci/spi.c