SPRACZ5 December 2021 DRA821U , DRA821U-Q1 , DRA829J , DRA829J-Q1 , DRA829V , DRA829V-Q1 , TDA4VM , TDA4VM-Q1
This application report is applicable for J7ES/TDA4VM and derivatives. Before reading further, it is important to highlight the difference between TDA4 Silicon Revision 1.1 and 1.0 with regard to thermal sensors:
It is recommended to use Silicon Revision 1.1 for further experiments, however if for some reason you need to use Silicon Revision 1.0, be aware of the Errata i2128 — "VTM: VTM Temperature Monitors (TEMPSENSORs) should Use a Software Trimming Method", details can be found in J721E DRA829/TDA4VM Processors Silicon Revision 1.1/1.0. Based on the silicon revisions the method employed to read on-die temperatures differ.
DIE ID is useful to get the device-specific details, this is used by TI for further analysis. This is one of the first bits of information that need to be collected. Use the following commands from Linux command line to read the DIE ID Registers:
echo `devmem2 0x43000020 w | tail -n1`
echo `devmem2 0x43000024 w | tail -n1`
echo `devmem2 0x43000028 w | tail -n1`
echo `devmem2 0x4300002c w | tail -n1`
CTRLMMR_WKUP_RESET_SRC_STAT Register For Cold boot, the value of this register is 0x0 (1st fresh boot). In the event of TSHUT, then the next boot in Linux:
devmem2 0x43000050 w
Read at address 0x43000050 (0xffff86750050): 0x01000000
So bit24 is set corresponding to THERMAL_RST indicating the reset due to TSHUT.