1 From 9faa5960eef3204cae6637b530f5e23e53b5a9ef Mon Sep 17 00:00:00 2001
2 From: Hauke Mehrtens <hauke@hauke-m.de>
3 Date: Fri, 29 May 2015 23:39:47 +0200
4 Subject: [PATCH] ARM: BCM5301X: add NAND flash chip description
6 This adds the NAND flash chip description for a standard chip found
7 connected to this SoC. This makes use of generic Broadcom NAND driver
8 with the iProc interface.
10 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
11 Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
13 arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts | 1 +
14 arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts | 1 +
15 arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts | 1 +
16 arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts | 9 +++-----
17 arch/arm/boot/dts/bcm4708-netgear-r6250.dts | 1 +
18 arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts | 1 +
19 arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts | 1 +
20 arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts | 1 +
21 arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 1 +
22 arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts | 1 +
23 arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts | 1 +
24 arch/arm/boot/dts/bcm4709-netgear-r8000.dts | 1 +
25 arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi | 24 ++++++++++++++++++++++
26 arch/arm/boot/dts/bcm5301x.dtsi | 12 +++++++++++
27 14 files changed, 50 insertions(+), 6 deletions(-)
28 create mode 100644 arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi
30 --- a/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
31 +++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
35 #include "bcm4708.dtsi"
36 +#include "bcm5301x-nand-cs0-bch8.dtsi"
39 compatible = "asus,rt-ac56u", "brcm,bcm4708";
40 --- a/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
41 +++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
45 #include "bcm4708.dtsi"
46 +#include "bcm5301x-nand-cs0-bch8.dtsi"
49 compatible = "asus,rt-ac68u", "brcm,bcm4708";
50 --- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
51 +++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
55 #include "bcm4708.dtsi"
56 +#include "bcm5301x-nand-cs0-bch8.dtsi"
59 compatible = "buffalo,wzr-1750dhp", "brcm,bcm4708";
60 --- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
61 +++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
65 #include "bcm4708.dtsi"
66 +#include "bcm5301x-nand-cs0-bch8.dtsi"
69 compatible = "luxul,xwc-1000", "brcm,bcm4708";
71 reg = <0x00000000 0x08000000>;
76 - reg = <0x00028000 0x1000>;
77 - #address-cells = <1>;
80 + nand: nand@18028000 {
84 reg = <0x00000000 0x08000000>;
85 --- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
86 +++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
90 #include "bcm4708.dtsi"
91 +#include "bcm5301x-nand-cs0-bch8.dtsi"
94 compatible = "netgear,r6250v1", "brcm,bcm4708";
95 --- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
96 +++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
100 #include "bcm4708.dtsi"
101 +#include "bcm5301x-nand-cs0-bch8.dtsi"
104 compatible = "netgear,r6300v2", "brcm,bcm4708";
105 --- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
106 +++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
110 #include "bcm4708.dtsi"
111 +#include "bcm5301x-nand-cs0-bch8.dtsi"
114 compatible = "smartrg,sr400ac", "brcm,bcm4708";
115 --- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
116 +++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
120 #include "bcm47081.dtsi"
121 +#include "bcm5301x-nand-cs0-bch8.dtsi"
124 compatible = "asus,rt-n18u", "brcm,bcm47081", "brcm,bcm4708";
125 --- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
126 +++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
130 #include "bcm47081.dtsi"
131 +#include "bcm5301x-nand-cs0-bch8.dtsi"
134 compatible = "buffalo,wzr-600dhp2", "brcm,bcm47081", "brcm,bcm4708";
135 --- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
136 +++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
140 #include "bcm47081.dtsi"
141 +#include "bcm5301x-nand-cs0-bch8.dtsi"
144 compatible = "buffalo,wzr-900dhp", "brcm,bcm47081", "brcm,bcm4708";
145 --- a/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
146 +++ b/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
150 #include "bcm4708.dtsi"
151 +#include "bcm5301x-nand-cs0-bch8.dtsi"
154 compatible = "buffalo,wxr-1900dhp", "brcm,bcm4709", "brcm,bcm4708";
155 --- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
156 +++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
160 #include "bcm4708.dtsi"
161 +#include "bcm5301x-nand-cs0-bch8.dtsi"
164 compatible = "netgear,r8000", "brcm,bcm4709", "brcm,bcm4708";
166 +++ b/arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi
169 + * Broadcom BCM470X / BCM5301X Nand chip defaults.
171 + * This should be included if the NAND controller is on chip select 0
172 + * and uses 8 bit ECC.
174 + * Copyright (C) 2015 Hauke Mehrtens <hauke@hauke-m.de>
176 + * Licensed under the GNU/GPL. See COPYING for details.
182 + compatible = "brcm,nandcs";
184 + #address-cells = <1>;
187 + nand-ecc-strength = <8>;
188 + nand-ecc-step-size = <512>;
192 --- a/arch/arm/boot/dts/bcm5301x.dtsi
193 +++ b/arch/arm/boot/dts/bcm5301x.dtsi
199 + nand: nand@18028000 {
200 + compatible = "brcm,nand-iproc", "brcm,brcmnand-v6.1", "brcm,brcmnand";
201 + reg = <0x18028000 0x600>, <0x1811a408 0x600>, <0x18028f00 0x20>;
202 + reg-names = "nand", "iproc-idm", "iproc-ext";
203 + interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
205 + #address-cells = <1>;