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.

AM3358: YOCTO: Graphics Driver fails to load: Mismatch in client-side and KM driver build options

Part Number: AM3358

Tool/software:

I have a custom system-on-module based on the BeagleBone Black.  We are running the Processor SDK 9.01 built with the Yocto Project. Our u-boot and kernel versions are the versions shipped with the Processor SDK Linux 9.01.00.001 release.

I have been attempting to get the graphics demos running on our system, but I am having some trouble getting the graphics coprocessor drivers to load.

Some Yocto-related background:

  • I have gpu in my machine features (machine .conf)
  • opencv, x11 have been removed from the distro features (distro .conf)
  • I have libegl, libgbm, ti-sgx-ddk-km, and ti-sgx-ddk-um added to IMAGE_INSTALL
  • I have tried two packagegroups in an attempt to get something running: 
    • packagegroup-arago-tisdk-matrix
    • packagegroup-arago-tisdk-graphics
  • My image inherits "arago-image-inc"
  • My machine inherits ti33x.inc

Attached to this post is a text file containing:

  • PVR-related Kernel Messages
  • The outputs of the "gfx_check.sh" script

I would like to know:

  1. What packages need to be included to
    1. Run the graphics coprocessor
    2. Load the graphics demos
    3. Run an opengl/SDL2 application utilizing the SGX Coprocessor
  2. What changes need to be made to get the SGX drivers to load successfully

Thank you,

Jeff

video_settings.txt
AM335X Graphics Coprocessor not working:

Kernel Messages:
[   15.324869] PVR: PVRSRVDrmLoad
[   15.370009] PVR: PVRCore_Init
[   15.415503] PVR: SGX register base: 0x56000000
[   15.476170] PVR: SGX register size: 65535
[   15.508103] PVR: SGX IRQ: 63
[   15.528217] PVR: EnableSystemClocks: Enabling System Clocks
[   22.306639] PVR_K: UM DDK-(4948957) and KM DDK-(4948957) match. [ OK ]
[   22.396975] PVR: Installing MISR with cookie 5a8d20cd
[   22.420224] PVR: Installing device LISR SGX ISR on IRQ 63 with cookie 3b3f9de8
[   22.466315] PVR: SysFinalise: Version string: SGX revision = 125
[   22.482170] PVR_K: (FAIL) SGXInit: Mismatch in client-side and KM driver build options.
[   22.495912] PVR_K: Extra options present in KM: (0x1). Please check sgx_options.h
[   22.503972] PVR_K:(Error): PVRSRVFinaliseSystem: Failed PVRSRVDevInitCompatCheck call (device index: 0)
[   22.518485] PVR_K:(Error): BridgedDispatchKM: Initialisation failed.  Driver unusable.


/etc/powervr.ini does not exist

root@m701-dev:~# cat /proc/cpuinfo
processor       : 0
model name      : ARMv7 Processor rev 2 (v7l)
BogoMIPS        : 992.25
Features        : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x3
CPU part        : 0xc08
CPU revision    : 2

Hardware        : Generic AM33XX (Flattened Device Tree)
Revision        : 0000
Serial          : 0000000000000000


root@m701-dev:~# cat /proc/pvr/version
Version SGX_DDK sgxddk 1.17@4948957 (debug) ti335x_linux
System Version String: SGX revision = 125


mode "800x480-0"
        # D: 0.000 MHz, H: 0.000 kHz, V: 0.000 Hz
        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


root@m701-dev:~# lsmod
Module                  Size  Used by
ti_am335x_adc          16384  0
pvrsrvkm              475136  0
relay_control_mod      20480  0
omap_aes_driver        32768  0
omap_crypto            16384  1 omap_aes_driver
libaes                 16384  1 omap_aes_driver
omap_sham              36864  0
pm33xx                 20480  0
crypto_engine          20480  2 omap_aes_driver,omap_sham
ti_emif_sram           16384  1 pm33xx
musb_dsps              24576  0
musb_hdrc             122880  1 musb_dsps
udc_core               36864  1 musb_hdrc
phy_am335x             16384  1
phy_generic            20480  1 phy_am335x
wkup_m3_ipc            20480  1 pm33xx
rtc_omap               20480  4 pm33xx
phy_am335x_control     16384  1 phy_am335x
omap_wdt               16384  0
ti_am335x_tscadc       16384  1 ti_am335x_adc
wkup_m3_rproc          16384  1
sha256_generic         16384  0
libsha256              16384  1 sha256_generic
sha256_arm             24576  0
cfg80211              372736  0
sch_fq_codel           20480  2
cryptodev              45056  0


console=ttyS0,115200n8 root=PARTUUID=1c553955-02 rw rootfstype=ext4 rootwait

Linux m701-dev 6.1.46-g1d4b5da681 #1 PREEMPT Thu Oct 19 10:19:08 UTC 2023 armv7l GNU/Linux