AnsweredAssumed Answered

imx6ull: random crashes when setting REFTOP_SELFBIASOFF

Question asked by Christoph Niedermaier on Jan 30, 2020
Latest reply on Feb 18, 2020 by Christoph Niedermaier

On my custom board based on imx6ull, which has the IMX_THERMAL driver enabled in U-Boot and Linux. We see on Linux boot random crashes (random means not on every boot, also not even the same crash dump/reason in linux). My first suggestion was instable RAM, but RAM seems stable.

 

After some investigations it turned out, that setting the REFTOP_SELFBIASOFF (misspelled in the code: REFTOP_SELBIASOFF) bit in the linux thermal driver seems the problem.

 

I saw that the kernel driver does not check first if REFTOP_VBGUP

is set and added this, but this did not helped.

 

U-Boot does this check here:

  soc.c\mx6\mach-imx\arm\arch - uboot-imx - i.MX U-Boot Line 383

 

More investigations into this problem and we found how U-Boot handles this bit:

 

U-Boot: Sets this bit in  arch_cpu_init()

U-Boot: Sets this bit in IMX_THERMAL driver

U-Boot: Clears this bit in IMX_THERMAL driver

  

If we now remove the clearing of this bit in U-Boot in the thermal driver, we also see no crashes anymore in Linux (more than 12000 power on/off cycles)

 

My questions are now:

 - Does anyone know more about this bit REFTOP_SELFBIASOFF than is described in the RM?

   Or know somebody, who could know it?

 

- What effect has this bit? May it leads in more power consumption?

 

- Is the IMX_TERMAL driver in the U-Boot allowed to reset the bit in this way/context?

 

Thanks in advance!

Outcomes