AnsweredAssumed Answered

PN7150 porting on RK3288 stop working after few reads

Question asked by guanhua lao on Apr 14, 2019
Latest reply on Apr 19, 2019 by jimmychan

hi, guys:

I did the PN7150 porting on RK3288, but there is an issue that it stop working after few reads. 

Before stop working, the PN7150 was resetting (after resetting it will work for a few reads also) and before resetting there are some logs like there:

 

04-10 09:57:14.547 I/BrcmNfcNfa( 797): nfc_ncif_send_cmd.
04-10 09:57:14.547 D/NfcAdaptation( 797): NfcAdaptation::HalWrite
04-10 09:57:14.547 D/NxpExtns( 797): const CNfcParam* CNfcConfig::find(const char*) const found MIFARE_READER_ENABLE=(0x1)
04-10 09:57:14.547 D/NxpTml ( 797): PN54X - Write requested.....
04-10 09:57:14.547 D/NxpTml ( 797): PN54X - Invoking I2C Write.....
04-10 09:57:14.548 D/NxpNciX ( 797): len = 4 > 21060101
04-10 09:57:14.548 D/NxpTml ( 797): PN54X - I2C Write successful.....
04-10 09:57:14.548 D/NxpTml ( 797): PN54X - Posting Fresh Write message.....
04-10 09:57:14.548 D/NxpTml ( 797): PN54X - Tml Writer Thread Running................
04-10 09:57:14.548 D/NxpHal ( 797): write successful status = 0x0
04-10 09:57:14.548 I/BrcmNfcNfa( 797): num_disc_maps=4
04-10 09:57:14.548 I/BrcmNfcNfa( 797): Starting timer value 8000
04-10 09:57:14.548 I/BrcmNfcNfa( 797): nfa_sys_ptim_start_timer a331855c
04-10 09:57:14.548 I/BrcmNfcNfa( 797): ptim timer start
04-10 09:57:14.548 I/BrcmNfcNfa( 797): nfa_dm_disc_sm_execute (): new state: POLL_ACTIVE (4), disc_flags: 0x61
04-10 09:57:14.548 I/BrcmNfcNfa( 797): nfa_sys_ptim_stop_timer a3318ea0
04-10 09:57:14.548 I/BrcmNfcNfa( 797): Stopped presence check timer (if started)
04-10 09:57:14.550 D/NxpTml ( 797): PN54X - I2C Read successful.....
04-10 09:57:14.550 D/NxpNciR ( 797): len = 4 > 41060100
04-10 09:57:14.550 D/NxpTml ( 797): PN54X - Posting read message.....
04-10 09:57:14.550 D/NxpHal ( 797): read successful status = 0x0
04-10 09:57:14.550 D/NfcAdaptation( 797): NfcAdaptation::HalDeviceContextDataCallback: len=4
04-10 09:57:14.550 D/NxpTml ( 797): PN54X - Read requested.....
04-10 09:57:14.550 D/NxpTml ( 797): PN54X - Invoking I2C Read.....
04-10 09:57:14.550 I/BrcmNfcNfa( 797): NFC received rsp gid:1
04-10 09:57:14.550 I/BrcmNfcNfa( 797): returning from nfa_dm_p2p_prio_logic reconnect_in_progress || is_emvco_active
04-10 09:57:14.550 I/BrcmNfcNfa( 797): nfc_set_state 6 (CLOSING)->4 (IDLE)
04-10 09:57:14.550 I/BrcmNfcNfa( 797): nfa_rw_raw_mode_data_cback(): event = 0x6002
04-10 09:57:14.550 I/BrcmNfcNfa( 797): nfa_dm_disc_discovery_cback (): event:0x4005
04-10 09:57:14.550 I/BrcmNfcNfa( 797): nfa_dm_disc_sm_execute (): state: POLL_ACTIVE (4), event: DEACTIVATE_RSP(7) disc_flags: 0x61
04-10 09:57:14.550 I/BrcmNfcNfa( 797): nfa_dm_disc_sm_execute (): new state: POLL_ACTIVE (4), disc_flags: 0x41
04-10 09:57:14.609 D/ViewRootImpl( 1402): onAttachToWindow register content observer attrs=WM.LayoutParams{(0,0)(wrapxwrap)mPosX=0mPosY=0mHScale=1.0mVScale=1.0 align=UNDEFINE taskId=-1 gr=#ffffffff sim=#120 ty=2 fl=#60002 fmt=-2 wanim=0x1030002 surfaceInsets=Rect(0, 0 - 0, 0) needsMenuKey=1packageName=at.mroland.android.apps.nfctaginfotoken=android.os.BinderProxy@db690ae}
04-10 09:57:14.615 D/ViewRootImpl( 1402): 453<<<<<< BACK FROM relayoutWM.LayoutParams{(0,0)(wrapxwrap)mPosX=0mPosY=0mHScale=1.0mVScale=1.0 align=UNDEFINE taskId=-1 gr=#ffffffff sim=#120 ty=2 fl=#60002 fmt=-2 wanim=0x1030002 surfaceInsets=Rect(0, 0 - 0, 0) needsMenuKey=1packageName=at.mroland.android.apps.nfctaginfotoken=android.os.BinderProxy@db690ae}
04-10 09:57:15.547 E/BrcmNfcJni( 797): reSelect: timeout waiting for deactivate
04-10 09:57:15.548 D/BrcmNfcJni( 797): reSelect: tag is not in sleep
04-10 09:57:15.548 E/BrcmNfcJni( 797): setReconnectState = 0x0
04-10 09:57:15.548 I/BrcmNfcNfa( 797): NFA_SetReconnectState = 0x0
04-10 09:57:15.548 D/BrcmNfcJni( 797): reSelect: exit; status=146
04-10 09:57:15.548 D/BrcmNfcJni( 797): nativeNfcTag_doReconnect: exit 0x92
04-10 09:57:15.548 E/NxpExtns( 797): Mifare : phLibNfc_GetKeyNumberMFC Key found
04-10 09:57:15.548 E/NxpExtns( 797): Mifare : phLibNfc_GetKeyNumberMFC returning = 0x0 Key = 0x0
04-10 09:57:15.548 I/BrcmNfcNfa( 797): NFA_SendRawFrame () data_len:3
04-10 09:57:15.548 I/BrcmNfcNfa( 797): NFA got event 0x010C
04-10 09:57:15.549 I/BrcmNfcNfa( 797): nfa_dm_evt_hdlr event: NFA_DM_API_RAW_FRAME_EVT (0x0c)
04-10 09:57:15.549 I/BrcmNfcNfa( 797): nfa_dm_act_send_raw_frame ()
04-10 09:57:15.549 I/BrcmNfcNfa( 797): nfc_ncif_send_data :0, num_buff:1 qc:0
04-10 09:57:18.415 D/alsa_route( 177): route_set_controls() set route 24
04-10 09:57:18.416 E/alsa_route( 177): set_controls() Can not get ctl : ASRC Switch
04-10 09:57:18.416 D/AudioHardwareTiny( 177): close device
04-10 09:57:20.549 E/BrcmNfcJni( 797): nativeNfcTag_doTransceive: wait response timeout
04-10 09:57:20.549 D/BrcmNfcJni( 797): nativeNfcTag_doTransceive: exit
04-10 09:57:20.555 D/BrcmNfcJni( 797): nativeNfcTag_doTransceive: enter; raw=0; timeout = 618
04-10 09:57:20.555 E/NxpExtns( 797): Mifare : phLibNfc_GetKeyNumberMFC Key found
04-10 09:57:20.555 E/NxpExtns( 797): Mifare : phLibNfc_GetKeyNumberMFC returning = 0x0 Key = 0x2
04-10 09:57:20.555 I/BrcmNfcNfa( 797): NFA_SendRawFrame () data_len:3
04-10 09:57:20.555 I/BrcmNfcNfa( 797): NFA got event 0x010C
04-10 09:57:20.555 I/BrcmNfcNfa( 797): nfa_dm_evt_hdlr event: NFA_DM_API_RAW_FRAME_EVT (0x0c)
04-10 09:57:20.555 I/BrcmNfcNfa( 797): nfa_dm_act_send_raw_frame ()
04-10 09:57:20.555 I/BrcmNfcNfa( 797): nfc_ncif_send_data :0, num_buff:1 qc:0
04-10 09:57:22.752 I/BrcmNfcNfa( 797): nfa_sys_ptim_timer_update expired: a331855c
04-10 09:57:22.752 E/BrcmNfcNfa( 797): nfa_dm_disc_deact_ntf_timeout_cback()
04-10 09:57:22.752 I/BrcmNfcNfa( 797): nfa_dm_disc_force_to_idle() disc_flags = 0x41
04-10 09:57:22.752 I/BrcmNfcNfa( 797): nfa_dm_disc_new_state (): old_state: POLL_ACTIVE (4), new_state: IDLE (0) disc_flags: 0x21
04-10 09:57:22.752 I/BrcmNfcNfa( 797): NFC_Deactivate 4 (IDLE) deactivate_type:0
04-10 09:57:22.752 I/BrcmNfcNfa( 797): nfc_ncif_send_cmd.
04-10 09:57:22.753 D/NfcAdaptation( 797): NfcAdaptation::HalWrite
04-10 09:57:22.753 D/NxpExtns( 797): const CNfcParam* CNfcConfig::find(const char*) const found MIFARE_READER_ENABLE=(0x1)
04-10 09:57:22.753 D/NxpTml ( 797): PN54X - Write requested.....
04-10 09:57:22.753 D/NxpTml ( 797): PN54X - Invoking I2C Write.....
04-10 09:57:22.754 D/NxpNciX ( 797): len = 4 > 21060100
04-10 09:57:22.754 D/NxpTml ( 797): PN54X - I2C Write successful.....
04-10 09:57:22.754 D/NxpTml ( 797): PN54X - Posting Fresh Write message.....
04-10 09:57:22.754 D/NxpTml ( 797): PN54X - Tml Writer Thread Running................
04-10 09:57:22.754 D/NxpHal ( 797): write successful status = 0x0
04-10 09:57:22.755 I/BrcmNfcNfa( 797): ptim timer stop
04-10 09:57:24.790 E/BrcmNfcNfa( 797): nfc_ncif_cmd_timeout
04-10 09:57:24.790 E/BrcmNfcNfa( 797): Recovery Start!
04-10 09:57:24.790 E/BrcmNfcNfa( 797): Last State nfa_dm_cb.disc_cb.disc_flags 0x21
04-10 09:57:24.790 E/BrcmNfcNfa( 797): Last State nfa_dm_cb.disc_cb.disc_state 0x0
04-10 09:57:24.790 E/BrcmNfcNfa( 797): Last State is Idle!!
04-10 09:57:24.790 E/BrcmNfcNfa( 797): connection id 3
04-10 09:57:24.790 D/NfcAdaptation( 797): NfcAdaptation::HalCoreInitialized
04-10 09:57:24.790 D/NxpTml ( 797): phTmlNfc_i2c_reset(), VEN level 1
04-10 09:57:24.901 D/NxpTml ( 797): phTmlNfc_i2c_reset(), VEN level 0
04-10 09:57:25.021 D/NxpTml ( 797): phTmlNfc_i2c_reset(), VEN level 1

 

 

 

Do any one of you have any idea about this issue?

Thanks.

Attachments

Outcomes