From 89e9f58c817a3c2b2ed4f4c363cd90bf5d1fea0a Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Tue, 23 Nov 2021 20:08:18 +0800
Subject: [PATCH] update linux patch for ov5640 dts, ov5640 can work normal on 64x480

---
 bsp/kernel/patch/linux-imx-imx6ull.patch |   77 +++++++++++++++++++++++++++-----------
 1 files changed, 54 insertions(+), 23 deletions(-)

diff --git a/bsp/kernel/patch/linux-imx-imx6ull.patch b/bsp/kernel/patch/linux-imx-imx6ull.patch
index f591d77..9d5f14f 100644
--- a/bsp/kernel/patch/linux-imx-imx6ull.patch
+++ b/bsp/kernel/patch/linux-imx-imx6ull.patch
@@ -1,6 +1,6 @@
 diff -Nuar -x include-prefixes -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/imx6ul-14x14-evk.dtsi linux-imx-imx6ull/arch/arm/boot/dts/imx6ul-14x14-evk.dtsi
 --- linux-imx/arch/arm/boot/dts/imx6ul-14x14-evk.dtsi	2021-09-08 18:41:11.000000000 +0800
-+++ linux-imx-imx6ull/arch/arm/boot/dts/imx6ul-14x14-evk.dtsi	2021-11-21 01:03:31.733719397 +0800
++++ linux-imx-imx6ull/arch/arm/boot/dts/imx6ul-14x14-evk.dtsi	2021-11-23 19:58:00.218178392 +0800
 @@ -31,7 +31,41 @@
  		brightness-levels = <0 4 8 16 32 64 128 255>;
  		default-brightness-level = <6>;
