From de7d2b82e1d37d435e0b93009a6a472b54b9d6a1 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Wed, 15 Mar 2023 02:39:25 +0000
Subject: [PATCH] add support mipi 1280x800_LCD

---
 kernel/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi |  555 +++++++++++++++++++++++--------------------------
 kernel/arch/arm64/boot/dts/rockchip/rk3568.dtsi     |    7 
 kernel/arch/arm64/boot/dts/rockchip/NK-R36S0.dtsi   |   35 ++
 u-boot/drivers/video/drm/rockchip_panel.c           |   29 ++
 u-boot/arch/arm/mach-rockchip/kernel_dtb.c          |   11 
 5 files changed, 325 insertions(+), 312 deletions(-)

diff --git a/kernel/arch/arm64/boot/dts/rockchip/NK-R36S0.dtsi b/kernel/arch/arm64/boot/dts/rockchip/NK-R36S0.dtsi
index 487f484..e432a7c 100755
--- a/kernel/arch/arm64/boot/dts/rockchip/NK-R36S0.dtsi
+++ b/kernel/arch/arm64/boot/dts/rockchip/NK-R36S0.dtsi
@@ -238,7 +238,7 @@
  */
  
 &video_phy1 {
-	status = "disabled";
+	status = "okay";
 }; 
 &dsi1 {
 	status = "disabled";
@@ -249,12 +249,23 @@
 };
 
 &dsi1_in_vp1 {
-	status = "disabled";
+	status = "okay";
 };
 
 &dsi1_panel {
-	power-supply = <&vcc3v3_lcd1_n>;
+	power-supply = <&vcc3v3_lcd1_n>;   //MIPI_3V3EN_GPIO3_A3_d_3V3
+    vddio-mipi = <&gpio3 RK_PA4 GPIO_ACTIVE_HIGH>; //MIPI_EN_1V8_GPIO3_A4_d_3V3
+    reset-gpios = <&gpio3 RK_PC7 GPIO_ACTIVE_LOW>; //MIPI_RST_L_GPIO3_C7
+    vcc-5v-gpio = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>; //VCC5_IO_EN_GPIO1_A4_3V3
+    pinctrl-names = "default";
+    pinctrl-0 = <&lcd1_rst_gpio>;
 };
