[Letux-kernel] Pyra display driver once again broken in v5.2-rc1

H. Nikolaus Schaller hns at goldelico.com
Thu May 30 12:34:55 CEST 2019


> Am 29.05.2019 um 11:12 schrieb Tony Lindgren <tony at atomide.com>:
> Hi,
> * H. Nikolaus Schaller <hns at goldelico.com> [190529 08:57]:
>>> [    7.524125] pca953x 4-0022: failed writing register
>>> [    7.529444] pca953x: probe of 4-0022 failed with error -22
> I saw something similar with a BBB cape (early Baylibre
> ACME cape) and it was device_pca95xx_init() somehow trying to
> write to a read-only register causing an error.
> I did not debug further and I do not have it handy, and I
> could not easily figure out what caused the regression..
> But maybe take a look and see if commenting out the register
> write device_pca95xx_init() helps.

I did a quick check and there are significant recent changes

	git diff v4.19 v5.2-rc1 drivers/gpio/gpio-pca953x.c 

even going down to register address calculations. Most changes
were introduced in v5.0 for some regulator handling and wakeup_path,
irq-handling and allowing to define pullup/down (if the gpio
expander chip permits).

Maybe there is a bug that was hidden by something else before v5.2-rc1.

Anyways I seem to have found a recipe to be able to bisect.
The problem is that mainline does not boot and the sets of LetuxOS
patches to make it boot do either apply cleanly for v5.1 or for v5.2-rc1
but not both. Sometimes the compile fails and sometimes the Pyra
does not boot to login and hangs with a kernel panic.

But now I seem to have found a good mix where v5.1 boots and
is good (4-0022 is listed as a gpiochip), while v5.2-rc1 boots
and is bad (4-0022 missing) and intermediate bisect points
seem to compile and boot as well.

Now, ca. 13 rounds of bisect are needed.

BR and thanks,

More information about the Letux-kernel mailing list