summaryrefslogtreecommitdiff
path: root/multitech/recipes/linux
diff options
context:
space:
mode:
authorJesse Gilles <jgilles@multitech.com>2012-09-18 09:15:27 -0500
committerJesse Gilles <jgilles@multitech.com>2012-09-18 13:36:56 -0500
commit65f880265be2f9e3ee56440e26f920e1d89dc7c6 (patch)
tree8e6bcd097587a8cf58814f4b58f77a3638c16e65 /multitech/recipes/linux
parentc573dda027b9f56d67365ca7abde0875af0000aa (diff)
linux-2.6.39.4: mt100eocg-pcie-dk: use old reset method instead of alt reset
* Fixes hangs on reboot
Diffstat (limited to 'multitech/recipes/linux')
-rw-r--r--multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39.4-at91sam9260-reset.patch26
-rw-r--r--multitech/recipes/linux/linux_2.6.39.4.bb3
2 files changed, 28 insertions, 1 deletions
diff --git a/multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39.4-at91sam9260-reset.patch b/multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39.4-at91sam9260-reset.patch
new file mode 100644
index 0000000..af63d5c
--- /dev/null
+++ b/multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39.4-at91sam9260-reset.patch
@@ -0,0 +1,26 @@
+Index: linux-2.6.39.4/arch/arm/mach-at91/at91sam9260.c
+===================================================================
+--- linux-2.6.39.4.orig/arch/arm/mach-at91/at91sam9260.c 2012-09-17 16:25:08.248303296 -0500
++++ linux-2.6.39.4/arch/arm/mach-at91/at91sam9260.c 2012-09-17 16:25:45.316033835 -0500
+@@ -310,6 +310,11 @@
+ iotable_init(at91sam9xe_sram_desc, ARRAY_SIZE(at91sam9xe_sram_desc));
+ }
+
++static void at91sam9260_reset(void)
++{
++ at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST);
++}
++
+ void __init at91sam9260_initialize(unsigned long main_clock)
+ {
+ /* Map peripherals */
+@@ -322,7 +327,8 @@
+ else
+ iotable_init(at91sam9260_sram_desc, ARRAY_SIZE(at91sam9260_sram_desc));
+
+- at91_arch_reset = at91sam9_alt_reset;
++ // jjg: use old reset routine, alt reset is not reliable
++ at91_arch_reset = at91sam9260_reset;
+ pm_power_off = at91sam9260_poweroff;
+ at91_extern_irq = (1 << AT91SAM9260_ID_IRQ0) | (1 << AT91SAM9260_ID_IRQ1)
+ | (1 << AT91SAM9260_ID_IRQ2);
diff --git a/multitech/recipes/linux/linux_2.6.39.4.bb b/multitech/recipes/linux/linux_2.6.39.4.bb
index 93f21ca..d0af5f7 100644
--- a/multitech/recipes/linux/linux_2.6.39.4.bb
+++ b/multitech/recipes/linux/linux_2.6.39.4.bb
@@ -1,12 +1,13 @@
require recipes/linux/linux.inc
-PR = "r0"
+PR = "r1"
SRC_URI = " \
${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2;name=kernel \
"
SRC_URI_append_mt100eocg-pcie-dk = "file://defconfig \
+ file://linux-2.6.39.4-at91sam9260-reset.patch \
file://linux-2.6.39.4-mach-at91-mt100eocg-pcie-dk.patch \
file://linux-2.6.35.14-at91-gpio-pullup.patch \
file://linux-2.6.32.3-atmel_spi.patch \