SiI9022 HDMI encoder for AM4xxx boards
Subsystems (4)
cover SiI9022 HDMI encoder for AM4xxx boards
Hi,
This series adds a driver for SiI9022 HDMI encoder, which is used on AM437x GP and AM43x EPOS boards.
The series is based on the OMAPDSS HDMI infoframe series sent earlier, as the SiI9022 driver uses the new infoframe support.
Tomi
Tomi Valkeinen (4):
OMAPDSS: add SiI9022 encoder driver
Doc/DT: Add SiI9022 binding documentation
arm/dts: am43x EPOS HDMI support
arm/dts: am437x GP HDMI support
.../devicetree/bindings/video/sil,sii9022.txt | 53 ++ arch/arm/boot/dts/Makefile | 4 +- arch/arm/boot/dts/am437x-gp-evm-hdmi.dts | 70 ++ arch/arm/boot/dts/am43x-epos-evm-hdmi.dts | 83 ++ drivers/video/fbdev/omap2/displays-new/Kconfig | 8 + drivers/video/fbdev/omap2/displays-new/Makefile | 1 + .../fbdev/omap2/displays-new/encoder-sii9022.c | 966 +++++++++++++++++++++ .../fbdev/omap2/displays-new/encoder-sii9022.h | 58 ++ 8 files changed, 1242 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/video/sil,sii9022.txt create mode 100644 arch/arm/boot/dts/am437x-gp-evm-hdmi.dts create mode 100644 arch/arm/boot/dts/am43x-epos-evm-hdmi.dts create mode 100644 drivers/video/fbdev/omap2/displays-new/encoder-sii9022.c create mode 100644 drivers/video/fbdev/omap2/displays-new/encoder-sii9022.h
Signature · 1 line
1.9.1
PATCH 1/4 OMAPDSS: add SiI9022 encoder driver
Add an OMAPDSS encoder driver for Silicon Image SiI9022 HDMI encoder.
The driver supports only video at the moment, audio support will be added separately.
--- drivers/video/fbdev/omap2/displays-new/Kconfig | 8 + drivers/video/fbdev/omap2/displays-new/Makefile | 1 + .../fbdev/omap2/displays-new/encoder-sii9022.c | 966 +++++++++++++++++++++ .../fbdev/omap2/displays-new/encoder-sii9022.h | 58 ++ 4 files changed, 1033 insertions(+) create mode 100644 drivers/video/fbdev/omap2/displays-new/encoder-sii9022.c create mode 100644 drivers/video/fbdev/omap2/displays-new/encoder-sii9022.h
drivers/video/fbdev/omap2/displays-new/Kconfig +8 -0
@@ -12,6 +12,14 @@ config DISPLAY_ENCODER_TPD12S015 Driver for TPD12S015, which offers HDMI ESD protection and level shifting. +config DISPLAY_ENCODER_SII9022 + tristate "SiI9022 HDMI Encoder" + depends on I2C + help + Driver for Silicon Image SiI9022 HDMI encoder. + A brief about SiI9022 can be found here: + http://www.semiconductorstore.com/pdf/newsite/siliconimage/SiI9022a_pb.pdf + config DISPLAY_CONNECTOR_DVI tristate "DVI Connector" depends on I2C
drivers/video/fbdev/omap2/displays-new/Makefile +1 -0
@@ -1,5 +1,6 @@ obj-$(CONFIG_DISPLAY_ENCODER_TFP410) += encoder-tfp410.o obj-$(CONFIG_DISPLAY_ENCODER_TPD12S015) += encoder-tpd12s015.o +obj-$(CONFIG_DISPLAY_ENCODER_SII9022) += encoder-sii9022.o obj-$(CONFIG_DISPLAY_CONNECTOR_DVI) += connector-dvi.o obj-$(CONFIG_DISPLAY_CONNECTOR_HDMI) += connector-hdmi.o obj-$(CONFIG_DISPLAY_CONNECTOR_ANALOG_TV) += connector-analog-tv.o
drivers/video/fbdev/omap2/displays-new/encoder-sii9022.c new file +966 -0
966 lines not on this page · raw message
drivers/video/fbdev/omap2/displays-new/encoder-sii9022.h new file +58 -0
58 lines not on this page · raw message
Signature · 1 line
1.9.1
PATCH 2/4 Doc/DT: Add SiI9022 binding documentation
In reply to Tomi ValkeinenAdd DT binding documentation for Silicon Image SiI9022 HDMI encoder.
--- .../devicetree/bindings/video/sil,sii9022.txt | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 Documentation/devicetree/bindings/video/sil,sii9022.txt
Documentation/devicetree/bindings/video/sil,sii9022.txt new file +53 -0
@@ -0,0 +1,53 @@ +Silicon Image SiI9022 HDMI Encoder +================================== + +Silicon Image SiI9022 is an HDMI encoder that encodes parallel RGB +signal to HDMI signal. The SiI9022 is controlled with i2c command, and +it has a single reset pin and single interrupt pin. + +Required properties: +- compatible: "sil,sii9022" + +Optional properties: +- reset-gpio: reset gpio +- interrupts: interrupt line + +Required nodes: +- Video port 0 for parallel video input +- Video port 1 for HDMI output + +Example +------- + +&i2c2 { + sii9022: sii9022 at 3b { + compatible = "sil,sii9022"; + reg = <0x3b>; + + reset-gpio = <&gpio2 1 GPIO_ACTIVE_LOW>; + + interrupt-parent = <&gpio1>; + interrupts = <18 IRQ_TYPE_LEVEL_LOW>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port at 0 { + reg = <0>; + + sii9022_in: endpoint { + remote-endpoint = <&dpi_out>; + }; + }; + + port at 1 { + reg = <1>; + + sii9022_out: endpoint { + remote-endpoint = <&hdmi_connector_in>; + }; + }; + }; + }; +};
Signature · 1 line
1.9.1
PATCH 3/4 arm/dts: am43x EPOS HDMI support
In reply to Tomi ValkeinenAM43x EPOS board has both LCD and HDMI outputs. The active display is selected with a GPIO, which affects video and audio signal routing, and LCD backlight.
Managing the gpio dynamically has proven rather difficult, so the approach taken here is just to have two separate .dts files for LCD/HDMI use cases. The HDMI dts file includes the base file, which has LCD support, and overrides and adds the necessary items.
--- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/am43x-epos-evm-hdmi.dts | 83 +++++++++++++++++++++++++++++++ 2 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/am43x-epos-evm-hdmi.dts
arch/arm/boot/dts/Makefile +2 -1
@@ -301,7 +301,8 @@ dtb-$(CONFIG_ARCH_OMAP4) += omap4-duovero-parlor.dtb \ omap4-var-dvk-om44.dtb \ omap4-var-stk-om44.dtb dtb-$(CONFIG_SOC_AM43XX) += am43x-epos-evm.dtb \ - am437x-gp-evm.dtb + am437x-gp-evm.dtb \ + am43x-epos-evm-hdmi.dtb dtb-$(CONFIG_SOC_OMAP5) += omap5-cm-t54.dtb \ omap5-sbc-t54.dtb \ omap5-uevm.dtb
arch/arm/boot/dts/am43x-epos-evm-hdmi.dts new file +83 -0
83 lines not on this page · raw message
Signature · 1 line
1.9.1
PATCH 4/4 arm/dts: am437x GP HDMI support
In reply to Tomi ValkeinenAM437x GP board has both LCD and HDMI outputs. The active display is selected with a GPIO, which affects video and audio signal routing, and LCD backlight.
Managing the gpio dynamically has proven rather difficult, so the approach taken here is just to have two separate .dts files for LCD/HDMI use cases. The HDMI dts file includes the base file, which has LCD support, and overrides and adds the necessary items.
--- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/am437x-gp-evm-hdmi.dts | 70 ++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/am437x-gp-evm-hdmi.dts
arch/arm/boot/dts/Makefile +2 -1
@@ -302,7 +302,8 @@ dtb-$(CONFIG_ARCH_OMAP4) += omap4-duovero-parlor.dtb \ omap4-var-stk-om44.dtb dtb-$(CONFIG_SOC_AM43XX) += am43x-epos-evm.dtb \ am437x-gp-evm.dtb \ - am43x-epos-evm-hdmi.dtb + am43x-epos-evm-hdmi.dtb \ + am437x-gp-evm-hdmi.dtb dtb-$(CONFIG_SOC_OMAP5) += omap5-cm-t54.dtb \ omap5-sbc-t54.dtb \ omap5-uevm.dtb
arch/arm/boot/dts/am437x-gp-evm-hdmi.dts new file +70 -0
70 lines not on this page · raw message
Signature · 1 line
1.9.1
cover SiI9022 HDMI encoder for AM4xxx boards
In reply to Tomi ValkeinenQuoted 1 line · Tomi Valkeinen
Hi,
Hi,
Quoted 6 lines
This series adds a driver for SiI9022 HDMI encoder, which is used on AM437x GP and AM43x EPOS boards.
The series is based on the OMAPDSS HDMI infoframe series sent earlier, as the SiI9022 driver uses the new infoframe support.
Is there any small possibility to not make it an omap specific driver? There are other boards with sii9022 out there. imx5x dev boards could receive a daughter board with this chip (both sold by Freescale) and efikamx platform has it too. I think that some old msm platforms has it too.
I've not compared the code of the drivers and don't know how the sii9022 works but would be annoying to have 2 or more drivers for the same piece of HW. imho, it would be nice if it could be avoided.
Thanks,
Arnaud
cover SiI9022 HDMI encoder for AM4xxx boards
Quoted 13 lines · Arnaud Patard
Quoted 1 line · Tomi Valkeinen
Hi,
Hi,
Quoted 6 lines
This series adds a driver for SiI9022 HDMI encoder, which is used on AM437x GP and AM43x EPOS boards.
The series is based on the OMAPDSS HDMI infoframe series sent earlier, as the SiI9022 driver uses the new infoframe support.
Quoted 8 lines
Is there any small possibility to not make it an omap specific driver? There are other boards with sii9022 out there. imx5x dev boards could receive a daughter board with this chip (both sold by Freescale) and efikamx platform has it too. I think that some old msm platforms has it too.
I've not compared the code of the drivers and don't know how the sii9022 works but would be annoying to have 2 or more drivers for the same piece of HW. imho, it would be nice if it could be avoided.
No, not at the moment. There is no framework to create generic drivers for display components.
There has been work towards that (google for "Common Display Framework"), but that is far from finished.
Tomi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140704/2563c878/attachment.sig>