AnsweredAssumed Answered

IRQ use in PN7150

Question asked by Pratyush Tomar on May 19, 2017
Latest reply on Jun 6, 2017 by jimmychan

Based on reading document http://www.nxp.com/documents/application_note/AN11756.pdf and by studying driver code I assume IRQ gpio in PN7150 is used to detect tag reading. I wanted to use this IRQ to wake-up my board when tag comes near PN7150 controller and thus I register this IRQ gpio for board wake-up and used some other gpio for IRQ in dts(not connected to PN7150 and thus empty) just for some testing. But now whenever I call nfcDemoApp poll for reading tag the NFC doesn't work. It tries many times power up and power down but fails.
Thus my question is is IRQ being used for some other use other than tag detection? Can I avoid using IRQ in PN7150 just to perform tag read operation(I have some other method to detect tag and thus not relying on PN7150IRQ)?

My log after disabling IRQ
nfcDemoApp poll
NxpHal: pn54x_dev_open : 10,57
Entering phNxpNciHal_init_monitorpn54x_dev_ioctl, cmd=1074063617, arg=1

NxpHal: Returning with SUCCpn544_enable power on
ESS
NxpTml: Opening port=/dev/pn544

NxpTml: phTmlNfc_i2c_reset(), VEN level 1
NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=0
phTmlNfc_i2c_reset(), VEN level 0pn544_disable power off

NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=1
phTmlNfc_i2c_reset(), VEN level 1pn544_enable power on

NxpTml: PN54X - Tml Reader Thread Started................
NxpTml: PN54X - Read requested.....
NxpTml: PN54X - Invoking I2C Read.....
NxpTml: PN54X - Tml Writer Thread Started................
NxpTml: PN54X - Tml Writer Thread Running................
NxpTml: PN54X - Write requested.....
NxpTml: PN54X - Invoking I2C Write.....
NxpHal: thread started
NxpTml: PN54X - I2C Write successful.....
NxpTml: PN54X - Posting Fresh Write message.....
NxpTml: PN54X - Tml Writer Thread Running................

NxpHal: write successful status = 0x0
NxpHal: Response timer started
NxpHal: Waiting after ext cmd sent
NxpHal: pn54x_dev_ioctl, cmd=1074063617, arg=1
hal_extns_write_rsp_timeout_cb - pn544_enable power on
write timeout!!!
NxpHal: Response timer stopped
NxpHal: Callback Status is failed!! Timer Expired!! Couldn't read it! 0xff
NxpHal: NCI_CORE_RESET: Failed
NxpHal: Power Cycle
NxpTml: phTmlNfc_i2c_reset(), VEN level 1
NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=0
phTmlNfc_i2c_reset(), VEN level 0pn544_disable power off

NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=1
phTmlNfc_i2c_reset(), VEN level 1pn544_enable power on

NxpHal: PN54X Reset - SUCCESS
NxpTml: PN54X - Write requested.....
NxpTml: PN54X - Invoking I2C Write.....
NxpTml: PN54X - I2C Write successful.....
NxpTml: PN54X - Posting Fresh Write message.....
NxpTml: PN54X - Tml Writer Thread Running................

NxpHal: write successful status = 0x0
NxpHal: Response timer started
NxpHal: Waiting after ext cmd sent
NxpHal: pn54x_dev_ioctl, cmd=1074063617, arg=1
hal_extns_write_rsp_timeout_cb - pn544_enable power on
write timeout!!!
NxpHal: Response timer stopped
NxpHal: Callback Status is failed!! Timer Expired!! Couldn't read it! 0xff
NxpHal: NCI_CORE_RESET: Failed
NxpHal: Power Cycle
NxpTml: phTmlNfc_i2c_reset(), VEN level 1
NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=0
phTmlNfc_i2c_reset(), VEN level 0pn544_disable power off

NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=1
phTmlNfc_i2c_reset(), VEN level 1pn544_enable power on

NxpHal: PN54X Reset - SUCCESS
NxpTml: PN54X - Write requested.....
NxpTml: PN54X - Invoking I2C Write.....
NxpTml: PN54X - I2C Write successful.....
NxpTml: PN54X - Posting Fresh Write message.....
NxpTml: PN54X - Tml Writer Thread Running................

NxpHal: write successful status = 0x0
NxpHal: Response timer started
NxpHal: Waiting after ext cmd sent
NxpHal: pn54x_dev_ioctl, cmd=1074063617, arg=1
hal_extns_write_rsp_timeout_cb - pn544_enable power on
write timeout!!!
NxpHal: Response timer stopped
NxpHal: Callback Status is failed!! Timer Expired!! Couldn't read it! 0xff
NxpHal: NCI_CORE_RESET: Failed
NxpHal: Power Cycle
NxpTml: phTmlNfc_i2c_reset(), VEN level 1
NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=0
phTmlNfc_i2c_reset(), VEN level 0pn544_disable power off

NxpTml: pn54x_dev_ioctl, cmd=1074063617, arg=1
phTmlNfc_i2c_reset(), VEN level 1pn544_enable power on

NxpHal: PN54X Reset - SUCCESS
NxpTml: PN54X - Write requested.....
NxpTml: PN54X - Invoking I2C Write.....
NxpTml: PN54X - I2C Write successful.....
NxpTml: PN54X - Posting Fresh Write message.....
NxpTml: PN54X - Tml Writer Thread Running................

NxpHal: write successful status = 0x0
NxpHal: Response timer started
NxpHal: Waiting after ext cmd sent
NxpHal: hal_extns_write_rsp_timeout_cb - write timeout!!!
NxpHal: Response timer stopped
NxpHal: Callback Status is failed!! Timer Expired!! Couldn't read it! 0xff
NxpHal: NCI_CORE_RESET: Failed
NxpTml: PN54X - Write request NOT enabled

Outcomes