summaryrefslogtreecommitdiffstats
path: root/Linux_x86
diff options
context:
space:
mode:
authorDaniel Tomas <daniel.tomas@trusted-logic.com>2010-11-03 20:23:31 +0100
committerNick Pelly <npelly@google.com>2010-11-03 15:15:19 -0500
commitbad5c194e18faa70ceb9608019d3c2cfa0d4f10c (patch)
tree210afe2b4a84c886fba34e43fd0e3bd0bd09cd49 /Linux_x86
parent52ffcd90d9da60151c4343bc25f272da65cf6b98 (diff)
downloadexternal_libnfc-nxp-bad5c194e18faa70ceb9608019d3c2cfa0d4f10c.zip
external_libnfc-nxp-bad5c194e18faa70ceb9608019d3c2cfa0d4f10c.tar.gz
external_libnfc-nxp-bad5c194e18faa70ceb9608019d3c2cfa0d4f10c.tar.bz2
HCI timer enabled to HW reset NFC when HCI command times out.
Change-Id: Iee39957227fcdc8e97b520d22032dc97915323f3 Signed-off-by: Nick Pelly <npelly@google.com>
Diffstat (limited to 'Linux_x86')
-rw-r--r--Linux_x86/phOsalNfc.c29
1 files changed, 8 insertions, 21 deletions
diff --git a/Linux_x86/phOsalNfc.c b/Linux_x86/phOsalNfc.c
index 7d8e7da..6149fc3 100644
--- a/Linux_x86/phOsalNfc.c
+++ b/Linux_x86/phOsalNfc.c
@@ -140,26 +140,13 @@ void phOsalNfc_DbgTrace(uint8_t data[], uint32_t size)
*/
void phOsalNfc_RaiseException(phOsalNfc_ExceptionType_t eExceptionType, uint16_t reason)
{
- pid_t pid;
-#ifndef ANDROID
- static phOsalNfc_Exception_t phOsalNfc_Exception;
- union sigval sv;
-#endif
-
- phOsalNfc_Exception.eExceptionType = eExceptionType;
- phOsalNfc_Exception.reason = reason;
-
- pid = getpid();
-
- /*
- * JCO: Bionic does not provide, among other things, sigqueue...
- */
-#ifdef ANDROID
- kill(pid, SIGABRT);
-#else
- sv.sival_ptr = &phOsalNfc_Exception;
-
- sigqueue(pid, SIGABRT, sv);
-#endif
+ LOGD("phOsalNfc_RaiseException() called");
+
+ if(eExceptionType == phOsalNfc_e_UnrecovFirmwareErr)
+ {
+ LOGE("HCI Timeout - Exception raised");
+ LOGE("Force restart of NFC Service");
+ abort();
+ }
}