Fix NAND FLASH timings
PATCH 1/1 Fix NAND FLASH timings
----- Forwarded message from Patrice Vilchez <[email protected]> -----
Date: Tue, 27 May 2008 11:15:29 +0200
From: Patrice Vilchez <[email protected]>
To: Jean-Christophe PLAGNIOL-VILLARD <[email protected]>
Subject: [PATCH] [AT91SAM9] Fix NAND FLASH timings
User-Agent: Thunderbird 2.0.0.14 (Windows/20080421)
Message-ID: <[email protected]>
CC: Stelian Pop <[email protected]>,
ATMEL - Nicolas Ferre <[email protected]>
Fix NAND FLASH timings for at91sam9x evaluation kits.
New timings are based on application note
"NAND Flash Support on AT91SAM9 Microcontrollers" available at
http://atmel.com/dyn/resources/prod_documents/doc6255.pdf
--- at91sam9260ek/at91sam9260ek.c | 4 ++-- at91sam9261ek/at91sam9261ek.c | 12 ++++++------ at91sam9263ek/at91sam9263ek.c | 4 ++-- at91sam9rlek/at91sam9rlek.c | 12 ++++++------
board/atmel/at91sam9260ek/at91sam9260ek.c +2 -2
@@ -80,8 +80,8 @@ static void at91sam9260ek_nand_hw_init(void)/* Configure SMC CS3 for NAND/SmartMedia */ at91_sys_write (AT91_SMC_SETUP (3 ), -AT91_SMC_NWESETUP_ (0 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | -AT91_SMC_NRDSETUP_ (0 ) |AT91_SMC_NCS_RDSETUP_ (0 )); +AT91_SMC_NWESETUP_ (1 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | +AT91_SMC_NRDSETUP_ (1 ) |AT91_SMC_NCS_RDSETUP_ (0 ));at91_sys_write (AT91_SMC_PULSE (3 ),AT91_SMC_NWEPULSE_ (3 ) |AT91_SMC_NCS_WRPULSE_ (3 ) |AT91_SMC_NRDPULSE_ (3 ) |AT91_SMC_NCS_RDPULSE_ (3 ));
board/atmel/at91sam9261ek/at91sam9261ek.c +6 -6
@@ -82,13 +82,13 @@ static void at91sam9261ek_nand_hw_init(void)/* Configure SMC CS3 for NAND/SmartMedia */ at91_sys_write (AT91_SMC_SETUP (3 ), -AT91_SMC_NWESETUP_ (0 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | -AT91_SMC_NRDSETUP_ (0 ) |AT91_SMC_NCS_RDSETUP_ (0 )); +AT91_SMC_NWESETUP_ (1 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | +AT91_SMC_NRDSETUP_ (1 ) |AT91_SMC_NCS_RDSETUP_ (0 ));at91_sys_write (AT91_SMC_PULSE (3 ), -AT91_SMC_NWEPULSE_ (2 ) |AT91_SMC_NCS_WRPULSE_ (5 ) | -AT91_SMC_NRDPULSE_ (2 ) |AT91_SMC_NCS_RDPULSE_ (5 )); +AT91_SMC_NWEPULSE_ (3 ) |AT91_SMC_NCS_WRPULSE_ (3 ) | +AT91_SMC_NRDPULSE_ (3 ) |AT91_SMC_NCS_RDPULSE_ (3 ));at91_sys_write (AT91_SMC_CYCLE (3 ), -AT91_SMC_NWECYCLE_ (7 ) |AT91_SMC_NRDCYCLE_ (7 )); +AT91_SMC_NWECYCLE_ (5 ) |AT91_SMC_NRDCYCLE_ (5 )); at91_sys_write(AT91_SMC_MODE(3), AT91_SMC_READMODE | AT91_SMC_WRITEMODE | AT91_SMC_EXNWMODE_DISABLE |
@@ -97,7 +97,7 @@ static void at91sam9261ek_nand_hw_init(void)#else /* CFG_NAND_DBW_8 */ AT91_SMC_DBW_8 | #endif - AT91_SMC_TDF_(1)); + AT91_SMC_TDF_(2));at91_sys_write (AT91_PMC_PCER ,1 <<AT91SAM9261_ID_PIOC );
board/atmel/at91sam9263ek/at91sam9263ek.c +2 -2
@@ -83,8 +83,8 @@ static void at91sam9263ek_nand_hw_init(void)/* Configure SMC CS3 for NAND/SmartMedia */ at91_sys_write (AT91_SMC_SETUP (3 ), -AT91_SMC_NWESETUP_ (0 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | -AT91_SMC_NRDSETUP_ (0 ) |AT91_SMC_NCS_RDSETUP_ (0 )); +AT91_SMC_NWESETUP_ (1 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | +AT91_SMC_NRDSETUP_ (1 ) |AT91_SMC_NCS_RDSETUP_ (0 ));at91_sys_write (AT91_SMC_PULSE (3 ),AT91_SMC_NWEPULSE_ (3 ) |AT91_SMC_NCS_WRPULSE_ (3 ) |AT91_SMC_NRDPULSE_ (3 ) |AT91_SMC_NCS_RDPULSE_ (3 ));
board/atmel/at91sam9rlek/at91sam9rlek.c +6 -6
@@ -82,13 +82,13 @@ static void at91sam9rlek_nand_hw_init(void)/* Configure SMC CS3 for NAND/SmartMedia */ at91_sys_write (AT91_SMC_SETUP (3 ), -AT91_SMC_NWESETUP_ (0 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | -AT91_SMC_NRDSETUP_ (0 ) |AT91_SMC_NCS_RDSETUP_ (0 )); +AT91_SMC_NWESETUP_ (1 ) |AT91_SMC_NCS_WRSETUP_ (0 ) | +AT91_SMC_NRDSETUP_ (1 ) |AT91_SMC_NCS_RDSETUP_ (0 ));at91_sys_write (AT91_SMC_PULSE (3 ), -AT91_SMC_NWEPULSE_ (2 ) |AT91_SMC_NCS_WRPULSE_ (5 ) | -AT91_SMC_NRDPULSE_ (2 ) |AT91_SMC_NCS_RDPULSE_ (5 )); +AT91_SMC_NWEPULSE_ (3 ) |AT91_SMC_NCS_WRPULSE_ (3 ) | +AT91_SMC_NRDPULSE_ (3 ) |AT91_SMC_NCS_RDPULSE_ (3 ));at91_sys_write (AT91_SMC_CYCLE (3 ), -AT91_SMC_NWECYCLE_ (7 ) |AT91_SMC_NRDCYCLE_ (7 )); +AT91_SMC_NWECYCLE_ (5 ) |AT91_SMC_NRDCYCLE_ (5 )); at91_sys_write(AT91_SMC_MODE(3), AT91_SMC_READMODE | AT91_SMC_WRITEMODE | AT91_SMC_EXNWMODE_DISABLE |
@@ -97,7 +97,7 @@ static void at91sam9rlek_nand_hw_init(void)#else /* CFG_NAND_DBW_8 */ AT91_SMC_DBW_8 | #endif - AT91_SMC_TDF_(1)); + AT91_SMC_TDF_(2));at91_sys_write (AT91_PMC_PCER ,1 <<AT91SAM9RL_ID_PIOD );
----- End forwarded message -----
PATCH 1/1 Fix NAND FLASH timings
Quoted 8 lines
Fix NAND FLASH timings for at91sam9x evaluation kits.
New timings are based on application note
"NAND Flash Support on AT91SAM9 Microcontrollers" available at
http://atmel.com/dyn/resources/prod_documents/doc6255.pdfSigned-off-by Patrice Vilchez <[email protected]>
Thanks,
Signature · 1 line
Stelian Pop <[email protected]>