付汉杰 hankf@xilinx.com 2020-08-26
将VCU TRD 2020.1 的Vivado工程中的Mixer的Layer 8按如下修改。
编译整个工程, 得到bit文件,导出含有bit的xsa文件。
基于rdf0428-zcu106-vcu-trd-2020.1/apu/vcu_petalinux_bsp/xilinx-vcu-zcu106-v2020.1-final.bsp创建工程,导入上述xsa文件。
在project-spec/meta-user/recipes-bsp/device-tree/files/vcu_trd.dtsi里,设置Mixer的DMA和Primary Plane等信息。
VCU TRD 参考设计中的硬件工程和devicetree必须对应。vcu_trd.dtsi需要和Vivado工程vcu_trd对应使用。在project-spec/meta-user/recipes-bsp/device-tree/files/目录下,system-user.dtsi必须指向vcu_trd.dtsi。
&xx_mix_master {
/delete-property/ xlnx,layer-primary;
};
&xx_mix_overlay_8 {
xlnx,layer-alpha;
xlnx,layer-primary;
xlnx,layer-max-height = <1080>;
xlnx,layer-max-width = <1920>;
xlnx,vformat = "AR24";
};
把文件project-spec/meta-user/recipes-graphics/xorg-xserver/xserver-xf86-config/zynqmp/xorg.conf中的DRICard值,从0改为1。修改后,Section "Device"如下。
Section "Device"
Identifier "ZynqMP"
Driver "armsoc"
Option "DRICard" "1"
Option "DRI2" "true"
Option "DRI2_PAGE_FLIP" "false"
Option "DRI2_WAIT_VSYNC" "true"
Option "SWcursorLCD" "false"
Option "DEBUG" "false"
Option "DPMS" "false"
EndSection
单板启动后,文件在目录/etc/X11/下,也可以在单板启动后修改/etc/X11/xorg.conf中的DRICard值为1。
编译PetaLinux工程,生成BOOT.BIN、boot.scr、Image.ub文件。
将BOOT.BIN、boot.scr、Image.ub文件,拷入SD卡中,启动开发板。
查看DRI设备信息, ls -l /dev/dri/by-path/,可以得到准确的mixer信息。
root@vcu_trd:~# ls -l /dev/dri/by-path/
total 0
lrwxrwxrwx 1 root root 8 Aug 26 01:41 platform-a0070000.v_mix-card -> ../card1
lrwxrwxrwx 1 root root 8 Aug 26 01:41 platform-fd4a0000.zynqmp-display-card -> ../card0
root@vcu_trd:~# ls -l /sys/module/xlnx_mixer/parameters/mixer_primary_enable
-rw------- 1 root root 4096 Aug 26 01:46 /sys/module/xlnx_mixer/parameters/mixer_primary_enable
root@vcu_trd:~# cat /sys/module/xlnx_mixer/parameters/mixer_primary_enable
N
root@vcu_trd:~# echo Y > /sys/module/xlnx_mixer/parameters/mixer_primary_enable
root@vcu_trd:~# cat /sys/module/xlnx_mixer/parameters/mixer_primary_enable
Y
modetest的设备信息与硬件相关。根据DRI设备信息,本设计的modetest命令是“modetest -D a0070000.v_mix”。通过查看HDMI-TX信息,可以得到Connectors ID。
上述命令的执行记录很长,也可以使用grep过滤输出,比如使用grep -A 8 -i "connectors",之输出 Connectors字段后的8行打印。过滤后的信息如下:
root@vcu_trd:~# modetest -D a0070000.v_mix | grep -A 8 -i "connectors"
Connectors:
id encoder status name size (mm) modes encoders
44 43 connected HDMI-A-1 610x350 57 43
modes:
name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
3840x2160 60.00 3840 4016 4104 4400 2160 2168 2178 2250 594000 flags: phsync, nvsync; type: preferred, driver
3840x2160 60.00 3840 4016 4104 4400 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
3840x2160 59.94 3840 4016 4104 4400 2160 2168 2178 2250 593407 flags: phsync, pvsync; type: driver
3840x2160 50.00 3840 4896 4984 5280 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
root@vcu_trd:~#
命令“modetest -D a0070000.v_mix”的完整执行记录如下:
root@vcu_trd:~# modetest -D a0070000.v_mix
Encoders:
id crtc type possible crtcs possible clones
43 42 TMDS 0x00000001 0x00000000
Connectors:
id encoder status name size (mm) modes encoders
44 43 connected HDMI-A-1 610x350 57 43
modes:
name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
3840x2160 60.00 3840 4016 4104 4400 2160 2168 2178 2250 594000 flags: phsync, nvsync; type: preferred, driver
3840x2160 60.00 3840 4016 4104 4400 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
3840x2160 59.94 3840 4016 4104 4400 2160 2168 2178 2250 593407 flags: phsync, pvsync; type: driver
3840x2160 50.00 3840 4896 4984 5280 2160 2168 2178 2250 594000 flags: phsync, pvsync; type: driver
3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
3840x2160 29.97 3840 4016 4104 4400 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
3840x2160 25.00 3840 4896 4984 5280 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
3840x2160 25.00 3840 4896 4984 5280 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
3840x2160 24.00 3840 5116 5204 5500 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
3840x2160 24.00 3840 5116 5204 5500 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
3840x2160 23.98 3840 5116 5204 5500 2160 2168 2178 2250 296703 flags: phsync, pvsync; type: driver
2560x1440 59.95 2560 2608 2640 2720 1440 1443 1448 1481 241500 flags: phsync, nvsync; type: driver
2048x1280 59.99 2048 2192 2416 2784 1280 1281 1284 1325 221277 flags: nhsync, pvsync; type:
2048x1080 24.00 2048 2096 2128 2208 1080 1083 1093 1099 58230 flags: phsync, nvsync; type: driver
1920x1080 60.00 1920 2008 2052 2200 1080 1084 1089 1125 148500 flags: nhsync, nvsync; type: driver
1920x1080 60.00 1920 2008 2052 2200 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver
1920x1080 59.94 1920 2008 2052 2200 1080 1084 1089 1125 148352 flags: phsync, pvsync; type: driver
1920x1080 50.00 1920 2448 2492 2640 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver
1920x1080 30.00 1920 2008 2052 2200 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
1920x1080 29.97 1920 2008 2052 2200 1080 1084 1089 1125 74176 flags: phsync, pvsync; type: driver
1920x1080 25.00 1920 2448 2492 2640 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
1920x1080 24.00 1920 2558 2602 2750 1080 1084 1089 1125 74250 flags: phsync, pvsync; type: driver
1920x1080 23.98 1920 2558 2602 2750 1080 1084 1089 1125 74176 flags: phsync, pvsync; type: driver
1600x1200 60.00 1600 1664 1856 2160 1200 1201 1204 1250 162000 flags: phsync, pvsync; type: driver
1600x900 60.00 1600 1624 1704 1800 900 901 904 1000 108000 flags: phsync, pvsync; type: driver
1280x1024 75.02 1280 1296 1440 1688 1024 1025 1028 1066 135000 flags: phsync, pvsync; type: driver
1280x1024 60.02 1280 1328 1440 1688 1024 1025 1028 1066 108000 flags: phsync, pvsync; type: driver
1920x1080i 30.00 1920 2008 2052 2200 540 1084 1094 1125 74250 flags: phsync, pvsync, interlace; type: driver
1920x1080i 29.97 1920 2008 2052 2200 540 1084 1094 1125 74176 flags: phsync, pvsync, interlace; type: driver
1920x1080i 25.00 1920 2448 2492 2640 540 1084 1094 1125 74250 flags: phsync, pvsync, interlace; type: driver
1920x1080i 25.00 1920 1952 2120 2304 540 1126 1136 1250 72000 flags: phsync, nvsync, interlace; type: driver
1152x864 75.00 1152 1216 1344 1600 864 865 868 900 108000 flags: phsync, pvsync; type: driver
1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver
1280x720 59.94 1280 1390 1430 1650 720 725 730 750 74176 flags: phsync, pvsync; type: driver
1280x720 50.00 1280 1720 1760 1980 720 725 730 750 74250 flags: phsync, pvsync; type: driver
1024x768 75.03 1024 1040 1136 1312 768 769 772 800 78750 flags: phsync, pvsync; type: driver
1024x768 60.00 1024 1048 1184 1344 768 771 777 806 65000 flags: nhsync, nvsync; type: driver
800x600 75.00 800 816 896 1056 600 601 604 625 49500 flags: phsync, pvsync; type: driver
800x600 60.32 800 840 968 1056 600 601 605 628 40000 flags: phsync, pvsync; type: driver
720x576 50.00 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
720x576 50.00 720 732 796 864 576 581 586 625 27000 flags: nhsync, nvsync; type: driver
720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver
720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver
720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver
640x480 75.00 640 656 720 840 480 481 484 500 31500 flags: nhsync, nvsync; type: driver
640x480 60.00 640 656 752 800 480 490 492 525 25200 flags: nhsync, nvsync; type: driver
640x480 59.94 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver
640x480 59.94 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver
720x400 70.08 720 738 846 900 400 412 414 449 28320 flags: nhsync, pvsync; type: driver
720x576i 50.00 720 732 795 864 288 580 586 625 27000 flags: nhsync, nvsync, interlace, dblclk; type: driver
720x576i 50.00 720 732 795 864 288 580 586 625 27000 flags: nhsync, nvsync, interlace, dblclk; type: driver
720x480i 60.00 720 739 801 858 240 488 494 525 27028 flags: nhsync, nvsync, interlace, dblclk; type: driver
720x480i 60.00 720 739 801 858 240 488 494 525 27028 flags: nhsync, nvsync, interlace, dblclk; type: driver
720x480i 59.94 720 739 801 858 240 488 494 525 27000 flags: nhsync, nvsync, interlace, dblclk; type: driver
720x480i 59.94 720 739 801 858 240 488 494 525 27000 flags: nhsync, nvsync, interlace, dblclk; type: driver
props:
1 EDID:
flags: immutable blob
blobs:
value:
00ffffffffffff0010ac27a14c543830
171d0103803d2378eeee95a3544c9926
0f5054a54b00714f8180a9c0a940d1c0
e1000101010108e80030f2705a80b058
8a00615d2100001a000000ff004d5950
464b3936323038544c0a000000fc0044
454c4c205532373138514d0a000000fd
0031560a893c000a2020202020200101
02033ef15861605f5e5d100504020716
01141f1213272021220306111523091f
07830100006d030c0010003044200060
03020167d85dc401788001e20f03565e
00a0a0a0295030203500615d2100001a
04740030f2705a80b0588a00615d2100
001ebf1600a08038134030203a00615d
2100001a0000000000000000000000a4
2 DPMS:
flags: enum
enums: On=0 Standby=1 Suspend=2 Off=3
value: 0
5 link-status:
flags: enum
enums: Good=0 Bad=1
value: 0
6 non-desktop:
flags: immutable range
values: 0 1
value: 0
4 TILE:
flags: immutable blob
blobs:
value:
20 CRTC_ID:
flags: object
value: 42
CRTCs:
id fb pos size
42 48 (0,0) (3840x2160)
60.00 3840 4016 4104 4400 2160 2168 2178 2250 594000 flags: phsync, nvsync; type:
props:
22 ACTIVE:
flags: range
values: 0 1
value: 1
23 MODE_ID:
flags: blob
blobs:
value:
50100900000fb00f0810301100007008
78088208ca0800000000000009000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000
19 OUT_FENCE_PTR:
flags: range
values: 0 18446744073709551615
value: 0
24 VRR_ENABLED:
flags: range
values: 0 1
value: 0
Planes:
id crtc fb CRTC x,y x,y gamma size possible crtcs
33 0 0 0,0 0,0 0 0x00000001
formats: NV12
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
34 0 0 0,0 0,0 0 0x00000001
formats: NV12
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
35 0 0 0,0 0,0 0 0x00000001
formats: NV12
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
36 0 0 0,0 0,0 0 0x00000001
formats: NV12
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
37 0 0 0,0 0,0 0 0x00000001
formats: NV12
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
38 0 0 0,0 0,0 0 0x00000001
formats: NV12
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
39 0 0 0,0 0,0 0 0x00000001
formats: NV12
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
40 42 48 0,0 0,0 0 0x00000001
formats: AR24
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 1
17 FB_ID:
flags: object
value: 48
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 42
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 3840
16 CRTC_H:
flags: range
values: 0 2147483647
value: 2160
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 251658240
12 SRC_H:
flags: range
values: 0 4294967295
value: 141557760
32 alpha:
flags: range
values: 0 256
value: 256
41 0 0 0,0 0,0 0 0x00000001
formats: BG24
props:
8 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
17 FB_ID:
flags: object
value: 0
18 IN_FENCE_FD:
flags: signed range
values: -1 2147483647
value: -1
20 CRTC_ID:
flags: object
value: 0
13 CRTC_X:
flags: signed range
values: -2147483648 2147483647
value: 0
14 CRTC_Y:
flags: signed range
values: -2147483648 2147483647
value: 0
15 CRTC_W:
flags: range
values: 0 2147483647
value: 0
16 CRTC_H:
flags: range
values: 0 2147483647
value: 0
9 SRC_X:
flags: range
values: 0 4294967295
value: 0
10 SRC_Y:
flags: range
values: 0 4294967295
value: 0
11 SRC_W:
flags: range
values: 0 4294967295
value: 0
12 SRC_H:
flags: range
values: 0 4294967295
value: 0
Frame buffers:
id size pitch
modetest的Connectors ID与硬件设计相关。根据HDMI-TX设备信息,本设计的Connectors ID是44。对应的modetest命令是“modetest -D a0070000.v_mix -s 41:1920x1080-60@AR24”。执行记录如下。
root@vcu_trd:~# modetest -D a0070000.v_mix -s 44:1920x1080-60@AR24
setting mode 1920x1080-60.00Hz@AR24 on connectors 44, crtc 42
使用新的配置启动Xorg,需要先杀掉旧的Xorg。
root@vcu_trd:~# ps -A |grep -i xorg
853 root 0:00 xinit /etc/X11/Xsession -- /usr/bin/Xorg :0 -br -pn
859 root 0:00 /usr/bin/Xorg :0 -br -pn
1095 root 0:00 grep -i xorg
root@vcu_trd:~# kill 853
xinit: connection to X server lost
waiting for X server to shut down dbus-daemon[896]: Reloaded configuration
[ 696.359949] Warning: Unknown drm_fourcc format code: 875713089
(II) Server terminated successfully (0). Closing log file.
xinit: unexpected signal 15
root@vcu_trd:~# ps -A |grep -i xorg
1100 root 0:00 grep -i xorg
root@vcu_trd:~# Xorg &
[1] 1101
X.Org X Server 1.20.5
X Protocol Version 11, Revision 0
Build Operating System: Linux 3.10.0-693.el7.x86_64 x86_64
Current Operating System: Linux vcu_trd 5.4.0-xilinx-v2020.1 #1 SMP Tue Aug 25 09:25:42 UTC 2020 aarch64
Kernel command line: earlycon clk_ignore_unused consoleblank=0 cma=1700M uio_pdrv_genirq.of_id=generic-uio
Build Date: 26 May 2020 09:01:47PM
Current version of pixman: 0.38.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: "/var/log/Xorg.0.log", Time: Wed Aug 26 01:53:07 2020
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
root@vcu_trd:~# The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Unsupported high keycode 372 for name <I372> ignored
> X11 cannot support keycodes above 255.
> This warning only shows for the first high keycode.
Errors from xkbcomp are not fatal to the X server
运行QT程序后,HDMI显示器上,能看到六个每面有数字立方体。
root@vcu_trd:~# export DISPLAY=:0.0
root@vcu_trd:~# QT_QPA_PLATFORM=eglfs /usr/share/examples/opengl/textures/textures
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/var/volatile/tmp/runtime-root'
Unable to query physical screen size, defaulting to 100 dpi.
To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.
因为primary layer没有使能AR24格式,modetest报告错误“failed to set mode: Function not implemented”。请检查硬件和devicetree。
root@vcu_trd:~# modetest -D a0070000.v_mix -s 44:1920x1080-60@AR24
setting mode 1920x1080-60.00Hz@AR24 on connectors 44, crtc 42
failed to set mode: Function not implemented
因为primary layer没有使能AR24格式,Xorg报告错误“ERROR: drm failed to set mode: Invalid argument
”。请检查硬件和devicetree设置。
root@vcu_trd:~# cat /var/log/Xorg.0.log
[ 400.794] (II) ARMSOC(0): Setting swap chain size: 2
[ 400.794] (II) ARMSOC(0): [DRI2] Setup complete
[ 400.794] (II) ARMSOC(0): [DRI2] DRI driver: armsoc
[ 400.794] (==) ARMSOC(0): Backing store enabled
[ 400.794] (==) ARMSOC(0): Silken mouse enabled
[ 400.794] (II) ARMSOC(0): HW cursor init()
[ 400.794] (EE) ARMSOC(0): ERROR: drm failed to set mode: Invalid argument
[ 400.794] (EE) ARMSOC(0): ERROR: xf86SetDesiredModes() failed!
[ 400.794] (EE) ARMSOC(0): ERROR: ARMSOCEnterVT() failed!
[ 400.800] (EE)
Fatal server error:
[ 400.800] (EE) AddScreen/ScreenInit failed for driver 0
[ 400.800] (EE)
[ 400.800] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 400.800] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 400.800] (EE)
[ 400.801] (EE) Server terminated with error (1). Closing log file.
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841850/Video+Mixer#Test+Procedure
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/460948332/Zynq+UltraScale+MPSoC+VCU+TRD+2020.1
https://xilinx.sharepoint.com/sites/xkb/SitePages/ArticleViewer.aspx?articleNumber=73119
Lonley Zhang,Jimmy Chen, Liu Ka。