diff options
Diffstat (limited to 'multitech/recipes/linux/linux-2.6.39-at91/linux-2.6.39.4-at91sam9x5-extreset.patch')
-rw-r--r-- | multitech/recipes/linux/linux-2.6.39-at91/linux-2.6.39.4-at91sam9x5-extreset.patch | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/multitech/recipes/linux/linux-2.6.39-at91/linux-2.6.39.4-at91sam9x5-extreset.patch b/multitech/recipes/linux/linux-2.6.39-at91/linux-2.6.39.4-at91sam9x5-extreset.patch new file mode 100644 index 0000000..31b7441 --- /dev/null +++ b/multitech/recipes/linux/linux-2.6.39-at91/linux-2.6.39.4-at91sam9x5-extreset.patch @@ -0,0 +1,16 @@ +Index: linux-2.6.39.4/arch/arm/mach-at91/at91sam9x5.c +=================================================================== +--- linux-2.6.39.4.orig/arch/arm/mach-at91/at91sam9x5.c 2012-06-25 17:00:27.060489533 -0500 ++++ linux-2.6.39.4/arch/arm/mach-at91/at91sam9x5.c 2012-06-25 17:00:33.051404086 -0500 +@@ -330,7 +330,10 @@ + + static void at91sam9x5_reset(void) + { +- at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST); ++ // MTR: generate an external reset (assert the NRST pin) on soft reset ++ // set reset duration to 125 ms --> set ERSTL to 0xb (0xb = 11 = 2^12 slow clock cycles = 4096 clocks = 125 ms) ++ at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY | (0xb << 8)); ++ at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST | AT91_RSTC_EXTRST); + } + + static void at91sam9x5_poweroff(void) |