DSS HDMI
Contents
- 1 display
- 2 HDMI
- 3 TDA2/DRA7xx DSS
- 4 EDID 信息检查
- 5 Q&A?
- 5.1 How to configure DSS for BT656 or BT1120 output format?
- 5.2 PROCESSOR-SDK-DRA8X-TDA4X: How to change display resolution in vision apps?
- 5.3 PROCESSOR-SDK-DRA8X-TDA4X: How to enable vout1/DPI1 output in vision apps?
- 5.4 PROCESSOR-SDK-DRA8X-TDA4X: [PSDKRA]Can I use QT & wayland to render VisionApp result?
- 5.5 PROCESSOR-SDK-DRA8X-TDA4X: How to enable third display ie TIVX_TARGET_DISPLAY3 in Vision Apps?
- 5.6 jitter issue
- 6 参考
- 7 相关
display
color key
Colorkey技术是作用在两个图像叠加混合的时候,对特殊色做特殊过滤,符合条件的区域叫match区,在match区就全部使用另外一个图层的颜色值,不符合条件的区域就是非match区,非match区就是走普通的alpha混合。
HDMI
调试步骤
VSDK HDMI 驱动不会检测EDID 的信息。 PSDKLA 里面驱动可以自动检查EDID的信息。
1. 检查clock 输出,是否频率正常。
– 脚本: dss clock dump
– CTT Tools
2. 检查极性,确认极性是否正确。
3. 确认下Timing 问题。
– 可以读取yEDID的信息。
4. dump DSS寄存器比较下
How to send out HDMI test pattern
Below command can work at EVM board. For register,please check the special documents. Output pure red display.
omapconf write 0x5806486c 0xff
omapconf write 0x58064868 0x00
omapconf write 0x58064864 0x00
omapconf write 0x58064800 0x1
Dump HDMI register:
omapconf dump 0x58040300 0x5804031c
How to dump the DSS/HDMI clock register and check the clock ?
please download the script of dss_clockdumps.sh from here;
Please download the dss_regdumps.sh script from here;
HDMI 调整极性
PSDK0304
[39.942823 0.041638] DesiJourney.wav cello.wav mk-qspi-boot.sh strings2.wav
[39.945724 0.002901] DiscordToday.wav dss_clockdumps.sh pvrtrace
[39.947216 0.001492] root@dra7xx-evm:~# omapconf read 0x5804030c
omapconf read 0x5804030c
[90.091238 50.144022] 00107F80
[90.091383 0.000145] root@dra7xx-evm:~# omapconf write 0x5804030c 0xe8107F80
omapconf write 0x5804030c 0xe8107F80
[163.200226 73.108843] root@dra7xx-evm:~# omapconf read 0x5804030c
omapconf read 0x5804030c
[181.249349 18.049123] E8107F80
[181.265332 0.015983] root@dra7xx-evm:~#
VSDK — Same method
TDA2/DRA7xx DSS
dss registers dump
https://git.ti.com/cgit/glsdk/util-scripts/tree/debug/dss_regdumps.sh
dss clock dump
https://git.ti.com/cgit/glsdk/util-scripts/tree/debug/dss_clockdumps.sh
EDID 信息检查
Linux
Linux kernel下面可以利用modetest
来检查。
root@dra7xx-evm:~# modetest
trying to open device 'i915'...failed
trying to open device 'radeon'...failed
trying to open device 'nouveau'...failed
trying to open device 'vmwgfx'...failed
trying to open device 'omapdrm'...done
Encoders:
id crtc type possible crtcs possible clones
31 34 TMDS 0x00000001 0x00000000
Connectors:
id encoder status name size (mm) modes encoders
32 31 connected HDMI-A-1 790x0 19 31
modes:
name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
1920x1080 60 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: preferred, driver
1920x1080 60 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
1920x1080i 60 1920 2008 2052 2200 1080 1084 1094 1125 flags: phsync, pvsync, interlace; type: driver
1920x1080i 60 1920 2008 2052 2200 1080 1084 1094 1125 flags: phsync, pvsync, interlace; type: driver
1920x1080 50 1920 2448 2492 2640 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
1920x1080i 50 1920 2448 2492 2640 1080 1084 1094 1125 flags: phsync, pvsync, interlace; type: driver
1920x1080 30 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
1920x1080 30 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
1920x1080 25 1920 2448 2492 2640 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
1920x1080 24 1920 2558 2602 2750 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
1920x1080 24 1920 2558 2602 2750 1080 1084 1089 1125 flags: phsync, pvsync; type: driver
1280x720 120 1280 1390 1430 1650 720 725 730 750 flags: phsync, pvsync; type: driver
1280x720 120 1280 1390 1430 1650 720 725 730 750 flags: phsync, pvsync; type: driver
1280x720 100 1280 1720 1760 1980 720 725 730 750 flags: phsync, pvsync; type: driver
1280x720 60 1280 1390 1430 1650 720 725 730 750 flags: phsync, pvsync; type: driver
1280x720 60 1280 1390 1430 1650 720 725 730 750 flags: phsync, pvsync; type: driver
1280x720 50 1280 1720 1760 1980 720 725 730 750 flags: phsync, pvsync; type: driver
640x480 60 640 656 752 800 480 490 492 525 flags: nhsync, nvsync; type: driver
640x480 60 640 656 752 800 480 490 492 525 flags: nhsync, nvsync; type: driver
props:
1 EDID:
flags: immutable blob
blobs:
value:
00ffffffffffff00069308a701000000
01140103804f00781adaffa3584aa229
17494b00000001010101010101010101
010101010101023a801871382d40582c
450000000000001e011d801871382d40
582c450000000000001e000000fc0041
544f4d4f532053484f47554e000000fd
0018780f871e000a202020202020014c
02032c70515f5e5d3f40101f22212005
142f29041301230f0407830f00006d03
0c001000003c210060010203023a8018
71382d40582c450000000000001e023a
80d072382d40102c458000000000001e
011d801871382d40582c450000000000
001e011d80d072382d40102c45800000
0000001e000000000000000000000052
2 DPMS:
flags: enum
enums: On=0 Standby=1 Suspend=2 Off=3
value: 0
CRTCs:
id fb pos size
34 44 (0,0) (1920x1080)
1920x1080 60 1920 2008 2052 2200 1080 1084 1089 1125 flags: phsync, pvsync; type: preferred, driver
props:
27 trans-key-mode:
flags: enum
enums: disable=0 gfx-dst=1 vid-src=2
value: 0
28 trans-key:
flags: range
values: 0 16777215
value: 0
29 background:
flags: range
values: 0 16777215
value: 0
30 alpha_blender:
flags: range
values: 0 1
value: 0
21 GAMMA_LUT:
flags: blob
blobs:
value:
22 GAMMA_LUT_SIZE:
flags: immutable range
values: 0 4294967295
value: 256
23 rotation:
flags: bitmask
values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20
value: 1
24 zorder:
flags: range
values: 0 3
value: 0
36 0 (0,0) (0x0)
0 0 0 0 0 0 0 0 0 flags: ; type:
props:
27 trans-key-mode:
flags: enum
enums: disable=0 gfx-dst=1 vid-src=2
value: 0
28 trans-key:
flags: range
values: 0 16777215
value: 0
29 background:
flags: range
values: 0 16777215
value: 0
30 alpha_blender:
flags: range
values: 0 1
value: 0
21 GAMMA_LUT:
flags: blob
blobs:
value:
22 GAMMA_LUT_SIZE:
flags: immutable range
values: 0 4294967295
value: 256
23 rotation:
flags: bitmask
values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20
value: 1
24 zorder:
flags: range
values: 0 3
value: 0
Planes:
id crtc fb CRTC x,y x,y gamma size possible crtcs
33 34 44 0,0 0,0 0 0x00000001
formats: RG16 RX12 XR12 RA12 AR12 XR15 AR15 RG24 RX24 XR24 RA24 AR24
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 1
23 rotation:
flags: bitmask
values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20
value: 1
24 zorder:
flags: range
values: 0 3
value: 0
25 global_alpha:
flags: range
values: 0 255
value: 255
26 pre_mult_alpha:
flags: range
values: 0 1
value: 0
35 0 0 0,0 0,0 0 0x00000002
formats: RG16 RX12 XR12 RA12 AR12 XR15 AR15 RG24 RX24 XR24 RA24 AR24 NV12 YUYV UYVY
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 1
23 rotation:
flags: bitmask
values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20
value: 1
24 zorder:
flags: range
values: 0 3
value: 0
25 global_alpha:
flags: range
values: 0 255
value: 255
26 pre_mult_alpha:
flags: range
values: 0 1
value: 0
37 0 0 0,0 0,0 0 0x00000003
formats: RG16 RX12 XR12 RA12 AR12 XR15 AR15 RG24 RX24 XR24 RA24 AR24 NV12 YUYV UYVY
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
23 rotation:
flags: bitmask
values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20
value: 1
24 zorder:
flags: range
values: 0 3
value: 2
25 global_alpha:
flags: range
values: 0 255
value: 255
26 pre_mult_alpha:
flags: range
values: 0 1
value: 0
38 0 0 0,0 0,0 0 0x00000003
formats: RG16 RX12 XR12 RA12 AR12 XR15 AR15 RG24 RX24 XR24 RA24 AR24 NV12 YUYV UYVY
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
23 rotation:
flags: bitmask
values: rotate-0=0x1 rotate-90=0x2 rotate-180=0x4 rotate-270=0x8 reflect-x=0x10 reflect-y=0x20
value: 1
24 zorder:
flags: range
values: 0 3
value: 3
25 global_alpha:
flags: range
values: 0 255
value: 255
26 pre_mult_alpha:
flags: range
values: 0 1
value: 0
Frame buffers:
id size pitch
Ubuntu
sudo apt install read-edid
sudo get-edid > myedid.bin
sudo parse-edid < myedid.bin
另外可以使用在网站查询 www.edidreader.com
[Jacinto7_08_00]:~/startJacinto> sudo parse-edid < my-edid.bin
[sudo] password for fredy:
Checksum Correct
Section "Monitor"
Identifier "ATOMOS SHOGUN"
ModelName "ATOMOS SHOGUN"
VendorName "ATS"
# Monitor Manufactured week 1 of 2010
# EDID version 1.3
# Digital Display
# Display Physical Size not given. Normal for projectors.
Gamma 2.20
Option "DPMS" "false"
Horizsync 15-135
VertRefresh 24-120
# Maximum pixel clock is 300MHz
#Extension block found. Parsing...
#WARNING: I may have missed a mode (CEA mode 95)
#DOUBLE WARNING: It's your first mode, too, so this may actually be important.
#WARNING: I may have missed a mode (CEA mode 94)
#DOUBLE WARNING: It's your first mode, too, so this may actually be important.
#WARNING: I may have missed a mode (CEA mode 93)
#DOUBLE WARNING: It's your first mode, too, so this may actually be important.
#WARNING: I may have missed a mode (CEA mode 63)
#DOUBLE WARNING: It's your first mode, too, so this may actually be important.
#WARNING: I may have missed a mode (CEA mode 64)
#DOUBLE WARNING: It's your first mode, too, so this may actually be important.
Modeline "Mode 2" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 0" 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 1" 74.25 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 3" 148.500 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 4" 74.250 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 5" 74.250 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 6" 74.250 1920 2558 2602 2750 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 7" 74.250 1920 2008 2052 2200 1080 1082 1087 1125 +hsync +vsync interlace
Modeline "Mode 8" 74.250 1920 2448 2492 2640 1080 1082 1089 1125 +hsync +vsync interlace
Modeline "Mode 9" 148.500 1280 1390 1430 1650 720 725 730 750 +hsync +vsync
Modeline "Mode 10" 148.500 1280 1720 1760 1980 720 725 730 750 +hsync +vsync
Modeline "Mode 11" 74.250 1280 1390 1420 1650 720 725 730 750 +hsync +vsync
Modeline "Mode 12" 74.250 1280 1720 1760 1980 720 725 730 750 +hsync +vsync
Modeline "Mode 13" 25.200 640 656 752 800 480 490 492 525 -hsync -vsync
Modeline "Mode 14" 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 15" 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 16" 74.25 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
Modeline "Mode 17" 74.25 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
Option "PreferredMode" "Mode 2"
EndSection
Q&A?
How to configure DSS for BT656 or BT1120 output format?
PROCESSOR-SDK-DRA8X-TDA4X: How to change display resolution in vision apps?
PROCESSOR-SDK-DRA8X-TDA4X: How to enable vout1/DPI1 output in vision apps?
PROCESSOR-SDK-DRA8X-TDA4X: [PSDKRA]Can I use QT & wayland to render VisionApp result?
PROCESSOR-SDK-DRA8X-TDA4X: How to enable third display ie TIVX_TARGET_DISPLAY3 in Vision Apps?
jitter issue
Optimizing DRA7xx and TDA2xx Processors for Use With
Video Display SerDes