This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] PROCESSOR-SDK-AM437X:wpe webkit 问题

Guru**** 2358920 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1506703/processor-sdk-am437x-issues-with-wpe-webkit

器件型号:PROCESSOR-SDK-AM437X

工具/软件:

Hello Im、使用 TISDK 09.01.00.001 (2023年10月)

我正在尝试将 wpewebkit 应用程序包含到映像中。   

Im 在启动 COG (网络浏览器)时出现问题。

问题似乎与 PVR 驱动程序有关。  这是日志:

root@am437x-alx:~# cog -P drm http://example.com
MESA: info: Loaded libpvr_dri_support.so

(cog:1115): Cog-DRM-WARNING **: 19:10:30.599: Renderer 'modeset' does not support rotation 0 (0 degrees).

(cog:1115): GLib-GIO-WARNING **: 19:10:30.685: Your application does not implement g_application_activate() and has no handlers connected to the 'activate' signal. It should do one of these.
MESA: info: Loaded libpvr_dri_support.so
Cog-Core-Message: 19:10:31.509: <http://example.com/> Load started.
Cog-Core-Message: 19:10:31.631: <http://example.com/> Loading...
Cog-Core-Message: 19:10:32.404: <http://example.com/> Loaded successfully.
PVR:(Error): PVRDisplayBufferCreateFromFd: Failed to create display buffer from handle (err=22) [0, ]
PVR:(Error): PVRDRIPlaneCreateFromFd: Failed to create display buffer from fd [0, ]
PVR:(Error): PVRDRIBufferCreateFromFds: Failed to create plane from name [0, ]
MESA: error: CreateImageSharedFromDmaBufs: Failed to create buffer for shared image
error in client communication (pid 1115)

在日志中、您可以看到页面已加载、但在呈现时会失败

如果在运行命令之前卸载 pvrsrvkm.ko 驱动程序、它仍然会出现错误、但我认为它默认为软件渲染。

root@am437x-alx:~# modprobe -r pvrsrvkm
root@am437x-alx:~# cog -P drm http://example.com
MESA: info: Loaded libpvr_dri_support.so
PVR:(Error): OpenServices: PVRDRMOpenRender failed [0, ]
PVR:(Error): PVRSRVConnect: Unable to open connection. [0, ]
PVR:(Error): Couldn't connect to services [0, ]
PVR:(Error): PVRDRIEGLGlobalDataInit: PVR Services initialisation failed [0, ]
PVR:(Error): PVRDRICreateScreenImpl: Couldn't create EGL global data [0, ]
MESA: info: Unloaded libpvr_dri_support.so
MESA-LOADER: failed to open zink: /usr/lib/dri/zink_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/dri, suffix _dri)
failed to load driver: zink

(cog:1220): Cog-DRM-WARNING **: 19:13:02.191: Renderer 'modeset' does not support rotation 0 (0 degrees).

(cog:1220): GLib-GIO-WARNING **: 19:13:02.325: Your application does not implement g_application_activate() and has no handlers connected to the 'activate' signal.  It should do one of these.
MESA: info: Loaded libpvr_dri_support.so
PVR:(Error): OpenServices: PVRDRMOpenRender failed [0, ]
PVR:(Error): PVRSRVConnect: Unable to open connection. [0, ]
PVR:(Error): Couldn't connect to services [0, ]
PVR:(Error): PVRDRIEGLGlobalDataInit: PVR Services initialisation failed [0, ]
PVR:(Error): PVRDRICreateScreenImpl: Couldn't create EGL global data [0, ]
MESA: info: Unloaded libpvr_dri_support.so
libEGL warning: egl: failed to create dri2 screen
Cog-Core-Message: 19:13:06.827: <http://example.com/> Load started.
Cog-Core-Message: 19:13:07.009: <http://example.com/> Loading...
Cog-Core-Message: 19:13:07.762: <http://example.com/> Loaded successfully.


类似地、如果我在命令之前导出此变量以强制软件呈现、它将起作用:
导出 LIBGL_ALWAYS_SOFTWARE=1

我将向 wpewebkit 添加 gles2和 EGL 软件包配置(在它未运行之前)。  我找不到任何好的提示的错误消息,我真的不想依赖软件渲染 我会感激你的支持.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我们在 SDK9.1上存在已知问题、您能使用 SDK9.3基准吗? 可以在以下位置找到 GPU 构建说明: https://software-dl.ti.com/processor-sdk-linux/esd/AM335X/09_03_05_02/exports/docs/linux/Foundational_Components graphics/SGX/graphic.html Build_Guide

    此致、
    Krunal

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好克鲁纳尔,只是要清楚的路径:
    a)我是否应该将 bitbake 层设置迁移到 SDK 9.3
    b)即使在迁移和成功构建之后、我是否需要手动构建 SGX 二进制文件并将其附加到映像中?  这些不是仅通过构建映像而生成的吗?

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    如果您  将 bitbake 层迁移到 SDK9.3、它将自动接收新的图形位置。 我分享了构建说明、以防您有自定义配方。

    此致、
    Krunal

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢你 Krunal!! 这确实解决了我的问题、当我升级到9.3并重新尝试使用 wpe webkit 工具(在我的案例上是 cog)时、它就能正常工作、因此 GPU 驱动程序问题至少在该版本上针对我的用例得到解决。

    我只会给未来可能出现类似情况的读者留下评论:  

    这是我使用的命令(请注意、我使用的是 DRM 平台、还需要指定渲染器:

    COG -P DRM www.example.com -O render=gles