UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor ste2108
Visitor
682 Views
Registered: ‎07-31-2019

DisplayPort output from Zynq UltraScale+

Jump to solution

Hello,

In my project I need to run Linux on a Zynq Ultrascale+ CG (without the Mali graphics processor) which is part of a non-Xlilinx evaluation board. The board manufacturer provides his own Linux version which correctly boots from SD card, but which is unsatisfactory cause we would like to install (tons of) third-party applications, for which a packet manager is highly desired. The person who handed over the project to me made his own Linux version with a Debian rootfs and a Petalinux kernel, that allows me to apt-get what I need in my design.

I am presently struggling with obtaining an output from the DisplayPort of the board, which is connected to the MPSoC (I am reasonably sure that the DP is correctly enabled in the hardware project). If I launch the startx command I get:

X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.9.0-8-arm64 aarch64 Debian
Current Operating System: Linux digitizer 4.14.0-gbe1f9e39d #1 SMP Mon Dec 2 12:12:03 CET 2019 aarch64
Kernel command line: console=ttyPS0,115200 rw earlyprintk rootwait root=/dev/mmcblk1p2
Build Date: 05 March 2019 08:11:12PM
xorg-server 2:1.20.4-1 (https://www.debian.org/support)
Current version of pixman: 0.36.0
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: "/var/log/Xorg.0.log", Time: Tue Dec 10 11:16:35 2019
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
gbm: failed to open any driver (search paths /usr/lib/aarch64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri)
gbm: Last dlopen error: /usr/lib/dri/xlnx_dri.so: cannot open shared object file: No such file or directory
failed to load driver: xlnx

(II) modeset(0): Initializing kms color map for depth 24, 8 bpc.
(EE)
(EE) Backtrace:
(EE) 0: /usr/lib/xorg/Xorg (OsLookupColor+0x1a8) [0x5590b511a8]
(EE) unw_get_proc_info failed: no unwind info found [-10]
(EE)
(EE) Segmentation fault at address 0x8
(EE)
Fatal server error:
(EE) Caught signal 11 (Segmentation fault). Server aborting
(EE)
(EE)

.......

i.e. the system is apparently missing the Xilinx driver. Is there an easy way to add them? Is it enough to add some packet, or should I recompile linux kernel with some more options enabled?

Ona  partially unrelated question, does the fact that we have a CG version of the Ultrascale, i.e. the one without the Mali processor, will give us a hard time using a desktop? I have read comments in which people complained about the very low fps with this solution. 

Thanks,

Stefano

0 Kudos
1 Solution

Accepted Solutions
Participant kawazome
Participant
399 Views
Registered: ‎04-02-2014

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

I made X-Window Server Debian Package that supports ZynqMP DRM. Download from the following GitHub repository:

https://github.com/ikwzm/ZynqMP-FPGA-Xserver

X-Windows Server Debian Package is xserver-xorg-video-armsoc-xilinx_1.4-1_arm64.deb

 

shell# dpkg -i xserver-xorg-video-armsoc-xilinx_1.4-1_arm64.deb 
Selecting previously unselected package xserver-xorg-video-armsoc-xilinx.
(Reading database ... 66577 files and directories currently installed.)
Preparing to unpack xserver-xorg-video-armsoc-xilinx_1.4-1_arm64.deb ...
Unpacking xserver-xorg-video-armsoc-xilinx (1.4-1) ...
Setting up xserver-xorg-video-armsoc-xilinx (1.4-1) ...
Processing triggers for man-db (2.8.5-2) ...

 

Add the following description to ”/etc/X11/xorg.conf”

Section "Device"

	Identifier	"ZynqMP"
	Driver		"armsoc"
	Option		"DRI2"			"true"
	Option		"DRI2_PAGE_FLIP"	"false"
	Option		"DRI2_WAIT_VSYNC"	"true"
	Option		"DEBUG"			"true"
EndSection

Section "Screen"
	Identifier	"DefaultScreen"
	Device		"ZynqMP"
EndSection

 

Supplement:

X-Window works with the above method.

However, when rendering using a GPU, you need to install additional packages.

https://github.com/ikwzm/ZynqMP-FPGA-Xserver also has Debian Package for GPU (Mali-400). This package requires complex steps to install. The Kernel Module also needs to be recompiled for your Linux.

View solution in original post

9 Replies
Moderator
Moderator
655 Views
Registered: ‎11-09-2015

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

Hi @ste2108 

Where do you get the kernel source from? You should use the sources from the Xilinx repo:

https://github.com/Xilinx/linux-xlnx

This should have the necessary packets.


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
Visitor ste2108
Visitor
604 Views
Registered: ‎07-31-2019

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

Dear Florent,

Many thanks for your reply. I am actually using a graphics interface from the board producer (Enclustra) that allows to compile the kernel and create the bootloader according to the required hardware configuration (and which is based of course on the Xilinx linux when the Xilinx hw is selected). I have found and activated the option for the Xilinx drivers and I am regenerating the files, will know if this solves the problem this afternoon.

Meanwhile, can you tell me something about desktop performances with a non-EG (i.e. without the Mali) FPGA? Will the desktop environment be handled well by a CG device, or could it be too slow?

Regards,

Stefano

0 Kudos
Moderator
Moderator
593 Views
Registered: ‎11-09-2015

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

@ste2108 wrote:

 

Meanwhile, can you tell me something about desktop performances with a non-EG (i.e. without the Mali) FPGA? Will the desktop environment be handled well by a CG device, or could it be too slow?


It depends what you are trying to do. It should be possble to have a desktop without the GPU. But yes, it will probably be slower without a GPU.


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
Highlighted
Participant kawazome
Participant
567 Views
Registered: ‎04-02-2014

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

If you want to use X-Window easily, you should use Frame Buffer Device. Prepare the following xorg.conf in /etc/X11.

Section "Device"
        Identifier      "ZynqMP"
        Driver          "fbdev"
        Option          "DRI2"                  "true"
        Option          "DRI2_PAGE_FLIP"        "false"
        Option          "DRI2_WAIT_VSYNC"       "true"
        Option          "SWcursorLCD"           "false"
        Option          "DEBUG"                 "true"
EndSection

Section "Screen"
        Identifier      "DefaultScreen"
        Device          "ZynqMP"
        DefaultDepth    16
EndSection

However, Frame Buffer Device is slow because it does not use GPU (Mari).

Visitor ste2108
Visitor
542 Views
Registered: ‎07-31-2019

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

Dear @kawazome @florentw,

Many thanks for your reply. Once I set xorg.conf the way kawazone said and use modetest as a test:

modetest -M xlnx -s 38:1024x768@RG16

I can actually see the related test onscreen from the DiaplayPort. However if I start the X server with startx I get:

X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.9.0-8-arm64 aarch64 Debian
Current Operating System: Linux digitizer 4.14.0-gbe1f9e39d #1 SMP Mon Dec 2 12:12:03 CET 2019 aarch64
Kernel command line: console=ttyPS0,115200 rw earlyprintk rootwait root=/dev/mmcblk1p2
Build Date: 05 March 2019 08:11:12PM
xorg-server 2:1.20.4-1 (https://www.debian.org/support)
Current version of pixman: 0.36.0
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: "/var/log/Xorg.1.log", Time: Thu Dec 12 12:09:37 2019
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
fbdev: PreInit done
fbdev: FBDevScreenInit 0
fbdev: FBDevScreenInit done

and a black screen. Should I somehow configure the X server?

Kind regards,

Stefano

0 Kudos
Participant kawazome
Participant
529 Views
Registered: ‎04-02-2014

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

uum... I am running X-Windows with Ultra96V2 (ZynqMP) + Debian10 + Linux-xlnx-v2019.1. It works fine in my environment. In my case, X-Window sometimes remained black screen due to compatibility between Display and HDMI Adapter. It worked fine on another Display.

In my case /var/log/Xorg.0.log looks like this:

[ 25766.226]
X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
[ 25766.226] Build Operating System: Linux 4.9.0-8-arm64 aarch64 Debian
[ 25766.226] Current Operating System: Linux debian-fpga 4.19.0-xlnx-v2019.1-zynqmp-fpga #4 SMP Sun Aug 18 22:35:16 DST 2019 aarch64
[ 25766.226] Kernel command line: console=ttyPS0,115200 root=/dev/mmcblk0p2 rw rootwait uio_pdrv_genirq.of_id=generic-uio cpuidle.off=1
[ 25766.227] Build Date: 05 March 2019  08:11:12PM
[ 25766.227] xorg-server 2:1.20.4-1 (https://www.debian.org/support)
[ 25766.227] Current version of pixman: 0.36.0
[ 25766.227]    Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
[ 25766.227] Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 25766.228] (==) Log file: "/var/log/Xorg.0.log", Time: Thu Dec 12 22:11:58 2019
[ 25766.228] (==) Using config file: "/etc/X11/xorg.conf"
[ 25766.228] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 25766.229] (==) No Layout section.  Using the first Screen section.
[ 25766.229] (**) |-->Screen "DefaultScreen" (0)
[ 25766.229] (**) |   |-->Monitor "<default monitor>"
[ 25766.230] (**) |   |-->Device "ZynqMP"
[ 25766.230] (==) No monitor specified for screen "DefaultScreen".
        Using a default monitor configuration.
[ 25766.230] (==) Automatically adding devices
[ 25766.230] (==) Automatically enabling devices
[ 25766.230] (==) Automatically adding GPU devices
[ 25766.230] (==) Max clients allowed: 256, resource mask: 0x1fffff
[ 25766.230] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 25766.230]    Entry deleted from font path.
[ 25766.230] (==) FontPath set to:
        /usr/share/fonts/X11/misc,
        /usr/share/fonts/X11/100dpi/:unscaled,
        /usr/share/fonts/X11/75dpi/:unscaled,
        /usr/share/fonts/X11/Type1,
        /usr/share/fonts/X11/100dpi,
        /usr/share/fonts/X11/75dpi,
        built-ins
