mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 23:42:43 +00:00
bcm53xx: switch to the new/alternative SPI controller driver
This switches bcm53xx from spi-bcm53xx to the spi-bcm-qspi driver. The later one was developed by Broadcom and is more advanced one. It supports more modes, setting a speed, setting bits per word and uses IRQs instead of polling. This increases kernel size from 1808120 B to the 1811160 B (by 3040 B). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This commit is contained in:
parent
f172456edc
commit
ed00387dc5
@ -320,7 +320,8 @@ CONFIG_SMP=y
|
|||||||
CONFIG_SMP_ON_UP=y
|
CONFIG_SMP_ON_UP=y
|
||||||
CONFIG_SPARSE_IRQ=y
|
CONFIG_SPARSE_IRQ=y
|
||||||
CONFIG_SPI=y
|
CONFIG_SPI=y
|
||||||
CONFIG_SPI_BCM53XX=y
|
# CONFIG_SPI_BCM53XX is not set
|
||||||
|
CONFIG_SPI_BCM_QSPI=y
|
||||||
CONFIG_SPI_BITBANG=y
|
CONFIG_SPI_BITBANG=y
|
||||||
CONFIG_SPI_GPIO=y
|
CONFIG_SPI_GPIO=y
|
||||||
CONFIG_SPI_MASTER=y
|
CONFIG_SPI_MASTER=y
|
||||||
|
@ -1,110 +0,0 @@
|
|||||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
|
||||||
Date: Fri, 29 Dec 2017 20:26:51 +0100
|
|
||||||
Subject: [PATCH] Revert "ARM: dts: BCM5301X: convert to iProc QSPI"
|
|
||||||
|
|
||||||
This reverts commit 1c8f4065072387d3b6ee7adcf0dbe3c7ba80c268.
|
|
||||||
|
|
||||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
|
||||||
---
|
|
||||||
|
|
||||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
|
||||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
|
||||||
@@ -337,6 +337,20 @@
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
+ spi@29000 {
|
|
||||||
+ reg = <0x00029000 0x1000>;
|
|
||||||
+ #address-cells = <1>;
|
|
||||||
+ #size-cells = <0>;
|
|
||||||
+
|
|
||||||
+ spi_nor: spi-nor@0 {
|
|
||||||
+ compatible = "jedec,spi-nor";
|
|
||||||
+ reg = <0>;
|
|
||||||
+ spi-max-frequency = <20000000>;
|
|
||||||
+ linux,part-probe = "ofpart", "bcm47xxpart";
|
|
||||||
+ status = "disabled";
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
gmac0: ethernet@24000 {
|
|
||||||
reg = <0x24000 0x800>;
|
|
||||||
};
|
|
||||||
@@ -425,42 +439,6 @@
|
|
||||||
brcm,nand-has-wp;
|
|
||||||
};
|
|
||||||
|
|
||||||
- spi@18029200 {
|
|
||||||
- compatible = "brcm,spi-bcm-qspi", "brcm,spi-nsp-qspi";
|
|
||||||
- reg = <0x18029200 0x184>,
|
|
||||||
- <0x18029000 0x124>,
|
|
||||||
- <0x1811b408 0x004>,
|
|
||||||
- <0x180293a0 0x01c>;
|
|
||||||
- reg-names = "mspi", "bspi", "intr_regs", "intr_status_reg";
|
|
||||||
- interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
- <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
- <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
- <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
- <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
- <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>,
|
|
||||||
- <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
|
|
||||||
- interrupt-names = "spi_lr_fullness_reached",
|
|
||||||
- "spi_lr_session_aborted",
|
|
||||||
- "spi_lr_impatient",
|
|
||||||
- "spi_lr_session_done",
|
|
||||||
- "spi_lr_overhead",
|
|
||||||
- "mspi_done",
|
|
||||||
- "mspi_halted";
|
|
||||||
- clocks = <&iprocmed>;
|
|
||||||
- clock-names = "iprocmed";
|
|
||||||
- num-cs = <2>;
|
|
||||||
- #address-cells = <1>;
|
|
||||||
- #size-cells = <0>;
|
|
||||||
-
|
|
||||||
- spi_nor: spi-nor@0 {
|
|
||||||
- compatible = "jedec,spi-nor";
|
|
||||||
- reg = <0>;
|
|
||||||
- spi-max-frequency = <20000000>;
|
|
||||||
- linux,part-probe = "ofpart", "bcm47xxpart";
|
|
||||||
- status = "disabled";
|
|
||||||
- };
|
|
||||||
- };
|
|
||||||
-
|
|
||||||
thermal-zones {
|
|
||||||
cpu_thermal: cpu-thermal {
|
|
||||||
polling-delay-passive = <0>;
|
|
||||||
--- a/arch/arm/boot/dts/bcm953012k.dts
|
|
||||||
+++ b/arch/arm/boot/dts/bcm953012k.dts
|
|
||||||
@@ -80,32 +80,6 @@
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
-&spi_nor {
|
|
||||||
- status = "okay";
|
|
||||||
- spi-max-frequency = <62500000>;
|
|
||||||
- m25p,default-addr-width = <3>;
|
|
||||||
-
|
|
||||||
- #address-cells = <1>;
|
|
||||||
- #size-cells = <1>;
|
|
||||||
-
|
|
||||||
- partition@0 {
|
|
||||||
- label = "boot";
|
|
||||||
- reg = <0x00000000 0x000d0000>;
|
|
||||||
- };
|
|
||||||
- partition@d000 {
|
|
||||||
- label = "env";
|
|
||||||
- reg = <0x000d0000 0x00030000>;
|
|
||||||
- };
|
|
||||||
- partition@100000 {
|
|
||||||
- label = "system";
|
|
||||||
- reg = <0x00100000 0x00600000>;
|
|
||||||
- };
|
|
||||||
- partition@700000 {
|
|
||||||
- label = "rootfs";
|
|
||||||
- reg = <0x00700000 0x00900000>;
|
|
||||||
- };
|
|
||||||
-};
|
|
||||||
-
|
|
||||||
&uart0 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
@ -19,18 +19,18 @@ Subject: [PATCH] Use "brcm,bcm947xx-cfe-partitions" binding for Broadcom
|
|||||||
};
|
};
|
||||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||||
@@ -346,8 +346,11 @@
|
@@ -456,8 +456,11 @@
|
||||||
compatible = "jedec,spi-nor";
|
compatible = "jedec,spi-nor";
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
spi-max-frequency = <20000000>;
|
spi-max-frequency = <20000000>;
|
||||||
- linux,part-probe = "ofpart", "bcm47xxpart";
|
- linux,part-probe = "ofpart", "bcm47xxpart";
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
+
|
+
|
||||||
+ partitions {
|
+ partitions {
|
||||||
+ compatible = "brcm,bcm947xx-cfe-partitions";
|
+ compatible = "brcm,bcm947xx-cfe-partitions";
|
||||||
+ };
|
+ };
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
--- a/drivers/mtd/bcm47xxpart.c
|
--- a/drivers/mtd/bcm47xxpart.c
|
||||||
+++ b/drivers/mtd/bcm47xxpart.c
|
+++ b/drivers/mtd/bcm47xxpart.c
|
||||||
|
Loading…
Reference in New Issue
Block a user