Part Number: TRF7970A
Hi,
We were having an issue with some of the custom boards that we use TRF7970A and opened a thread in this link before:
By debuggin the driver code at Linux side, we've figure out where the error occurs at the code:
*It reads TR7970A_RSSI_OSC_STATUS and masks 2:0 bits of it to determine is_rf_field is true or false.

In our situation, TR7970A_RSSI_OSC_STATUS is read as 0xFF and first three bit of it results in *is_rf_field = true which causes the problem at 1309 line of the driver code which returns -EBUSY.

In final we were able to solve this issue by removing the read of:
ret = trf7970a_read(trf, TRF7970A_RSSI_OSC_STATUS, &rssi);
And forcing *is_rf_field = false in any case.
Now, we can successfully read tags without any problem. Do you have an idea about why we're getting 0xFF from the read of TRF7970A_RSSI_OSC_STATUS register and how to fix it? We're not sure about removing this lines from the driver, will it cause any fault in our system in the future?
By the way, is this errata relevant for this issue, do we need to modify the driver code according to this errata and how?

 
				 
		 
        		 
					 
                           
				