On 26/04/18 08:52, Linus Walleij wrote:
On Mon, Apr 23, 2018 at 2:04 PM, Robin Murphy <robin.murphy@xxxxxxx> wrote:
I've given this a go on the nearest VExpress (with CA15_A7 tile) and sadly
it doesn't quite work for me :( With the HDLCD driver configure out, the
PL111 driver seems to repeatedly defer somewhere past
pl111_versatile_init():
root@jet-set-radio:~# dmesg | grep -i lcd
[ 2.739358] drm-clcd-pl111 1c1f0000.clcd: sysreg has not yet probed
[ 3.406534] drm-clcd-pl111 1c1f0000.clcd: initializing Versatile Express
PL111
[ 3.428218] drm-clcd-pl111 1c1f0000.clcd: DVI muxed to motherboard CLCD
[ 3.898768] drm-clcd-pl111 1c1f0000.clcd: initializing Versatile Express
PL111
[ 3.920441] drm-clcd-pl111 1c1f0000.clcd: DVI muxed to motherboard CLCD
[ 10.896158] drm-clcd-pl111 1c1f0000.clcd: initializing Versatile Express
PL111
[ 10.917839] drm-clcd-pl111 1c1f0000.clcd: DVI muxed to motherboard CLCD
[ 18.513233] drm-clcd-pl111 1c1f0000.clcd: initializing Versatile Express
PL111
[ 18.535007] drm-clcd-pl111 1c1f0000.clcd: DVI muxed to motherboard CLCD
root@jet-set-radio:~# ls /sys/bus/amba/drivers/drm-clcd-pl111/
bind uevent unbind
There's no obvious indication of what's missing, but it does still manage to
do enough to make the external display come on (still showing the
motherboard PoST screen). By comparison, the old fbdev driver probes OK and
thinks it's set up a 640x480 console but doesn't actually turn the monitor
on (and HDLCD doesn't probe at all due to vexpress-v2p-ca15_a7.dts lacking
any graph endpoint).
Config attached, just in case I'm missing something trivially dumb.
Hm you definately need CONFIG_CMA and CONFIG_DMA_CMA so
the driver actually uses the special memory.
Argh, missing CMA was exactly the kind of idiocy I predicted...
I have all these:
config-drm: config-base
$(CURDIR)/scripts/config --file $(config_file) \
--disable FB_ARMCLCD \
--enable CMA \
--enable CMA_DEBUG \
--enable CMA_DEBUGFS \
--enable DMA_CMA \
--enable DRM \
--enable DRM_PL111 \
--enable FRAMEBUFFER_CONSOLE \
--enable DRM_PANEL \
--enable DRM_PANEL_SIMPLE \
--enable DRM_BRIDGE \
--enable DRM_PANEL_BRIDGE \
--enable DRM_SII902X \
--enable LOGO
Please try with the stuff above, when I switch the mainline platforms
I plan to update the defconfigs with all the above.
...however even ensuring all of the above options I still see the same
behaviour, i.e. the driver fails to bind with no visible reason why.
I dug a little bit and it seems pl111_modeset_init() is deferring
because it can't find endpoint 0. And given that that's apparently
pointing at some non-existent panel rather than the DVI encoder as I
would (naively) expect, I can at least form a self-consistent
explanation and give up on the grounds that I'm probably missing some
important DT changes.
Robin.
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel