[openwrt/openwrt] kernel: bump 5.15 to 5.15.32

LEDE Commits lede-commits at lists.infradead.org
Sat Apr 9 10:40:49 PDT 2022


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/5a09eb17c2ca3a8fea09509b09edb30c54e9316e

commit 5a09eb17c2ca3a8fea09509b09edb30c54e9316e
Author: Rui Salvaterra <rsalvaterra at gmail.com>
AuthorDate: Wed Mar 30 09:42:31 2022 +0100

    kernel: bump 5.15 to 5.15.32
    
    Patches automatically rebased.
    
    Signed-off-by: Rui Salvaterra <rsalvaterra at gmail.com>
---
 include/kernel-5.15                                |  4 +--
 .../408-mtd-redboot_partition_scan.patch           |  4 +--
 ...t-mtk_eth_soc-implement-flow-offloading-t.patch |  8 ++---
 ...t-mtk_eth_soc-add-ipv6-flow-offload-suppo.patch |  4 +--
 ...t-mtk_eth_soc-support-TC_SETUP_BLOCK-for-.patch |  2 +-
 ...t-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch | 12 +++----
 ...t-mtk_eth_soc-rework-hardware-flow-table-.patch |  8 ++---
 ...t-mtk_eth_soc-support-creating-mac-addres.patch | 10 +++---
 ...mx6q-apalis-ixora-add-status-LEDs-aliases.patch |  8 ++---
 ...6q-apalis-ixora-make-switch3-reset-button.patch | 12 +++----
 ...HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch |  6 ++--
 ...eric-Mangle-bootloader-s-kernel-arguments.patch |  6 ++--
 .../patches-5.15/0069-arm-boot-add-dts-files.patch |  2 +-
 .../patches-5.15/082-ipq8064-dtsi-tweaks.patch     | 14 ++++----
 .../patches-5.15/083-ipq8064-dtsi-additions.patch  | 16 ++++-----
 ...pufreq-add-Krait-dedicated-scaling-driver.patch |  6 ++--
 ...98-3-add-fab-scaling-support-with-cpufreq.patch |  2 +-
 ...w-qcom_nandc-add-boot_layout_mode-support.patch | 40 +++++++++++-----------
 ...on-devicetree-mtd-qcom_nandc-document-qco.patch | 11 +++---
 ...otfs-conflicts-with-OpenWrt-auto-mounting.patch |  4 +--
 ...03-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch |  6 ++--
 ...m-tsens-init-debugfs-only-with-successful.patch |  4 +--
 ...qcom-tsens-simplify-debugfs-init-function.patch |  4 +--
 .../patches-5.15/850-soc-add-qualcomm-syscon.patch |  2 +-
 24 files changed, 98 insertions(+), 97 deletions(-)

diff --git a/include/kernel-5.15 b/include/kernel-5.15
index 4271b8948c..eb4e295e4b 100644
--- a/include/kernel-5.15
+++ b/include/kernel-5.15
@@ -1,2 +1,2 @@
-LINUX_VERSION-5.15 = .31
-LINUX_KERNEL_HASH-5.15.31 = f621384b47d5bed927910bf5211e7b4ccac925f28218e483bb1a9c484b246b88
+LINUX_VERSION-5.15 = .32
+LINUX_KERNEL_HASH-5.15.32 = 1463cdfa223088610dd65d3eadeffa44ec49746091b8ae8ddac6f3070d17df86
diff --git a/target/linux/ath79/patches-5.15/408-mtd-redboot_partition_scan.patch b/target/linux/ath79/patches-5.15/408-mtd-redboot_partition_scan.patch
index 905c1319db..07c0a258ae 100644
--- a/target/linux/ath79/patches-5.15/408-mtd-redboot_partition_scan.patch
+++ b/target/linux/ath79/patches-5.15/408-mtd-redboot_partition_scan.patch
@@ -19,7 +19,7 @@
  				return -EIO;
  			}
  			offset -= master->erasesize;
-@@ -108,10 +113,6 @@ nogood:
+@@ -108,10 +114,6 @@ nogood:
  				goto nogood;
  		}
  	}
@@ -30,7 +30,7 @@
  
  	pr_notice("Searching for RedBoot partition table in %s at offset 0x%lx\n",
  		  master->name, offset);
