NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
Template:Glsdk psdk200 DSS
Contents
Running DSS application
DSS applications are omapdrm based. These will demonstrate the clone mode, extended mode, overlay window, z-order and alpha blending features. To demonstrate clone and extended mode, HDMI display must be connected to board. Application requires the supported mode information of connected displays and plane ids. One can get these information by running the modetest application in the filesystem.
target # modetest
Running drmclone application
This displays same test pattern on both LCD and HDMI (clone). Overlay window also displayed on LCD. To test clone mode, execute the following command:
target # drmclone -l <lcd_w>x<lcd_h> -p <plane_w>x<plane_h>:<x>+<y> -h <hdmi_w>x<hdmi_h>
e.g.: target # drmclone -l 1280x800 -p 320x240:0+0 -h 640x480
We can change position of overlay window by changing x+y values. eg. 240+120 will show @ center
Running drmextended application
This displays different test pattern on LCD and HDMI. Overlay window also displayed on LCD. To test extended mode, execute the following command:
target # drmextended -l <lcd_w>x<lcd_h> -p <plane_w>x<plane_h>:<x>+<y> -h <hdmi_w>x<hdmi_h>
e.g.: target # drmextended -l 1280x800 -p 320x240:0+0 -h 640x480
Running drmzalpha application
Z-order:
It determines, which overlay window appears on top of the other.
Range: 0 to 3
lowest value for bottom
highest value for top
Alpha Blend:
It determines transparency level of image as a result of both global alpha & pre multiplied alpha value.
Global alpha range: 0 to 255
0 - fully transparent
127 - semi transparent
255 - fully opaque
Pre multipled alpha value: 0 or 1
0 - source is not premultiply with alpha
1 - source is premultiply with alpha
To test drmzalpha, execute the following command:
target # drmzalpha -s <crtc_w>x<crtc_h> -w <plane1_id>:<z_val>:<glo_alpha>:<pre_mul_alpha> -w <plane2_id>:<z_val>:<glo_alpha>:<pre_mul_alpha>
e.g.: target # drmzalpha -s 1280x800 -w 19:1:255:1 -w 20:2:255:1
Testing with FPDLink Display setup
H/W setup
- DRA7xx EVM + 12V supply for the EVM.
- FPDLink Cable between DRA7xx and De-serilzer board (DS90UB928Q).
- 5V power supply for De-serializer board.
- LCD Adapter board (DS90UH928Q) that sits on De-serializer board.
- LCD Adapter cable which is between LCD panel and the Adapter board.
- 12V power supply for LCD Adapter board.
- The actual LCD panel (LG101(10.1in) or AUO (7.1 in))
- Please refer the picture which shows the overall setup attached here
Kernel Configuration
-> Device Drivers -> Graphics support -> OMAP2+ Display Subsystem support (OMAP2_DSS [=y]) -> OMAP2/3 Display Device Drivers <*> LG101 LCD Panel -> Device Drivers -> Graphics support -> OMAP2+ Display Subsystem support (OMAP2_DSS [=y]) -> OMAP2/3 Display Device Drivers <*> SERLINK -> Device Drivers -> Graphics support -> OMAP2+ Display Subsystem support (OMAP2_DSS [=y]) -> OMAP2/3 Display Device Drivers <*> DSERLINK
Testing
On power-cycle, the EVM should boot and show the Tux Logo.
Given below is a snippet from the modetest - it should show the FPDLink Display connected via the following path.
The connector-id, crtc-id or plane-ids may change based on the release or kernel version.
Encoders: id crtc type possible crtcs possible clones 3 10 TMDS 0x00000003 0x00000000 11 14 TMDS 0x00000002 0x00000000 ---------------------------> FPDLink Connectors: id encoder status type size (mm) modes encoders 4 3 connected unknown 0x0 1 3 modes: name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot) 800x480 60 800 841 890 931 480 493 497 526 flags: nhsync, nvsync; type: preferred, driver props: 1 EDID: flags: immutable blob blobs: value: 2 DPMS: flags: enum enums: On=0 Standby=1 Suspend=2 Off=3 value: 0 12 11 connected unknown 0x0 1 11 -----------> FPDLink modes: name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot) 1280x800 57 1280 1312 1360 1440 800 804 807 814 flags: nhsync, nvsync; type: preferred, driver props: 1 EDID: flags: immutable blob blobs: value: 2 DPMS: flags: enum enums: On=0 Standby=1 Suspend=2 Off=3 value: 0