I'm using the SDK ti-processor-sdk-linux-am335x-evm-03.02.00.05 and I'm having problem with Qt and eglfs because blue and red are swapped. I have added to /etc/powervr.ini DefaultPixelFormat=RGB565. This helps to get the right colors for the SGX demos but does nothing for the eglfs.
My fb settings are correct:
mode "800x480" geometry 800 480 800 480 16 timings 0 0 0 0 0 0 0 accel true rgba 5/11,6/5,5/0,0/0 endmode
If I run my Qt program in debug mode I'll get wrong screen size and color depth from the EGL. Qrect is printed out from app with availableGeometry and is correct but the depth is 32. EGL debug info on the other hand reports something else:
loaded module : gbm_pvr.so found valid GBM backend : gbm_pvr.so QRect(0,0 800x480) 32 Created context for format QSurfaceFormat(version 2.0, options QFlags(), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior 2, swapInterval 1, profile 0) with config: EGL_BUFFER_SIZE: 32 EGL_ALPHA_SIZE: 8 EGL_BLUE_SIZE: 8 EGL_GREEN_SIZE: 8 EGL_RED_SIZE: 8 EGL_DEPTH_SIZE: 24 EGL_STENCIL_SIZE: 8 EGL_CONFIG_CAVEAT: 12344 EGL_CONFIG_ID: 14 EGL_LEVEL: 0 EGL_MAX_PBUFFER_HEIGHT: 2048 EGL_MAX_PBUFFER_PIXELS: 4194304 EGL_MAX_PBUFFER_WIDTH: 2048 EGL_NATIVE_RENDERABLE: 0 EGL_NATIVE_VISUAL_ID: 0 EGL_NATIVE_VISUAL_TYPE: 0 EGL_SAMPLES: 0 EGL_SAMPLE_BUFFERS: 0 EGL_SURFACE_TYPE: 5 EGL_TRANSPARENT_TYPE: 12344 EGL_TRANSPARENT_BLUE_VALUE: 0 EGL_TRANSPARENT_GREEN_VALUE: 0 EGL_TRANSPARENT_RED_VALUE: 0 EGL_BIND_TO_TEXTURE_RGB: 0 EGL_BIND_TO_TEXTURE_RGBA: 0 EGL_MIN_SWAP_INTERVAL: 1 EGL_MAX_SWAP_INTERVAL: 1
How can I get the colors right with eglfs?
BR
JHi