summaryrefslogtreecommitdiffstats
path: root/Linux_x86/phOsalNfc.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove some logs in case of abort().Martijn Coenen2012-06-081-4/+3
| | | | | | | This allows us to see more context of HCI timeout crashes. Change-Id: I5cf1f829f3d0db5afd8d2c753fba7c3f8ad70365
* Added recovery function when SE wired mode selectedSunil Jogi2012-04-131-0/+3
| | | | | | | | Added a recovery function with delay when SE wired mode selected. This function will add extra delay before any abort when SE is in wired mode. This will allow SE to complete any operation and do not power off the SE immediately when wired mode transaction is on going.
* Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGESteve Block2012-01-061-2/+2
| | | | | | | See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: I935ee4450e2e62ced1537bafb787ad402cfcb69c
* Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGESteve Block2012-01-031-6/+6
| | | | | | | See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: Ie5dac4fad8942433d2b8fe3c0539e4c3c678a082
* Fixes to LLC and DAL to handle unreliable UART.Nick Pelly2011-10-211-3/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a 100ms timeout in uart_read() when reading LLC payload only. Allow 200 retries on host. Note that we use pn544 timeout retransmit instead of an explicit REJ (do not use CRC_ERROR_REJ). The reason is that after a dropped frame, a host timeout on read() is the only reliable way to recover frame alignment, but if we send an immediate REJ then we are constantly reading and can never regain frame alignment. Also note that the pn544 timeout (200ms) is higher than the host (100ms). This allows the host to abort a partial read and return to known state before the pn544 re-transmits. We have to turn off timeout for FW mode. Typical read time is ~100ms, but some are 1 second+ Modify DAL & LLC layer to more reliably handle partial frames by searching for a LLC length byte again, and log the various error paths. Also introduce debugging tools: debug.nfc.LOW_LEVEL_TRACES 2 Will enable LLC header decoding in the trace output. Only read at NFC init time, use /data/local.prop to enable. debug.nfc.UART_ERROR_RATE X Will randomly inject errors at the uart transport, with a probability of X/1000 for every byte. 50% of those errors will be a dropped byte, 50% will be corrupted. Recommend X=10. FW mode can't handle any errors. Can be enabled after boot. adb shell dumpsys nfc Will now print the number of errors detected at the LLC layer. Change-Id: I739ed193e3d4caa563a866b6a9d834c154917962
* Improve LOW_LEVEL_TRACES logging.Nick Pelly2011-06-271-9/+8
| | | | | | | | | Log ALL buffers (including size 1 and long buffers). Use a more concise format. This is helpful for debugging FW download failures. Change-Id: I97370e8daf93ce851a036274ffa2856af05b6941
* Implement power control and firmware download for UART.Nick Pelly2011-06-221-1/+1
| | | | | | | | | | | | | Also clean up some UART and I2C DAL functions. o Re-enable FW download o Use /system/vendor/firmware for pn544 firmware now o Clean up read() and write() paths for both I2C and UART o Use new sysfs entry for power and FW control on I2C platforms o Remove userspace sleep()'s on power control toggle. They are now done in the kernel as they should be. Change-Id: I39956d36e02c1eb526a5c546bd3cb74edce4ff18
* Patch to enable low level traces.Daniel Tomas2011-05-191-0/+23
| | | | | | | This patch permit to display the NFC frames exchanged through the I2C line. To enable that, you just need to enable LOW_LEVEL_TRACES macro. Change-Id: Ica2ff2e6d111b76c056161ec557346f23d21ada0
* HCI timer enabled to HW reset NFC when HCI command times out.Daniel Tomas2010-11-031-21/+8
| | | | | Change-Id: Iee39957227fcdc8e97b520d22032dc97915323f3 Signed-off-by: Nick Pelly <npelly@google.com>
* STANDBY mode and Polling loopgoodsc.lee2010-10-121-3/+3
| | | | | Change-Id: Ib6563a94b29c7eb9de6615881eadbdf0e94994c8 S5PC11X: NFC: Enable the STANDBY mode and add enableDiscovery and disableDiscovery for polling loop.
* Initial libnfc checkinNick Pelly2010-09-231-0/+165
Source: Trusted_NFC_Device_Host_AA03.01e02_google.zip code drop (23-Sep-2010) Change-Id: Ie47f18423f949a8d3e0815d13f55c814312add24 Signed-off-by: Nick Pelly <npelly@google.com>