On 23/08/2020 23:12, Pavel Machek wrote: > Hi! > >> We can sometimes get bogus thermal shutdowns on omap4430 at least with >> droid4 running idle with a battery charger connected: >> >> thermal thermal_zone0: critical temperature reached (143 C), shutting down >> >> Dumping out the register values shows we can occasionally get a 0x7f value >> that is outside the TRM listed values in the ADC conversion table. And then >> we get a normal value when reading again after that. Reading the register >> multiple times does not seem help avoiding the bogus values as they stay >> until the next sample is ready. >> >> Looking at the TRM chapter "18.4.10.2.3 ADC Codes Versus Temperature", we >> should have values from 13 to 107 listed with a total of 95 values. But >> looking at the omap4430_adc_to_temp array, the values are off, and the >> end values are missing. And it seems that the 4430 ADC table is similar >> to omap3630 rather than omap4460. >> >> Let's fix the issue by using values based on the omap3630 table and just >> ignoring invalid values. Compared to the 4430 TRM, the omap3630 table has >> the missing values added while the TRM table only shows every second >> value. >> >> Note that sometimes the ADC register values within the valid table can >> also be way off for about 1 out of 10 values. But it seems that those >> just show about 25 C too low values rather than too high values. So those >> do not cause a bogus thermal shutdown. > > This does not seem to be in recent -next. Ping? Pong. Going back from vacation. Will be in next very soon. -- <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook | <http://twitter.com/#!/linaroorg> Twitter | <http://www.linaro.org/linaro-blog/> Blog