summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Gilles <jgilles@multitech.com>2013-12-17 16:28:44 -0600
committerJesse Gilles <jgilles@multitech.com>2013-12-17 16:28:44 -0600
commit692de808a4bc2d857b37b9e44154931de44fa810 (patch)
treee4369bdbfef49ae7ac07b4e7762ec15d05c5195d
parentcdf4e2de7081f497712a9cd464d546e5b7b23c7c (diff)
linux-2.6.35: mt100eocg: add spidev devices
-rw-r--r--multitech/recipes/linux/linux-2.6.35/mt100eocg/defconfig2
-rw-r--r--multitech/recipes/linux/linux-2.6.35/mt100eocg/linux-2.6.35.14-mach-at91-mt100eocg.patch56
2 files changed, 37 insertions, 21 deletions
diff --git a/multitech/recipes/linux/linux-2.6.35/mt100eocg/defconfig b/multitech/recipes/linux/linux-2.6.35/mt100eocg/defconfig
index 8a2fa1c..317c6a7 100644
--- a/multitech/recipes/linux/linux-2.6.35/mt100eocg/defconfig
+++ b/multitech/recipes/linux/linux-2.6.35/mt100eocg/defconfig
@@ -1131,7 +1131,7 @@ CONFIG_SPI_ATMEL=y
#
# SPI Protocol Masters
#
-# CONFIG_SPI_SPIDEV is not set
+CONFIG_SPI_SPIDEV=m
# CONFIG_SPI_TLE62X0 is not set
#
diff --git a/multitech/recipes/linux/linux-2.6.35/mt100eocg/linux-2.6.35.14-mach-at91-mt100eocg.patch b/multitech/recipes/linux/linux-2.6.35/mt100eocg/linux-2.6.35.14-mach-at91-mt100eocg.patch
index f46c6f7..a9c930c 100644
--- a/multitech/recipes/linux/linux-2.6.35/mt100eocg/linux-2.6.35.14-mach-at91-mt100eocg.patch
+++ b/multitech/recipes/linux/linux-2.6.35/mt100eocg/linux-2.6.35.14-mach-at91-mt100eocg.patch
@@ -1,7 +1,7 @@
Index: linux-2.6.35/arch/arm/mach-at91/at91sam9260_devices.c
===================================================================
---- linux-2.6.35.orig/arch/arm/mach-at91/at91sam9260_devices.c 2011-08-12 14:37:24.056904132 -0500
-+++ linux-2.6.35/arch/arm/mach-at91/at91sam9260_devices.c 2011-08-12 14:39:25.459149746 -0500
+--- linux-2.6.35.orig/arch/arm/mach-at91/at91sam9260_devices.c 2010-08-01 17:11:14.000000000 -0500
++++ linux-2.6.35/arch/arm/mach-at91/at91sam9260_devices.c 2013-07-02 14:13:34.956479927 -0500
@@ -183,9 +183,9 @@
at91_set_B_periph(AT91_PIN_PA25, 0); /* ERX2 */
at91_set_B_periph(AT91_PIN_PA26, 0); /* ERX3 */
@@ -34,8 +34,8 @@ Index: linux-2.6.35/arch/arm/mach-at91/at91sam9260_devices.c
{
Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
===================================================================
---- linux-2.6.35.orig/arch/arm/mach-at91/board-sam9g20ek.c 2011-08-12 14:37:05.596941320 -0500
-+++ linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c 2011-08-12 14:48:20.617283739 -0500
+--- linux-2.6.35.orig/arch/arm/mach-at91/board-sam9g20ek.c 2010-08-01 17:11:14.000000000 -0500
++++ linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c 2013-12-17 15:16:55.593333335 -0600
@@ -27,6 +27,11 @@
#include <linux/gpio_keys.h>
#include <linux/input.h>
@@ -135,9 +135,9 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
+ .name = "at25040b",
+ .page_size = 8,
+ .flags = EE_ADDR1,
-+};
+ };
+#endif
-+
+
+#define MTS_EXT_STT25_TEST 0
+#if MTS_EXT_STT25_TEST
+static struct mtd_partition m25_partitions[] = {
@@ -146,8 +146,8 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
+ .offset = 0x00000000,
+ .size = MTDPART_SIZ_FULL,
+ },
- };
-
++};
++
+static struct flash_platform_data m25_spi_flash_data = {
+ .type = "sst25vf080b",
+ .nr_parts = ARRAY_SIZE(m25_partitions),
@@ -157,16 +157,11 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
/*
* SPI devices.
-@@ -107,6 +185,54 @@
+@@ -107,6 +185,70 @@
},
#endif
#endif
+ {
-+ .modalias = "mts-io-sout",
-+ .chip_select = 0,
-+ .bus_num = 1,
-+ },
-+ {
+ .modalias = "mts-io-board-temp",
+ .chip_select = 2,
+ .bus_num = 1,
@@ -181,6 +176,27 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
+ .chip_select = 4,
+ .bus_num = 1,
+ },
++ /* max_speed_hz = 0 means as slow as possible
++ * for OCG, this means approx 520kHz
++ */
++ { /* SPI_CS5 to board-to-board connector */
++ .modalias = "spidev",
++ .chip_select = 5,
++ .max_speed_hz = 0,
++ .bus_num = 1,
++ },
++ { /* SPI_CS6 to board-to-board connector */
++ .modalias = "spidev",
++ .chip_select = 6,
++ .max_speed_hz = 0,
++ .bus_num = 1,
++ },
++ { /* SPI_CS7 to board-to-board connector (chip select 0 in board code) */
++ .modalias = "spidev",
++ .chip_select = 0,
++ .max_speed_hz = 0,
++ .bus_num = 1,
++ },
+#if MTS_EXT_AT25_TEST
+ {
+ .modalias = "at25",
@@ -212,7 +228,7 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
};
-@@ -115,7 +241,7 @@
+@@ -115,7 +257,7 @@
*/
static struct at91_eth_data __initdata ek_macb_data = {
.phy_irq_pin = AT91_PIN_PA7,
@@ -221,7 +237,7 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
};
-@@ -124,18 +250,48 @@
+@@ -124,18 +266,48 @@
*/
static struct mtd_partition __initdata ek_nand_partition[] = {
{
@@ -278,7 +294,7 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
.size = MTDPART_SIZ_FULL,
},
};
-@@ -195,11 +351,13 @@
+@@ -195,11 +367,13 @@
/*
* MCI (SD/MMC)
@@ -293,7 +309,7 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
};
-@@ -207,15 +365,10 @@
+@@ -207,15 +381,10 @@
* LEDs
*/
static struct gpio_led ek_leds[] = {
@@ -312,7 +328,7 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
.default_trigger = "heartbeat",
}
};
-@@ -269,14 +422,36 @@
+@@ -269,14 +438,36 @@
static void __init ek_add_device_buttons(void) {}
#endif
@@ -355,7 +371,7 @@ Index: linux-2.6.35/arch/arm/mach-at91/board-sam9g20ek.c
};
-@@ -305,7 +480,7 @@
+@@ -305,7 +496,7 @@
/* PCK0 provides MCLK to the WM8731 */
at91_set_B_periph(AT91_PIN_PC1, 0);
/* SSC (for WM8731) */