+
+&route_dsi1 {
+	status = "disabled";
+	connect = <&vp1_out_dsi1>;
+};
+
 
 /*
 *  edp_start
@@ -274,7 +285,8 @@
 };
 
 &edp_phy {
-    status = "okay";
+  status = "okay";
+
 };
 
 &edp_in_vp0 {
@@ -283,6 +295,7 @@
 
 &edp_in_vp1 {
     status = "okay";
+
 };
 
 &route_edp {
@@ -545,6 +558,13 @@
 			rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
 		};
 	};
+	
+	lcd1 {
+        lcd1_rst_gpio: lcd1-rst-gpio {
+            rockchip,pins = <3 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
+        };
+    };
+		
 	nk_io_init{
 		nk_io_gpio: nk-io-gpio{
 			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>,
@@ -591,10 +611,7 @@
 	};
 };
 
-&route_dsi0 {
-	status = "disabled";
-	connect = <&vp1_out_dsi0>;
-};
+
 
 
 
@@ -640,7 +657,7 @@
 };
 
 &vcc3v3_lcd1_n {
-	gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
+	gpio = <&gpio3 RK_PA3 GPIO_ACTIVE_HIGH>; //MIPI_3V3EN_GPIO3_A3_d_3V3
 	enable-active-high;
 };
 
diff --git a/kernel/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi b/kernel/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi
index ea2fb31..72c4edc 100755
--- a/kernel/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi
+++ b/kernel/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi
@@ -103,7 +103,7 @@
 
 	backlight1: backlight1 {
 		compatible = "pwm-backlight";
-		pwms = <&pwm5 0 25000 0>;
+		pwms = <&pwm6 0 25000 0>;
 		brightness-levels = <
 			  0  20  20  21  21  22  22  23
 			 23  24  24  25  25  26  26  27
@@ -740,303 +740,262 @@
 		status = "okay";
 		compatible = "simple-panel-dsi";
 		reg = <0>;
-		backlight = <&backlight1>;
-		reset-delay-ms = <60>;
-		enable-delay-ms = <60>;
-		prepare-delay-ms = <60>;
-		unprepare-delay-ms = <60>;
-		disable-delay-ms = <60>;
-		dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
-			MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
-		dsi,format = <MIPI_DSI_FMT_RGB888>;
-		dsi,lanes  = <4>;
-		panel-init-sequence = [
-			23 00 02 FE 21
-			23 00 02 04 00
-			23 00 02 00 64
-			23 00 02 2A 00
-			23 00 02 26 64
-			23 00 02 54 00
-			23 00 02 50 64
-			23 00 02 7B 00
-			23 00 02 77 64
-			23 00 02 A2 00
-			23 00 02 9D 64
-			23 00 02 C9 00
-			23 00 02 C5 64
-			23 00 02 01 71
-			23 00 02 27 71
-			23 00 02 51 71
-			23 00 02 78 71
-			23 00 02 9E 71
-			23 00 02 C6 71
-			23 00 02 02 89
-			23 00 02 28 89
-			23 00 02 52 89
-			23 00 02 79 89
-			23 00 02 9F 89
-			23 00 02 C7 89
-			23 00 02 03 9E
-			23 00 02 29 9E
-			23 00 02 53 9E
-			23 00 02 7A 9E
-			23 00 02 A0 9E
-			23 00 02 C8 9E
-			23 00 02 09 00
-			23 00 02 05 B0
-			23 00 02 31 00
-			23 00 02 2B B0
-			23 00 02 5A 00
-			23 00 02 55 B0
-			23 00 02 80 00
-			23 00 02 7C B0
-			23 00 02 A7 00
-			23 00 02 A3 B0
-			23 00 02 CE 00
-			23 00 02 CA B0
-			23 00 02 06 C0
-			23 00 02 2D C0
-			23 00 02 56 C0
-			23 00 02 7D C0
-			23 00 02 A4 C0
-			23 00 02 CB C0
-			23 00 02 07 CF
-			23 00 02 2F CF
-			23 00 02 58 CF
-			23 00 02 7E CF
-			23 00 02 A5 CF
-			23 00 02 CC CF
-			23 00 02 08 DD
-			23 00 02 30 DD
-			23 00 02 59 DD
-			23 00 02 7F DD
-			23 00 02 A6 DD
-			23 00 02 CD DD
-			23 00 02 0E 15
-			23 00 02 0A E9
-			23 00 02 36 15
-			23 00 02 32 E9
-			23 00 02 5F 15
-			23 00 02 5B E9
-			23 00 02 85 15
-			23 00 02 81 E9
-			23 00 02 AD 15
-			23 00 02 A9 E9
-			23 00 02 D3 15
-			23 00 02 CF E9
-			23 00 02 0B 14
-			23 00 02 33 14
-			23 00 02 5C 14
-			23 00 02 82 14
-			23 00 02 AA 14
-			23 00 02 D0 14
-			23 00 02 0C 36
-			23 00 02 34 36
-			23 00 02 5D 36
-			23 00 02 83 36
-			23 00 02 AB 36
-			23 00 02 D1 36
-			23 00 02 0D 6B
-			23 00 02 35 6B
-			23 00 02 5E 6B
-			23 00 02 84 6B
-			23 00 02 AC 6B
-			23 00 02 D2 6B
-			23 00 02 13 5A
-			23 00 02 0F 94
-			23 00 02 3B 5A
-			23 00 02 37 94
-			23 00 02 64 5A
-			23 00 02 60 94
-			23 00 02 8A 5A
-			23 00 02 86 94
-			23 00 02 B2 5A
-			23 00 02 AE 94
-			23 00 02 D8 5A
-			23 00 02 D4 94
-			23 00 02 10 D1
-			23 00 02 38 D1
-			23 00 02 61 D1
-			23 00 02 87 D1
-			23 00 02 AF D1
-			23 00 02 D5 D1
-			23 00 02 11 04
-			23 00 02 39 04
-			23 00 02 62 04
-			23 00 02 88 04
-			23 00 02 B0 04
-			23 00 02 D6 04
-			23 00 02 12 05
-			23 00 02 3A 05
-			23 00 02 63 05
-			23 00 02 89 05
-			23 00 02 B1 05
-			23 00 02 D7 05
-			23 00 02 18 AA
-			23 00 02 14 36
-			23 00 02 42 AA
-			23 00 02 3D 36
-			23 00 02 69 AA
-			23 00 02 65 36
-			23 00 02 8F AA
-			23 00 02 8B 36
-			23 00 02 B7 AA
-			23 00 02 B3 36
-			23 00 02 DD AA
-			23 00 02 D9 36
-			23 00 02 15 74
-			23 00 02 3F 74
-			23 00 02 66 74
-			23 00 02 8C 74
-			23 00 02 B4 74
-			23 00 02 DA 74
-			23 00 02 16 9F
-			23 00 02 40 9F
-			23 00 02 67 9F
-			23 00 02 8D 9F
-			23 00 02 B5 9F
-			23 00 02 DB 9F
-			23 00 02 17 DC
-			23 00 02 41 DC
-			23 00 02 68 DC
-			23 00 02 8E DC
-			23 00 02 B6 DC
-			23 00 02 DC DC
-			23 00 02 1D FF
-			23 00 02 19 03
-			23 00 02 47 FF
-			23 00 02 43 03
-			23 00 02 6E FF
-			23 00 02 6A 03
-			23 00 02 94 FF
-			23 00 02 90 03
-			23 00 02 BC FF
-			23 00 02 B8 03
-			23 00 02 E2 FF
-			23 00 02 DE 03
-			23 00 02 1A 35
-			23 00 02 44 35
-			23 00 02 6B 35
-			23 00 02 91 35
-			23 00 02 B9 35
-			23 00 02 DF 35
-			23 00 02 1B 45
-			23 00 02 45 45
-			23 00 02 6C 45
-			23 00 02 92 45
-			23 00 02 BA 45
-			23 00 02 E0 45
-			23 00 02 1C 55
-			23 00 02 46 55
-			23 00 02 6D 55
-			23 00 02 93 55
-			23 00 02 BB 55
-			23 00 02 E1 55
-			23 00 02 22 FF
-			23 00 02 1E 68
-			23 00 02 4C FF
-			23 00 02 48 68
-			23 00 02 73 FF
-			23 00 02 6F 68
-			23 00 02 99 FF
-			23 00 02 95 68
-			23 00 02 C1 FF
-			23 00 02 BD 68
-			23 00 02 E7 FF
-			23 00 02 E3 68
-			23 00 02 1F 7E
-			23 00 02 49 7E
-			23 00 02 70 7E
-			23 00 02 96 7E
-			23 00 02 BE 7E
-			23 00 02 E4 7E
-			23 00 02 20 97
-			23 00 02 4A 97
-			23 00 02 71 97
-			23 00 02 97 97
-			23 00 02 BF 97
-			23 00 02 E5 97
-			23 00 02 21 B5
-			23 00 02 4B B5
-			23 00 02 72 B5
-			23 00 02 98 B5
-			23 00 02 C0 B5
-			23 00 02 E6 B5
-			23 00 02 25 F0
-			23 00 02 23 E8
-			23 00 02 4F F0
-			23 00 02 4D E8
-			23 00 02 76 F0
-			23 00 02 74 E8
-			23 00 02 9C F0
-			23 00 02 9A E8
-			23 00 02 C4 F0
-			23 00 02 C2 E8
-			23 00 02 EA F0
-			23 00 02 E8 E8
-			23 00 02 24 FF
-			23 00 02 4E FF
-			23 00 02 75 FF
-			23 00 02 9B FF
-			23 00 02 C3 FF
-			23 00 02 E9 FF
-			23 00 02 FE 3D
-			23 00 02 00 04
-			23 00 02 FE 23
-			23 00 02 08 82
-			23 00 02 0A 00
-			23 00 02 0B 00
-			23 00 02 0C 01
-			23 00 02 16 00
-			23 00 02 18 02
-			23 00 02 1B 04
-			23 00 02 19 04
-			23 00 02 1C 81
-			23 00 02 1F 00
-			23 00 02 20 03
-			23 00 02 23 04
-			23 00 02 21 01
-			23 00 02 54 63
-			23 00 02 55 54
-			23 00 02 6E 45
-			23 00 02 6D 36
-			23 00 02 FE 3D
-			23 00 02 55 78
-			23 00 02 FE 20
-			23 00 02 26 30
-			23 00 02 FE 3D
-			23 00 02 20 71
-			23 00 02 50 8F
-			23 00 02 51 8F
-			23 00 02 FE 00
-			23 00 02 35 00
-			05 78 01 11
-			05 1E 01 29
-		];
+		power-supply = <&vcc3v3_lcd1_n>;   //MIPI_3V3EN_GPIO3_A3_d_3V3
+		vddio-mipi = <&gpio3 RK_PA4 GPIO_ACTIVE_HIGH>; //MIPI_EN_1V8_GPIO3_A4_d_3V3
+		reset-gpios = <&gpio3 RK_PC7 GPIO_ACTIVE_LOW>; //MIPI_RST_L_GPIO3_C7
+		vcc-5v-gpio = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>; //VCC5_IO_EN_GPIO1_A4_3V3
+		reset-delay-ms = <200>;
+        enable-delay-ms = <60>;
+        init-delay-ms = <120>;
+        disable-delay-ms = <60>;
+        prepare-delay-ms = <120>;
+        unprepare-delay-ms = <120>;
+        backlight = <&backlight1>;
+        dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
+                MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
+        dsi,format = <MIPI_DSI_FMT_RGB888>;
+        dsi,lanes  = <4>;
 
-		panel-exit-sequence = [
-			05 00 01 28
-			05 00 01 10
-		];
+        panel-init-sequence = [
+                15 00 02 E0 00
+                15 00 02 E1 93
+                15 00 02 E2 65
+                15 00 02 E3 F8
+                15 00 02 E0 01
+                15 00 02 00 01
+                15 00 02 01 36
+                15 00 02 03 01
+                15 00 02 04 36
+                15 00 02 12 A0
+                15 00 02 17 00
+                15 00 02 18 EF
+                15 00 02 19 00
+                15 00 02 1A 00
+                15 00 02 1B EF
+                15 00 02 1C 00
+                15 00 02 1F 6A
+                15 00 02 20 28
+                15 00 02 21 28
+                15 00 02 22 7E
+                15 00 02 26 DF
+                15 00 02 37 59
+                15 00 02 38 05
+			    15 00 02 39 02
+                15 00 02 3A 05
+                15 00 02 3C 78
+                15 00 02 3D FF
+                15 00 02 3E FF
+                15 00 02 3F FF
+                15 00 02 40 06
+                15 00 02 41 A0
+                15 00 02 43 14
+                15 00 02 44 0E
+                15 00 02 45 28
+                15 00 02 55 0F
+                15 00 02 56 01
+                15 00 02 57 69
+                15 00 02 58 0A
+                15 00 02 59 0A
+                15 00 02 5A 2B
+                15 00 02 5B 14
+                15 00 02 5D 7E
+                15 00 02 5E 50
+                15 00 02 5F 37
+                15 00 02 60 21
+                15 00 02 61 19
+                15 00 02 62 0B
+                15 00 02 63 0E
+                15 00 02 64 00
+                15 00 02 65 1A
+		        15 00 02 66 1B
+                15 00 02 67 1F
+                15 00 02 68 3D
+                15 00 02 69 31
+                15 00 02 6A 40
+                15 00 02 6B 33
+                15 00 02 6C 34
+                15 00 02 6D 26
+                15 00 02 6E 1B
+                15 00 02 6F 0F
+                15 00 02 70 74
+                15 00 02 71 59
+                15 00 02 72 43
+                15 00 02 73 36
+                15 00 02 74 30
+                15 00 02 75 1A
+                15 00 02 76 21
+                15 00 02 77 08
+                15 00 02 78 29
+                15 00 02 79 2E
+                15 00 02 7A 31
+                15 00 02 7B 54
+                15 00 02 7C 41
+                15 00 02 7D 4A
+                15 00 02 7E 44
+                15 00 02 7F 41
+                15 00 02 80 34
+                15 00 02 81 26
+                15 00 02 82 0F
+                15 00 02 E0 02
+                15 00 02 00 49
+                15 00 02 01 48
+                15 00 02 02 47
+                15 00 02 03 46
+                15 00 02 04 45
+                15 00 02 05 44
+                15 00 02 06 4A
+                15 00 02 07 4B
+                15 00 02 08 50
+                15 00 02 09 1F
+                15 00 02 0A 1F
+                15 00 02 0B 1F
+                15 00 02 0C 1F
+                15 00 02 0D 1F
+                15 00 02 0E 1F
+                15 00 02 0F 51
+                15 00 02 10 52
+		        15 00 02 11 53
+                15 00 02 12 40
+                15 00 02 13 41
+                15 00 02 14 42
+                15 00 02 15 43
+                15 00 02 16 49
+                15 00 02 17 48
+                15 00 02 18 47
+                15 00 02 19 46
+                15 00 02 1A 45
+                15 00 02 1B 44
+                15 00 02 1C 4A
+                15 00 02 1D 4B
+                15 00 02 1E 50
+                15 00 02 1F 1F
+                15 00 02 20 1F
+                15 00 02 21 1F
+                15 00 02 22 1F
+                15 00 02 23 1F
+                15 00 02 24 1F
+                15 00 02 25 51
+                15 00 02 26 52
+                15 00 02 27 53
+                15 00 02 28 40
+                15 00 02 29 41
+                15 00 02 2A 42
+                15 00 02 2B 43
+                15 00 02 2C 0A
+                15 00 02 2D 0B
+                15 00 02 2E 04
+                15 00 02 2F 05
+                15 00 02 30 06
+                15 00 02 31 07
+                15 00 02 32 09
+                15 00 02 33 08
+                15 00 02 34 03
+                15 00 02 35 1F
+                15 00 02 36 1F
+                15 00 02 37 1F
+                15 00 02 38 1F
+                15 00 02 39 1F
+                15 00 02 3A 1F
+                15 00 02 3B 02
+                15 00 02 3C 01
+                15 00 02 3D 00
+                15 00 02 3E 13
+                15 00 02 3F 12
+                15 00 02 40 11
+		        15 00 02 41 10
+                15 00 02 42 0A
+                15 00 02 43 0B
+                15 00 02 44 04
+                15 00 02 45 05
+                15 00 02 46 06
+                15 00 02 47 07
+                15 00 02 48 09
+                15 00 02 49 08
+                15 00 02 4A 03
+                15 00 02 4B 1F
+                15 00 02 4C 1F
+                15 00 02 4D 1F
+                15 00 02 4E 1F
+                15 00 02 4F 1F
+                15 00 02 50 1F
+                15 00 02 51 02
+                15 00 02 52 01
+                15 00 02 53 00
+                15 00 02 54 13
+                15 00 02 55 12
+                15 00 02 56 11
+                15 00 02 57 10
+                15 00 02 58 40
+                15 00 02 59 00
+                15 00 02 5A 00
+                15 00 02 5B 30
+                15 00 02 5C 07
+                15 00 02 5D 40
+                15 00 02 5E 01
+                15 00 02 5F 02
+                15 00 02 60 40
+                15 00 02 61 01
+                15 00 02 62 02
+                15 00 02 63 70
+                15 00 02 64 6B
+                15 00 02 65 75
+                15 00 02 66 0B
+                15 00 02 67 74
+                15 00 02 68 01
+                15 00 02 69 64
+                15 00 02 6A 65
+                15 00 02 6B 00
+                15 00 02 6C 00
+                15 00 02 6D 04
+                15 00 02 6E 04
+                15 00 02 6F 89
+                15 00 02 70 00
+		       15 00 02 71 00
+                15 00 02 72 06
+                15 00 02 73 7B
+                15 00 02 74 00
+                15 00 02 75 3C
+                15 00 02 76 00
+                15 00 02 77 0D
+                15 00 02 78 2C
+                15 00 02 79 00
+                15 00 02 7A 00
+                15 00 02 7B 00
+                15 00 02 7C 00
+                15 00 02 7D 03
+                15 00 02 7E 7B
+                15 00 02 E0 04
+                15 00 02 09 14
+                15 00 02 E0 00
+                15 00 02 E6 02
+                15 00 02 E7 0C
+                15 78 02 11 00
+                15 05 02 29 00
+        ];
 
-		disp_timings1: display-timings {
-			native-mode = <&dsi1_timing0>;
-			dsi1_timing0: timing0 {
-				clock-frequency = <132000000>;
-				hactive = <1080>;
-				vactive = <1920>;
-				hfront-porch = <15>;
-				hsync-len = <2>;
-				hback-porch = <30>;
-				vfront-porch = <15>;
-				vsync-len = <2>;
-				vback-porch = <15>;
-				hsync-active = <0>;
-				vsync-active = <0>;
-				de-active = <0>;
-				pixelclk-active = <1>;
-			};
-		};
+        panel-exit-sequence = [
+                05 00 01 28
+                05 00 01 10
+        ];
+
+         disp_timings1: display-timings {
+                                        native-mode = <&dsi1_timing0>;
+                                        dsi1_timing0: timing0 {
+                                        clock-frequency = <69000000>;
+                                        hactive = <800>;
+                                        vactive = <1280>;
+                                        hfront-porch = <32>;
+                                        hsync-len = <20>;
+                                        hback-porch = <20>;
+                                        vfront-porch = <16>;
+                                        vsync-len = <5>;
+                                        vback-porch = <12>;
+                                        hsync-active = <0>;
+                                        vsync-active = <0>;
+                                        de-active = <0>;
+                                        pixelclk-active = <1>;
+                                };
+                        };
 
 		ports {
 			#address-cells = <1>;
@@ -1531,6 +1490,10 @@
 	status = "okay";
 };
 
+&pwm6 {
+	status = "okay";
+};
+
 &pwm5 {
 	status = "okay";
 };
diff --git a/kernel/arch/arm64/boot/dts/rockchip/rk3568.dtsi b/kernel/arch/arm64/boot/dts/rockchip/rk3568.dtsi
index 90c1e53..9b53dab 100755
--- a/kernel/arch/arm64/boot/dts/rockchip/rk3568.dtsi
+++ b/kernel/arch/arm64/boot/dts/rockchip/rk3568.dtsi
@@ -22,6 +22,7 @@
 	#address-cells = <2>;
 	#size-cells = <2>;
 
+
 	aliases {
 		csi2dphy0 = &csi2_dphy0;
 		csi2dphy1 = &csi2_dphy1;
@@ -253,10 +254,10 @@
 				logo,kernel = "logo_kernel.bmp";
 				logo,mode = "center";
 				charge_logo,mode = "center";
-				connect = <&vp0_out_dsi1>;
+				connect = <&vp1_out_dsi1>;
 			};
 			route_edp: route-edp {
-				status = "okay";
+				status = "disabled";
 				logo,uboot = "logo.bmp";
 				logo,kernel = "logo_kernel.bmp";
 				logo,mode = "center";
@@ -264,7 +265,7 @@
 				connect = <&vp1_out_edp>;
 			};
 			route_hdmi: route-hdmi {
-				status = "okay";
+				status = "disabled";
 				logo,uboot = "logo.bmp";
 				logo,kernel = "logo_kernel.bmp";
 				logo,mode = "center";
diff --git a/u-boot/arch/arm/mach-rockchip/kernel_dtb.c b/u-boot/arch/arm/mach-rockchip/kernel_dtb.c
index 3d3aa6a..74da167 100755
--- a/u-boot/arch/arm/mach-rockchip/kernel_dtb.c
+++ b/u-boot/arch/arm/mach-rockchip/kernel_dtb.c
@@ -287,7 +287,7 @@
 	printf("Can't increase blob size: %s\n", fdt_strerror(ret));
 	return ret;
 }
-
+#if 0
 static int fdt_fixup_panel_init_sequence(void *fdt, int node,const struct display_fixup_data *data)
 {
    #if 0
@@ -345,6 +345,7 @@
 	printf("Can't increase blob size: %s\n", fdt_strerror(ret));
 	return ret;
 }
+#endif
 
 static int fdt_fixup_setprop_u32(void *fdt, int node, const char *name, u32 data)
 {
@@ -391,12 +392,14 @@
 static void fdt_fixup_panel_node(void *blob, int node, const char *name,
 				 const struct display_fixup_data *data)
 {
+/*
 	if (!strcmp(name, "dsi")) {
 		fdt_setprop_u32(blob, node, "dsi,flags", data->flags);
 		fdt_setprop_u32(blob, node, "dsi,format", data->format);
 		fdt_setprop_u32(blob, node, "dsi,lanes", data->lanes);
 		fdt_fixup_panel_init_sequence(blob, node,data);
 	}
+*/
 	fdt_fixup_setprop_u32(blob, node, "prepare-delay-ms", data->delay_prepare);
 	fdt_fixup_setprop_u32(blob, node, "enable-delay-ms", data->delay_enable);
 	fdt_fixup_setprop_u32(blob, node, "disable-delay-ms", data->delay_disable);
