Is it possible to use a 16-bit display (such as the BeagleBone Black's HDMI) with the am335x-evm-sdk-bin-02.00.01.07, 4.1.13 kernel *AND* accelerated graphics? I am using the am335x-evm-sdk-bin-02.00.01.07.tar.gz downloaded from the TI web site, and the tisdk-rootfs-image-am335x-evm.tar.gz from its filesystems.
The framebuffer still looks to be fine (according to the psplash during boot and shutdown), but anything which uses the new DRM driver (omapdrm_pvr as opposed to the old-style pvrsrvkm and omaplfb modules) in the most recent SDK has a swapped red-blue channels. This affects Qt apps (like the matrix browser) and the Imagination OGLES demos (like OGLES2ChameleonMan, OGLESEvilSkull, OGLESFilmTV, etc.).
I understand the color swap problem is in the processor errata. However, it does not seem to be possible to use 16-bit color whenever running any of these demos or Qt applications on the eglfs platform; the framebuffer is always being set to the XRGB pixel format whenever these demos are run, according to debugfs:
root@am335x-evm:~# cat /sys/kernel/debug/dri/0/fb
fb: 1024x768@XR24
0: offset=0 pitch=4096, obj: 0 ( 3) 00010180 0x9d300000 dd300000 3145728
fb: 1024x768@RG16
0: offset=0 pitch=2048, obj: 0 ( 1) 00010000 0x9d100000 dd100000 1572864
When none of these processes are running, only the RG16 fb is reported.
fbset only reports 16-bit color:
root@am335x-evm:~# fbset
mode "1024x768"
geometry 1024 768 1024 768 16
timings 0 0 0 0 0 0 0
accel true
rgba 5/11,6/5,5/0,0/0
endmode
I have tried adding video=1024x768-16@60 to the bootargs, but this did not make a difference.
modetest is also reporting that only the 24-bit pixel formats are available:
Planes:
id crtc fb CRTC x,y x,y gamma size possible crtcs
17 18 26 0,0 0,0 0 0x00000001
formats: XR24 AR24
WIth the previous SDK release, it was possible to run these demos on the BeagleBone Black HDMI without the red-blue swap. Is this no longer possible with the new SDK? Does the DRM driver not support 16-bit color?