Unverified Commit 4098a2b4 authored by Icenowy Zheng's avatar Icenowy Zheng Committed by Maxime Ripard
Browse files

arm64: allwinner: a64: enable LCD-related hardware for Pinebook



Pinebook has an ANX6345 bridge connected to the RGB666 LCD output and
eDP panel input. The bridge is controlled via I2C that's connected to
R_I2C bus.

Enable all this hardware in device tree.

Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarIcenowy Zheng <icenowy@aosc.io>
Signed-off-by: default avatarVasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
parent 87bf7a5f
Loading
Loading
Loading
Loading
+60 −1
Original line number Diff line number Diff line
@@ -48,6 +48,18 @@
		};
	};

	panel_edp: panel-edp {
		compatible = "neweast,wjfh116008a";
		backlight = <&backlight>;
		power-supply = <&reg_dc1sw>;

		port {
			panel_edp_in: endpoint {
				remote-endpoint = <&anx6345_out_edp>;
			};
		};
	};

	reg_vbklt: vbklt {
		compatible = "regulator-fixed";
		regulator-name = "vbklt";
@@ -109,6 +121,10 @@
	status = "okay";
};

&de {
	status = "okay";
};

&ehci0 {
	phys = <&usbphy 0>;
	phy-names = "usb";
@@ -119,6 +135,10 @@
	status = "okay";
};

&mixer0 {
	status = "okay";
};

&mmc0 {
	pinctrl-names = "default";
	pinctrl-0 = <&mmc0_pins>;
@@ -177,12 +197,38 @@
	status = "okay";
};

/* The ANX6345 eDP-bridge is on r_i2c */
&r_i2c {
	clock-frequency = <100000>;
	pinctrl-names = "default";
	pinctrl-0 = <&r_i2c_pl89_pins>;
	status = "okay";

	anx6345: anx6345@38 {
		compatible = "analogix,anx6345";
		reg = <0x38>;
		reset-gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */
		dvdd25-supply = <&reg_dldo2>;
		dvdd12-supply = <&reg_fldo1>;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			anx6345_in: port@0 {
				reg = <0>;
				anx6345_in_tcon0: endpoint {
					remote-endpoint = <&tcon0_out_anx6345>;
				};
			};

			anx6345_out: port@1 {
				reg = <1>;
				anx6345_out_edp: endpoint {
					remote-endpoint = <&panel_edp_in>;
				};
			};
		};
	};
};

&r_pio {
@@ -343,6 +389,19 @@
			"MIC2", "Internal Microphone Right";
};

&tcon0 {
	pinctrl-names = "default";
	pinctrl-0 = <&lcd_rgb666_pins>;

	status = "okay";
};

&tcon0_out {
	tcon0_out_anx6345: endpoint {
		remote-endpoint = <&anx6345_in_tcon0>;
	};
};

&uart0 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart0_pb_pins>;