我使用的是 SDK ti-processor-sdk-linux-am335x-evm-03.02.00.05、由于交换了蓝色和红色、因此 Qt 和 eglfs 出现问题。 我已添加到/etc/powervr.ini DefaultPixelFormat=RGB565。 这有助于为 SGX 演示获取正确的颜色、但不会为 eglfs 执行任何操作。
我的 fb 设置正确:
模式"800x480" 槽型800 480 800 480 16. 时序0 0 0 0 0 0 0 0 0 Accel true RGBA 5/11,6/5,5/0.0/0 终端模式
如果我在调试模式下运行 Qt 程序、我将从 EGL 获得错误的屏幕尺寸和颜色深度。 Qrect 从应用程序中打印出来、带有可用的 Geometry、并且是正确的、但深度为32。 另一方面、EGL 调试信息报告其他情况:
已加载模块:GBM_PVR.SO 找到有效的 GBM 后端:GBM_PVR.SO QRect (0、0 800x480) 32 为格式 QSurfaceFormat (2.0版、选项 QFlags()、depthBufferSize 24、redhBufferSize 8、GreenBufferSize 8、 blueBufferSize 8、alpha BufferSize -1、stencilBufferSize 8、samples -1、swapBehavior 2、 swapInterval 1、profile 0)与 config: EGL_buffer_size:32 EGL_alpha_size:8. EGL_blue_size:8. EGL_GREEN 大小:8. EGL_RED_SIZE:8. EGL_DEPTY_SIZE:24 EGL_Stence_size:8. EGL_CONFIG_CAVATE:12344 EGL_CONFIG_ID:14. EGL_LEVEL:0 EGL_MAX_Pbuffer_height:2048 EGL_MAX_pbuffer_pixels:4194304 EGL_MAX_Pbuffer_width:2048 EGL_NATE_RENDERABLE:0 EGL_native_visual:0 EGL_native_visual:0 EGL_Samples:0 EGL_SAMPLE_BUFFERS:0 EGL_surface_type:5. EGL_Transparenty_type:12344 EGL_Transparenty_blue_value:0 EGL_Transparenty_GREEN 值:0 EGL_Transparenty_red_value:0 EGL_bind_TO_纹 理_RGB:0 EGL_BIND_TO_TEST_RGBA:0 EGL_MIN_SWAP_INTERVAL:1. EGL_MAX_SWAP_INTERVAL:1.
如何使用 eglfs 正确获得颜色?
BR
JHi