NOTICE: The Processors Wiki will End-of-Life in December of 2020. 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.
Sii9022a HDMI transmitter driver
SII9022a is a HDMI Transmitter chip from Silicon Imaging. SI9022a is interfaced to the Digital Video output of above class of SoCs for the transmission of video over HDMI protocol. Audio is not supported on the SII9022a driver although hardware supports Audio. SII9022a is controlled transparently from the application through the sysfs entries exposed by the HDVPSS driver for controlling the onchip display encoders. All of the sysfs entries for controlling the SII9022a is listed in the later part of the document.
Upgrade and Compatibility
This is the first release of the SII9022a driver.
Build Sii9022a HDMI driver
- Compiling SII9022a
$ make ARCH=arm CROSS_COMPILE=PATH_TO_TOOLCHAIN/bin/arm-none-linux-gnueabi- ti8168_evm_defconfig $ make ARCH=arm CROSS_COMPILE=PATH_TO_TOOLCHAIN/bin/arm-none-linux-gnueabi- menuconfig
- Select Device Drivers
Userspace binary formats ---> Power management opstions ---> [*] Networking support ---> " Device Drivers ---> " CBUS support ---> File systems --->
- Select graphics support
Multifunction device drivers ---> [ ] Voltage and Current Regulator Support ---> < > Multimedia support ---> " Graphics support ---> " <*> Sound card support ---> [*] HID Devices --->
Sii9022a HDMI Driver Module (EXPERIMENTAL)
< > Fujitsu MB862xx GDC support < > E-Ink Broadsheet/Epson S1D13521 controller support < > OMAP frame buffer support (EXPERIMENTAL) < > TI81XX HDMI Driver Module (EXPERIMENTAL) " <M> SII9022a HDMI Transmitter (EXPERIMENTAL)" < > TI81XX Video Processing Subsystem (EXPERIMENTAL) ---> [ ] Backlight & LCD device support --->
- Set the display mode. Supported modes are 1080P60, 1080P30, 1080I60 and 720P60
- Start / stop HDMI
Note :Changing of the resolution on the Sii9022a HDMI transmitter also requires changing the resolution on encoder. Encoder needs to be disabled before changing the resolution on HDMI. Further all the connected display/graphics path on that Encoder needs to be stopped.
Features Not Verified
In this release, the following features are not supported:
- Deep color mode of operation
- Reading of EDID from the sink device
- Hot Plug Detect(HPD) status information
Supported Display Modes
- Pixel Clock
- The pixel clock is provided by the VIDEO PLL module, this modules has to be configured to meet the pixel rate required for given resolution. Its beyond the scope of this driver to configure this. If this driver is used along with HDVPSS driver provided by TI, HDVPSS driver ensure that pixel clock is configured for the chosen resolution. The resolution selected on HDMI should match with resolution configured of DISPLAY Driver. (In case of FBDEV, inserting the drivers/modules and connecting graphics pipeline to appropriate VENC does this. Please refer FBDEV user guide for details)
- Discrete Syncs only
- SII9022a with default configuration expects the VENC to provide discrete syncs
- SII9022a with default configuration, expects the VENC to provide video data in RGB color space in either 24 bits/pixel or 30 bits/pixel
Load the Modules in the following order:
- Load VPSS module, (This module configures and starts the display 1 VENC in 1080p-60 mode) :
- Load Sii9022a HDMI module :
To change the mode to 720P60, default mode is 1080P60:
- Disable Venc
echo 0 > /sys/devices/platform/vpss/display1/enabled
- Change mode
echo 720P-60 > /sys/devices/platform/vpss/display1/mode
- Enable Venc
echo 1 > /sys/devices/platform/vpss/display1/enabled
- Example to configure the SII9022a driver and start streaming of fbdev output through SII9022a HDMI transmitter is explained in the application saFbdevHdmiDisplay.c
- VPSS Video User guide at [DM814X VPSS VideoUserGuide][DM816X VPSS VideoUserGuide]
- Before changing the mode in the HDMI driver user needs to set the PLL clock and Venc mode accordingly. This is explained at VPSS Video User Guide shown in above.