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.

Beagleboard XM : SGXInit: Mismatch in client-side and KM driver build options for sgx with X11 build.

HI,

I have problem using SGX with X11 for Beagleboard-XM Rev B. Though SGX with framebuffer works fine, I am able to run the test applications. Below are the steps I am doing,

I am using beaglboard-XM Rev B, with linux kernel version 3.8.13 and yocto dora build. When I build SGX SDK 4.10 without X11, after running pvr init script, the modules will be loaded and I can run the SGX test applications.

But if I build the SGX SDK 4.10with X11, everything builds fine. I am copying the XSGX folder from targetfs folder of the Grapics SDK to /usr/local since I have read in some forums that Xorg driver provided in the targetfs must be used. When I run the pvr init script I get the below log.

X.Org X Server 1.12.0
Release Date: 2012-03-04
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.35-30-generic-pae i686
Current Operating System: Linux beagleboard 3.8.13-yocto-standard #4 Wed Jun 3 18:46:29 IST 2015 armv7l
Kernel command line: console=tty0 console=ttyO2,115200n8 root=/dev/nfs nfsroot=192.168.7.82:/home/megharaj/rootfs/ rootwait rootfstype=ext4 rw
mpurate=auto omapfb.mode=dvi:800x600MR-16@60 omapfb.vram=0:8M,1:4M,2:4M vram=16M optargs=consoleblank=0 mem=55M@0x80000000 mem=256M@0x88000000
ip=dhcp
Build Date: 03 June 2013 08:03:21PM

Current version of pixman: 0.24.4
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/usr/local/XSGX/var/log/Xorg.0.log", Time: Wed Jun 3 14:09:56 2015
(++) Using config file: "/usr/local/XSGX/etc/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(==) ServerLayout "Server Layout"
(**) |-->Screen "Screen" (0)
(**) | |-->Monitor "<default monitor>"
(**) | |-->Device "Video Device"
(==) No monitor specified for screen "Screen".
Using a default monitor configuration.
(**) |-->Input Device "Keyboard"
(**) |-->Input Device "Main Touch Screen"
(==) Not automatically adding devices
(==) Not automatically enabling devices
(WW) The directory "/usr/local/XSGX/share/fonts/X11/TTF/" does not exist.
Entry deleted from font path.
(WW) The directory "/usr/local/XSGX/share/fonts/X11/OTF/" does not exist.
Entry deleted from font path.
(==) FontPath set to:
/usr/local/XSGX/share/fonts/X11/misc/,
/usr/local/XSGX/share/fonts/X11/Type1/,
/usr/local/XSGX/share/fonts/X11/100dpi/,
/usr/local/XSGX/share/fonts/X11/75dpi/
(==) ModulePath set to "/usr/local/XSGX/lib/xorg/modules"
(II) Loading /usr/local/XSGX/lib/xorg/modules/extensions/libextmod.so
(II) Module extmod: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 1.0.0
(II) Loading /usr/local/XSGX/lib/xorg/modules/extensions/libdbe.so
(II) Module dbe: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 1.0.0
(II) Loading /usr/local/XSGX/lib/xorg/modules/extensions/libglx.so
(II) Module glx: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 1.0.0
(==) AIGLX enabled
(II) Loading /usr/local/XSGX/lib/xorg/modules/extensions/librecord.so
(II) Module record: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 1.13.0
(II) Loading /usr/local/XSGX/lib/xorg/modules/extensions/libdri.so
(II) Module dri: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 1.0.0
(II) Loading /usr/local/XSGX/lib/xorg/modules/extensions/libdri2.so
(II) Module dri2: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 1.2.0
(II) Loading /usr/local/XSGX/lib/xorg/modules/pvr_drv.so
pvrsrvkm: Unknown symbol drm_open (err 0)
pvrsrvkm: Unknown symbol drm_fasync (err 0)
pvrsrvkm: Unknown symbol drm_poll (err 0)
pvrsrvkm: Unknown symbol drm_pci_init (err 0)
pvrsrvkm: Unknown symbol drm_pvr_dev_remove (err 0)
pvrsrvkm: Unknown symbol drm_ioctl (err 0)
pvrsrvkm: Unknown symbol drm_pvr_dev_add (err 0)
pvrsrvkm: Unknown symbol drm_mmap (err 0)
pvrsrvkm: Unknown symbol drm_pci_exit (err 0)
pvrsrvkm: Unknown symbol drm_release (err 0)
insmod: ERROR: could not insert module /lib/modules/3.8.13-yocto-standard/kernel/drivers/gpu/pvr/pvrsrvkm.ko: Unknown symbol in module
Could not find pvrsrvkm driver
(II) Module PVR: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 110.235.9475
(II) Loading /usr/local/XSGX/lib/xorg/modules/input/evdev_drv.so
root@beagleboard:~# (II) Module evdev: vendor="X.Org Foundation"
compiled for 1.12.0, module version = 2.6.0
(II) pvr: Driver for PowerVR chipsets: PowerVR SGX
(--) using VT number 3

