kernel: bump 5.15 to 5.15.111
authorJohn Audia <therealgraysky@proton.me>
Fri, 12 May 2023 16:33:18 +0000 (12:33 -0400)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 13 May 2023 20:38:35 +0000 (22:38 +0200)
Removed upstreamed:
01. backport-5.15/424-v6.4-0001-mtd-core-provide-unique-name-for-nvmem-device-take-t.patch
02. backport-5.15/424-v6.4-0002-mtd-core-fix-nvmem-error-reporting.patch
03. generic-backport/424-v6.4-0003-mtd-core-fix-error-path-for-nvmem-provider.patch
04. generic-backport/828-v6.4-0001-of-Fix-modalias-string-generation.patch
05. bcm4908/patches-5.15/031-v5.17-0002-arm64-dts-broadcom-bcm4908-add-DT-for-Netgear-RAXE50.patch
06. bcm4908/patches-5.15/033-v6.0-0001-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM63158.patchgit
07. bcm4908/patches-5.15/033-v6.0-0002-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM4912.patchgita
08. bcm4908/patches-5.15/033-v6.0-0010-arm64-dts-Add-base-DTS-file-for-bcmbca-device-Asus-G.patchgit
09. bcm4908/patches-5.15/034-v6.1-0005-arm64-dts-Move-BCM4908-dts-to-bcmbca-folder.patch
10. bcm4908/patches-5.15/036-v6.4-0002-arm64-dts-broadcom-bcmbca-bcm4908-fix-NAND-interrupt.patch
11. bcm4908/patches-5.15/036-v6.4-0004-arm64-dts-broadcom-bcmbca-bcm4908-fix-procmon-nodena.patch
12. ipq806x/patches-5.15/104-v6.0-06-ARM-dts-qcom-ipq8064-reduce-pci-IO-size-to-64K.patch

Manually rebased:
bcm27xx/patches-5.15/950-0078-BCM2708-Add-core-Device-Tree-support.patch
bcm27xx/patches-5.15/950-0547-ARM-dts-Add-Pi-Zero-2-support.patch
bcm4908/patches-5.15/033-v6.0-0001-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM63158.patchgit
bcm4908/patches-5.15/033-v6.0-0002-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM4912.patchgit
bcm4908/patches-5.15/030-v5.16-0001-arm64-dts-broadcom-bcm4908-Fix-NAND-node-name.patch
bcm4908/patches-5.15/032-v5.18-0002-arm64-dts-broadcom-bcm4908-add-pinctrl-binding.patch
bcm4908/patches-5.15/032-v5.18-0003-arm64-dts-broadcom-bcm4908-add-watchdog-block.patch
bcm4908/patches-5.15/032-v5.18-0004-arm64-dts-broadcom-bcm4908-add-I2C-block.patch
bcm4908/patches-5.15/033-v6.0-0003-ARM64-dts-Add-DTS-files-for-bcmbca-SoC-BCM6858.patchgit
bcm4908/patches-5.15/033-v6.0-0008-arm64-dts-broadcom-bcm4908-Fix-timer-node-for-BCM490.patchgit
bcm4908/patches-5.15/034-v6.1-0001-arm64-dts-broadcom-bcm4908-add-remaining-LED-pins.patch
bcm4908/patches-5.15/034-v6.1-0002-arm64-dts-broadcom-bcm4908-add-LEDs-controller-block.patch
bcm4908/patches-5.15/034-v6.1-0003-arm64-dts-broadcom-bcm4908-add-Asus-GT-AC5300-LEDs.patch
bcm4908/patches-5.15/034-v6.1-0004-arm64-dts-bcmbca-update-BCM4908-board-dts-files.patch

All other patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod

01. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=77112d23a671697f0f70695ab901f807e15d2093
02. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=fe07b3b5af01f42b291f5da0da09d047f50b33a6
03. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=273be36e420924237f6c9d43cdad96718c13dd52
04. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=fe8ab85ed4958e58e991bba0aa0a655b552b0273
05. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=6ae67829fa5e9e71f458f69db42f0e216225616a
06. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=1994284cb9226b65ca3a6744ce3320218b584f26
07. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=a46878476c5549a4fde15a31922ce80a50b23492
08. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=112ff0f2530549d50510f116474924f9c4fad590
09. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=7c253e98685e6d884d12e2618ef4d2ad90b4fbd7
10. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=8444b46e163aa9559a0af0381a1d230ec4146eb2
11. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=6d1af517817a760d7af3dee0fc4603645485495c
12. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.111&id=cc4f0e168a5630ad0491ac5328f1a89f3cf3d04e

Signed-off-by: John Audia <therealgraysky@proton.me>
50 files changed:
include/kernel-5.15
target/linux/bcm27xx/patches-5.15/950-0020-drm-probe-helper-Create-a-HPD-IRQ-event-helper-for-a.patch
target/linux/bcm27xx/patches-5.15/950-0078-BCM2708-Add-core-Device-Tree-support.patch
target/linux/bcm4908/patches-5.15/030-v5.16-0001-arm64-dts-broadcom-bcm4908-Fix-NAND-node-name.patch
target/linux/bcm4908/patches-5.15/031-v5.17-0002-arm64-dts-broadcom-bcm4908-add-DT-for-Netgear-RAXE50.patch [deleted file]
target/linux/bcm4908/patches-5.15/032-v5.18-0002-arm64-dts-broadcom-bcm4908-add-pinctrl-binding.patch
target/linux/bcm4908/patches-5.15/032-v5.18-0003-arm64-dts-broadcom-bcm4908-add-watchdog-block.patch
target/linux/bcm4908/patches-5.15/032-v5.18-0004-arm64-dts-broadcom-bcm4908-add-I2C-block.patch
target/linux/bcm4908/patches-5.15/033-v6.0-0001-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM63158.patchgit [deleted file]
target/linux/bcm4908/patches-5.15/033-v6.0-0002-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM4912.patchgit [deleted file]
target/linux/bcm4908/patches-5.15/033-v6.0-0003-ARM64-dts-Add-DTS-files-for-bcmbca-SoC-BCM6858.patchgit [deleted file]
target/linux/bcm4908/patches-5.15/033-v6.0-0004-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM63146.patchgit
target/linux/bcm4908/patches-5.15/033-v6.0-0005-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM6856.patchgit
target/linux/bcm4908/patches-5.15/033-v6.0-0006-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM6813.patchgit
target/linux/bcm4908/patches-5.15/033-v6.0-0007-arm64-dts-broadcom-align-gpio-key-node-names-with-dt.patchgit
target/linux/bcm4908/patches-5.15/033-v6.0-0008-arm64-dts-broadcom-bcm4908-Fix-timer-node-for-BCM490.patchgit
target/linux/bcm4908/patches-5.15/033-v6.0-0010-arm64-dts-Add-base-DTS-file-for-bcmbca-device-Asus-G.patchgit [deleted file]
target/linux/bcm4908/patches-5.15/034-v6.1-0001-arm64-dts-broadcom-bcm4908-add-remaining-LED-pins.patch
target/linux/bcm4908/patches-5.15/034-v6.1-0002-arm64-dts-broadcom-bcm4908-add-LEDs-controller-block.patch
target/linux/bcm4908/patches-5.15/034-v6.1-0003-arm64-dts-broadcom-bcm4908-add-Asus-GT-AC5300-LEDs.patch
target/linux/bcm4908/patches-5.15/034-v6.1-0004-arm64-dts-bcmbca-update-BCM4908-board-dts-files.patch
target/linux/bcm4908/patches-5.15/034-v6.1-0005-arm64-dts-Move-BCM4908-dts-to-bcmbca-folder.patch [deleted file]
target/linux/bcm4908/patches-5.15/036-v6.4-0002-arm64-dts-broadcom-bcmbca-bcm4908-fix-NAND-interrupt.patch [deleted file]
target/linux/bcm4908/patches-5.15/036-v6.4-0004-arm64-dts-broadcom-bcmbca-bcm4908-fix-procmon-nodena.patch [deleted file]
target/linux/generic/backport-5.15/403-v6.1-mtd-allow-getting-MTD-device-associated-with-a-speci.patch
target/linux/generic/backport-5.15/423-v6.1-0001-mtd-track-maximum-number-of-bitflips-for-each-read-r.patch
target/linux/generic/backport-5.15/424-v6.4-0001-mtd-core-provide-unique-name-for-nvmem-device-take-t.patch [deleted file]
target/linux/generic/backport-5.15/424-v6.4-0002-mtd-core-fix-nvmem-error-reporting.patch [deleted file]
target/linux/generic/backport-5.15/424-v6.4-0003-mtd-core-fix-error-path-for-nvmem-provider.patch [deleted file]
target/linux/generic/backport-5.15/703-00-v5.16-net-convert-users-of-bitmap_foo-to-linkmode_foo.patch
target/linux/generic/backport-5.15/775-v6.0-01-net-ethernet-stmicro-stmmac-move-queue-reset-to-dedi.patch
target/linux/generic/backport-5.15/775-v6.0-03-net-ethernet-stmicro-stmmac-move-dma-conf-to-dedicat.patch
target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch
target/linux/generic/backport-5.15/827-v6.3-0004-of-device-Ignore-modalias-of-reused-nodes.patch
target/linux/generic/backport-5.15/827-v6.3-0005-of-device-Do-not-ignore-error-code-in-of_device_ueve.patch
target/linux/generic/backport-5.15/828-v6.4-0001-of-Fix-modalias-string-generation.patch [deleted file]
target/linux/generic/pending-5.15/630-packet_socket_type.patch
target/linux/ipq806x/patches-5.15/104-v6.0-06-ARM-dts-qcom-ipq8064-reduce-pci-IO-size-to-64K.patch [deleted file]
target/linux/ipq807x/patches-5.15/0025-v6.0-arm64-dts-qcom-ipq8074-move-ARMv8-timer-out-of-SoC-n.patch
target/linux/ipq807x/patches-5.15/0045-v6.2-arm64-dts-qcom-ipq8074-add-thermal-nodes.patch
target/linux/ipq807x/patches-5.15/0055-v6.0-spmi-add-a-helper-to-look-up-an-SPMI-device-from-a-d.patch
target/linux/ipq807x/patches-5.15/0076-v5.16-PCI-qcom-Replace-ops-with-struct-pcie_cfg-in-pcie-ma.patch
target/linux/ipq807x/patches-5.15/0077-v6.0-PCI-qcom-Add-IPQ60xx-support.patch
target/linux/ipq807x/patches-5.15/0107-PCI-qcom-Add-support-for-IPQ8074-Gen3-port.patch
target/linux/ipq807x/patches-5.15/0111-arm64-dts-qcom-ipq8074-use-msi-parent-for-PCIe.patch
target/linux/ipq807x/patches-5.15/0120-arm64-dts-qcom-Enable-Q6v5-WCSS-for-ipq8074-SoC.patch
target/linux/ipq807x/patches-5.15/0121-arm64-dts-ipq8074-Add-WLAN-node.patch
target/linux/mediatek/patches-5.15/410-bt-mtk-serial-fix.patch
target/linux/mediatek/patches-5.15/805-v6.2-thermal-drivers-mtk-use-function-pointer-for-raw_to_.patch
target/linux/mediatek/patches-5.15/806-v6.2-thermal-mediatek-add-support-for-MT7986-and-MT7981.patch

index 78aeee04fa8bc259bb5d589966e9b95434ac9503..f1b1323e0ef88f2c27601a61546df8f0ce477af6 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-5.15 = .110
-LINUX_KERNEL_HASH-5.15.110 = 9829fcc77b9978dce97a26980dec445caf2410024696625dbb2314ead4830b5b
+LINUX_VERSION-5.15 = .111
+LINUX_KERNEL_HASH-5.15.111 = 77ceea259c0158dd624304871170d09b2e59ed612f3a4d436fe0f07362dcaec2
index 4e62405b5e639fbd43416cb7e234f9333113cafa..82086a13fe77026b9ffdbebf8298acd8c169ac6b 100644 (file)
@@ -39,7 +39,7 @@ Changes from v1:
 
 --- a/drivers/gpu/drm/drm_probe_helper.c
 +++ b/drivers/gpu/drm/drm_probe_helper.c
