From 10ebd8556b7990499c896a550e3d416b444211e6 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Fri, 10 May 2024 02:23:07 +0000
Subject: [PATCH] add led

---
 kernel/arch/arm/boot/dts/rk3288-evb.dtsi |  471 +++++++++++++++++++++++++++++-----------------------------
 1 files changed, 234 insertions(+), 237 deletions(-)

diff --git a/kernel/arch/arm/boot/dts/rk3288-evb.dtsi b/kernel/arch/arm/boot/dts/rk3288-evb.dtsi
index 1107227..d211a76 100644
--- a/kernel/arch/arm/boot/dts/rk3288-evb.dtsi
+++ b/kernel/arch/arm/boot/dts/rk3288-evb.dtsi
@@ -5,22 +5,109 @@
 #include "rk3288.dtsi"
 
 / {
+	memory@0 {
+		device_type = "memory";
+		reg = <0x0 0x0 0x0 0x80000000>;
+	};
+
+	adc-keys {
+		compatible = "adc-keys";
+		io-channels = <&saradc 1>;
+		io-channel-names = "buttons";
+		keyup-threshold-microvolt = <1800000>;
+
+		button-up {
+			label = "Volume Up";
+			linux,code = <KEY_VOLUMEUP>;
+			press-threshold-microvolt = <100000>;
+		};
+
+		button-down {
+			label = "Volume Down";
+			linux,code = <KEY_VOLUMEDOWN>;
+			press-threshold-microvolt = <300000>;
+		};
+
+		menu {
+			label = "Menu";
+			linux,code = <KEY_MENU>;
+			press-threshold-microvolt = <640000>;
+		};
+
+		esc {
+			label = "Esc";
+			linux,code = <KEY_ESC>;
+			press-threshold-microvolt = <1000000>;
+		};
+
+		home  {
+			label = "Home";
+			linux,code = <KEY_HOME>;
+			press-threshold-microvolt = <1300000>;
+		};
+	};
+
+	rt5640_sound: rt5640-sound {
+		status = "okay";
+		compatible = "rockchip,multicodecs-card";
+		rockchip,card-name = "rockchip-rt5640";
+		hp-det-gpio = <&gpio7 RK_PA7 GPIO_ACTIVE_HIGH>;
+		io-channels = <&saradc 2>;
+		io-channel-names = "adc-detect";
+		keyup-threshold-microvolt = <1800000>;
+		poll-interval = <100>;
+		rockchip,format = "i2s";
+		rockchip,mclk-fs = <512>;
+		rockchip,cpu = <&i2s>;
+		rockchip,codec = <&rt5640>;
+		rockchip,audio-routing =
+			"Headphone", "HPOL",
+			"Headphone", "HPOR",
+			"Speaker", "SPOLP",
+			"Speaker", "SPOLN",
+			"Speaker", "SPORP",
+			"Speaker", "SPORN",
+			"Headphone", "Headphone Power",
+			"Headphone", "Headphone Power",
+			"Speaker", "Speaker Power",
+			"Speaker", "Speaker Power",
+			"DMIC L1", "Main Mic",
+			"DMIC R1", "Main Mic",
+			"IN3P", "Headset Mic",
+			"Headset Mic", "MICBIAS1";
+		play-pause-key {
+			label = "playpause";
+			linux,code = <KEY_PLAYPAUSE>;
+			press-threshold-microvolt = <2000>;
+		};
+	};
+
+	hdmi_sound: hdmi-sound {
+		status = "disabled";
+		compatible = "rockchip,hdmi";
+		rockchip,mclk-fs = <256>;
+		rockchip,card-name = "rockchip-hdmi0";
+		rockchip,cpu = <&i2s>;
+		rockchip,codec = <&hdmi>;
+		rockchip,jack-det;
+	};
+
 	backlight: backlight {
 		compatible = "pwm-backlight";
 		brightness-levels = <
-			0   1   2   3   4   5   6   7
-			8   9  10  11  12  13  14  15
-			16  17  18  19  20  21  22  23
-			24  25  26  27  28  29  30  31
-			32  33  34  35  36  37  38  39
-			40  41  42  43  44  45  46  47
-			48  49  50  51  52  53  54  55
-			56  57  58  59  60  61  62  63
-			64  65  66  67  68  69  70  71
-			72  73  74  75  76  77  78  79
-			80  81  82  83  84  85  86  87
-			88  89  90  91  92  93  94  95
-			96  97  98  99 100 101 102 103
+			  0   1   2   3   4   5   6   7
+			  8   9  10  11  12  13  14  15
+			 16  17  18  19  20  21  22  23
+			 24  25  26  27  28  29  30  31
+			 32  33  34  35  36  37  38  39
+			 40  41  42  43  44  45  46  47
+			 48  49  50  51  52  53  54  55
+			 56  57  58  59  60  61  62  63
+			 64  65  66  67  68  69  70  71
+			 72  73  74  75  76  77  78  79
+			 80  81  82  83  84  85  86  87
+			 88  89  90  91  92  93  94  95
+			 96  97  98  99 100 101 102 103
 			104 105 106 107 108 109 110 111
 			112 113 114 115 116 117 118 119
 			120 121 122 123 124 125 126 127
@@ -41,109 +128,10 @@
 			240 241 242 243 244 245 246 247
 			248 249 250 251 252 253 254 255>;
 		default-brightness-level = <128>;
-	};
-
-	adc-keys {
-		compatible = "adc-keys";
-		io-channels = <&saradc 1>;
-		io-channel-names = "buttons";
-		keyup-threshold-microvolt = <1800000>;
-		poll-interval = <100>;
-
-		vol-up-key {
-			label = "volume up";
-			linux,code = <KEY_VOLUMEUP>;
-			press-threshold-microvolt = <1000>;
-		};
-
-		vol-down-key {
-			label = "volume down";
-			linux,code = <KEY_VOLUMEDOWN>;
-			press-threshold-microvolt = <170000>;
-		};
-
-		menu {
-			label = "menu";
-			linux,code = <KEY_MENU>;
-			press-threshold-microvolt = <640000>;
-		};
-
-		esc {
-			label = "esc";
-			linux,code = <KEY_ESC>;
-			press-threshold-microvolt = <1000000>;
-		};
-
-		home  {
-			label = "home";
-			linux,code = <KEY_HOME>;
-			press-threshold-microvolt = <1300000>;
-		};
-	};
-
-	sound: sound {
-		status = "disabled";
-		compatible = "simple-audio-card";
-		simple-audio-card,format = "i2s";
-		simple-audio-card,name = "rockchip,rt5640-codec";
-		simple-audio-card,mclk-fs = <512>;
-		simple-audio-card,widgets =
-			"Microphone", "Microphone Jack",
-			"Headphone", "Headphone Jack";
-		simple-audio-card,routing =
-			"MIC1", "Microphone Jack",
-			"MIC2", "Microphone Jack",
-			"Microphone Jack", "micbias1",
-			"Headphone Jack", "HPOL",
-			"Headphone Jack", "HPOR";
-
-		simple-audio-card,dai-link@0 {
-			format = "i2s";
-			cpu {
-				sound-dai = <&i2s>;
-			};
-
-			codec {
-				sound-dai = <&rt5640>;
-			};
-		};
-
-		simple-audio-card,dai-link@1 {
-			format = "i2s";
-			cpu {
-				sound-dai = <&i2s>;
-			};
-
-			codec {
-				sound-dai = <&hdmi>;
-			};
-		};
-	};
-
-	hdmi_analog_sound: hdmi-analog-sound {
-		compatible = "rockchip,rk3288-hdmi-analog",
-			     "rockchip,rk3368-hdmi-analog";
-		rockchip,model = "rockchip,rt5640-codec";
-		rockchip,cpu = <&i2s>;
-		rockchip,codec = <&rt5640>, <&hdmi>;
-		rockchip,widgets =
-			"Microphone", "Microphone Jack",
-			"Headphone", "Headphone Jack";
-		rockchip,routing =
-			"MIC1", "Microphone Jack",
-			"MIC2", "Microphone Jack",
-			"Microphone Jack", "micbias1",
-			"Headphone Jack", "HPOL",
-			"Headphone Jack", "HPOR";
-		status = "disabled";
-	};
-
-	rk_headset {
-		compatible = "rockchip_headset";
-		headset_gpio = <&gpio7 RK_PA7 GPIO_ACTIVE_HIGH>;
+		enable-gpios = <&gpio7 RK_PA2 GPIO_ACTIVE_HIGH>;
 		pinctrl-names = "default";
-		pinctrl-0 = <&hp_det>;
-		io-channels = <&saradc 2>;
+		pinctrl-0 = <&bl_en>;
+		pwms = <&pwm0 0 1000000 PWM_POLARITY_INVERTED>;
 	};
 
 	ext_gmac: external-gmac-clock {
@@ -151,6 +139,41 @@
 		clock-frequency = <125000000>;
 		clock-output-names = "ext_gmac";
 		#clock-cells = <0>;
+	};
+
+	panel: panel {
+		compatible = "simple-panel";
+		backlight = <&backlight>;
+		enable-gpios = <&gpio7 RK_PA4 GPIO_ACTIVE_HIGH>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&lcd_cs>;
+		prepare-delay-ms = <120>;
+		width-mm = <120>;
+		height-mm = <160>;
+
+		panel-timing {
+			clock-frequency = <200000000>;
+			hactive = <1536>;
+			hfront-porch = <12>;
+			hback-porch = <48>;
+			hsync-len = <16>;
+			vactive = <2048>;
+			vfront-porch = <8>;
+			vback-porch = <8>;
+			vsync-len = <4>;
+			hsync-active = <0>;
+			vsync-active = <0>;
+			de-active = <0>;
+			pixelclk-active = <0>;
+		};
+
+		ports {
+			panel_in: port {
+				panel_in_edp: endpoint {
+					remote-endpoint = <&edp_out_panel>;
+				};
+			};
+		};
 	};
 
 	gpio-keys {
@@ -168,15 +191,6 @@
 			wakeup-source;
 			debounce-interval = <100>;
 		};
-	};
-
-	vccadc_ref: vccadc-ref {
-		compatible = "regulator-fixed";
-		regulator-name = "vcc1v8_sys";
-		regulator-always-on;
-		regulator-boot-on;
-		regulator-min-microvolt = <1800000>;
-		regulator-max-microvolt = <1800000>;
 	};
 
 	/* This turns on USB vbus for both host0 (ehci) and host1 (dwc2) */