[ 25766.230] (==) ModulePath set to "/usr/lib/xorg/modules"
[ 25766.230] (II) The server relies on udev to provide the list of input devices.
        If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 25766.230] (II) Loader magic: 0x557c9b6e08
[ 25766.230] (II) Module ABI versions:
[ 25766.230]    X.Org ANSI C Emulation: 0.4
[ 25766.230]    X.Org Video Driver: 24.0
[ 25766.230]    X.Org XInput driver : 24.1
[ 25766.230]    X.Org Server Extension : 10.0
[ 25766.232] (++) using VT number 1

[ 25766.236] (II) systemd-logind: took control of session /org/freedesktop/login1/session/_314
[ 25766.237] (II) xfree86: Adding drm device (/dev/dri/card0)
[ 25766.239] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 11 paused 0
[ 25766.239] (II) no primary bus or device found
[ 25766.239]    falling back to /sys/devices/platform/amba/fd4a0000.zynqmp-display/drm/card0
[ 25766.239] (II) LoadModule: "glx"
[ 25766.240] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 25766.243] (II) Module glx: vendor="X.Org Foundation"
[ 25766.244]    compiled for 1.20.4, module version = 1.0.0
[ 25766.244]    ABI class: X.Org Server Extension, version 10.0
[ 25766.244] (II) LoadModule: "fbdev"
[ 25766.244] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 25766.244] (II) Module fbdev: vendor="X.Org Foundation"
[ 25766.244]    compiled for 1.20.0, module version = 0.5.0
[ 25766.244]    Module class: X.Org Video Driver
[ 25766.244]    ABI class: X.Org Video Driver, version 24.0
[ 25766.244] (II) FBDEV: driver for framebuffer: fbdev
[ 25766.245] (WW) Falling back to old probe method for fbdev
[ 25766.245] (II) Loading sub module "fbdevhw"
[ 25766.245] (II) LoadModule: "fbdevhw"
[ 25766.245] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 25766.245] (II) Module fbdevhw: vendor="X.Org Foundation"
[ 25766.245]    compiled for 1.20.4, module version = 0.0.2
[ 25766.245]    ABI class: X.Org Video Driver, version 24.0
[ 25766.245] (II) FBDEV(0): using default device
[ 25766.245] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[ 25766.245] (II) FBDEV(0): Creating default Display subsection in Screen section
        "DefaultScreen" for depth/fbbpp 16/16