-@@ -795,6 +795,86 @@ void drm_kms_helper_poll_fini(struct drm
+@@ -796,6 +796,86 @@ void drm_kms_helper_poll_fini(struct drm
  }
  EXPORT_SYMBOL(drm_kms_helper_poll_fini);
  
@@ -126,7 +126,7 @@ Changes from v1:
  /**
   * drm_helper_hpd_irq_event - hotplug processing
   * @dev: drm_device
-@@ -808,9 +888,10 @@ EXPORT_SYMBOL(drm_kms_helper_poll_fini);
+@@ -809,9 +889,10 @@ EXPORT_SYMBOL(drm_kms_helper_poll_fini);
   * interrupts for each connector.
   *
   * Drivers which support hotplug interrupts for each connector individually and
@@ -140,7 +140,7 @@ Changes from v1:
   *
   * This function must be called from process context with no mode
   * setting locks held.
-@@ -822,9 +903,7 @@ bool drm_helper_hpd_irq_event(struct drm
+@@ -823,9 +904,7 @@ bool drm_helper_hpd_irq_event(struct drm
  {
        struct drm_connector *connector;
        struct drm_connector_list_iter conn_iter;
@@ -150,7 +150,7 @@ Changes from v1:
  
        if (!dev->mode_config.poll_enabled)
                return false;
-@@ -832,37 +911,8 @@ bool drm_helper_hpd_irq_event(struct drm
+@@ -833,37 +912,8 @@ bool drm_helper_hpd_irq_event(struct drm
        mutex_lock(&dev->mode_config.mutex);
        drm_connector_list_iter_begin(dev, &conn_iter);
        drm_for_each_connector_iter(connector, &conn_iter) {
index 424252db050d5babd44d6641c66b0ff650e4dd06..ce7c250143aa39344d2619ab1dca5cd8c6100de7 100644 (file)
@@ -30043,7 +30043,7 @@ index 11eae3e3a944..5a90727064ee 100644
 +dtb-$(CONFIG_ARCH_BCM2835) += bcm2710-rpi-cm3.dtb
 +dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rpi-cm4.dtb
  
- subdir-y      += bcm4908
+ subdir-y      += bcmbca
  subdir-y      += northstar2
  subdir-y      += stingray
 +
index 07a0c5f8d021abbd73709bc7095a883cf3862b5b..aaa5241c44f96fe45f00888c021d0b8f5b80d777 100644 (file)
@@ -11,11 +11,11 @@ This matches nand-controller.yaml requirements.
 Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi | 2 +-
+ arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
 @@ -298,7 +298,7 @@
                        status = "okay";
                };
diff --git a/target/linux/bcm4908/patches-5.15/031-v5.17-0002-arm64-dts-broadcom-bcm4908-add-DT-for-Netgear-RAXE50.patch b/target/linux/bcm4908/patches-5.15/031-v5.17-0002-arm64-dts-broadcom-bcm4908-add-DT-for-Netgear-RAXE50.patch
deleted file mode 100644 (file)
index 9e0236a..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-From d0e68d354f345873e15876a7b35be1baaf5e3ec9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
-Date: Fri, 5 Nov 2021 11:14:13 +0100
-Subject: [PATCH] arm64: dts: broadcom: bcm4908: add DT for Netgear RAXE500
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-It's a home router based on BCM4908 SoC. It has: 1 GiB of RAM, 512 MiB
-NAND flash, 6 Ethernet ports and 3 x BCM43684 (WiFi). One of Ethernet
-ports is "2.5 G Multi-Gig port" that isn't described yet (it isn't known
-how it's wired up).
-
-Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/bcm4908/Makefile |  1 +
- .../bcm4908/bcm4908-netgear-raxe500.dts       | 50 +++++++++++++++++++
- 2 files changed, 51 insertions(+)
- create mode 100644 arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
-
---- a/arch/arm64/boot/dts/broadcom/bcm4908/Makefile
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/Makefile
-@@ -2,3 +2,4 @@
- dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-netgear-r8000p.dtb
- dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-tplink-archer-c2300-v1.dtb
- dtb-$(CONFIG_ARCH_BCM4908) += bcm4908-asus-gt-ac5300.dtb
-+dtb-$(CONFIG_ARCH_BCM4908) += bcm4908-netgear-raxe500.dtb
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
-@@ -0,0 +1,50 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+#include "bcm4908.dtsi"
-+
-+/ {
-+      compatible = "netgear,raxe500", "brcm,bcm4908";
-+      model = "Netgear RAXE500";
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x00 0x00 0x00 0x40000000>;
-+      };
-+};
-+
-+&ehci {
-+      status = "okay";
-+};
-+
-+&ohci {
-+      status = "okay";
-+};
-+
-+&xhci {
-+      status = "okay";
-+};
-+
-+&ports {
-+      port@0 {
-+              label = "lan4";
-+      };
-+
-+      port@1 {
-+              label = "lan3";
-+      };
-+
-+      port@2 {
-+              label = "lan2";
-+      };
-+
-+      port@3 {
-+              label = "lan1";
-+      };
-+
-+      port@7 {
-+              reg = <7>;
-+              phy-mode = "internal";
-+              phy-handle = <&phy12>;
-+              label = "wan";
-+      };
-+};
index 8560b8ee8810fffc785447617e5c40ecd5ce388a..70b4dc216d23e3ca0a6dac671215a107fd29cf33 100644 (file)
@@ -11,11 +11,11 @@ Describe pinmux block with its maps.
 Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- .../boot/dts/broadcom/bcm4908/bcm4908.dtsi    | 135 ++++++++++++++++++
+ .../boot/dts/broadcom/bcmbca/bcm4908.dtsi    | 135 ++++++++++++++++++
  1 file changed, 135 insertions(+)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
 @@ -289,6 +289,141 @@
                        gpio-controller;
                };
index a0329d32769e1c71d7593c831ae39a9f9385e1f4..47d680d759085429d20195583bebdd704e684e3e 100644 (file)
@@ -12,11 +12,11 @@ binding which matches the first SoC with that block.
 Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi | 9 +++++++++
+ arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi | 9 +++++++++
  1 file changed, 9 insertions(+)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
 @@ -278,6 +278,15 @@
                twd: timer-mfd@400 {
                        compatible = "brcm,bcm4908-twd", "simple-mfd", "syscon";
index d86da6989388b83600379f5a4bde1d35cd7e7048..a92ee6e3e70b5e319d50edef2738a493a12c9414 100644 (file)
@@ -11,11 +11,11 @@ BCM4908 uses the same I2C hw as BCM63xx / BCM67xx / BCM68xx SoCs.
 Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi | 9 +++++++++
+ arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi | 9 +++++++++
  1 file changed, 9 insertions(+)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
 @@ -458,6 +458,15 @@
                        };
                };
diff --git a/target/linux/bcm4908/patches-5.15/033-v6.0-0001-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM63158.patchgit b/target/linux/bcm4908/patches-5.15/033-v6.0-0001-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM63158.patchgit
deleted file mode 100644 (file)
index 908b8c1..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-From 076dcedc6628c6bf92bd17bfcf8fb7b1af62bfb6 Mon Sep 17 00:00:00 2001
-From: William Zhang <william.zhang@broadcom.com>
-Date: Wed, 1 Jun 2022 15:56:51 -0700
-Subject: [PATCH] arm64: dts: Add DTS files for bcmbca SoC BCM63158
-
-Add DTS for ARMv8 based broadband SoC BCM63158. bcm63158.dtsi is the
-SoC description DTS header and bcm963158.dts is a simple DTS file for
-Broadcom BCM963158 Reference board that only enable the UART port.
-
-Signed-off-by: William Zhang <william.zhang@broadcom.com>
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/Makefile         |   1 +
- arch/arm64/boot/dts/broadcom/bcmbca/Makefile  |   2 +
- .../boot/dts/broadcom/bcmbca/bcm63158.dtsi    | 128 ++++++++++++++++++
- .../boot/dts/broadcom/bcmbca/bcm963158.dts    |  30 ++++
- 4 files changed, 161 insertions(+)
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/Makefile
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm63158.dtsi
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm963158.dts
-
---- a/arch/arm64/boot/dts/broadcom/Makefile
-+++ b/arch/arm64/boot/dts/broadcom/Makefile
-@@ -7,5 +7,6 @@ dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rp
-                             bcm2837-rpi-cm3-io3.dtb
- subdir-y      += bcm4908
-+subdir-y      += bcmbca
- subdir-y      += northstar2
- subdir-y      += stingray
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -0,0 +1,2 @@
-+# SPDX-License-Identifier: GPL-2.0
-+dtb-$(CONFIG_ARCH_BCMBCA) += bcm963158.dtb
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm63158.dtsi
-@@ -0,0 +1,128 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright 2022 Broadcom Ltd.
-+ */
-+
-+#include <dt-bindings/interrupt-controller/irq.h>
-+#include <dt-bindings/interrupt-controller/arm-gic.h>
-+
-+/ {
-+      compatible = "brcm,bcm63158", "brcm,bcmbca";
-+      #address-cells = <2>;
-+      #size-cells = <2>;
-+
-+      interrupt-parent = <&gic>;
-+
-+      cpus {
-+              #address-cells = <2>;
-+              #size-cells = <0>;
-+
-+              B53_0: cpu@0 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x0>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_1: cpu@1 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x1>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_2: cpu@2 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x2>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_3: cpu@3 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x3>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              L2_0: l2-cache0 {
-+                      compatible = "cache";
-+              };
-+      };
-+
-+      timer {
-+              compatible = "arm,armv8-timer";
-+              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
-+      };
-+
-+      pmu: pmu {
-+              compatible = "arm,cortex-a53-pmu";
-+              interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
-+              interrupt-affinity = <&B53_0>, <&B53_1>,
-+                      <&B53_2>, <&B53_3>;
-+      };
-+
-+      clocks: clocks {
-+              periph_clk: periph-clk {
-+                      compatible = "fixed-clock";
-+                      #clock-cells = <0>;
-+                      clock-frequency = <200000000>;
-+              };
-+              uart_clk: uart-clk {
-+                      compatible = "fixed-factor-clock";
-+                      #clock-cells = <0>;
-+                      clocks = <&periph_clk>;
-+                      clock-div = <4>;
-+                      clock-mult = <1>;
-+              };
-+      };
-+
-+      psci {
-+              compatible = "arm,psci-0.2";
-+              method = "smc";
-+      };
-+
-+      axi@81000000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x0 0x0 0x81000000 0x8000>;
-+
-+              gic: interrupt-controller@1000 {
-+                      compatible = "arm,gic-400";
-+                      #interrupt-cells = <3>;
-+                      interrupt-controller;
-+                      interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
-+                      reg = <0x1000 0x1000>,
-+                              <0x2000 0x2000>,
-+                              <0x4000 0x2000>,
-+                              <0x6000 0x2000>;
-+              };
-+      };
-+
-+      bus@ff800000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x0 0x0 0xff800000 0x800000>;
-+
-+              uart0: serial@12000 {
-+                      compatible = "arm,pl011", "arm,primecell";
-+                      reg = <0x12000 0x1000>;
-+                      interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
-+                      clocks = <&uart_clk>, <&uart_clk>;
-+                      clock-names = "uartclk", "apb_pclk";
-+                      status = "disabled";
-+              };
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm963158.dts
-@@ -0,0 +1,30 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright 2022 Broadcom Ltd.
-+ */
-+
-+/dts-v1/;
-+
-+#include "bcm63158.dtsi"
-+
-+/ {
-+      model = "Broadcom BCM963158 Reference Board";
-+      compatible = "brcm,bcm963158", "brcm,bcm63158", "brcm,bcmbca";
-+
-+      aliases {
-+              serial0 = &uart0;
-+      };
-+
-+      chosen {
-+              stdout-path = "serial0:115200n8";
-+      };
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x0 0x0 0x0 0x08000000>;
-+      };
-+};
-+
-+&uart0 {
-+      status = "okay";
-+};
diff --git a/target/linux/bcm4908/patches-5.15/033-v6.0-0002-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM4912.patchgit b/target/linux/bcm4908/patches-5.15/033-v6.0-0002-arm64-dts-Add-DTS-files-for-bcmbca-SoC-BCM4912.patchgit
deleted file mode 100644 (file)
index 5cdb9d1..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-From 1ba56aeb391401c4cb2126c39f90b3cdbfabdb3f Mon Sep 17 00:00:00 2001
-From: William Zhang <william.zhang@broadcom.com>
-Date: Wed, 1 Jun 2022 13:17:34 -0700
-Subject: [PATCH] arm64: dts: Add DTS files for bcmbca SoC BCM4912
-
-Add DTS for ARMv8 based broadband SoC BCM4912. bcm4912.dtsi is the
-SoC description DTS header and bcm94912.dts is a simple DTS file for
-Broadcom BCM94912 Reference board that only enable the UART port.
-
-Signed-off-by: William Zhang <william.zhang@broadcom.com>
-Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/bcmbca/Makefile  |   3 +-
- .../boot/dts/broadcom/bcmbca/bcm4912.dtsi     | 128 ++++++++++++++++++
- .../boot/dts/broadcom/bcmbca/bcm94912.dts     |  30 ++++
- 3 files changed, 160 insertions(+), 1 deletion(-)
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm4912.dtsi
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm94912.dts
-
---- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -1,2 +1,3 @@
- # SPDX-License-Identifier: GPL-2.0
--dtb-$(CONFIG_ARCH_BCMBCA) += bcm963158.dtb
-+dtb-$(CONFIG_ARCH_BCMBCA) += bcm94912.dtb \
-+                              bcm963158.dtb
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4912.dtsi
-@@ -0,0 +1,128 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright 2022 Broadcom Ltd.
-+ */
-+
-+#include <dt-bindings/interrupt-controller/irq.h>
-+#include <dt-bindings/interrupt-controller/arm-gic.h>
-+
-+/ {
-+      compatible = "brcm,bcm4912", "brcm,bcmbca";
-+      #address-cells = <2>;
-+      #size-cells = <2>;
-+
-+      interrupt-parent = <&gic>;
-+
-+      cpus {
-+              #address-cells = <2>;
-+              #size-cells = <0>;
-+
-+              B53_0: cpu@0 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x0>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_1: cpu@1 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x1>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_2: cpu@2 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x2>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_3: cpu@3 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x3>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              L2_0: l2-cache0 {
-+                      compatible = "cache";
-+              };
-+      };
-+
-+      timer {
-+              compatible = "arm,armv8-timer";
-+              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
-+      };
-+
-+      pmu: pmu {
-+              compatible = "arm,cortex-a53-pmu";
-+              interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
-+              interrupt-affinity = <&B53_0>, <&B53_1>,
-+                      <&B53_2>, <&B53_3>;
-+      };
-+
-+      clocks: clocks {
-+              periph_clk: periph-clk {
-+                      compatible = "fixed-clock";
-+                      #clock-cells = <0>;
-+                      clock-frequency = <200000000>;
-+              };
-+              uart_clk: uart-clk {
-+                      compatible = "fixed-factor-clock";
-+                      #clock-cells = <0>;
-+                      clocks = <&periph_clk>;
-+                      clock-div = <4>;
-+                      clock-mult = <1>;
-+              };
-+      };
-+
-+      psci {
-+              compatible = "arm,psci-0.2";
-+              method = "smc";
-+      };
-+
-+      axi@81000000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x0 0x0 0x81000000 0x8000>;
-+
-+              gic: interrupt-controller@1000 {
-+                      compatible = "arm,gic-400";
-+                      #interrupt-cells = <3>;
-+                      interrupt-controller;
-+                      interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
-+                      reg = <0x1000 0x1000>,
-+                              <0x2000 0x2000>,
-+                              <0x4000 0x2000>,
-+                              <0x6000 0x2000>;
-+              };
-+      };
-+
-+      bus@ff800000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x0 0x0 0xff800000 0x800000>;
-+
-+              uart0: serial@12000 {
-+                      compatible = "arm,pl011", "arm,primecell";
-+                      reg = <0x12000 0x1000>;
-+                      interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
-+                      clocks = <&uart_clk>, <&uart_clk>;
-+                      clock-names = "uartclk", "apb_pclk";
-+                      status = "disabled";
-+              };
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm94912.dts
-@@ -0,0 +1,30 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright 2022 Broadcom Ltd.
-+ */
-+
-+/dts-v1/;
-+
-+#include "bcm4912.dtsi"
-+
-+/ {
-+      model = "Broadcom BCM94912 Reference Board";
-+      compatible = "brcm,bcm94912", "brcm,bcm4912", "brcm,bcmbca";
-+
-+      aliases {
-+              serial0 = &uart0;
-+      };
-+
-+      chosen {
-+              stdout-path = "serial0:115200n8";
-+      };
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x0 0x0 0x0 0x08000000>;
-+      };
-+};
-+
-+&uart0 {
-+      status = "okay";
-+};
diff --git a/target/linux/bcm4908/patches-5.15/033-v6.0-0003-ARM64-dts-Add-DTS-files-for-bcmbca-SoC-BCM6858.patchgit b/target/linux/bcm4908/patches-5.15/033-v6.0-0003-ARM64-dts-Add-DTS-files-for-bcmbca-SoC-BCM6858.patchgit
deleted file mode 100644 (file)
index f10a44f..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-From e663e06bd3f21e64bc2163910f626af68add6308 Mon Sep 17 00:00:00 2001
-From: Anand Gore <anand.gore@broadcom.com>
-Date: Wed, 1 Jun 2022 13:19:56 -0700
-Subject: [PATCH] ARM64: dts: Add DTS files for bcmbca SoC BCM6858
-
-Add DTS for ARMv8 based broadband SoC BCM6858. bcm6858.dtsi is the SoC
-description DTS header and bcm96858.dts is a simple DTS file for
-Broadcom BCM96858 Reference board that only enables the UART port.
-
-Signed-off-by: Anand Gore <anand.gore@broadcom.com>
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/bcmbca/Makefile  |   3 +-
- .../boot/dts/broadcom/bcmbca/bcm6858.dtsi     | 121 ++++++++++++++++++
- .../boot/dts/broadcom/bcmbca/bcm96858.dts     |  30 +++++
- 3 files changed, 153 insertions(+), 1 deletion(-)
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm6858.dtsi
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm96858.dts
-
---- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -1,3 +1,4 @@
- # SPDX-License-Identifier: GPL-2.0
- dtb-$(CONFIG_ARCH_BCMBCA) += bcm94912.dtb \
--                              bcm963158.dtb
-+                              bcm963158.dtb \
-+                              bcm96858.dtb
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm6858.dtsi
-@@ -0,0 +1,121 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright 2022 Broadcom Ltd.
-+ */
-+
-+#include <dt-bindings/interrupt-controller/irq.h>
-+#include <dt-bindings/interrupt-controller/arm-gic.h>
-+
-+/ {
-+      compatible = "brcm,bcm6858", "brcm,bcmbca";
-+      #address-cells = <2>;
-+      #size-cells = <2>;
-+
-+      interrupt-parent = <&gic>;
-+
-+      cpus {
-+              #address-cells = <2>;
-+              #size-cells = <0>;
-+
-+              B53_0: cpu@0 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x0>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_1: cpu@1 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x1>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_2: cpu@2 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x2>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+
-+              B53_3: cpu@3 {
-+                      compatible = "brcm,brahma-b53";
-+                      device_type = "cpu";
-+                      reg = <0x0 0x3>;
-+                      next-level-cache = <&L2_0>;
-+                      enable-method = "psci";
-+              };
-+              L2_0: l2-cache0 {
-+                      compatible = "cache";
-+              };
-+      };
-+
-+      timer {
-+              compatible = "arm,armv8-timer";
-+              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                      <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
-+      };
-+
-+      pmu: pmu {
-+              compatible = "arm,armv8-pmuv3";
-+              interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
-+                      <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
-+              interrupt-affinity = <&B53_0>, <&B53_1>,
-+                      <&B53_2>, <&B53_3>;
-+      };
-+
-+      clocks: clocks {
-+              periph_clk:periph-clk {
-+                      compatible = "fixed-clock";
-+                      #clock-cells = <0>;
-+                      clock-frequency = <200000000>;
-+              };
-+      };
-+
-+      psci {
-+              compatible = "arm,psci-0.2";
-+              method = "smc";
-+      };
-+
-+      axi@81000000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x0 0x0 0x81000000 0x8000>;
-+
-+              gic: interrupt-controller@1000 {
-+                      compatible = "arm,gic-400";
-+                      #interrupt-cells = <3>;
-+                      interrupt-controller;
-+                      reg = <0x1000 0x1000>, /* GICD */
-+                              <0x2000 0x2000>, /* GICC */
-+                              <0x4000 0x2000>, /* GICH */
-+                              <0x6000 0x2000>; /* GICV */
-+                      interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) |
-+                                      IRQ_TYPE_LEVEL_HIGH)>;
-+              };
-+      };
-+
-+      bus@ff800000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x0 0x0 0xff800000 0x62000>;
-+
-+              uart0: serial@640 {
-+                      compatible = "brcm,bcm6345-uart";
-+                      reg = <0x640 0x18>;
-+                      interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
-+                      clocks = <&periph_clk>;
-+                      clock-names = "refclk";
-+                      status = "disabled";
-+              };
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm96858.dts
-@@ -0,0 +1,30 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright 2022 Broadcom Ltd.
-+ */
-+
-+/dts-v1/;
-+
-+#include "bcm6858.dtsi"
-+
-+/ {
-+      model = "Broadcom BCM96858 Reference Board";
-+      compatible = "brcm,bcm96858", "brcm,bcm6858", "brcm,bcmbca";
-+
-+      aliases {
-+              serial0 = &uart0;
-+      };
-+
-+      chosen {
-+              stdout-path = "serial0:115200n8";
-+      };
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x0 0x0 0x0 0x08000000>;
-+      };
-+};
-+
-+&uart0 {
-+      status = "okay";
-+};
index 793c5af7382dbc8ea4b9b81a569f0897667a0c15..7cd13e5c22ff01c26d9d4fad5f15f22adad7d052 100644 (file)
@@ -19,9 +19,9 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 
 --- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -1,4 +1,5 @@
- # SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_ARCH_BCMBCA) += bcm94912.dtb \
+@@ -7,4 +7,5 @@ dtb-$(CONFIG_ARCH_BCMBCA) += \
+                               bcm4912-asus-gt-ax6000.dtb \
                              bcm94912.dtb \
                                bcm963158.dtb \
 -                              bcm96858.dtb
 +                              bcm96858.dtb \
index 0fdafb7f17dee0308deecaaf57fe5aedeeb5393b..2e0da2e54a85666ed8ac24a1b00490df001624c5 100644 (file)
@@ -19,8 +19,8 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 
 --- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -2,4 +2,5 @@
dtb-$(CONFIG_ARCH_BCMBCA) += bcm94912.dtb \
+@@ -8,4 +8,5 @@ dtb-$(CONFIG_ARCH_BCMBCA) += \
                              bcm94912.dtb \
                                bcm963158.dtb \
                                bcm96858.dtb \
 -                              bcm963146.dtb
index 58af85a68cd3d389310aad46568d500ebb83f489..6be8ab8ee45b61ee63b3e1ff2c4e140787da111b 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 
 --- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
 +++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -3,4 +3,5 @@ dtb-$(CONFIG_ARCH_BCMBCA) += bcm94912.dt
+@@ -9,4 +9,5 @@ dtb-$(CONFIG_ARCH_BCMBCA) += \
                                bcm963158.dtb \
                                bcm96858.dtb \
                                bcm963146.dtb \
index d0d6151957eb219218387639bad1e6410a85f84f..987da135d746c00398b607fb9e455520c6f0a5b0 100644 (file)
@@ -9,12 +9,12 @@ The node names should be generic and DT schema expects certain pattern
 Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
 Link: https://lore.kernel.org/r/20220616005333.18491-6-krzysztof.kozlowski@linaro.org
 ---
- .../broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts   | 8 ++++----
- .../boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts  | 8 ++++----
+ .../broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts   | 8 ++++----
+ .../boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts  | 8 ++++----
  2 files changed, 8 insertions(+), 8 deletions(-)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts
 @@ -83,25 +83,25 @@
                compatible = "gpio-keys-polled";
                poll-interval = <100>;
@@ -45,8 +45,8 @@ Link: https://lore.kernel.org/r/20220616005333.18491-6-krzysztof.kozlowski@linar
                        label = "Reset";
                        linux,code = <KEY_RESTART>;
                        gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
 @@ -18,25 +18,25 @@
                compatible = "gpio-keys-polled";
                poll-interval = <100>;
index 59fbeea385269a75d987cc870ef784c79a937ead..95540d3aab6d5ef618df2316061d77ebc596eb2d 100644 (file)
@@ -11,11 +11,11 @@ Fixes: c8b404fb05dc ("arm64: dts: broadcom: bcm4908: add BCM4906 Netgear R8000P
 Signed-off-by: William Zhang <william.zhang@broadcom.com>
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- arch/arm64/boot/dts/broadcom/bcm4908/bcm4906.dtsi | 8 ++++++++
+ arch/arm64/boot/dts/broadcom/bcmbca/bcm4906.dtsi | 8 ++++++++
  1 file changed, 8 insertions(+)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906.dtsi
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906.dtsi
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906.dtsi
 @@ -17,6 +17,14 @@
                             <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
        };
