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.

[参考译文] Linux/AM3358:PVR 错误

Guru**** 2546020 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/681029/linux-am3358-pvr-error

器件型号:AM3358

工具/软件:Linux

因此、我尝试使 eglfs 正常工作、但我遇到了问题。 我使用的是最新的 SDK 4.3,我已经编译了 pvrsrvkm 模块。 我可以使用 ins mod 加载它、而不会出现任何问题、但当我尝试启动 PVR 初始化服务器时、我将收到以下错误:

root@AM335x-EVM:~# lsmod
模块 使用的大小
pvrsrvkm 408859 0
TI_EMIF_SRAM 5663 0
TI_AM335x_TSC 5965 0
RTC_OMAP 9662 0
OMA_WDT 4634 0
root@AM335x-EVM:~# pvrsrvctl --start --no-module
PVR:(错误):OpenServices:PVRDRMOpenRender 失败[0、]
PVR:(错误):PVRSRVInitSrvConnect:PVRSRVConnect 失败[0、]
PVR:(错误):SrvInit:PVRSRVInitSrvConnect 失败(4)[0、]
pvrsrvctl:SrvInit 失败(已初始化?) (ERR=PVRSRV_ERROR_INIT_FAILURE)
根目录@AM335x-EVM:~# eglinfo
PVR:(错误):OpenServices:PVRDRMOpenRender 失败[0、]
PVR:(错误):PVRSRVConnect:无法打开连接。 [0、]
PVR:(错误):无法连接到服务[0、]
无法初始化 EGL
EGL 错误'EGL_BAD_ALLOC'(0x3003) 

