From c1130c7a6bd6cde9a9984da10de0edf47161df33 Mon Sep 17 00:00:00 2001
From: Yangbo Lu <yangbo.lu@nxp.com>
Date: Thu, 15 Oct 2020 16:56:10 +0800
Subject: layerscape: several kernel fix-ups from NXP linux factory

NXP linux factory unifies one linux kernel for i.MX, Layerscape and
S32 platforms. It provides a common code base for their SDKs.

Add several kernel patches for bug fix from linux factory last release.

Git: https://source.codeaurora.org/external/qoriq/qoriq-components/linux
Tag: LTS-5.4.47-20200828

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
---
 ...-ls1046a-fix-ippdexpcr-offset-not-correct.patch | 30 ++++++++
 ...s1043a-update-USB-nodes-status-to-match-b.patch | 87 ++++++++++++++++++++++
 ...ts-ls1043a-remove-thermal-zone-5-from-dts.patch | 29 ++++++++
 3 files changed, 146 insertions(+)
 create mode 100644 target/linux/layerscape/patches-5.4/302-dts-0120-arm64-dts-ls1046a-fix-ippdexpcr-offset-not-correct.patch
 create mode 100644 target/linux/layerscape/patches-5.4/302-dts-0121-arm64-dts-ls1043a-update-USB-nodes-status-to-match-b.patch
 create mode 100644 target/linux/layerscape/patches-5.4/302-dts-0122-arm64-dts-ls1043a-remove-thermal-zone-5-from-dts.patch

diff --git a/target/linux/layerscape/patches-5.4/302-dts-0120-arm64-dts-ls1046a-fix-ippdexpcr-offset-not-correct.patch b/target/linux/layerscape/patches-5.4/302-dts-0120-arm64-dts-ls1046a-fix-ippdexpcr-offset-not-correct.patch
new file mode 100644
index 0000000000..4cda7e48e8
--- /dev/null
+++ b/target/linux/layerscape/patches-5.4/302-dts-0120-arm64-dts-ls1046a-fix-ippdexpcr-offset-not-correct.patch
@@ -0,0 +1,30 @@
+From d589ed7b9aa91de94eb558ae83ccebd59b881d61 Mon Sep 17 00:00:00 2001
+From: Ran Wang <ran.wang_1@nxp.com>
+Date: Tue, 10 Mar 2020 21:06:29 +0800
+Subject: [PATCH] arm64: dts: ls1046a: fix ippdexpcr offset not correct
+
+The wrong offset of ippdexpcr in dtsi causes RCPM driver did not
+program ippdexpcr properly, which lead to LPM20 cannot exit by wakeup
+source.
+
+Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
+---
+ arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
+index 718af5e..1ef5743 100644
+--- a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
++++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
+@@ -796,7 +796,7 @@
+ 
+ 		rcpm: rcpm@1ee208c {
+ 			compatible = "fsl,ls1046a-rcpm", "fsl,qoriq-rcpm-2.1+";
+-			reg = <0x0 0x1ee208c 0x0 0x4>;
++			reg = <0x0 0x1ee2140 0x0 0x4>;
+ 			#fsl,rcpm-wakeup-cells = <1>;
+ 		};
+ 
+-- 
+2.7.4
+
diff --git a/target/linux/layerscape/patches-5.4/302-dts-0121-arm64-dts-ls1043a-update-USB-nodes-status-to-match-b.patch b/target/linux/layerscape/patches-5.4/302-dts-0121-arm64-dts-ls1043a-update-USB-nodes-status-to-match-b.patch
new file mode 100644
index 0000000000..a51004b986
--- /dev/null
+++ b/target/linux/layerscape/patches-5.4/302-dts-0121-arm64-dts-ls1043a-update-USB-nodes-status-to-match-b.patch
@@ -0,0 +1,87 @@
+From 2dfd145470894296d70873942ae056340e3fd78d Mon Sep 17 00:00:00 2001
+From: Ran Wang <ran.wang_1@nxp.com>
+Date: Tue, 7 Jul 2020 15:40:31 +0800
+Subject: [PATCH] arm64: dts: ls1043a: update USB nodes status to match board
+ config
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+ls1043a-rdb and ls1043a-qds board’s default HW config (such as
+pin mux selection) would not enable some USB controllers’
+data path, which causing over-current detected on those
+controllers. This will hit the case of ‘xhci driver prevent bus suspend
+if a root hub port detected over-current condition’, causing system
+failed to be suspended. So disable them in device tree to resolve this
+issue.
+
+Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
+Signed-off-by: Shawn Guo <shawnguo@kernel.org>
+---
+ arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts | 4 ++++
+ arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts | 8 ++++++++
+ arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi    | 3 +++
+ 3 files changed, 15 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts
+index 219a98780..fe4c4e1fa 100644
+--- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts
++++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts
+@@ -167,6 +167,10 @@
+ 	};
+ };
+ 
++&usb0 {
++	status = "okay";
++};
++
+ #include "fsl-ls1043-post.dtsi"
+ 
+ &fman0 {
+diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
+index ace1d6061..aa2f88f8e 100644
+--- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
++++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
+@@ -213,3 +213,11 @@
+ 		};
+ 	};
+ };
++
++&usb0 {
++	status = "okay";
++};
++
++&usb1 {
++	status = "okay";
++};
+diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
+index e19e05dda..f879ac8f0 100644
+--- a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
++++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
+@@ -706,6 +706,7 @@
+ 				snps,host-vbus-glitches;
+ 				configure-gfladj;
+ 				dma-coherent;
++				status = "disabled";
+ 			};
+ 
+ 			usb1: usb3@3000000 {
+@@ -721,6 +722,7 @@
+ 				snps,host-vbus-glitches;
+ 				configure-gfladj;
+ 				dma-coherent;
++				status = "disabled";
+ 			};
+ 
+ 			usb2: usb3@3100000 {
+@@ -736,6 +738,7 @@
+ 				snps,host-vbus-glitches;
+ 				configure-gfladj;
+ 				dma-coherent;
++				status = "disabled";
+ 			};
+ 
+ 			sata: sata@3200000 {
+-- 
+2.17.1
+
diff --git a/target/linux/layerscape/patches-5.4/302-dts-0122-arm64-dts-ls1043a-remove-thermal-zone-5-from-dts.patch b/target/linux/layerscape/patches-5.4/302-dts-0122-arm64-dts-ls1043a-remove-thermal-zone-5-from-dts.patch
new file mode 100644
index 0000000000..0cde3615df
--- /dev/null
+++ b/target/linux/layerscape/patches-5.4/302-dts-0122-arm64-dts-ls1043a-remove-thermal-zone-5-from-dts.patch
@@ -0,0 +1,29 @@
+From aa5e9dc53636e5ae40fc1460c7d3897c2d8588fe Mon Sep 17 00:00:00 2001
+From: Yuantian Tang <andy.tang@nxp.com>
+Date: Mon, 9 Mar 2020 10:44:54 +0800
+Subject: [PATCH] arm64: dts: ls1043a: remove thermal zone 5 from dts
+
+Thermal monitor zone 5 does not exist. So remove it
+from dts.
+
+Signed-off-by: Yuantian <andy.tang@nxp.com>
+---
+ arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
+index e19e05ddae08..fd898d51f53a 100644
+--- a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
++++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
+@@ -915,8 +915,4 @@
+ 	thermal-zone4 {
+ 		status = "okay";
+ 	};
+-
+-	thermal-zone5 {
+-		status = "okay";
+-	};
+ };
+-- 
+2.17.1
+
-- 
cgit v1.2.3