diff --git a/target/linux/bcm4908/patches-5.15/033-v6.0-0010-arm64-dts-Add-base-DTS-file-for-bcmbca-device-Asus-G.patchgit b/target/linux/bcm4908/patches-5.15/033-v6.0-0010-arm64-dts-Add-base-DTS-file-for-bcmbca-device-Asus-G.patchgit
deleted file mode 100644 (file)
index 6f71c8b..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-From f3f575c4bef95384e68de552c7b29938fd0d9201 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
-Date: Wed, 13 Jul 2022 22:03:51 +0200
-Subject: [PATCH] arm64: dts: Add base DTS file for bcmbca device Asus
- GT-AX6000
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-It's a home router with 1 GiB of RAM, 6 Ethernet ports, 2 USB ports.
-
-Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
-Acked-by: William Zhang <william.zhang@broadcom.com>
-Link: https://lore.kernel.org/r/20220713200351.28526-2-zajec5@gmail.com
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/bcmbca/Makefile  |  4 +++-
- .../bcmbca/bcm4912-asus-gt-ax6000.dts         | 19 +++++++++++++++++++
- 2 files changed, 22 insertions(+), 1 deletion(-)
- create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm4912-asus-gt-ax6000.dts
-
---- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -1,5 +1,7 @@
- # SPDX-License-Identifier: GPL-2.0
--dtb-$(CONFIG_ARCH_BCMBCA) += bcm94912.dtb \
-+dtb-$(CONFIG_ARCH_BCMBCA) += \
-+                              bcm4912-asus-gt-ax6000.dtb \
-+                              bcm94912.dtb \
-                               bcm963158.dtb \
-                               bcm96858.dtb \
-                               bcm963146.dtb \
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4912-asus-gt-ax6000.dts
-@@ -0,0 +1,19 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+/dts-v1/;
-+
-+#include "bcm4912.dtsi"
-+
-+/ {
-+      compatible = "asus,gt-ax6000", "brcm,bcm4912", "brcm,bcmbca";
-+      model = "Asus GT-AX6000";
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x00 0x00 0x00 0x40000000>;
-+      };
-+};
-+
-+&uart0 {
-+      status = "okay";
-+};
index 437249f2cb33ae36e5eab6423869965fe235315e..69b15222684b71a5020a21b347fcd1e54158e5f0 100644 (file)
@@ -12,11 +12,11 @@ Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Link: https://lore.kernel.org/r/20220718132100.13277-1-zajec5@gmail.com
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- .../boot/dts/broadcom/bcm4908/bcm4908.dtsi    | 75 +++++++++++++++++++
+ .../boot/dts/broadcom/bcmbca/bcm4908.dtsi    | 75 +++++++++++++++++++
  1 file changed, 75 insertions(+)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
 @@ -352,6 +352,61 @@
                                groups = "led_9_grp_a";
                        };
index c8903408934192c3b7de9aefb58d0b818970024e..28641ab7883e411efd352de82f127c104ea7c0d1 100644 (file)
@@ -13,11 +13,11 @@ Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Link: https://lore.kernel.org/r/20220718132100.13277-2-zajec5@gmail.com
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi | 8 ++++++++
+ arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi | 8 ++++++++
  1 file changed, 8 insertions(+)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
 @@ -517,6 +517,14 @@
                        status = "okay";
                };
index 3888efb66bbff1fc2af53b4b2cd8a9d24a54f827..f4c7d8c489536d70ebec39a141f40182119a2f03 100644 (file)
@@ -12,11 +12,11 @@ Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Link: https://lore.kernel.org/r/20220718132100.13277-3-zajec5@gmail.com
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- .../bcm4908/bcm4908-asus-gt-ac5300.dts        | 48 +++++++++++++++++++
+ .../bcmbca/bcm4908-asus-gt-ac5300.dts        | 48 +++++++++++++++++++
  1 file changed, 48 insertions(+)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
 @@ -2,6 +2,7 @@
  
  #include <dt-bindings/gpio/gpio.h>
index d4b7a983deac64b67e1ec130a3793d68b905aec5..8f9d3604cb54ffc1199a05b82beabc507224da78 100644 (file)
@@ -14,14 +14,14 @@ Acked-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
 Link: https://lore.kernel.org/r/20220803175455.47638-4-william.zhang@broadcom.com
 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
 ---
- arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts | 2 +-
- .../dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts     | 2 +-
- arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts | 2 +-
- .../arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts | 2 +-
+ arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-netgear-r8000p.dts | 2 +-
+ .../dts/broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts     | 2 +-
+ arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts | 2 +-
+ .../arm64/boot/dts/broadcom/bcmbca/bcm4908-netgear-raxe500.dts | 2 +-
  4 files changed, 4 insertions(+), 4 deletions(-)
 
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-netgear-r8000p.dts
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-netgear-r8000p.dts
 @@ -7,7 +7,7 @@
  #include "bcm4906.dtsi"
  