@@ -222,16 +236,6 @@
 		regulator-boot-on;
 	};
 
-	/* This switch DIO3222 HOST_DP_HOST to host2 (dwc2) */
-	vcc_3g: vcc-3g-regulator {
-		compatible = "regulator-fixed";
-		enable-active-high;
-		gpio = <&gpio7 8 GPIO_ACTIVE_HIGH>;
-		pinctrl-names = "default";
-		pinctrl-0 = <&pwr_3g>;
-		regulator-name = "vcc_3g";
-	};
-
 	/*
 	 * NOTE: vcc_sd isn't hooked up on v1.0 boards where power comes from
 	 * vcc_io directly.  Those boards won't be able to power cycle SD cards
@@ -275,9 +279,33 @@
 	cpu0-supply = <&vdd_cpu>;
 };
 
+&edp {
+	force-hpd;
+	status = "okay";
+
+	ports {
+		edp_out: port@1 {
+			reg = <1>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			edp_out_panel: endpoint@0 {
+				reg = <0>;
+				remote-endpoint = <&panel_in_edp>;
+			};
+		};
+	};
+};
+
+&edp_phy {
+	status = "okay";
+};
+
 &emmc {
 	bus-width = <8>;
 	cap-mmc-highspeed;
+	no-sdio;
+	no-sd;
 	disable-wp;
 	non-removable;
 	pinctrl-names = "default";
@@ -286,7 +314,7 @@
 };
 
 &saradc {
-	vref-supply = <&vccadc_ref>;
+	vref-supply = <&vcc_18>;
 	status = "okay";
 };
 
@@ -298,31 +326,15 @@
 	sd-uhs-sdr50;
 	sd-uhs-sdr104;
 	cap-sd-highspeed;
+	no-mmc;
+	no-sdio;
 	card-detect-delay = <200>;
 	disable-wp;			/* wp not hooked up */
