About xf86-video-armsoc integration

Xinliang Liu xinliang.liu at linaro.org
Tue May 12 05:30:17 PDT 2015


Hello,
Recently, i am working on enabling mali 450 gpu at debian xorg X windows
for hikey board which is one of 96boards <https://www.96boards.org/>.

I first implement xf86-video-armsoc(ver1.1.0) video driver, compile and
cp armsoc_drv.so to directory "/usr/lib/xorg/modules/drivers".
And then compile arm mali r5p0 DDK and cp egl and gles libs(libEGL.so
 libEGL.so.1  libEGL.so.1.4  libGLESv1_CM.so  libGLESv1_CM.so.1
 libGLESv1_CM.so.1.1  libGLESv2.so  libGLESv2.so.2  libGLESv2.so.2.0
 libMali.so) to directory "/usr/lib/aarch64-linux-gnu/" or "/usr/lib".

my xorg.conf is show as bellow:
----------------------------xorg.conf  start--------------------------
cat /etc/X11/xorg.conf
Section "Device"
        Identifier  "Card0"
        Driver      "armsoc"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        DefaultDepth 24
EndSection
----------------------------xorg.conf  end--------------------------
Then i run  startx, i can see the desktop on the monitor.
But i found that the X process doesn't load any EGL and GLES libs by seeing
the info of /proc/X process ID/task/*/smaps file.
And even when i run #es2_info , i get bellow error:
----------------------------es2_info log  start--------------------------
# es2_info
[ 1010.459771] es2_info[1858]: unhandled level 3 translation fault (7) at
0x7f9dbe66b0, esr 0x92000047
[ 1010.468920] pgd = ffffffc03209b000
[ 1010.472324] [7f9dbe66b0] *pgd=000000003aad5003, *pud=000000003aad5003,
*pmd=00000000384ae003, *pte=0000000000000000
[ 1010.482838]
[ 1010.484335] CPU: 2 PID: 1858 Comm: es2_info Tainted: G        W
 3.18.0-linaro-hikey #37
[ 1010.492802] task: ffffffc032b28780 ti: ffffffc0329c0000 task.ti:
ffffffc0329c0000
[ 1010.500322] PC is at 0x7f9dbfd744
[ 1010.503639] LR is at 0x7f9dbecbb0
[ 1010.507000] pc : [<0000007f9dbfd744>] lr : [<0000007f9dbecbb0>] pstate:
20000000
[ 1010.514402] sp : 0000007fffe87800
[ 1010.517764] x29: 0000007fffe87930 x28: 0000007f9dc0f570
[ 1010.523098] x27: 0000007fffe87bb0 x26: 0000007fffe87830
[ 1010.528473] x25: 0000000000000001 x24: 0000007fffe87b70
[ 1010.533806] x23: 0000000000000000 x22: 0000000000000002
[ 1010.539179] x21: 0000000000000006 x20: 0000007f9dc12000
[ 1010.544511] x19: 00000000002c9978 x18: 0000000000000000
[ 1010.549886] x17: 0000007f9dbfa8d0 x16: 0000007f9dc13000
[ 1010.555259] x15: 0000007f9dbfa338 x14: 0000007f9dbfa410
[ 1010.560594] x13: 00000000002ca6af x12: 0000000000007978
[ 1010.565965] x11: 0000007f9d91d000 x10: 0000007fffe87860
[ 1010.571299] x9 : 0000000000000004 x8 : 0000007f9dbe66b0
[ 1010.576672] x7 : 0000000000000000 x6 : 000000000000003f
[ 1010.582006] x5 : 0000000000000040 x4 : 0000000000000010
[ 1010.587382] x3 : 00000000000002b8 x2 : 00000000000002b8
[ 1010.592716] x1 : 0000000000000000 x0 : 0000007f9dbe66b0
[ 1010.598088]
Bus error
---------------------------es2_info log end--------------------------


What's wrong?
Am I missing something on integrating xf86-video-armsoc?
And why X doesn't load any EGL and GLES so libs?
I paste the Xorg.0.log  at the end.
Please tell me if you know what's going wrong, thanks.

Best regards,
-Xinliang Liu



----------------------------Xorg.0.log  start--------------------------
cat /var/log/Xorg.0.log


[    23.704]
X.Org X Server 1.16.4
Release Date: 2014-12-20
[    23.704] X Protocol Version 11, Revision 0
[    23.704] Build Operating System: Linux 3.16.0-4-arm64 aarch64 Debian
[    23.704] Current Operating System: Linux linaro-alip
3.18.0-linaro-hikey #37 SMP PREEMPT Tue May 12 19:01:21 HKT 2015 aarch64
[    23.704] Kernel command line: iommu_ddr_size=0x40000000 console=tty0
console=ttyAMA0,115200n8 loglevel=7 root=/dev/mmcblk0p7 rootwait rw
  mem=908M  boardid=0x48696220,0x00000011,0x0000002b
thermal_trim=0xb6aaaa09 pd_charge=0 boottype=defaultnormal enter_recovery=0
androidboot.swtype=normal fastboot_version= himn
[    23.704] Build Date: 11 February 2015  01:19:23AM
[    23.704] xorg-server 2:1.16.4-1 (http://www.debian.org/support)
[    23.704] Current version of pixman: 0.32.6
[    23.704]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[    23.704] Markers: (--) probed, (**) from config file, (==) default
setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    23.705] (==) Log file: "/var/log/Xorg.0.log", Time: Tue May 12
09:11:51 2015
[    23.705] (==) Using config file: "/etc/X11/xorg.conf"
[    23.705] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[    23.706] (==) No Layout section.  Using the first Screen section.
[    23.706] (**) |-->Screen "Screen0" (0)
[    23.706] (**) |   |-->Monitor "<default monitor>"
[    23.707] (**) |   |-->Device "Card0"
[    23.707] (==) No monitor specified for screen "Screen0".
        Using a default monitor configuration.
[    23.707] (==) Automatically adding devices
[    23.707] (==) Automatically enabling devices
[    23.707] (==) Automatically adding GPU devices
[    23.707] (WW) The directory "/usr/share/fonts/X11/misc" does not exist.
[    23.707]    Entry deleted from font path.
[    23.707] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not
exist.
[    23.707]    Entry deleted from font path.
[    23.707] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not
exist.
[    23.707]    Entry deleted from font path.
[    23.707] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not
exist.
[    23.707]    Entry deleted from font path.
[    23.707] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist.
[    23.707]    Entry deleted from font path.
[    23.707] (WW) The directory "/usr/share/fonts/X11/100dpi" does not
exist.
[    23.707]    Entry deleted from font path.
[    23.707] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[    23.707]    Entry deleted from font path.
[    23.707] (==) FontPath set to:
        built-ins
[    23.707] (==) ModulePath set to "/usr/lib/xorg/modules"
[    23.707] (II) The server relies on udev to provide the list of input
devices.
        If no devices become available, reconfigure udev or disable
AutoAddDevices.
[    23.707] (II) Loader magic: 0x7fa49a7ce8
[    23.707] (II) Module ABI versions:
[    23.707]    X.Org ANSI C Emulation: 0.4
[    23.707]    X.Org Video Driver: 18.0
[    23.708]    X.Org XInput driver : 21.0
[    23.708]    X.Org Server Extension : 8.0
[    23.708] (II) xfree86: Adding drm device (/dev/dri/card0)
[    23.709] (II) no primary bus or device found
[    23.709]    falling back to
/sys/devices/smb/smb:display-subsystem/drm/card0
[    23.709] (II) LoadModule: "glx"
[    23.710] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[    23.717] (II) Module glx: vendor="X.Org Foundation"
[    23.717]    compiled for 1.16.4, module version = 1.0.0
[    23.717]    ABI class: X.Org Server Extension, version 8.0
[    23.717] (==) AIGLX enabled
[    23.718] (II) LoadModule: "armsoc"
[    23.718] (II) Loading /usr/lib/xorg/modules/drivers/armsoc_drv.so
[    23.718] (II) Module armsoc: vendor="X.Org Foundation"
[    23.718]    compiled for 1.16.4, module version = 1.1.0
[    23.718]    Module class: X.Org Video Driver
[    23.718]    ABI class: X.Org Video Driver, version 18.0
[    23.718] (II) ARMSOC: Driver for ARM Mali compatible chipsets
[    23.718] (++) using VT number 7

[    23.719] (WW) Falling back to old probe method for armsoc
[    23.719] (II) No BusID or DriverName specified - opening /dev/dri/card0
[    23.719] (II) Got BusID platform:smb:display-subsystem:00
[    23.719] (II) Opened DRM
[    23.719] (II)    DeviceName is [/dev/dri/card0]
[    23.719] (II)    bus_id is [platform:smb:display-subsystem:00]
[    23.719] (II)    DriverName is [hisi]
[    23.719] (II)    version is [1.0.0]
[    23.719] (II) Screen:0,  CRTC:-1
[    23.720] (II) ARMSOC(0): Creating default Display subsection in Screen
section
        "Screen0" for depth/fbbpp 24/32
[    23.720] (**) ARMSOC(0): Depth 24, (--) framebuffer bpp 32
[    23.720] (==) ARMSOC(0): RGB weight 888
[    23.720] (==) ARMSOC(0): Using gamma correction (1.0, 1.0, 1.0)
[    23.720] (==) ARMSOC(0): Default visual is TrueColor
[    23.720] (II) No BusID or DriverName specified - opening /dev/dri/card0
[    23.720] (II) Got BusID platform:smb:display-subsystem:00
[    23.720] (II) Opened DRM
[    23.720] (II)    DeviceName is [/dev/dri/card0]
[    23.720] (II)    bus_id is [platform:smb:display-subsystem:00]
[    23.720] (II)    DriverName is [hisi]
[    23.720] (II)    version is [1.0.0]
[    23.720] (II) ARMSOC(0): Chipset: Mali
[    23.720] (II) ARMSOC(0): Buffer Flipping is Enabled
[    23.720] (II) ARMSOC(0): Setting the video modes ...
[    23.721] (II) ARMSOC(0): Adding all CRTCs
[    23.721] (II) ARMSOC(0): Got CRTC: 0 (id: 6)
[    23.725] (II) ARMSOC(0): Output HDMI-1 has no monitor section
[    23.730] (II) ARMSOC(0): Printing probed modes for output HDMI-1
[    23.730] (II) ARMSOC(0): Modeline "1280x720"x60.6   75.00  1280 1500
1540 1650  720 740 745 750 -hsync -vsync (45.5 kHz e)
[    23.730] (II) ARMSOC(0): Output HDMI-1 connected
[    23.730] (II) ARMSOC(0): Using sloppy heuristic for initial modes
[    23.730] (II) ARMSOC(0): Output HDMI-1 using initial mode 1280x720
[    23.730] (II) ARMSOC(0): Got KMS resources
[    23.730] (==) ARMSOC(0): DPI set to (96, 96)
[    23.730] (II) Loading sub module "dri2"
[    23.730] (II) LoadModule: "dri2"
[    23.730] (II) Module "dri2" already built-in
[    23.730] (II) Loading sub module "exa"
[    23.730] (II) LoadModule: "exa"
[    23.731] (II) Loading /usr/lib/xorg/modules/libexa.so
[    23.731] (II) Module exa: vendor="X.Org Foundation"
[    23.731]    compiled for 1.16.4, module version = 2.6.0
[    23.731]    ABI class: X.Org Video Driver, version 18.0
[    23.731] (II) Loading sub module "fb"
[    23.731] (II) LoadModule: "fb"
[    23.732] (II) Loading /usr/lib/xorg/modules/libfb.so
[    23.732] (II) Module fb: vendor="X.Org Foundation"
[    23.732]    compiled for 1.16.4, module version = 1.0.0
[    23.732]    ABI class: X.Org ANSI C Emulation, version 0.4
[    23.732] (--) Depth 24 pixmap format is 32 bpp
[    23.734] (II) ARMSOC(0): Soft EXA mode
[    23.734] (II) EXA(0): Driver allocated offscreen pixmaps
[    23.735] (II) EXA(0): Driver registered support for the following
operations:
[    23.735] (II)         Solid
[    23.735] (II)         Copy
[    23.735] (II)         Composite (RENDER acceleration)
[    23.735] (II) ARMSOC(0): Setting swap chain size: 2
[    23.735] (II) ARMSOC(0): [DRI2] Setup complete
[    23.735] (II) ARMSOC(0): [DRI2]   DRI driver: armsoc
[    23.735] (==) ARMSOC(0): Backing store enabled
[    23.735] (==) ARMSOC(0): Silken mouse enabled
[    23.735] (II) ARMSOC(0): HW cursor init()
[    23.735] (II) ARMSOC(0): HW cursor initialized
[    23.763] (II) ARMSOC(0): RandR 1.2 enabled, ignore the following RandR
disabled message.
[    23.764] (==) ARMSOC(0): DPMS enabled
[    23.764] (--) RandR disabled
[    23.790] (II) SELinux: Disabled on system
[    23.793] (EE) AIGLX error: dlopen of
/usr/lib/aarch64-linux-gnu/dri/armsoc_dri.so failed
(/usr/lib/aarch64-linux-gnu/dri/armsoc_dri.so: cannot open shared object
file: No su)
[    23.793] (EE) AIGLX: reverting to software rendering
[    23.793] (EE) AIGLX error: dlopen of
/usr/lib/aarch64-linux-gnu/dri/swrast_dri.so failed
(/usr/lib/aarch64-linux-gnu/dri/swrast_dri.so: cannot open shared object
file: No su)
[    23.793] (EE) GLX: could not load software renderer
[    23.793] (II) GLX: no usable GL providers found for screen 0
[    23.793] (II) ARMSOC(0): Setting screen physical size to 338 x 190
[    23.880] (II) config/udev: Adding input device USB OPTICAL MOUSE
 (/dev/input/event0)
[    23.880] (**) USB OPTICAL MOUSE : Applying InputClass "evdev pointer
catchall"
[    23.880] (II) LoadModule: "evdev"
[    23.881] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[    23.882] (II) Module evdev: vendor="X.Org Foundation"
[    23.882]    compiled for 1.16.0, module version = 2.9.0
[    23.882]    Module class: X.Org XInput Driver
[    23.882]    ABI class: X.Org XInput driver, version 21.0
[    23.882] (II) Using input driver 'evdev' for 'USB OPTICAL MOUSE '
[    23.882] (**) USB OPTICAL MOUSE : always reports core events
[    23.882] (**) evdev: USB OPTICAL MOUSE : Device: "/dev/input/event0"
[    23.882] (--) evdev: USB OPTICAL MOUSE : Vendor 0x101 Product 0x7
[    23.882] (--) evdev: USB OPTICAL MOUSE : Found 9 mouse buttons
[    23.883] (--) evdev: USB OPTICAL MOUSE : Found scroll wheel(s)
[    23.883] (--) evdev: USB OPTICAL MOUSE : Found relative axes
[    23.883] (--) evdev: USB OPTICAL MOUSE : Found x and y relative axes
[    23.883] (II) evdev: USB OPTICAL MOUSE : Configuring as mouse
[    23.883] (II) evdev: USB OPTICAL MOUSE : Adding scrollwheel support
[    23.883] (**) evdev: USB OPTICAL MOUSE : YAxisMapping: buttons 4 and 5
[    23.883] (**) evdev: USB OPTICAL MOUSE : EmulateWheelButton: 4,
EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[    23.883] (**) Option "config_info"
"udev:/sys/devices/f72c0000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:0101:0007.0001/input/input0/event0"
[    23.883] (II) XINPUT: Adding extended input device "USB OPTICAL MOUSE "
(type: MOUSE, id 6)
[    23.883] (II) evdev: USB OPTICAL MOUSE : initialized for relative axes.
[    23.884] (**) USB OPTICAL MOUSE : (accel) keeping acceleration scheme 1
[    23.884] (**) USB OPTICAL MOUSE : (accel) acceleration profile 0
[    23.884] (**) USB OPTICAL MOUSE : (accel) acceleration factor: 2.000
[    23.884] (**) USB OPTICAL MOUSE : (accel) acceleration threshold: 4
[    23.885] (II) config/udev: Adding input device USB OPTICAL MOUSE
 (/dev/input/mouse0)
[    23.885] (II) No input driver specified, ignoring this device.
[    23.885] (II) This device may have been added with another device file.
[    23.886] (II) config/udev: Adding input device SIGMACHIP USB Keyboard
(/dev/input/event1)
[    23.886] (**) SIGMACHIP USB Keyboard: Applying InputClass "evdev
keyboard catchall"
[    23.886] (II) Using input driver 'evdev' for 'SIGMACHIP USB Keyboard'
[    23.886] (**) SIGMACHIP USB Keyboard: always reports core events
[    23.886] (**) evdev: SIGMACHIP USB Keyboard: Device: "/dev/input/event1"
[    23.886] (--) evdev: SIGMACHIP USB Keyboard: Vendor 0x1c4f Product 0x2
[    23.886] (--) evdev: SIGMACHIP USB Keyboard: Found keys
[    23.886] (II) evdev: SIGMACHIP USB Keyboard: Configuring as keyboard
[    23.887] (**) Option "config_info"
"udev:/sys/devices/f72c0000.usb/usb1/1-1/1-1.2/1-1.2:1.0/0003:1C4F:0002.0002/input/input1/event1"
[    23.887] (II) XINPUT: Adding extended input device "SIGMACHIP USB
Keyboard" (type: KEYBOARD, id 7)
[    23.887] (**) Option "xkb_rules" "evdev"
[    23.887] (**) Option "xkb_model" "pc105"
[    23.887] (**) Option "xkb_layout" "us"
[    23.889] (II) config/udev: Adding input device SIGMACHIP USB Keyboard
(/dev/input/event2)
[    23.889] (**) SIGMACHIP USB Keyboard: Applying InputClass "evdev
keyboard catchall"
[    23.889] (II) Using input driver 'evdev' for 'SIGMACHIP USB Keyboard'
[    23.889] (**) SIGMACHIP USB Keyboard: always reports core events
[    23.889] (**) evdev: SIGMACHIP USB Keyboard: Device: "/dev/input/event2"
[    23.889] (--) evdev: SIGMACHIP USB Keyboard: Vendor 0x1c4f Product 0x2
[    23.889] (--) evdev: SIGMACHIP USB Keyboard: Found 1 mouse buttons
[    23.889] (--) evdev: SIGMACHIP USB Keyboard: Found scroll wheel(s)
[    23.889] (--) evdev: SIGMACHIP USB Keyboard: Found relative axes
[    23.889] (II) evdev: SIGMACHIP USB Keyboard: Forcing relative x/y axes
to exist.
[    23.889] (--) evdev: SIGMACHIP USB Keyboard: Found absolute axes
[    23.889] (II) evdev: SIGMACHIP USB Keyboard: Forcing absolute x/y axes
to exist.
[    23.889] (--) evdev: SIGMACHIP USB Keyboard: Found keys
[    23.889] (II) evdev: SIGMACHIP USB Keyboard: Configuring as mouse
[    23.889] (II) evdev: SIGMACHIP USB Keyboard: Configuring as keyboard
[    23.889] (II) evdev: SIGMACHIP USB Keyboard: Adding scrollwheel support
[    23.889] (**) evdev: SIGMACHIP USB Keyboard: YAxisMapping: buttons 4
and 5
[    23.889] (**) evdev: SIGMACHIP USB Keyboard: EmulateWheelButton: 4,
EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[    23.890] (**) Option "config_info"
"udev:/sys/devices/f72c0000.usb/usb1/1-1/1-1.2/1-1.2:1.1/0003:1C4F:0002.0003/input/input2/event2"
[    23.890] (II) XINPUT: Adding extended input device "SIGMACHIP USB
Keyboard" (type: KEYBOARD, id 8)
[    23.890] (**) Option "xkb_rules" "evdev"
[    23.890] (**) Option "xkb_model" "pc105"
[    23.890] (**) Option "xkb_layout" "us"
[    23.890] (II) evdev: SIGMACHIP USB Keyboard: initialized for relative
axes.
[    23.890] (WW) evdev: SIGMACHIP USB Keyboard: ignoring absolute axes.
[    23.891] (**) SIGMACHIP USB Keyboard: (accel) keeping acceleration
scheme 1
[    23.891] (**) SIGMACHIP USB Keyboard: (accel) acceleration profile 0
[    23.891] (**) SIGMACHIP USB Keyboard: (accel) acceleration factor: 2.000
[    23.891] (**) SIGMACHIP USB Keyboard: (accel) acceleration threshold: 4
[    24.324] (II) evdev: SIGMACHIP USB Keyboard: Close
[    24.325] (II) UnloadModule: "evdev"
[    24.325] (II) evdev: SIGMACHIP USB Keyboard: Close
[    24.326] (II) UnloadModule: "evdev"
[    24.326] (II) evdev: USB OPTICAL MOUSE : Close
[    24.326] (II) UnloadModule: "evdev"
[    24.332] (EE) Server terminated successfully (0). Closing log file.
----------------------------Xorg.0.log  end---------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg-devel/attachments/20150512/3322e305/attachment-0001.html>


More information about the xorg-devel mailing list