@@ -31,8 +31,8 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
        model = "Netgear R8000P";
  
        memory@0 {
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts
 @@ -7,7 +7,7 @@
  #include "bcm4906.dtsi"
  
@@ -42,8 +42,8 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
        model = "TP-Link Archer C2300 V1";
  
        memory@0 {
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
 @@ -7,7 +7,7 @@
  #include "bcm4908.dtsi"
  
@@ -53,8 +53,8 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
        model = "Asus GT-AC5300";
  
        memory@0 {
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
+--- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-netgear-raxe500.dts
++++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-netgear-raxe500.dts
 @@ -3,7 +3,7 @@
  #include "bcm4908.dtsi"
  
diff --git a/target/linux/bcm4908/patches-5.15/034-v6.1-0005-arm64-dts-Move-BCM4908-dts-to-bcmbca-folder.patch b/target/linux/bcm4908/patches-5.15/034-v6.1-0005-arm64-dts-Move-BCM4908-dts-to-bcmbca-folder.patch
deleted file mode 100644 (file)
index 4a8279a..0000000
+++ /dev/null
@@ -1,2507 +0,0 @@
-From ded8f22945899f4e87dd6d952bbc4abce6e64b7e Mon Sep 17 00:00:00 2001
-From: William Zhang <william.zhang@broadcom.com>
-Date: Wed, 3 Aug 2022 10:54:50 -0700
-Subject: [PATCH] arm64: dts: Move BCM4908 dts to bcmbca folder
-
-As part of ARCH_BCM4908 to ARCH_BCMBCA migration, move the BCM4908 dts
-files to bcmbca folder and use CONFIG_ARCH_BCMBCA to build all the
-BCM4908 board dts. Delete bcm4908 folder and its makefile as well.
-
-Signed-off-by: William Zhang <william.zhang@broadcom.com>
-Link: https://lore.kernel.org/r/20220803175455.47638-5-william.zhang@broadcom.com
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/Makefile                        | 1 -
- arch/arm64/boot/dts/broadcom/bcm4908/Makefile                | 5 -----
- arch/arm64/boot/dts/broadcom/bcmbca/Makefile                 | 4 ++++
- .../broadcom/{bcm4908 => bcmbca}/bcm4906-netgear-r8000p.dts  | 0
- .../{bcm4908 => bcmbca}/bcm4906-tplink-archer-c2300-v1.dts   | 0
- .../arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906.dtsi | 0
- .../broadcom/{bcm4908 => bcmbca}/bcm4908-asus-gt-ac5300.dts  | 0
- .../broadcom/{bcm4908 => bcmbca}/bcm4908-netgear-raxe500.dts | 0
- .../arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908.dtsi | 0
- 9 files changed, 4 insertions(+), 6 deletions(-)
- delete mode 100644 arch/arm64/boot/dts/broadcom/bcm4908/Makefile
- rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906-netgear-r8000p.dts (100%)
- rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906-tplink-archer-c2300-v1.dts (100%)
- rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4906.dtsi (100%)
- rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908-asus-gt-ac5300.dts (100%)
- rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908-netgear-raxe500.dts (100%)
- rename arch/arm64/boot/dts/broadcom/{bcm4908 => bcmbca}/bcm4908.dtsi (100%)
-
---- a/arch/arm64/boot/dts/broadcom/Makefile
-+++ b/arch/arm64/boot/dts/broadcom/Makefile
-@@ -6,7 +6,6 @@ dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rp
-                             bcm2837-rpi-3-b-plus.dtb \
-                             bcm2837-rpi-cm3-io3.dtb
--subdir-y      += bcm4908
- subdir-y      += bcmbca
- subdir-y      += northstar2
- subdir-y      += stingray
---- a/arch/arm64/boot/dts/broadcom/bcm4908/Makefile
-+++ /dev/null
-@@ -1,5 +0,0 @@
--# SPDX-License-Identifier: GPL-2.0
--dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-netgear-r8000p.dtb
--dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-tplink-archer-c2300-v1.dtb
--dtb-$(CONFIG_ARCH_BCM4908) += bcm4908-asus-gt-ac5300.dtb
--dtb-$(CONFIG_ARCH_BCM4908) += bcm4908-netgear-raxe500.dtb
---- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
-@@ -1,5 +1,9 @@
- # SPDX-License-Identifier: GPL-2.0
- dtb-$(CONFIG_ARCH_BCMBCA) += \
-+                              bcm4906-netgear-r8000p.dtb \
-+                              bcm4906-tplink-archer-c2300-v1.dtb \
-+                              bcm4908-asus-gt-ac5300.dtb \
-+                              bcm4908-netgear-raxe500.dtb \
-                               bcm4912-asus-gt-ax6000.dtb \
-                               bcm94912.dtb \
-                               bcm963158.dtb \
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-netgear-r8000p.dts
-+++ /dev/null
-@@ -1,157 +0,0 @@
--// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
--
--#include <dt-bindings/gpio/gpio.h>
--#include <dt-bindings/input/input.h>
--#include <dt-bindings/leds/common.h>
--
--#include "bcm4906.dtsi"
--
--/ {
--      compatible = "netgear,r8000p", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
--      model = "Netgear R8000P";
--
--      memory@0 {
--              device_type = "memory";
--              reg = <0x00 0x00 0x00 0x20000000>;
--      };
--
--      leds {
--              compatible = "gpio-leds";
--
--              led-power-white {
--                      function = LED_FUNCTION_POWER;
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
--              };
--
--              led-power-amber {
--                      function = LED_FUNCTION_POWER;
--                      color = <LED_COLOR_ID_AMBER>;
--                      gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
--              };
--
--              led-wps {
--                      function = LED_FUNCTION_WPS;
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
--              };
--
--              led-2ghz {
--                      function = "2ghz";
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
--              };
--
--              led-5ghz-1 {
--                      function = "5ghz-1";
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
--              };
--
--              led-5ghz-2 {
--                      function = "5ghz-2";
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
--              };
--
--              led-usb2 {
--                      function = "usb2";
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
--              };
--
--              led-usb3 {
--                      function = "usb3";
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
--              };
--
--              led-wifi {
--                      function = "wifi";
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 56 GPIO_ACTIVE_LOW>;
--              };
--      };
--};
--
--&enet {
--      nvmem-cells = <&base_mac_addr>;
--      nvmem-cell-names = "mac-address";
--};
--
--&usb_phy {
--      brcm,ioc = <1>;
--      status = "okay";
--};
--
--&ehci {
--      status = "okay";
--};
--
--&ohci {
--      status = "okay";
--};
--
--&xhci {
--      status = "okay";
--};
--
--&ports {
--      port@0 {
--              label = "lan4";
--      };
--
--      port@1 {
--              label = "lan3";
--      };
--
--      port@2 {
--              label = "lan2";
--      };
--
--      port@3 {
--              label = "lan1";
--      };
--
--      port@7 {
--              reg = <7>;
--              phy-mode = "internal";
--              phy-handle = <&phy12>;
--              label = "wan";
--      };
--};
--
--&nandcs {
--      nand-ecc-strength = <4>;
--      nand-ecc-step-size = <512>;
--      nand-on-flash-bbt;
--
--      #address-cells = <1>;
--      #size-cells = <0>;
--
--      partitions {
--              compatible = "fixed-partitions";
--              #address-cells = <1>;
--              #size-cells = <1>;
--
--              partition@0 {
--                      compatible = "nvmem-cells";
--                      label = "cferom";
--                      reg = <0x0 0x100000>;
--
--                      #address-cells = <1>;
--                      #size-cells = <1>;
--                      ranges = <0 0x0 0x100000>;
--
--                      base_mac_addr: mac@106a0 {
--                              reg = <0x106a0 0x6>;
--                      };
--              };
--
--              partition@100000 {
--                      compatible = "brcm,bcm4908-firmware";
--                      label = "firmware";
--                      reg = <0x100000 0x4400000>;
--              };
--      };
--};
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1.dts
-+++ /dev/null
-@@ -1,182 +0,0 @@
--// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
--
--#include <dt-bindings/gpio/gpio.h>
--#include <dt-bindings/input/input.h>
--#include <dt-bindings/leds/common.h>
--
--#include "bcm4906.dtsi"
--
--/ {
--      compatible = "tplink,archer-c2300-v1", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
--      model = "TP-Link Archer C2300 V1";
--
--      memory@0 {
--              device_type = "memory";
--              reg = <0x00 0x00 0x00 0x20000000>;
--      };
--
--      leds {
--              compatible = "gpio-leds";
--
--              led-power {
--                      function = LED_FUNCTION_POWER;
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
--              };
--
--              led-2ghz {
--                      function = "2ghz";
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
--              };
--
--              led-5ghz {
--                      function = "5ghz";
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
--              };
--
--              led-wan-amber {
--                      function = LED_FUNCTION_WAN;
--                      color = <LED_COLOR_ID_AMBER>;
--                      gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
--              };
--
--              led-wan-blue {
--                      function = LED_FUNCTION_WAN;
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
--              };
--
--              led-lan {
--                      function = LED_FUNCTION_LAN;
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
--              };
--
--              led-wps {
--                      function = LED_FUNCTION_WPS;
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
--              };
--
--              led-usb2 {
--                      function = "usb2";
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
--              };
--
--              led-usb3 {
--                      function = "usbd3";
--                      color = <LED_COLOR_ID_BLUE>;
--                      gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
--              };
--
--              led-brightness {
--                      function = LED_FUNCTION_BACKLIGHT;
--                      color = <LED_COLOR_ID_WHITE>;
--                      gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
--              };
--      };
--
--      gpio-keys-polled {
--              compatible = "gpio-keys-polled";
--              poll-interval = <100>;
--
--              key-brightness {
--                      label = "LEDs";
--                      linux,code = <KEY_BRIGHTNESS_ZERO>;
--                      gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
--              };
--
--              key-wps {
--                      label = "WPS";
--                      linux,code = <KEY_WPS_BUTTON>;
--                      gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
--              };
--
--              key-wifi {
--                      label = "WiFi";
--                      linux,code = <KEY_RFKILL>;
--                      gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
--              };
--
--              key-restart {
--                      label = "Reset";
--                      linux,code = <KEY_RESTART>;
--                      gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
--              };
--      };
--};
--
--&usb_phy {
--      brcm,ioc = <1>;
--      status = "okay";
--};
--
--&ehci {
--      status = "okay";
--};
--
--&ohci {
--      status = "okay";
--};
--
--&xhci {
--      status = "okay";
--};
--
--&ports {
--      port@0 {
--              label = "lan4";
--      };
--
--      port@1 {
--              label = "lan3";
--      };
--
--      port@2 {
--              label = "lan2";
--      };
--
--      port@3 {
--              label = "lan1";
--      };
--
--      port@7 {
--              reg = <7>;
--              phy-mode = "internal";
--              phy-handle = <&phy12>;
--              label = "wan";
--      };
--};
--
--&nandcs {
--      nand-ecc-strength = <4>;
--      nand-ecc-step-size = <512>;
--      nand-on-flash-bbt;
--
--      #address-cells = <1>;
--      #size-cells = <0>;
--
--      partitions {
--              compatible = "brcm,bcm4908-partitions";
--              #address-cells = <1>;
--              #size-cells = <1>;
--
--              partition@0 {
--                      label = "cferom";
--                      reg = <0x0 0x100000>;
--              };
--
--              partition@100000 {
--                      compatible = "brcm,bcm4908-firmware";
--                      reg = <0x100000 0x3900000>;
--              };
--
--              partition@5800000 {
--                      compatible = "brcm,bcm4908-firmware";
--                      reg = <0x3a00000 0x3900000>;
--              };
--      };
--};
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4906.dtsi
-+++ /dev/null
-@@ -1,34 +0,0 @@
--// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
--
--#include "bcm4908.dtsi"
--
--/ {
--      cpus {
--              /delete-node/ cpu@2;
--
--              /delete-node/ cpu@3;
--      };
--
--      timer {
--              compatible = "arm,armv8-timer";
--              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
--      };
--
--      timer {
--              compatible = "arm,armv8-timer";
--              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
--      };
--
--      pmu {
--              compatible = "arm,cortex-a53-pmu";
--              interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
--                           <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
--              interrupt-affinity = <&cpu0>, <&cpu1>;
--      };
--};
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-asus-gt-ac5300.dts
-+++ /dev/null
-@@ -1,207 +0,0 @@
--// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
--
--#include <dt-bindings/gpio/gpio.h>
--#include <dt-bindings/input/input.h>
--#include <dt-bindings/leds/common.h>
--
--#include "bcm4908.dtsi"
--
--/ {
--      compatible = "asus,gt-ac5300", "brcm,bcm4908", "brcm,bcmbca";
--      model = "Asus GT-AC5300";
--
--      memory@0 {
--              device_type = "memory";
--              reg = <0x00 0x00 0x00 0x40000000>;
--      };
--
--      gpio-keys-polled {
--              compatible = "gpio-keys-polled";
--              poll-interval = <100>;
--
--              key-wifi {
--                      label = "WiFi";
--                      linux,code = <KEY_RFKILL>;
--                      gpios = <&gpio0 28 GPIO_ACTIVE_LOW>;
--              };
--
--              key-wps {
--                      label = "WPS";
--                      linux,code = <KEY_WPS_BUTTON>;
--                      gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
--              };
--
--              key-restart {
--                      label = "Reset";
--                      linux,code = <KEY_RESTART>;
--                      gpios = <&gpio0 30 GPIO_ACTIVE_LOW>;
--              };
--
--              key-brightness {
--                      label = "LEDs";
--                      linux,code = <KEY_BRIGHTNESS_ZERO>;
--                      gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
--              };
--      };
--};
--
--&enet {
--      nvmem-cells = <&base_mac_addr>;
--      nvmem-cell-names = "mac-address";
--};
--
--&usb_phy {
--      brcm,ioc = <1>;
--      status = "okay";
--};
--
--&ehci {
--      status = "okay";
--};
--
--&ohci {
--      status = "okay";
--};
--
--&xhci {
--      status = "okay";
--};
--
--&ports {
--      port@0 {
--              label = "lan2";
--      };
--
--      port@1 {
--              label = "lan1";
--      };
--
--      port@2 {
--              label = "lan6";
--      };
--
--      port@3 {
--              label = "lan5";
--      };
--
--      /* External BCM53134S switch */
--      port@7 {
--              label = "sw";
--              reg = <7>;
--              phy-mode = "rgmii";
--
--              fixed-link {
--                      speed = <1000>;
--                      full-duplex;
--              };
--      };
--};
--
--&mdio {
--      /* lan8 */
--      ethernet-phy@0 {
--              reg = <0>;
--      };
--
--      /* lan7 */
--      ethernet-phy@1 {
--              reg = <1>;
--      };
--
--      /* lan4 */
--      ethernet-phy@2 {
--              reg = <2>;
--      };
--
--      /* lan3 */
--      ethernet-phy@3 {
--              reg = <3>;
--      };
--};
--
--&leds {
--      led-power@11 {
--              reg = <0x11>;
--              function = LED_FUNCTION_POWER;
--              color = <LED_COLOR_ID_WHITE>;
--              default-state = "on";
--              active-low;
--              pinctrl-names = "default";
--              pinctrl-0 = <&pins_led_17_a>;
--      };
--
--      led-wan-red@12 {
--              reg = <0x12>;
--              function = LED_FUNCTION_WAN;
--              color = <LED_COLOR_ID_RED>;
--              active-low;
--              pinctrl-names = "default";
--              pinctrl-0 = <&pins_led_18_a>;
--      };
--
--      led-wps@14 {
--              reg = <0x14>;
--              function = LED_FUNCTION_WPS;
--              color = <LED_COLOR_ID_WHITE>;
--              active-low;
--              pinctrl-names = "default";
--              pinctrl-0 = <&pins_led_20_a>;
--      };
--
--      led-wan-white@15 {
--              reg = <0x15>;
--              function = LED_FUNCTION_WAN;
--              color = <LED_COLOR_ID_WHITE>;
--              active-low;
--              pinctrl-names = "default";
--              pinctrl-0 = <&pins_led_21_a>;
--      };
--
--      led-lan@19 {
--              reg = <0x19>;
--              function = LED_FUNCTION_LAN;
--              color = <LED_COLOR_ID_WHITE>;
--              pinctrl-names = "default";
--              pinctrl-0 = <&pins_led_25_a>;
--      };
--};
--
--&nandcs {
--      nand-ecc-strength = <4>;
--      nand-ecc-step-size = <512>;
--      nand-on-flash-bbt;
--      brcm,nand-has-wp;
--
--      #address-cells = <1>;
--      #size-cells = <0>;
--
--      partitions {
--              compatible = "brcm,bcm4908-partitions";
--              #address-cells = <1>;
--              #size-cells = <1>;
--
--              partition@0 {
--                      compatible = "nvmem-cells";
--                      label = "cferom";
--                      reg = <0x0 0x100000>;
--
--                      #address-cells = <1>;
--                      #size-cells = <1>;
--                      ranges = <0 0x0 0x100000>;
--
--                      base_mac_addr: mac@106a0 {
--                              reg = <0x106a0 0x6>;
--                      };
--              };
--
--              partition@100000 {
--                      compatible = "brcm,bcm4908-firmware";
--                      reg = <0x100000 0x5700000>;
--              };
--
--              partition@5800000 {
--                      compatible = "brcm,bcm4908-firmware";
--                      reg = <0x5800000 0x5700000>;
--              };
--      };
--};
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908-netgear-raxe500.dts
-+++ /dev/null
-@@ -1,50 +0,0 @@
--// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
--
--#include "bcm4908.dtsi"
--
--/ {
--      compatible = "netgear,raxe500", "brcm,bcm4908", "brcm,bcmbca";
--      model = "Netgear RAXE500";
--
--      memory@0 {
--              device_type = "memory";
--              reg = <0x00 0x00 0x00 0x40000000>;
--      };
--};
--
--&ehci {
--      status = "okay";
--};
--
--&ohci {
--      status = "okay";
--};
--
--&xhci {
--      status = "okay";
--};
--
--&ports {
--      port@0 {
--              label = "lan4";
--      };
--
--      port@1 {
--              label = "lan3";
--      };
--
--      port@2 {
--              label = "lan2";
--      };
--
--      port@3 {
--              label = "lan1";
--      };
--
--      port@7 {
--              reg = <7>;
--              phy-mode = "internal";
--              phy-handle = <&phy12>;
--              label = "wan";
--      };
--};
---- a/arch/arm64/boot/dts/broadcom/bcm4908/bcm4908.dtsi
-+++ /dev/null
-@@ -1,575 +0,0 @@
--// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
--
--#include <dt-bindings/interrupt-controller/irq.h>
--#include <dt-bindings/interrupt-controller/arm-gic.h>
--#include <dt-bindings/phy/phy.h>
--#include <dt-bindings/soc/bcm-pmb.h>
--
--/dts-v1/;
--
--/ {
--      interrupt-parent = <&gic>;
--
--      #address-cells = <2>;
--      #size-cells = <2>;
--
--      aliases {
--              serial0 = &uart0;
--      };
--
--      chosen {
--              stdout-path = "serial0:115200n8";
--      };
--
--      cpus {
--              #address-cells = <1>;
--              #size-cells = <0>;
--
--              cpu0: cpu@0 {
--                      device_type = "cpu";
--                      compatible = "brcm,brahma-b53";
--                      reg = <0x0>;
--                      enable-method = "spin-table";
--                      cpu-release-addr = <0x0 0xfff8>;
--                      next-level-cache = <&l2>;
--              };
--
--              cpu1: cpu@1 {
--                      device_type = "cpu";
--                      compatible = "brcm,brahma-b53";
--                      reg = <0x1>;
--                      enable-method = "spin-table";
--                      cpu-release-addr = <0x0 0xfff8>;
--                      next-level-cache = <&l2>;
--              };
--
--              cpu2: cpu@2 {
--                      device_type = "cpu";
--                      compatible = "brcm,brahma-b53";
--                      reg = <0x2>;
--                      enable-method = "spin-table";
--                      cpu-release-addr = <0x0 0xfff8>;
--                      next-level-cache = <&l2>;
--              };
--
--              cpu3: cpu@3 {
--                      device_type = "cpu";
--                      compatible = "brcm,brahma-b53";
--                      reg = <0x3>;
--                      enable-method = "spin-table";
--                      cpu-release-addr = <0x0 0xfff8>;
--                      next-level-cache = <&l2>;
--              };
--
--              l2: l2-cache0 {
--                      compatible = "cache";
--              };
--      };
--
--      axi@81000000 {
--              compatible = "simple-bus";
--              #address-cells = <1>;
--              #size-cells = <1>;
--              ranges = <0x00 0x00 0x81000000 0x4000>;
--
--              gic: interrupt-controller@1000 {
--                      compatible = "arm,gic-400";
--                      #interrupt-cells = <3>;
--                      #address-cells = <0>;
--                      interrupt-controller;
--                      reg = <0x1000 0x1000>,
--                            <0x2000 0x2000>;
--              };
--      };
--
--      timer {
--              compatible = "arm,armv8-timer";
--              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
--                           <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
--      };
--
--      pmu {
--              compatible = "arm,cortex-a53-pmu";
--              interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
--                           <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
--                           <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
--                           <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
--              interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
--      };
--
--      clocks {
--              periph_clk: periph_clk {
--                      compatible = "fixed-clock";
--                      #clock-cells = <0>;
--                      clock-frequency = <50000000>;
--                      clock-output-names = "periph";
--              };
--      };
--
--      soc {
--              compatible = "simple-bus";
--              #address-cells = <1>;
--              #size-cells = <1>;
--              ranges = <0x00 0x00 0x80000000 0x281000>;
--
--              enet: ethernet@2000 {
--                      compatible = "brcm,bcm4908-enet";
--                      reg = <0x2000 0x1000>;
--
--                      interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
--                                   <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
--                      interrupt-names = "rx", "tx";
--              };
--
--              usb_phy: usb-phy@c200 {
--                      compatible = "brcm,bcm4908-usb-phy";
--                      reg = <0xc200 0x100>;
--                      reg-names = "ctrl";
--                      power-domains = <&pmb BCM_PMB_HOST_USB>;
--                      dr_mode = "host";
--                      brcm,has-xhci;
--                      brcm,has-eohci;
--                      #phy-cells = <1>;
--                      status = "disabled";
--              };
--
--              ehci: usb@c300 {
--                      compatible = "generic-ehci";
--                      reg = <0xc300 0x100>;
--                      interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
--                      phys = <&usb_phy PHY_TYPE_USB2>;
--                      status = "disabled";
--              };
--
--              ohci: usb@c400 {
--                      compatible = "generic-ohci";
--                      reg = <0xc400 0x100>;
--                      interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
--                      phys = <&usb_phy PHY_TYPE_USB2>;
--                      status = "disabled";
--              };
--
--              xhci: usb@d000 {
--                      compatible = "generic-xhci";
--                      reg = <0xd000 0x8c8>;
--                      interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
--                      phys = <&usb_phy PHY_TYPE_USB3>;
--                      status = "disabled";
--              };
--
--              bus@80000 {
--                      compatible = "simple-bus";
--                      #size-cells = <1>;
--                      #address-cells = <1>;
--                      ranges = <0 0x80000 0x50000>;
--
--                      ethernet-switch@0 {
--                              compatible = "brcm,bcm4908-switch";
--                              reg = <0x0 0x40000>,
--                                    <0x40000 0x110>,
--                                    <0x40340 0x30>,
--                                    <0x40380 0x30>,
--                                    <0x40600 0x34>,
--                                    <0x40800 0x208>;
--                              reg-names = "core", "reg", "intrl2_0",
--                                          "intrl2_1", "fcb", "acb";
--                              interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
--                                           <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
--                              brcm,num-gphy = <5>;
--                              brcm,num-rgmii-ports = <2>;
--
--                              #address-cells = <1>;
--                              #size-cells = <0>;
--
--                              ports: ports {
--                                      #address-cells = <1>;
--                                      #size-cells = <0>;
--
--                                      port@0 {
--                                              reg = <0>;
--                                              phy-mode = "internal";
--                                              phy-handle = <&phy8>;
--                                      };
--
--                                      port@1 {
--                                              reg = <1>;
--                                              phy-mode = "internal";
--                                              phy-handle = <&phy9>;
--                                      };
--
--                                      port@2 {
--                                              reg = <2>;
--                                              phy-mode = "internal";
--                                              phy-handle = <&phy10>;
--                                      };
--
--                                      port@3 {
--                                              reg = <3>;
--                                              phy-mode = "internal";
--                                              phy-handle = <&phy11>;
--                                      };
--
--                                      port@8 {
--                                              reg = <8>;
--                                              phy-mode = "internal";
--                                              ethernet = <&enet>;
--
--                                              fixed-link {
--                                                      speed = <1000>;
--                                                      full-duplex;
--                                              };
--                                      };
--                              };
--                      };
--
--                      mdio: mdio@405c0 {
--                              compatible = "brcm,unimac-mdio";
--                              reg = <0x405c0 0x8>;
--                              reg-names = "mdio";
--                              #size-cells = <0>;
--                              #address-cells = <1>;
--
--                              phy8: ethernet-phy@8 {
--                                      reg = <8>;
--                              };
--
--                              phy9: ethernet-phy@9 {
--                                      reg = <9>;
--                              };
--
--                              phy10: ethernet-phy@a {
--                                      reg = <10>;
--                              };
--
--                              phy11: ethernet-phy@b {
--                                      reg = <11>;
--                              };
--
--                              phy12: ethernet-phy@c {
--                                      reg = <12>;
--                              };
--                      };
--              };
--
--              procmon: syscon@280000 {
--                      compatible = "simple-bus";
--                      reg = <0x280000 0x1000>;
--                      ranges;
--
--                      #address-cells = <1>;
--                      #size-cells = <1>;
--
--                      pmb: power-controller@2800c0 {
--                              compatible = "brcm,bcm4908-pmb";
--                              reg = <0x2800c0 0x40>;
--                              #power-domain-cells = <1>;
--                      };
--              };
--      };
--
--      bus@ff800000 {
--              compatible = "simple-bus";
--              #address-cells = <1>;
--              #size-cells = <1>;
--              ranges = <0x00 0x00 0xff800000 0x3000>;
--
--              twd: timer-mfd@400 {
--                      compatible = "brcm,bcm4908-twd", "simple-mfd", "syscon";
--                      reg = <0x400 0x4c>;
--                      ranges = <0x0 0x400 0x4c>;
--
--                      #address-cells = <1>;
--                      #size-cells = <1>;
--
--                      watchdog@28 {
--                              compatible = "brcm,bcm6345-wdt";
--                              reg = <0x28 0x8>;
--                      };
--              };
--
--              gpio0: gpio-controller@500 {
--                      compatible = "brcm,bcm6345-gpio";
--                      reg-names = "dirout", "dat";
--                      reg = <0x500 0x28>, <0x528 0x28>;
--
--                      #gpio-cells = <2>;
--                      gpio-controller;
--              };
--
--              pinctrl@560 {
--                      compatible = "brcm,bcm4908-pinctrl";
--                      reg = <0x560 0x10>;
--
--                      pins_led_0_a: led_0-a-pins {
--                              function = "led_0";
--                              groups = "led_0_grp_a";
--                      };
--
--                      pins_led_1_a: led_1-a-pins {
--                              function = "led_1";
--                              groups = "led_1_grp_a";
--                      };
--
--                      pins_led_2_a: led_2-a-pins {
--                              function = "led_2";
--                              groups = "led_2_grp_a";
--                      };
--
--                      pins_led_3_a: led_3-a-pins {
--                              function = "led_3";
--                              groups = "led_3_grp_a";
--                      };
--
--                      pins_led_4_a: led_4-a-pins {
--                              function = "led_4";
--                              groups = "led_4_grp_a";
--                      };
--
--                      pins_led_5_a: led_5-a-pins {
--                              function = "led_5";
--                              groups = "led_5_grp_a";
--                      };
--
--                      pins_led_6_a: led_6-a-pins {
--                              function = "led_6";
--                              groups = "led_6_grp_a";
--                      };
--
--                      pins_led_7_a: led_7-a-pins {
--                              function = "led_7";
--                              groups = "led_7_grp_a";
--                      };
--
--                      pins_led_8_a: led_8-a-pins {
--                              function = "led_8";
--                              groups = "led_8_grp_a";
--                      };
--
--                      pins_led_9_a: led_9-a-pins {
--                              function = "led_9";
--                              groups = "led_9_grp_a";
--                      };
--
--                      pins_led_10_a: led_10-a-pins {
--                              function = "led_10";
--                              groups = "led_10_grp_a";
--                      };
--
--                      pins_led_11_a: led_11-a-pins {
--                              function = "led_11";
--                              groups = "led_11_grp_a";
--                      };
--
--                      pins_led_12_a: led_12-a-pins {
--                              function = "led_12";
--                              groups = "led_12_grp_a";
--                      };
--
--                      pins_led_13_a: led_13-a-pins {
--                              function = "led_13";
--                              groups = "led_13_grp_a";
--                      };
--
--                      pins_led_14_a: led_14-a-pins {
--                              function = "led_14";
--                              groups = "led_14_grp_a";
--                      };
--
--                      pins_led_15_a: led_15-a-pins {
--                              function = "led_15";
--                              groups = "led_15_grp_a";
--                      };
--
--                      pins_led_16_a: led_16-a-pins {
--                              function = "led_16";
--                              groups = "led_16_grp_a";
--                      };
--
--                      pins_led_17_a: led_17-a-pins {
--                              function = "led_17";
--                              groups = "led_17_grp_a";
--                      };
--
--                      pins_led_18_a: led_18-a-pins {
--                              function = "led_18";
--                              groups = "led_18_grp_a";
--                      };
--
--                      pins_led_19_a: led_19-a-pins {
--                              function = "led_19";
--                              groups = "led_19_grp_a";
--                      };
--
--                      pins_led_20_a: led_20-a-pins {
--                              function = "led_20";
--                              groups = "led_20_grp_a";
--                      };
--
--                      pins_led_21_a: led_21-a-pins {
--                              function = "led_21";
--                              groups = "led_21_grp_a";
--                      };
--
--                      pins_led_22_a: led_22-a-pins {
--                              function = "led_22";
--                              groups = "led_22_grp_a";
--                      };
--
--                      pins_led_23_a: led_23-a-pins {
--                              function = "led_23";
--                              groups = "led_23_grp_a";
--                      };
--
--                      pins_led_24_a: led_24-a-pins {
--                              function = "led_24";
--                              groups = "led_24_grp_a";
--                      };
--
--                      pins_led_25_a: led_25-a-pins {
--                              function = "led_25";
--                              groups = "led_25_grp_a";
--                      };
--
--                      pins_led_26_a: led_26-a-pins {
--                              function = "led_26";
--                              groups = "led_26_grp_a";
--                      };
--
--                      pins_led_27_a: led_27-a-pins {
--                              function = "led_27";
--                              groups = "led_27_grp_a";
--                      };
--
--                      pins_led_28_a: led_28-a-pins {
--                              function = "led_28";
--                              groups = "led_28_grp_a";
--                      };
--
--                      pins_led_29_a: led_29-a-pins {
--                              function = "led_29";
--                              groups = "led_29_grp_a";
--                      };
--
--                      pins_led_30_a: led_30-a-pins {
--                              function = "led_30";
--                              groups = "led_30_grp_a";
--                      };
--
--                      pins_led_31_a: led_31-a-pins {
--                              function = "led_31";
--                              groups = "led_31_grp_a";
--                      };
--
--                      pins_hs_uart: hs_uart-pins {
--                              function = "hs_uart";
--                              groups = "hs_uart_grp";
--                      };
--
--                      pins_i2c_a: i2c-a-pins {
--                              function = "i2c";
--                              groups = "i2c_grp_a";
--                      };
--
--                      pins_i2c_b: i2c-b-pins {
--                              function = "i2c";
--                              groups = "i2c_grp_b";
--                      };
--
--                      pins_i2s: i2s-pins {
--                              function = "i2s";
--                              groups = "i2s_grp";
--                      };
--
--                      pins_nand_ctrl: nand_ctrl-pins {
--                              function = "nand_ctrl";
--                              groups = "nand_ctrl_grp";
--                      };
--
--                      pins_nand_data: nand_data-pins {
--                              function = "nand_data";
--                              groups = "nand_data_grp";
--                      };
--
--                      pins_emmc_ctrl: emmc_ctrl-pins {
--                              function = "emmc_ctrl";
--                              groups = "emmc_ctrl_grp";
--                      };
--
--                      pins_usb0_pwr: usb0_pwr-pins {
--                              function = "usb0_pwr";
--                              groups = "usb0_pwr_grp";
--                      };
--
--                      pins_usb1_pwr: usb1_pwr-pins {
--                              function = "usb1_pwr";
--                              groups = "usb1_pwr_grp";
--                      };
--              };
--
--              uart0: serial@640 {
--                      compatible = "brcm,bcm6345-uart";
--                      reg = <0x640 0x18>;
--                      interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
--                      clocks = <&periph_clk>;
--                      clock-names = "refclk";
--                      status = "okay";
--              };
--
--              leds: leds@800 {
--                      compatible = "brcm,bcm4908-leds", "brcm,bcm63138-leds";
--                      reg = <0x800 0xdc>;
--
--                      #address-cells = <1>;
--                      #size-cells = <0>;
--              };
--
--              nand-controller@1800 {
--                      #address-cells = <1>;
--                      #size-cells = <0>;
--                      compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand";
--                      reg = <0x1800 0x600>, <0x2000 0x10>;
--                      reg-names = "nand", "nand-int-base";
--                      interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
--                      interrupt-names = "nand";
--                      status = "okay";
--
--                      nandcs: nand@0 {
--                              compatible = "brcm,nandcs";
--                              reg = <0>;
--                      };
--              };
--
--              i2c@2100 {
--                      compatible = "brcm,brcmper-i2c";
--                      reg = <0x2100 0x58>;
--                      clock-frequency = <97500>;
--                      pinctrl-names = "default";
--                      pinctrl-0 = <&pins_i2c_a>;
--                      status = "disabled";
--              };
--
--              misc@2600 {
--                      compatible = "brcm,misc", "simple-mfd";
--                      reg = <0x2600 0xe4>;
--
--                      #address-cells = <1>;
--                      #size-cells = <1>;
--                      ranges = <0x00 0x2600 0xe4>;
--
--                      reset-controller@2644 {
--                              compatible = "brcm,bcm4908-misc-pcie-reset";
--                              reg = <0x44 0x04>;
--                              #reset-cells = <1>;
--                      };
--              };
--      };
--
--      reboot {
--              compatible = "syscon-reboot";
--              regmap = <&twd>;
--              offset = <0x34>;
--              mask = <1>;
--      };
--};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-netgear-r8000p.dts
-@@ -0,0 +1,157 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+#include <dt-bindings/gpio/gpio.h>
-+#include <dt-bindings/input/input.h>
-+#include <dt-bindings/leds/common.h>
-+
-+#include "bcm4906.dtsi"
-+
-+/ {
-+      compatible = "netgear,r8000p", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
-+      model = "Netgear R8000P";
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x00 0x00 0x00 0x20000000>;
-+      };
-+
-+      leds {
-+              compatible = "gpio-leds";
-+
-+              led-power-white {
-+                      function = LED_FUNCTION_POWER;
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-power-amber {
-+                      function = LED_FUNCTION_POWER;
-+                      color = <LED_COLOR_ID_AMBER>;
-+                      gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-wps {
-+                      function = LED_FUNCTION_WPS;
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-2ghz {
-+                      function = "2ghz";
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-5ghz-1 {
-+                      function = "5ghz-1";
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-5ghz-2 {
-+                      function = "5ghz-2";
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-usb2 {
-+                      function = "usb2";
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-usb3 {
-+                      function = "usb3";
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-wifi {
-+                      function = "wifi";
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 56 GPIO_ACTIVE_LOW>;
-+              };
-+      };
-+};
-+
-+&enet {
-+      nvmem-cells = <&base_mac_addr>;
-+      nvmem-cell-names = "mac-address";
-+};
-+
-+&usb_phy {
-+      brcm,ioc = <1>;
-+      status = "okay";
-+};
-+
-+&ehci {
-+      status = "okay";
-+};
-+
-+&ohci {
-+      status = "okay";
-+};
-+
-+&xhci {
-+      status = "okay";
-+};
-+
-+&ports {
-+      port@0 {
-+              label = "lan4";
-+      };
-+
-+      port@1 {
-+              label = "lan3";
-+      };
-+
-+      port@2 {
-+              label = "lan2";
-+      };
-+
-+      port@3 {
-+              label = "lan1";
-+      };
-+
-+      port@7 {
-+              reg = <7>;
-+              phy-mode = "internal";
-+              phy-handle = <&phy12>;
-+              label = "wan";
-+      };
-+};
-+
-+&nandcs {
-+      nand-ecc-strength = <4>;
-+      nand-ecc-step-size = <512>;
-+      nand-on-flash-bbt;
-+
-+      #address-cells = <1>;
-+      #size-cells = <0>;
-+
-+      partitions {
-+              compatible = "fixed-partitions";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+
-+              partition@0 {
-+                      compatible = "nvmem-cells";
-+                      label = "cferom";
-+                      reg = <0x0 0x100000>;
-+
-+                      #address-cells = <1>;
-+                      #size-cells = <1>;
-+                      ranges = <0 0x0 0x100000>;
-+
-+                      base_mac_addr: mac@106a0 {
-+                              reg = <0x106a0 0x6>;
-+                      };
-+              };
-+
-+              partition@100000 {
-+                      compatible = "brcm,bcm4908-firmware";
-+                      label = "firmware";
-+                      reg = <0x100000 0x4400000>;
-+              };
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906-tplink-archer-c2300-v1.dts
-@@ -0,0 +1,182 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+#include <dt-bindings/gpio/gpio.h>
-+#include <dt-bindings/input/input.h>
-+#include <dt-bindings/leds/common.h>
-+
-+#include "bcm4906.dtsi"
-+
-+/ {
-+      compatible = "tplink,archer-c2300-v1", "brcm,bcm4906", "brcm,bcm4908", "brcm,bcmbca";
-+      model = "TP-Link Archer C2300 V1";
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x00 0x00 0x00 0x20000000>;
-+      };
-+
-+      leds {
-+              compatible = "gpio-leds";
-+
-+              led-power {
-+                      function = LED_FUNCTION_POWER;
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-2ghz {
-+                      function = "2ghz";
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-5ghz {
-+                      function = "5ghz";
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-wan-amber {
-+                      function = LED_FUNCTION_WAN;
-+                      color = <LED_COLOR_ID_AMBER>;
-+                      gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
-+              };
-+
-+              led-wan-blue {
-+                      function = LED_FUNCTION_WAN;
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-lan {
-+                      function = LED_FUNCTION_LAN;
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-wps {
-+                      function = LED_FUNCTION_WPS;
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-usb2 {
-+                      function = "usb2";
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-usb3 {
-+                      function = "usbd3";
-+                      color = <LED_COLOR_ID_BLUE>;
-+                      gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              led-brightness {
-+                      function = LED_FUNCTION_BACKLIGHT;
-+                      color = <LED_COLOR_ID_WHITE>;
-+                      gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
-+              };
-+      };
-+
-+      gpio-keys-polled {
-+              compatible = "gpio-keys-polled";
-+              poll-interval = <100>;
-+
-+              key-brightness {
-+                      label = "LEDs";
-+                      linux,code = <KEY_BRIGHTNESS_ZERO>;
-+                      gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              key-wps {
-+                      label = "WPS";
-+                      linux,code = <KEY_WPS_BUTTON>;
-+                      gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              key-wifi {
-+                      label = "WiFi";
-+                      linux,code = <KEY_RFKILL>;
-+                      gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              key-restart {
-+                      label = "Reset";
-+                      linux,code = <KEY_RESTART>;
-+                      gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
-+              };
-+      };
-+};
-+
-+&usb_phy {
-+      brcm,ioc = <1>;
-+      status = "okay";
-+};
-+
-+&ehci {
-+      status = "okay";
-+};
-+
-+&ohci {
-+      status = "okay";
-+};
-+
-+&xhci {
-+      status = "okay";
-+};
-+
-+&ports {
-+      port@0 {
-+              label = "lan4";
-+      };
-+
-+      port@1 {
-+              label = "lan3";
-+      };
-+
-+      port@2 {
-+              label = "lan2";
-+      };
-+
-+      port@3 {
-+              label = "lan1";
-+      };
-+
-+      port@7 {
-+              reg = <7>;
-+              phy-mode = "internal";
-+              phy-handle = <&phy12>;
-+              label = "wan";
-+      };
-+};
-+
-+&nandcs {
-+      nand-ecc-strength = <4>;
-+      nand-ecc-step-size = <512>;
-+      nand-on-flash-bbt;
-+
-+      #address-cells = <1>;
-+      #size-cells = <0>;
-+
-+      partitions {
-+              compatible = "brcm,bcm4908-partitions";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+
-+              partition@0 {
-+                      label = "cferom";
-+                      reg = <0x0 0x100000>;
-+              };
-+
-+              partition@100000 {
-+                      compatible = "brcm,bcm4908-firmware";
-+                      reg = <0x100000 0x3900000>;
-+              };
-+
-+              partition@5800000 {
-+                      compatible = "brcm,bcm4908-firmware";
-+                      reg = <0x3a00000 0x3900000>;
-+              };
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4906.dtsi
-@@ -0,0 +1,34 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+#include "bcm4908.dtsi"
-+
-+/ {
-+      cpus {
-+              /delete-node/ cpu@2;
-+
-+              /delete-node/ cpu@3;
-+      };
-+
-+      timer {
-+              compatible = "arm,armv8-timer";
-+              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
-+      };
-+
-+      timer {
-+              compatible = "arm,armv8-timer";
-+              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
-+      };
-+
-+      pmu {
-+              compatible = "arm,cortex-a53-pmu";
-+              interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-+                           <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
-+              interrupt-affinity = <&cpu0>, <&cpu1>;
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts
-@@ -0,0 +1,207 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+#include <dt-bindings/gpio/gpio.h>
-+#include <dt-bindings/input/input.h>
-+#include <dt-bindings/leds/common.h>
-+
-+#include "bcm4908.dtsi"
-+
-+/ {
-+      compatible = "asus,gt-ac5300", "brcm,bcm4908", "brcm,bcmbca";
-+      model = "Asus GT-AC5300";
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x00 0x00 0x00 0x40000000>;
-+      };
-+
-+      gpio-keys-polled {
-+              compatible = "gpio-keys-polled";
-+              poll-interval = <100>;
-+
-+              key-wifi {
-+                      label = "WiFi";
-+                      linux,code = <KEY_RFKILL>;
-+                      gpios = <&gpio0 28 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              key-wps {
-+                      label = "WPS";
-+                      linux,code = <KEY_WPS_BUTTON>;
-+                      gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              key-restart {
-+                      label = "Reset";
-+                      linux,code = <KEY_RESTART>;
-+                      gpios = <&gpio0 30 GPIO_ACTIVE_LOW>;
-+              };
-+
-+              key-brightness {
-+                      label = "LEDs";
-+                      linux,code = <KEY_BRIGHTNESS_ZERO>;
-+                      gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
-+              };
-+      };
-+};
-+
-+&enet {
-+      nvmem-cells = <&base_mac_addr>;
-+      nvmem-cell-names = "mac-address";
-+};
-+
-+&usb_phy {
-+      brcm,ioc = <1>;
-+      status = "okay";
-+};
-+
-+&ehci {
-+      status = "okay";
-+};
-+
-+&ohci {
-+      status = "okay";
-+};
-+
-+&xhci {
-+      status = "okay";
-+};
-+
-+&ports {
-+      port@0 {
-+              label = "lan2";
-+      };
-+
-+      port@1 {
-+              label = "lan1";
-+      };
-+
-+      port@2 {
-+              label = "lan6";
-+      };
-+
-+      port@3 {
-+              label = "lan5";
-+      };
-+
-+      /* External BCM53134S switch */
-+      port@7 {
-+              label = "sw";
-+              reg = <7>;
-+              phy-mode = "rgmii";
-+
-+              fixed-link {
-+                      speed = <1000>;
-+                      full-duplex;
-+              };
-+      };
-+};
-+
-+&mdio {
-+      /* lan8 */
-+      ethernet-phy@0 {
-+              reg = <0>;
-+      };
-+
-+      /* lan7 */
-+      ethernet-phy@1 {
-+              reg = <1>;
-+      };
-+
-+      /* lan4 */
-+      ethernet-phy@2 {
-+              reg = <2>;
-+      };
-+
-+      /* lan3 */
-+      ethernet-phy@3 {
-+              reg = <3>;
-+      };
-+};
-+
-+&leds {
-+      led-power@11 {
-+              reg = <0x11>;
-+              function = LED_FUNCTION_POWER;
-+              color = <LED_COLOR_ID_WHITE>;
-+              default-state = "on";
-+              active-low;
-+              pinctrl-names = "default";
-+              pinctrl-0 = <&pins_led_17_a>;
-+      };
-+
-+      led-wan-red@12 {
-+              reg = <0x12>;
-+              function = LED_FUNCTION_WAN;
-+              color = <LED_COLOR_ID_RED>;
-+              active-low;
-+              pinctrl-names = "default";
-+              pinctrl-0 = <&pins_led_18_a>;
-+      };
-+
-+      led-wps@14 {
-+              reg = <0x14>;
-+              function = LED_FUNCTION_WPS;
-+              color = <LED_COLOR_ID_WHITE>;
-+              active-low;
-+              pinctrl-names = "default";
-+              pinctrl-0 = <&pins_led_20_a>;
-+      };
-+
-+      led-wan-white@15 {
-+              reg = <0x15>;
-+              function = LED_FUNCTION_WAN;
-+              color = <LED_COLOR_ID_WHITE>;
-+              active-low;
-+              pinctrl-names = "default";
-+              pinctrl-0 = <&pins_led_21_a>;
-+      };
-+
-+      led-lan@19 {
-+              reg = <0x19>;
-+              function = LED_FUNCTION_LAN;
-+              color = <LED_COLOR_ID_WHITE>;
-+              pinctrl-names = "default";
-+              pinctrl-0 = <&pins_led_25_a>;
-+      };
-+};
-+
-+&nandcs {
-+      nand-ecc-strength = <4>;
-+      nand-ecc-step-size = <512>;
-+      nand-on-flash-bbt;
-+      brcm,nand-has-wp;
-+
-+      #address-cells = <1>;
-+      #size-cells = <0>;
-+
-+      partitions {
-+              compatible = "brcm,bcm4908-partitions";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+
-+              partition@0 {
-+                      compatible = "nvmem-cells";
-+                      label = "cferom";
-+                      reg = <0x0 0x100000>;
-+
-+                      #address-cells = <1>;
-+                      #size-cells = <1>;
-+                      ranges = <0 0x0 0x100000>;
-+
-+                      base_mac_addr: mac@106a0 {
-+                              reg = <0x106a0 0x6>;
-+                      };
-+              };
-+
-+              partition@100000 {
-+                      compatible = "brcm,bcm4908-firmware";
-+                      reg = <0x100000 0x5700000>;
-+              };
-+
-+              partition@5800000 {
-+                      compatible = "brcm,bcm4908-firmware";
-+                      reg = <0x5800000 0x5700000>;
-+              };
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908-netgear-raxe500.dts
-@@ -0,0 +1,50 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+#include "bcm4908.dtsi"
-+
-+/ {
-+      compatible = "netgear,raxe500", "brcm,bcm4908", "brcm,bcmbca";
-+      model = "Netgear RAXE500";
-+
-+      memory@0 {
-+              device_type = "memory";
-+              reg = <0x00 0x00 0x00 0x40000000>;
-+      };
-+};
-+
-+&ehci {
-+      status = "okay";
-+};
-+
-+&ohci {
-+      status = "okay";
-+};
-+
-+&xhci {
-+      status = "okay";
-+};
-+
-+&ports {
-+      port@0 {
-+              label = "lan4";
-+      };
-+
-+      port@1 {
-+              label = "lan3";
-+      };
-+
-+      port@2 {
-+              label = "lan2";
-+      };
-+
-+      port@3 {
-+              label = "lan1";
-+      };
-+
-+      port@7 {
-+              reg = <7>;
-+              phy-mode = "internal";
-+              phy-handle = <&phy12>;
-+              label = "wan";
-+      };
-+};
---- /dev/null
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
-@@ -0,0 +1,575 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-+
-+#include <dt-bindings/interrupt-controller/irq.h>
-+#include <dt-bindings/interrupt-controller/arm-gic.h>
-+#include <dt-bindings/phy/phy.h>
-+#include <dt-bindings/soc/bcm-pmb.h>
-+
-+/dts-v1/;
-+
-+/ {
-+      interrupt-parent = <&gic>;
-+
-+      #address-cells = <2>;
-+      #size-cells = <2>;
-+
-+      aliases {
-+              serial0 = &uart0;
-+      };
-+
-+      chosen {
-+              stdout-path = "serial0:115200n8";
-+      };
-+
-+      cpus {
-+              #address-cells = <1>;
-+              #size-cells = <0>;
-+
-+              cpu0: cpu@0 {
-+                      device_type = "cpu";
-+                      compatible = "brcm,brahma-b53";
-+                      reg = <0x0>;
-+                      enable-method = "spin-table";
-+                      cpu-release-addr = <0x0 0xfff8>;
-+                      next-level-cache = <&l2>;
-+              };
-+
-+              cpu1: cpu@1 {
-+                      device_type = "cpu";
-+                      compatible = "brcm,brahma-b53";
-+                      reg = <0x1>;
-+                      enable-method = "spin-table";
-+                      cpu-release-addr = <0x0 0xfff8>;
-+                      next-level-cache = <&l2>;
-+              };
-+
-+              cpu2: cpu@2 {
-+                      device_type = "cpu";
-+                      compatible = "brcm,brahma-b53";
-+                      reg = <0x2>;
-+                      enable-method = "spin-table";
-+                      cpu-release-addr = <0x0 0xfff8>;
-+                      next-level-cache = <&l2>;
-+              };
-+
-+              cpu3: cpu@3 {
-+                      device_type = "cpu";
-+                      compatible = "brcm,brahma-b53";
-+                      reg = <0x3>;
-+                      enable-method = "spin-table";
-+                      cpu-release-addr = <0x0 0xfff8>;
-+                      next-level-cache = <&l2>;
-+              };
-+
-+              l2: l2-cache0 {
-+                      compatible = "cache";
-+              };
-+      };
-+
-+      axi@81000000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x00 0x00 0x81000000 0x4000>;
-+
-+              gic: interrupt-controller@1000 {
-+                      compatible = "arm,gic-400";
-+                      #interrupt-cells = <3>;
-+                      #address-cells = <0>;
-+                      interrupt-controller;
-+                      reg = <0x1000 0x1000>,
-+                            <0x2000 0x2000>;
-+              };
-+      };
-+
-+      timer {
-+              compatible = "arm,armv8-timer";
-+              interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
-+                           <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
-+      };
-+
-+      pmu {
-+              compatible = "arm,cortex-a53-pmu";
-+              interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-+                           <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
-+                           <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
-+                           <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
-+              interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
-+      };
-+
-+      clocks {
-+              periph_clk: periph_clk {
-+                      compatible = "fixed-clock";
-+                      #clock-cells = <0>;
-+                      clock-frequency = <50000000>;
-+                      clock-output-names = "periph";
-+              };
-+      };
-+
-+      soc {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x00 0x00 0x80000000 0x281000>;
-+
-+              enet: ethernet@2000 {
-+                      compatible = "brcm,bcm4908-enet";
-+                      reg = <0x2000 0x1000>;
-+
-+                      interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
-+                                   <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
-+                      interrupt-names = "rx", "tx";
-+              };
-+
-+              usb_phy: usb-phy@c200 {
-+                      compatible = "brcm,bcm4908-usb-phy";
-+                      reg = <0xc200 0x100>;
-+                      reg-names = "ctrl";
-+                      power-domains = <&pmb BCM_PMB_HOST_USB>;
-+                      dr_mode = "host";
-+                      brcm,has-xhci;
-+                      brcm,has-eohci;
-+                      #phy-cells = <1>;
-+                      status = "disabled";
-+              };
-+
-+              ehci: usb@c300 {
-+                      compatible = "generic-ehci";
-+                      reg = <0xc300 0x100>;
-+                      interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
-+                      phys = <&usb_phy PHY_TYPE_USB2>;
-+                      status = "disabled";
-+              };
-+
-+              ohci: usb@c400 {
-+                      compatible = "generic-ohci";
-+                      reg = <0xc400 0x100>;
-+                      interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
-+                      phys = <&usb_phy PHY_TYPE_USB2>;
-+                      status = "disabled";
-+              };
-+
-+              xhci: usb@d000 {
-+                      compatible = "generic-xhci";
-+                      reg = <0xd000 0x8c8>;
-+                      interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
-+                      phys = <&usb_phy PHY_TYPE_USB3>;
-+                      status = "disabled";
-+              };
-+
-+              bus@80000 {
-+                      compatible = "simple-bus";
-+                      #size-cells = <1>;
-+                      #address-cells = <1>;
-+                      ranges = <0 0x80000 0x50000>;
-+
-+                      ethernet-switch@0 {
-+                              compatible = "brcm,bcm4908-switch";
-+                              reg = <0x0 0x40000>,
-+                                    <0x40000 0x110>,
-+                                    <0x40340 0x30>,
-+                                    <0x40380 0x30>,
-+                                    <0x40600 0x34>,
-+                                    <0x40800 0x208>;
-+                              reg-names = "core", "reg", "intrl2_0",
-+                                          "intrl2_1", "fcb", "acb";
-+                              interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
-+                                           <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
-+                              brcm,num-gphy = <5>;
-+                              brcm,num-rgmii-ports = <2>;
-+
-+                              #address-cells = <1>;
-+                              #size-cells = <0>;
-+
-+                              ports: ports {
-+                                      #address-cells = <1>;
-+                                      #size-cells = <0>;
-+
-+                                      port@0 {
-+                                              reg = <0>;
-+                                              phy-mode = "internal";
-+                                              phy-handle = <&phy8>;
-+                                      };
-+
-+                                      port@1 {
-+                                              reg = <1>;
-+                                              phy-mode = "internal";
-+                                              phy-handle = <&phy9>;
-+                                      };
-+
-+                                      port@2 {
-+                                              reg = <2>;
-+                                              phy-mode = "internal";
-+                                              phy-handle = <&phy10>;
-+                                      };
-+
-+                                      port@3 {
-+                                              reg = <3>;
-+                                              phy-mode = "internal";
-+                                              phy-handle = <&phy11>;
-+                                      };
-+
-+                                      port@8 {
-+                                              reg = <8>;
-+                                              phy-mode = "internal";
-+                                              ethernet = <&enet>;
-+
-+                                              fixed-link {
-+                                                      speed = <1000>;
-+                                                      full-duplex;
-+                                              };
-+                                      };
-+                              };
-+                      };
-+
-+                      mdio: mdio@405c0 {
-+                              compatible = "brcm,unimac-mdio";
-+                              reg = <0x405c0 0x8>;
-+                              reg-names = "mdio";
-+                              #size-cells = <0>;
-+                              #address-cells = <1>;
-+
-+                              phy8: ethernet-phy@8 {
-+                                      reg = <8>;
-+                              };
-+
-+                              phy9: ethernet-phy@9 {
-+                                      reg = <9>;
-+                              };
-+
-+                              phy10: ethernet-phy@a {
-+                                      reg = <10>;
-+                              };
-+
-+                              phy11: ethernet-phy@b {
-+                                      reg = <11>;
-+                              };
-+
-+                              phy12: ethernet-phy@c {
-+                                      reg = <12>;
-+                              };
-+                      };
-+              };
-+
-+              procmon: syscon@280000 {
-+                      compatible = "simple-bus";
-+                      reg = <0x280000 0x1000>;
-+                      ranges;
-+
-+                      #address-cells = <1>;
-+                      #size-cells = <1>;
-+
-+                      pmb: power-controller@2800c0 {
-+                              compatible = "brcm,bcm4908-pmb";
-+                              reg = <0x2800c0 0x40>;
-+                              #power-domain-cells = <1>;
-+                      };
-+              };
-+      };
-+
-+      bus@ff800000 {
-+              compatible = "simple-bus";
-+              #address-cells = <1>;
-+              #size-cells = <1>;
-+              ranges = <0x00 0x00 0xff800000 0x3000>;
-+
-+              twd: timer-mfd@400 {
-+                      compatible = "brcm,bcm4908-twd", "simple-mfd", "syscon";
-+                      reg = <0x400 0x4c>;
-+                      ranges = <0x0 0x400 0x4c>;
-+
-+                      #address-cells = <1>;
-+                      #size-cells = <1>;
-+
-+                      watchdog@28 {
-+                              compatible = "brcm,bcm6345-wdt";
-+                              reg = <0x28 0x8>;
-+                      };
-+              };
-+
-+              gpio0: gpio-controller@500 {
-+                      compatible = "brcm,bcm6345-gpio";
-+                      reg-names = "dirout", "dat";
-+                      reg = <0x500 0x28>, <0x528 0x28>;
-+
-+                      #gpio-cells = <2>;
-+                      gpio-controller;
-+              };
-+
-+              pinctrl@560 {
-+                      compatible = "brcm,bcm4908-pinctrl";
-+                      reg = <0x560 0x10>;
-+
-+                      pins_led_0_a: led_0-a-pins {
-+                              function = "led_0";
-+                              groups = "led_0_grp_a";
-+                      };
-+
-+                      pins_led_1_a: led_1-a-pins {
-+                              function = "led_1";
-+                              groups = "led_1_grp_a";
-+                      };
-+
-+                      pins_led_2_a: led_2-a-pins {
-+                              function = "led_2";
-+                              groups = "led_2_grp_a";
-+                      };
-+
-+                      pins_led_3_a: led_3-a-pins {
-+                              function = "led_3";
-+                              groups = "led_3_grp_a";
-+                      };
-+
-+                      pins_led_4_a: led_4-a-pins {
-+                              function = "led_4";
-+                              groups = "led_4_grp_a";
-+                      };
-+
-+                      pins_led_5_a: led_5-a-pins {
-+                              function = "led_5";
-+                              groups = "led_5_grp_a";
-+                      };
-+
-+                      pins_led_6_a: led_6-a-pins {
-+                              function = "led_6";
-+                              groups = "led_6_grp_a";
-+                      };
-+
-+                      pins_led_7_a: led_7-a-pins {
-+                              function = "led_7";
-+                              groups = "led_7_grp_a";
-+                      };
-+
-+                      pins_led_8_a: led_8-a-pins {
-+                              function = "led_8";
-+                              groups = "led_8_grp_a";
-+                      };
-+
-+                      pins_led_9_a: led_9-a-pins {
-+                              function = "led_9";
-+                              groups = "led_9_grp_a";
-+                      };
-+
-+                      pins_led_10_a: led_10-a-pins {
-+                              function = "led_10";
-+                              groups = "led_10_grp_a";
-+                      };
-+
-+                      pins_led_11_a: led_11-a-pins {
-+                              function = "led_11";
-+                              groups = "led_11_grp_a";
-+                      };
-+
-+                      pins_led_12_a: led_12-a-pins {
-+                              function = "led_12";
-+                              groups = "led_12_grp_a";
-+                      };
-+
-+                      pins_led_13_a: led_13-a-pins {
-+                              function = "led_13";
-+                              groups = "led_13_grp_a";
-+                      };
-+
-+                      pins_led_14_a: led_14-a-pins {
-+                              function = "led_14";
-+                              groups = "led_14_grp_a";
-+                      };
-+
-+                      pins_led_15_a: led_15-a-pins {
-+                              function = "led_15";
-+                              groups = "led_15_grp_a";
-+                      };
-+
-+                      pins_led_16_a: led_16-a-pins {
-+                              function = "led_16";
-+                              groups = "led_16_grp_a";
-+                      };
-+
-+                      pins_led_17_a: led_17-a-pins {
-+                              function = "led_17";
-+                              groups = "led_17_grp_a";
-+                      };
-+
-+                      pins_led_18_a: led_18-a-pins {
-+                              function = "led_18";
-+                              groups = "led_18_grp_a";
-+                      };
-+
-+                      pins_led_19_a: led_19-a-pins {
-+                              function = "led_19";
-+                              groups = "led_19_grp_a";
-+                      };
-+
-+                      pins_led_20_a: led_20-a-pins {
-+                              function = "led_20";
-+                              groups = "led_20_grp_a";
-+                      };
-+
-+                      pins_led_21_a: led_21-a-pins {
-+                              function = "led_21";
-+                              groups = "led_21_grp_a";
-+                      };
-+
-+                      pins_led_22_a: led_22-a-pins {
-+                              function = "led_22";
-+                              groups = "led_22_grp_a";
-+                      };
-+
-+                      pins_led_23_a: led_23-a-pins {
-+                              function = "led_23";
-+                              groups = "led_23_grp_a";
-+                      };
-+
-+                      pins_led_24_a: led_24-a-pins {
-+                              function = "led_24";
-+                              groups = "led_24_grp_a";
-+                      };
-+
-+                      pins_led_25_a: led_25-a-pins {
-+                              function = "led_25";
-+                              groups = "led_25_grp_a";
-+                      };
-+
-+                      pins_led_26_a: led_26-a-pins {
-+                              function = "led_26";
-+                              groups = "led_26_grp_a";
-+                      };
-+
-+                      pins_led_27_a: led_27-a-pins {
-+                              function = "led_27";
-+                              groups = "led_27_grp_a";
-+                      };
-+
-+                      pins_led_28_a: led_28-a-pins {
-+                              function = "led_28";
-+                              groups = "led_28_grp_a";
-+                      };
-+
-+                      pins_led_29_a: led_29-a-pins {
-+                              function = "led_29";
-+                              groups = "led_29_grp_a";
-+                      };
-+
-+                      pins_led_30_a: led_30-a-pins {
-+                              function = "led_30";
-+                              groups = "led_30_grp_a";
-+                      };
-+
-+                      pins_led_31_a: led_31-a-pins {
-+                              function = "led_31";
-+                              groups = "led_31_grp_a";
-+                      };
-+
-+                      pins_hs_uart: hs_uart-pins {
-+                              function = "hs_uart";
-+                              groups = "hs_uart_grp";
-+                      };
-+
-+                      pins_i2c_a: i2c-a-pins {
-+                              function = "i2c";
-+                              groups = "i2c_grp_a";
-+                      };
-+
-+                      pins_i2c_b: i2c-b-pins {
-+                              function = "i2c";
-+                              groups = "i2c_grp_b";
-+                      };
-+
-+                      pins_i2s: i2s-pins {
-+                              function = "i2s";
-+                              groups = "i2s_grp";
-+                      };
-+
-+                      pins_nand_ctrl: nand_ctrl-pins {
-+                              function = "nand_ctrl";
-+                              groups = "nand_ctrl_grp";
-+                      };
-+
-+                      pins_nand_data: nand_data-pins {
-+                              function = "nand_data";
-+                              groups = "nand_data_grp";
-+                      };
-+
-+                      pins_emmc_ctrl: emmc_ctrl-pins {
-+                              function = "emmc_ctrl";
-+                              groups = "emmc_ctrl_grp";
-+                      };
-+
-+                      pins_usb0_pwr: usb0_pwr-pins {
-+                              function = "usb0_pwr";
-+                              groups = "usb0_pwr_grp";
-+                      };
-+
-+                      pins_usb1_pwr: usb1_pwr-pins {
-+                              function = "usb1_pwr";
-+                              groups = "usb1_pwr_grp";
-+                      };
-+              };
-+
-+              uart0: serial@640 {
-+                      compatible = "brcm,bcm6345-uart";
-+                      reg = <0x640 0x18>;
-+                      interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
-+                      clocks = <&periph_clk>;
-+                      clock-names = "refclk";
-+                      status = "okay";
-+              };
-+
-+              leds: leds@800 {
-+                      compatible = "brcm,bcm4908-leds", "brcm,bcm63138-leds";
-+                      reg = <0x800 0xdc>;
-+
-+                      #address-cells = <1>;
-+                      #size-cells = <0>;
-+              };
-+
-+              nand-controller@1800 {
-+                      #address-cells = <1>;
-+                      #size-cells = <0>;
-+                      compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand";
-+                      reg = <0x1800 0x600>, <0x2000 0x10>;
-+                      reg-names = "nand", "nand-int-base";
-+                      interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
-+                      interrupt-names = "nand";
-+                      status = "okay";
-+
-+                      nandcs: nand@0 {
-+                              compatible = "brcm,nandcs";
-+                              reg = <0>;
-+                      };
-+              };
-+
-+              i2c@2100 {
-+                      compatible = "brcm,brcmper-i2c";
-+                      reg = <0x2100 0x58>;
-+                      clock-frequency = <97500>;
-+                      pinctrl-names = "default";
-+                      pinctrl-0 = <&pins_i2c_a>;
-+                      status = "disabled";
-+              };
-+
-+              misc@2600 {
-+                      compatible = "brcm,misc", "simple-mfd";
-+                      reg = <0x2600 0xe4>;
-+
-+                      #address-cells = <1>;
-+                      #size-cells = <1>;
-+                      ranges = <0x00 0x2600 0xe4>;
-+
-+                      reset-controller@2644 {
-+                              compatible = "brcm,bcm4908-misc-pcie-reset";
-+                              reg = <0x44 0x04>;
-+                              #reset-cells = <1>;
-+                      };
-+              };
-+      };
-+
-+      reboot {
-+              compatible = "syscon-reboot";
-+              regmap = <&twd>;
-+              offset = <0x34>;
-+              mask = <1>;
-+      };
-+};
diff --git a/target/linux/bcm4908/patches-5.15/036-v6.4-0002-arm64-dts-broadcom-bcmbca-bcm4908-fix-NAND-interrupt.patch b/target/linux/bcm4908/patches-5.15/036-v6.4-0002-arm64-dts-broadcom-bcmbca-bcm4908-fix-NAND-interrupt.patch
deleted file mode 100644 (file)
index b121200..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-From 5cca02449490e767289bda38db1577e2c375c084 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
-Date: Tue, 28 Feb 2023 15:43:58 +0100
-Subject: [PATCH] arm64: dts: broadcom: bcmbca: bcm4908: fix NAND interrupt
- name
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes:
-arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dtb: nand-controller@1800: interrupt-names:0: 'nand_ctlrdy' was expected
-        From schema: Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml
-arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dtb: nand-controller@1800: Unevaluated properties are not allowed ('interrupt-names' was unexpected)
-        From schema: Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml
-
-Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
-Link: https://lore.kernel.org/all/20230228144400.21689-1-zajec5@gmail.com/
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
-@@ -556,7 +556,7 @@
-                       reg = <0x1800 0x600>, <0x2000 0x10>;
-                       reg-names = "nand", "nand-int-base";
-                       interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
--                      interrupt-names = "nand";
-+                      interrupt-names = "nand_ctlrdy";
-                       status = "okay";
-                       nandcs: nand@0 {
diff --git a/target/linux/bcm4908/patches-5.15/036-v6.4-0004-arm64-dts-broadcom-bcmbca-bcm4908-fix-procmon-nodena.patch b/target/linux/bcm4908/patches-5.15/036-v6.4-0004-arm64-dts-broadcom-bcmbca-bcm4908-fix-procmon-nodena.patch
deleted file mode 100644 (file)
index a469a32..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From f16a8294dd7a02c7ad042cd2e3acc5ea06698dc1 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
-Date: Tue, 28 Feb 2023 15:44:00 +0100
-Subject: [PATCH] arm64: dts: broadcom: bcmbca: bcm4908: fix procmon nodename
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes:
-arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dtb: syscon@280000: $nodename:0: 'syscon@280000' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
-        From schema: schemas/simple-bus.yaml
-
-Signed-off-by: RafaÅ‚ MiÅ‚ecki <rafal@milecki.pl>
-Link: https://lore.kernel.org/all/20230228144400.21689-3-zajec5@gmail.com/
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi
-@@ -260,7 +260,7 @@
-                       };
-               };
--              procmon: syscon@280000 {
-+              procmon: bus@280000 {
-                       compatible = "simple-bus";
-                       reg = <0x280000 0x1000>;
-                       ranges;
index acef46f2b9145d53d69bb600e1bb837099db9ca4..3039eabea502d468a18e686d9229332e8ec03777 100644 (file)
@@ -25,7 +25,7 @@ Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
 
 --- a/drivers/mtd/mtdcore.c
 +++ b/drivers/mtd/mtdcore.c
-@@ -1229,6 +1229,34 @@ int __get_mtd_device(struct mtd_info *mt
+@@ -1236,6 +1236,34 @@ int __get_mtd_device(struct mtd_info *mt
  EXPORT_SYMBOL_GPL(__get_mtd_device);
  
  /**
index 10e61602c87fc53a48188ec7dfb4d07d888ddfba..9f1757caa79793f1dccefe99b4b9e6e1c67ed687 100644 (file)
@@ -31,7 +31,7 @@ Link: https://lore.kernel.org/linux-mtd/20220629125737.14418-2-kernel@kempniu.pl
 
 --- a/drivers/mtd/mtdcore.c
 +++ b/drivers/mtd/mtdcore.c
-@@ -1669,6 +1669,9 @@ int mtd_read_oob(struct mtd_info *mtd, l
+@@ -1676,6 +1676,9 @@ int mtd_read_oob(struct mtd_info *mtd, l
        if (!master->_read_oob && (!master->_read || ops->oobbuf))
                return -EOPNOTSUPP;
  
@@ -41,7 +41,7 @@ Link: https://lore.kernel.org/linux-mtd/20220629125737.14418-2-kernel@kempniu.pl
        if (mtd->flags & MTD_SLC_ON_MLC_EMULATION)
                ret_code = mtd_io_emulated_slc(mtd, from, true, ops);
        else
-@@ -1686,6 +1689,8 @@ int mtd_read_oob(struct mtd_info *mtd, l
+@@ -1693,6 +1696,8 @@ int mtd_read_oob(struct mtd_info *mtd, l
                return ret_code;
        if (mtd->ecc_strength == 0)
                return 0;       /* device lacks ecc */
diff --git a/target/linux/generic/backport-5.15/424-v6.4-0001-mtd-core-provide-unique-name-for-nvmem-device-take-t.patch b/target/linux/generic/backport-5.15/424-v6.4-0001-mtd-core-provide-unique-name-for-nvmem-device-take-t.patch
deleted file mode 100644 (file)
index a453f24..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From 1cd9ceaa5282ff10ea20a7fbadde5a476a1cc99e Mon Sep 17 00:00:00 2001
-From: Michael Walle <michael@walle.cc>
-Date: Wed, 8 Mar 2023 09:20:18 +0100
-Subject: [PATCH] mtd: core: provide unique name for nvmem device, take two
-
-Commit c048b60d39e1 ("mtd: core: provide unique name for nvmem device")
-tries to give the nvmem device a unique name, but fails badly if the mtd
-device doesn't have a "struct device" associated with it, i.e. if
-CONFIG_MTD_PARTITIONED_MASTER is not set. This will result in the name
-"(null)-user-otp", which is not unique. It seems the best we can do is
-to use the compatible name together with a unique identifier added by
-the nvmem subsystem by using NVMEM_DEVID_AUTO.
-
-Fixes: c048b60d39e1 ("mtd: core: provide unique name for nvmem device")
-Cc: stable@vger.kernel.org
-Signed-off-by: Michael Walle <michael@walle.cc>
-Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-Link: https://lore.kernel.org/linux-mtd/20230308082021.870459-1-michael@walle.cc
----
- drivers/mtd/mtdcore.c | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
---- a/drivers/mtd/mtdcore.c
-+++ b/drivers/mtd/mtdcore.c
-@@ -895,8 +895,8 @@ static struct nvmem_device *mtd_otp_nvme
-       /* OTP nvmem will be registered on the physical device */
-       config.dev = mtd->dev.parent;
--      config.name = kasprintf(GFP_KERNEL, "%s-%s", dev_name(&mtd->dev), compatible);
--      config.id = NVMEM_DEVID_NONE;
-+      config.name = compatible;
-+      config.id = NVMEM_DEVID_AUTO;
-       config.owner = THIS_MODULE;
-       config.type = NVMEM_TYPE_OTP;
-       config.root_only = true;
-@@ -912,7 +912,6 @@ static struct nvmem_device *mtd_otp_nvme
-               nvmem = NULL;
-       of_node_put(np);
--      kfree(config.name);
-       return nvmem;
- }
diff --git a/target/linux/generic/backport-5.15/424-v6.4-0002-mtd-core-fix-nvmem-error-reporting.patch b/target/linux/generic/backport-5.15/424-v6.4-0002-mtd-core-fix-nvmem-error-reporting.patch
deleted file mode 100644 (file)
index 501e940..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-From 8bd1d24e6ca3c599dd455b0e1b22f77bab8290eb Mon Sep 17 00:00:00 2001
-From: Michael Walle <michael@walle.cc>
-Date: Wed, 8 Mar 2023 09:20:19 +0100
-Subject: [PATCH] mtd: core: fix nvmem error reporting
-
-The master MTD will only have an associated device if
-CONFIG_MTD_PARTITIONED_MASTER is set, thus we cannot use dev_err() on
-mtd->dev. Instead use the parent device which is the physical flash
-memory.
-
-Fixes: 4b361cfa8624 ("mtd: core: add OTP nvmem provider support")
-Cc: stable@vger.kernel.org
-Signed-off-by: Michael Walle <michael@walle.cc>
-Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-Link: https://lore.kernel.org/linux-mtd/20230308082021.870459-2-michael@walle.cc
----
- drivers/mtd/mtdcore.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
---- a/drivers/mtd/mtdcore.c
-+++ b/drivers/mtd/mtdcore.c
-@@ -946,6 +946,7 @@ static int mtd_nvmem_fact_otp_reg_read(v
- static int mtd_otp_nvmem_add(struct mtd_info *mtd)
- {
-+      struct device *dev = mtd->dev.parent;
-       struct nvmem_device *nvmem;
-       ssize_t size;
-       int err;
-@@ -959,7 +960,7 @@ static int mtd_otp_nvmem_add(struct mtd_
-                       nvmem = mtd_otp_nvmem_register(mtd, "user-otp", size,
-                                                      mtd_nvmem_user_otp_reg_read);
-                       if (IS_ERR(nvmem)) {
--                              dev_err(&mtd->dev, "Failed to register OTP NVMEM device\n");
-+                              dev_err(dev, "Failed to register OTP NVMEM device\n");
-                               return PTR_ERR(nvmem);
-                       }
-                       mtd->otp_user_nvmem = nvmem;
-@@ -977,7 +978,7 @@ static int mtd_otp_nvmem_add(struct mtd_
-                       nvmem = mtd_otp_nvmem_register(mtd, "factory-otp", size,
-                                                      mtd_nvmem_fact_otp_reg_read);
-                       if (IS_ERR(nvmem)) {
--                              dev_err(&mtd->dev, "Failed to register OTP NVMEM device\n");
-+                              dev_err(dev, "Failed to register OTP NVMEM device\n");
-                               err = PTR_ERR(nvmem);
-                               goto err;
-                       }
diff --git a/target/linux/generic/backport-5.15/424-v6.4-0003-mtd-core-fix-error-path-for-nvmem-provider.patch b/target/linux/generic/backport-5.15/424-v6.4-0003-mtd-core-fix-error-path-for-nvmem-provider.patch
deleted file mode 100644 (file)
index 099f0d2..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-From e0489f6e221f5ddee6cb3bd51b992b790c5fa4b9 Mon Sep 17 00:00:00 2001
-From: Michael Walle <michael@walle.cc>
-Date: Wed, 8 Mar 2023 09:20:20 +0100
-Subject: [PATCH] mtd: core: fix error path for nvmem provider
-
-If mtd_otp_nvmem_add() fails, the partitions won't be removed
-because there is simply no call to del_mtd_partitions().
-Unfortunately, add_mtd_partitions() will print all partitions to
-the kernel console. If mtd_otp_nvmem_add() returns -EPROBE_DEFER
-this would print the partitions multiple times to the kernel
-console. Instead move mtd_otp_nvmem_add() to the beginning of the
-function.
-
-Fixes: 4b361cfa8624 ("mtd: core: add OTP nvmem provider support")
-Cc: stable@vger.kernel.org
-Signed-off-by: Michael Walle <michael@walle.cc>
-Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-Link: https://lore.kernel.org/linux-mtd/20230308082021.870459-3-michael@walle.cc
----
- drivers/mtd/mtdcore.c | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
---- a/drivers/mtd/mtdcore.c
-+++ b/drivers/mtd/mtdcore.c
-@@ -1031,10 +1031,14 @@ int mtd_device_parse_register(struct mtd
-       mtd_set_dev_defaults(mtd);
-+      ret = mtd_otp_nvmem_add(mtd);
-+      if (ret)
-+              goto out;
-+
-       if (IS_ENABLED(CONFIG_MTD_PARTITIONED_MASTER)) {
-               ret = add_mtd_device(mtd);
-               if (ret)
--                      return ret;
-+                      goto out;
-       }
-       /* Prefer parsed partitions over driver-provided fallback */
-@@ -1069,9 +1073,12 @@ int mtd_device_parse_register(struct mtd
-               register_reboot_notifier(&mtd->reboot_notifier);
-       }
--      ret = mtd_otp_nvmem_add(mtd);
--
- out:
-+      if (ret) {
-+              nvmem_unregister(mtd->otp_user_nvmem);
-+              nvmem_unregister(mtd->otp_factory_nvmem);
-+      }
-+
-       if (ret && device_is_registered(&mtd->dev))
-               del_mtd_device(mtd);
index ede1cc3a8d014f52f54e0e9c3c312ea67d505392..919da4d1ef198fcccad39d8510413a2fa896ed31 100644 (file)
@@ -901,7 +901,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  static void axienet_mac_pcs_get_state(struct phylink_config *config,
 --- a/drivers/net/pcs/pcs-xpcs.c
 +++ b/drivers/net/pcs/pcs-xpcs.c
-@@ -646,7 +646,7 @@ void xpcs_validate(struct dw_xpcs *xpcs,
+@@ -637,7 +637,7 @@ void xpcs_validate(struct dw_xpcs *xpcs,
        if (state->interface == PHY_INTERFACE_MODE_NA)
                return;
  
index 7155109cd97444897e3aa7390c8cf4fca10148de..9b9ab04af6cb4320d3b76df116178123890d7aae 100644 (file)
@@ -71,7 +71,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        ret = stmmac_hw_setup(dev, true);
        if (ret < 0) {
                netdev_err(priv->dev, "%s: Hw setup failed\n", __func__);
-@@ -6424,6 +6417,7 @@ void stmmac_enable_rx_queue(struct stmma
+@@ -6430,6 +6423,7 @@ void stmmac_enable_rx_queue(struct stmma
                return;
        }
  
@@ -79,7 +79,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        stmmac_clear_rx_descriptors(priv, queue);
  
        stmmac_init_rx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
-@@ -6485,6 +6479,7 @@ void stmmac_enable_tx_queue(struct stmma
+@@ -6491,6 +6485,7 @@ void stmmac_enable_tx_queue(struct stmma
                return;
        }
  
@@ -87,7 +87,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        stmmac_clear_tx_descriptors(priv, queue);
  
        stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
-@@ -7411,6 +7406,25 @@ int stmmac_suspend(struct device *dev)
+@@ -7417,6 +7412,25 @@ int stmmac_suspend(struct device *dev)
  }
  EXPORT_SYMBOL_GPL(stmmac_suspend);
  
@@ -113,7 +113,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  /**
   * stmmac_reset_queues_param - reset queue parameters
   * @priv: device pointer
-@@ -7421,22 +7435,11 @@ static void stmmac_reset_queues_param(st
+@@ -7427,22 +7441,11 @@ static void stmmac_reset_queues_param(st
        u32 tx_cnt = priv->plat->tx_queues_to_use;
        u32 queue;
  
index dd8316c985c367d2ac9ffd96e956930de8b114dd..d4c2567a1fdfc4b3cfbf320025d3545635393fb5 100644 (file)
@@ -1116,7 +1116,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
                }
        }
  
-@@ -6398,7 +6402,7 @@ void stmmac_disable_rx_queue(struct stmm
+@@ -6404,7 +6408,7 @@ void stmmac_disable_rx_queue(struct stmm
  
  void stmmac_enable_rx_queue(struct stmmac_priv *priv, u32 queue)
  {
@@ -1125,7 +1125,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        struct stmmac_channel *ch = &priv->channel[queue];
        unsigned long flags;
        u32 buf_size;
-@@ -6435,7 +6439,7 @@ void stmmac_enable_rx_queue(struct stmma
+@@ -6441,7 +6445,7 @@ void stmmac_enable_rx_queue(struct stmma
                                      rx_q->queue_index);
        } else {
                stmmac_set_dma_bfsize(priv, priv->ioaddr,
@@ -1134,7 +1134,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
                                      rx_q->queue_index);
        }
  
-@@ -6461,7 +6465,7 @@ void stmmac_disable_tx_queue(struct stmm
+@@ -6467,7 +6471,7 @@ void stmmac_disable_tx_queue(struct stmm
  
  void stmmac_enable_tx_queue(struct stmmac_priv *priv, u32 queue)
  {
@@ -1143,7 +1143,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        struct stmmac_channel *ch = &priv->channel[queue];
        unsigned long flags;
        int ret;
-@@ -6511,7 +6515,7 @@ void stmmac_xdp_release(struct net_devic
+@@ -6517,7 +6521,7 @@ void stmmac_xdp_release(struct net_devic
        stmmac_disable_all_queues(priv);
  
        for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
@@ -1152,7 +1152,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        /* Free the IRQ lines */
        stmmac_free_irq(dev, REQ_IRQ_ERR_ALL, 0);
-@@ -6570,7 +6574,7 @@ int stmmac_xdp_open(struct net_device *d
+@@ -6576,7 +6580,7 @@ int stmmac_xdp_open(struct net_device *d
  
        /* DMA RX Channel Configuration */
        for (chan = 0; chan < rx_cnt; chan++) {
@@ -1161,7 +1161,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
                stmmac_init_rx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
                                    rx_q->dma_rx_phy, chan);
-@@ -6588,7 +6592,7 @@ int stmmac_xdp_open(struct net_device *d
+@@ -6594,7 +6598,7 @@ int stmmac_xdp_open(struct net_device *d
                                              rx_q->queue_index);
                } else {
                        stmmac_set_dma_bfsize(priv, priv->ioaddr,
@@ -1170,7 +1170,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
                                              rx_q->queue_index);
                }
  
-@@ -6597,7 +6601,7 @@ int stmmac_xdp_open(struct net_device *d
+@@ -6603,7 +6607,7 @@ int stmmac_xdp_open(struct net_device *d
  
        /* DMA TX Channel Configuration */
        for (chan = 0; chan < tx_cnt; chan++) {
@@ -1179,7 +1179,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
                stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
                                    tx_q->dma_tx_phy, chan);
-@@ -6630,7 +6634,7 @@ int stmmac_xdp_open(struct net_device *d
+@@ -6636,7 +6640,7 @@ int stmmac_xdp_open(struct net_device *d
  
  irq_error:
        for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
@@ -1188,7 +1188,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        stmmac_hw_teardown(dev);
  init_error:
-@@ -6657,8 +6661,8 @@ int stmmac_xsk_wakeup(struct net_device
+@@ -6663,8 +6667,8 @@ int stmmac_xsk_wakeup(struct net_device
            queue >= priv->plat->tx_queues_to_use)
                return -EINVAL;
  
@@ -1199,7 +1199,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        ch = &priv->channel[queue];
  
        if (!rx_q->xsk_pool && !tx_q->xsk_pool)
-@@ -6918,8 +6922,8 @@ int stmmac_reinit_ringparam(struct net_d
+@@ -6924,8 +6928,8 @@ int stmmac_reinit_ringparam(struct net_d
        if (netif_running(dev))
                stmmac_release(dev);
  
@@ -1210,7 +1210,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        if (netif_running(dev))
                ret = stmmac_open(dev);
-@@ -7357,7 +7361,7 @@ int stmmac_suspend(struct device *dev)
+@@ -7363,7 +7367,7 @@ int stmmac_suspend(struct device *dev)
        stmmac_disable_all_queues(priv);
  
        for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
@@ -1219,7 +1219,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        if (priv->eee_enabled) {
                priv->tx_path_in_lpi_mode = false;
-@@ -7408,7 +7412,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend);
+@@ -7414,7 +7418,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend);
  
  static void stmmac_reset_rx_queue(struct stmmac_priv *priv, u32 queue)
  {
@@ -1228,7 +1228,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        rx_q->cur_rx = 0;
        rx_q->dirty_rx = 0;
-@@ -7416,7 +7420,7 @@ static void stmmac_reset_rx_queue(struct
+@@ -7422,7 +7426,7 @@ static void stmmac_reset_rx_queue(struct
  
  static void stmmac_reset_tx_queue(struct stmmac_priv *priv, u32 queue)
  {
index e50a1f4f07700db5ef30e376452ec3309d1618b3..e84373b47180b9e37a118d296367bf0b7a70e8d2 100644 (file)
@@ -1045,7 +1045,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        /* Disable the MAC Rx/Tx */
        stmmac_mac_set(priv, priv->ioaddr, false);
-@@ -6397,7 +6513,7 @@ void stmmac_disable_rx_queue(struct stmm
+@@ -6403,7 +6519,7 @@ void stmmac_disable_rx_queue(struct stmm
        spin_unlock_irqrestore(&ch->lock, flags);
  
        stmmac_stop_rx_dma(priv, queue);
@@ -1054,7 +1054,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  }
  
  void stmmac_enable_rx_queue(struct stmmac_priv *priv, u32 queue)
-@@ -6408,21 +6524,21 @@ void stmmac_enable_rx_queue(struct stmma
+@@ -6414,21 +6530,21 @@ void stmmac_enable_rx_queue(struct stmma
        u32 buf_size;
        int ret;
  
@@ -1080,7 +1080,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        stmmac_init_rx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
                            rx_q->dma_rx_phy, rx_q->queue_index);
-@@ -6460,7 +6576,7 @@ void stmmac_disable_tx_queue(struct stmm
+@@ -6466,7 +6582,7 @@ void stmmac_disable_tx_queue(struct stmm
        spin_unlock_irqrestore(&ch->lock, flags);
  
        stmmac_stop_tx_dma(priv, queue);
@@ -1089,7 +1089,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  }
  
  void stmmac_enable_tx_queue(struct stmmac_priv *priv, u32 queue)
-@@ -6470,21 +6586,21 @@ void stmmac_enable_tx_queue(struct stmma
+@@ -6476,21 +6592,21 @@ void stmmac_enable_tx_queue(struct stmma
        unsigned long flags;
        int ret;
  
@@ -1115,7 +1115,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
                            tx_q->dma_tx_phy, tx_q->queue_index);
-@@ -6524,7 +6640,7 @@ void stmmac_xdp_release(struct net_devic
+@@ -6530,7 +6646,7 @@ void stmmac_xdp_release(struct net_devic
        stmmac_stop_all_dma(priv);
  
        /* Release and free the Rx/Tx resources */
@@ -1124,7 +1124,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  
        /* Disable the MAC Rx/Tx */
        stmmac_mac_set(priv, priv->ioaddr, false);
-@@ -6549,14 +6665,14 @@ int stmmac_xdp_open(struct net_device *d
+@@ -6555,14 +6671,14 @@ int stmmac_xdp_open(struct net_device *d
        u32 chan;
        int ret;
  
@@ -1141,7 +1141,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        if (ret < 0) {
                netdev_err(dev, "%s: DMA descriptors initialization failed\n",
                           __func__);
-@@ -6638,7 +6754,7 @@ irq_error:
+@@ -6644,7 +6760,7 @@ irq_error:
  
        stmmac_hw_teardown(dev);
  init_error:
@@ -1150,7 +1150,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  dma_desc_error:
        return ret;
  }
-@@ -7503,7 +7619,7 @@ int stmmac_resume(struct device *dev)
+@@ -7509,7 +7625,7 @@ int stmmac_resume(struct device *dev)
        stmmac_reset_queues_param(priv);
  
        stmmac_free_tx_skbufs(priv);
index 39e4df09a2512d5a786a9237bc865a6c2f08cc4c..37eefc4570f9cc3c02a2135705ccbd3bc98804a0 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
                return -ENODEV;
  
        /* Name & Type */
-@@ -369,7 +369,7 @@ int of_device_uevent_modalias(struct dev
+@@ -372,7 +372,7 @@ int of_device_uevent_modalias(struct dev
  {
        int sl;
  
index b06e0f5c1133e7e14679fe143ea1bc903605b167..dd5820e94a50670de079796bee5a518566ba518e 100644 (file)
@@ -18,7 +18,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 --- a/drivers/of/device.c
 +++ b/drivers/of/device.c
-@@ -378,6 +378,8 @@ int of_device_uevent_modalias(struct dev
+@@ -381,6 +381,8 @@ int of_device_uevent_modalias(struct dev
  
        sl = of_device_get_modalias(dev, &env->buf[env->buflen-1],
                                    sizeof(env->buf) - env->buflen);
diff --git a/target/linux/generic/backport-5.15/828-v6.4-0001-of-Fix-modalias-string-generation.patch b/target/linux/generic/backport-5.15/828-v6.4-0001-of-Fix-modalias-string-generation.patch
deleted file mode 100644 (file)
index b5f8928..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-From b19a4266c52de78496fe40f0b37580a3b762e67d Mon Sep 17 00:00:00 2001
-From: Miquel Raynal <miquel.raynal@bootlin.com>
-Date: Tue, 4 Apr 2023 18:21:09 +0100
-Subject: [PATCH] of: Fix modalias string generation
-
-The helper generating an OF based modalias (of_device_get_modalias())
-works fine, but due to the use of snprintf() internally it needs a
-buffer one byte longer than what should be needed just for the entire
-string (excluding the '\0'). Most users of this helper are sysfs hooks
-providing the modalias string to users. They all provide a PAGE_SIZE
-buffer which is way above the number of bytes required to fit the
-modalias string and hence do not suffer from this issue.
-
-There is another user though, of_device_request_module(), which is only
-called by drivers/usb/common/ulpi.c. This request module function is
-faulty, but maybe because in most cases there is an alternative, ULPI
-driver users have not noticed it.
-
-In this function, of_device_get_modalias() is called twice. The first
-time without buffer just to get the number of bytes required by the
-modalias string (excluding the null byte), and a second time, after
-buffer allocation, to fill the buffer. The allocation asks for an
-additional byte, in order to store the trailing '\0'. However, the
-buffer *length* provided to of_device_get_modalias() excludes this extra
-byte. The internal use of snprintf() with a length that is exactly the
-number of bytes to be written has the effect of using the last available
-byte to store a '\0', which then smashes the last character of the
-modalias string.
-
-Provide the actual size of the buffer to of_device_get_modalias() to fix
-this issue.
-
-Note: the "str[size - 1] = '\0';" line is not really needed as snprintf
-will anyway end the string with a null byte, but there is a possibility
-that this function might be called on a struct device_node without
-compatible, in this case snprintf() would not be executed. So we keep it
-just to avoid possible unbounded strings.
-
-Cc: Stephen Boyd <sboyd@kernel.org>
-Cc: Peter Chen <peter.chen@kernel.org>
-Fixes: 9c829c097f2f ("of: device: Support loading a module with OF based modalias")
-Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-Reviewed-by: Rob Herring <robh@kernel.org>
-Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
-Link: https://lore.kernel.org/r/20230404172148.82422-2-srinivas.kandagatla@linaro.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/of/device.c | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
---- a/drivers/of/device.c
-+++ b/drivers/of/device.c
-@@ -290,12 +290,15 @@ int of_device_request_module(struct devi
-       if (size < 0)
-               return size;
--      str = kmalloc(size + 1, GFP_KERNEL);
-+      /* Reserve an additional byte for the trailing '\0' */
-+      size++;
-+
-+      str = kmalloc(size, GFP_KERNEL);
-       if (!str)
-               return -ENOMEM;
-       of_device_get_modalias(dev, str, size);
--      str[size] = '\0';
-+      str[size - 1] = '\0';
-       ret = request_module(str);
-       kfree(str);
index d418ea8a7daabd1b02924cf28ba9bf418e7940e5..2d2c7b6cc5534381a199f404b066039ac089c814 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #define PACKET_FANOUT_LB              1
 --- a/net/packet/af_packet.c
 +++ b/net/packet/af_packet.c
-@@ -1825,6 +1825,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1826,6 +1826,7 @@ static int packet_rcv_spkt(struct sk_buf
  {
        struct sock *sk;
        struct sockaddr_pkt *spkt;
@@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
        /*
         *      When we registered the protocol we saved the socket in the data
-@@ -1832,6 +1833,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1833,6 +1834,7 @@ static int packet_rcv_spkt(struct sk_buf
         */
  
        sk = pt->af_packet_priv;
@@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
        /*
         *      Yank back the headers [hope the device set this
-@@ -1844,7 +1846,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1845,7 +1847,7 @@ static int packet_rcv_spkt(struct sk_buf
         *      so that this procedure is noop.
         */
  
@@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                goto out;
  
        if (!net_eq(dev_net(dev), sock_net(sk)))
-@@ -2092,12 +2094,12 @@ static int packet_rcv(struct sk_buff *sk
+@@ -2093,12 +2095,12 @@ static int packet_rcv(struct sk_buff *sk
        unsigned int snaplen, res;
        bool is_drop_n_account = false;
  
@@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (!net_eq(dev_net(dev), sock_net(sk)))
                goto drop;
  
-@@ -2223,12 +2225,12 @@ static int tpacket_rcv(struct sk_buff *s
+@@ -2224,12 +2226,12 @@ static int tpacket_rcv(struct sk_buff *s
        BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
        BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
  
@@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (!net_eq(dev_net(dev), sock_net(sk)))
                goto drop;
  
-@@ -3339,6 +3341,7 @@ static int packet_create(struct net *net
+@@ -3342,6 +3344,7 @@ static int packet_create(struct net *net
        mutex_init(&po->pg_vec_lock);
        po->rollover = NULL;
        po->prot_hook.func = packet_rcv;
@@ -96,7 +96,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (sock->type == SOCK_PACKET)
                po->prot_hook.func = packet_rcv_spkt;
 @@ -3979,6 +3982,16 @@ packet_setsockopt(struct socket *sock, i
-               po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
+               WRITE_ONCE(po->xmit, val ? packet_direct_xmit : dev_queue_xmit);
                return 0;
        }
 +      case PACKET_RECV_TYPE:
@@ -128,7 +128,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                break;
 --- a/net/packet/internal.h
 +++ b/net/packet/internal.h
-@@ -137,6 +137,7 @@ struct packet_sock {
+@@ -136,6 +136,7 @@ struct packet_sock {
        int                     (*xmit)(struct sk_buff *skb);
        struct packet_type      prot_hook ____cacheline_aligned_in_smp;
        atomic_t                tp_drops ____cacheline_aligned_in_smp;
diff --git a/target/linux/ipq806x/patches-5.15/104-v6.0-06-ARM-dts-qcom-ipq8064-reduce-pci-IO-size-to-64K.patch b/target/linux/ipq806x/patches-5.15/104-v6.0-06-ARM-dts-qcom-ipq8064-reduce-pci-IO-size-to-64K.patch
deleted file mode 100644 (file)
index b1fca01..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-From 8fafb7e5c041814876266259e5e439f93571dcef Mon Sep 17 00:00:00 2001
-From: Christian Marangi <ansuelsmth@gmail.com>
-Date: Thu, 7 Jul 2022 03:09:40 +0200
-Subject: [PATCH 6/8] ARM: dts: qcom: ipq8064: reduce pci IO size to 64K
-
-The current value for pci IO is problematic for ath10k wifi card
-commonly connected to ipq8064 SoC.
-The current value is probably a typo and is actually uncommon to find
-1MB IO space even on a x86 arch. Also with recent changes to the pci
-driver, pci1 and pci2 now fails to function as any connected device
-fails any reg read/write. Reduce this to 64K as it should be more than
-enough and 3 * 64K of total IO space doesn't exceed the IO_SPACE_LIMIT
-hardcoded for the ARM arch.
-
-Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
-Tested-by: Jonathan McDowell <noodles@earth.li>
-Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
-Link: https://lore.kernel.org/r/20220707010943.20857-7-ansuelsmth@gmail.com
----
- arch/arm/boot/dts/qcom-ipq8064.dtsi | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
---- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
-+++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
-@@ -885,7 +885,7 @@
-                       #address-cells = <3>;
-                       #size-cells = <2>;
--                      ranges = <0x81000000 0 0x0fe00000 0x0fe00000 0 0x00100000   /* downstream I/O */
-+                      ranges = <0x81000000 0 0x0fe00000 0x0fe00000 0 0x00010000   /* downstream I/O */
-                                 0x82000000 0 0x08000000 0x08000000 0 0x07e00000>; /* non-prefetchable memory */
-                       interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
-@@ -936,7 +936,7 @@
-                       #address-cells = <3>;
-                       #size-cells = <2>;
--                      ranges = <0x81000000 0 0x31e00000 0x31e00000 0 0x00100000   /* downstream I/O */
-+                      ranges = <0x81000000 0 0x31e00000 0x31e00000 0 0x00010000   /* downstream I/O */
-                                 0x82000000 0 0x2e000000 0x2e000000 0 0x03e00000>; /* non-prefetchable memory */
-                       interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
-@@ -987,7 +987,7 @@
-                       #address-cells = <3>;
-                       #size-cells = <2>;
--                      ranges = <0x81000000 0 0x35e00000 0x35e00000 0 0x00100000   /* downstream I/O */
-+                      ranges = <0x81000000 0 0x35e00000 0x35e00000 0 0x00010000   /* downstream I/O */
-                                 0x82000000 0 0x32000000 0x32000000 0 0x03e00000>; /* non-prefetchable memory */
-                       interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
index 6d86122bd0b33dd36e9c8eff50400ace8a400acd..57fe73ae92a5258742a6272b8352ac41087bb3cc 100644 (file)
@@ -35,7 +35,7 @@ Link: https://lore.kernel.org/r/20220704113318.623102-1-robimarko@gmail.com
                watchdog: watchdog@b017000 {
                        compatible = "qcom,kpss-wdt";
                        reg = <0xb017000 0x1000>;
-@@ -857,4 +849,12 @@
+@@ -853,4 +845,12 @@
                        status = "disabled";
                };
        };
index b320c08032ccc918455378802a744971498a081e..bad75e4597ae7b37ddc385ebe670756397efe68b 100644 (file)
@@ -37,7 +37,7 @@ Link: https://lore.kernel.org/r/20220818220245.338396-5-robimarko@gmail.com
                cryptobam: dma-controller@704000 {
                        compatible = "qcom,bam-v1.7.0";
                        reg = <0x00704000 0x20000>;
-@@ -878,4 +888,90 @@
+@@ -874,4 +884,90 @@
                             <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
                             <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
        };
index fd1de696637e2c3aeb00767e697fd66ac4c6b308..61aeb0b029670c95fa742b573926ace3f9344009 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
 
 --- a/drivers/spmi/spmi.c
 +++ b/drivers/spmi/spmi.c
-@@ -387,6 +387,23 @@ static struct bus_type spmi_bus_type = {
+@@ -388,6 +388,23 @@ static struct bus_type spmi_bus_type = {
  };
  
  /**
index 817a3c64c9341d46667a53f242c49f1704041274..b29512fb76f522e69fde3c529027b5524ce163bf 100644 (file)
@@ -30,7 +30,7 @@ Reviewed-by: Stephen Boyd <swboyd@chromium.org>
  struct qcom_pcie {
        struct dw_pcie *pci;
        void __iomem *parf;                     /* DT parf */
-@@ -1469,6 +1473,38 @@ static const struct qcom_pcie_ops ops_1_
+@@ -1467,6 +1471,38 @@ static const struct qcom_pcie_ops ops_1_
        .config_sid = qcom_pcie_config_sid_sm8250,
  };
  
@@ -69,7 +69,7 @@ Reviewed-by: Stephen Boyd <swboyd@chromium.org>
  static const struct dw_pcie_ops dw_pcie_ops = {
        .link_up = qcom_pcie_link_up,
        .start_link = qcom_pcie_start_link,
-@@ -1480,6 +1516,7 @@ static int qcom_pcie_probe(struct platfo
+@@ -1478,6 +1514,7 @@ static int qcom_pcie_probe(struct platfo
        struct pcie_port *pp;
        struct dw_pcie *pci;
        struct qcom_pcie *pcie;
@@ -77,7 +77,7 @@ Reviewed-by: Stephen Boyd <swboyd@chromium.org>
        int ret;
  
        pcie = devm_kzalloc(dev, sizeof(*pcie), GFP_KERNEL);
-@@ -1501,7 +1538,13 @@ static int qcom_pcie_probe(struct platfo
+@@ -1499,7 +1536,13 @@ static int qcom_pcie_probe(struct platfo
  
        pcie->pci = pci;
  
@@ -92,7 +92,7 @@ Reviewed-by: Stephen Boyd <swboyd@chromium.org>
  
        pcie->reset = devm_gpiod_get_optional(dev, "perst", GPIOD_OUT_HIGH);
        if (IS_ERR(pcie->reset)) {
-@@ -1557,16 +1600,17 @@ err_pm_runtime_put:
+@@ -1555,16 +1598,17 @@ err_pm_runtime_put:
  }
  
  static const struct of_device_id qcom_pcie_match[] = {
index 6881ed6d2511cd32c86fc3beb767cc67e720820e..af8ba2a4e13dfa73d6c553f045b3e3bb5790029d 100644 (file)
@@ -70,7 +70,7 @@ Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
  };
  
  struct qcom_pcie;
-@@ -1282,6 +1292,112 @@ static void qcom_pcie_post_deinit_2_7_0(
+@@ -1280,6 +1290,112 @@ static void qcom_pcie_post_deinit_2_7_0(
        clk_disable_unprepare(res->pipe_clk);
  }
  
@@ -183,7 +183,7 @@ Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
  static int qcom_pcie_link_up(struct dw_pcie *pci)
  {
        u16 offset = dw_pcie_find_capability(pci, PCI_CAP_ID_EXP);
-@@ -1473,6 +1589,15 @@ static const struct qcom_pcie_ops ops_1_
+@@ -1471,6 +1587,15 @@ static const struct qcom_pcie_ops ops_1_
        .config_sid = qcom_pcie_config_sid_sm8250,
  };
  
@@ -199,7 +199,7 @@ Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
  static const struct qcom_pcie_cfg apq8084_cfg = {
        .ops = &ops_1_0_0,
  };
-@@ -1505,6 +1630,10 @@ static const struct qcom_pcie_cfg sc7280
+@@ -1503,6 +1628,10 @@ static const struct qcom_pcie_cfg sc7280
        .ops = &ops_1_9_0,
  };
  
@@ -210,7 +210,7 @@ Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
  static const struct dw_pcie_ops dw_pcie_ops = {
        .link_up = qcom_pcie_link_up,
        .start_link = qcom_pcie_start_link,
-@@ -1611,6 +1740,7 @@ static const struct of_device_id qcom_pc
+@@ -1609,6 +1738,7 @@ static const struct of_device_id qcom_pc
        { .compatible = "qcom,pcie-sdm845", .data = &sdm845_cfg },
        { .compatible = "qcom,pcie-sm8250", .data = &sm8250_cfg },
        { .compatible = "qcom,pcie-sc7280", .data = &sc7280_cfg },
index ae6b1482100d0905dbf9d9faa85643084e4dc8d7..c7a7e7ab49a4a4cb0210ee1ed235e5b568c1ed73 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
 
 --- a/drivers/pci/controller/dwc/pcie-qcom.c
 +++ b/drivers/pci/controller/dwc/pcie-qcom.c
-@@ -1735,6 +1735,7 @@ static const struct of_device_id qcom_pc
+@@ -1733,6 +1733,7 @@ static const struct of_device_id qcom_pc
        { .compatible = "qcom,pcie-apq8064", .data = &ipq8064_cfg },
        { .compatible = "qcom,pcie-msm8996", .data = &msm8996_cfg },
        { .compatible = "qcom,pcie-ipq8074", .data = &ipq8074_cfg },
index d38e9dab31a7d07df9b4035e0a8bb8725bb2782f..9fefd8852ac17fc889f474df793601214dc5daba 100644 (file)
@@ -21,9 +21,9 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
                                compatible = "arm,gic-v2m-frame";
                                msi-controller;
                                reg = <0x0 0xffd>;
-@@ -813,8 +813,7 @@
-                                <0x82000000 0 0x10220000 0x10220000
-                                 0 0xfde0000>; /* non-prefetchable memory */
+@@ -811,8 +811,7 @@
+                       ranges = <0x81000000 0x0 0x00000000 0x10200000 0x0 0x10000>,   /* I/O */
+                                <0x82000000 0x0 0x10220000 0x10220000 0x0 0xfde0000>; /* MEM */
  
 -                      interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
 -                      interrupt-names = "msi";
@@ -31,9 +31,9 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
                        #interrupt-cells = <1>;
                        interrupt-map-mask = <0 0 0 0x7>;
                        interrupt-map = <0 0 0 1 &intc 0 142
-@@ -877,8 +876,7 @@
-                                <0x82000000 0 0x20220000 0x20220000
-                                 0 0xfde0000>; /* non-prefetchable memory */
+@@ -873,8 +872,7 @@
+                       ranges = <0x81000000 0x0 0x00000000 0x20200000 0x0 0x10000>,   /* I/O */
+                                <0x82000000 0x0 0x20220000 0x20220000 0x0 0xfde0000>; /* MEM */
  
 -                      interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
 -                      interrupt-names = "msi";
index 52d9efc5bf75ba33cbfbba5402ab515ea4161fd8..e37ba37e96049ddcd159da43d1812d9b6424c86e 100644 (file)
@@ -61,7 +61,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
                spmi_bus: spmi@200f000 {
                        compatible = "qcom,spmi-pmic-arb";
                        reg = <0x0200f000 0x001000>,
-@@ -917,6 +948,56 @@
+@@ -913,6 +944,56 @@
                                      "axi_s_sticky";
                        status = "disabled";
                };
index da641118908086613dac624dafb1ca3308b6592d..bd5410c934adcf5075d46dfb4bbd991c73f4fb41 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
 
 --- a/arch/arm64/boot/dts/qcom/ipq8074.dtsi
 +++ b/arch/arm64/boot/dts/qcom/ipq8074.dtsi
-@@ -998,6 +998,117 @@
+@@ -994,6 +994,117 @@
                                };
                        };
                };
index 11922fe740abd350c9b83bcacdffb0852b33174a..a11549ba476d9b25044af3fe65bf4c716ae064e5 100644 (file)
@@ -10,7 +10,7 @@
  #define UART_BUG_TXEN BIT(1)  /* UART has buggy TX IIR status */
 --- a/drivers/tty/serial/8250/8250_port.c
 +++ b/drivers/tty/serial/8250/8250_port.c
-@@ -288,7 +288,7 @@ static const struct serial8250_config ua
+@@ -289,7 +289,7 @@ static const struct serial8250_config ua
                .tx_loadsz      = 16,
                .fcr            = UART_FCR_ENABLE_FIFO |
                                  UART_FCR_CLEAR_RCVR | UART_FCR_CLEAR_XMIT,
@@ -19,7 +19,7 @@
        },
        [PORT_NPCM] = {
                .name           = "Nuvoton 16550",
-@@ -2756,6 +2756,11 @@ serial8250_do_set_termios(struct uart_po
+@@ -2760,6 +2760,11 @@ serial8250_do_set_termios(struct uart_po
        unsigned long flags;
        unsigned int baud, quot, frac = 0;
  
index c58ae96403ad7d92adea111b6f2bcf0fcab7af07..b142b22eb8d3cf381e051c33f616dae85b57d9fc 100644 (file)
@@ -42,7 +42,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  
                /*
                 * The first read of a sensor often contains very high bogus
-@@ -1075,6 +1073,11 @@ static int mtk_thermal_probe(struct plat
+@@ -1085,6 +1083,11 @@ static int mtk_thermal_probe(struct plat
                mtk_thermal_release_periodic_ts(mt, auxadc_base);
        }
  
index 65311d5718d9f9cdebab527a3e23f3027fa8958a..3ac2e7fc28cb1424b8b9ac3d091a12c4172be5a3 100644 (file)
@@ -210,7 +210,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
                .compatible = "mediatek,mt8183-thermal",
                .data = (void *)&mt8183_thermal_data,
        }, {
-@@ -1068,15 +1186,24 @@ static int mtk_thermal_probe(struct plat
+@@ -1078,15 +1196,24 @@ static int mtk_thermal_probe(struct plat
                goto err_disable_clk_auxadc;
        }