Close Weston before testing
$ systemctl stop weston@root
Use modetest to get display information
modetest -M rcar-du
There will be an unique 'id' for each component. These numbers are used when you want to reference different portions. The id numbers might be different between SoC device and not match the example commands below, so please find them first with the modetest command.
According to the results returned by modetest, the following information can be obtained.
For example, according to the return result of modetest on a RZ/G2L EVK, RZ/G2L has 2 physical planes.
Expand | ||
---|---|---|
| ||
root@smarc-rzg2l:~# modetest -M rcar-du Encoders: id crtc type possible crtcs possible clones 38 37 none 0x00000001 0x00000001 44 0 Virtual 0x00000001 0x00000002 Connectors: id encoder status name size (mm) modes encoders 39 38 connected HDMI-A-1 0x0 26 38 modes: index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot) #0 1280x800 59.91 1280 1328 1360 1440 800 803 807 823 71000 flags: phsync, pvsync; type: preferred, driver #1 1920x1080 60.00 1920 2008 2052 2200 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver #2 1920x1080 60.00 1920 2008 2052 2200 1080 1084 1089 1125 148500 flags: phsync, pvsync; type: driver #3 1920x1080 59.94 1920 2008 2052 2200 1080 1084 1089 1125 148352 flags: phsync, pvsync; type: driver #4 1280x1024 60.02 1280 1328 1440 1688 1024 1025 1028 1066 108000 flags: phsync, pvsync; type: driver #5 1280x960 60.00 1280 1376 1488 1800 960 961 964 1000 108000 flags: phsync, pvsync; type: driver #6 1280x800 60.00 1280 1316 1324 1324 800 816 824 832 66090 flags: phsync, pvsync; type: driver #7 1152x864 75.00 1152 1216 1344 1600 864 865 868 900 108000 flags: phsync, pvsync; type: driver #8 1280x720 60.00 1280 1390 1430 1650 720 725 730 750 74250 flags: phsync, pvsync; type: driver #9 1280x720 59.94 1280 1390 1430 1650 720 725 730 750 74176 flags: phsync, pvsync; type: driver #10 1024x768 75.03 1024 1040 1136 1312 768 769 772 800 78750 flags: phsync, pvsync; type: driver #11 1024x768 70.07 1024 1048 1184 1328 768 771 777 806 75000 flags: nhsync, nvsync; type: driver #12 1024x768 60.00 1024 1048 1184 1344 768 771 777 806 65000 flags: nhsync, nvsync; type: driver #13 800x600 75.00 800 816 896 1056 600 601 604 625 49500 flags: phsync, pvsync; type: driver #14 800x600 72.19 800 856 976 1040 600 637 643 666 50000 flags: phsync, pvsync; type: driver #15 800x600 60.32 800 840 968 1056 600 601 605 628 40000 flags: phsync, pvsync; type: driver #16 800x600 56.25 800 824 896 1024 600 601 603 625 36000 flags: phsync, pvsync; type: driver #17 720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver #18 720x480 60.00 720 736 798 858 480 489 495 525 27027 flags: nhsync, nvsync; type: driver #19 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver #20 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver #21 720x480 59.94 720 736 798 858 480 489 495 525 27000 flags: nhsync, nvsync; type: driver #22 640x480 75.00 640 656 720 840 480 481 484 500 31500 flags: nhsync, nvsync; type: driver #23 640x480 72.81 640 664 704 832 480 489 492 520 31500 flags: nhsync, nvsync; type: driver #24 640x480 60.00 640 656 752 800 480 490 492 525 25200 flags: nhsync, nvsync; type: driver #25 640x480 59.94 640 656 752 800 480 490 492 525 25175 flags: nhsync, nvsync; type: driver props: 1 EDID: flags: immutable blob blobs: value: 00ffffffffffff0020641d7b01000000 201b0103800000780ae0ce9e59579723 124c542fce00010181808140714f0101 010101010101bc1b00a0502017303020 340000000000001e000000ff004c544d 31320a20202020202020000000fd0032 551f4f0b000a202020202020000000fc 00504a343032442d320a20202020018d 02031af1479005040302071623090707 65030c00100083010000023a80187138 2d40582c450007442100001e011d8018 711c1620582c250007442100009ed119 002c5020203024080804510e1100001e 8c0ad08a20e02d10103e960007442100 00180000000000000000000000000000 00000000000000000000000000000012 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: 37 CRTCs: id fb pos size 37 47 (0,0) (1280x800) #0 1280x800 59.91 1280 1328 1360 1440 800 803 807 823 71000 flags: phsync, pvsync; type: preferred, driver props: 22 ACTIVE: flags: range values: 0 1 value: 1 23 MODE_ID: flags: blob blobs: value: 58150100000530055005a00500002003 23032703370300003c00000005000000 48000000313238307838303000000000 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 32 37 47 0,0 0,0 0 0x00000001 formats: RGB8 AR12 XR12 AR15 XR15 RG16 BG24 RG24 BA24 BX24 AR24 XR24 UYVY YUYV YVYU NV12 NV21 NV16 NV61 YU12 YV12 YU16 YV16 YU24 YV24 props: 8 type: flags: immutable enum enums: Overlay=0 Primary=1 Cursor=2 value: 1 17 FB_ID: flags: object value: 47 18 IN_FENCE_FD: flags: signed range values: -1 2147483647 value: -1 20 CRTC_ID: flags: object value: 37 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: 1280 16 CRTC_H: flags: range values: 0 2147483647 value: 800 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: 83886080 12 SRC_H: flags: range values: 0 4294967295 value: 52428800 33 zpos: flags: immutable range values: 0 0 value: 0 34 0 0 0,0 0,0 0 0x00000001 formats: RGB8 AR12 XR12 AR15 XR15 RG16 BG24 RG24 BA24 BX24 AR24 XR24 UYVY YUYV YVYU NV12 NV21 NV16 NV61 YU12 YV12 YU16 YV16 YU24 YV24 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 alpha: flags: range values: 0 65535 value: 65535 36 zpos: flags: range values: 1 1 value: 1 Frame buffers: id size pitch |
Below is an example of an RZ/G2L connected to a 1280x800 MHDI LCD. There are 2 IDSs for "Planes" ('32' and '34') because there are 2 hardware layers in the RZ/G2L LCD display controller.
Display the test pattern on the Primary Plane
Use the id of the 'Connector' and the resolution of your LCD panel.
Example:
modetest -M rcar-du -s 39:1280x800@AR24 -d
(present ENTER on the keyboard to exit modetest)
Primary Plane+Overlay
modetest -M rcar-du -s 39:1280x800@AR24 -d -P '34@37:400x300 +200+200@AR24'
(present ENTER on the keyboard to exit modetest)
Set the alpha property of the overlay layer
$ modetest -M rcar-du -s 39:1280x800@AR24 -d -P '34@37:400x300 +200+200@AR24' &
$ modetest -M rcar-du -w 34:alpha:32768 $ modetest -M rcar-du -w 34:alpha:16384 $ modetest -M rcar-du -w 34:alpha:50000
$ fg
(present ENTER on the keyboard to exit modetest)