@@ -488,16 +491,16 @@
 static void fdt_fixup_display_route(void *blob, const struct display_fixup_data *data)
 {
 	if (data->type == PANEL_TYPE_DSI) {
-		fdt_fixup_display_sub_route(blob, "dsi", FDT_STATUS_OKAY, data);
+		fdt_fixup_display_sub_route(blob, "dsi1", FDT_STATUS_OKAY, data);
 		fdt_fixup_display_sub_route(blob, "edp", FDT_STATUS_DISABLED, data);
 		fdt_fixup_display_sub_route(blob, "lvds", FDT_STATUS_DISABLED, data);
 	} else if (data->type == PANEL_TYPE_EDP) {
-		fdt_fixup_display_sub_route(blob, "dsi", FDT_STATUS_DISABLED, data);
+		fdt_fixup_display_sub_route(blob, "dsi1", FDT_STATUS_DISABLED, data);
 		fdt_fixup_display_sub_route(blob, "edp", FDT_STATUS_OKAY, data);
 		fdt_fixup_display_sub_route(blob, "lvds", FDT_STATUS_DISABLED, data);
 	} else if (data->type == PANEL_TYPE_LVDS) {
 		fdt_fixup_display_sub_route(blob, "lvds", FDT_STATUS_OKAY, data);
-	  fdt_fixup_display_sub_route(blob, "dsi", FDT_STATUS_DISABLED, data);
+	  	fdt_fixup_display_sub_route(blob, "dsi1", FDT_STATUS_DISABLED, data);
 		fdt_fixup_display_sub_route(blob, "edp", FDT_STATUS_DISABLED, data);
 	}
 }