-@@ -183,6 +184,12 @@ nogood:
+@@ -183,6 +185,12 @@ nogood:
  	}
  	if (i == numslots) {
  		/* Didn't find it */
diff --git a/target/linux/generic/pending-5.15/701-03-net-ethernet-mtk_eth_soc-implement-flow-offloading-t.patch b/target/linux/generic/pending-5.15/701-03-net-ethernet-mtk_eth_soc-implement-flow-offloading-t.patch
index 9abb68c356..6ceca9306a 100644
--- a/target/linux/generic/pending-5.15/701-03-net-ethernet-mtk_eth_soc-implement-flow-offloading-t.patch
+++ b/target/linux/generic/pending-5.15/701-03-net-ethernet-mtk_eth_soc-implement-flow-offloading-t.patch
@@ -166,7 +166,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	u16 addr_type = 0;
  	u32 timestamp;
  	u8 l4proto = 0;
-@@ -329,10 +372,14 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -326,10 +369,14 @@ mtk_flow_offload_replace(struct mtk_eth
  	if (data.pppoe.num == 1)
  		mtk_foe_entry_set_pppoe(&foe, data.pppoe.sid);
  
@@ -182,7 +182,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	entry = kzalloc(sizeof(*entry), GFP_KERNEL);
  	if (!entry)
  		return -ENOMEM;
-@@ -346,6 +393,7 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -343,6 +390,7 @@ mtk_flow_offload_replace(struct mtk_eth
  	}
  
  	entry->hash = hash;
@@ -190,7 +190,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	err = rhashtable_insert_fast(&eth->flow_table, &entry->node,
  				     mtk_flow_ht_params);
  	if (err < 0)
-@@ -356,6 +404,8 @@ clear_flow:
+@@ -353,6 +401,8 @@ clear_flow:
  	mtk_foe_entry_clear(&eth->ppe, hash);
  free:
  	kfree(entry);
@@ -199,7 +199,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	return err;
  }
  
-@@ -372,6 +422,8 @@ mtk_flow_offload_destroy(struct mtk_eth
+@@ -369,6 +419,8 @@ mtk_flow_offload_destroy(struct mtk_eth
  	mtk_foe_entry_clear(&eth->ppe, entry->hash);
  	rhashtable_remove_fast(&eth->flow_table, &entry->node,
  			       mtk_flow_ht_params);
diff --git a/target/linux/generic/pending-5.15/701-05-net-ethernet-mtk_eth_soc-add-ipv6-flow-offload-suppo.patch b/target/linux/generic/pending-5.15/701-05-net-ethernet-mtk_eth_soc-add-ipv6-flow-offload-suppo.patch
index b2114eb02d..9adb067015 100644
--- a/target/linux/generic/pending-5.15/701-05-net-ethernet-mtk_eth_soc-add-ipv6-flow-offload-suppo.patch
+++ b/target/linux/generic/pending-5.15/701-05-net-ethernet-mtk_eth_soc-add-ipv6-flow-offload-suppo.patch
@@ -49,7 +49,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  static void
  mtk_flow_offload_mangle_eth(const struct flow_action_entry *act, void *eth)
  {
-@@ -299,6 +313,9 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -296,6 +310,9 @@ mtk_flow_offload_replace(struct mtk_eth
  	case FLOW_DISSECTOR_KEY_IPV4_ADDRS:
  		offload_type = MTK_PPE_PKT_TYPE_IPV4_HNAPT;
  		break;
@@ -59,7 +59,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	default:
  		return -EOPNOTSUPP;
  	}
-@@ -334,6 +351,17 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -331,6 +348,17 @@ mtk_flow_offload_replace(struct mtk_eth
  		mtk_flow_set_ipv4_addr(&foe, &data, false);
  	}
  
diff --git a/target/linux/generic/pending-5.15/701-06-net-ethernet-mtk_eth_soc-support-TC_SETUP_BLOCK-for-.patch b/target/linux/generic/pending-5.15/701-06-net-ethernet-mtk_eth_soc-support-TC_SETUP_BLOCK-for-.patch
index a9fc70533d..72c6d28172 100644
--- a/target/linux/generic/pending-5.15/701-06-net-ethernet-mtk_eth_soc-support-TC_SETUP_BLOCK-for-.patch
+++ b/target/linux/generic/pending-5.15/701-06-net-ethernet-mtk_eth_soc-support-TC_SETUP_BLOCK-for-.patch
@@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
 +++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
-@@ -566,10 +566,13 @@ mtk_eth_setup_tc_block(struct net_device
+@@ -563,10 +563,13 @@ mtk_eth_setup_tc_block(struct net_device
  int mtk_eth_setup_tc(struct net_device *dev, enum tc_setup_type type,
  		     void *type_data)
  {
diff --git a/target/linux/generic/pending-5.15/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch b/target/linux/generic/pending-5.15/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch
index 7c6931d333..7dbf7a2a26 100644
--- a/target/linux/generic/pending-5.15/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch
+++ b/target/linux/generic/pending-5.15/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch
@@ -103,7 +103,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
 --- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
 +++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
-@@ -414,7 +414,7 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -411,7 +411,7 @@ mtk_flow_offload_replace(struct mtk_eth
  
  	entry->cookie = f->cookie;
  	timestamp = mtk_eth_timestamp(eth);
@@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	if (hash < 0) {
  		err = hash;
  		goto free;
-@@ -429,7 +429,7 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -426,7 +426,7 @@ mtk_flow_offload_replace(struct mtk_eth
  
  	return 0;
  clear_flow:
@@ -121,7 +121,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  free:
  	kfree(entry);
  	if (wed_index >= 0)
-@@ -447,7 +447,7 @@ mtk_flow_offload_destroy(struct mtk_eth
+@@ -444,7 +444,7 @@ mtk_flow_offload_destroy(struct mtk_eth
  	if (!entry)
  		return -ENOENT;
  
@@ -130,7 +130,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	rhashtable_remove_fast(&eth->flow_table, &entry->node,
  			       mtk_flow_ht_params);
  	if (entry->wed_index >= 0)
-@@ -469,7 +469,7 @@ mtk_flow_offload_stats(struct mtk_eth *e
+@@ -466,7 +466,7 @@ mtk_flow_offload_stats(struct mtk_eth *e
  	if (!entry)
  		return -ENOENT;
  
@@ -139,7 +139,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	if (timestamp < 0)
  		return -ETIMEDOUT;
  
-@@ -525,7 +525,7 @@ mtk_eth_setup_tc_block(struct net_device
+@@ -522,7 +522,7 @@ mtk_eth_setup_tc_block(struct net_device
  	struct flow_block_cb *block_cb;
  	flow_setup_cb_t *cb;
  
@@ -148,7 +148,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		return -EOPNOTSUPP;
  
  	if (f->binder_type != FLOW_BLOCK_BINDER_TYPE_CLSACT_INGRESS)
-@@ -577,7 +577,7 @@ int mtk_eth_setup_tc(struct net_device *
+@@ -574,7 +574,7 @@ int mtk_eth_setup_tc(struct net_device *
  
  int mtk_eth_offload_init(struct mtk_eth *eth)
  {
diff --git a/target/linux/generic/pending-5.15/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch b/target/linux/generic/pending-5.15/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch
index 5c726c60a1..4e20525fc9 100644
--- a/target/linux/generic/pending-5.15/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch
+++ b/target/linux/generic/pending-5.15/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch
@@ -360,7 +360,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	int i;
  
  	if (rhashtable_lookup(&eth->flow_table, &f->cookie, mtk_flow_ht_params))
-@@ -413,23 +398,21 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -410,23 +395,21 @@ mtk_flow_offload_replace(struct mtk_eth
  		return -ENOMEM;
  
  	entry->cookie = f->cookie;
@@ -392,7 +392,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  free:
  	kfree(entry);
  	if (wed_index >= 0)
-@@ -447,7 +430,7 @@ mtk_flow_offload_destroy(struct mtk_eth
+@@ -444,7 +427,7 @@ mtk_flow_offload_destroy(struct mtk_eth
  	if (!entry)
  		return -ENOENT;
  
@@ -401,7 +401,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	rhashtable_remove_fast(&eth->flow_table, &entry->node,
  			       mtk_flow_ht_params);
  	if (entry->wed_index >= 0)
-@@ -461,7 +444,6 @@ static int
+@@ -458,7 +441,6 @@ static int
  mtk_flow_offload_stats(struct mtk_eth *eth, struct flow_cls_offload *f)
  {
  	struct mtk_flow_entry *entry;
@@ -409,7 +409,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	u32 idle;
  
  	entry = rhashtable_lookup(&eth->flow_table, &f->cookie,
-@@ -469,11 +451,7 @@ mtk_flow_offload_stats(struct mtk_eth *e
+@@ -466,11 +448,7 @@ mtk_flow_offload_stats(struct mtk_eth *e
  	if (!entry)
  		return -ENOENT;
  
diff --git a/target/linux/generic/pending-5.15/701-10-net-ethernet-mtk_eth_soc-support-creating-mac-addres.patch b/target/linux/generic/pending-5.15/701-10-net-ethernet-mtk_eth_soc-support-creating-mac-addres.patch
index 67c02d6dbc..209c65e66a 100644
--- a/target/linux/generic/pending-5.15/701-10-net-ethernet-mtk_eth_soc-support-creating-mac-addres.patch
+++ b/target/linux/generic/pending-5.15/701-10-net-ethernet-mtk_eth_soc-support-creating-mac-addres.patch
@@ -452,7 +452,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	struct {
  		u16 id;
  		__be16 proto;
-@@ -260,9 +262,45 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -257,9 +259,45 @@ mtk_flow_offload_replace(struct mtk_eth
  		return -EOPNOTSUPP;
  	}
  
@@ -498,7 +498,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  			if (act->mangle.htype == FLOW_ACT_MANGLE_HDR_TYPE_ETH)
  				mtk_flow_offload_mangle_eth(act, &data.eth);
  			break;
-@@ -294,17 +332,6 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -291,17 +329,6 @@ mtk_flow_offload_replace(struct mtk_eth
  		}
  	}
  
@@ -516,7 +516,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	if (!is_valid_ether_addr(data.eth.h_source) ||
  	    !is_valid_ether_addr(data.eth.h_dest))
  		return -EINVAL;
-@@ -318,10 +345,13 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -315,10 +342,13 @@ mtk_flow_offload_replace(struct mtk_eth
  	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
  		struct flow_match_ports ports;
  
@@ -531,7 +531,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		return -EOPNOTSUPP;
  	}
  
-@@ -351,6 +381,9 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -348,6 +378,9 @@ mtk_flow_offload_replace(struct mtk_eth
  		if (act->id != FLOW_ACTION_MANGLE)
  			continue;
  
@@ -541,7 +541,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		switch (act->mangle.htype) {
  		case FLOW_ACT_MANGLE_HDR_TYPE_TCP:
  		case FLOW_ACT_MANGLE_HDR_TYPE_UDP:
-@@ -376,6 +409,9 @@ mtk_flow_offload_replace(struct mtk_eth
+@@ -373,6 +406,9 @@ mtk_flow_offload_replace(struct mtk_eth
  			return err;
  	}
  
diff --git a/target/linux/imx/patches-5.15/300-ARM-dts-imx6q-apalis-ixora-add-status-LEDs-aliases.patch b/target/linux/imx/patches-5.15/300-ARM-dts-imx6q-apalis-ixora-add-status-LEDs-aliases.patch
index 0a27e7854d..e14dc484b0 100644
--- a/target/linux/imx/patches-5.15/300-ARM-dts-imx6q-apalis-ixora-add-status-LEDs-aliases.patch
+++ b/target/linux/imx/patches-5.15/300-ARM-dts-imx6q-apalis-ixora-add-status-LEDs-aliases.patch
@@ -14,7 +14,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
 
 --- a/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
 +++ b/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
-@@ -61,6 +61,10 @@
+@@ -25,6 +25,10 @@
  		i2c2 = &i2c2;
  		rtc0 = &rtc_i2c;
  		rtc1 = &snvs_rtc;
@@ -25,7 +25,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  	};
  
  	chosen {
-@@ -128,22 +132,22 @@
+@@ -92,22 +96,22 @@
  		pinctrl-names = "default";
  		pinctrl-0 = <&pinctrl_leds_ixora>;
  
@@ -56,7 +56,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  		};
 --- a/arch/arm/boot/dts/imx6q-apalis-ixora.dts
 +++ b/arch/arm/boot/dts/imx6q-apalis-ixora.dts
-@@ -60,6 +60,10 @@
+@@ -24,6 +24,10 @@
  		i2c2 = &i2c2;
  		rtc0 = &rtc_i2c;
  		rtc1 = &snvs_rtc;
@@ -67,7 +67,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  	};
  
  	chosen {
-@@ -127,22 +131,22 @@
+@@ -91,22 +95,22 @@
  		pinctrl-names = "default";
  		pinctrl-0 = <&pinctrl_leds_ixora>;
  
diff --git a/target/linux/imx/patches-5.15/301-ARM-dts-imx6q-apalis-ixora-make-switch3-reset-button.patch b/target/linux/imx/patches-5.15/301-ARM-dts-imx6q-apalis-ixora-make-switch3-reset-button.patch
index 2bb1a16468..8f07f0b1a5 100644
--- a/target/linux/imx/patches-5.15/301-ARM-dts-imx6q-apalis-ixora-make-switch3-reset-button.patch
+++ b/target/linux/imx/patches-5.15/301-ARM-dts-imx6q-apalis-ixora-make-switch3-reset-button.patch
@@ -14,7 +14,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
 
 --- a/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
 +++ b/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts
-@@ -74,7 +74,7 @@
+@@ -38,7 +38,7 @@
  	gpio-keys {
  		compatible = "gpio-keys";
  		pinctrl-names = "default";
@@ -23,7 +23,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  
  		wakeup {
  			label = "Wake-Up";
-@@ -83,6 +83,13 @@
+@@ -47,6 +47,13 @@
  			debounce-interval = <10>;
  			wakeup-source;
  		};
@@ -37,7 +37,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  	};
  
  	lcd_display: disp0 {
-@@ -298,4 +305,10 @@
+@@ -275,4 +282,10 @@
  			MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b0b0
  		>;
  	};
@@ -50,7 +50,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  };
 --- a/arch/arm/boot/dts/imx6q-apalis-ixora.dts
 +++ b/arch/arm/boot/dts/imx6q-apalis-ixora.dts
-@@ -73,7 +73,7 @@
+@@ -37,7 +37,7 @@
  	gpio-keys {
  		compatible = "gpio-keys";
  		pinctrl-names = "default";
@@ -59,7 +59,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  
  		wakeup {
  			label = "Wake-Up";
-@@ -82,6 +82,13 @@
+@@ -46,6 +46,13 @@
  			debounce-interval = <10>;
  			wakeup-source;
  		};
@@ -73,7 +73,7 @@ Signed-off-by: Petr Štetiar <ynezz at true.cz>
  	};
  
  	lcd_display: disp0 {
-@@ -299,4 +306,10 @@
+@@ -276,4 +283,10 @@
  			MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b0b0
  		>;
  	};
diff --git a/target/linux/ipq806x/patches-5.15/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch b/target/linux/ipq806x/patches-5.15/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch
index b56480deaa..1860cef800 100644
--- a/target/linux/ipq806x/patches-5.15/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch
+++ b/target/linux/ipq806x/patches-5.15/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch
@@ -33,7 +33,7 @@ Signed-off-by: Mathieu Olivari <mathieu at codeaurora.org>
 
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -321,7 +321,7 @@ config ARCH_MULTIPLATFORM
+@@ -317,7 +317,7 @@ config ARCH_MULTIPLATFORM
  	select ARCH_SELECT_MEMORY_MODEL
  	select ARM_HAS_SG_CHAIN
  	select ARM_PATCH_PHYS_VIRT
@@ -41,10 +41,10 @@ Signed-off-by: Mathieu Olivari <mathieu at codeaurora.org>
 +	select AUTO_ZRELADDR if !ARCH_QCOM
  	select TIMER_OF
  	select COMMON_CLK
- 	select GENERIC_CLOCKEVENTS
+ 	select GENERIC_IRQ_MULTI_HANDLER
 --- a/arch/arm/Makefile
 +++ b/arch/arm/Makefile
-@@ -251,9 +251,11 @@ MACHINE  := arch/arm/mach-$(word 1,$(mac
+@@ -237,9 +237,11 @@ MACHINE  := arch/arm/mach-$(word 1,$(mac
  else
  MACHINE  :=
  endif
diff --git a/target/linux/ipq806x/patches-5.15/0067-generic-Mangle-bootloader-s-kernel-arguments.patch b/target/linux/ipq806x/patches-5.15/0067-generic-Mangle-bootloader-s-kernel-arguments.patch
index 06bfac2a7e..9cc5719078 100644
--- a/target/linux/ipq806x/patches-5.15/0067-generic-Mangle-bootloader-s-kernel-arguments.patch
+++ b/target/linux/ipq806x/patches-5.15/0067-generic-Mangle-bootloader-s-kernel-arguments.patch
@@ -22,7 +22,7 @@ Signed-off-by: Adrian Panella <ianchi74 at outlook.com>
 
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -1780,6 +1780,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
+@@ -1727,6 +1727,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN
  	  The command-line arguments provided by the boot loader will be
  	  appended to the the device tree bootargs property.
  
@@ -178,7 +178,7 @@ Signed-off-by: Adrian Panella <ianchi74 at outlook.com>
  }
 --- a/init/main.c
 +++ b/init/main.c
-@@ -110,6 +110,10 @@
+@@ -112,6 +112,10 @@
  
  #include <kunit/test.h>
  
@@ -189,7 +189,7 @@ Signed-off-by: Adrian Panella <ianchi74 at outlook.com>
  static int kernel_init(void *);
  
  extern void init_IRQ(void);
-@@ -906,6 +910,18 @@ asmlinkage __visible void __init __no_sa
+@@ -991,6 +995,18 @@ asmlinkage __visible void __init __no_sa
  	pr_notice("Kernel command line: %s\n", saved_command_line);
  	/* parameters may set static keys */
  	jump_label_init();
diff --git a/target/linux/ipq806x/patches-5.15/0069-arm-boot-add-dts-files.patch b/target/linux/ipq806x/patches-5.15/0069-arm-boot-add-dts-files.patch
index e943308433..db12b32d94 100644
--- a/target/linux/ipq806x/patches-5.15/0069-arm-boot-add-dts-files.patch
+++ b/target/linux/ipq806x/patches-5.15/0069-arm-boot-add-dts-files.patch
@@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
 
 --- a/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
-@@ -955,8 +955,29 @@ dtb-$(CONFIG_ARCH_QCOM) += \
+@@ -956,8 +956,29 @@ dtb-$(CONFIG_ARCH_QCOM) += \
  	qcom-ipq4019-ap.dk04.1-c3.dtb \
  	qcom-ipq4019-ap.dk07.1-c1.dtb \
  	qcom-ipq4019-ap.dk07.1-c2.dtb \
diff --git a/target/linux/ipq806x/patches-5.15/082-ipq8064-dtsi-tweaks.patch b/target/linux/ipq806x/patches-5.15/082-ipq8064-dtsi-tweaks.patch
index 8393237218..36be35fce1 100644
--- a/target/linux/ipq806x/patches-5.15/082-ipq8064-dtsi-tweaks.patch
+++ b/target/linux/ipq806x/patches-5.15/082-ipq8064-dtsi-tweaks.patch
@@ -87,7 +87,7 @@
  			reg = <0x02099000 0x1000>, <0x02009000 0x1000>;
  			regulator;
  		};
-@@ -533,7 +533,7 @@
+@@ -530,7 +536,7 @@
  				status = "disabled";
  			};
  
@@ -203,7 +203,7 @@
  			reg = <0x37600000 0x200000>;
  			interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
  			interrupt-names = "macirq";
-@@ -1050,8 +1050,6 @@
+@@ -1065,8 +1106,6 @@
  			clocks = <&gcc USB30_0_UTMI_CLK>;
  			clock-names = "ref";
  			#phy-cells = <0>;
@@ -211,9 +211,9 @@
 -			status = "disabled";
  		};
  
- 		ss_phy_0: usb3phy at 100f8830 {
-@@ -1055,8 +1055,6 @@
-			clocks = <&gcc USB30_0_MASTER_CLK>;
+ 		ss_phy_0: phy at 100f8830 {
+@@ -1075,8 +1114,6 @@
+ 			clocks = <&gcc USB30_0_MASTER_CLK>;
  			clock-names = "ref";
  			#phy-cells = <0>;
 -
@@ -221,7 +221,7 @@
  		};
  
  		usb3_0: usb3 at 100f8800 {
-@@ -1176,7 +1217,7 @@
+@@ -1176,7 +1213,7 @@
  		};
  
  		amba: amba {
@@ -230,7 +230,7 @@
  			#address-cells = <1>;
  			#size-cells = <1>;
  			ranges;
-@@ -1195,7 +1236,6 @@
+@@ -1195,7 +1232,6 @@
  				non-removable;
  				cap-sd-highspeed;
  				cap-mmc-highspeed;
diff --git a/target/linux/ipq806x/patches-5.15/083-ipq8064-dtsi-additions.patch b/target/linux/ipq806x/patches-5.15/083-ipq8064-dtsi-additions.patch
index a85f8ac818..adc784fcfc 100644
--- a/target/linux/ipq806x/patches-5.15/083-ipq8064-dtsi-additions.patch
+++ b/target/linux/ipq806x/patches-5.15/083-ipq8064-dtsi-additions.patch
@@ -233,7 +233,7 @@
  		gsbi2: gsbi at 12480000 {
  			compatible = "qcom,gsbi-v1.0.0";
  			cell-index = <2>;
-@@ -568,6 +910,33 @@
+@@ -637,6 +813,33 @@
  			};
  		};
  
@@ -267,7 +267,7 @@
  		gsbi7: gsbi at 16600000 {
  			status = "disabled";
  			compatible = "qcom,gsbi-v1.0.0";
-@@ -589,6 +958,19 @@
+@@ -658,6 +861,19 @@
  				clock-names = "core", "iface";
  				status = "disabled";
  			};
@@ -286,8 +286,8 @@
 +			};
  		};
  
- 		sata_phy: sata-phy at 1b400000 {
-@@ -761,6 +937,17 @@
+ 		rng at 1a500000 {
+@@ -761,6 +977,17 @@
  			};
  		};
  
@@ -305,7 +305,7 @@
  		rpm: rpm at 108000 {
  			compatible = "qcom,rpm-ipq8064";
  			reg = <0x108000 0x1000>;
-@@ -828,6 +1015,11 @@
+@@ -828,6 +1055,11 @@
  			clock-output-names = "acpu_l2_aux";
  		};
  
@@ -317,7 +317,7 @@
  		lcc: clock-controller at 28000000 {
  			compatible = "qcom,lcc-ipq8064";
  			reg = <0x28000000 0x1000>;
-@@ -835,6 +1027,11 @@
+@@ -835,6 +1067,11 @@
  			#reset-cells = <1>;
  		};
  
@@ -329,7 +329,7 @@
  		pcie0: pci at 1b500000 {
  			compatible = "qcom,pcie-ipq8064";
  			reg = <0x1b500000 0x1000
-@@ -1188,6 +1385,21 @@
+@@ -1184,6 +1421,21 @@
  			};
  		};
  
@@ -351,7 +351,7 @@
  		vsdcc_fixed: vsdcc-regulator {
  			compatible = "regulator-fixed";
  			regulator-name = "SDCC Power";
-@@ -1262,4 +1474,17 @@
+@@ -1258,4 +1510,17 @@
  			};
  		};
  	};
diff --git a/target/linux/ipq806x/patches-5.15/098-1-cpufreq-add-Krait-dedicated-scaling-driver.patch b/target/linux/ipq806x/patches-5.15/098-1-cpufreq-add-Krait-dedicated-scaling-driver.patch
index da91eb5b7c..c0356ec9b9 100644
--- a/target/linux/ipq806x/patches-5.15/098-1-cpufreq-add-Krait-dedicated-scaling-driver.patch
+++ b/target/linux/ipq806x/patches-5.15/098-1-cpufreq-add-Krait-dedicated-scaling-driver.patch
@@ -29,7 +29,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
 
 --- a/drivers/cpufreq/Kconfig.arm
 +++ b/drivers/cpufreq/Kconfig.arm
-@@ -150,6 +150,18 @@ config ARM_QCOM_CPUFREQ_HW
+@@ -172,6 +172,18 @@ config ARM_QCOM_CPUFREQ_HW
  	  The driver implements the cpufreq interface for this HW engine.
  	  Say Y if you want to support CPUFreq HW.
  
@@ -48,7 +48,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  config ARM_RASPBERRYPI_CPUFREQ
  	tristate "Raspberry Pi cpufreq support"
  	depends on CLK_RASPBERRYPI || COMPILE_TEST
-@@ -339,4 +351,4 @@ config ARM_PXA2xx_CPUFREQ
+@@ -356,4 +368,4 @@ config ARM_PXA2xx_CPUFREQ
  	help
  	  This add the CPUFreq driver support for Intel PXA2xx SOCs.
  
@@ -65,7 +65,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  obj-$(CONFIG_ARM_RASPBERRYPI_CPUFREQ) 	+= raspberrypi-cpufreq.o
  obj-$(CONFIG_ARM_S3C2410_CPUFREQ)	+= s3c2410-cpufreq.o
  obj-$(CONFIG_ARM_S3C2412_CPUFREQ)	+= s3c2412-cpufreq.o
-@@ -86,6 +87,7 @@ obj-$(CONFIG_ARM_TEGRA186_CPUFREQ)	+= te
+@@ -85,6 +86,7 @@ obj-$(CONFIG_ARM_TEGRA186_CPUFREQ)	+= te
  obj-$(CONFIG_ARM_TEGRA194_CPUFREQ)	+= tegra194-cpufreq.o
  obj-$(CONFIG_ARM_TI_CPUFREQ)		+= ti-cpufreq.o
  obj-$(CONFIG_ARM_VEXPRESS_SPC_CPUFREQ)	+= vexpress-spc-cpufreq.o
diff --git a/target/linux/ipq806x/patches-5.15/098-3-add-fab-scaling-support-with-cpufreq.patch b/target/linux/ipq806x/patches-5.15/098-3-add-fab-scaling-support-with-cpufreq.patch
index 28eb22d269..805979df8c 100644
--- a/target/linux/ipq806x/patches-5.15/098-3-add-fab-scaling-support-with-cpufreq.patch
+++ b/target/linux/ipq806x/patches-5.15/098-3-add-fab-scaling-support-with-cpufreq.patch
@@ -227,7 +227,7 @@
  
  #include "cpufreq-dt.h"
  
-@@ -68,6 +69,13 @@ static int set_target(struct cpufreq_pol
+@@ -74,6 +75,13 @@ static int set_target(struct cpufreq_pol
  			goto l2_scale_fail;
  		}
  
diff --git a/target/linux/ipq806x/patches-5.15/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch b/target/linux/ipq806x/patches-5.15/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch
index f71b5cd4b0..ec1d0e5f4d 100644
--- a/target/linux/ipq806x/patches-5.15/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch
+++ b/target/linux/ipq806x/patches-5.15/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch
@@ -16,7 +16,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
 
 --- a/drivers/mtd/nand/raw/qcom_nandc.c
 +++ b/drivers/mtd/nand/raw/qcom_nandc.c
-@@ -159,6 +159,11 @@
+@@ -163,6 +163,11 @@
  /* NAND_CTRL bits */
  #define	BAM_MODE_EN			BIT(0)
  
@@ -28,7 +28,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  /*
   * the NAND controller performs reads/writes with ECC in 516 byte chunks.
   * the driver calls the chunks 'step' or 'codeword' interchangeably
-@@ -430,6 +435,13 @@ struct qcom_nand_controller {
+@@ -443,6 +448,13 @@ struct qcom_nand_controller {
   * @cfg0, cfg1, cfg0_raw..:	NANDc register configurations needed for
   *				ecc/non-ecc mode for the current nand flash
   *				device
@@ -42,7 +42,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
   */
  struct qcom_nand_host {
  	struct nand_chip chip;
-@@ -452,6 +464,9 @@ struct qcom_nand_host {
+@@ -465,6 +477,9 @@ struct qcom_nand_host {
  	u32 ecc_bch_cfg;
  	u32 clrflashstatus;
  	u32 clrreadstatus;
@@ -52,7 +52,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  };
  
  /*
-@@ -475,13 +490,15 @@ struct qcom_nand_host {
+@@ -474,6 +489,7 @@ struct qcom_nand_host {
   * @is_bam - whether NAND controller is using BAM
   * @is_qpic - whether NAND CTRL is part of qpic IP
   * @qpic_v2 - flag to indicate QPIC IP version 2
@@ -60,7 +60,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
   * @dev_cmd_reg_start - NAND_DEV_CMD_* registers starting offset
   */
  struct qcom_nandc_props {
- 	u32 ecc_modes;
+@@ -481,6 +497,7 @@ struct qcom_nandc_props {
  	bool is_bam;
  	bool is_qpic;
  	bool qpic_v2;
@@ -68,7 +68,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	u32 dev_cmd_reg_start;
  };
  
-@@ -1604,7 +1621,7 @@ qcom_nandc_read_cw_raw(struct mtd_info *
+@@ -1691,7 +1708,7 @@ qcom_nandc_read_cw_raw(struct mtd_info *
  	data_size1 = mtd->writesize - host->cw_size * (ecc->steps - 1);
  	oob_size1 = host->bbm_size;
  
@@ -77,7 +77,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  		data_size2 = ecc->size - data_size1 -
  			     ((ecc->steps - 1) * 4);
  		oob_size2 = (ecc->steps * 4) + host->ecc_bytes_hw +
-@@ -1685,7 +1702,7 @@ check_for_erased_page(struct qcom_nand_h
+@@ -1772,7 +1789,7 @@ check_for_erased_page(struct qcom_nand_h
  	}
  
  	for_each_set_bit(cw, &uncorrectable_cws, ecc->steps) {
@@ -86,7 +86,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  			data_size = ecc->size - ((ecc->steps - 1) * 4);
  			oob_size = (ecc->steps * 4) + host->ecc_bytes_hw;
  		} else {
-@@ -1844,7 +1861,7 @@ static int read_page_ecc(struct qcom_nan
+@@ -1930,7 +1947,7 @@ static int read_page_ecc(struct qcom_nan
  	for (i = 0; i < ecc->steps; i++) {
  		int data_size, oob_size;
  
@@ -95,7 +95,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  			data_size = ecc->size - ((ecc->steps - 1) << 2);
  			oob_size = (ecc->steps << 2) + host->ecc_bytes_hw +
  				   host->spare_bytes;
-@@ -1941,6 +1958,30 @@ static int copy_last_cw(struct qcom_nand
+@@ -2027,6 +2044,30 @@ static int copy_last_cw(struct qcom_nand
  	return ret;
  }
  
@@ -126,7 +126,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  /* implements ecc->read_page() */
  static int qcom_nandc_read_page(struct nand_chip *chip, uint8_t *buf,
  				int oob_required, int page)
-@@ -1949,6 +1990,9 @@ static int qcom_nandc_read_page(struct n
+@@ -2035,6 +2076,9 @@ static int qcom_nandc_read_page(struct n
  	struct qcom_nand_controller *nandc = get_qcom_nand_controller(chip);
  	u8 *data_buf, *oob_buf = NULL;
  
@@ -136,7 +136,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	nand_read_page_op(chip, page, 0, NULL, 0);
  	data_buf = buf;
  	oob_buf = oob_required ? chip->oob_poi : NULL;
-@@ -1968,6 +2012,9 @@ static int qcom_nandc_read_page_raw(stru
+@@ -2054,6 +2098,9 @@ static int qcom_nandc_read_page_raw(stru
  	int cw, ret;
  	u8 *data_buf = buf, *oob_buf = chip->oob_poi;
  
@@ -146,7 +146,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	for (cw = 0; cw < ecc->steps; cw++) {
  		ret = qcom_nandc_read_cw_raw(mtd, chip, data_buf, oob_buf,
  					     page, cw);
-@@ -1988,6 +2035,9 @@ static int qcom_nandc_read_oob(struct na
+@@ -2074,6 +2121,9 @@ static int qcom_nandc_read_oob(struct na
  	struct qcom_nand_controller *nandc = get_qcom_nand_controller(chip);
  	struct nand_ecc_ctrl *ecc = &chip->ecc;
  
@@ -156,7 +156,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	clear_read_regs(nandc);
  	clear_bam_transaction(nandc);
  
-@@ -2008,6 +2058,9 @@ static int qcom_nandc_write_page(struct
+@@ -2094,6 +2144,9 @@ static int qcom_nandc_write_page(struct
  	u8 *data_buf, *oob_buf;
  	int i, ret;
  
@@ -166,7 +166,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	nand_prog_page_begin_op(chip, page, 0, NULL, 0);
  
  	clear_read_regs(nandc);
-@@ -2023,7 +2076,7 @@ static int qcom_nandc_write_page(struct
+@@ -2109,7 +2162,7 @@ static int qcom_nandc_write_page(struct
  	for (i = 0; i < ecc->steps; i++) {
  		int data_size, oob_size;
  
@@ -175,7 +175,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  			data_size = ecc->size - ((ecc->steps - 1) << 2);
  			oob_size = (ecc->steps << 2) + host->ecc_bytes_hw +
  				   host->spare_bytes;
-@@ -2080,6 +2133,9 @@ static int qcom_nandc_write_page_raw(str
+@@ -2166,6 +2219,9 @@ static int qcom_nandc_write_page_raw(str
  	u8 *data_buf, *oob_buf;
  	int i, ret;
  
@@ -185,7 +185,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	nand_prog_page_begin_op(chip, page, 0, NULL, 0);
  	clear_read_regs(nandc);
  	clear_bam_transaction(nandc);
-@@ -2098,7 +2154,7 @@ static int qcom_nandc_write_page_raw(str
+@@ -2184,7 +2240,7 @@ static int qcom_nandc_write_page_raw(str
  		data_size1 = mtd->writesize - host->cw_size * (ecc->steps - 1);
  		oob_size1 = host->bbm_size;
  
@@ -194,7 +194,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  			data_size2 = ecc->size - data_size1 -
  				     ((ecc->steps - 1) << 2);
  			oob_size2 = (ecc->steps << 2) + host->ecc_bytes_hw +
-@@ -2158,6 +2214,9 @@ static int qcom_nandc_write_oob(struct n
+@@ -2244,6 +2300,9 @@ static int qcom_nandc_write_oob(struct n
  	int data_size, oob_size;
  	int ret;
  
@@ -204,7 +204,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	host->use_ecc = true;
  	clear_bam_transaction(nandc);
  
-@@ -2806,6 +2865,7 @@ static int qcom_nand_host_init_and_regis
+@@ -2899,6 +2958,7 @@ static int qcom_nand_host_init_and_regis
  	struct nand_chip *chip = &host->chip;
  	struct mtd_info *mtd = nand_to_mtd(chip);
  	struct device *dev = nandc->dev;
@@ -212,7 +212,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	int ret;
  
  	ret = of_property_read_u32(dn, "reg", &host->cs);
-@@ -2866,6 +2926,17 @@ static int qcom_nand_host_init_and_regis
+@@ -2960,6 +3020,17 @@ static int qcom_nand_host_init_and_regis
  	if (ret)
  		nand_cleanup(chip);
  
@@ -230,7 +230,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  	return ret;
  }
  
-@@ -3032,6 +3103,7 @@ static int qcom_nandc_remove(struct plat
+@@ -3125,6 +3196,7 @@ static int qcom_nandc_remove(struct plat
  static const struct qcom_nandc_props ipq806x_nandc_props = {
  	.ecc_modes = (ECC_RS_4BIT | ECC_BCH_8BIT),
  	.is_bam = false,
diff --git a/target/linux/ipq806x/patches-5.15/099-2-Documentation-devicetree-mtd-qcom_nandc-document-qco.patch b/target/linux/ipq806x/patches-5.15/099-2-Documentation-devicetree-mtd-qcom_nandc-document-qco.patch
index c4c7dc7d6a..91d304479a 100644
--- a/target/linux/ipq806x/patches-5.15/099-2-Documentation-devicetree-mtd-qcom_nandc-document-qco.patch
+++ b/target/linux/ipq806x/patches-5.15/099-2-Documentation-devicetree-mtd-qcom_nandc-document-qco.patch
@@ -14,11 +14,10 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
 
 --- a/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
 +++ b/Documentation/devicetree/bindings/mtd/qcom,nandc.yaml
-@@ -77,6 +77,14 @@ Optional properties:
-           description:
+@@ -78,6 +78,14 @@ allOf:
              Must contain the ADM data type CRCI block instance number
              specified for the NAND controller on the given platform
-+
+ 
 +        qcom,boot_pages_size:
 +          description:
 +            Should contain the size of the total boot partitions
@@ -26,10 +25,11 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
 +            should be used. The boot layout is considered from the
 +            start of the nand to the value set in this binding.
 +            Only used in combination with 'nand-is-boot-medium'.
- 
++
    - if:
        properties:
-@@ -135,6 +135,9 @@ nand-controller at 1ac00000 {
+         compatible:
+@@ -135,6 +143,9 @@ examples:
          nand-ecc-strength = <4>;
          nand-bus-width = <8>;
  
@@ -38,3 +38,4 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
 +
          partitions {
            compatible = "fixed-partitions";
+           #address-cells = <1>;
diff --git a/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch b/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch
index 5055261c4b..673c66ae84 100644
--- a/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch
+++ b/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch
@@ -10,16 +10,16 @@ Signed-off-by: John Crispin <john at phrozen.org>
 
 --- a/drivers/mtd/mtdpart.c
 +++ b/drivers/mtd/mtdpart.c
-@@ -139,7 +139,11 @@
+@@ -50,7 +50,11 @@ static struct mtd_info *allocate_partiti
  
  	/* allocate the partition structure */
  	child = kzalloc(sizeof(*child), GFP_KERNEL);
+-	name = kstrdup(part->name, GFP_KERNEL);
 +	/* "rootfs" conflicts with OpenWrt auto mounting */
 +	if (mtd_type_is_nand(parent) && !strcmp(part->name, "rootfs"))
 +		name = "ubi";
 +	else
 +		name = kstrdup(part->name, GFP_KERNEL);
--	name = kstrdup(part->name, GFP_KERNEL);
  	if (!name || !child) {
  		printk(KERN_ERR"memory allocation error while creating partitions for \"%s\"\n",
  		       parent->name);
diff --git a/target/linux/ipq806x/patches-5.15/103-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch b/target/linux/ipq806x/patches-5.15/103-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch
index 75b53234ab..1f61fdf886 100644
--- a/target/linux/ipq806x/patches-5.15/103-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch
+++ b/target/linux/ipq806x/patches-5.15/103-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch
@@ -17,7 +17,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
 
 --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
 +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
-@@ -1163,7 +1163,7 @@
+@@ -1086,7 +1086,7 @@
  			#address-cells = <3>;
  			#size-cells = <2>;
  
@@ -26,7 +26,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  				  0x82000000 0 0x08000000 0x08000000 0 0x07e00000>; /* non-prefetchable memory */
  
  			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
-@@ -1214,7 +1214,7 @@
+@@ -1137,7 +1137,7 @@
  			#address-cells = <3>;
  			#size-cells = <2>;
  
@@ -35,7 +35,7 @@ Signed-off-by: Ansuel Smith <ansuelsmth at gmail.com>
  				  0x82000000 0 0x2e000000 0x2e000000 0 0x03e00000>; /* non-prefetchable memory */
  
  			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
-@@ -1265,7 +1265,7 @@
+@@ -1188,7 +1188,7 @@
  			#address-cells = <3>;
  			#size-cells = <2>;
  
diff --git a/target/linux/ipq806x/patches-5.15/107-1-thermal-qcom-tsens-init-debugfs-only-with-successful.patch b/target/linux/ipq806x/patches-5.15/107-1-thermal-qcom-tsens-init-debugfs-only-with-successful.patch
index 1dc2d2e55e..ef851dfc94 100644
--- a/target/linux/ipq806x/patches-5.15/107-1-thermal-qcom-tsens-init-debugfs-only-with-successful.patch
+++ b/target/linux/ipq806x/patches-5.15/107-1-thermal-qcom-tsens-init-debugfs-only-with-successful.patch
@@ -16,7 +16,7 @@ Acked-by: Thara Gopinath <thara.gopinath at linaro.org>
 
 --- a/drivers/thermal/qcom/tsens.c
 +++ b/drivers/thermal/qcom/tsens.c
-@@ -918,8 +918,6 @@ int __init init_common(struct tsens_priv
+@@ -917,8 +917,6 @@ int __init init_common(struct tsens_priv
  	if (tsens_version(priv) >= VER_0_1)
  		tsens_enable_irq(priv);
  
@@ -25,7 +25,7 @@ Acked-by: Thara Gopinath <thara.gopinath at linaro.org>
  err_put_device:
  	put_device(&op->dev);
  	return ret;
-@@ -1155,7 +1153,12 @@ static int tsens_probe(struct platform_d
+@@ -1157,7 +1155,12 @@ static int tsens_probe(struct platform_d
  		}
  	}
  
diff --git a/target/linux/ipq806x/patches-5.15/107-2-thermal-qcom-tsens-simplify-debugfs-init-function.patch b/target/linux/ipq806x/patches-5.15/107-2-thermal-qcom-tsens-simplify-debugfs-init-function.patch
index 0fbc4bd8ca..add2ab4598 100644
--- a/target/linux/ipq806x/patches-5.15/107-2-thermal-qcom-tsens-simplify-debugfs-init-function.patch
+++ b/target/linux/ipq806x/patches-5.15/107-2-thermal-qcom-tsens-simplify-debugfs-init-function.patch
@@ -17,7 +17,7 @@ Reviewed-by: Thara Gopinath <thara.gopinath at linaro.org>
 
 --- a/drivers/thermal/qcom/tsens.c
 +++ b/drivers/thermal/qcom/tsens.c
-@@ -692,7 +692,7 @@ static int dbg_version_show(struct seq_f
+@@ -691,7 +691,7 @@ static int dbg_version_show(struct seq_f
  			return ret;
  		seq_printf(s, "%d.%d.%d\n", maj_ver, min_ver, step_ver);
  	} else {
@@ -26,7 +26,7 @@ Reviewed-by: Thara Gopinath <thara.gopinath at linaro.org>
  	}
  
  	return 0;
-@@ -704,21 +704,17 @@ DEFINE_SHOW_ATTRIBUTE(dbg_sensors);
+@@ -703,21 +703,17 @@ DEFINE_SHOW_ATTRIBUTE(dbg_sensors);
  static void tsens_debug_init(struct platform_device *pdev)
  {
  	struct tsens_priv *priv = platform_get_drvdata(pdev);
diff --git a/target/linux/ipq806x/patches-5.15/850-soc-add-qualcomm-syscon.patch b/target/linux/ipq806x/patches-5.15/850-soc-add-qualcomm-syscon.patch
index 8325e10389..ec9027ae47 100644
--- a/target/linux/ipq806x/patches-5.15/850-soc-add-qualcomm-syscon.patch
+++ b/target/linux/ipq806x/patches-5.15/850-soc-add-qualcomm-syscon.patch
@@ -12,7 +12,7 @@ Subject: SoC: add qualcomm syscon
  obj-$(CONFIG_QCOM_RPMHPD) += rpmhpd.o
 --- a/drivers/soc/qcom/Kconfig
 +++ b/drivers/soc/qcom/Kconfig
-@@ -189,6 +189,13 @@ config QCOM_SOCINFO
+@@ -190,6 +190,13 @@ config QCOM_SOCINFO
  	 Say yes here to support the Qualcomm socinfo driver, providing
  	 information about the SoC to user space.
  




More information about the lede-commits mailing list