[ 25766.246] (**) FBDEV(0): Depth 16, (--) framebuffer bpp 16
[ 25766.246] (==) FBDEV(0): RGB weight 565
[ 25766.246] (==) FBDEV(0): Default visual is TrueColor
[ 25766.246] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[ 25766.246] (II) FBDEV(0): hardware:  (video memory: 8100kB)
[ 25766.246] (DB) xf86MergeOutputClassOptions unsupported bus type 0
[ 25766.246] (**) FBDEV(0): Option "debug" "true"
[ 25766.246] (II) FBDEV(0): checking modes against framebuffer device...
[ 25766.246] (II) FBDEV(0): checking modes against monitor...
[ 25766.246] (II) FBDEV(0): Virtual size is 1920x1080 (pitch 1920)
[ 25766.246] (**) FBDEV(0):  Built-in mode "current"
[ 25766.246] (==) FBDEV(0): DPI set to (96, 96)
[ 25766.246] (II) Loading sub module "fb"
[ 25766.246] (II) LoadModule: "fb"
[ 25766.246] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 25766.246] (II) Module fb: vendor="X.Org Foundation"
[ 25766.246]    compiled for 1.20.4, module version = 1.0.0
[ 25766.246]    ABI class: X.Org ANSI C Emulation, version 0.4
[ 25766.246] (**) FBDEV(0): using shadow framebuffer
[ 25766.247] (II) Loading sub module "shadow"
[ 25766.247] (II) LoadModule: "shadow"
[ 25766.247] (II) Loading /usr/lib/xorg/modules/libshadow.so
[ 25766.247] (II) Module shadow: vendor="X.Org Foundation"
[ 25766.247]    compiled for 1.20.4, module version = 1.1.0
[ 25766.247]    ABI class: X.Org ANSI C Emulation, version 0.4
[ 25766.247] fbdev: PreInit done
[ 25766.247] fbdev: FBDevScreenInit 0
[ 25766.248] (==) FBDEV(0): Backing store enabled
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.248] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.249] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (EE) FBDEV(0): FBIOPUTCMAP: Device or resource busy
[ 25766.250] (==) FBDEV(0): DPMS enabled
[ 25766.250] fbdev: FBDevScreenInit done
[ 25766.250] (II) Initializing extension Generic Event Extension
[ 25766.250] (II) Initializing extension SHAPE
[ 25766.251] (II) Initializing extension MIT-SHM
[ 25766.252] (II) Initializing extension XInputExtension
[ 25766.252] (II) Initializing extension XTEST
[ 25766.253] (II) Initializing extension BIG-REQUESTS
[ 25766.253] (II) Initializing extension SYNC
[ 25766.254] (II) Initializing extension XKEYBOARD
[ 25766.255] (II) Initializing extension XC-MISC
[ 25766.255] (II) Initializing extension SECURITY
[ 25766.256] (II) Initializing extension XFIXES
[ 25766.256] (II) Initializing extension RENDER
[ 25766.257] (II) Initializing extension RANDR
[ 25766.258] (II) Initializing extension COMPOSITE
[ 25766.259] (II) Initializing extension DAMAGE
[ 25766.259] (II) Initializing extension MIT-SCREEN-SAVER
[ 25766.260] (II) Initializing extension DOUBLE-BUFFER
[ 25766.260] (II) Initializing extension RECORD
[ 25766.261] (II) Initializing extension DPMS
[ 25766.261] (II) Initializing extension Present
[ 25766.262] (II) Initializing extension DRI3
[ 25766.262] (II) Initializing extension X-Resource
[ 25766.263] (II) Initializing extension XVideo
[ 25766.263] (II) Initializing extension XVideo-MotionCompensation
[ 25766.263] (II) Initializing extension SELinux
[ 25766.263] (II) SELinux: Disabled on system
[ 25766.263] (II) Initializing extension GLX
[ 25766.264] (II) AIGLX: Screen 0 is not DRI2 capable
[ 25766.381] (II) IGLX: Loaded and initialized swrast
[ 25766.381] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[ 25766.381] (II) Initializing extension XFree86-VidModeExtension
[ 25766.382] (II) Initializing extension XFree86-DGA
[ 25766.383] (II) Initializing extension XFree86-DRI
[ 25766.383] (II) Initializing extension DRI2
[ 25766.675] (II) config/udev: Adding input device Topre Corporation HHKB Professional (/dev/input/event1)
[ 25766.676] (**) Topre Corporation HHKB Professional: Applying InputClass "libinput keyboard catchall"
[ 25766.676] (II) LoadModule: "libinput"
[ 25766.676] (II) Loading /usr/lib/xorg/modules/input/libinput_drv.so
[ 25766.691] (II) Module libinput: vendor="X.Org Foundation"
[ 25766.691]    compiled for 1.20.4, module version = 0.28.2
[ 25766.692]    Module class: X.Org XInput Driver
[ 25766.692]    ABI class: X.Org XInput driver, version 24.1
[ 25766.692] (II) Using input driver 'libinput' for 'Topre Corporation HHKB Professional'
[ 25766.695] (II) systemd-logind: got fd for /dev/input/event1 13:65 fd 19 paused 0
[ 25766.695] (**) Topre Corporation HHKB Professional: always reports core events
[ 25766.695] (**) Option "Device" "/dev/input/event1"
[ 25766.695] (**) Option "_source" "server/udev"
[ 25766.705] (II) event1  - Topre Corporation HHKB Professional: is tagged by udev as: Keyboard
[ 25766.705] (II) event1  - Topre Corporation HHKB Professional: device is a keyboard
[ 25766.706] (II) event1  - Topre Corporation HHKB Professional: device removed
[ 25766.706] (**) Option "config_info" "udev:/sys/devices/platform/amba/ff9e0000.usb1/fe300000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1.2/1-1.2.1/1-1.2.1:1.0/0003:0853:0100.0001/input/input1/event1"
[ 25766.706] (II) XINPUT: Adding extended input device "Topre Corporation HHKB Professional" (type: KEYBOARD, id 6)
[ 25766.706] (**) Option "xkb_model" "pc105"
[ 25766.706] (**) Option "xkb_layout" "us"
[ 25766.713] (II) event1  - Topre Corporation HHKB Professional: is tagged by udev as: Keyboard
[ 25766.714] (II) event1  - Topre Corporation HHKB Professional: device is a keyboard
[ 25766.718] (II) config/udev: Adding input device PixArt USB Optical Mouse (/dev/input/event2)
[ 25766.718] (**) PixArt USB Optical Mouse: Applying InputClass "libinput pointer catchall"
[ 25766.718] (II) Using input driver 'libinput' for 'PixArt USB Optical Mouse'
[ 25766.720] (II) systemd-logind: got fd for /dev/input/event2 13:66 fd 22 paused 0
[ 25766.720] (**) PixArt USB Optical Mouse: always reports core events
[ 25766.720] (**) Option "Device" "/dev/input/event2"
[ 25766.720] (**) Option "_source" "server/udev"
[ 25766.727] (II) event2  - PixArt USB Optical Mouse: is tagged by udev as: Mouse
[ 25766.727] (II) event2  - PixArt USB Optical Mouse: device set to 1000 DPI
[ 25766.727] (II) event2  - PixArt USB Optical Mouse: device is a pointer
[ 25766.728] (II) event2  - PixArt USB Optical Mouse: device removed
[ 25766.728] (**) Option "config_info" "udev:/sys/devices/platform/amba/ff9e0000.usb1/fe300000.dwc3/xhci-hcd.0.auto/usb1/1-1/1-1.2/1-1.2.3/1-1.2.3:1.0/0003:093A:2510.0002/input/input2/event2"
[ 25766.728] (II) XINPUT: Adding extended input device "PixArt USB Optical Mouse" (type: MOUSE, id 7)
[ 25766.729] (**) Option "AccelerationScheme" "none"
[ 25766.729] (**) PixArt USB Optical Mouse: (accel) selected scheme none/0
[ 25766.729] (**) PixArt USB Optical Mouse: (accel) acceleration factor: 2.000
[ 25766.729] (**) PixArt USB Optical Mouse: (accel) acceleration threshold: 4
[ 25766.736] (II) event2  - PixArt USB Optical Mouse: is tagged by udev as: Mouse
[ 25766.736] (II) event2  - PixArt USB Optical Mouse: device set to 1000 DPI
[ 25766.736] (II) event2  - PixArt USB Optical Mouse: device is a pointer
[ 25766.738] (II) config/udev: Adding input device gpio-keys (/dev/input/event0)
[ 25766.738] (**) gpio-keys: Applying InputClass "libinput keyboard catchall"
[ 25766.738] (II) Using input driver 'libinput' for 'gpio-keys'
[ 25766.740] (II) systemd-logind: got fd for /dev/input/event0 13:64 fd 23 paused 0
[ 25766.740] (**) gpio-keys: always reports core events
[ 25766.740] (**) Option "Device" "/dev/input/event0"
[ 25766.740] (**) Option "_source" "server/udev"
[ 25766.742] (II) event0  - gpio-keys: is tagged by udev as: Keyboard
[ 25766.742] (II) event0  - gpio-keys: device is a keyboard
[ 25766.742] (II) event0  - gpio-keys: device removed
[ 25766.743] (**) Option "config_info" "udev:/sys/devices/platform/gpio-keys/input/input0/event0"
[ 25766.743] (II) XINPUT: Adding extended input device "gpio-keys" (type: KEYBOARD, id 8)
[ 25766.743] (**) Option "xkb_model" "pc105"
[ 25766.743] (**) Option "xkb_layout" "us"
[ 25766.745] (II) event0  - gpio-keys: is tagged by udev as: Keyboard
[ 25766.745] (II) event0  - gpio-keys: device is a keyboard
0 Kudos
Mentor watari
Mentor
489 Views
Registered: ‎06-16-2013

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

