arc: axs10x - add support of ARC PGU
authorAlexey Brodkin <abrodkin@synopsys.com>
Fri, 19 Feb 2016 12:19:43 +0000 (15:19 +0300)
committerAlexey Brodkin <abrodkin@synopsys.com>
Tue, 26 Apr 2016 15:26:54 +0000 (18:26 +0300)
Synopsys DesignWare ARC SDP boards sport ARC SDP display
controller attached to ADV7511 HDMI encoder.

That change adds desctiption of both ARC PGU and ADV7511 in
ARC SDP'd base-board Device Tree.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ian Campbell <ijc+devicetree@hellion.org.uk>
Cc: Kumar Gala <galak@codeaurora.org>
Cc: Vineet Gupta <vgupta@synopsys.com>
Cc: devicetree@vger.kernel.org
Cc: linux-snps-arc@lists.infradead.org
arch/arc/boot/dts/axs10x_mb.dtsi

index ab5d570..823f15c 100644 (file)
                                clock-frequency = <50000000>;
                                #clock-cells = <0>;
                        };
+
+                       pguclk: pguclk {
+                               #clock-cells = <0>;
+                               compatible = "fixed-clock";
+                               clock-frequency = <74440000>;
+                       };
                };
 
                ethernet@0x18000 {
                        clocks = <&i2cclk>;
                        interrupts = <16>;
 
+                       adv7511:adv7511@39{
+                               compatible="adi,adv7511";
+                               reg = <0x39>;
+                               interrupts = <23>;
+                               adi,input-depth = <8>;
+                               adi,input-colorspace = "rgb";
+                               adi,input-clock = "1x";
+                               adi,clock-delay = <0x03>;
+
+                               ports {
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
+
+                                       /* RGB/YUV input */
+                                       port@0 {
+                                               reg = <0>;
+                                               adv7511_input:endpoint {
+                                               remote-endpoint = <&pgu_output>;
+                                               };
+                                       };
+
+                                       /* HDMI output */
+                                       port@1 {
+                                               reg = <1>;
+                                               adv7511_output: endpoint {
+                                                       remote-endpoint = <&hdmi_connector_in>;
+                                               };
+                                       };
+                               };
+                       };
+
                        eeprom@0x54{
                                compatible = "24c01";
                                reg = <0x54>;
                        };
                };
 
+               hdmi0: connector {
+                       compatible = "hdmi-connector";
+                       type = "a";
+                       port {
+                               hdmi_connector_in: endpoint {
+                                       remote-endpoint = <&adv7511_output>;
+                               };
+                       };
+               };
+
                gpio0:gpio@13000 {
                        compatible = "snps,dw-apb-gpio";
                        reg = <0x13000 0x1000>;
                                reg = <2>;
                        };
                };
+
+               pgu@17000 {
+                       compatible = "snps,arcpgu";
+                       reg = <0x17000 0x400>;
+                       encoder-slave = <&adv7511>;
+                       clocks = <&pguclk>;
+                       clock-names = "pxlclk";
+
+                       port {
+                               pgu_output: endpoint {
+                                       remote-endpoint = <&adv7511_input>;
+                               };
+                       };
+               };
        };
 };