diff options
author | Olof Johansson <olof@lixom.net> | 2017-06-19 01:54:10 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2017-06-19 01:54:10 -0400 |
commit | c9487f03875a229ee37528ab4e84ce543b25d57c (patch) | |
tree | 2c5caf7b9bf8a9227ed1360e9235c65d6fa27804 | |
parent | 1161a0d50a0253ff92e649578f1af688ca9bd1ba (diff) | |
parent | bc03ce08396786c92d6591a81682c7da7accbfc8 (diff) |
Merge tag 'at91-ab-4.13-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/dt
DT for 4.13
- Switch to the new NAND binding
- A few non urgent fixes
* tag 'at91-ab-4.13-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
ARM: dts: at91: sama5d2_xplained: remove wrong memory node
ARM: dts: at91: sama5d2_xplained: add pwm controller
ARM: dts: at91: Add the NOR flash available on sama5d3 dev kits
ARM: dts: at91: Switch to the new NAND bindings
ARM: dts: at91: Declare EBI/NAND controllers
dt-bindings: mtd: atmel-nand: Document the nfc-io bindings
ARM: dts: at91-sama5d4: use IRQ_TYPE_* to specify irq flags
dts: gpio_atmel: adapt binding doc to reality
ARM: dts: at91: sama5d2: add m_can nodes
ARM: dts: at91: Add generic compatible string for I2C EEPROM
Signed-off-by: Olof Johansson <olof@lixom.net>
42 files changed, 2096 insertions, 1019 deletions
diff --git a/Documentation/devicetree/bindings/gpio/gpio_atmel.txt b/Documentation/devicetree/bindings/gpio/gpio_atmel.txt index 85f8c0d084fa..29416f9c3220 100644 --- a/Documentation/devicetree/bindings/gpio/gpio_atmel.txt +++ b/Documentation/devicetree/bindings/gpio/gpio_atmel.txt | |||
@@ -5,9 +5,13 @@ Required properties: | |||
5 | - reg: Should contain GPIO controller registers location and length | 5 | - reg: Should contain GPIO controller registers location and length |
6 | - interrupts: Should be the port interrupt shared by all the pins. | 6 | - interrupts: Should be the port interrupt shared by all the pins. |
7 | - #gpio-cells: Should be two. The first cell is the pin number and | 7 | - #gpio-cells: Should be two. The first cell is the pin number and |
8 | the second cell is used to specify optional parameters (currently | 8 | the second cell is used to specify optional parameters to declare if the GPIO |
9 | unused). | 9 | is active high or low. See gpio.txt. |
10 | - gpio-controller: Marks the device node as a GPIO controller. | 10 | - gpio-controller: Marks the device node as a GPIO controller. |
11 | - interrupt-controller: Marks the device node as an interrupt controller. | ||
12 | - #interrupt-cells: Should be two. The first cell is the pin number and the | ||
13 | second cell is used to specify irq type flags, see the two cell description | ||
14 | in interrupt-controller/interrupts.txt for details. | ||
11 | 15 | ||
12 | optional properties: | 16 | optional properties: |
13 | - #gpio-lines: Number of gpio if absent 32. | 17 | - #gpio-lines: Number of gpio if absent 32. |
@@ -21,5 +25,7 @@ Example: | |||
21 | #gpio-cells = <2>; | 25 | #gpio-cells = <2>; |
22 | gpio-controller; | 26 | gpio-controller; |
23 | #gpio-lines = <19>; | 27 | #gpio-lines = <19>; |
28 | interrupt-controller; | ||
29 | #interrupt-cells = <2>; | ||
24 | }; | 30 | }; |
25 | 31 | ||
diff --git a/Documentation/devicetree/bindings/mtd/atmel-nand.txt b/Documentation/devicetree/bindings/mtd/atmel-nand.txt index f6bee57e453a..9bb66e476672 100644 --- a/Documentation/devicetree/bindings/mtd/atmel-nand.txt +++ b/Documentation/devicetree/bindings/mtd/atmel-nand.txt | |||
@@ -59,8 +59,22 @@ Required properties: | |||
59 | - reg: should contain 2 register ranges. The first one is pointing to the PMECC | 59 | - reg: should contain 2 register ranges. The first one is pointing to the PMECC |
60 | block, and the second one to the PMECC_ERRLOC block. | 60 | block, and the second one to the PMECC_ERRLOC block. |
61 | 61 | ||
62 | * SAMA5 NFC I/O bindings: | ||
63 | |||
64 | SAMA5 SoCs embed an advanced NAND controller logic to automate READ/WRITE page | ||
65 | operations. This interface to this logic is placed in a separate I/O range and | ||
66 | should thus have its own DT node. | ||
67 | |||
68 | - compatible: should be "atmel,sama5d3-nfc-io", "syscon". | ||
69 | - reg: should contain the I/O range used to interact with the NFC logic. | ||
70 | |||
62 | Example: | 71 | Example: |
63 | 72 | ||
73 | nfc_io: nfc-io@70000000 { | ||
74 | compatible = "atmel,sama5d3-nfc-io", "syscon"; | ||
75 | reg = <0x70000000 0x8000000>; | ||
76 | }; | ||
77 | |||
64 | pmecc: ecc-engine@ffffc070 { | 78 | pmecc: ecc-engine@ffffc070 { |
65 | compatible = "atmel,at91sam9g45-pmecc"; | 79 | compatible = "atmel,at91sam9g45-pmecc"; |
66 | reg = <0xffffc070 0x490>, | 80 | reg = <0xffffc070 0x490>, |
diff --git a/arch/arm/boot/dts/aks-cdu.dts b/arch/arm/boot/dts/aks-cdu.dts index 5b1bf92d927c..888bfcd4a402 100644 --- a/arch/arm/boot/dts/aks-cdu.dts +++ b/arch/arm/boot/dts/aks-cdu.dts | |||
@@ -62,32 +62,36 @@ | |||
62 | status = "okay"; | 62 | status = "okay"; |
63 | }; | 63 | }; |
64 | 64 | ||
65 | nand0: nand@40000000 { | 65 | ebi: ebi@10000000 { |
66 | nand-bus-width = <8>; | 66 | nand_controller: nand-controller { |
67 | nand-ecc-mode = "soft"; | 67 | nand: nand@3 { |
68 | nand-on-flash-bbt; | 68 | partitions { |
69 | status = "okay"; | 69 | bootstrap@0 { |
70 | 70 | label = "bootstrap"; | |
71 | bootstrap@0 { | 71 | reg = <0x0 0x40000>; |
72 | label = "bootstrap"; | 72 | }; |
73 | reg = <0x0 0x40000>; | 73 | |
74 | }; | 74 | uboot@40000 { |
75 | 75 | label = "uboot"; | |
76 | uboot@40000 { | 76 | reg = <0x40000 0x80000>; |
77 | label = "uboot"; | 77 | }; |
78 | reg = <0x40000 0x80000>; | 78 | |
79 | }; | 79 | ubootenv@c0000 { |
80 | ubootenv@c0000 { | 80 | label = "ubootenv"; |
81 | label = "ubootenv"; | 81 | reg = <0xc0000 0x40000>; |
82 | reg = <0xc0000 0x40000>; | 82 | }; |
83 | }; | 83 | |
84 | kernel@100000 { | 84 | kernel@100000 { |
85 | label = "kernel"; | 85 | label = "kernel"; |
86 | reg = <0x100000 0x400000>; | 86 | reg = <0x100000 0x400000>; |
87 | }; | 87 | }; |
88 | rootfs@500000 { | 88 | |
89 | label = "rootfs"; | 89 | rootfs@500000 { |
90 | reg = <0x500000 0x7b00000>; | 90 | label = "rootfs"; |
91 | reg = <0x500000 0x7b00000>; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
91 | }; | 95 | }; |
92 | }; | 96 | }; |
93 | }; | 97 | }; |
diff --git a/arch/arm/boot/dts/animeo_ip.dts b/arch/arm/boot/dts/animeo_ip.dts index 9cc372b9fb9b..26ade8c0a960 100644 --- a/arch/arm/boot/dts/animeo_ip.dts +++ b/arch/arm/boot/dts/animeo_ip.dts | |||
@@ -83,25 +83,44 @@ | |||
83 | }; | 83 | }; |
84 | }; | 84 | }; |
85 | 85 | ||
86 | nand0: nand@40000000 { | 86 | ebi: ebi@10000000 { |
87 | nand-bus-width = <8>; | ||
88 | nand-ecc-mode = "soft"; | ||
89 | nand-on-flash-bbt; | ||
90 | status = "okay"; | 87 | status = "okay"; |
91 | 88 | ||
92 | barebox@0 { | 89 | nand_controller: nand-controller { |
93 | label = "barebox"; | 90 | status = "okay"; |
94 | reg = <0x0 0x58000>; | 91 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
95 | }; | 92 | pinctrl-names = "default"; |
96 | 93 | ||
97 | u_boot_env@58000 { | 94 | nand@3 { |
98 | label = "u_boot_env"; | 95 | reg = <0x3 0x0 0x800000>; |
99 | reg = <0x58000 0x8000>; | 96 | rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>; |
100 | }; | 97 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
101 | 98 | nand-bus-width = <8>; | |
102 | ubi@60000 { | 99 | nand-ecc-mode = "soft"; |
103 | label = "ubi"; | 100 | nand-on-flash-bbt; |
104 | reg = <0x60000 0x1FA0000>; | 101 | label = "atmel_nand"; |
102 | |||
103 | partitions { | ||
104 | compatible = "fixed-partitions"; | ||
105 | #address-cells = <1>; | ||
106 | #size-cells = <1>; | ||
107 | |||
108 | barebox@0 { | ||
109 | label = "barebox"; | ||
110 | reg = <0x0 0x58000>; | ||
111 | }; | ||
112 | |||
113 | u_boot_env@58000 { | ||
114 | label = "u_boot_env"; | ||
115 | reg = <0x58000 0x8000>; | ||
116 | }; | ||
117 | |||
118 | ubi@60000 { | ||
119 | label = "ubi"; | ||
120 | reg = <0x60000 0x1FA0000>; | ||
121 | }; | ||
122 | }; | ||
123 | }; | ||
105 | }; | 124 | }; |
106 | }; | 125 | }; |
107 | 126 | ||
diff --git a/arch/arm/boot/dts/at91-cosino.dtsi b/arch/arm/boot/dts/at91-cosino.dtsi index 02d8ef43de3a..89cde175154e 100644 --- a/arch/arm/boot/dts/at91-cosino.dtsi +++ b/arch/arm/boot/dts/at91-cosino.dtsi | |||
@@ -82,38 +82,61 @@ | |||
82 | }; | 82 | }; |
83 | }; | 83 | }; |
84 | 84 | ||
85 | nand0: nand@40000000 { | 85 | ebi: ebi@10000000 { |
86 | nand-bus-width = <8>; | 86 | pinctrl-0 = <&pinctrl_ebi_addr_nand |
87 | nand-ecc-mode = "hw"; | 87 | &pinctrl_ebi_data_0_7>; |
88 | atmel,has-pmecc; /* Enable PMECC */ | 88 | pinctrl-names = "default"; |
89 | atmel,pmecc-cap = <4>; | ||
90 | atmel,pmecc-sector-size = <512>; | ||
91 | nand-on-flash-bbt; | ||
92 | status = "okay"; | 89 | status = "okay"; |
93 | 90 | ||
94 | at91bootstrap@0 { | 91 | nand_controller: nand-controller { |
95 | label = "at91bootstrap"; | 92 | status = "okay"; |
96 | reg = <0x0 0x40000>; | 93 | pinctrl-0 = <&pinctrl_nand_oe_we |
97 | }; | 94 | &pinctrl_nand_cs |
98 | 95 | &pinctrl_nand_rb>; | |
99 | uboot@40000 { | 96 | pinctrl-names = "default"; |
100 | label = "u-boot"; | 97 | |
101 | reg = <0x40000 0x80000>; | 98 | nand@3 { |
102 | }; | 99 | reg = <0x3 0x0 0x800000>; |
103 | 100 | rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>; | |
104 | ubootenv@c0000 { | 101 | cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>; |
105 | label = "U-Boot Env"; | 102 | nand-bus-width = <8>; |
106 | reg = <0xc0000 0x140000>; | 103 | nand-ecc-mode = "hw"; |
107 | }; | 104 | nand-ecc-strength = <4>; |
108 | 105 | nand-ecc-step-size = <512>; | |
109 | kernel@200000 { | 106 | nand-on-flash-bbt; |
110 | label = "kernel"; | 107 | label = "atmel_nand"; |
111 | reg = <0x200000 0x600000>; | 108 | |
112 | }; | 109 | partitions { |
113 | 110 | compatible = "fixed-partitions"; | |
114 | rootfs@800000 { | 111 | #address-cells = <1>; |
115 | label = "rootfs"; | 112 | #size-cells = <1>; |
116 | reg = <0x800000 0x0f800000>; | 113 | |
114 | at91bootstrap@0 { | ||
115 | label = "at91bootstrap"; | ||
116 | reg = <0x0 0x40000>; | ||
117 | }; | ||
118 | |||
119 | uboot@40000 { | ||
120 | label = "u-boot"; | ||
121 | reg = <0x40000 0x80000>; | ||
122 | }; | ||
123 | |||
124 | ubootenv@c0000 { | ||
125 | label = "U-Boot Env"; | ||
126 | reg = <0xc0000 0x140000>; | ||
127 | }; | ||
128 | |||
129 | kernel@200000 { | ||
130 | label = "kernel"; | ||
131 | reg = <0x200000 0x600000>; | ||
132 | }; | ||
133 | |||
134 | rootfs@800000 { | ||
135 | label = "rootfs"; | ||
136 | reg = <0x800000 0x0f800000>; | ||
137 | }; | ||
138 | }; | ||
139 | }; | ||
117 | }; | 140 | }; |
118 | }; | 141 | }; |
119 | }; | 142 | }; |
diff --git a/arch/arm/boot/dts/at91-kizbox.dts b/arch/arm/boot/dts/at91-kizbox.dts index b4f147c193fd..1f31df846d61 100644 --- a/arch/arm/boot/dts/at91-kizbox.dts +++ b/arch/arm/boot/dts/at91-kizbox.dts | |||
@@ -59,19 +59,39 @@ | |||
59 | status = "okay"; | 59 | status = "okay"; |
60 | }; | 60 | }; |
61 | 61 | ||
62 | nand0: nand@40000000 { | 62 | ebi: ebi@10000000 { |
63 | nand-bus-width = <8>; | ||
64 | nand-ecc-mode = "soft"; | ||
65 | status = "okay"; | 63 | status = "okay"; |
66 | 64 | ||
67 | bootstrap@0 { | 65 | nand_controller: nand-controller { |
68 | label = "bootstrap"; | 66 | status = "okay"; |
69 | reg = <0x0 0x20000>; | 67 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
70 | }; | 68 | pinctrl-names = "default"; |
71 | 69 | ||
72 | ubi@20000 { | 70 | nand@3 { |
73 | label = "ubi"; | 71 | reg = <0x3 0x0 0x800000>; |
74 | reg = <0x20000 0x7fe0000>; | 72 | rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>; |
73 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; | ||
74 | nand-bus-width = <8>; | ||
75 | nand-ecc-mode = "soft"; | ||
76 | nand-on-flash-bbt; | ||
77 | label = "atmel_nand"; | ||
78 | |||
79 | partitions { | ||
80 | compatible = "fixed-partitions"; | ||
81 | #address-cells = <1>; | ||
82 | #size-cells = <1>; | ||
83 | |||
84 | bootstrap@0 { | ||
85 | label = "bootstrap"; | ||
86 | reg = <0x0 0x20000>; | ||
87 | }; | ||
88 | |||
89 | ubi@20000 { | ||
90 | label = "ubi"; | ||
91 | reg = <0x20000 0x7fe0000>; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
75 | }; | 95 | }; |
76 | }; | 96 | }; |
77 | }; | 97 | }; |
diff --git a/arch/arm/boot/dts/at91-kizbox2.dts b/arch/arm/boot/dts/at91-kizbox2.dts index 50a14568f094..4372c0287c1c 100644 --- a/arch/arm/boot/dts/at91-kizbox2.dts +++ b/arch/arm/boot/dts/at91-kizbox2.dts | |||
@@ -141,23 +141,40 @@ | |||
141 | status = "okay"; | 141 | status = "okay"; |
142 | }; | 142 | }; |
143 | 143 | ||
144 | nand0: nand@60000000 { | 144 | ebi: ebi@10000000 { |
145 | nand-bus-width = <8>; | 145 | pinctrl-0 = <&pinctrl_ebi_nand_addr>; |
146 | nand-ecc-mode = "hw"; | 146 | pinctrl-names = "default"; |
147 | atmel,has-pmecc; | ||
148 | atmel,pmecc-cap = <4>; | ||
149 | atmel,pmecc-sector-size = <512>; | ||
150 | nand-on-flash-bbt; | ||
151 | status = "okay"; | 147 | status = "okay"; |
152 | 148 | ||
153 | bootstrap@0 { | 149 | nand_controller: nand-controller { |
154 | label = "bootstrap"; | 150 | status = "okay"; |
155 | reg = <0x0 0x20000>; | 151 | |
156 | }; | 152 | nand@3 { |
153 | reg = <0x3 0x0 0x2>; | ||
154 | atmel,rb = <0>; | ||
155 | nand-bus-width = <8>; | ||
156 | nand-ecc-mode = "hw"; | ||
157 | nand-ecc-strength = <4>; | ||
158 | nand-ecc-step-size = <512>; | ||
159 | nand-on-flash-bbt; | ||
160 | label = "atmel_nand"; | ||
161 | |||
162 | partitions { | ||
163 | compatible = "fixed-partitions"; | ||
164 | #address-cells = <1>; | ||
165 | #size-cells = <1>; | ||
166 | |||
167 | bootstrap@0 { | ||
168 | label = "bootstrap"; | ||
169 | reg = <0x0 0x20000>; | ||
170 | }; | ||
157 | 171 | ||
158 | ubi@20000 { | 172 | ubi@20000 { |
159 | label = "ubi"; | 173 | label = "ubi"; |
160 | reg = <0x20000 0x7fe0000>; | 174 | reg = <0x20000 0x7fe0000>; |
175 | }; | ||
176 | }; | ||
177 | }; | ||
161 | }; | 178 | }; |
162 | }; | 179 | }; |
163 | }; | 180 | }; |
diff --git a/arch/arm/boot/dts/at91-kizboxmini.dts b/arch/arm/boot/dts/at91-kizboxmini.dts index 9682d105d4d8..33238fcb6d0b 100644 --- a/arch/arm/boot/dts/at91-kizboxmini.dts +++ b/arch/arm/boot/dts/at91-kizboxmini.dts | |||
@@ -68,6 +68,49 @@ | |||
68 | status = "okay"; | 68 | status = "okay"; |
69 | }; | 69 | }; |
70 | 70 | ||
71 | ebi: ebi@10000000 { | ||
72 | pinctrl-0 = <&pinctrl_ebi_addr_nand | ||
73 | &pinctrl_ebi_data_0_7>; | ||
74 | pinctrl-names = "default"; | ||
75 | status = "okay"; | ||
76 | |||
77 | nand_controller: nand-controller { | ||
78 | status = "okay"; | ||
79 | pinctrl-0 = <&pinctrl_nand_oe_we | ||
80 | &pinctrl_nand_cs | ||
81 | &pinctrl_nand_rb>; | ||
82 | pinctrl-names = "default"; | ||
83 | |||
84 | nand@3 { | ||
85 | reg = <0x3 0x0 0x800000>; | ||
86 | rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>; | ||
87 | cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>; | ||
88 | nand-bus-width = <8>; | ||
89 | nand-ecc-mode = "hw"; | ||
90 | nand-ecc-strength = <4>; | ||
91 | nand-ecc-step-size = <512>; | ||
92 | nand-on-flash-bbt; | ||
93 | label = "atmel_nand"; | ||
94 | |||
95 | partitions { | ||
96 | compatible = "fixed-partitions"; | ||
97 | #address-cells = <1>; | ||
98 | #size-cells = <1>; | ||
99 | |||
100 | bootstrap@0 { | ||
101 | label = "bootstrap"; | ||
102 | reg = <0x0 0x20000>; | ||
103 | }; | ||
104 | |||
105 | ubi@20000 { | ||
106 | label = "ubi"; | ||
107 | reg = <0x20000 0x7fe0000>; | ||
108 | }; | ||
109 | }; | ||
110 | }; | ||
111 | }; | ||
112 | }; | ||
113 | |||
71 | nand0: nand@40000000 { | 114 | nand0: nand@40000000 { |
72 | nand-bus-width = <8>; | 115 | nand-bus-width = <8>; |
73 | nand-ecc-mode = "hw"; | 116 | nand-ecc-mode = "hw"; |
@@ -77,15 +120,6 @@ | |||
77 | nand-on-flash-bbt; | 120 | nand-on-flash-bbt; |
78 | status = "okay"; | 121 | status = "okay"; |
79 | 122 | ||
80 | bootstrap@0 { | ||
81 | label = "bootstrap"; | ||
82 | reg = <0x0 0x20000>; | ||
83 | }; | ||
84 | |||
85 | ubi@20000 { | ||
86 | label = "ubi"; | ||
87 | reg = <0x20000 0x7fe0000>; | ||
88 | }; | ||
89 | }; | 123 | }; |
90 | }; | 124 | }; |
91 | 125 | ||
diff --git a/arch/arm/boot/dts/at91-linea.dtsi b/arch/arm/boot/dts/at91-linea.dtsi index 0721c8472509..87e5090fb4c4 100644 --- a/arch/arm/boot/dts/at91-linea.dtsi +++ b/arch/arm/boot/dts/at91-linea.dtsi | |||
@@ -31,19 +31,30 @@ | |||
31 | status = "okay"; | 31 | status = "okay"; |
32 | 32 | ||
33 | eeprom@51 { | 33 | eeprom@51 { |
34 | compatible = "st,24c64"; | 34 | compatible = "st,24c64", "atmel,24c64"; |
35 | reg = <0x51>; | 35 | reg = <0x51>; |
36 | pagesize = <32>; | 36 | pagesize = <32>; |
37 | }; | 37 | }; |
38 | }; | 38 | }; |
39 | 39 | ||
40 | &nand0 { | 40 | &ebi { |
41 | pinctrl-0 = <&pinctrl_ebi_nand_addr>; | ||
42 | pinctrl-names = "default"; | ||
41 | status = "okay"; | 43 | status = "okay"; |
44 | }; | ||
45 | |||
42 | 46 | ||
43 | nand-bus-width = <8>; | 47 | &nand_controller { |
44 | nand-ecc-mode = "hw"; | 48 | status = "okay"; |
45 | atmel,has-pmecc; | 49 | |
46 | atmel,pmecc-cap = <4>; | 50 | nand: nand@3 { |
47 | atmel,pmecc-sector-size = <512>; | 51 | reg = <0x3 0x0 0x2>; |
48 | nand-on-flash-bbt; | 52 | atmel,rb = <0>; |
53 | nand-bus-width = <8>; | ||
54 | nand-ecc-mode = "hw"; | ||
55 | nand-ecc-strength = <4>; | ||
56 | nand-ecc-step-size = <512>; | ||
57 | nand-on-flash-bbt; | ||
58 | label = "atmel_nand"; | ||
59 | }; | ||
49 | }; | 60 | }; |
diff --git a/arch/arm/boot/dts/at91-qil_a9260.dts b/arch/arm/boot/dts/at91-qil_a9260.dts index 8f019184fccf..f46352790a41 100644 --- a/arch/arm/boot/dts/at91-qil_a9260.dts +++ b/arch/arm/boot/dts/at91-qil_a9260.dts | |||
@@ -107,50 +107,69 @@ | |||
107 | status = "okay"; | 107 | status = "okay"; |
108 | }; | 108 | }; |
109 | 109 | ||
110 | nand0: nand@40000000 { | 110 | ebi: ebi@10000000 { |
111 | nand-bus-width = <8>; | ||
112 | nand-ecc-mode = "soft"; | ||
113 | nand-on-flash-bbt; | ||
114 | status = "okay"; | 111 | status = "okay"; |
115 | 112 | ||
116 | at91bootstrap@0 { | 113 | nand_controller: nand-controller { |
117 | label = "at91bootstrap"; | 114 | status = "okay"; |
118 | reg = <0x0 0x20000>; | 115 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
119 | }; | 116 | pinctrl-names = "default"; |
120 | 117 | ||
121 | barebox@20000 { | 118 | nand@3 { |
122 | label = "barebox"; | 119 | reg = <0x3 0x0 0x800000>; |
123 | reg = <0x20000 0x40000>; | 120 | rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>; |
124 | }; | 121 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
125 | 122 | nand-bus-width = <8>; | |
126 | bareboxenv@60000 { | 123 | nand-ecc-mode = "soft"; |
127 | label = "bareboxenv"; | 124 | nand-on-flash-bbt; |
128 | reg = <0x60000 0x20000>; | 125 | label = "atmel_nand"; |
129 | }; | 126 | |
130 | 127 | partitions { | |
131 | bareboxenv2@80000 { | 128 | compatible = "fixed-partitions"; |
132 | label = "bareboxenv2"; | 129 | #address-cells = <1>; |
133 | reg = <0x80000 0x20000>; | 130 | #size-cells = <1>; |
134 | }; | 131 | |
135 | 132 | at91bootstrap@0 { | |
136 | oftree@a0000 { | 133 | label = "at91bootstrap"; |
137 | label = "oftree"; | 134 | reg = <0x0 0x20000>; |
138 | reg = <0xa0000 0x20000>; | 135 | }; |
139 | }; | 136 | |
140 | 137 | barebox@20000 { | |
141 | kernel@c0000 { | 138 | label = "barebox"; |
142 | label = "kernel"; | 139 | reg = <0x20000 0x40000>; |
143 | reg = <0xc0000 0x400000>; | 140 | }; |
144 | }; | 141 | |
145 | 142 | bareboxenv@60000 { | |
146 | rootfs@4c0000 { | 143 | label = "bareboxenv"; |
147 | label = "rootfs"; | 144 | reg = <0x60000 0x20000>; |
148 | reg = <0x4c0000 0x7800000>; | 145 | }; |
149 | }; | 146 | |
150 | 147 | bareboxenv2@80000 { | |
151 | data@7cc0000 { | 148 | label = "bareboxenv2"; |
152 | label = "data"; | 149 | reg = <0x80000 0x20000>; |
153 | reg = <0x7cc0000 0x8340000>; | 150 | }; |
151 | |||
152 | oftree@a0000 { | ||
153 | label = "oftree"; | ||
154 | reg = <0xa0000 0x20000>; | ||
155 | }; | ||
156 | |||
157 | kernel@c0000 { | ||
158 | label = "kernel"; | ||
159 | reg = <0xc0000 0x400000>; | ||
160 | }; | ||
161 | |||
162 | rootfs@4c0000 { | ||
163 | label = "rootfs"; | ||
164 | reg = <0x4c0000 0x7800000>; | ||
165 | }; | ||
166 | |||
167 | data@7cc0000 { | ||
168 | label = "data"; | ||
169 | reg = <0x7cc0000 0x8340000>; | ||
170 | }; | ||
171 | }; | ||
172 | }; | ||
154 | }; | 173 | }; |
155 | }; | 174 | }; |
156 | }; | 175 | }; |
diff --git a/arch/arm/boot/dts/at91-sama5d2_xplained.dts b/arch/arm/boot/dts/at91-sama5d2_xplained.dts index 0bef9e0b89c6..2e2c3d1a1fa2 100644 --- a/arch/arm/boot/dts/at91-sama5d2_xplained.dts +++ b/arch/arm/boot/dts/at91-sama5d2_xplained.dts | |||
@@ -56,10 +56,6 @@ | |||
56 | stdout-path = "serial0:115200n8"; | 56 | stdout-path = "serial0:115200n8"; |
57 | }; | 57 | }; |
58 | 58 | ||
59 | memory { | ||
60 | reg = <0x20000000 0x80000>; | ||
61 | }; | ||
62 | |||
63 | clocks { | 59 | clocks { |
64 | slow_xtal { | 60 | slow_xtal { |
65 | clock-frequency = <32768>; | 61 | clock-frequency = <32768>; |
@@ -227,6 +223,10 @@ | |||
227 | }; | 223 | }; |
228 | }; | 224 | }; |
229 | 225 | ||
226 | pwm0: pwm@f802c000 { | ||
227 | status = "okay"; | ||
228 | }; | ||
229 | |||
230 | flx0: flexcom@f8034000 { | 230 | flx0: flexcom@f8034000 { |
231 | atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; | 231 | atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; |
232 | status = "disabled"; /* conflict with ISC_D2 & ISC_D3 data pins */ | 232 | status = "disabled"; /* conflict with ISC_D2 & ISC_D3 data pins */ |
@@ -258,6 +258,12 @@ | |||
258 | status = "okay"; | 258 | status = "okay"; |
259 | }; | 259 | }; |
260 | 260 | ||
261 | can0: can@f8054000 { | ||
262 | pinctrl-names = "default"; | ||
263 | pinctrl-0 = <&pinctrl_can0_default>; | ||
264 | status = "okay"; | ||
265 | }; | ||
266 | |||
261 | uart3: serial@fc008000 { | 267 | uart3: serial@fc008000 { |
262 | atmel,use-dma-rx; | 268 | atmel,use-dma-rx; |
263 | atmel,use-dma-tx; | 269 | atmel,use-dma-tx; |
@@ -322,6 +328,18 @@ | |||
322 | bias-disable; | 328 | bias-disable; |
323 | }; | 329 | }; |
324 | 330 | ||
331 | pinctrl_can0_default: can0_default { | ||
332 | pinmux = <PIN_PC10__CANTX0>, | ||
333 | <PIN_PC11__CANRX0>; | ||
334 | bias-disable; | ||
335 | }; | ||
336 | |||
337 | pinctrl_can1_default: can1_default { | ||
338 | pinmux = <PIN_PC26__CANTX1>, | ||
339 | <PIN_PC27__CANRX1>; | ||
340 | bias-disable; | ||
341 | }; | ||
342 | |||
325 | pinctrl_charger_chglev: charger_chglev { | 343 | pinctrl_charger_chglev: charger_chglev { |
326 | pinmux = <PIN_PA12__GPIO>; | 344 | pinmux = <PIN_PA12__GPIO>; |
327 | bias-disable; | 345 | bias-disable; |
@@ -469,6 +487,12 @@ | |||
469 | }; | 487 | }; |
470 | 488 | ||
471 | }; | 489 | }; |
490 | |||
491 | can1: can@fc050000 { | ||
492 | pinctrl-names = "default"; | ||
493 | pinctrl-0 = <&pinctrl_can1_default>; | ||
494 | status = "okay"; | ||
495 | }; | ||
472 | }; | 496 | }; |
473 | }; | 497 | }; |
474 | 498 | ||
diff --git a/arch/arm/boot/dts/at91-sama5d3_xplained.dts b/arch/arm/boot/dts/at91-sama5d3_xplained.dts index 5a53fcf542ab..3af088d2cba7 100644 --- a/arch/arm/boot/dts/at91-sama5d3_xplained.dts +++ b/arch/arm/boot/dts/at91-sama5d3_xplained.dts | |||
@@ -235,46 +235,6 @@ | |||
235 | }; | 235 | }; |
236 | }; | 236 | }; |
237 | 237 | ||
238 | nand0: nand@60000000 { | ||
239 | nand-bus-width = <8>; | ||
240 | nand-ecc-mode = "hw"; | ||
241 | atmel,has-pmecc; | ||
242 | atmel,pmecc-cap = <4>; | ||
243 | atmel,pmecc-sector-size = <512>; | ||
244 | nand-on-flash-bbt; | ||
245 | status = "okay"; | ||
246 | |||
247 | at91bootstrap@0 { | ||
248 | label = "at91bootstrap"; | ||
249 | reg = <0x0 0x40000>; | ||
250 | }; | ||
251 | |||
252 | bootloader@40000 { | ||
253 | label = "bootloader"; | ||
254 | reg = <0x40000 0x80000>; | ||
255 | }; | ||
256 | |||
257 | bootloaderenv@c0000 { | ||
258 | label = "bootloader env"; | ||
259 | reg = <0xc0000 0xc0000>; | ||
260 | }; | ||
261 | |||
262 | dtb@180000 { | ||
263 | label = "device tree"; | ||
264 | reg = <0x180000 0x80000>; | ||
265 | }; | ||
266 | |||
267 | kernel@200000 { | ||
268 | label = "kernel"; | ||
269 | reg = <0x200000 0x600000>; | ||
270 | }; | ||
271 | |||
272 | rootfs@800000 { | ||
273 | label = "rootfs"; | ||
274 | reg = <0x800000 0x0f800000>; | ||
275 | }; | ||
276 | }; | ||
277 | |||
278 | usb0: gadget@00500000 { | 238 | usb0: gadget@00500000 { |
279 | atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */ | 239 | atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */ |
280 | pinctrl-names = "default"; | 240 | pinctrl-names = "default"; |
@@ -294,6 +254,63 @@ | |||
294 | usb2: ehci@00700000 { | 254 | usb2: ehci@00700000 { |
295 | status = "okay"; | 255 | status = "okay"; |
296 | }; | 256 | }; |
257 | |||
258 | ebi: ebi@10000000 { | ||
259 | pinctrl-0 = <&pinctrl_ebi_nand_addr>; | ||
260 | pinctrl-names = "default"; | ||
261 | status = "okay"; | ||
262 | |||
263 | nand_controller: nand-controller { | ||
264 | status = "okay"; | ||
265 | |||
266 | nand@3 { | ||
267 | reg = <0x3 0x0 0x2>; | ||
268 | atmel,rb = <0>; | ||
269 | nand-bus-width = <8>; | ||
270 | nand-ecc-mode = "hw"; | ||
271 | nand-ecc-strength = <4>; | ||
272 | nand-ecc-step-size = <512>; | ||
273 | nand-on-flash-bbt; | ||
274 | label = "atmel_nand"; | ||
275 | |||
276 | partitions { | ||
277 | compatible = "fixed-partitions"; | ||
278 | #address-cells = <1>; | ||
279 | #size-cells = <1>; | ||
280 | |||
281 | at91bootstrap@0 { | ||
282 | label = "at91bootstrap"; | ||
283 | reg = <0x0 0x40000>; | ||
284 | }; | ||
285 | |||
286 | bootloader@40000 { | ||
287 | label = "bootloader"; | ||
288 | reg = <0x40000 0x80000>; | ||
289 | }; | ||
290 | |||
291 | bootloaderenv@c0000 { | ||
292 | label = "bootloader env"; | ||
293 | reg = <0xc0000 0xc0000>; | ||
294 | }; | ||
295 | |||
296 | dtb@180000 { | ||
297 | label = "device tree"; | ||
298 | reg = <0x180000 0x80000>; | ||
299 | }; | ||
300 | |||
301 | kernel@200000 { | ||
302 | label = "kernel"; | ||
303 | reg = <0x200000 0x600000>; | ||
304 | }; | ||
305 | |||
306 | rootfs@800000 { | ||
307 | label = "rootfs"; | ||
308 | reg = <0x800000 0x0f800000>; | ||
309 | }; | ||
310 | }; | ||
311 | }; | ||
312 | }; | ||
313 | }; | ||
297 | }; | 314 | }; |
298 | 315 | ||
299 | vcc_mmc0_reg: fixedregulator_mmc0 { | 316 | vcc_mmc0_reg: fixedregulator_mmc0 { |
diff --git a/arch/arm/boot/dts/at91-sama5d4_ma5d4.dtsi b/arch/arm/boot/dts/at91-sama5d4_ma5d4.dtsi index b5a5a91bc2ef..b813fdfa2842 100644 --- a/arch/arm/boot/dts/at91-sama5d4_ma5d4.dtsi +++ b/arch/arm/boot/dts/at91-sama5d4_ma5d4.dtsi | |||
@@ -75,7 +75,7 @@ | |||
75 | reg = <0>; | 75 | reg = <0>; |
76 | clocks = <&clk20m>; | 76 | clocks = <&clk20m>; |
77 | interrupt-parent = <&pioE>; | 77 | interrupt-parent = <&pioE>; |
78 | interrupts = <6 GPIO_ACTIVE_LOW>; | 78 | interrupts = <6 IRQ_TYPE_EDGE_RISING>; |
79 | spi-max-frequency = <10000000>; | 79 | spi-max-frequency = <10000000>; |
80 | }; | 80 | }; |
81 | 81 | ||
@@ -84,7 +84,7 @@ | |||
84 | reg = <1>; | 84 | reg = <1>; |
85 | clocks = <&clk20m>; | 85 | clocks = <&clk20m>; |
86 | interrupt-parent = <&pioE>; | 86 | interrupt-parent = <&pioE>; |
87 | interrupts = <7 GPIO_ACTIVE_LOW>; | 87 | interrupts = <7 IRQ_TYPE_EDGE_RISING>; |
88 | spi-max-frequency = <10000000>; | 88 | spi-max-frequency = <10000000>; |
89 | }; | 89 | }; |
90 | }; | 90 | }; |
diff --git a/arch/arm/boot/dts/at91-sama5d4_xplained.dts b/arch/arm/boot/dts/at91-sama5d4_xplained.dts index 5ab14cedb1db..cf712444b2c2 100644 --- a/arch/arm/boot/dts/at91-sama5d4_xplained.dts +++ b/arch/arm/boot/dts/at91-sama5d4_xplained.dts | |||
@@ -190,41 +190,60 @@ | |||
190 | status = "okay"; | 190 | status = "okay"; |
191 | }; | 191 | }; |
192 | 192 | ||
193 | nand0: nand@80000000 { | 193 | ebi: ebi@10000000 { |
194 | nand-bus-width = <8>; | 194 | pinctrl-0 = <&pinctrl_ebi_cs3 &pinctrl_ebi_nrd_nandoe |
195 | nand-ecc-mode = "hw"; | 195 | &pinctrl_ebi_nwe_nandwe &pinctrl_ebi_nandrdy |
196 | nand-on-flash-bbt; | 196 | &pinctrl_ebi_data_0_7 &pinctrl_ebi_nand_addr>; |
197 | atmel,has-pmecc; | 197 | pinctrl-names = "default"; |
198 | status = "okay"; | 198 | status = "okay"; |
199 | 199 | ||
200 | at91bootstrap@0 { | 200 | nand_controller: nand-controller { |
201 | label = "at91bootstrap"; | 201 | status = "okay"; |
202 | reg = <0x0 0x40000>; | ||
203 | }; | ||
204 | |||
205 | bootloader@40000 { | ||
206 | label = "bootloader"; | ||
207 | reg = <0x40000 0x80000>; | ||
208 | }; | ||
209 | |||
210 | bootloaderenv@c0000 { | ||
211 | label = "bootloader env"; | ||
212 | reg = <0xc0000 0xc0000>; | ||
213 | }; | ||
214 | |||
215 | dtb@180000 { | ||
216 | label = "device tree"; | ||
217 | reg = <0x180000 0x80000>; | ||
218 | }; | ||
219 | |||
220 | kernel@200000 { | ||
221 | label = "kernel"; | ||
222 | reg = <0x200000 0x600000>; | ||
223 | }; | ||
224 | 202 | ||
225 | rootfs@800000 { | 203 | nand@3 { |
226 | label = "rootfs"; | 204 | reg = <0x3 0x0 0x2>; |
227 | reg = <0x800000 0x0f800000>; | 205 | atmel,rb = <0>; |
206 | nand-bus-width = <8>; | ||
207 | nand-ecc-mode = "hw"; | ||
208 | nand-on-flash-bbt; | ||
209 | label = "atmel_nand"; | ||
210 | |||
211 | partitions { | ||
212 | compatible = "fixed-partitions"; | ||
213 | #address-cells = <1>; | ||
214 | #size-cells = <1>; | ||
215 | |||
216 | at91bootstrap@0 { | ||
217 | label = "at91bootstrap"; | ||
218 | reg = <0x0 0x40000>; | ||
219 | }; | ||
220 | |||
221 | bootloader@40000 { | ||
222 | label = "bootloader"; | ||
223 | reg = <0x40000 0x80000>; | ||
224 | }; | ||
225 | |||
226 | bootloaderenv@c0000 { | ||
227 | label = "bootloader env"; | ||
228 | reg = <0xc0000 0xc0000>; | ||
229 | }; | ||
230 | |||
231 | dtb@180000 { | ||
232 | label = "device tree"; | ||
233 | reg = <0x180000 0x80000>; | ||
234 | }; | ||
235 | |||
236 | kernel@200000 { | ||
237 | label = "kernel"; | ||
238 | reg = <0x200000 0x600000>; | ||
239 | }; | ||
240 | |||
241 | rootfs@800000 { | ||
242 | label = "rootfs"; | ||
243 | reg = <0x800000 0x0f800000>; | ||
244 | }; | ||
245 | }; | ||
246 | }; | ||
228 | }; | 247 | }; |
229 | }; | 248 | }; |
230 | }; | 249 | }; |
diff --git a/arch/arm/boot/dts/at91-sama5d4ek.dts b/arch/arm/boot/dts/at91-sama5d4ek.dts index f8b96cef5e1a..bae5248f126e 100644 --- a/arch/arm/boot/dts/at91-sama5d4ek.dts +++ b/arch/arm/boot/dts/at91-sama5d4ek.dts | |||
@@ -236,41 +236,60 @@ | |||
236 | status = "okay"; | 236 | status = "okay"; |
237 | }; | 237 | }; |
238 | 238 | ||
239 | nand0: nand@80000000 { | 239 | ebi: ebi@10000000 { |
240 | nand-bus-width = <8>; | 240 | pinctrl-0 = <&pinctrl_ebi_cs3 &pinctrl_ebi_nrd_nandoe |
241 | nand-ecc-mode = "hw"; | 241 | &pinctrl_ebi_nwe_nandwe &pinctrl_ebi_nandrdy |
242 | nand-on-flash-bbt; | 242 | &pinctrl_ebi_data_0_7 &pinctrl_ebi_nand_addr>; |
243 | atmel,has-pmecc; | 243 | pinctrl-names = "default"; |
244 | status = "okay"; | 244 | status = "okay"; |
245 | 245 | ||
246 | at91bootstrap@0 { | 246 | nand_controller: nand-controller { |
247 | label = "at91bootstrap"; | 247 | status = "okay"; |
248 | reg = <0x0 0x40000>; | ||
249 | }; | ||
250 | |||
251 | bootloader@40000 { | ||
252 | label = "bootloader"; | ||
253 | reg = <0x40000 0x80000>; | ||
254 | }; | ||
255 | |||
256 | bootloaderenv@c0000 { | ||
257 | label = "bootloader env"; | ||
258 | reg = <0xc0000 0xc0000>; | ||
259 | }; | ||
260 | |||
261 | dtb@180000 { | ||
262 | label = "device tree"; | ||
263 | reg = <0x180000 0x80000>; | ||
264 | }; | ||
265 | |||
266 | kernel@200000 { | ||
267 | label = "kernel"; | ||
268 | reg = <0x200000 0x600000>; | ||
269 | }; | ||
270 | 248 | ||
271 | rootfs@800000 { | 249 | nand@3 { |
272 | label = "rootfs"; | 250 | reg = <0x3 0x0 0x2>; |
273 | reg = <0x800000 0x0f800000>; | 251 | atmel,rb = <0>; |
252 | nand-bus-width = <8>; | ||
253 | nand-ecc-mode = "hw"; | ||
254 | nand-on-flash-bbt; | ||
255 | label = "atmel_nand"; | ||
256 | |||
257 | partitions { | ||
258 | compatible = "fixed-partitions"; | ||
259 | #address-cells = <1>; | ||
260 | #size-cells = <1>; | ||
261 | |||
262 | at91bootstrap@0 { | ||
263 | label = "at91bootstrap"; | ||
264 | reg = <0x0 0x40000>; | ||
265 | }; | ||
266 | |||
267 | bootloader@40000 { | ||
268 | label = "bootloader"; | ||
269 | reg = <0x40000 0x80000>; | ||
270 | }; | ||
271 | |||
272 | bootloaderenv@c0000 { | ||
273 | label = "bootloader env"; | ||
274 | reg = <0xc0000 0xc0000>; | ||
275 | }; | ||
276 | |||
277 | dtb@180000 { | ||
278 | label = "device tree"; | ||
279 | reg = <0x180000 0x80000>; | ||
280 | }; | ||
281 | |||
282 | kernel@200000 { | ||
283 | label = "kernel"; | ||
284 | reg = <0x200000 0x600000>; | ||
285 | }; | ||
286 | |||
287 | rootfs@800000 { | ||
288 | label = "rootfs"; | ||
289 | reg = <0x800000 0x0f800000>; | ||
290 | }; | ||
291 | }; | ||
292 | }; | ||
274 | }; | 293 | }; |
275 | }; | 294 | }; |
276 | }; | 295 | }; |
diff --git a/arch/arm/boot/dts/at91-tse850-3.dts b/arch/arm/boot/dts/at91-tse850-3.dts index 498fba3e52b5..5f29010cdbd8 100644 --- a/arch/arm/boot/dts/at91-tse850-3.dts +++ b/arch/arm/boot/dts/at91-tse850-3.dts | |||
@@ -161,45 +161,51 @@ | |||
161 | }; | 161 | }; |
162 | }; | 162 | }; |
163 | 163 | ||
164 | &nand0 { | 164 | &nand { |
165 | at91bootstrap@0 { | 165 | partitions { |
166 | label = "at91bootstrap"; | 166 | compatible = "fixed-partitions"; |
167 | reg = <0x0 0x40000>; | 167 | #address-cells = <1>; |
168 | }; | 168 | #size-cells = <1>; |
169 | |||
170 | at91bootstrap@0 { | ||
171 | label = "at91bootstrap"; | ||
172 | reg = <0x0 0x40000>; | ||
173 | }; | ||
169 | 174 | ||
170 | barebox@40000 { | 175 | barebox@40000 { |
171 | label = "bootloader"; | 176 | label = "bootloader"; |
172 | reg = <0x40000 0x60000>; | 177 | reg = <0x40000 0x60000>; |
173 | }; | 178 | }; |
174 | 179 | ||
175 | bareboxenv@c0000 { | 180 | bareboxenv@c0000 { |
176 | label = "bareboxenv"; | 181 | label = "bareboxenv"; |
177 | reg = <0xc0000 0x40000>; | 182 | reg = <0xc0000 0x40000>; |
178 | }; | 183 | }; |
179 | 184 | ||
180 | bareboxenv2@100000 { | 185 | bareboxenv2@100000 { |
181 | label = "bareboxenv2"; | 186 | label = "bareboxenv2"; |
182 | reg = <0x100000 0x40000>; | 187 | reg = <0x100000 0x40000>; |
183 | }; | 188 | }; |
184 | 189 | ||
185 | oftree@180000 { | 190 | oftree@180000 { |
186 | label = "oftree"; | 191 | label = "oftree"; |
187 | reg = <0x180000 0x20000>; | 192 | reg = <0x180000 0x20000>; |
188 | }; | 193 | }; |
189 | 194 | ||
190 | kernel@200000 { | 195 | kernel@200000 { |
191 | label = "kernel"; | 196 | label = "kernel"; |
192 | reg = <0x200000 0x500000>; | 197 | reg = <0x200000 0x500000>; |
193 | }; | 198 | }; |
194 | 199 | ||
195 | rootfs@800000 { | 200 | rootfs@800000 { |
196 | label = "rootfs"; | 201 | label = "rootfs"; |
197 | reg = <0x800000 0x0f800000>; | 202 | reg = <0x800000 0x0f800000>; |
198 | }; | 203 | }; |
199 | 204 | ||
200 | ovlfs@10000000 { | 205 | ovlfs@10000000 { |
201 | label = "ovlfs"; | 206 | label = "ovlfs"; |
202 | reg = <0x10000000 0x10000000>; | 207 | reg = <0x10000000 0x10000000>; |
208 | }; | ||
203 | }; | 209 | }; |
204 | }; | 210 | }; |
205 | 211 | ||
@@ -239,7 +245,7 @@ | |||
239 | }; | 245 | }; |
240 | 246 | ||
241 | eeprom@50 { | 247 | eeprom@50 { |
242 | compatible = "nxp,24c02"; | 248 | compatible = "nxp,24c02", "atmel,24c02"; |
243 | reg = <0x50>; | 249 | reg = <0x50>; |
244 | pagesize = <16>; | 250 | pagesize = <16>; |
245 | }; | 251 | }; |
diff --git a/arch/arm/boot/dts/at91sam9260.dtsi b/arch/arm/boot/dts/at91sam9260.dtsi index 9e035b21e1b6..6582f3cca929 100644 --- a/arch/arm/boot/dts/at91sam9260.dtsi +++ b/arch/arm/boot/dts/at91sam9260.dtsi | |||
@@ -99,6 +99,16 @@ | |||
99 | reg = <0xffffea00 0x200>; | 99 | reg = <0xffffea00 0x200>; |
100 | }; | 100 | }; |
101 | 101 | ||
102 | smc: smc@ffffec00 { | ||
103 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
104 | reg = <0xffffec00 0x200>; | ||
105 | }; | ||
106 | |||
107 | matrix: matrix@ffffee00 { | ||
108 | compatible = "atmel,at91sam9260-matrix", "syscon"; | ||
109 | reg = <0xffffee00 0x200>; | ||
110 | }; | ||
111 | |||
102 | pmc: pmc@fffffc00 { | 112 | pmc: pmc@fffffc00 { |
103 | compatible = "atmel,at91sam9260-pmc", "syscon"; | 113 | compatible = "atmel,at91sam9260-pmc", "syscon"; |
104 | reg = <0xfffffc00 0x100>; | 114 | reg = <0xfffffc00 0x100>; |
@@ -522,10 +532,14 @@ | |||
522 | }; | 532 | }; |
523 | 533 | ||
524 | nand { | 534 | nand { |
525 | pinctrl_nand: nand-0 { | 535 | pinctrl_nand_rb: nand-rb-0 { |
536 | atmel,pins = | ||
537 | <AT91_PIOC 13 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | ||
538 | }; | ||
539 | |||
540 | pinctrl_nand_cs: nand-cs-0 { | ||
526 | atmel,pins = | 541 | atmel,pins = |
527 | <AT91_PIOC 13 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PC13 gpio RDY pin pull_up */ | 542 | <AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
528 | AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PC14 gpio enable pin pull_up */ | ||
529 | }; | 543 | }; |
530 | }; | 544 | }; |
531 | 545 | ||
@@ -985,24 +999,6 @@ | |||
985 | }; | 999 | }; |
986 | }; | 1000 | }; |
987 | 1001 | ||
988 | nand0: nand@40000000 { | ||
989 | compatible = "atmel,at91rm9200-nand"; | ||
990 | #address-cells = <1>; | ||
991 | #size-cells = <1>; | ||
992 | reg = <0x40000000 0x10000000 | ||
993 | 0xffffe800 0x200 | ||
994 | >; | ||
995 | atmel,nand-addr-offset = <21>; | ||
996 | atmel,nand-cmd-offset = <22>; | ||
997 | pinctrl-names = "default"; | ||
998 | pinctrl-0 = <&pinctrl_nand>; | ||
999 | gpios = <&pioC 13 GPIO_ACTIVE_HIGH | ||
1000 | &pioC 14 GPIO_ACTIVE_HIGH | ||
1001 | 0 | ||
1002 | >; | ||
1003 | status = "disabled"; | ||
1004 | }; | ||
1005 | |||
1006 | usb0: ohci@500000 { | 1002 | usb0: ohci@500000 { |
1007 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; | 1003 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; |
1008 | reg = <0x00500000 0x100000>; | 1004 | reg = <0x00500000 0x100000>; |
@@ -1011,6 +1007,33 @@ | |||
1011 | clock-names = "ohci_clk", "hclk", "uhpck"; | 1007 | clock-names = "ohci_clk", "hclk", "uhpck"; |
1012 | status = "disabled"; | 1008 | status = "disabled"; |
1013 | }; | 1009 | }; |
1010 | |||
1011 | ebi: ebi@10000000 { | ||
1012 | compatible = "atmel,at91sam9260-ebi"; | ||
1013 | #address-cells = <2>; | ||
1014 | #size-cells = <1>; | ||
1015 | atmel,smc = <&smc>; | ||
1016 | atmel,matrix = <&matrix>; | ||
1017 | reg = <0x10000000 0x80000000>; | ||
1018 | ranges = <0x0 0x0 0x10000000 0x10000000 | ||
1019 | 0x1 0x0 0x20000000 0x10000000 | ||
1020 | 0x2 0x0 0x30000000 0x10000000 | ||
1021 | 0x3 0x0 0x40000000 0x10000000 | ||
1022 | 0x4 0x0 0x50000000 0x10000000 | ||
1023 | 0x5 0x0 0x60000000 0x10000000 | ||
1024 | 0x6 0x0 0x70000000 0x10000000 | ||
1025 | 0x7 0x0 0x80000000 0x10000000>; | ||
1026 | clocks = <&mck>; | ||
1027 | status = "disabled"; | ||
1028 | |||
1029 | nand_controller: nand-controller { | ||
1030 | compatible = "atmel,at91sam9260-nand-controller"; | ||
1031 | #address-cells = <2>; | ||
1032 | #size-cells = <1>; | ||
1033 | ranges; | ||
1034 | status = "disabled"; | ||
1035 | }; | ||
1036 | }; | ||
1014 | }; | 1037 | }; |
1015 | 1038 | ||
1016 | i2c-gpio-0 { | 1039 | i2c-gpio-0 { |
diff --git a/arch/arm/boot/dts/at91sam9261.dtsi b/arch/arm/boot/dts/at91sam9261.dtsi index 7e80acda8f69..a05353f96151 100644 --- a/arch/arm/boot/dts/at91sam9261.dtsi +++ b/arch/arm/boot/dts/at91sam9261.dtsi | |||
@@ -91,20 +91,31 @@ | |||
91 | status = "disabled"; | 91 | status = "disabled"; |
92 | }; | 92 | }; |
93 | 93 | ||
94 | nand0: nand@40000000 { | 94 | ebi: ebi@10000000 { |
95 | compatible = "atmel,at91rm9200-nand"; | 95 | compatible = "atmel,at91sam9261-ebi"; |
96 | #address-cells = <1>; | 96 | #address-cells = <2>; |
97 | #size-cells = <1>; | 97 | #size-cells = <1>; |
98 | reg = <0x40000000 0x10000000>; | 98 | atmel,smc = <&smc>; |
99 | atmel,nand-addr-offset = <22>; | 99 | atmel,matrix = <&matrix>; |
100 | atmel,nand-cmd-offset = <21>; | 100 | reg = <0x10000000 0x80000000>; |
101 | pinctrl-names = "default"; | 101 | ranges = <0x0 0x0 0x10000000 0x10000000 |
102 | pinctrl-0 = <&pinctrl_nand>; | 102 | 0x1 0x0 0x20000000 0x10000000 |
103 | 103 | 0x2 0x0 0x30000000 0x10000000 | |
104 | gpios = <&pioC 15 GPIO_ACTIVE_HIGH>, | 104 | 0x3 0x0 0x40000000 0x10000000 |
105 | <&pioC 14 GPIO_ACTIVE_HIGH>, | 105 | 0x4 0x0 0x50000000 0x10000000 |
106 | <0>; | 106 | 0x5 0x0 0x60000000 0x10000000 |
107 | 0x6 0x0 0x70000000 0x10000000 | ||
108 | 0x7 0x0 0x80000000 0x10000000>; | ||
109 | clocks = <&mck>; | ||
107 | status = "disabled"; | 110 | status = "disabled"; |
111 | |||
112 | nand_controller: nand-controller { | ||
113 | compatible = "atmel,at91sam9261-nand-controller"; | ||
114 | #address-cells = <2>; | ||
115 | #size-cells = <1>; | ||
116 | ranges; | ||
117 | status = "disabled"; | ||
118 | }; | ||
108 | }; | 119 | }; |
109 | 120 | ||
110 | apb { | 121 | apb { |
@@ -262,6 +273,11 @@ | |||
262 | reg = <0xffffea00 0x200>; | 273 | reg = <0xffffea00 0x200>; |
263 | }; | 274 | }; |
264 | 275 | ||
276 | smc: smc@ffffec00 { | ||
277 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
278 | reg = <0xffffec00 0x200>; | ||
279 | }; | ||
280 | |||
265 | matrix: matrix@ffffee00 { | 281 | matrix: matrix@ffffee00 { |
266 | compatible = "atmel,at91sam9261-matrix", "syscon"; | 282 | compatible = "atmel,at91sam9261-matrix", "syscon"; |
267 | reg = <0xffffee00 0x200>; | 283 | reg = <0xffffee00 0x200>; |
@@ -362,9 +378,13 @@ | |||
362 | }; | 378 | }; |
363 | 379 | ||
364 | nand { | 380 | nand { |
365 | pinctrl_nand: nand-0 { | 381 | pinctrl_nand_rb: nand-rb-0 { |
382 | atmel,pins = | ||
383 | <AT91_PIOC 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | ||
384 | }; | ||
385 | |||
386 | pinctrl_nand_cs: nand-cs-0 { | ||
366 | atmel,pins = | 387 | atmel,pins = |
367 | <AT91_PIOC 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>, | ||
368 | <AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | 388 | <AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
369 | }; | 389 | }; |
370 | }; | 390 | }; |
diff --git a/arch/arm/boot/dts/at91sam9261ek.dts b/arch/arm/boot/dts/at91sam9261ek.dts index 55bd51f07fa6..157e1493e6eb 100644 --- a/arch/arm/boot/dts/at91sam9261ek.dts +++ b/arch/arm/boot/dts/at91sam9261ek.dts | |||
@@ -68,40 +68,59 @@ | |||
68 | }; | 68 | }; |
69 | }; | 69 | }; |
70 | 70 | ||
71 | nand0: nand@40000000 { | 71 | ebi: ebi@10000000 { |
72 | nand-bus-width = <8>; | ||
73 | nand-ecc-mode = "soft"; | ||
74 | nand-on-flash-bbt; | ||
75 | status = "okay"; | 72 | status = "okay"; |
76 | 73 | ||
77 | at91bootstrap@0 { | 74 | nand_controller: nand-controller { |
78 | label = "at91bootstrap"; | 75 | status = "okay"; |
79 | reg = <0x0 0x40000>; | 76 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
80 | }; | 77 | pinctrl-names = "default"; |
81 | 78 | ||
82 | bootloader@40000 { | 79 | nand@3 { |
83 | label = "bootloader"; | 80 | reg = <0x3 0x0 0x800000>; |
84 | reg = <0x40000 0x80000>; | 81 | rb-gpios = <&pioC 15 GPIO_ACTIVE_HIGH>; |
85 | }; | 82 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
86 | 83 | nand-bus-width = <8>; | |
87 | bootloaderenv@c0000 { | 84 | nand-ecc-mode = "soft"; |
88 | label = "bootloader env"; | 85 | nand-on-flash-bbt; |
89 | reg = <0xc0000 0xc0000>; | 86 | label = "atmel_nand"; |
90 | }; | 87 | |
91 | 88 | partitions { | |
92 | dtb@180000 { | 89 | compatible = "fixed-partitions"; |
93 | label = "device tree"; | 90 | #address-cells = <1>; |
94 | reg = <0x180000 0x80000>; | 91 | #size-cells = <1>; |
95 | }; | 92 | |
96 | 93 | at91bootstrap@0 { | |
97 | kernel@200000 { | 94 | label = "at91bootstrap"; |
98 | label = "kernel"; | 95 | reg = <0x0 0x40000>; |
99 | reg = <0x200000 0x600000>; | 96 | }; |
100 | }; | 97 | |
101 | 98 | bootloader@40000 { | |
102 | rootfs@800000 { | 99 | label = "bootloader"; |
103 | label = "rootfs"; | 100 | reg = <0x40000 0x80000>; |
104 | reg = <0x800000 0x0f800000>; | 101 | }; |
102 | |||
103 | bootloaderenv@c0000 { | ||
104 | label = "bootloader env"; | ||
105 | reg = <0xc0000 0xc0000>; | ||
106 | }; | ||
107 | |||
108 | dtb@180000 { | ||
109 | label = "device tree"; | ||
110 | reg = <0x180000 0x80000>; | ||
111 | }; | ||
112 | |||
113 | kernel@200000 { | ||
114 | label = "kernel"; | ||
115 | reg = <0x200000 0x600000>; | ||
116 | }; | ||
117 | |||
118 | rootfs@800000 { | ||
119 | label = "rootfs"; | ||
120 | reg = <0x800000 0x0f800000>; | ||
121 | }; | ||
122 | }; | ||
123 | }; | ||
105 | }; | 124 | }; |
106 | }; | 125 | }; |
107 | 126 | ||
diff --git a/arch/arm/boot/dts/at91sam9263.dtsi b/arch/arm/boot/dts/at91sam9263.dtsi index a1888f6d892b..ed4b564f8de5 100644 --- a/arch/arm/boot/dts/at91sam9263.dtsi +++ b/arch/arm/boot/dts/at91sam9263.dtsi | |||
@@ -361,11 +361,26 @@ | |||
361 | reg = <0xffffe200 0x200>; | 361 | reg = <0xffffe200 0x200>; |
362 | }; | 362 | }; |
363 | 363 | ||
364 | smc0: smc@ffffe400 { | ||
365 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
366 | reg = <0xffffe400 0x200>; | ||
367 | }; | ||
368 | |||
364 | ramc1: ramc@ffffe800 { | 369 | ramc1: ramc@ffffe800 { |
365 | compatible = "atmel,at91sam9260-sdramc"; | 370 | compatible = "atmel,at91sam9260-sdramc"; |
366 | reg = <0xffffe800 0x200>; | 371 | reg = <0xffffe800 0x200>; |
367 | }; | 372 | }; |
368 | 373 | ||
374 | smc1: smc@ffffea00 { | ||
375 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
376 | reg = <0xffffea00 0x200>; | ||
377 | }; | ||
378 | |||
379 | matrix: matrix@ffffec00 { | ||
380 | compatible = "atmel,at91sam9263-matrix", "syscon"; | ||
381 | reg = <0xffffec00 0x200>; | ||
382 | }; | ||
383 | |||
369 | pit: timer@fffffd30 { | 384 | pit: timer@fffffd30 { |
370 | compatible = "atmel,at91sam9260-pit"; | 385 | compatible = "atmel,at91sam9260-pit"; |
371 | reg = <0xfffffd30 0xf>; | 386 | reg = <0xfffffd30 0xf>; |
@@ -472,10 +487,14 @@ | |||
472 | }; | 487 | }; |
473 | 488 | ||
474 | nand { | 489 | nand { |
475 | pinctrl_nand: nand-0 { | 490 | pinctrl_nand_rb: nand-rb-0 { |
491 | atmel,pins = | ||
492 | <AT91_PIOA 22 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | ||
493 | }; | ||
494 | |||
495 | pinctrl_nand_cs: nand-cs-0 { | ||
476 | atmel,pins = | 496 | atmel,pins = |
477 | <AT91_PIOA 22 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PA22 gpio RDY pin pull_up*/ | 497 | <AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
478 | AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PD15 gpio enable pin pull_up */ | ||
479 | }; | 498 | }; |
480 | }; | 499 | }; |
481 | 500 | ||
@@ -991,24 +1010,6 @@ | |||
991 | status = "disabled"; | 1010 | status = "disabled"; |
992 | }; | 1011 | }; |
993 | 1012 | ||
994 | nand0: nand@40000000 { | ||
995 | compatible = "atmel,at91rm9200-nand"; | ||
996 | #address-cells = <1>; | ||
997 | #size-cells = <1>; | ||
998 | reg = <0x40000000 0x10000000 | ||
999 | 0xffffe000 0x200 | ||
1000 | >; | ||
1001 | atmel,nand-addr-offset = <21>; | ||
1002 | atmel,nand-cmd-offset = <22>; | ||
1003 | pinctrl-names = "default"; | ||
1004 | pinctrl-0 = <&pinctrl_nand>; | ||
1005 | gpios = <&pioA 22 GPIO_ACTIVE_HIGH | ||
1006 | &pioD 15 GPIO_ACTIVE_HIGH | ||
1007 | 0 | ||
1008 | >; | ||
1009 | status = "disabled"; | ||
1010 | }; | ||
1011 | |||
1012 | usb0: ohci@00a00000 { | 1013 | usb0: ohci@00a00000 { |
1013 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; | 1014 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; |
1014 | reg = <0x00a00000 0x100000>; | 1015 | reg = <0x00a00000 0x100000>; |
@@ -1017,6 +1018,52 @@ | |||
1017 | clock-names = "ohci_clk", "hclk", "uhpck"; | 1018 | clock-names = "ohci_clk", "hclk", "uhpck"; |
1018 | status = "disabled"; | 1019 | status = "disabled"; |
1019 | }; | 1020 | }; |
1021 | |||
1022 | ebi0: ebi@10000000 { | ||
1023 | compatible = "atmel,at91sam9263-ebi0"; | ||
1024 | #address-cells = <2>; | ||
1025 | #size-cells = <1>; | ||
1026 | atmel,smc = <&smc0>; | ||
1027 | atmel,matrix = <&matrix>; | ||
1028 | reg = <0x10000000 0x80000000>; | ||
1029 | ranges = <0x0 0x0 0x10000000 0x10000000 | ||
1030 | 0x1 0x0 0x20000000 0x10000000 | ||
1031 | 0x2 0x0 0x30000000 0x10000000 | ||
1032 | 0x3 0x0 0x40000000 0x10000000 | ||
1033 | 0x4 0x0 0x50000000 0x10000000 | ||
1034 | 0x5 0x0 0x60000000 0x10000000>; | ||
1035 | clocks = <&mck>; | ||
1036 | status = "disabled"; | ||
1037 | |||
1038 | nand_controller0: nand-controller { | ||
1039 | compatible = "atmel,at91sam9260-nand-controller"; | ||
1040 | #address-cells = <2>; | ||
1041 | #size-cells = <1>; | ||
1042 | ranges; | ||
1043 | status = "disabled"; | ||
1044 | }; | ||
1045 | }; | ||
1046 | |||
1047 | ebi1: ebi@70000000 { | ||
1048 | compatible = "atmel,at91sam9263-ebi1"; | ||
1049 | #address-cells = <2>; | ||
1050 | #size-cells = <1>; | ||
1051 | atmel,smc = <&smc1>; | ||
1052 | atmel,matrix = <&matrix>; | ||
1053 | reg = <0x80000000 0x20000000>; | ||
1054 | ranges = <0x0 0x0 0x80000000 0x10000000 | ||
1055 | 0x1 0x0 0x90000000 0x10000000>; | ||
1056 | clocks = <&mck>; | ||
1057 | status = "disabled"; | ||
1058 | |||
1059 | nand_controller1: nand-controller { | ||
1060 | compatible = "atmel,at91sam9260-nand-controller"; | ||
1061 | #address-cells = <2>; | ||
1062 | #size-cells = <1>; | ||
1063 | ranges; | ||
1064 | status = "disabled"; | ||
1065 | }; | ||
1066 | }; | ||
1020 | }; | 1067 | }; |
1021 | 1068 | ||
1022 | i2c-gpio-0 { | 1069 | i2c-gpio-0 { |
diff --git a/arch/arm/boot/dts/at91sam9263ek.dts b/arch/arm/boot/dts/at91sam9263ek.dts index 127cc42e9e29..10a0925da10e 100644 --- a/arch/arm/boot/dts/at91sam9263ek.dts +++ b/arch/arm/boot/dts/at91sam9263ek.dts | |||
@@ -125,50 +125,69 @@ | |||
125 | }; | 125 | }; |
126 | }; | 126 | }; |
127 | 127 | ||
128 | nand0: nand@40000000 { | 128 | ebi0: ebi@10000000 { |
129 | nand-bus-width = <8>; | ||
130 | nand-ecc-mode = "soft"; | ||
131 | nand-on-flash-bbt = <1>; | ||
132 | status = "okay"; | 129 | status = "okay"; |
133 | 130 | ||
134 | at91bootstrap@0 { | 131 | nand_controller: nand-controller { |
135 | label = "at91bootstrap"; | 132 | status = "okay"; |
136 | reg = <0x0 0x20000>; | 133 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
137 | }; | 134 | pinctrl-names = "default"; |
138 | 135 | ||
139 | barebox@20000 { | 136 | nand@3 { |
140 | label = "barebox"; | 137 | reg = <0x3 0x0 0x800000>; |
141 | reg = <0x20000 0x40000>; | 138 | rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>; |
142 | }; | 139 | cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>; |
143 | 140 | nand-bus-width = <8>; | |
144 | bareboxenv@60000 { | 141 | nand-ecc-mode = "soft"; |
145 | label = "bareboxenv"; | 142 | nand-on-flash-bbt; |
146 | reg = <0x60000 0x20000>; | 143 | label = "atmel_nand"; |
147 | }; | 144 | |
148 | 145 | partitions { | |
149 | bareboxenv2@80000 { | 146 | compatible = "fixed-partitions"; |
150 | label = "bareboxenv2"; | 147 | #address-cells = <1>; |
151 | reg = <0x80000 0x20000>; | 148 | #size-cells = <1>; |
152 | }; | 149 | |
153 | 150 | at91bootstrap@0 { | |
154 | oftree@80000 { | 151 | label = "at91bootstrap"; |
155 | label = "oftree"; | 152 | reg = <0x0 0x20000>; |
156 | reg = <0xa0000 0x20000>; | 153 | }; |
157 | }; | 154 | |
158 | 155 | barebox@20000 { | |
159 | kernel@a0000 { | 156 | label = "barebox"; |
160 | label = "kernel"; | 157 | reg = <0x20000 0x40000>; |
161 | reg = <0xc0000 0x400000>; | 158 | }; |
162 | }; | 159 | |
163 | 160 | bareboxenv@60000 { | |
164 | rootfs@4a0000 { | 161 | label = "bareboxenv"; |
165 | label = "rootfs"; | 162 | reg = <0x60000 0x20000>; |
166 | reg = <0x4c0000 0x7800000>; | 163 | }; |
167 | }; | 164 | |
168 | 165 | bareboxenv2@80000 { | |
169 | data@7ca0000 { | 166 | label = "bareboxenv2"; |
170 | label = "data"; | 167 | reg = <0x80000 0x20000>; |
171 | reg = <0x7cc0000 0x8340000>; | 168 | }; |
169 | |||
170 | oftree@80000 { | ||
171 | label = "oftree"; | ||
172 | reg = <0xa0000 0x20000>; | ||
173 | }; | ||
174 | |||
175 | kernel@a0000 { | ||
176 | label = "kernel"; | ||
177 | reg = <0xc0000 0x400000>; | ||
178 | }; | ||
179 | |||
180 | rootfs@4a0000 { | ||
181 | label = "rootfs"; | ||
182 | reg = <0x4c0000 0x7800000>; | ||
183 | }; | ||
184 | |||
185 | data@7ca0000 { | ||
186 | label = "data"; | ||
187 | reg = <0x7cc0000 0x8340000>; | ||
188 | }; | ||
189 | }; | ||
190 | }; | ||
172 | }; | 191 | }; |
173 | }; | 192 | }; |
174 | 193 | ||
diff --git a/arch/arm/boot/dts/at91sam9g20ek_common.dtsi b/arch/arm/boot/dts/at91sam9g20ek_common.dtsi index 27847a47c108..ac9a1511e239 100644 --- a/arch/arm/boot/dts/at91sam9g20ek_common.dtsi +++ b/arch/arm/boot/dts/at91sam9g20ek_common.dtsi | |||
@@ -123,50 +123,69 @@ | |||
123 | }; | 123 | }; |
124 | }; | 124 | }; |
125 | 125 | ||
126 | nand0: nand@40000000 { | 126 | ebi: ebi@10000000 { |
127 | nand-bus-width = <8>; | ||
128 | nand-ecc-mode = "soft"; | ||
129 | nand-on-flash-bbt; | ||
130 | status = "okay"; | 127 | status = "okay"; |
131 | 128 | ||
132 | at91bootstrap@0 { | 129 | nand_controller: nand-controller { |
133 | label = "at91bootstrap"; | 130 | status = "okay"; |
134 | reg = <0x0 0x20000>; | 131 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
135 | }; | 132 | pinctrl-names = "default"; |
136 | 133 | ||
137 | barebox@20000 { | 134 | nand@3 { |
138 | label = "barebox"; | 135 | reg = <0x3 0x0 0x800000>; |
139 | reg = <0x20000 0x40000>; | 136 | rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>; |
140 | }; | 137 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
141 | 138 | nand-bus-width = <8>; | |
142 | bareboxenv@60000 { | 139 | nand-ecc-mode = "soft"; |
143 | label = "bareboxenv"; | 140 | nand-on-flash-bbt; |
144 | reg = <0x60000 0x20000>; | 141 | label = "atmel_nand"; |
145 | }; | 142 | |
146 | 143 | partitions { | |
147 | bareboxenv2@80000 { | 144 | compatible = "fixed-partitions"; |
148 | label = "bareboxenv2"; | 145 | #address-cells = <1>; |
149 | reg = <0x80000 0x20000>; | 146 | #size-cells = <1>; |
150 | }; | 147 | |
151 | 148 | at91bootstrap@0 { | |
152 | oftree@80000 { | 149 | label = "at91bootstrap"; |
153 | label = "oftree"; | 150 | reg = <0x0 0x20000>; |
154 | reg = <0xa0000 0x20000>; | 151 | }; |
155 | }; | 152 | |
156 | 153 | barebox@20000 { | |
157 | kernel@a0000 { | 154 | label = "barebox"; |
158 | label = "kernel"; | 155 | reg = <0x20000 0x40000>; |
159 | reg = <0xc0000 0x400000>; | 156 | }; |
160 | }; | 157 | |
161 | 158 | bareboxenv@60000 { | |
162 | rootfs@4a0000 { | 159 | label = "bareboxenv"; |
163 | label = "rootfs"; | 160 | reg = <0x60000 0x20000>; |
164 | reg = <0x4c0000 0x7800000>; | 161 | }; |
165 | }; | 162 | |
166 | 163 | bareboxenv2@80000 { | |
167 | data@7ca0000 { | 164 | label = "bareboxenv2"; |
168 | label = "data"; | 165 | reg = <0x80000 0x20000>; |
169 | reg = <0x7cc0000 0x8340000>; | 166 | }; |
167 | |||
168 | oftree@80000 { | ||
169 | label = "oftree"; | ||
170 | reg = <0xa0000 0x20000>; | ||
171 | }; | ||
172 | |||
173 | kernel@a0000 { | ||
174 | label = "kernel"; | ||
175 | reg = <0xc0000 0x400000>; | ||
176 | }; | ||
177 | |||
178 | rootfs@4a0000 { | ||
179 | label = "rootfs"; | ||
180 | reg = <0x4c0000 0x7800000>; | ||
181 | }; | ||
182 | |||
183 | data@7ca0000 { | ||
184 | label = "data"; | ||
185 | reg = <0x7cc0000 0x8340000>; | ||
186 | }; | ||
187 | }; | ||
188 | }; | ||
170 | }; | 189 | }; |
171 | }; | 190 | }; |
172 | 191 | ||
diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi index e567d5fd3f9d..a4808c4fbc05 100644 --- a/arch/arm/boot/dts/at91sam9g45.dtsi +++ b/arch/arm/boot/dts/at91sam9g45.dtsi | |||
@@ -113,6 +113,16 @@ | |||
113 | clock-names = "ddrck"; | 113 | clock-names = "ddrck"; |
114 | }; | 114 | }; |
115 | 115 | ||
116 | smc: smc@ffffe800 { | ||
117 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
118 | reg = <0xffffe800 0x200>; | ||
119 | }; | ||
120 | |||
121 | matrix: matrix@ffffea00 { | ||
122 | compatible = "atmel,at91sam9g45-matrix", "syscon"; | ||
123 | reg = <0xffffea00 0x200>; | ||
124 | }; | ||
125 | |||
116 | pmc: pmc@fffffc00 { | 126 | pmc: pmc@fffffc00 { |
117 | compatible = "atmel,at91sam9g45-pmc", "syscon"; | 127 | compatible = "atmel,at91sam9g45-pmc", "syscon"; |
118 | reg = <0xfffffc00 0x100>; | 128 | reg = <0xfffffc00 0x100>; |
@@ -601,10 +611,14 @@ | |||
601 | }; | 611 | }; |
602 | 612 | ||
603 | nand { | 613 | nand { |
604 | pinctrl_nand: nand-0 { | 614 | pinctrl_nand_rb: nand-rb-0 { |
605 | atmel,pins = | 615 | atmel,pins = |
606 | <AT91_PIOC 8 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PC8 gpio RDY pin pull_up*/ | 616 | <AT91_PIOC 8 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
607 | AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PC14 gpio enable pin pull_up */ | 617 | }; |
618 | |||
619 | pinctrl_nand_cs: nand-cs-0 { | ||
620 | atmel,pins = | ||
621 | <AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | ||
608 | }; | 622 | }; |
609 | }; | 623 | }; |
610 | 624 | ||
@@ -1278,25 +1292,6 @@ | |||
1278 | status = "disabled"; | 1292 | status = "disabled"; |
1279 | }; | 1293 | }; |
1280 | 1294 | ||
1281 | nand0: nand@40000000 { | ||
1282 | compatible = "atmel,at91rm9200-nand"; | ||
1283 | #address-cells = <1>; | ||
1284 | #size-cells = <1>; | ||
1285 | reg = <0x40000000 0x10000000 | ||
1286 | 0xffffe200 0x200 | ||
1287 | >; | ||
1288 | atmel,nand-addr-offset = <21>; | ||
1289 | atmel,nand-cmd-offset = <22>; | ||
1290 | atmel,nand-has-dma; | ||
1291 | pinctrl-names = "default"; | ||
1292 | pinctrl-0 = <&pinctrl_nand>; | ||
1293 | gpios = <&pioC 8 GPIO_ACTIVE_HIGH | ||
1294 | &pioC 14 GPIO_ACTIVE_HIGH | ||
1295 | 0 | ||
1296 | >; | ||
1297 | status = "disabled"; | ||
1298 | }; | ||
1299 | |||
1300 | usb0: ohci@00700000 { | 1295 | usb0: ohci@00700000 { |
1301 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; | 1296 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; |
1302 | reg = <0x00700000 0x100000>; | 1297 | reg = <0x00700000 0x100000>; |
@@ -1314,6 +1309,31 @@ | |||
1314 | clock-names = "usb_clk", "ehci_clk"; | 1309 | clock-names = "usb_clk", "ehci_clk"; |
1315 | status = "disabled"; | 1310 | status = "disabled"; |
1316 | }; | 1311 | }; |
1312 | |||
1313 | ebi: ebi@10000000 { | ||
1314 | compatible = "atmel,at91sam9g45-ebi"; | ||
1315 | #address-cells = <2>; | ||
1316 | #size-cells = <1>; | ||
1317 | atmel,smc = <&smc>; | ||
1318 | atmel,matrix = <&matrix>; | ||
1319 | reg = <0x10000000 0x80000000>; | ||
1320 | ranges = <0x0 0x0 0x10000000 0x10000000 | ||
1321 | 0x1 0x0 0x20000000 0x10000000 | ||
1322 | 0x2 0x0 0x30000000 0x10000000 | ||
1323 | 0x3 0x0 0x40000000 0x10000000 | ||
1324 | 0x4 0x0 0x50000000 0x10000000 | ||
1325 | 0x5 0x0 0x60000000 0x10000000>; | ||
1326 | clocks = <&mck>; | ||
1327 | status = "disabled"; | ||
1328 | |||
1329 | nand_controller: nand-controller { | ||
1330 | compatible = "atmel,at91sam9g45-nand-controller"; | ||
1331 | #address-cells = <2>; | ||
1332 | #size-cells = <1>; | ||
1333 | ranges; | ||
1334 | status = "disabled"; | ||
1335 | }; | ||
1336 | }; | ||
1317 | }; | 1337 | }; |
1318 | 1338 | ||
1319 | i2c-gpio-0 { | 1339 | i2c-gpio-0 { |
diff --git a/arch/arm/boot/dts/at91sam9m10g45ek.dts b/arch/arm/boot/dts/at91sam9m10g45ek.dts index 2400c99134f7..2522c3308305 100644 --- a/arch/arm/boot/dts/at91sam9m10g45ek.dts +++ b/arch/arm/boot/dts/at91sam9m10g45ek.dts | |||
@@ -245,25 +245,44 @@ | |||
245 | }; | 245 | }; |
246 | }; | 246 | }; |
247 | 247 | ||
248 | nand0: nand@40000000 { | 248 | ebi: ebi@10000000 { |
249 | nand-bus-width = <8>; | ||
250 | nand-ecc-mode = "soft"; | ||
251 | nand-on-flash-bbt; | ||
252 | status = "okay"; | 249 | status = "okay"; |
253 | 250 | ||
254 | boot@0 { | 251 | nand_controller: nand-controller { |
255 | label = "bootstrap/uboot/kernel"; | 252 | status = "okay"; |
256 | reg = <0x0 0x400000>; | 253 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
257 | }; | 254 | pinctrl-names = "default"; |
258 | 255 | ||
259 | rootfs@400000 { | 256 | nand@3 { |
260 | label = "rootfs"; | 257 | reg = <0x3 0x0 0x800000>; |
261 | reg = <0x400000 0x3C00000>; | 258 | rb-gpios = <&pioC 8 GPIO_ACTIVE_HIGH>; |
262 | }; | 259 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
260 | nand-bus-width = <8>; | ||
261 | nand-ecc-mode = "soft"; | ||
262 | nand-on-flash-bbt; | ||
263 | label = "atmel_nand"; | ||
264 | |||
265 | partitions { | ||
266 | compatible = "fixed-partitions"; | ||
267 | #address-cells = <1>; | ||
268 | #size-cells = <1>; | ||
269 | |||
270 | boot@0 { | ||
271 | label = "bootstrap/uboot/kernel"; | ||
272 | reg = <0x0 0x400000>; | ||
273 | }; | ||
263 | 274 | ||
264 | data@4000000 { | 275 | rootfs@400000 { |
265 | label = "data"; | 276 | label = "rootfs"; |
266 | reg = <0x4000000 0xC000000>; | 277 | reg = <0x400000 0x3C00000>; |
278 | }; | ||
279 | |||
280 | data@4000000 { | ||
281 | label = "data"; | ||
282 | reg = <0x4000000 0xC000000>; | ||
283 | }; | ||
284 | }; | ||
285 | }; | ||
267 | }; | 286 | }; |
268 | }; | 287 | }; |
269 | 288 | ||
diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi index f43d7695352d..06516d02d351 100644 --- a/arch/arm/boot/dts/at91sam9n12.dtsi +++ b/arch/arm/boot/dts/at91sam9n12.dtsi | |||
@@ -89,6 +89,17 @@ | |||
89 | atmel,external-irqs = <31>; | 89 | atmel,external-irqs = <31>; |
90 | }; | 90 | }; |
91 | 91 | ||
92 | matrix: matrix@ffffde00 { | ||
93 | compatible = "atmel,at91sam9n12-matrix", "syscon"; | ||
94 | reg = <0xffffde00 0x100>; | ||
95 | }; | ||
96 | |||
97 | pmecc: ecc-engine@ffffe000 { | ||
98 | compatible = "atmel,at91sam9g45-pmecc"; | ||
99 | reg = <0xffffe000 0x600>, | ||
100 | <0xffffe600 0x200>; | ||
101 | }; | ||
102 | |||
92 | ramc0: ramc@ffffe800 { | 103 | ramc0: ramc@ffffe800 { |
93 | compatible = "atmel,at91sam9g45-ddramc"; | 104 | compatible = "atmel,at91sam9g45-ddramc"; |
94 | reg = <0xffffe800 0x200>; | 105 | reg = <0xffffe800 0x200>; |
@@ -96,6 +107,11 @@ | |||
96 | clock-names = "ddrck"; | 107 | clock-names = "ddrck"; |
97 | }; | 108 | }; |
98 | 109 | ||
110 | smc: smc@ffffea00 { | ||
111 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
112 | reg = <0xffffea00 0x200>; | ||
113 | }; | ||
114 | |||
99 | pmc: pmc@fffffc00 { | 115 | pmc: pmc@fffffc00 { |
100 | compatible = "atmel,at91sam9n12-pmc", "syscon"; | 116 | compatible = "atmel,at91sam9n12-pmc", "syscon"; |
101 | reg = <0xfffffc00 0x200>; | 117 | reg = <0xfffffc00 0x200>; |
@@ -627,10 +643,14 @@ | |||
627 | }; | 643 | }; |
628 | 644 | ||
629 | nand { | 645 | nand { |
630 | pinctrl_nand: nand-0 { | 646 | pinctrl_nand_rb: nand-rb-0 { |
631 | atmel,pins = | 647 | atmel,pins = |
632 | <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD5 gpio RDY pin pull_up*/ | 648 | <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
633 | AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PD4 gpio enable pin pull_up */ | 649 | }; |
650 | |||
651 | pinctrl_nand_cs: nand-cs-0 { | ||
652 | atmel,pins = | ||
653 | <AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | ||
634 | }; | 654 | }; |
635 | }; | 655 | }; |
636 | 656 | ||
@@ -998,28 +1018,6 @@ | |||
998 | }; | 1018 | }; |
999 | }; | 1019 | }; |
1000 | 1020 | ||
1001 | nand0: nand@40000000 { | ||
1002 | compatible = "atmel,at91rm9200-nand"; | ||
1003 | #address-cells = <1>; | ||
1004 | #size-cells = <1>; | ||
1005 | reg = < 0x40000000 0x10000000 | ||
1006 | 0xffffe000 0x00000600 | ||
1007 | 0xffffe600 0x00000200 | ||
1008 | 0x00108000 0x00018000 | ||
1009 | >; | ||
1010 | atmel,pmecc-lookup-table-offset = <0x0 0x8000>; | ||
1011 | atmel,nand-addr-offset = <21>; | ||
1012 | atmel,nand-cmd-offset = <22>; | ||
1013 | atmel,nand-has-dma; | ||
1014 | pinctrl-names = "default"; | ||
1015 | pinctrl-0 = <&pinctrl_nand>; | ||
1016 | gpios = <&pioD 5 GPIO_ACTIVE_HIGH | ||
1017 | &pioD 4 GPIO_ACTIVE_HIGH | ||
1018 | 0 | ||
1019 | >; | ||
1020 | status = "disabled"; | ||
1021 | }; | ||
1022 | |||
1023 | usb0: ohci@00500000 { | 1021 | usb0: ohci@00500000 { |
1024 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; | 1022 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; |
1025 | reg = <0x00500000 0x00100000>; | 1023 | reg = <0x00500000 0x00100000>; |
@@ -1028,6 +1026,32 @@ | |||
1028 | clock-names = "ohci_clk", "hclk", "uhpck"; | 1026 | clock-names = "ohci_clk", "hclk", "uhpck"; |
1029 | status = "disabled"; | 1027 | status = "disabled"; |
1030 | }; | 1028 | }; |
1029 | |||
1030 | ebi: ebi@10000000 { | ||
1031 | compatible = "atmel,at91sam9x5-ebi"; | ||
1032 | #address-cells = <2>; | ||
1033 | #size-cells = <1>; | ||
1034 | atmel,smc = <&smc>; | ||
1035 | atmel,matrix = <&matrix>; | ||
1036 | reg = <0x10000000 0x60000000>; | ||
1037 | ranges = <0x0 0x0 0x10000000 0x10000000 | ||
1038 | 0x1 0x0 0x20000000 0x10000000 | ||
1039 | 0x2 0x0 0x30000000 0x10000000 | ||
1040 | 0x3 0x0 0x40000000 0x10000000 | ||
1041 | 0x4 0x0 0x50000000 0x10000000 | ||
1042 | 0x5 0x0 0x60000000 0x10000000>; | ||
1043 | clocks = <&mck>; | ||
1044 | status = "disabled"; | ||
1045 | |||
1046 | nand_controller: nand-controller { | ||
1047 | compatible = "atmel,at91sam9g45-nand-controller"; | ||
1048 | ecc-engine = <&pmecc>; | ||
1049 | #address-cells = <2>; | ||
1050 | #size-cells = <1>; | ||
1051 | ranges; | ||
1052 | status = "disabled"; | ||
1053 | }; | ||
1054 | }; | ||
1031 | }; | 1055 | }; |
1032 | 1056 | ||
1033 | i2c-gpio-0 { | 1057 | i2c-gpio-0 { |
diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts index 626c67d66626..5bea8c59b115 100644 --- a/arch/arm/boot/dts/at91sam9n12ek.dts +++ b/arch/arm/boot/dts/at91sam9n12ek.dts | |||
@@ -147,14 +147,26 @@ | |||
147 | }; | 147 | }; |
148 | }; | 148 | }; |
149 | 149 | ||
150 | nand0: nand@40000000 { | 150 | ebi: ebi@10000000 { |
151 | nand-bus-width = <8>; | ||
152 | nand-ecc-mode = "hw"; | ||
153 | atmel,has-pmecc; | ||
154 | atmel,pmecc-cap = <2>; | ||
155 | atmel,pmecc-sector-size = <512>; | ||
156 | nand-on-flash-bbt; | ||
157 | status = "okay"; | 151 | status = "okay"; |
152 | |||
153 | nand_controller: nand-controller { | ||
154 | status = "okay"; | ||
155 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; | ||
156 | pinctrl-names = "default"; | ||
157 | |||
158 | nand@3 { | ||
159 | reg = <0x3 0x0 0x800000>; | ||
160 | rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>; | ||
161 | cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>; | ||
162 | nand-bus-width = <8>; | ||
163 | nand-ecc-mode = "soft"; | ||
164 | nand-ecc-strength = <2>; | ||
165 | nand-ecc-step-size = <512>; | ||
166 | nand-on-flash-bbt; | ||
167 | label = "atmel_nand"; | ||
168 | }; | ||
169 | }; | ||
158 | }; | 170 | }; |
159 | 171 | ||
160 | usb0: ohci@00500000 { | 172 | usb0: ohci@00500000 { |
diff --git a/arch/arm/boot/dts/at91sam9rl.dtsi b/arch/arm/boot/dts/at91sam9rl.dtsi index f4c129a98f17..7768342a6638 100644 --- a/arch/arm/boot/dts/at91sam9rl.dtsi +++ b/arch/arm/boot/dts/at91sam9rl.dtsi | |||
@@ -92,21 +92,29 @@ | |||
92 | status = "disabled"; | 92 | status = "disabled"; |
93 | }; | 93 | }; |
94 | 94 | ||
95 | nand0: nand@40000000 { | 95 | ebi: ebi@10000000 { |
96 | compatible = "atmel,at91rm9200-nand"; | 96 | compatible = "atmel,at91sam9rl-ebi"; |
97 | #address-cells = <1>; | 97 | #address-cells = <2>; |
98 | #size-cells = <1>; | 98 | #size-cells = <1>; |
99 | reg = <0x40000000 0x10000000>, | 99 | atmel,smc = <&smc>; |
100 | <0xffffe800 0x200>; | 100 | atmel,matrix = <&matrix>; |
101 | atmel,nand-addr-offset = <21>; | 101 | reg = <0x10000000 0x80000000>; |
102 | atmel,nand-cmd-offset = <22>; | 102 | ranges = <0x0 0x0 0x10000000 0x10000000 |
103 | atmel,nand-has-dma; | 103 | 0x1 0x0 0x20000000 0x10000000 |
104 | pinctrl-names = "default"; | 104 | 0x2 0x0 0x30000000 0x10000000 |
105 | pinctrl-0 = <&pinctrl_nand>; | 105 | 0x3 0x0 0x40000000 0x10000000 |
106 | gpios = <&pioD 17 GPIO_ACTIVE_HIGH>, | 106 | 0x4 0x0 0x50000000 0x10000000 |
107 | <&pioB 6 GPIO_ACTIVE_HIGH>, | 107 | 0x5 0x0 0x60000000 0x10000000>; |
108 | <0>; | 108 | clocks = <&mck>; |
109 | status = "disabled"; | 109 | status = "disabled"; |
110 | |||
111 | nand_controller: nand-controller { | ||
112 | compatible = "atmel,at91sam9g45-nand-controller"; | ||
113 | #address-cells = <2>; | ||
114 | #size-cells = <1>; | ||
115 | ranges; | ||
116 | status = "disabled"; | ||
117 | }; | ||
110 | }; | 118 | }; |
111 | 119 | ||
112 | apb { | 120 | apb { |
@@ -364,6 +372,16 @@ | |||
364 | reg = <0xffffea00 0x200>; | 372 | reg = <0xffffea00 0x200>; |
365 | }; | 373 | }; |
366 | 374 | ||
375 | smc: smc@ffffec00 { | ||
376 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
377 | reg = <0xffffec00 0x200>; | ||
378 | }; | ||
379 | |||
380 | matrix: matrix@ffffee00 { | ||
381 | compatible = "atmel,at91sam9rl-matrix", "syscon"; | ||
382 | reg = <0xffffee00 0x200>; | ||
383 | }; | ||
384 | |||
367 | aic: interrupt-controller@fffff000 { | 385 | aic: interrupt-controller@fffff000 { |
368 | #interrupt-cells = <3>; | 386 | #interrupt-cells = <3>; |
369 | compatible = "atmel,at91rm9200-aic"; | 387 | compatible = "atmel,at91rm9200-aic"; |
@@ -443,6 +461,14 @@ | |||
443 | }; | 461 | }; |
444 | }; | 462 | }; |
445 | 463 | ||
464 | ebi { | ||
465 | pinctrl_ebi_addr_nand: ebi-addr-0 { | ||
466 | atmel,pins = | ||
467 | <AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>, | ||
468 | <AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
469 | }; | ||
470 | }; | ||
471 | |||
446 | fb { | 472 | fb { |
447 | pinctrl_fb: fb-0 { | 473 | pinctrl_fb: fb-0 { |
448 | atmel,pins = | 474 | atmel,pins = |
@@ -507,28 +533,21 @@ | |||
507 | }; | 533 | }; |
508 | 534 | ||
509 | nand { | 535 | nand { |
510 | pinctrl_nand: nand-0 { | 536 | pinctrl_nand_rb: nand-rb-0 { |
511 | atmel,pins = | 537 | atmel,pins = |
512 | <AT91_PIOD 17 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>, | 538 | <AT91_PIOD 17 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
513 | <AT91_PIOB 6 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | ||
514 | }; | 539 | }; |
515 | 540 | ||
516 | pinctrl_nand0_ale_cle: nand_ale_cle-0 { | 541 | pinctrl_nand_cs: nand-cs-0 { |
517 | atmel,pins = | 542 | atmel,pins = |
518 | <AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>, | 543 | <AT91_PIOB 6 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
519 | <AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
520 | }; | 544 | }; |
521 | 545 | ||
522 | pinctrl_nand0_oe_we: nand_oe_we-0 { | 546 | pinctrl_nand_oe_we: nand-oe-we-0 { |
523 | atmel,pins = | 547 | atmel,pins = |
524 | <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE>, | 548 | <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE>, |
525 | <AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE>; | 549 | <AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE>; |
526 | }; | 550 | }; |
527 | |||
528 | pinctrl_nand0_cs: nand_cs-0 { | ||
529 | atmel,pins = | ||
530 | <AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
531 | }; | ||
532 | }; | 551 | }; |
533 | 552 | ||
534 | pwm0 { | 553 | pwm0 { |
diff --git a/arch/arm/boot/dts/at91sam9rlek.dts b/arch/arm/boot/dts/at91sam9rlek.dts index 2e567d90fba8..9047c168298a 100644 --- a/arch/arm/boot/dts/at91sam9rlek.dts +++ b/arch/arm/boot/dts/at91sam9rlek.dts | |||
@@ -63,40 +63,63 @@ | |||
63 | }; | 63 | }; |
64 | }; | 64 | }; |
65 | 65 | ||
66 | nand0: nand@40000000 { | 66 | ebi: ebi@10000000 { |
67 | nand-bus-width = <8>; | 67 | pinctrl-0 = <&pinctrl_ebi_addr_nand>; |
68 | nand-ecc-mode = "soft"; | 68 | pinctrl-names = "default"; |
69 | nand-on-flash-bbt = <1>; | ||
70 | status = "okay"; | 69 | status = "okay"; |
71 | 70 | ||
72 | at91bootstrap@0 { | 71 | nand_controller: nand-controller { |
73 | label = "at91bootstrap"; | 72 | status = "okay"; |
74 | reg = <0x0 0x40000>; | 73 | pinctrl-0 = <&pinctrl_nand_oe_we |
75 | }; | 74 | &pinctrl_nand_cs |
76 | 75 | &pinctrl_nand_rb>; | |
77 | bootloader@40000 { | 76 | pinctrl-names = "default"; |
78 | label = "bootloader"; | ||
79 | reg = <0x40000 0x80000>; | ||
80 | }; | ||
81 | |||
82 | bootloaderenv@c0000 { | ||
83 | label = "bootloader env"; | ||
84 | reg = <0xc0000 0xc0000>; | ||
85 | }; | ||
86 | |||
87 | dtb@180000 { | ||
88 | label = "device tree"; | ||
89 | reg = <0x180000 0x80000>; | ||
90 | }; | ||
91 | |||
92 | kernel@200000 { | ||
93 | label = "kernel"; | ||
94 | reg = <0x200000 0x600000>; | ||
95 | }; | ||
96 | 77 | ||
97 | rootfs@800000 { | 78 | nand@3 { |
98 | label = "rootfs"; | 79 | reg = <0x3 0x0 0x800000>; |
99 | reg = <0x800000 0x0f800000>; | 80 | rb-gpios = <&pioD 17 GPIO_ACTIVE_HIGH>; |
81 | cs-gpios = <&pioB 6 GPIO_ACTIVE_HIGH>; | ||
82 | nand-bus-width = <8>; | ||
83 | nand-ecc-mode = "soft"; | ||
84 | nand-on-flash-bbt; | ||
85 | label = "atmel_nand"; | ||
86 | |||
87 | partitions { | ||
88 | compatible = "fixed-partitions"; | ||
89 | #address-cells = <1>; | ||
90 | #size-cells = <1>; | ||
91 | |||
92 | at91bootstrap@0 { | ||
93 | label = "at91bootstrap"; | ||
94 | reg = <0x0 0x40000>; | ||
95 | }; | ||
96 | |||
97 | bootloader@40000 { | ||
98 | label = "bootloader"; | ||
99 | reg = <0x40000 0x80000>; | ||
100 | }; | ||
101 | |||
102 | bootloaderenv@c0000 { | ||
103 | label = "bootloader env"; | ||
104 | reg = <0xc0000 0xc0000>; | ||
105 | }; | ||
106 | |||
107 | dtb@180000 { | ||
108 | label = "device tree"; | ||
109 | reg = <0x180000 0x80000>; | ||
110 | }; | ||
111 | |||
112 | kernel@200000 { | ||
113 | label = "kernel"; | ||
114 | reg = <0x200000 0x600000>; | ||
115 | }; | ||
116 | |||
117 | rootfs@800000 { | ||
118 | label = "rootfs"; | ||
119 | reg = <0x800000 0x0f800000>; | ||
120 | }; | ||
121 | }; | ||
122 | }; | ||
100 | }; | 123 | }; |
101 | }; | 124 | }; |
102 | 125 | ||
diff --git a/arch/arm/boot/dts/at91sam9x5.dtsi b/arch/arm/boot/dts/at91sam9x5.dtsi index f66bae925705..57f307541d2e 100644 --- a/arch/arm/boot/dts/at91sam9x5.dtsi +++ b/arch/arm/boot/dts/at91sam9x5.dtsi | |||
@@ -97,6 +97,17 @@ | |||
97 | atmel,external-irqs = <31>; | 97 | atmel,external-irqs = <31>; |
98 | }; | 98 | }; |
99 | 99 | ||
100 | matrix: matrix@ffffde00 { | ||
101 | compatible = "atmel,at91sam9x5-matrix", "syscon"; | ||
102 | reg = <0xffffde00 0x100>; | ||
103 | }; | ||
104 | |||
105 | pmecc: ecc-engine@ffffe000 { | ||
106 | compatible = "atmel,at91sam9g45-pmecc"; | ||
107 | reg = <0xffffe000 0x600>, | ||
108 | <0xffffe600 0x200>; | ||
109 | }; | ||
110 | |||
100 | ramc0: ramc@ffffe800 { | 111 | ramc0: ramc@ffffe800 { |
101 | compatible = "atmel,at91sam9g45-ddramc"; | 112 | compatible = "atmel,at91sam9g45-ddramc"; |
102 | reg = <0xffffe800 0x200>; | 113 | reg = <0xffffe800 0x200>; |
@@ -104,6 +115,11 @@ | |||
104 | clock-names = "ddrck"; | 115 | clock-names = "ddrck"; |
105 | }; | 116 | }; |
106 | 117 | ||
118 | smc: smc@ffffea00 { | ||
119 | compatible = "atmel,at91sam9260-smc", "syscon"; | ||
120 | reg = <0xffffea00 0x200>; | ||
121 | }; | ||
122 | |||
107 | pmc: pmc@fffffc00 { | 123 | pmc: pmc@fffffc00 { |
108 | compatible = "atmel,at91sam9x5-pmc", "syscon"; | 124 | compatible = "atmel,at91sam9x5-pmc", "syscon"; |
109 | reg = <0xfffffc00 0x200>; | 125 | reg = <0xfffffc00 0x200>; |
@@ -465,6 +481,38 @@ | |||
465 | }; | 481 | }; |
466 | }; | 482 | }; |
467 | 483 | ||
484 | ebi { | ||
485 | pinctrl_ebi_data_0_7: ebi-data-lsb-0 { | ||
486 | atmel,pins = | ||
487 | <AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
488 | AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
489 | AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
490 | AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
491 | AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
492 | AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
493 | AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
494 | AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
495 | }; | ||
496 | |||
497 | pinctrl_ebi_data_8_15: ebi-data-msb-0 { | ||
498 | atmel,pins = | ||
499 | <AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
500 | AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
501 | AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
502 | AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
503 | AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
504 | AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
505 | AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
506 | AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
507 | }; | ||
508 | |||
509 | pinctrl_ebi_addr_nand: ebi-addr-0 { | ||
510 | atmel,pins = | ||
511 | <AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
512 | AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
513 | }; | ||
514 | }; | ||
515 | |||
468 | usart0 { | 516 | usart0 { |
469 | pinctrl_usart0: usart0-0 { | 517 | pinctrl_usart0: usart0-0 { |
470 | atmel,pins = | 518 | atmel,pins = |
@@ -551,34 +599,20 @@ | |||
551 | }; | 599 | }; |
552 | 600 | ||
553 | nand { | 601 | nand { |
554 | pinctrl_nand: nand-0 { | 602 | pinctrl_nand_oe_we: nand-oe-we-0 { |
603 | atmel,pins = | ||
604 | <AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
605 | AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
606 | }; | ||
607 | |||
608 | pinctrl_nand_rb: nand-rb-0 { | ||
555 | atmel,pins = | 609 | atmel,pins = |
556 | <AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD0 periph A Read Enable */ | 610 | <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
557 | AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD1 periph A Write Enable */ | 611 | }; |
558 | AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD2 periph A Address Latch Enable */ | 612 | |
559 | AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD3 periph A Command Latch Enable */ | 613 | pinctrl_nand_cs: nand-cs-0 { |
560 | AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD4 gpio Chip Enable pin pull_up */ | ||
561 | AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD5 gpio RDY/BUSY pin pull_up */ | ||
562 | AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD6 periph A Data bit 0 */ | ||
563 | AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD7 periph A Data bit 1 */ | ||
564 | AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD8 periph A Data bit 2 */ | ||
565 | AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD9 periph A Data bit 3 */ | ||
566 | AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD10 periph A Data bit 4 */ | ||
567 | AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD11 periph A Data bit 5 */ | ||
568 | AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD12 periph A Data bit 6 */ | ||
569 | AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD13 periph A Data bit 7 */ | ||
570 | }; | ||
571 | |||
572 | pinctrl_nand_16bits: nand_16bits-0 { | ||
573 | atmel,pins = | 614 | atmel,pins = |
574 | <AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD14 periph A Data bit 8 */ | 615 | <AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
575 | AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD15 periph A Data bit 9 */ | ||
576 | AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD16 periph A Data bit 10 */ | ||
577 | AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD17 periph A Data bit 11 */ | ||
578 | AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD18 periph A Data bit 12 */ | ||
579 | AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD19 periph A Data bit 13 */ | ||
580 | AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD20 periph A Data bit 14 */ | ||
581 | AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD21 periph A Data bit 15 */ | ||
582 | }; | 616 | }; |
583 | }; | 617 | }; |
584 | 618 | ||
@@ -1197,28 +1231,6 @@ | |||
1197 | }; | 1231 | }; |
1198 | }; | 1232 | }; |
1199 | 1233 | ||
1200 | nand0: nand@40000000 { | ||
1201 | compatible = "atmel,at91rm9200-nand"; | ||
1202 | #address-cells = <1>; | ||
1203 | #size-cells = <1>; | ||
1204 | reg = <0x40000000 0x10000000 | ||
1205 | 0xffffe000 0x600 /* PMECC Registers */ | ||
1206 | 0xffffe600 0x200 /* PMECC Error Location Registers */ | ||
1207 | 0x00108000 0x18000 /* PMECC looup table in ROM code */ | ||
1208 | >; | ||
1209 | atmel,pmecc-lookup-table-offset = <0x0 0x8000>; | ||
1210 | atmel,nand-addr-offset = <21>; | ||
1211 | atmel,nand-cmd-offset = <22>; | ||
1212 | atmel,nand-has-dma; | ||
1213 | pinctrl-names = "default"; | ||
1214 | pinctrl-0 = <&pinctrl_nand>; | ||
1215 | gpios = <&pioD 5 GPIO_ACTIVE_HIGH | ||
1216 | &pioD 4 GPIO_ACTIVE_HIGH | ||
1217 | 0 | ||
1218 | >; | ||
1219 | status = "disabled"; | ||
1220 | }; | ||
1221 | |||
1222 | usb0: ohci@00600000 { | 1234 | usb0: ohci@00600000 { |
1223 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; | 1235 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; |
1224 | reg = <0x00600000 0x100000>; | 1236 | reg = <0x00600000 0x100000>; |
@@ -1236,6 +1248,32 @@ | |||
1236 | clock-names = "usb_clk", "ehci_clk"; | 1248 | clock-names = "usb_clk", "ehci_clk"; |
1237 | status = "disabled"; | 1249 | status = "disabled"; |
1238 | }; | 1250 | }; |
1251 | |||
1252 | ebi: ebi@10000000 { | ||
1253 | compatible = "atmel,at91sam9x5-ebi"; | ||
1254 | #address-cells = <2>; | ||
1255 | #size-cells = <1>; | ||
1256 | atmel,smc = <&smc>; | ||
1257 | atmel,matrix = <&matrix>; | ||
1258 | reg = <0x10000000 0x60000000>; | ||
1259 | ranges = <0x0 0x0 0x10000000 0x10000000 | ||
1260 | 0x1 0x0 0x20000000 0x10000000 | ||
1261 | 0x2 0x0 0x30000000 0x10000000 | ||
1262 | 0x3 0x0 0x40000000 0x10000000 | ||
1263 | 0x4 0x0 0x50000000 0x10000000 | ||
1264 | 0x5 0x0 0x60000000 0x10000000>; | ||
1265 | clocks = <&mck>; | ||
1266 | status = "disabled"; | ||
1267 | |||
1268 | nand_controller: nand-controller { | ||
1269 | compatible = "atmel,at91sam9g45-nand-controller"; | ||
1270 | ecc-engine = <&pmecc>; | ||
1271 | #address-cells = <2>; | ||
1272 | #size-cells = <1>; | ||
1273 | ranges; | ||
1274 | status = "disabled"; | ||
1275 | }; | ||
1276 | }; | ||
1239 | }; | 1277 | }; |
1240 | 1278 | ||
1241 | i2c-gpio-0 { | 1279 | i2c-gpio-0 { |
diff --git a/arch/arm/boot/dts/at91sam9x5cm.dtsi b/arch/arm/boot/dts/at91sam9x5cm.dtsi index b098ad8cd93a..bdeaa0b64a5b 100644 --- a/arch/arm/boot/dts/at91sam9x5cm.dtsi +++ b/arch/arm/boot/dts/at91sam9x5cm.dtsi | |||
@@ -37,38 +37,61 @@ | |||
37 | }; | 37 | }; |
38 | }; | 38 | }; |
39 | 39 | ||
40 | nand0: nand@40000000 { | 40 | ebi: ebi@10000000 { |
41 | nand-bus-width = <8>; | 41 | pinctrl-0 = <&pinctrl_ebi_addr_nand |
42 | nand-ecc-mode = "hw"; | 42 | &pinctrl_ebi_data_0_7>; |
43 | atmel,has-pmecc; /* Enable PMECC */ | 43 | pinctrl-names = "default"; |
44 | atmel,pmecc-cap = <2>; | ||
45 | atmel,pmecc-sector-size = <512>; | ||
46 | nand-on-flash-bbt; | ||
47 | status = "okay"; | 44 | status = "okay"; |
48 | 45 | ||
49 | at91bootstrap@0 { | 46 | nand_controller: nand-controller { |
50 | label = "at91bootstrap"; | 47 | status = "okay"; |
51 | reg = <0x0 0x40000>; | 48 | pinctrl-0 = <&pinctrl_nand_oe_we |
52 | }; | 49 | &pinctrl_nand_cs |
53 | 50 | &pinctrl_nand_rb>; | |
54 | uboot@40000 { | 51 | pinctrl-names = "default"; |
55 | label = "u-boot"; | 52 | |
56 | reg = <0x40000 0x80000>; | 53 | nand@3 { |
57 | }; | 54 | reg = <0x3 0x0 0x800000>; |
58 | 55 | rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>; | |
59 | ubootenv@c0000 { | 56 | cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>; |
60 | label = "U-Boot Env"; | 57 | nand-bus-width = <8>; |
61 | reg = <0xc0000 0x140000>; | 58 | nand-ecc-mode = "hw"; |
62 | }; | 59 | nand-ecc-strength = <2>; |
63 | 60 | nand-ecc-step-size = <512>; | |
64 | kernel@200000 { | 61 | nand-on-flash-bbt; |
65 | label = "kernel"; | 62 | label = "atmel_nand"; |
66 | reg = <0x200000 0x600000>; | 63 | |
67 | }; | 64 | partitions { |
68 | 65 | compatible = "fixed-partitions"; | |
69 | rootfs@800000 { | 66 | #address-cells = <1>; |
70 | label = "rootfs"; | 67 | #size-cells = <1>; |
71 | reg = <0x800000 0x1f800000>; | 68 | |
69 | at91bootstrap@0 { | ||
70 | label = "at91bootstrap"; | ||
71 | reg = <0x0 0x40000>; | ||
72 | }; | ||
73 | |||
74 | uboot@40000 { | ||
75 | label = "u-boot"; | ||
76 | reg = <0x40000 0x80000>; | ||
77 | }; | ||
78 | |||
79 | ubootenv@c0000 { | ||
80 | label = "U-Boot Env"; | ||
81 | reg = <0xc0000 0x140000>; | ||
82 | }; | ||
83 | |||
84 | kernel@200000 { | ||
85 | label = "kernel"; | ||
86 | reg = <0x200000 0x600000>; | ||
87 | }; | ||
88 | |||
89 | rootfs@800000 { | ||
90 | label = "rootfs"; | ||
91 | reg = <0x800000 0x1f800000>; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
72 | }; | 95 | }; |
73 | }; | 96 | }; |
74 | }; | 97 | }; |
diff --git a/arch/arm/boot/dts/ethernut5.dts b/arch/arm/boot/dts/ethernut5.dts index 4687229a3ab9..123b203be06c 100644 --- a/arch/arm/boot/dts/ethernut5.dts +++ b/arch/arm/boot/dts/ethernut5.dts | |||
@@ -55,25 +55,38 @@ | |||
55 | }; | 55 | }; |
56 | }; | 56 | }; |
57 | 57 | ||
58 | nand0: nand@40000000 { | 58 | ebi: ebi@10000000 { |
59 | nand-bus-width = <8>; | ||
60 | nand-ecc-mode = "soft"; | ||
61 | nand-on-flash-bbt; | ||
62 | status = "okay"; | 59 | status = "okay"; |
63 | 60 | ||
64 | gpios = <0 | 61 | nand_controller: nand-controller { |
65 | &pioC 14 GPIO_ACTIVE_HIGH | 62 | status = "okay"; |
66 | 0 | 63 | pinctrl-0 = <&pinctrl_nand_cs>; |
67 | >; | 64 | pinctrl-names = "default"; |
68 | 65 | ||
69 | root@0 { | 66 | nand: nand@3 { |
70 | label = "root"; | 67 | reg = <0x3 0x0 0x800000>; |
71 | reg = <0x0 0x08000000>; | 68 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
72 | }; | 69 | nand-bus-width = <8>; |
73 | 70 | nand-ecc-mode = "soft"; | |
74 | data@20000 { | 71 | nand-on-flash-bbt; |
75 | label = "data"; | 72 | label = "atmel_nand"; |
76 | reg = <0x08000000 0x38000000>; | 73 | |
74 | partitions { | ||
75 | compatible = "fixed-partitions"; | ||
76 | #address-cells = <1>; | ||
77 | #size-cells = <1>; | ||
78 | |||
79 | root@0 { | ||
80 | label = "root"; | ||
81 | reg = <0x0 0x08000000>; | ||
82 | }; | ||
83 | |||
84 | data@20000 { | ||
85 | label = "data"; | ||
86 | reg = <0x08000000 0x38000000>; | ||
87 | }; | ||
88 | }; | ||
89 | }; | ||
77 | }; | 90 | }; |
78 | }; | 91 | }; |
79 | 92 | ||
diff --git a/arch/arm/boot/dts/ge863-pro3.dtsi b/arch/arm/boot/dts/ge863-pro3.dtsi index 4aee5cc75fa4..8613944ea5c5 100644 --- a/arch/arm/boot/dts/ge863-pro3.dtsi +++ b/arch/arm/boot/dts/ge863-pro3.dtsi | |||
@@ -23,20 +23,39 @@ | |||
23 | }; | 23 | }; |
24 | }; | 24 | }; |
25 | 25 | ||
26 | nand0: nand@40000000 { | 26 | ebi: ebi@10000000 { |
27 | nand-bus-width = <8>; | ||
28 | nand-ecc-mode = "soft"; | ||
29 | nand-on-flash-bbt; | ||
30 | status = "okay"; | 27 | status = "okay"; |
31 | 28 | ||
32 | boot@0 { | 29 | nand_controller: nand-controller { |
33 | label = "boot"; | 30 | status = "okay"; |
34 | reg = <0x0 0x7c0000>; | 31 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
35 | }; | 32 | pinctrl-names = "default"; |
33 | |||
34 | nand@3 { | ||
35 | reg = <0x3 0x0 0x800000>; | ||
36 | rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>; | ||
37 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; | ||
38 | nand-bus-width = <8>; | ||
39 | nand-ecc-mode = "soft"; | ||
40 | nand-on-flash-bbt; | ||
41 | label = "atmel_nand"; | ||
42 | |||
43 | partitions { | ||
44 | compatible = "fixed-partitions"; | ||
45 | #address-cells = <1>; | ||
46 | #size-cells = <1>; | ||
47 | |||
48 | boot@0 { | ||
49 | label = "boot"; | ||
50 | reg = <0x0 0x7c0000>; | ||
51 | }; | ||
36 | 52 | ||
37 | root@07c0000 { | 53 | root@07c0000 { |
38 | label = "root"; | 54 | label = "root"; |
39 | reg = <0x7c0000 0x7840000>; | 55 | reg = <0x7c0000 0x7840000>; |
56 | }; | ||
57 | }; | ||
58 | }; | ||
40 | }; | 59 | }; |
41 | }; | 60 | }; |
42 | }; | 61 | }; |
diff --git a/arch/arm/boot/dts/pm9g45.dts b/arch/arm/boot/dts/pm9g45.dts index 0abd7bf17568..3139221737ee 100644 --- a/arch/arm/boot/dts/pm9g45.dts +++ b/arch/arm/boot/dts/pm9g45.dts | |||
@@ -37,12 +37,10 @@ | |||
37 | }; | 37 | }; |
38 | 38 | ||
39 | pinctrl@fffff200 { | 39 | pinctrl@fffff200 { |
40 | 40 | nand { | |
41 | board { | 41 | pinctrl_nand_rb: nand-rb-0 { |
42 | pinctrl_board_nand: nand0-board { | ||
43 | atmel,pins = | 42 | atmel,pins = |
44 | <AT91_PIOD 3 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD3 gpio RDY pin pull_up*/ | 43 | <AT91_PIOD 3 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; |
45 | AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PC14 gpio enable pin pull_up */ | ||
46 | }; | 44 | }; |
47 | }; | 45 | }; |
48 | 46 | ||
@@ -71,50 +69,61 @@ | |||
71 | phy-mode = "rmii"; | 69 | phy-mode = "rmii"; |
72 | status = "okay"; | 70 | status = "okay"; |
73 | }; | 71 | }; |
74 | |||
75 | }; | 72 | }; |
76 | 73 | ||
77 | nand0: nand@40000000 { | 74 | ebi: ebi@10000000 { |
78 | nand-bus-width = <8>; | ||
79 | nand-ecc-mode = "soft"; | ||
80 | nand-on-flash-bbt; | ||
81 | pinctrl-0 = <&pinctrl_board_nand>; | ||
82 | |||
83 | gpios = <&pioD 3 GPIO_ACTIVE_HIGH | ||
84 | &pioC 14 GPIO_ACTIVE_HIGH | ||
85 | 0 | ||
86 | >; | ||
87 | |||
88 | status = "okay"; | 75 | status = "okay"; |
89 | 76 | ||
90 | at91bootstrap@0 { | 77 | nand_controller: nand-controller { |
91 | label = "at91bootstrap"; | 78 | status = "okay"; |
92 | reg = <0x0 0x20000>; | 79 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
93 | }; | 80 | pinctrl-names = "default"; |
94 | 81 | ||
95 | barebox@20000 { | 82 | nand@3 { |
96 | label = "barebox"; | 83 | reg = <0x3 0x0 0x800000>; |
97 | reg = <0x20000 0x40000>; | 84 | rb-gpios = <&pioD 3 GPIO_ACTIVE_HIGH>; |
98 | }; | 85 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
99 | 86 | nand-bus-width = <8>; | |
100 | bareboxenv@60000 { | 87 | nand-ecc-mode = "soft"; |
101 | label = "bareboxenv"; | 88 | nand-on-flash-bbt; |
102 | reg = <0x60000 0x1A0000>; | 89 | label = "atmel_nand"; |
103 | }; | 90 | |
104 | 91 | partitions { | |
105 | kernel@200000 { | 92 | compatible = "fixed-partitions"; |
106 | label = "bareboxenv2"; | 93 | #address-cells = <1>; |
107 | reg = <0x200000 0x300000>; | 94 | #size-cells = <1>; |
108 | }; | 95 | |
109 | 96 | at91bootstrap@0 { | |
110 | kernel@500000 { | 97 | label = "at91bootstrap"; |
111 | label = "root"; | 98 | reg = <0x0 0x20000>; |
112 | reg = <0x500000 0x400000>; | 99 | }; |
113 | }; | 100 | |
114 | 101 | barebox@20000 { | |
115 | data@900000 { | 102 | label = "barebox"; |
116 | label = "data"; | 103 | reg = <0x20000 0x40000>; |
117 | reg = <0x900000 0x8340000>; | 104 | }; |
105 | |||
106 | bareboxenv@60000 { | ||
107 | label = "bareboxenv"; | ||
108 | reg = <0x60000 0x1A0000>; | ||
109 | }; | ||
110 | |||
111 | kernel@200000 { | ||
112 | label = "bareboxenv2"; | ||
113 | reg = <0x200000 0x300000>; | ||
114 | }; | ||
115 | |||
116 | kernel@500000 { | ||
117 | label = "root"; | ||
118 | reg = <0x500000 0x400000>; | ||
119 | }; | ||
120 | |||
121 | data@900000 { | ||
122 | label = "data"; | ||
123 | reg = <0x900000 0x8340000>; | ||
124 | }; | ||
125 | }; | ||
126 | }; | ||
118 | }; | 127 | }; |
119 | }; | 128 | }; |
120 | 129 | ||
diff --git a/arch/arm/boot/dts/sama5d2.dtsi b/arch/arm/boot/dts/sama5d2.dtsi index 8067c71c3a38..cc06da394366 100644 --- a/arch/arm/boot/dts/sama5d2.dtsi +++ b/arch/arm/boot/dts/sama5d2.dtsi | |||
@@ -135,6 +135,12 @@ | |||
135 | #size-cells = <1>; | 135 | #size-cells = <1>; |
136 | ranges; | 136 | ranges; |
137 | 137 | ||
138 | nfc_sram: sram@00100000 { | ||
139 | compatible = "mmio-sram"; | ||
140 | no-memory-wc; | ||
141 | reg = <0x00100000 0x2400>; | ||
142 | }; | ||
143 | |||
138 | usb0: gadget@00300000 { | 144 | usb0: gadget@00300000 { |
139 | #address-cells = <1>; | 145 | #address-cells = <1>; |
140 | #size-cells = <0>; | 146 | #size-cells = <0>; |
@@ -291,6 +297,32 @@ | |||
291 | cache-level = <2>; | 297 | cache-level = <2>; |
292 | }; | 298 | }; |
293 | 299 | ||
300 | ebi: ebi@10000000 { | ||
301 | compatible = "atmel,sama5d3-ebi"; | ||
302 | #address-cells = <2>; | ||
303 | #size-cells = <1>; | ||
304 | atmel,smc = <&hsmc>; | ||
305 | reg = <0x10000000 0x10000000 | ||
306 | 0x40000000 0x30000000>; | ||
307 | ranges = <0x0 0x0 0x10000000 0x10000000 | ||
308 | 0x1 0x0 0x60000000 0x10000000 | ||
309 | 0x2 0x0 0x70000000 0x10000000 | ||
310 | 0x3 0x0 0x80000000 0x10000000>; | ||
311 | clocks = <&mck>; | ||
312 | status = "disabled"; | ||
313 | |||
314 | nand_controller: nand-controller { | ||
315 | compatible = "atmel,sama5d3-nand-controller"; | ||
316 | atmel,nfc-sram = <&nfc_sram>; | ||
317 | atmel,nfc-io = <&nfc_io>; | ||
318 | ecc-engine = <&pmecc>; | ||
319 | #address-cells = <2>; | ||
320 | #size-cells = <1>; | ||
321 | ranges; | ||
322 | status = "disabled"; | ||
323 | }; | ||
324 | }; | ||
325 | |||
294 | nand0: nand@80000000 { | 326 | nand0: nand@80000000 { |
295 | compatible = "atmel,sama5d2-nand"; | 327 | compatible = "atmel,sama5d2-nand"; |
296 | #address-cells = <1>; | 328 | #address-cells = <1>; |
@@ -347,6 +379,11 @@ | |||
347 | status = "disabled"; | 379 | status = "disabled"; |
348 | }; | 380 | }; |
349 | 381 | ||
382 | nfc_io: nfc-io@c0000000 { | ||
383 | compatible = "atmel,sama5d3-nfc-io", "syscon"; | ||
384 | reg = <0xc0000000 0x8000000>; | ||
385 | }; | ||
386 | |||
350 | apb { | 387 | apb { |
351 | compatible = "simple-bus"; | 388 | compatible = "simple-bus"; |
352 | #address-cells = <1>; | 389 | #address-cells = <1>; |
@@ -762,6 +799,18 @@ | |||
762 | atmel,clk-output-range = <0 83000000>; | 799 | atmel,clk-output-range = <0 83000000>; |
763 | }; | 800 | }; |
764 | 801 | ||
802 | can0_clk: can0_clk { | ||
803 | #clock-cells = <0>; | ||
804 | reg = <56>; | ||
805 | atmel,clk-output-range = <0 83000000>; | ||
806 | }; | ||
807 | |||
808 | can1_clk: can1_clk { | ||
809 | #clock-cells = <0>; | ||
810 | reg = <57>; | ||
811 | atmel,clk-output-range = <0 83000000>; | ||
812 | }; | ||
813 | |||
765 | classd_clk: classd_clk { | 814 | classd_clk: classd_clk { |
766 | #clock-cells = <0>; | 815 | #clock-cells = <0>; |
767 | reg = <59>; | 816 | reg = <59>; |
@@ -890,6 +939,18 @@ | |||
890 | #clock-cells = <0>; | 939 | #clock-cells = <0>; |
891 | reg = <55>; | 940 | reg = <55>; |
892 | }; | 941 | }; |
942 | |||
943 | can0_gclk: can0_gclk { | ||
944 | #clock-cells = <0>; | ||
945 | reg = <56>; | ||
946 | atmel,clk-output-range = <0 80000000>; | ||
947 | }; | ||
948 | |||
949 | can1_gclk: can1_gclk { | ||
950 | #clock-cells = <0>; | ||
951 | reg = <57>; | ||
952 | atmel,clk-output-range = <0 80000000>; | ||
953 | }; | ||
893 | }; | 954 | }; |
894 | }; | 955 | }; |
895 | 956 | ||
@@ -986,6 +1047,22 @@ | |||
986 | clock-names = "t0_clk", "slow_clk"; | 1047 | clock-names = "t0_clk", "slow_clk"; |
987 | }; | 1048 | }; |
988 | 1049 | ||
1050 | hsmc: hsmc@f8014000 { | ||
1051 | compatible = "atmel,sama5d3-smc", "syscon", "simple-mfd"; | ||
1052 | reg = <0xf8014000 0x1000>; | ||
1053 | interrupts = <5 IRQ_TYPE_LEVEL_HIGH 6>; | ||
1054 | clocks = <&hsmc_clk>; | ||
1055 | #address-cells = <1>; | ||
1056 | #size-cells = <1>; | ||
1057 | ranges; | ||
1058 | |||
1059 | pmecc: ecc-engine@ffffc070 { | ||
1060 | compatible = "atmel,sama5d2-pmecc"; | ||
1061 | reg = <0xffffc070 0x490>, | ||
1062 | <0xffffc500 0x100>; | ||
1063 | }; | ||
1064 | }; | ||
1065 | |||
989 | pdmic: pdmic@f8018000 { | 1066 | pdmic: pdmic@f8018000 { |
990 | compatible = "atmel,sama5d2-pdmic"; | 1067 | compatible = "atmel,sama5d2-pdmic"; |
991 | reg = <0xf8018000 0x124>; | 1068 | reg = <0xf8018000 0x124>; |
@@ -1065,6 +1142,14 @@ | |||
1065 | status = "disabled"; | 1142 | status = "disabled"; |
1066 | }; | 1143 | }; |
1067 | 1144 | ||
1145 | pwm0: pwm@f802c000 { | ||
1146 | compatible = "atmel,sama5d2-pwm"; | ||
1147 | reg = <0xf802c000 0x4000>; | ||
1148 | interrupts = <38 IRQ_TYPE_LEVEL_HIGH 7>; | ||
1149 | #pwm-cells = <3>; | ||
1150 | clocks = <&pwm_clk>; | ||
1151 | }; | ||
1152 | |||
1068 | sfr: sfr@f8030000 { | 1153 | sfr: sfr@f8030000 { |
1069 | compatible = "atmel,sama5d2-sfr", "syscon"; | 1154 | compatible = "atmel,sama5d2-sfr", "syscon"; |
1070 | reg = <0xf8030000 0x98>; | 1155 | reg = <0xf8030000 0x98>; |
@@ -1144,6 +1229,22 @@ | |||
1144 | clocks = <&clk32k>; | 1229 | clocks = <&clk32k>; |
1145 | }; | 1230 | }; |
1146 | 1231 | ||
1232 | can0: can@f8054000 { | ||
1233 | compatible = "bosch,m_can"; | ||
1234 | reg = <0xf8054000 0x4000>, <0x210000 0x4000>; | ||
1235 | reg-names = "m_can", "message_ram"; | ||
1236 | interrupts = <56 IRQ_TYPE_LEVEL_HIGH 7>, | ||
1237 | <64 IRQ_TYPE_LEVEL_HIGH 7>; | ||
1238 | interrupt-names = "int0", "int1"; | ||
1239 | clocks = <&can0_clk>, <&can0_gclk>; | ||
1240 | clock-names = "hclk", "cclk"; | ||
1241 | assigned-clocks = <&can0_gclk>; | ||
1242 | assigned-clock-parents = <&utmi>; | ||
1243 | assigned-clock-rates = <40000000>; | ||
1244 | bosch,mram-cfg = <0x0 0 0 64 0 0 32 32>; | ||
1245 | status = "disabled"; | ||
1246 | }; | ||
1247 | |||
1147 | spi1: spi@fc000000 { | 1248 | spi1: spi@fc000000 { |
1148 | compatible = "atmel,at91rm9200-spi"; | 1249 | compatible = "atmel,at91rm9200-spi"; |
1149 | reg = <0xfc000000 0x100>; | 1250 | reg = <0xfc000000 0x100>; |
@@ -1305,6 +1406,22 @@ | |||
1305 | status = "okay"; | 1406 | status = "okay"; |
1306 | }; | 1407 | }; |
1307 | 1408 | ||
1409 | can1: can@fc050000 { | ||
1410 | compatible = "bosch,m_can"; | ||
1411 | reg = <0xfc050000 0x4000>, <0x210000 0x4000>; | ||
1412 | reg-names = "m_can", "message_ram"; | ||
1413 | interrupts = <57 IRQ_TYPE_LEVEL_HIGH 7>, | ||
1414 | <65 IRQ_TYPE_LEVEL_HIGH 7>; | ||
1415 | interrupt-names = "int0", "int1"; | ||
1416 | clocks = <&can1_clk>, <&can1_gclk>; | ||
1417 | clock-names = "hclk", "cclk"; | ||
1418 | assigned-clocks = <&can1_gclk>; | ||
1419 | assigned-clock-parents = <&utmi>; | ||
1420 | assigned-clock-rates = <40000000>; | ||
1421 | bosch,mram-cfg = <0x1100 0 0 64 0 0 32 32>; | ||
1422 | status = "disabled"; | ||
1423 | }; | ||
1424 | |||
1308 | sfrbu: sfr@fc05c000 { | 1425 | sfrbu: sfr@fc05c000 { |
1309 | compatible = "atmel,sama5d2-sfrbu", "syscon"; | 1426 | compatible = "atmel,sama5d2-sfrbu", "syscon"; |
1310 | reg = <0xfc05c000 0x20>; | 1427 | reg = <0xfc05c000 0x20>; |
diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi index b06448ba6649..554d0bdedc7a 100644 --- a/arch/arm/boot/dts/sama5d3.dtsi +++ b/arch/arm/boot/dts/sama5d3.dtsi | |||
@@ -429,6 +429,22 @@ | |||
429 | clocks = <&trng_clk>; | 429 | clocks = <&trng_clk>; |
430 | }; | 430 | }; |
431 | 431 | ||
432 | hsmc: hsmc@ffffc000 { | ||
433 | compatible = "atmel,sama5d3-smc", "syscon", "simple-mfd"; | ||
434 | reg = <0xffffc000 0x1000>; | ||
435 | interrupts = <5 IRQ_TYPE_LEVEL_HIGH 6>; | ||
436 | clocks = <&hsmc_clk>; | ||
437 | #address-cells = <1>; | ||
438 | #size-cells = <1>; | ||
439 | ranges; | ||
440 | |||
441 | pmecc: ecc-engine@ffffc070 { | ||
442 | compatible = "atmel,at91sam9g45-pmecc"; | ||
443 | reg = <0xffffc070 0x490>, | ||
444 | <0xffffc500 0x100>; | ||
445 | }; | ||
446 | }; | ||
447 | |||
432 | dma0: dma-controller@ffffe600 { | 448 | dma0: dma-controller@ffffe600 { |
433 | compatible = "atmel,at91sam9g45-dma"; | 449 | compatible = "atmel,at91sam9g45-dma"; |
434 | reg = <0xffffe600 0x200>; | 450 | reg = <0xffffe600 0x200>; |
@@ -554,6 +570,66 @@ | |||
554 | }; | 570 | }; |
555 | }; | 571 | }; |
556 | 572 | ||
573 | ebi { | ||
574 | pinctrl_ebi_addr: ebi-addr-0 { | ||
575 | atmel,pins = | ||
576 | <AT91_PIOE 1 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
577 | AT91_PIOE 2 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
578 | AT91_PIOE 3 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
579 | AT91_PIOE 4 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
580 | AT91_PIOE 5 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
581 | AT91_PIOE 6 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
582 | AT91_PIOE 7 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
583 | AT91_PIOE 8 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
584 | AT91_PIOE 9 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
585 | AT91_PIOE 10 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
586 | AT91_PIOE 11 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
587 | AT91_PIOE 12 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
588 | AT91_PIOE 13 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
589 | AT91_PIOE 14 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
590 | AT91_PIOE 15 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
591 | AT91_PIOE 16 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
592 | AT91_PIOE 17 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
593 | AT91_PIOE 18 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
594 | AT91_PIOE 19 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
595 | AT91_PIOE 20 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
596 | AT91_PIOE 21 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
597 | AT91_PIOE 22 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
598 | AT91_PIOE 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
599 | }; | ||
600 | |||
601 | pinctrl_ebi_nand_addr: ebi-addr-1 { | ||
602 | atmel,pins = | ||
603 | <AT91_PIOE 21 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
604 | AT91_PIOE 22 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
605 | }; | ||
606 | |||
607 | pinctrl_ebi_cs0: ebi-cs0-0 { | ||
608 | atmel,pins = | ||
609 | <AT91_PIOE 24 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
610 | }; | ||
611 | |||
612 | pinctrl_ebi_cs1: ebi-cs1-0 { | ||
613 | atmel,pins = | ||
614 | <AT91_PIOE 25 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
615 | }; | ||
616 | |||
617 | pinctrl_ebi_cs2: ebi-cs2-0 { | ||
618 | atmel,pins = | ||
619 | <AT91_PIOE 26 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
620 | }; | ||
621 | |||
622 | pinctrl_ebi_nwait: ebi-nwait-0 { | ||
623 | atmel,pins = | ||
624 | <AT91_PIOE 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
625 | }; | ||
626 | |||
627 | pinctrl_ebi_nwr1_nbs1: ebi-nwr1-nbs1-0 { | ||
628 | atmel,pins = | ||
629 | <AT91_PIOE 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
630 | }; | ||
631 | }; | ||
632 | |||
557 | i2c0 { | 633 | i2c0 { |
558 | pinctrl_i2c0: i2c0-0 { | 634 | pinctrl_i2c0: i2c0-0 { |
559 | atmel,pins = | 635 | atmel,pins = |
@@ -1326,6 +1402,12 @@ | |||
1326 | }; | 1402 | }; |
1327 | }; | 1403 | }; |
1328 | 1404 | ||
1405 | nfc_sram: sram@200000 { | ||
1406 | compatible = "mmio-sram"; | ||
1407 | no-memory-wc; | ||
1408 | reg = <0x200000 0x2400>; | ||
1409 | }; | ||
1410 | |||
1329 | usb0: gadget@00500000 { | 1411 | usb0: gadget@00500000 { |
1330 | #address-cells = <1>; | 1412 | #address-cells = <1>; |
1331 | #size-cells = <0>; | 1413 | #size-cells = <0>; |
@@ -1461,36 +1543,35 @@ | |||
1461 | status = "disabled"; | 1543 | status = "disabled"; |
1462 | }; | 1544 | }; |
1463 | 1545 | ||
1464 | nand0: nand@60000000 { | 1546 | ebi: ebi@10000000 { |
1465 | compatible = "atmel,at91rm9200-nand"; | 1547 | compatible = "atmel,sama5d3-ebi"; |
1466 | #address-cells = <1>; | 1548 | #address-cells = <2>; |
1467 | #size-cells = <1>; | 1549 | #size-cells = <1>; |
1468 | ranges; | 1550 | atmel,smc = <&hsmc>; |
1469 | reg = < 0x60000000 0x01000000 /* EBI CS3 */ | 1551 | reg = <0x10000000 0x10000000 |
1470 | 0xffffc070 0x00000490 /* SMC PMECC regs */ | 1552 | 0x40000000 0x30000000>; |
1471 | 0xffffc500 0x00000100 /* SMC PMECC Error Location regs */ | 1553 | ranges = <0x0 0x0 0x10000000 0x10000000 |
1472 | 0x00110000 0x00018000 /* ROM code */ | 1554 | 0x1 0x0 0x40000000 0x10000000 |
1473 | >; | 1555 | 0x2 0x0 0x50000000 0x10000000 |
1474 | interrupts = <5 IRQ_TYPE_LEVEL_HIGH 6>; | 1556 | 0x3 0x0 0x60000000 0x10000000>; |
1475 | atmel,nand-addr-offset = <21>; | 1557 | clocks = <&mck>; |
1476 | atmel,nand-cmd-offset = <22>; | ||
1477 | atmel,nand-has-dma; | ||
1478 | pinctrl-names = "default"; | ||
1479 | pinctrl-0 = <&pinctrl_nand0_ale_cle>; | ||
1480 | atmel,pmecc-lookup-table-offset = <0x0 0x8000>; | ||
1481 | status = "disabled"; | 1558 | status = "disabled"; |
1482 | 1559 | ||
1483 | nfc@70000000 { | 1560 | nand_controller: nand-controller { |
1484 | compatible = "atmel,sama5d3-nfc"; | 1561 | compatible = "atmel,sama5d3-nand-controller"; |
1485 | #address-cells = <1>; | 1562 | atmel,nfc-sram = <&nfc_sram>; |
1563 | atmel,nfc-io = <&nfc_io>; | ||
1564 | ecc-engine = <&pmecc>; | ||
1565 | #address-cells = <2>; | ||
1486 | #size-cells = <1>; | 1566 | #size-cells = <1>; |
1487 | reg = < | 1567 | ranges; |
1488 | 0x70000000 0x08000000 /* NFC Command Registers */ | 1568 | status = "disabled"; |
1489 | 0xffffc000 0x00000070 /* NFC HSMC regs */ | ||
1490 | 0x00200000 0x00100000 /* NFC SRAM banks */ | ||
1491 | >; | ||
1492 | clocks = <&hsmc_clk>; | ||
1493 | }; | 1569 | }; |
1494 | }; | 1570 | }; |
1571 | |||
1572 | nfc_io: nfc-io@70000000 { | ||
1573 | compatible = "atmel,sama5d3-nfc-io", "syscon"; | ||
1574 | reg = <0x70000000 0x8000000>; | ||
1575 | }; | ||
1495 | }; | 1576 | }; |
1496 | }; | 1577 | }; |
diff --git a/arch/arm/boot/dts/sama5d3xcm.dtsi b/arch/arm/boot/dts/sama5d3xcm.dtsi index b5e111b29da1..9506daf5efb6 100644 --- a/arch/arm/boot/dts/sama5d3xcm.dtsi +++ b/arch/arm/boot/dts/sama5d3xcm.dtsi | |||
@@ -36,43 +36,82 @@ | |||
36 | }; | 36 | }; |
37 | }; | 37 | }; |
38 | 38 | ||
39 | nand0: nand@60000000 { | 39 | ebi@10000000 { |
40 | nand-bus-width = <8>; | 40 | pinctrl-0 = <&pinctrl_ebi_addr &pinctrl_ebi_cs0>; |
41 | nand-ecc-mode = "hw"; | 41 | pinctr-name = "default"; |
42 | atmel,has-pmecc; | ||
43 | atmel,pmecc-cap = <4>; | ||
44 | atmel,pmecc-sector-size = <512>; | ||
45 | nand-on-flash-bbt; | ||
46 | status = "okay"; | 42 | status = "okay"; |
47 | 43 | ||
48 | at91bootstrap@0 { | 44 | nor: flash@0,0 { |
49 | label = "at91bootstrap"; | 45 | compatible = "cfi-flash"; |
50 | reg = <0x0 0x40000>; | 46 | linux,mtd-name = "physmap-flash.0"; |
47 | #address-cells = <1>; | ||
48 | #size-cells = <1>; | ||
49 | reg = <0x0 0x0 0x1000000>; | ||
50 | bank-width = <2>; | ||
51 | atmel,smc-read-mode = "nrd"; | ||
52 | atmel,smc-write-mode = "nwe"; | ||
53 | atmel,smc-bus-width = <16>; | ||
54 | atmel,smc-ncs-rd-setup-ns = <0>; | ||
55 | atmel,smc-ncs-wr-setup-ns = <0>; | ||
56 | atmel,smc-nwe-setup-ns = <8>; | ||
57 | atmel,smc-nrd-setup-ns = <16>; | ||
58 | atmel,smc-ncs-rd-pulse-ns = <84>; | ||
59 | atmel,smc-ncs-wr-pulse-ns = <84>; | ||
60 | atmel,smc-nrd-pulse-ns = <76>; | ||
61 | atmel,smc-nwe-pulse-ns = <76>; | ||
62 | atmel,smc-nrd-cycle-ns = <107>; | ||
63 | atmel,smc-nwe-cycle-ns = <84>; | ||
64 | atmel,smc-tdf-ns = <16>; | ||
51 | }; | 65 | }; |
52 | 66 | ||
53 | bootloader@40000 { | 67 | nand_controller: nand-controller { |
54 | label = "bootloader"; | 68 | status = "okay"; |
55 | reg = <0x40000 0x80000>; | ||
56 | }; | ||
57 | 69 | ||
58 | bootloaderenv@c0000 { | 70 | nand@3 { |
59 | label = "bootloader env"; | 71 | reg = <0x3 0x0 0x2>; |
60 | reg = <0xc0000 0xc0000>; | 72 | atmel,rb = <0>; |
61 | }; | 73 | nand-ecc-mode = "hw"; |
74 | nand-ecc-strength = <4>; | ||
75 | nand-ecc-step-size = <512>; | ||
76 | nand-on-flash-bbt; | ||
77 | label = "atmel_nand"; | ||
62 | 78 | ||
63 | dtb@180000 { | 79 | partitions { |
64 | label = "device tree"; | 80 | compatible = "fixed-partitions"; |
65 | reg = <0x180000 0x80000>; | 81 | #address-cells = <1>; |
66 | }; | 82 | #size-cells = <1>; |
67 | 83 | ||
68 | kernel@200000 { | 84 | at91bootstrap@0 { |
69 | label = "kernel"; | 85 | label = "at91bootstrap"; |
70 | reg = <0x200000 0x600000>; | 86 | reg = <0x0 0x40000>; |
71 | }; | 87 | }; |
88 | |||
89 | bootloader@40000 { | ||
90 | label = "bootloader"; | ||
91 | reg = <0x40000 0x80000>; | ||
92 | }; | ||
93 | |||
94 | bootloaderenv@c0000 { | ||
95 | label = "bootloader env"; | ||
96 | reg = <0xc0000 0xc0000>; | ||
97 | }; | ||
98 | |||
99 | dtb@180000 { | ||
100 | label = "device tree"; | ||
101 | reg = <0x180000 0x80000>; | ||
102 | }; | ||
103 | |||
104 | kernel@200000 { | ||
105 | label = "kernel"; | ||
106 | reg = <0x200000 0x600000>; | ||
107 | }; | ||
72 | 108 | ||
73 | rootfs@800000 { | 109 | rootfs@800000 { |
74 | label = "rootfs"; | 110 | label = "rootfs"; |
75 | reg = <0x800000 0x0f800000>; | 111 | reg = <0x800000 0x0f800000>; |
112 | }; | ||
113 | }; | ||
114 | }; | ||
76 | }; | 115 | }; |
77 | }; | 116 | }; |
78 | }; | 117 | }; |
diff --git a/arch/arm/boot/dts/sama5d3xcm_cmp.dtsi b/arch/arm/boot/dts/sama5d3xcm_cmp.dtsi index dc7572bc7ff0..75cbf4d4ab1a 100644 --- a/arch/arm/boot/dts/sama5d3xcm_cmp.dtsi +++ b/arch/arm/boot/dts/sama5d3xcm_cmp.dtsi | |||
@@ -148,43 +148,60 @@ | |||
148 | }; | 148 | }; |
149 | }; | 149 | }; |
150 | 150 | ||
151 | nand0: nand@60000000 { | 151 | ebi: ebi@10000000 { |
152 | nand-bus-width = <8>; | 152 | pinctrl-0 = <&pinctrl_ebi_nand_addr>; |
153 | nand-ecc-mode = "hw"; | 153 | pinctrl-names = "default"; |
154 | atmel,has-pmecc; | ||
155 | atmel,pmecc-cap = <4>; | ||
156 | atmel,pmecc-sector-size = <512>; | ||
157 | nand-on-flash-bbt; | ||
158 | status = "okay"; | 154 | status = "okay"; |
159 | 155 | ||
160 | at91bootstrap@0 { | 156 | nand_controller: nand-controller { |
161 | label = "at91bootstrap"; | 157 | status = "okay"; |
162 | reg = <0x0 0x40000>; | 158 | |
163 | }; | 159 | nand@3 { |
160 | reg = <0x3 0x0 0x2>; | ||
161 | atmel,rb = <0>; | ||
162 | nand-bus-width = <8>; | ||
163 | nand-ecc-mode = "hw"; | ||
164 | nand-ecc-strength = <4>; | ||
165 | nand-ecc-step-size = <512>; | ||
166 | nand-on-flash-bbt; | ||
167 | label = "atmel_nand"; | ||
168 | |||
169 | partitions { | ||
170 | compatible = "fixed-partitions"; | ||
171 | #address-cells = <1>; | ||
172 | #size-cells = <1>; | ||
173 | |||
174 | at91bootstrap@0 { | ||
175 | label = "at91bootstrap"; | ||
176 | reg = <0x0 0x40000>; | ||
177 | }; | ||
164 | 178 | ||
165 | bootloader@40000 { | 179 | bootloader@40000 { |
166 | label = "bootloader"; | 180 | label = "bootloader"; |
167 | reg = <0x40000 0x80000>; | 181 | reg = <0x40000 0x80000>; |
168 | }; | 182 | }; |
169 | 183 | ||
170 | bootloaderenv@c0000 { | 184 | bootloaderenv@c0000 { |
171 | label = "bootloader env"; | 185 | label = "bootloader env"; |
172 | reg = <0xc0000 0xc0000>; | 186 | reg = <0xc0000 0xc0000>; |
173 | }; | 187 | }; |
174 | 188 | ||
175 | dtb@180000 { | 189 | dtb@180000 { |
176 | label = "device tree"; | 190 | label = "device tree"; |
177 | reg = <0x180000 0x80000>; | 191 | reg = <0x180000 0x80000>; |
178 | }; | 192 | }; |
179 | 193 | ||
180 | kernel@200000 { | 194 | kernel@200000 { |
181 | label = "kernel"; | 195 | label = "kernel"; |
182 | reg = <0x200000 0x600000>; | 196 | reg = <0x200000 0x600000>; |
183 | }; | 197 | }; |
184 | 198 | ||
185 | rootfs@800000 { | 199 | rootfs@800000 { |
186 | label = "rootfs"; | 200 | label = "rootfs"; |
187 | reg = <0x800000 0x0f800000>; | 201 | reg = <0x800000 0x0f800000>; |
202 | }; | ||
203 | }; | ||
204 | }; | ||
188 | }; | 205 | }; |
189 | }; | 206 | }; |
190 | }; | 207 | }; |
diff --git a/arch/arm/boot/dts/sama5d4.dtsi b/arch/arm/boot/dts/sama5d4.dtsi index d3889c9d25a9..2fa36c525957 100644 --- a/arch/arm/boot/dts/sama5d4.dtsi +++ b/arch/arm/boot/dts/sama5d4.dtsi | |||
@@ -124,6 +124,12 @@ | |||
124 | #size-cells = <1>; | 124 | #size-cells = <1>; |
125 | ranges; | 125 | ranges; |
126 | 126 | ||
127 | nfc_sram: sram@100000 { | ||
128 | compatible = "mmio-sram"; | ||
129 | no-memory-wc; | ||
130 | reg = <0x100000 0x2400>; | ||
131 | }; | ||
132 | |||
127 | usb0: gadget@00400000 { | 133 | usb0: gadget@00400000 { |
128 | #address-cells = <1>; | 134 | #address-cells = <1>; |
129 | #size-cells = <0>; | 135 | #size-cells = <0>; |
@@ -280,37 +286,37 @@ | |||
280 | cache-level = <2>; | 286 | cache-level = <2>; |
281 | }; | 287 | }; |
282 | 288 | ||
283 | nand0: nand@80000000 { | 289 | ebi: ebi@10000000 { |
284 | compatible = "atmel,sama5d4-nand", "atmel,at91rm9200-nand"; | 290 | compatible = "atmel,sama5d3-ebi"; |
285 | #address-cells = <1>; | 291 | #address-cells = <2>; |
286 | #size-cells = <1>; | 292 | #size-cells = <1>; |
287 | ranges; | 293 | atmel,smc = <&hsmc>; |
288 | reg = < 0x80000000 0x08000000 /* EBI CS3 */ | 294 | reg = <0x10000000 0x10000000 |
289 | 0xfc05c070 0x00000490 /* SMC PMECC regs */ | 295 | 0x60000000 0x28000000>; |
290 | 0xfc05c500 0x00000100 /* SMC PMECC Error Location regs */ | 296 | ranges = <0x0 0x0 0x10000000 0x10000000 |
291 | >; | 297 | 0x1 0x0 0x60000000 0x10000000 |
292 | interrupts = <22 IRQ_TYPE_LEVEL_HIGH 6>; | 298 | 0x2 0x0 0x70000000 0x10000000 |
293 | atmel,nand-addr-offset = <21>; | 299 | 0x3 0x0 0x80000000 0x8000000>; |
294 | atmel,nand-cmd-offset = <22>; | 300 | clocks = <&mck>; |
295 | atmel,nand-has-dma; | ||
296 | pinctrl-names = "default"; | ||
297 | pinctrl-0 = <&pinctrl_nand>; | ||
298 | status = "disabled"; | 301 | status = "disabled"; |
299 | 302 | ||
300 | nfc@90000000 { | 303 | nand_controller: nand-controller { |
301 | compatible = "atmel,sama5d3-nfc"; | 304 | compatible = "atmel,sama5d3-nand-controller"; |
302 | #address-cells = <1>; | 305 | atmel,nfc-sram = <&nfc_sram>; |
306 | atmel,nfc-io = <&nfc_io>; | ||
307 | ecc-engine = <&pmecc>; | ||
308 | #address-cells = <2>; | ||
303 | #size-cells = <1>; | 309 | #size-cells = <1>; |
304 | reg = < | 310 | ranges; |
305 | 0x90000000 0x08000000 /* NFC Command Registers */ | 311 | status = "disabled"; |
306 | 0xfc05c000 0x00000070 /* NFC HSMC regs */ | ||
307 | 0x00100000 0x00100000 /* NFC SRAM banks */ | ||
308 | >; | ||
309 | clocks = <&hsmc_clk>; | ||
310 | atmel,write-by-sram; | ||
311 | }; | 312 | }; |
312 | }; | 313 | }; |
313 | 314 | ||
315 | nfc_io: nfc-io@90000000 { | ||
316 | compatible = "atmel,sama5d3-nfc-io", "syscon"; | ||
317 | reg = <0x90000000 0x8000000>; | ||
318 | }; | ||
319 | |||
314 | apb { | 320 | apb { |
315 | compatible = "simple-bus"; | 321 | compatible = "simple-bus"; |
316 | #address-cells = <1>; | 322 | #address-cells = <1>; |
@@ -1287,6 +1293,22 @@ | |||
1287 | status = "okay"; | 1293 | status = "okay"; |
1288 | }; | 1294 | }; |
1289 | 1295 | ||
1296 | hsmc: smc@fc05c000 { | ||
1297 | compatible = "atmel,sama5d3-smc", "syscon", "simple-mfd"; | ||
1298 | reg = <0xfc05c000 0x1000>; | ||
1299 | interrupts = <22 IRQ_TYPE_LEVEL_HIGH 6>; | ||
1300 | clocks = <&hsmc_clk>; | ||
1301 | #address-cells = <1>; | ||
1302 | #size-cells = <1>; | ||
1303 | ranges; | ||
1304 | |||
1305 | pmecc: ecc-engine@ffffc070 { | ||
1306 | compatible = "atmel,sama5d4-pmecc"; | ||
1307 | reg = <0xfc05c070 0x490>, | ||
1308 | <0xfc05c500 0x100>; | ||
1309 | }; | ||
1310 | }; | ||
1311 | |||
1290 | rstc@fc068600 { | 1312 | rstc@fc068600 { |
1291 | compatible = "atmel,sama5d3-rstc", "atmel,at91sam9g45-rstc"; | 1313 | compatible = "atmel,sama5d3-rstc", "atmel,at91sam9g45-rstc"; |
1292 | reg = <0xfc068600 0x10>; | 1314 | reg = <0xfc068600 0x10>; |
@@ -1447,6 +1469,113 @@ | |||
1447 | }; | 1469 | }; |
1448 | }; | 1470 | }; |
1449 | 1471 | ||
1472 | ebi { | ||
1473 | pinctrl_ebi_addr: ebi-addr-0 { | ||
1474 | atmel,pins = | ||
1475 | <AT91_PIOE 0 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1476 | AT91_PIOE 1 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1477 | AT91_PIOE 2 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1478 | AT91_PIOE 3 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1479 | AT91_PIOE 4 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1480 | AT91_PIOE 5 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1481 | AT91_PIOE 6 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1482 | AT91_PIOE 7 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1483 | AT91_PIOE 8 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1484 | AT91_PIOE 9 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1485 | AT91_PIOE 10 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1486 | AT91_PIOE 11 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1487 | AT91_PIOE 12 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1488 | AT91_PIOE 13 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1489 | AT91_PIOE 14 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1490 | AT91_PIOE 15 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1491 | AT91_PIOE 16 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1492 | AT91_PIOE 17 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1493 | AT91_PIOE 18 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1494 | AT91_PIOE 19 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1495 | AT91_PIOE 20 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1496 | AT91_PIOC 17 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1497 | AT91_PIOC 18 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1498 | AT91_PIOE 21 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1499 | AT91_PIOE 22 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1500 | AT91_PIOE 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1501 | }; | ||
1502 | |||
1503 | pinctrl_ebi_nand_addr: ebi-addr-1 { | ||
1504 | atmel,pins = | ||
1505 | <AT91_PIOC 17 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1506 | AT91_PIOC 18 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1507 | }; | ||
1508 | |||
1509 | pinctrl_ebi_cs0: ebi-cs0-0 { | ||
1510 | atmel,pins = | ||
1511 | <AT91_PIOE 26 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1512 | }; | ||
1513 | |||
1514 | pinctrl_ebi_cs1: ebi-cs1-0 { | ||
1515 | atmel,pins = | ||
1516 | <AT91_PIOE 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1517 | }; | ||
1518 | |||
1519 | pinctrl_ebi_cs2: ebi-cs2-0 { | ||
1520 | atmel,pins = | ||
1521 | <AT91_PIOE 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1522 | }; | ||
1523 | |||
1524 | pinctrl_ebi_cs3: ebi-cs3-0 { | ||
1525 | atmel,pins = | ||
1526 | <AT91_PIOC 15 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1527 | }; | ||
1528 | |||
1529 | pinctrl_ebi_data_0_7: ebi-data-lsb-0 { | ||
1530 | atmel,pins = | ||
1531 | <AT91_PIOC 5 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1532 | AT91_PIOC 6 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1533 | AT91_PIOC 7 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1534 | AT91_PIOC 8 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1535 | AT91_PIOC 9 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1536 | AT91_PIOC 10 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1537 | AT91_PIOC 11 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
1538 | AT91_PIOC 12 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1539 | }; | ||
1540 | |||
1541 | pinctrl_ebi_data_8_15: ebi-data-msb-0 { | ||
1542 | atmel,pins = | ||
1543 | <AT91_PIOB 18 AT91_PERIPH_B AT91_PINCTRL_NONE | ||
1544 | AT91_PIOB 19 AT91_PERIPH_B AT91_PINCTRL_NONE | ||
1545 | AT91_PIOB 20 AT91_PERIPH_B AT91_PINCTRL_NONE | ||
1546 | AT91_PIOB 21 AT91_PERIPH_B AT91_PINCTRL_NONE | ||
1547 | AT91_PIOB 22 AT91_PERIPH_B AT91_PINCTRL_NONE | ||
1548 | AT91_PIOB 23 AT91_PERIPH_B AT91_PINCTRL_NONE | ||
1549 | AT91_PIOB 24 AT91_PERIPH_B AT91_PINCTRL_NONE | ||
1550 | AT91_PIOB 25 AT91_PERIPH_B AT91_PINCTRL_NONE>; | ||
1551 | }; | ||
1552 | |||
1553 | pinctrl_ebi_nandrdy: ebi-nandrdy-0 { | ||
1554 | atmel,pins = | ||
1555 | <AT91_PIOC 16 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1556 | }; | ||
1557 | |||
1558 | pinctrl_ebi_nrd_nandoe: ebi-nrd-nandoe-0 { | ||
1559 | atmel,pins = | ||
1560 | <AT91_PIOC 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1561 | }; | ||
1562 | |||
1563 | pinctrl_ebi_nwait: ebi-nwait-0 { | ||
1564 | atmel,pins = | ||
1565 | <AT91_PIOE 30 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1566 | }; | ||
1567 | |||
1568 | pinctrl_ebi_nwe_nandwe: ebi-nwe-nandwe-0 { | ||
1569 | atmel,pins = | ||
1570 | <AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1571 | }; | ||
1572 | |||
1573 | pinctrl_ebi_nwr1_nbs1: ebi-nwr1-nbs1-0 { | ||
1574 | atmel,pins = | ||
1575 | <AT91_PIOE 29 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
1576 | }; | ||
1577 | }; | ||
1578 | |||
1450 | i2c0 { | 1579 | i2c0 { |
1451 | pinctrl_i2c0: i2c0-0 { | 1580 | pinctrl_i2c0: i2c0-0 { |
1452 | atmel,pins = | 1581 | atmel,pins = |
diff --git a/arch/arm/boot/dts/tny_a9260_common.dtsi b/arch/arm/boot/dts/tny_a9260_common.dtsi index f9dc463b9e48..5d83df4675a1 100644 --- a/arch/arm/boot/dts/tny_a9260_common.dtsi +++ b/arch/arm/boot/dts/tny_a9260_common.dtsi | |||
@@ -32,50 +32,69 @@ | |||
32 | }; | 32 | }; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | nand0: nand@40000000 { | 35 | ebi: ebi@10000000 { |
36 | nand-bus-width = <8>; | ||
37 | nand-ecc-mode = "soft"; | ||
38 | nand-on-flash-bbt; | ||
39 | status = "okay"; | 36 | status = "okay"; |
40 | 37 | ||
41 | at91bootstrap@0 { | 38 | nand_controller: nand-controller { |
42 | label = "at91bootstrap"; | 39 | status = "okay"; |
43 | reg = <0x0 0x20000>; | 40 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
44 | }; | 41 | pinctrl-names = "default"; |
45 | 42 | ||
46 | barebox@20000 { | 43 | nand@3 { |
47 | label = "barebox"; | 44 | reg = <0x3 0x0 0x800000>; |
48 | reg = <0x20000 0x40000>; | 45 | rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>; |
49 | }; | 46 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
47 | nand-bus-width = <8>; | ||
48 | nand-ecc-mode = "soft"; | ||
49 | nand-on-flash-bbt; | ||
50 | label = "atmel_nand"; | ||
50 | 51 | ||
51 | bareboxenv@60000 { | 52 | partitions { |
52 | label = "bareboxenv"; | 53 | compatible = "fixed-partitions"; |
53 | reg = <0x60000 0x20000>; | 54 | #address-cells = <1>; |
54 | }; | 55 | #size-cells = <1>; |
55 | 56 | ||
56 | bareboxenv2@80000 { | 57 | at91bootstrap@0 { |
57 | label = "bareboxenv2"; | 58 | label = "at91bootstrap"; |
58 | reg = <0x80000 0x20000>; | 59 | reg = <0x0 0x20000>; |
59 | }; | 60 | }; |
60 | 61 | ||
61 | oftree@80000 { | 62 | barebox@20000 { |
62 | label = "oftree"; | 63 | label = "barebox"; |
63 | reg = <0xa0000 0x20000>; | 64 | reg = <0x20000 0x40000>; |
64 | }; | 65 | }; |
65 | 66 | ||
66 | kernel@a0000 { | 67 | bareboxenv@60000 { |
67 | label = "kernel"; | 68 | label = "bareboxenv"; |
68 | reg = <0xc0000 0x400000>; | 69 | reg = <0x60000 0x20000>; |
69 | }; | 70 | }; |
70 | 71 | ||
71 | rootfs@4a0000 { | 72 | bareboxenv2@80000 { |
72 | label = "rootfs"; | 73 | label = "bareboxenv2"; |
73 | reg = <0x4c0000 0x7800000>; | 74 | reg = <0x80000 0x20000>; |
74 | }; | 75 | }; |
76 | |||
77 | oftree@80000 { | ||
78 | label = "oftree"; | ||
79 | reg = <0xa0000 0x20000>; | ||
80 | }; | ||
81 | |||
82 | kernel@a0000 { | ||
83 | label = "kernel"; | ||
84 | reg = <0xc0000 0x400000>; | ||
85 | }; | ||
86 | |||
87 | rootfs@4a0000 { | ||
88 | label = "rootfs"; | ||
89 | reg = <0x4c0000 0x7800000>; | ||
90 | }; | ||
75 | 91 | ||
76 | data@7ca0000 { | 92 | data@7ca0000 { |
77 | label = "data"; | 93 | label = "data"; |
78 | reg = <0x7cc0000 0x8340000>; | 94 | reg = <0x7cc0000 0x8340000>; |
95 | }; | ||
96 | }; | ||
97 | }; | ||
79 | }; | 98 | }; |
80 | }; | 99 | }; |
81 | }; | 100 | }; |
diff --git a/arch/arm/boot/dts/tny_a9263.dts b/arch/arm/boot/dts/tny_a9263.dts index 9161cd9889b4..8cf0a9e08571 100644 --- a/arch/arm/boot/dts/tny_a9263.dts +++ b/arch/arm/boot/dts/tny_a9263.dts | |||
@@ -42,50 +42,69 @@ | |||
42 | }; | 42 | }; |
43 | }; | 43 | }; |
44 | 44 | ||
45 | nand0: nand@40000000 { | 45 | ebi0: ebi@10000000 { |
46 | nand-bus-width = <8>; | ||
47 | nand-ecc-mode = "soft"; | ||
48 | nand-on-flash-bbt; | ||
49 | status = "okay"; | 46 | status = "okay"; |
50 | 47 | ||
51 | at91bootstrap@0 { | 48 | nand_controller: nand-controller { |
52 | label = "at91bootstrap"; | 49 | status = "okay"; |
53 | reg = <0x0 0x20000>; | 50 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
54 | }; | 51 | pinctrl-names = "default"; |
55 | 52 | ||
56 | barebox@20000 { | 53 | nand@3 { |
57 | label = "barebox"; | 54 | reg = <0x3 0x0 0x800000>; |
58 | reg = <0x20000 0x40000>; | 55 | rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>; |
59 | }; | 56 | cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>; |
60 | 57 | nand-bus-width = <8>; | |
61 | bareboxenv@60000 { | 58 | nand-ecc-mode = "soft"; |
62 | label = "bareboxenv"; | 59 | nand-on-flash-bbt; |
63 | reg = <0x60000 0x20000>; | 60 | label = "atmel_nand"; |
64 | }; | 61 | |
65 | 62 | partitions { | |
66 | bareboxenv2@80000 { | 63 | compatible = "fixed-partitions"; |
67 | label = "bareboxenv2"; | 64 | #address-cells = <1>; |
68 | reg = <0x80000 0x20000>; | 65 | #size-cells = <1>; |
69 | }; | 66 | |
70 | 67 | at91bootstrap@0 { | |
71 | oftree@80000 { | 68 | label = "at91bootstrap"; |
72 | label = "oftree"; | 69 | reg = <0x0 0x20000>; |
73 | reg = <0xa0000 0x20000>; | 70 | }; |
74 | }; | 71 | |
75 | 72 | barebox@20000 { | |
76 | kernel@a0000 { | 73 | label = "barebox"; |
77 | label = "kernel"; | 74 | reg = <0x20000 0x40000>; |
78 | reg = <0xc0000 0x400000>; | 75 | }; |
79 | }; | 76 | |
80 | 77 | bareboxenv@60000 { | |
81 | rootfs@4a0000 { | 78 | label = "bareboxenv"; |
82 | label = "rootfs"; | 79 | reg = <0x60000 0x20000>; |
83 | reg = <0x4c0000 0x7800000>; | 80 | }; |
84 | }; | 81 | |
85 | 82 | bareboxenv2@80000 { | |
86 | data@7ca0000 { | 83 | label = "bareboxenv2"; |
87 | label = "data"; | 84 | reg = <0x80000 0x20000>; |
88 | reg = <0x7cc0000 0x8340000>; | 85 | }; |
86 | |||
87 | oftree@80000 { | ||
88 | label = "oftree"; | ||
89 | reg = <0xa0000 0x20000>; | ||
90 | }; | ||
91 | |||
92 | kernel@a0000 { | ||
93 | label = "kernel"; | ||
94 | reg = <0xc0000 0x400000>; | ||
95 | }; | ||
96 | |||
97 | rootfs@4a0000 { | ||
98 | label = "rootfs"; | ||
99 | reg = <0x4c0000 0x7800000>; | ||
100 | }; | ||
101 | |||
102 | data@7ca0000 { | ||
103 | label = "data"; | ||
104 | reg = <0x7cc0000 0x8340000>; | ||
105 | }; | ||
106 | }; | ||
107 | }; | ||
89 | }; | 108 | }; |
90 | }; | 109 | }; |
91 | }; | 110 | }; |
diff --git a/arch/arm/boot/dts/usb_a9260_common.dtsi b/arch/arm/boot/dts/usb_a9260_common.dtsi index 7514b347cdd2..34a49995eda3 100644 --- a/arch/arm/boot/dts/usb_a9260_common.dtsi +++ b/arch/arm/boot/dts/usb_a9260_common.dtsi | |||
@@ -34,50 +34,69 @@ | |||
34 | }; | 34 | }; |
35 | }; | 35 | }; |
36 | 36 | ||
37 | nand0: nand@40000000 { | 37 | ebi: ebi@10000000 { |
38 | nand-bus-width = <8>; | ||
39 | nand-ecc-mode = "soft"; | ||
40 | nand-on-flash-bbt; | ||
41 | status = "okay"; | 38 | status = "okay"; |
42 | 39 | ||
43 | at91bootstrap@0 { | 40 | nand_controller: nand-controller { |
44 | label = "at91bootstrap"; | 41 | status = "okay"; |
45 | reg = <0x0 0x20000>; | 42 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
46 | }; | 43 | pinctrl-names = "default"; |
47 | 44 | ||
48 | barebox@20000 { | 45 | nand@3 { |
49 | label = "barebox"; | 46 | reg = <0x3 0x0 0x800000>; |
50 | reg = <0x20000 0x40000>; | 47 | rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>; |
51 | }; | 48 | cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>; |
52 | 49 | nand-bus-width = <8>; | |
53 | bareboxenv@60000 { | 50 | nand-ecc-mode = "soft"; |
54 | label = "bareboxenv"; | 51 | nand-on-flash-bbt; |
55 | reg = <0x60000 0x20000>; | 52 | label = "atmel_nand"; |
56 | }; | 53 | |
57 | 54 | partitions { | |
58 | bareboxenv2@80000 { | 55 | compatible = "fixed-partitions"; |
59 | label = "bareboxenv2"; | 56 | #address-cells = <1>; |
60 | reg = <0x80000 0x20000>; | 57 | #size-cells = <1>; |
61 | }; | 58 | |
62 | 59 | at91bootstrap@0 { | |
63 | oftree@80000 { | 60 | label = "at91bootstrap"; |
64 | label = "oftree"; | 61 | reg = <0x0 0x20000>; |
65 | reg = <0xa0000 0x20000>; | 62 | }; |
66 | }; | 63 | |
67 | 64 | barebox@20000 { | |
68 | kernel@a0000 { | 65 | label = "barebox"; |
69 | label = "kernel"; | 66 | reg = <0x20000 0x40000>; |
70 | reg = <0xc0000 0x400000>; | 67 | }; |
71 | }; | 68 | |
72 | 69 | bareboxenv@60000 { | |
73 | rootfs@4a0000 { | 70 | label = "bareboxenv"; |
74 | label = "rootfs"; | 71 | reg = <0x60000 0x20000>; |
75 | reg = <0x4c0000 0x7800000>; | 72 | }; |
76 | }; | 73 | |
77 | 74 | bareboxenv2@80000 { | |
78 | data@7ca0000 { | 75 | label = "bareboxenv2"; |
79 | label = "data"; | 76 | reg = <0x80000 0x20000>; |
80 | reg = <0x7cc0000 0x8340000>; | 77 | }; |
78 | |||
79 | oftree@80000 { | ||
80 | label = "oftree"; | ||
81 | reg = <0xa0000 0x20000>; | ||
82 | }; | ||
83 | |||
84 | kernel@a0000 { | ||
85 | label = "kernel"; | ||
86 | reg = <0xc0000 0x400000>; | ||
87 | }; | ||
88 | |||
89 | rootfs@4a0000 { | ||
90 | label = "rootfs"; | ||
91 | reg = <0x4c0000 0x7800000>; | ||
92 | }; | ||
93 | |||
94 | data@7ca0000 { | ||
95 | label = "data"; | ||
96 | reg = <0x7cc0000 0x8340000>; | ||
97 | }; | ||
98 | }; | ||
99 | }; | ||
81 | }; | 100 | }; |
82 | }; | 101 | }; |
83 | 102 | ||
diff --git a/arch/arm/boot/dts/usb_a9263.dts b/arch/arm/boot/dts/usb_a9263.dts index bfc48a272417..482381c1c962 100644 --- a/arch/arm/boot/dts/usb_a9263.dts +++ b/arch/arm/boot/dts/usb_a9263.dts | |||
@@ -62,50 +62,69 @@ | |||
62 | }; | 62 | }; |
63 | }; | 63 | }; |
64 | 64 | ||
65 | nand0: nand@40000000 { | 65 | ebi0: ebi@10000000 { |
66 | nand-bus-width = <8>; | ||
67 | nand-ecc-mode = "soft"; | ||
68 | nand-on-flash-bbt; | ||
69 | status = "okay"; | 66 | status = "okay"; |
70 | 67 | ||
71 | at91bootstrap@0 { | 68 | nand_controller: nand-controller { |
72 | label = "at91bootstrap"; | 69 | status = "okay"; |
73 | reg = <0x0 0x20000>; | 70 | pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>; |
74 | }; | 71 | pinctrl-names = "default"; |
75 | 72 | ||
76 | barebox@20000 { | 73 | nand@3 { |
77 | label = "barebox"; | 74 | reg = <0x3 0x0 0x800000>; |
78 | reg = <0x20000 0x40000>; | 75 | rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>; |
79 | }; | 76 | cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>; |
80 | 77 | nand-bus-width = <8>; | |
81 | bareboxenv@60000 { | 78 | nand-ecc-mode = "soft"; |
82 | label = "bareboxenv"; | 79 | nand-on-flash-bbt; |
83 | reg = <0x60000 0x20000>; | 80 | label = "atmel_nand"; |
84 | }; | 81 | |
85 | 82 | partitions { | |
86 | bareboxenv2@80000 { | 83 | compatible = "fixed-partitions"; |
87 | label = "bareboxenv2"; | 84 | #address-cells = <1>; |
88 | reg = <0x80000 0x20000>; | 85 | #size-cells = <1>; |
89 | }; | 86 | |
90 | 87 | at91bootstrap@0 { | |
91 | oftree@80000 { | 88 | label = "at91bootstrap"; |
92 | label = "oftree"; | 89 | reg = <0x0 0x20000>; |
93 | reg = <0xa0000 0x20000>; | 90 | }; |
94 | }; | 91 | |
95 | 92 | barebox@20000 { | |
96 | kernel@a0000 { | 93 | label = "barebox"; |
97 | label = "kernel"; | 94 | reg = <0x20000 0x40000>; |
98 | reg = <0xc0000 0x400000>; | 95 | }; |
99 | }; | 96 | |
100 | 97 | bareboxenv@60000 { | |
101 | rootfs@4a0000 { | 98 | label = "bareboxenv"; |
102 | label = "rootfs"; | 99 | reg = <0x60000 0x20000>; |
103 | reg = <0x4c0000 0x7800000>; | 100 | }; |
104 | }; | 101 | |
105 | 102 | bareboxenv2@80000 { | |
106 | data@7ca0000 { | 103 | label = "bareboxenv2"; |
107 | label = "data"; | 104 | reg = <0x80000 0x20000>; |
108 | reg = <0x7cc0000 0x8340000>; | 105 | }; |
106 | |||
107 | oftree@80000 { | ||
108 | label = "oftree"; | ||
109 | reg = <0xa0000 0x20000>; | ||
110 | }; | ||
111 | |||
112 | kernel@a0000 { | ||
113 | label = "kernel"; | ||
114 | reg = <0xc0000 0x400000>; | ||
115 | }; | ||
116 | |||
117 | rootfs@4a0000 { | ||
118 | label = "rootfs"; | ||
119 | reg = <0x4c0000 0x7800000>; | ||
120 | }; | ||
121 | |||
122 | data@7ca0000 { | ||
123 | label = "data"; | ||
124 | reg = <0x7cc0000 0x8340000>; | ||
125 | }; | ||
126 | }; | ||
127 | }; | ||
109 | }; | 128 | }; |
110 | }; | 129 | }; |
111 | 130 | ||