我在这里错过了什么?

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

    您需要在 Weston 停留。
    root@AM335x-EVM:~#/etc/init.d/weston 停止

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

    我正在使用基本映像、但没有 Weston。 我必须使用基础映像、因为完整映像对于 NAND 而言太大。

    我还使用 ldd 检查了库:

    root@am335x-evm:/usr/bin arm-linux-gnueabihf-ldd --root/pvrsrvctl
    libdrm.so.2 =>/usr/lib/libdrm.so.2 (0xdemf牛肉)
    libm.SO.6 =>/lib/libm.so.6 (0xdemf牛肉)
    libc.so.6 =>/lib/libc.so.6 (0xdeadf牛肉)
    ld-linux-armhf.so.3 =>/lib/ld-linux-armhf.so.3 (0xdeadf牛肉)
    libgbm.SO.2 =>/usr/lib/libgbm.so.2 (0xdemf牛肉)
    libudev.SO.1 =>/lib/libudev.so.1 (0xdul牛肉)
    libcap.so.2 =>/lib/libcap.so.2 (0xdeadf牛肉)
    librt.so.1 =>/lib/librt.so.1 (0xdeadf牛肉)
    libpthread.SO.0 =>/lib/libpthread.so.0 (0xdeadf牛肉)
    libresolv.so.2 =>/lib/libresolv.so.2 (0xdeadf牛肉)
    libgcc_so.1 =>/lib/libgcc_s.so.1 (0xdeadf牛肉)
    libwayland-server.so.0 =>/usr/lib/libwayland-server.so.0 (0xdeadf牛肉)
    libffi.SO.6 =>/usr/lib/libffi.so.6 (0xdeadf牛肉)
    libdrm_omap.so.1 =>/usr/lib/libdrm_omap.so.1 (0xdemf牛肉)
    libsrv_init.so.1 =>/usr/lib/libsrv_init.so.1 (0xdeadf牛肉)
    libsrv_um.so.1 =>/usr/lib/libsrv_um.so.1 (0xdeadf牛肉)
    libdl.so.2 =>/lib/libdl.so.2 (0xdeadferh) 

    我在插入库后进行了 ldconfig。

    和 PVR 库(我是否缺少某些内容?)

    ls libpvr*-la
    lrwxrwxrwx 1 root 根 4月24日16:01 libpvr2d.so -> libpvr2d.so 1.14.3699939
    lrwxrwxrwxrwx 1根 根 4月24日16:01 libpvr2d.so.1 -> libpvr2d.so.1.14.3699939
    -rwxr-xr-x 1 root 根 15828 APR 16 14:01 libpvr2d.so 1.14.3699939
    lrwxrwxrwx 1根 根 4月30日16:52 libpvrDRMWSEGL.SO -> libpvrDRMWSEGL.SO.1.14.3699939
    lrwxrwxrwxrwx 1根 根 4月30日13:52 libpvrDRMWSEGL.SO.1 -> libpvrDRMWSEGL.SO.1.14.3699939
    -rwxr-xr-x 1 root 根 16796年4月16日13:52 libpvrDRMWSEGL.SO.1.14.3699939
    lrwxrwxrwx 1根 根 16年4月30日13:58 libpvrGBMWSEGL.SO -> libpvrGBMWSEGL.SO.1.14.3699939
    lrwxrwxrwx 1根 根 16年4月30日13:58 libpvrGBMWSEGL.SO.1 -> libpvrGBMWSEGL.SO.1.14.3699939
    -rwxr-xr-x 1 root 根 19492年4月16日13:57 libpvrGBMWSEGL.SO.1.14.3699939
    lrwxrwxrwx 1根 根 4月32日16日13:58 libpvrws_WAYLAND.so -> libpvrws_WAYLAND.SO.1.14.3699939
    lrwxrwxrwx 1根 根 32 Apr4 16 13:58 libpvrws_WAYLAND.so.1->libpvrws_WAYLAND.SO.1.14.3699939
    -rwxr-xr-x 1 root 根 12600 4月16日13:58 libpvrws_WAYLAND.SO.1.14.3699939
    
    root@AM335x-EVM:/usr/lib cat /etc/powervr.ini
    [默认]
    WindowSystem=libpvrDRMWSEGL.so
    DefaultPixelFormat=RGB565
    

    最小的工作。

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

    pvrsrvctl --start --no-module 失败,并且它尚未初始化。 什么是 dmesg、"PVR_K:(错误):BridgedDispatchKM:驱动程序初始化尚未完成"或其他内容? 您似乎错误地编译了 pvrsrvkm.ko。 能否布置 modinfo pvrsrvkm 命令的输出并附加 pvrsrvkM.ko

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

    调制信息:

    根目录@AM335x-EVM:/lib/modules/4.9.69-g9ce43c71ae/extra modinfo pvrsrvkm.ko
    文件名: /lib/modules/4.9.69-g9ce43c71ae/extra/pvrsrvkm.ko
    许可证: 两个 MIT/GPL
    作者: Imagination Technologies Ltd. 
    许可证: 两个 MIT/GPL
    作者: Imagination Technologies Ltd. 
    版本: 533BB7E5866E52F63B9ACCB
    别名: 编号:N*T*CTI,dra7-sgx544C*
    别名: 编号:N*T*CTI,dra7-sgx544
    取决于:
    魔法: 4.9.69-g9ce43c71ae 抢占 mod_unload MODVERSIONS ARMv7 p2v8
    参数: gPVRDebugLevel:设置调试输出电平(默认值0x7)(uint) 

    dmesg:

    dmesg | grep -i PVR
    [98.511829] pvrsrvkm:加载树外模块会使内核
    dmesg | grep -i SGX
    [0.000000] AM335X ES2.1 (SGX NEON) 

    e2e.ti.com/.../pvrsrvkm.ko.zip

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

    请参阅:
    别名:of:N*T*CTI,dra7-sgx544C*
    别名:共:N*T*CTI,dra7-sgx544

    您是为 dra7-sgx544而不是 am3352-sgx530构建的。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如何构建正确的版本? 我编译了 ti-SGX-DDK-KM-1.14.369999/Eurasia_km/eurasiacon/build/linux2/omap_linux
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    定义 target_product=ti335x
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢! 现在我可以加载它、并且 eglinfo 也可以工作。