[PATCH] ipq40xx: use upstream DTS files for IPQ4019/AP-DK04.1

Adrian Schmutzler freifunk at adrianschmutzler.de
Thu Oct 1 16:17:28 EDT 2020


Upstream provides DTS(I) files for IPQ4019/AP-DK04.1, but we overwrite
them with local versions so far.

Remove the local files and use patches to be closer to upstream.
We already do the same for IPQ40xx/AP-DK01.1-C1.

Technically, this changes the compatible from "qcom,ipq4019" to
"qcom,ipq4019-dk04.1-c1", but it has never been implemented correctly
beforehand anyway.

Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
 .../boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts    |  21 --
 .../arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi  | 181 ------------------
 .../902-dts-ipq4019-ap-dk04.1.patch           | 150 +++++++++++++++
 3 files changed, 150 insertions(+), 202 deletions(-)
 delete mode 100644 target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts
 delete mode 100644 target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi
 create mode 100644 target/linux/ipq40xx/patches-5.4/902-dts-ipq4019-ap-dk04.1.patch

diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts
deleted file mode 100644
index 47202d28fe..0000000000
--- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- *
- */
-
-#include "qcom-ipq4019-ap.dk04.1.dtsi"
-
-/ {
-	model = "Qualcomm Technologies, Inc. IPQ40xx/AP-DK04.1-C1";
-};
diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi
deleted file mode 100644
index 9801354625..0000000000
--- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi
+++ /dev/null
@@ -1,181 +0,0 @@
-/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- *
- */
-
-#include "qcom-ipq4019.dtsi"
-#include <dt-bindings/gpio/gpio.h>
-
-/ {
-	model = "Qualcomm Technologies, Inc. IPQ4019/AP-DK04.1";
-	compatible = "qcom,ipq4019";
-
-	soc {
-		rng at 22000 {
-			status = "okay";
-		};
-
-		pinctrl at 1000000 {
-			serial_0_pins: serial_pinmux {
-				mux {
-					pins = "gpio16", "gpio17";
-					function = "blsp_uart0";
-					bias-disable;
-				};
-			};
-
-			serial_1_pins: serial1_pinmux {
-				mux {
-					pins = "gpio8", "gpio9";
-					function = "blsp_uart1";
-					bias-disable;
-				};
-			};
-
-			spi_0_pins: spi_0_pinmux {
-				pinmux {
-					function = "blsp_spi0";
-					pins = "gpio13", "gpio14", "gpio15";
-				};
-				pinmux_cs {
-					function = "gpio";
-					pins = "gpio12";
-				};
-				pinconf {
-					pins = "gpio13", "gpio14", "gpio15";
-					drive-strength = <12>;
-					bias-disable;
-				};
-				pinconf_cs {
-					pins = "gpio12";
-					drive-strength = <2>;
-					bias-disable;
-					output-high;
-				};
-			};
-
-			i2c_0_pins: i2c_0_pinmux {
-				pinmux {
-					function = "blsp_i2c0";
-					pins = "gpio10", "gpio11";
-				};
-				pinconf {
-					pins = "gpio10", "gpio11";
-					drive-strength = <16>;
-					bias-disable;
-				};
-			};
-
-			nand_pins: nand_pins {
-
-				pullups {
-					pins = "gpio52", "gpio53", "gpio58",
-						"gpio59";
-					function = "qpic";
-					bias-pull-up;
-				};
-
-				pulldowns {
-					pins = "gpio54", "gpio55", "gpio56",
-						"gpio57", "gpio60", "gpio61",
-						"gpio62", "gpio63", "gpio64",
-						"gpio65", "gpio66", "gpio67",
-						"gpio68", "gpio69";
-					function = "qpic";
-					bias-pull-down;
-				};
-			};
-		};
-
-		blsp_dma: dma at 7884000 {
-			status = "okay";
-		};
-
-		spi0: spi at 78b5000 {
-			pinctrl-0 = <&spi_0_pins>;
-			pinctrl-names = "default";
-			status = "okay";
-			cs-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
-
-			mx25l25635e at 0 {
-				#address-cells = <1>;
-				#size-cells = <1>;
-				reg = <0>;
-				compatible = "mx25l25635e";
-				spi-max-frequency = <24000000>;
-			};
-		};
-
-		i2c0: i2c at 78b7000 { /* BLSP1 QUP2 */
-			pinctrl-0 = <&i2c_0_pins>;
-			pinctrl-names = "default";
-
-			status = "okay";
-		};
-
-		serial at 78af000 {
-			pinctrl-0 = <&serial_0_pins>;
-			pinctrl-names = "default";
-			status = "okay";
-		};
-
-		serial at 78b0000 {
-			pinctrl-0 = <&serial_1_pins>;
-			pinctrl-names = "default";
-			status = "okay";
-		};
-
-		usb3_ss_phy: ssphy at 9a000 {
-			status = "okay";
-		};
-
-		usb3_hs_phy: hsphy at a6000 {
-			status = "okay";
-		};
-
-		usb3: usb3 at 8af8800 {
-			status = "okay";
-		};
-
-		usb2_hs_phy: hsphy at a8000 {
-			status = "okay";
-		};
-
-		usb2: usb2 at 60f8800 {
-			status = "okay";
-		};
-
-		cryptobam: dma at 8e04000 {
-			status = "okay";
-		};
-
-		crypto at 8e3a000 {
-			status = "okay";
-		};
-
-		watchdog at b017000 {
-			status = "okay";
-		};
-
-		qpic_bam: dma at 7984000 {
-			status = "okay";
-		};
-
-		nand: qpic-nand at 79b0000 {
-			pinctrl-0 = <&nand_pins>;
-			pinctrl-names = "default";
-			status = "okay";
-		};
-	};
-};
diff --git a/target/linux/ipq40xx/patches-5.4/902-dts-ipq4019-ap-dk04.1.patch b/target/linux/ipq40xx/patches-5.4/902-dts-ipq4019-ap-dk04.1.patch
new file mode 100644
index 0000000000..e92a808580
--- /dev/null
+++ b/target/linux/ipq40xx/patches-5.4/902-dts-ipq4019-ap-dk04.1.patch
@@ -0,0 +1,150 @@
+--- a/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi
++++ b/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi
+@@ -23,6 +23,10 @@
+ 	};
+ 
+ 	soc {
++		rng at 22000 {
++			status = "okay";
++		};
++
+ 		pinctrl at 1000000 {
+ 			serial_0_pins: serial0-pinmux {
+ 				pins = "gpio16", "gpio17";
+@@ -31,8 +35,7 @@
+ 			};
+ 
+ 			serial_1_pins: serial1-pinmux {
+-				pins = "gpio8", "gpio9",
+-					"gpio10", "gpio11";
++				pins = "gpio8", "gpio9";
+ 				function = "blsp_uart1";
+ 				bias-disable;
+ 			};
+@@ -41,29 +44,53 @@
+ 				pinmux {
+ 					function = "blsp_spi0";
+ 					pins = "gpio13", "gpio14", "gpio15";
+-					bias-disable;
+ 				};
+ 				pinmux_cs {
+ 					function = "gpio";
+ 					pins = "gpio12";
++				};
++				pinconf {
++					pins = "gpio13", "gpio14", "gpio15";
++					drive-strength = <12>;
++					bias-disable;
++				};
++				pinconf_cs {
++					pins = "gpio12";
++					drive-strength = <2>;
+ 					bias-disable;
+ 					output-high;
+ 				};
+ 			};
+ 
+ 			i2c_0_pins: i2c-0-pinmux {
+-				pins = "gpio20", "gpio21";
+-				function = "blsp_i2c0";
+-				bias-disable;
++				pinmux {
++					function = "blsp_i2c0";
++					pins = "gpio10", "gpio11";
++				};
++				pinconf {
++					pins = "gpio10", "gpio11";
++					drive-strength = <16>;
++					bias-disable;
++				};
+ 			};
+ 
+ 			nand_pins: nand-pins {
+-				pins = "gpio53", "gpio55", "gpio56",
+-					"gpio57", "gpio58", "gpio59",
+-					"gpio60", "gpio62", "gpio63",
+-					"gpio64", "gpio65", "gpio66",
+-					"gpio67", "gpio68", "gpio69";
+-				function = "qpic";
++				pullups {
++					pins = "gpio52", "gpio53", "gpio58",
++						"gpio59";
++					function = "qpic";
++					bias-pull-up;
++				};
++
++				pulldowns {
++					pins = "gpio54", "gpio55", "gpio56",
++						"gpio57", "gpio60", "gpio61",
++						"gpio62", "gpio63", "gpio64",
++						"gpio65", "gpio66", "gpio67",
++						"gpio68", "gpio69";
++					function = "qpic";
++					bias-pull-down;
++				};
+ 			};
+ 		};
+ 
+@@ -89,23 +116,57 @@
+ 			status = "ok";
+ 			cs-gpios = <&tlmm 12 0>;
+ 
+-			m25p80 at 0 {
++			mx25l25635e at 0 {
+ 				#address-cells = <1>;
+ 				#size-cells = <1>;
+ 				reg = <0>;
+-				compatible = "n25q128a11";
++				compatible = "mx25l25635e";
+ 				spi-max-frequency = <24000000>;
+ 			};
+ 		};
+ 
+-		pci at 40000000 {
+-			status = "ok";
+-			perst-gpio = <&tlmm 38 0x1>;
++		i2c0: i2c at 78b7000 { /* BLSP1 QUP2 */
++			pinctrl-0 = <&i2c_0_pins>;
++			pinctrl-names = "default";
++
++			status = "okay";
+ 		};
+ 
+ 		qpic-nand at 79b0000 {
+ 			pinctrl-0 = <&nand_pins>;
+ 			pinctrl-names = "default";
+ 		};
++
++		usb3_ss_phy: ssphy at 9a000 {
++			status = "okay";
++		};
++
++		usb3_hs_phy: hsphy at a6000 {
++			status = "okay";
++		};
++
++		usb3: usb3 at 8af8800 {
++			status = "okay";
++		};
++
++		usb2_hs_phy: hsphy at a8000 {
++			status = "okay";
++		};
++
++		usb2: usb2 at 60f8800 {
++			status = "okay";
++		};
++
++		cryptobam: dma at 8e04000 {
++			status = "okay";
++		};
++
++		crypto at 8e3a000 {
++			status = "okay";
++		};
++
++		watchdog at b017000 {
++			status = "okay";
++		};
+ 	};
+ };
-- 
2.20.1




More information about the openwrt-devel mailing list