diff --git a/u-boot/drivers/video/drm/rockchip_panel.c b/u-boot/drivers/video/drm/rockchip_panel.c
index 652e748..570bc99 100755
--- a/u-boot/drivers/video/drm/rockchip_panel.c
+++ b/u-boot/drivers/video/drm/rockchip_panel.c
@@ -69,6 +69,8 @@
 	struct gpio_desc reset_gpio;
 	struct gpio_desc edp_bl_on;
 	struct gpio_desc edp_bl_en;
+	struct gpio_desc vcc_5v;
+	struct gpio_desc vddio_mipi;
 
 	struct gpio_desc lvds_gpio0;
 	struct gpio_desc lvds_gpio1;
@@ -283,6 +285,19 @@
 
 	if (priv->prepared)
 		return;
+	/*mipi */
+	if (dm_gpio_is_valid(&priv->vddio_mipi))
+               dm_gpio_set_value(&priv->vddio_mipi, 1);
+        mdelay(20);
+
+        if (dm_gpio_is_valid(&priv->vcc_5v))
+                dm_gpio_set_value(&priv->vcc_5v, 1);
+
+        ret = dm_gpio_get_value(&priv->vcc_5v);
+                printf("troy test get vcc_5v : %d \n",ret);
+        ret = dm_gpio_get_value(&priv->vddio_mipi);
+                printf("troy test get vddio-mipi : %d \n",ret);
+        /*mipi end*/
 	
 	/*7511 LVDS IO Control start*/
 	printk("nodka_lvds_index = %d\n",plat->lvds_index);
@@ -500,6 +515,20 @@
 	int ret;
 	const char *cmd_type;
 
+	ret = gpio_request_by_name(dev, "vcc-5v-gpio", 0,
+                                   &priv->vcc_5v, GPIOD_IS_OUT);
+        if (ret && ret != -ENOENT) {
+                printf("%s: Cannot get vcc-5v-gpio: %d\n", __func__, ret);
+                return ret;
+        }
+
+        ret = gpio_request_by_name(dev, "vddio-mipi", 0,
+                                   &priv->vddio_mipi, GPIOD_IS_OUT);
+        if (ret && ret != -ENOENT) {
+                printf("%s: Cannot get vddio-mipi: %d\n", __func__, ret);
+                return ret;
+	}
+
 	ret = gpio_request_by_name(dev, "edp-bl-gpios", 0,
 				   &priv->edp_bl_on, GPIOD_IS_OUT);
 	if (ret && ret != -ENOENT) {

--
Gitblit v1.6.2