@@ -65,7 +65,32 @@
  		/*
  		 * If you want to want to make this dynamic please
  		 * check schematics and test all affected peripherals:
-@@ -142,7 +173,7 @@
+@@ -78,6 +109,24 @@
+ 		gpios = <&gpio_spi 3 GPIO_ACTIVE_LOW>;
+ 	};
+ 
++	reg_3p3v: 3p3v {
++		compatible = "regulator-fixed";
++		regulator-name = "3P3V";
++		regulator-min-microvolt = <3300000>;
++		regulator-max-microvolt = <3300000>;
++		regulator-boot-on;
++		regulator-always-on;
++	};
++
++	reg_1p8v: 1p8v {
++		compatible = "regulator-fixed";
++		regulator-name = "1P8V";
++		regulator-min-microvolt = <1800000>;
++		regulator-max-microvolt = <1800000>;
++		regulator-boot-on;
++		regulator-always-on;
++	};
++
+ 	sound {
+ 		compatible = "simple-audio-card";
+ 		simple-audio-card,name = "mx6ul-wm8960";
+@@ -142,7 +191,7 @@
  		compatible = "spi-gpio";
  		pinctrl-names = "default";
  		pinctrl-0 = <&pinctrl_spi4>;
@@ -74,7 +99,7 @@
  		pinctrl-assert-gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
  		gpio-sck = <&gpio5 11 0>;
  		gpio-mosi = <&gpio5 10 0>;
-@@ -169,7 +200,7 @@
+@@ -169,7 +218,7 @@
  };
  
  &csi {
@@ -83,7 +108,7 @@
  
  	port {
  		csi1_ep: endpoint {
-@@ -184,6 +215,26 @@
+@@ -184,6 +233,26 @@
  	pinctrl-0 = <&pinctrl_i2c2>;
  	status = "okay";
  
@@ -110,7 +135,7 @@
  	codec: wm8960@1a {
  		#sound-dai-cells = <0>;
  		compatible = "wlf,wm8960";
-@@ -192,7 +243,8 @@
+@@ -192,7 +261,8 @@
  		wlf,hp-cfg = <3 2 3>;
  		wlf,gpio-cfg = <1 3>;
  		clocks = <&clks IMX6UL_CLK_SAI2>;
@@ -120,12 +145,18 @@
  	};
  
  	ov5640: ov5640@3c {
-@@ -202,12 +254,13 @@
+@@ -202,12 +272,19 @@
  		pinctrl-0 = <&pinctrl_csi1>;
  		clocks = <&clks IMX6UL_CLK_CSI>;
  		clock-names = "csi_mclk";
 -		pwn-gpios = <&gpio_spi 6 1>;
 -		rst-gpios = <&gpio_spi 5 0>;
++
++		DOVDD-supply = <&reg_3p3v>;
++		VDD-supply = <&reg_1p8v>;
++		AVDD-supply = <&reg_3p3v>;
++		DVDD-supply = <&reg_3p3v>;
++
 +        pwn-gpios = <&gpio5 6 GPIO_ACTIVE_HIGH>;
 +        rst-gpios = <&gpio5 5 GPIO_ACTIVE_LOW>;
  		csi_id = <0>;
@@ -137,7 +168,7 @@
  		port {
  			ov5640_ep: endpoint {
  				remote-endpoint = <&csi1_ep>;
-@@ -222,6 +275,9 @@
+@@ -222,6 +299,9 @@
  	phy-mode = "rmii";
  	phy-handle = <&ethphy0>;
  	phy-supply = <&reg_peri_3v3>;
@@ -147,7 +178,7 @@
  	status = "okay";
  };
  
-@@ -231,14 +287,17 @@
+@@ -231,14 +311,17 @@
  	phy-mode = "rmii";
  	phy-handle = <&ethphy1>;
  	phy-supply = <&reg_peri_3v3>;
@@ -167,7 +198,7 @@
  			micrel,led-mode = <1>;
  			clocks = <&clks IMX6UL_CLK_ENET_REF>;
  			clock-names = "rmii-ref";
-@@ -301,21 +360,21 @@
+@@ -301,21 +384,21 @@
  
  	display0: display@0 {
  		bits-per-pixel = <16>;
@@ -199,7 +230,7 @@
  				hsync-active = <0>;
  				vsync-active = <0>;
  				de-active = <1>;
-@@ -332,6 +391,13 @@
+@@ -332,6 +415,13 @@
  	status = "okay";
  };
  
@@ -213,7 +244,7 @@
  &pxp {
  	status = "okay";
  };
-@@ -339,7 +405,7 @@
+@@ -339,7 +429,7 @@
  &qspi {
  	pinctrl-names = "default";
  	pinctrl-0 = <&pinctrl_qspi>;
@@ -222,7 +253,7 @@
  
  	flash0: n25q256a@0 {
  		#address-cells = <1>;
-@@ -360,7 +426,7 @@
+@@ -360,7 +450,7 @@
  	assigned-clock-parents = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
  	assigned-clock-rates = <0>, <12288000>;
  	fsl,sai-mclk-direction-output;
@@ -231,7 +262,7 @@
  };
  
  &snvs_poweroff {
-@@ -439,6 +505,7 @@
+@@ -439,6 +529,7 @@
  	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
  	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
  	cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;
@@ -239,7 +270,7 @@
  	keep-power-in-suspend;
  	wakeup-source;
  	vmmc-supply = <&reg_sd1_vmmc>;
-@@ -446,8 +513,8 @@
+@@ -446,8 +537,8 @@
  };
  
  &usdhc2 {
@@ -250,7 +281,7 @@
  	non-removable;
  	keep-power-in-suspend;
  	wakeup-source;
-@@ -463,6 +530,25 @@
+@@ -463,6 +554,25 @@
  &iomuxc {
  	pinctrl-names = "default";
  
@@ -276,7 +307,7 @@
  	pinctrl_csi1: csi1grp {
  		fsl,pins = <
  			MX6UL_PAD_CSI_MCLK__CSI_MCLK		0x1b088
-@@ -490,6 +576,7 @@
+@@ -490,6 +600,7 @@
  			MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00	0x1b0b0
  			MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01	0x1b0b0
  			MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1	0x4001b031
@@ -284,7 +315,7 @@
  		>;
  	};
  
-@@ -505,6 +592,7 @@
+@@ -505,6 +616,7 @@
  			MX6UL_PAD_ENET2_TX_DATA0__ENET2_TDATA00	0x1b0b0
  			MX6UL_PAD_ENET2_TX_DATA1__ENET2_TDATA01	0x1b0b0
  			MX6UL_PAD_ENET2_TX_CLK__ENET2_REF_CLK2	0x4001b031
@@ -292,7 +323,7 @@
  		>;
  	};
  
-@@ -594,19 +682,18 @@
+@@ -594,19 +706,18 @@
  			MX6UL_PAD_JTAG_TRST_B__SAI2_TX_DATA	0x11088
  			MX6UL_PAD_JTAG_TCK__SAI2_RX_DATA	0x11088
  			MX6UL_PAD_JTAG_TMS__SAI2_MCLK		0x17088
@@ -316,7 +347,7 @@
  		>;
  	};
  
-@@ -625,7 +712,6 @@
+@@ -625,7 +736,6 @@
  		fsl,pins = <
  			MX6UL_PAD_BOOT_MODE0__GPIO5_IO10	0x70a1
  			MX6UL_PAD_BOOT_MODE1__GPIO5_IO11	0x70a1
@@ -324,7 +355,7 @@
  			MX6UL_PAD_SNVS_TAMPER8__GPIO5_IO08	0x80000000
  		>;
  	};
-@@ -678,9 +764,7 @@
+@@ -678,9 +788,7 @@
  			MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 	0x17059
  			MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 	0x17059
  			MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 	0x17059
@@ -337,7 +368,7 @@
  
 diff -Nuar -x include-prefixes -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/imx6ul.dtsi linux-imx-imx6ull/arch/arm/boot/dts/imx6ul.dtsi
 --- linux-imx/arch/arm/boot/dts/imx6ul.dtsi	2021-09-08 18:41:11.000000000 +0800
-+++ linux-imx-imx6ull/arch/arm/boot/dts/imx6ul.dtsi	2021-11-21 00:59:59.079515086 +0800
++++ linux-imx-imx6ull/arch/arm/boot/dts/imx6ul.dtsi	2021-11-23 19:45:27.875382794 +0800
 @@ -727,6 +727,7 @@
  					offset = <0x34>;
  					interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
@@ -348,7 +379,7 @@
  				snvs_poweroff: snvs-poweroff {
 diff -Nuar -x include-prefixes -x logo_linux_clut224.ppm linux-imx/.cfg-imx6ull linux-imx-imx6ull/.cfg-imx6ull
 --- linux-imx/.cfg-imx6ull	1970-01-01 08:00:00.000000000 +0800
-+++ linux-imx-imx6ull/.cfg-imx6ull	2021-11-21 01:03:45.693634267 +0800
++++ linux-imx-imx6ull/.cfg-imx6ull	2021-11-23 20:06:37.849363291 +0800
 @@ -0,0 +1,6819 @@
 +#
 +# Automatically generated file; DO NOT EDIT.
@@ -7171,7 +7202,7 @@
 +# end of Kernel hacking
 diff -Nuar -x include-prefixes -x logo_linux_clut224.ppm linux-imx/Makefile linux-imx-imx6ull/Makefile
 --- linux-imx/Makefile	2021-09-08 18:41:11.000000000 +0800
-+++ linux-imx-imx6ull/Makefile	2021-11-21 00:59:59.083515054 +0800
++++ linux-imx-imx6ull/Makefile	2021-11-23 19:58:23.629972395 +0800
 @@ -367,7 +367,8 @@
  # Alternatively CROSS_COMPILE can be set in the environment.
  # Default value for CROSS_COMPILE is not to prefix executables

--
Gitblit v1.9.1