Hi @ste2108 

 

Would you change color depth from RG16 to RGB24 or BGR24 ?

 

Also, would you add "DPMS" as "disable" or "enable" in Xorg.conf, if you encounter any display monitor trouble ?

 

Best regards,

0 Kudos
Participant kawazome
Participant
400 Views
Registered: ‎04-02-2014

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

I made X-Window Server Debian Package that supports ZynqMP DRM. Download from the following GitHub repository:

https://github.com/ikwzm/ZynqMP-FPGA-Xserver

X-Windows Server Debian Package is xserver-xorg-video-armsoc-xilinx_1.4-1_arm64.deb

 

shell# dpkg -i xserver-xorg-video-armsoc-xilinx_1.4-1_arm64.deb 
Selecting previously unselected package xserver-xorg-video-armsoc-xilinx.
(Reading database ... 66577 files and directories currently installed.)
Preparing to unpack xserver-xorg-video-armsoc-xilinx_1.4-1_arm64.deb ...
Unpacking xserver-xorg-video-armsoc-xilinx (1.4-1) ...
Setting up xserver-xorg-video-armsoc-xilinx (1.4-1) ...
Processing triggers for man-db (2.8.5-2) ...

 

Add the following description to ”/etc/X11/xorg.conf”

Section "Device"

	Identifier	"ZynqMP"
	Driver		"armsoc"
	Option		"DRI2"			"true"
	Option		"DRI2_PAGE_FLIP"	"false"
	Option		"DRI2_WAIT_VSYNC"	"true"
	Option		"DEBUG"			"true"
EndSection

Section "Screen"
	Identifier	"DefaultScreen"
	Device		"ZynqMP"
EndSection

 

Supplement:

X-Window works with the above method.

However, when rendering using a GPU, you need to install additional packages.

https://github.com/ikwzm/ZynqMP-FPGA-Xserver also has Debian Package for GPU (Mali-400). This package requires complex steps to install. The Kernel Module also needs to be recompiled for your Linux.

View solution in original post

Visitor ste2108
Visitor
364 Views
Registered: ‎07-31-2019

Re: DisplayPort output from Zynq UltraScale+

Jump to solution

Dear @kawazome ,

Thanks so much for your help. Yesterday, just before your last email, I managed to make the displayport output work and to finally start a desktop session. This was obtained thanks to a combination of your first email (the xorg.conf file did have to be modified according to your recipe), the replacement od the video adapter (for some reason the first adpater chain that I used, which was displayport -> HDMI -> DVI, showed me the modetest onscreen but not the desktop session) and some more xilinx drivers which I added by recompiling the linux kernel through the board producer's sw interface. We also ordered an enhanced version of the board mounting an Ultrascale with the Mali chip onboard to compare the video performances of the two versions.

Thanks again, The case can be closed.

Kind regards,

Stefano

 

0 Kudos