Messages in this thread | | | Date | Thu, 19 Nov 2020 11:33:06 +0000 | From | Marc Zyngier <> | Subject | Re: next/master bisection: baseline.dmesg.emerg on meson-gxbb-p200 |
| |
On 2020-11-19 10:26, Neil Armstrong wrote: > On 19/11/2020 11:20, Marc Zyngier wrote: >> On 2020-11-19 08:50, Guillaume Tucker wrote: >>> Please see the automated bisection report below about some kernel >>> errors on meson-gxbb-p200. >>> >>> Reports aren't automatically sent to the public while we're >>> trialing new bisection features on kernelci.org, however this one >>> looks valid. >>> >>> The bisection started with next-20201118 but the errors are still >>> present in next-20201119. Details for this regression: >>> >>> https://kernelci.org/test/case/id/5fb6196bfd0127fd68d8d902/ >>> >>> The first error is: >>> >>> [ 14.757489] Internal error: synchronous external abort: 96000210 >>> [#1] PREEMPT SMP >> >> Looks like yet another clock ordering setup. I guess different Amlogic >> platforms have slightly different ordering requirements. >> >> Neil, do you have any idea of which platform requires which ordering? >> The variability in DT and platforms is pretty difficult to follow (and >> I don't think I have such board around). > > The requirements should be the same, here the init was done before > calling > dw_hdmi_probe to be sure the clocks and internals resets were > deasserted. > But since you boot from u-boot already enabling these, it's already > active.
The crashing platform also boots with u-boot. What is the difference? No HDMI support?
> The solution would be to revert and do some check in > meson_dw_hdmi_init() to > check if already enabled and do nothing.
It looks more subtle than that, as it also depends on which DT is provided (an early meson_dw_hdmi_init() works with the kernel DT, and breaks with the u-boot DT). So whatever difference is between the two DTs causes havoc. u-boot obviously only uses its own DT, so we are looking at a kernel bug here.
Not having this patch also breaks module reinsertion (HDMI clocks are disabled on unbind), so *something* has to be done late.
So here are my questions: - What breaks in my config when I boot using u-boot's DT? - How to detect early that the registers are clocked or not?
Thanks,
M. -- Jazz is not dead. It just smells funny...
| |