-	num-slots = <1>;
 	pinctrl-names = "default";
 	pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
 	status = "okay";
 	vmmc-supply = <&vcc_sd>;
 	vqmmc-supply = <&vccio_sd>;
-	supports-sd;
-};
-
-&sdio0 {
-	status = "okay";
-	max-frequency = <150000000>;
-	bus-width = <4>;
-	cap-sd-highspeed;
-	cap-sdio-irq;
-	keep-power-in-suspend;
-	mmc-pwrseq = <&sdio_pwrseq>;
-	non-removable;
-	num-slots = <1>;
-	pinctrl-names = "default";
-	pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk &sdio0_int>;
-	sd-uhs-sdr104;
-	supports-sdio;
 };
 
 &gmac {
@@ -334,12 +346,12 @@
 	assigned-clock-rates = <125000000>;
 	snps,reset-gpio = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;
 	snps,reset-active-low;
-	snps,reset-delays-us = <0 10000 50000>;
+	snps,reset-delays-us = <0 10000 1000000>;
 	pinctrl-names = "default";
 	pinctrl-0 = <&rgmii_pins>;
 	tx_delay = <0x30>;
 	rx_delay = <0x10>;
-	status = "ok";
+	status = "okay";
 };
 
 &gpu {
@@ -348,14 +360,6 @@
 };
 
 &hdmi {
-	status = "okay";
-};
-
-&hdmi_in_vopl {
-	status = "disabled";
-};
-
-&hdmi_in_vopb {
 	status = "okay";
 };
 
