diff options
author | Andrew Victor <linux@maxim.org.za> | 2008-01-23 03:21:02 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-01-26 10:00:32 -0500 |
commit | 228235584f0dc1ab7f33f53d6cea8ee8a4d7f0da (patch) | |
tree | 1e65a03174b32c021c200117ba79f1d89f5ac4d6 | |
parent | bfbc32663d4846039f88c0eccc1956587d89c042 (diff) |
[ARM] 4755/1: [AT91] NAND update
Map the complete memory region (SZ_256M) as is done on the other AT91
processors.
The SMC_SMARTMEDIA bit should be set in the EBI controller to enable
the hardware NAND logic.
(Patch from Sascha Erlacher)
Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r-- | arch/arm/mach-at91/at91rm9200_devices.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-at91/at91sam9260_devices.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-at91/at91sam9261_devices.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-at91/at91sam9263_devices.c | 2 |
4 files changed, 5 insertions, 5 deletions
diff --git a/arch/arm/mach-at91/at91rm9200_devices.c b/arch/arm/mach-at91/at91rm9200_devices.c index cebea4168778..a2647265c214 100644 --- a/arch/arm/mach-at91/at91rm9200_devices.c +++ b/arch/arm/mach-at91/at91rm9200_devices.c | |||
@@ -376,7 +376,7 @@ static struct at91_nand_data nand_data; | |||
376 | static struct resource nand_resources[] = { | 376 | static struct resource nand_resources[] = { |
377 | { | 377 | { |
378 | .start = NAND_BASE, | 378 | .start = NAND_BASE, |
379 | .end = NAND_BASE + SZ_8M - 1, | 379 | .end = NAND_BASE + SZ_256M - 1, |
380 | .flags = IORESOURCE_MEM, | 380 | .flags = IORESOURCE_MEM, |
381 | } | 381 | } |
382 | }; | 382 | }; |
diff --git a/arch/arm/mach-at91/at91sam9260_devices.c b/arch/arm/mach-at91/at91sam9260_devices.c index 2e3db137bc49..8acd62b75cb0 100644 --- a/arch/arm/mach-at91/at91sam9260_devices.c +++ b/arch/arm/mach-at91/at91sam9260_devices.c | |||
@@ -290,7 +290,7 @@ static struct at91_nand_data nand_data; | |||
290 | static struct resource nand_resources[] = { | 290 | static struct resource nand_resources[] = { |
291 | { | 291 | { |
292 | .start = NAND_BASE, | 292 | .start = NAND_BASE, |
293 | .end = NAND_BASE + SZ_8M - 1, | 293 | .end = NAND_BASE + SZ_256M - 1, |
294 | .flags = IORESOURCE_MEM, | 294 | .flags = IORESOURCE_MEM, |
295 | } | 295 | } |
296 | }; | 296 | }; |
@@ -313,7 +313,7 @@ void __init at91_add_device_nand(struct at91_nand_data *data) | |||
313 | return; | 313 | return; |
314 | 314 | ||
315 | csa = at91_sys_read(AT91_MATRIX_EBICSA); | 315 | csa = at91_sys_read(AT91_MATRIX_EBICSA); |
316 | at91_sys_write(AT91_MATRIX_EBICSA, csa | AT91_MATRIX_CS3A_SMC); | 316 | at91_sys_write(AT91_MATRIX_EBICSA, csa | AT91_MATRIX_CS3A_SMC_SMARTMEDIA); |
317 | 317 | ||
318 | /* set the bus interface characteristics */ | 318 | /* set the bus interface characteristics */ |
319 | at91_sys_write(AT91_SMC_SETUP(3), AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) | 319 | at91_sys_write(AT91_SMC_SETUP(3), AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) |
diff --git a/arch/arm/mach-at91/at91sam9261_devices.c b/arch/arm/mach-at91/at91sam9261_devices.c index 266ccf01be53..ba84ba6f18fb 100644 --- a/arch/arm/mach-at91/at91sam9261_devices.c +++ b/arch/arm/mach-at91/at91sam9261_devices.c | |||
@@ -233,7 +233,7 @@ void __init at91_add_device_nand(struct at91_nand_data *data) | |||
233 | return; | 233 | return; |
234 | 234 | ||
235 | csa = at91_sys_read(AT91_MATRIX_EBICSA); | 235 | csa = at91_sys_read(AT91_MATRIX_EBICSA); |
236 | at91_sys_write(AT91_MATRIX_EBICSA, csa | AT91_MATRIX_CS3A_SMC); | 236 | at91_sys_write(AT91_MATRIX_EBICSA, csa | AT91_MATRIX_CS3A_SMC_SMARTMEDIA); |
237 | 237 | ||
238 | /* set the bus interface characteristics */ | 238 | /* set the bus interface characteristics */ |
239 | at91_sys_write(AT91_SMC_SETUP(3), AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) | 239 | at91_sys_write(AT91_SMC_SETUP(3), AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) |
diff --git a/arch/arm/mach-at91/at91sam9263_devices.c b/arch/arm/mach-at91/at91sam9263_devices.c index f83ef62f2385..c025f5c5ffaa 100644 --- a/arch/arm/mach-at91/at91sam9263_devices.c +++ b/arch/arm/mach-at91/at91sam9263_devices.c | |||
@@ -383,7 +383,7 @@ void __init at91_add_device_nand(struct at91_nand_data *data) | |||
383 | return; | 383 | return; |
384 | 384 | ||
385 | csa = at91_sys_read(AT91_MATRIX_EBI0CSA); | 385 | csa = at91_sys_read(AT91_MATRIX_EBI0CSA); |
386 | at91_sys_write(AT91_MATRIX_EBI0CSA, csa | AT91_MATRIX_EBI0_CS3A_SMC); | 386 | at91_sys_write(AT91_MATRIX_EBI0CSA, csa | AT91_MATRIX_EBI0_CS3A_SMC_SMARTMEDIA); |
387 | 387 | ||
388 | /* set the bus interface characteristics */ | 388 | /* set the bus interface characteristics */ |
389 | at91_sys_write(AT91_SMC_SETUP(3), AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) | 389 | at91_sys_write(AT91_SMC_SETUP(3), AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) |