Thread (5 messages) 5 messages, 3 authors, 2020-09-30

Re: [PATCH v2] Partially revert "video: fbdev: amba-clcd: Retire elder CLCD driver"

flat view

From: Peter Collingbourne <hidden>
Date: 2020-09-29 21:18:20
Also in: dri-devel

On Tue, Sep 29, 2020 at 1:33 PM Linus Walleij [off-list ref] wrote:
On Tue, Sep 29, 2020 at 9:53 PM Peter Collingbourne [off-list ref] wrote:
quoted
The fbdev driver is used by Android's FVP configuration. Using the
DRM driver together with DRM's fbdev emulation results in a failure
to boot Android. The root cause is that Android's generic fbdev
userspace driver relies on the ability to set the pixel format via
FBIOPUT_VSCREENINFO, which is not supported by fbdev emulation.

There have been other less critical behavioral differences identified
between the fbdev driver and the DRM driver with fbdev emulation. The
DRM driver exposes different values for the panel's width, height and
refresh rate, and the DRM driver fails a FBIOPUT_VSCREENINFO syscall
with yres_virtual greater than the maximum supported value instead
of letting the syscall succeed and setting yres_virtual based on yres.
Is there a way to reproduce this? A simple binary image where
we can start Android on FVP and just replace the kernel image
would be great. That way we can look at the incompatibilities
in the FBDEV emulation and try to fix them.

Is it working with a stock kernel or do you need any out-of-tree
Android patches to run this?

Can you also share the kernel config used for this build so it is
easy to rebuild a similar kernel?
There are instructions here for how to build Android targeting FVP:
https://cs.android.com/android/platform/superproject/+/master:device/generic/goldfish/fvpbase/README.md

It also includes instructions for building the kernel (which is the
Android common kernel so it does have some patches on top, but it does
closely track mainline) so you should be able to make your changes on
top of the common kernel, rebuild and test them that way.

Because of how Android boot images work I don't think it would be easy
to provide binaries where you can replace the kernel image. Let me
know if you have any trouble following the instructions.

The configuration is basically a combination of these two configs:
https://android.googlesource.com/kernel/common/+/refs/heads/android-mainline/arch/arm64/configs/gki_defconfig
https://android-review.googlesource.com/c/kernel/common/+/1145352/11/fvp.fragment

Those configs enable the fbdev driver. You can apply the patch I
posted earlier to fvp.fragment to switch to the DRM driver.

Peter

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help