@@ -372,15 +376,9 @@
 		reg = <0x1c>;
 		clocks = <&cru SCLK_I2S0_OUT>;
 		clock-names = "mclk";
-		interrupt-parent = <&gpio6>;
-		interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&i2s0_mclk>;
 	};
-};
-
-&i2c3 {
-	status = "okay";
 };
 
 &i2c4 {
@@ -398,24 +396,33 @@
 	};
 };
 
-&i2c5 {
-	status = "okay";
-};
-
 &i2s {
 	#sound-dai-cells = <0>;
 	status = "okay";
 };
 
-&io_domains {
-	status = "okay";
-
-	sdcard-supply = <&vccio_sd>;
-	wifi-supply = <&vcc_18>;
-};
-
 &wdt {
 	status = "okay";
+};
+
+&pwm0 {
+	status = "okay";
+};
+
+&sdio0 {
+	status = "okay";
+	max-frequency = <150000000>;
+	bus-width = <4>;
+	cap-sd-highspeed;
+	no-mmc;
+	no-sd;
+	cap-sdio-irq;
+	mmc-pwrseq = <&sdio_pwrseq>;
+	keep-power-in-suspend;
+	non-removable;
+	pinctrl-names = "default";
+	pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk &sdio0_int>;
+	sd-uhs-sdr104;
 };
 
 &uart0 {
@@ -424,63 +431,13 @@
 	status = "okay";
 };
 
-&uart1 {
-	status = "okay";
-};
-
 &uart2 {
-	status = "okay";
-};
-
-&uart3 {
-	status = "okay";
-};
-
-&uart4 {
 	status = "okay";
 };
 
 &tsadc {
 	rockchip,hw-tshut-mode = <0>; /* tshut mode 0:CRU 1:GPIO */
 	rockchip,hw-tshut-polarity = <0>; /* tshut polarity 0:LOW 1:HIGH */
-	status = "okay";
-};
-
-&usbphy {
-	status = "okay";
-};
-
-&usb_host0_ehci {
-	rockchip-relinquish-port;
-	status = "okay";
-};
-
-&usb_host0_ohci {
-	status = "okay";
-};
-
-&usb_host1 {
-	status = "okay";
-};
-
-&usb_otg {
-	vbus-supply = <&vcc_otg_vbus>;
-	status = "okay";
-};
-
-&vopb {
-	status = "okay";
-};
-
-&vopb_mmu {
-	status = "okay";
-};
-
-&vopl {
-	status = "okay";
-};
-
-&vopl_mmu {
 	status = "okay";
 };
 
@@ -494,15 +451,21 @@
 		drive-strength = <8>;
 	};
 
+	backlight {
+		bl_en: bl-en {
+			rockchip,pins = <7 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
+		};
+	};
+
 	buttons {
 		pwrbtn: pwrbtn {
 			rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
 		};
 	};
 
-	headphone {
-		hp_det: hp-det {
-			rockchip,pins = <7 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
+	lcd {
+		lcd_cs: lcd-cs {
+			rockchip,pins = <7 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
 		};
 	};
 
@@ -551,10 +514,6 @@
 		otg_vbus_drv: otg-bus-drv {
 			rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
 		};
-
-		pwr_3g: pwr-3g {
-			rockchip,pins = <7 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
-		};
 	};
 
 	eth_phy {
@@ -569,3 +528,41 @@
 		};
 	};
 };
+
+&usbphy {
+	status = "okay";
+};
+
+&usb_host0_ehci {
+	rockchip-relinquish-port;
+	status = "okay";
+};
+
+&usb_host0_ohci {
+	status = "okay";
+};
+
+&usb_host1 {
+	status = "okay";
+};
+
+&usb_otg {
+	vbus-supply = <&vcc_otg_vbus>;
+	status = "okay";
+};
+
+&vopb {
+	status = "okay";
+};
+
+&vopb_mmu {
+	status = "okay";
+};
+
+&vopl {
+	status = "okay";
+};
+
+&vopl_mmu {
+	status = "okay";
+};

--
Gitblit v1.6.2