[linux-sunxi] [PATCH v3.1 10/10] arm64: dts: allwinner: a64: Enable HDMI output on A64 boards w/ HDMI

Icenowy Zheng icenowy at aosc.io
Fri Jul 27 00:44:00 UTC 2018



于 2018年7月27日 GMT+08:00 上午2:03:00, "Jernej Škrabec" <jernej.skrabec at siol.net> 写到:
>Dne četrtek, 26. julij 2018 ob 19:12:57 CEST je Icenowy Zheng
>napisal(a):
>> From: Jagan Teki <jagan at amarulasolutions.com>
>> 
>> Enable all necessary device tree nodes and add connector node to
>device
>> trees for all supported A64 boards with HDMI.
>> 
>> Signed-off-by: Jagan Teki <jagan at amarulasolutions.com>
>> [Icenowy: squash all board patches altogether and change supply name]
>> Signed-off-by: Icenowy Zheng <icenowy at aosc.io>
>> ---
>> Changes in v3,1:
>> - Squash all enablement patches altogether.
>> - Change supply name to match DT binding & driver change.
>> Changes for v3:
>> - Enable all pipeline components
>> Changes for v2:
>> - none
>> 
>>  .../dts/allwinner/sun50i-a64-bananapi-m64.dts | 34
>+++++++++++++++++++
>>  .../dts/allwinner/sun50i-a64-nanopi-a64.dts   | 34
>+++++++++++++++++++
>>  .../dts/allwinner/sun50i-a64-olinuxino.dts    | 34
>+++++++++++++++++++
>>  .../dts/allwinner/sun50i-a64-orangepi-win.dts | 34
>+++++++++++++++++++
>>  .../boot/dts/allwinner/sun50i-a64-pine64.dts  | 34
>+++++++++++++++++++
>>  .../allwinner/sun50i-a64-sopine-baseboard.dts | 34
>+++++++++++++++++++
>>  6 files changed, 204 insertions(+)
>> 
>> diff --git
>a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts index
>> 094cfed13df9..0d8f5571d574 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
>> @@ -60,6 +60,17 @@
>>  		stdout-path = "serial0:115200n8";
>>  	};
>> 
>> +	connector {
>> +		compatible = "hdmi-connector";
>> +		type = "a";
>> +
>> +		port {
>> +			hdmi_con_in: endpoint {
>> +				remote-endpoint = <&hdmi_out_con>;
>> +			};
>> +		};
>> +	};
>> +
>>  	leds {
>>  		compatible = "gpio-leds";
>> 
>> @@ -86,6 +97,10 @@
>>  	};
>>  };
>> 
>> +&de {
>> +	status = "okay";
>> +};
>> +
>>  &ehci0 {
>>  	status = "okay";
>>  };
>> @@ -103,6 +118,17 @@
>>  	status = "okay";
>>  };
>> 
>> +&hdmi {
>> +	hdmi-supply = <&reg_dldo1>;
>> +	status = "okay";
>> +};
>> +
>> +&hdmi_out {
>> +	hdmi_out_con: endpoint {
>> +		remote-endpoint = <&hdmi_con_in>;
>> +	};
>> +};
>> +
>>  &i2c1 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&i2c1_pins>;
>> @@ -120,6 +146,10 @@
>>  	};
>>  };
>> 
>> +&mixer1 {
>> +	status = "okay";
>> +};
>> +
>>  &mmc0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&mmc0_pins>;
>> @@ -300,6 +330,10 @@
>>  	vcc-hdmi-supply = <&reg_dldo1>;
>>  };
>> 
>> +&tcon1 {
>> +	status = "okay";
>> +};
>> +
>>  &uart0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&uart0_pins_a>;
>> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dts
>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dts index
>> 98dbff19f5cc..2bcf02f46366 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dts
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-nanopi-a64.dts
>> @@ -57,6 +57,21 @@
>>  	chosen {
>>  		stdout-path = "serial0:115200n8";
>>  	};
>> +
>> +	connector {
>> +		compatible = "hdmi-connector";
>> +		type = "a";
>> +
>> +		port {
>> +			hdmi_con_in: endpoint {
>> +				remote-endpoint = <&hdmi_out_con>;
>> +			};
>> +		};
>> +	};
>> +};
>> +
>> +&de {
>> +	status = "okay";
>>  };
>> 
>>  &ehci0 {
>> @@ -67,6 +82,17 @@
>>  	status = "okay";
>>  };
>> 
>> +&hdmi {
>> +	hdmi-supply = <&reg_dldo1>;
>> +	status = "okay";
>> +};
>> +
>> +&hdmi_out {
>> +	hdmi_out_con: endpoint {
>> +		remote-endpoint = <&hdmi_con_in>;
>> +	};
>> +};
>> +
>>  /* i2c1 connected with gpio headers like pine64, bananapi */
>>  &i2c1 {
>>  	pinctrl-names = "default";
>> @@ -78,6 +104,10 @@
>>  	bias-pull-up;
>>  };
>> 
>> +&mixer1 {
>> +	status = "okay";
>> +};
>> +
>>  &mmc0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&mmc0_pins>;
>> @@ -199,6 +229,10 @@
>>  	vcc-hdmi-supply = <&reg_dldo1>;
>>  };
>> 
>> +&tcon1 {
>> +	status = "okay";
>> +};
>> +
>>  &uart0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&uart0_pins_a>;
>> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts index
>> 3f531393eaee..5445a7a1db51 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-olinuxino.dts
>> @@ -58,12 +58,42 @@
>>  		stdout-path = "serial0:115200n8";
>>  	};
>> 
>> +	connector {
>> +		compatible = "hdmi-connector";
>> +		type = "a";
>> +
>> +		port {
>> +			hdmi_con_in: endpoint {
>> +				remote-endpoint = <&hdmi_out_con>;
>> +			};
>> +		};
>> +	};
>> +
>>  	wifi_pwrseq: wifi_pwrseq {
>>  		compatible = "mmc-pwrseq-simple";
>>  		reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
>>  	};
>>  };
>> 
>> +&de {
>> +	status = "okay";
>> +};
>> +
>> +&hdmi {
>> +	hdmi-supply = <&reg_dldo1>;
>> +	status = "okay";
>> +};
>> +
>> +&hdmi_out {
>> +	hdmi_out_con: endpoint {
>> +		remote-endpoint = <&hdmi_con_in>;
>> +	};
>> +};
>> +
>> +&mixer1 {
>> +	status = "okay";
>> +};
>> +
>>  &mmc0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&mmc0_pins>;
>> @@ -218,6 +248,10 @@
>>  	vcc-hdmi-supply = <&reg_dldo1>;
>>  };
>> 
>> +&tcon1 {
>> +	status = "okay";
>> +};
>> +
>>  &uart0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&uart0_pins_a>;
>> diff --git
>a/arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dts
>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dts index
>> 1221764f5719..81a8f92c6c35 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dts
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-orangepi-win.dts
>> @@ -57,12 +57,42 @@
>>  	chosen {
>>  		stdout-path = "serial0:115200n8";
>>  	};
>> +
>> +	connector {
>> +		compatible = "hdmi-connector";
>> +		type = "a";
>> +
>> +		port {
>> +			hdmi_con_in: endpoint {
>> +				remote-endpoint = <&hdmi_out_con>;
>> +			};
>> +		};
>> +	};
>> +};
>> +
>> +&de {
>> +	status = "okay";
>>  };
>> 
>>  &ehci1 {
>>  	status = "okay";
>>  };
>> 
>> +&hdmi {
>> +	hdmi-supply = <&reg_dldo1>;
>> +	status = "okay";
>> +};
>> +
>> +&hdmi_out {
>> +	hdmi_out_con: endpoint {
>> +		remote-endpoint = <&hdmi_con_in>;
>> +	};
>> +};
>> +
>> +&mixer1 {
>> +	status = "okay";
>> +};
>> +
>>  &mmc0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&mmc0_pins>;
>> @@ -195,6 +225,10 @@
>>  	vcc-hdmi-supply = <&reg_dldo1>;
>>  };
>> 
>> +&tcon1 {
>> +	status = "okay";
>> +};
>> +
>>  &uart0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&uart0_pins_a>;
>> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts index
>> 1b9b92e541d2..1b972bade9f6 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
>> @@ -62,6 +62,21 @@
>>  	chosen {
>>  		stdout-path = "serial0:115200n8";
>>  	};
>> +
>> +	connector {
>> +		compatible = "hdmi-connector";
>> +		type = "a";
>> +
>> +		port {
>> +			hdmi_con_in: endpoint {
>> +				remote-endpoint = <&hdmi_out_con>;
>> +			};
>> +		};
>> +	};
>> +};
>> +
>> +&de {
>> +	status = "okay";
>>  };
>> 
>>  &ehci0 {
>> @@ -82,6 +97,17 @@
>> 
>>  };
>> 
>> +&hdmi {
>> +	hdmi-supply = <&reg_dldo1>;
>> +	status = "okay";
>> +};
>> +
>> +&hdmi_out {
>> +	hdmi_out_con: endpoint {
>> +		remote-endpoint = <&hdmi_con_in>;
>> +	};
>> +};
>> +
>>  &i2c1 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&i2c1_pins>;
>> @@ -99,6 +125,10 @@
>>  	};
>>  };
>> 
>> +&mixer1 {
>> +	status = "okay";
>> +};
>> +
>>  &mmc0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&mmc0_pins>;
>> @@ -238,6 +268,10 @@
>>  	status = "disabled";
>>  };
>> 
>> +&tcon1 {
>> +	status = "okay";
>> +};
>> +
>>  /* On Exp and Euler connectors */
>>  &uart0 {
>>  	pinctrl-names = "default";
>> diff --git
>a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts index
>> c21f2331add6..eff44b069b1d 100644
>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
>> @@ -61,6 +61,17 @@
>>  		stdout-path = "serial0:115200n8";
>>  	};
>> 
>> +	connector {
>> +		compatible = "hdmi-connector";
>> +		type = "a";
>> +
>> +		port {
>> +			hdmi_con_in: endpoint {
>> +				remote-endpoint = <&hdmi_out_con>;
>> +			};
>> +		};
>> +	};
>> +
>>  	reg_vcc1v8: vcc1v8 {
>>  		compatible = "regulator-fixed";
>>  		regulator-name = "vcc1v8";
>> @@ -69,6 +80,10 @@
>>  	};
>>  };
>> 
>> +&de {
>> +	status = "okay";
>> +};
>> +
>>  &ehci0 {
>>  	status = "okay";
>>  };
>> @@ -86,6 +101,17 @@
>>  	status = "okay";
>>  };
>> 
>> +&hdmi {
>> +	hdmi-supply = <&reg_dldo1>;
>> +	status = "okay";
>> +};
>> +
>> +&hdmi_out {
>> +	hdmi_out_con: endpoint {
>> +		remote-endpoint = <&hdmi_con_in>;
>> +	};
>> +};
>> +
>>  &mdio {
>>  	ext_rgmii_phy: ethernet-phy at 1 {
>>  		compatible = "ethernet-phy-ieee802.3-c22";
>> @@ -93,6 +119,10 @@
>>  	};
>>  };
>> 
>> +&mixer1 {
>> +	status = "okay";
>> +};
>> +
>>  &mmc2 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&mmc2_pins>;
>> @@ -138,6 +168,10 @@
>>  	vcc-hdmi-supply = <&reg_dldo1>;
>
>How is it possible to have vcc-hdmi-supply already defined? Did I miss

It's for simplefb.

>some 
>patch?
>
>Best regards,
>Jernej
>
>>  };
>> 
>> +&tcon1 {
>> +	status = "okay";
>> +};
>> +
>>  &uart0 {
>>  	pinctrl-names = "default";
>>  	pinctrl-0 = <&uart0_pins_a>;


More information about the dri-devel mailing list