IMX8QXP - Scarthgap - L 6.6.52-weston 12-ivishell
在更新后的屏幕之前,会先显示彩色/旧屏幕。如何避免/清除/去除它。
weston.ini
[核]
#gbm-format=argb8888
空闲时间=0
shell=ivi-shell.so
# 使用 g2d=1
重绘窗口=16
# 翻页超时=0
背景颜色=0x00000000
[libinput]
touchscreen_calibrator=true
[输出]
名称=LVDS-1
模式=1280x720@60
[ivi-shell]
ivi-shell-user-interface=weston-ivi-shell-user-interface
ivi-input-module=ivi-input-controller.so
ivi-id-agent-module=ivi-id-agent.so
输入方法=ivi-输入控制器
基础层ID=1000
基础层 ID 偏移量=10000
工作区背景图层 ID=2000
工作区图层 ID=3000
应用程序层 ID=4000
过渡持续时间=0
[桌面应用程序默认]
default-surface-id=2000000
default-surface-id-max=2001000
你好,
我试了建议的方法,但问题依旧。彩色/旧式屏幕仍然显示。
还有其他建议或需要配置吗?
谢谢,此致敬礼!
VKS
你好,
请尝试将背景颜色更改为 0x00000000 并取消注释 gbm-format。
您还可以尝试在 Weston systemd 服务中添加一个预启动步骤,以便在 Weston 初始化之前清除显示内容:
echo 1 > /sys/class/graphics/fbx/blank
顺祝商祺!
你好,
谢谢你的更新。
这个问题之前在 weston-imx-10.0.1 版本中已经报告过,并通过以下补丁解决了:
diff --git a/libweston/renderer-g2d/g2d-renderer.c b/libweston/renderer-g2d/g2d-renderer.c
index 245a50de..d9df8b4e 100644
--- a/libweston/renderer-g2d/g2d-renderer.c
+++ b/libweston/renderer-g2d/g2d-renderer.c
@@ -2199,6 +2199,7 @@ drm_create_g2d_image(struct g2d_surfaceEx* g2dSurface,
buffer->buf_vaddr = vaddr;
buffer->buf_size = size;
g2dSurface->base.planes[0] = buffer->buf_paddr;
+ memset(buffer->buf_vaddr, 0x00, size);
g2dSurface->base.left = 0;
g2dSurface->base.top = 0;
g2dSurface->base.right = w;
获取缓冲区时添加 memset,可以在 weston 启动时清除缓冲区。
在最新的 weston-imx-15.0.1 版本中,情况发生了变化,需要一个端口。
内部团队已确认 gl-renderer 不存在此问题,因此,请您帮忙检查一下使用 gl-renderer 是否能避免此问题?(# use-g2d=1)。
另外,请分享您在屏幕上看到的内容,以便我们更好地了解问题所在。
顺祝商祺!
你好,
请查找图片。
是的,使用use-g2d=1 可以避免出现彩色屏幕。但我发现出现了丢帧现象,而且视频也无法播放。
还有一点,如果我使用`use-g2d=1`,这是为了软件加速,对吗?但我们需要硬件加速来避免丢帧。请检查并确认。
谢谢,此致敬礼!
VKS