(WW) xf86OpenConsole: setpgid failed: Operation not permitted
(WW) Falling back to old probe method for pvr
[drm] Initialized drm 1.1.0 20060810
PVR: PVRSRVDrmLoad
PVR: PVRCore_Init
PVR: EnableSystemClocks: Enabling System Clocks
PVR: Setting GPTIMER11 parent to System Clock
PVR: GPTIMER11 clock is 13MHz
PVR: Setting GPTIMER11 mode to posted (currently is non-posted)
omaplfb: Device 0: Framebuffer size: 8388608
omaplfb: Device 0: Framebuffer virtual width: 800
omaplfb: Device 0: Framebuffer virtual height: 1800
omaplfb: Device 0: Framebuffer width: 800
omaplfb: Device 0: Framebuffer height: 600
omaplfb: Device 0: Framebuffer physical address: 0x96000000
omaplfb: Device 0: Framebuffer virtual address: d8871000
omaplfb: Device 0: Framebuffer stride: 1600
omaplfb: Device 0: non-DRM framebuffer
omaplfb: Device 0: LCM of stride and page size: 102400
omaplfb: Device 0: Maximum number of swap chain buffers: 8
omaplfb: Device 0: PVR Device ID: 1
[drm] Initialized pvrsrvkm 1.10.2359475 20110701 for SGX on minor 0
PVR: Installing MISR with cookie bf19b470
PVR: Installing device LISR SGX ISR on IRQ 21 with cookie d7489700
PVR: SysFinalise: Version string: SGX revision = 125
PVR_K: (FAIL) SGXInit: Mismatch in client-side and KM driver build options; extra options present in KM: (0x1). Please check sgx_options.h
PVR_K:(Error): PVRSRVFinaliseSystem: Failed PVRSRVDevInitCompatCheck call (device index: 0) [686, home/megharaj/New-Workspace/new_build/beagleb
oard/tmp/work/beagleboard-poky-linux-gnueabi/omap3-sgx-modules-x11/4.09.00.01-r125d/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/srvkm/common
/pvrsrv.c]
PVR_K:(Error): BridgedDispatchKM: Initialisation failed. Driver unusable. [4607, home/megharaj/New-Workspace/new_build/beagleboard/tmp/work/be
agleboard-poky-linux-gnueabi/omap3-sgx-modules-x11/4.09.00.01-r125d/Graphics_SDK_4_10_00_01/GFX_Linux_KM/services4/srvkm/bridged/bridged_pvr_br
idge.c]
(EE) SrvInit failed (error 26)
(EE) No devices detected.

Fatal server error:
no screens found

Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
Please also check the log file at "/usr/local/XSGX/var/log/Xorg.0.log" for additional information.

Server terminated with error (1). Closing log file.

  • Hi,

    I suspect the root cause for your issue is:
    insmod: ERROR: could not insert module /lib/modules/3.8.13-yocto-standard/kernel/drivers/gpu/pvr/pvrsrvkm.ko: Unknown symbol in module

    Kernel cannot recognize pvr driver and you get the errors that follow:
    PVR_K: (FAIL) SGXInit: Mismatch in client-side and KM driver build options; extra options present in KM: (0x1). Please check sgx_options.h
    PVR_K:(Error): PVRSRVFinaliseSystem: Failed PVRSRVDevInitCompatCheck call (device index: 0) [686, home/megharaj/New-Workspace/new_build/beagleb
    PVR_K:(Error): BridgedDispatchKM: Initialisation failed. Driver unusable. [4607, home/megharaj/New-Workspace/new_build/beagleboard/tmp/work/be
    agleboard-poky-linux-gnueabi/omap3-sgx-modules-x11/4.09.00.01-

    Is the pvrsrvkm.ko built against the kernel version (3.8.13) you use? I suggest rebuilding the PVR driver, with the correct kernel path set in the environment. Then place the pvrsrvkm.ko in /lib/modules/..... and use modeprobe to insert the module manually.

    Hope this helps.
    Best Regards,
    Yordan