diff options
author | Rafał Miłecki <rafal@milecki.pl> | 2018-05-07 07:48:39 +0200 |
---|---|---|
committer | Rafał Miłecki <rafal@milecki.pl> | 2018-05-07 07:56:38 +0200 |
commit | ed00387dc550695f2b9d690b7a8e5a1567e175ee (patch) | |
tree | 060055c43f9dedfea2c7e16576ef6a20b4409df3 /target | |
parent | f172456edcee41d37d182bdb6423247c90a1333f (diff) | |
download | upstream-ed00387dc550695f2b9d690b7a8e5a1567e175ee.tar.gz upstream-ed00387dc550695f2b9d690b7a8e5a1567e175ee.tar.bz2 upstream-ed00387dc550695f2b9d690b7a8e5a1567e175ee.zip |
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>
Diffstat (limited to 'target')
3 files changed, 12 insertions, 121 deletions
diff --git a/target/linux/bcm53xx/config-4.14 b/target/linux/bcm53xx/config-4.14 index 38738a468d..be062dc7f2 100644 --- a/target/linux/bcm53xx/config-4.14 +++ b/target/linux/bcm53xx/config-4.14 @@ -320,7 +320,8 @@ CONFIG_SMP=y CONFIG_SMP_ON_UP=y CONFIG_SPARSE_IRQ=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_GPIO=y CONFIG_SPI_MASTER=y diff --git a/target/linux/bcm53xx/patches-4.14/390-Revert-ARM-dts-BCM5301X-convert-to-iProc-QSPI.patch b/target/linux/bcm53xx/patches-4.14/390-Revert-ARM-dts-BCM5301X-convert-to-iProc-QSPI.patch deleted file mode 100644 index 6180c88e5e..0000000000 --- a/target/linux/bcm53xx/patches-4.14/390-Revert-ARM-dts-BCM5301X-convert-to-iProc-QSPI.patch +++ /dev/null @@ -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"; - }; diff --git a/target/linux/bcm53xx/patches-4.14/410-Use-brcm-bcm947xx-cfe-partitions-binding-for-Broadco.patch b/target/linux/bcm53xx/patches-4.14/410-Use-brcm-bcm947xx-cfe-partitions-binding-for-Broadco.patch index edb0ed1fdd..d3b8e4079a 100644 --- a/target/linux/bcm53xx/patches-4.14/410-Use-brcm-bcm947xx-cfe-partitions-binding-for-Broadco.patch +++ b/target/linux/bcm53xx/patches-4.14/410-Use-brcm-bcm947xx-cfe-partitions-binding-for-Broadco.patch @@ -19,18 +19,18 @@ Subject: [PATCH] Use "brcm,bcm947xx-cfe-partitions" binding for Broadcom }; --- a/arch/arm/boot/dts/bcm5301x.dtsi +++ b/arch/arm/boot/dts/bcm5301x.dtsi -@@ -346,8 +346,11 @@ - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <20000000>; -- linux,part-probe = "ofpart", "bcm47xxpart"; - status = "disabled"; +@@ -456,8 +456,11 @@ + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <20000000>; +- linux,part-probe = "ofpart", "bcm47xxpart"; + status = "disabled"; + -+ partitions { -+ compatible = "brcm,bcm947xx-cfe-partitions"; -+ }; - }; ++ partitions { ++ compatible = "brcm,bcm947xx-cfe-partitions"; ++ }; }; + }; --- a/drivers/mtd/bcm47xxpart.c +++ b/drivers/mtd/bcm47xxpart.c |