Report CORE_INTERFACE_ERROR_NTF to layer on top of NFA
Needed during NFC Forum testing to notify DTA of NFA_RW_INTF_ERROR_EVT
to resume discovery if necessary. NCI does not mandatorily mandate
to deactivate RF interfaces in case of Unrecoverable Exceptions.
Bug: 169640640
Test: manual
Change-Id: Iaffe18fca4bc72d86eb2f976942d2aaca1cfd719
diff --git a/src/nfa/dm/nfa_dm_act.cc b/src/nfa/dm/nfa_dm_act.cc
index 818ac0e..e89ff94 100644
--- a/src/nfa/dm/nfa_dm_act.cc
+++ b/src/nfa/dm/nfa_dm_act.cc
@@ -1437,6 +1437,18 @@
} else if (event == NFC_DEACTIVATE_CEVT) {
NFC_SetStaticRfCback(nullptr);
}
+ /* needed if CLF reports timeout, transmission or protocol error to notify DTA
+ * that may need to resume discovery if DH stays in POLL_ACTIVE state */
+ else if (appl_dta_mode_flag && (event == NFC_ERROR_CEVT)) {
+ if (p_data) {
+ evt_data.data.status = p_data->data.status;
+ nfa_dm_conn_cback_event_notify(NFA_RW_INTF_ERROR_EVT, &evt_data);
+ } else {
+ LOG(ERROR) << StringPrintf(
+ "received NFC_ERROR_CEVT with NULL data "
+ "pointer");
+ }
+ }
}
/*******************************************************************************