diff options
Diffstat (limited to 'recipes/linux/linux-2.6.28/mtcdp/linux-2.6.28-mach-at91.patch')
-rw-r--r-- | recipes/linux/linux-2.6.28/mtcdp/linux-2.6.28-mach-at91.patch | 165 |
1 files changed, 165 insertions, 0 deletions
diff --git a/recipes/linux/linux-2.6.28/mtcdp/linux-2.6.28-mach-at91.patch b/recipes/linux/linux-2.6.28/mtcdp/linux-2.6.28-mach-at91.patch new file mode 100644 index 0000000000..a311c7fee1 --- /dev/null +++ b/recipes/linux/linux-2.6.28/mtcdp/linux-2.6.28-mach-at91.patch @@ -0,0 +1,165 @@ +diff -uprN -X linux-2.6.28/Documentation/dontdiff linux-2.6.28-vanilla/arch/arm/mach-at91/at91sam9260_devices.c linux-2.6.28/arch/arm/mach-at91/at91sam9260_devices.c +--- linux-2.6.28-vanilla/arch/arm/mach-at91/at91sam9260_devices.c 2008-12-24 17:26:37.000000000 -0600 ++++ linux-2.6.28/arch/arm/mach-at91/at91sam9260_devices.c 2010-04-05 15:25:29.000000000 -0500 +@@ -183,9 +183,9 @@ void __init at91_add_device_eth(struct a + at91_set_B_periph(AT91_PIN_PA25, 0); /* ERX2 */ + at91_set_B_periph(AT91_PIN_PA26, 0); /* ERX3 */ + at91_set_B_periph(AT91_PIN_PA27, 0); /* ERXCK */ +- at91_set_B_periph(AT91_PIN_PA23, 0); /* ETX2 */ +- at91_set_B_periph(AT91_PIN_PA24, 0); /* ETX3 */ +- at91_set_B_periph(AT91_PIN_PA22, 0); /* ETXER */ ++ at91_set_B_periph(AT91_PIN_PA10, 0); /* ETX2 -- DJS was PA23 */ ++ at91_set_B_periph(AT91_PIN_PA11, 0); /* ETX3 -- DJS was PA24 */ ++ /*at91_set_B_periph(AT91_PIN_PA22, 0);*/ /* ETXER -- DJS commented this out */ + } + + eth_data = *data; +diff -uprN -X linux-2.6.28/Documentation/dontdiff linux-2.6.28-vanilla/arch/arm/mach-at91/board-sam9g20ek.c linux-2.6.28/arch/arm/mach-at91/board-sam9g20ek.c +--- linux-2.6.28-vanilla/arch/arm/mach-at91/board-sam9g20ek.c 2008-12-24 17:26:37.000000000 -0600 ++++ linux-2.6.28/arch/arm/mach-at91/board-sam9g20ek.c 2010-05-03 14:46:54.000000000 -0500 +@@ -57,6 +57,9 @@ static void __init ek_map_io(void) + /* USART1 on ttyS2. (Rx, Tx, RTS, CTS) */ + at91_register_uart(AT91SAM9260_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS); + ++ /* USART2 on ttyS3. (Rx,Tx) 20090608 TAB added for GPS */ ++ at91_register_uart(AT91SAM9260_ID_US2, 3, 0); ++ + /* set serial console to ttyS0 (ie, DBGU) */ + at91_set_serial_console(0); + } +@@ -78,8 +81,8 @@ static struct at91_usbh_data __initdata + * USB Device port + */ + static struct at91_udc_data __initdata ek_udc_data = { +- .vbus_pin = AT91_PIN_PC5, +- .pullup_pin = 0, /* pull-up driven by UDC */ ++ .vbus_pin = AT91_PIN_PC12, /* DJS -- was AT91_PIN_PC5, */ ++ .pullup_pin = 0, /* pull-up driven by UDC */ + }; + + +@@ -103,6 +106,16 @@ static struct spi_board_info ek_spi_devi + }, + #endif + #endif ++ { ++ .modalias = "mts-io-sregout", ++ .chip_select = 0, ++ .bus_num = 1, ++ }, ++ { ++ .modalias = "mts-io-board-temp", ++ .chip_select = 2, ++ .bus_num = 1, ++ }, + }; + + +@@ -111,7 +124,7 @@ static struct spi_board_info ek_spi_devi + */ + static struct at91_eth_data __initdata ek_macb_data = { + .phy_irq_pin = AT91_PIN_PA7, +- .is_rmii = 1, ++ .is_rmii = 0, /* DJS -- changed from 1 to 0 since using MII */ + }; + + +@@ -120,22 +133,53 @@ static struct at91_eth_data __initdata e + */ + static struct mtd_partition __initdata ek_nand_partition[] = { + { +- .name = "Bootstrap", +- .offset = 0, +- .size = 4 * SZ_1M, ++ .name = "MTNCG-NANDFlash", ++ .offset = 0, ++ .size = 256*1024*1024, + }, + { +- .name = "Partition 1", +- .offset = MTDPART_OFS_NXTBLK, +- .size = 60 * SZ_1M, ++ .name = "AT91Bootstrap", ++ .offset = 0, ++ .size = 128*1024, + }, + { +- .name = "Partition 2", +- .offset = MTDPART_OFS_NXTBLK, ++ .name = "UBoot", ++ .offset = 128*1024, ++ .size = 256*1024, ++ }, ++ { ++ .name = "UBoot Config", ++ .offset = 384*1024, ++ .size = 128*1024, ++ }, ++ { ++ .name = "UBoot Redundant Config", ++ .offset = 512*1024, ++ .size = 128*1024, ++ }, ++ { ++ .name = "uImage", ++ .offset = 640*1024, ++ .size = 59*128*1024, ++ }, ++ { ++ .name = "Config", ++ .offset = 64*128*1024, ++ .size = 64*128*1024, ++ }, ++ { ++ .name = "Oem Config", ++ .offset = 128*128*1024, ++ .size = 64*128*1024, ++ }, ++ { ++ .name = "Rootfs", ++ .offset = 192*128*1024, + .size = MTDPART_SIZ_FULL, + }, + }; + ++ + static struct mtd_partition * __init nand_partitions(int size, int *num_partitions) + { + *num_partitions = ARRAY_SIZE(ek_nand_partition); +@@ -159,11 +203,13 @@ static struct atmel_nand_data __initdata + + /* + * MCI (SD/MMC) +- * det_pin, wp_pin and vcc_pin are not connected ++ * vcc_pin is not connected + */ + static struct at91_mmc_data __initdata ek_mmc_data = { + .slot_b = 1, + .wire4 = 1, ++ .det_pin = AT91_PIN_PA6, /* DJS -- was ... not connected */ ++ .wp_pin = AT91_PIN_PA9, /* DJS -- was ... not connected */ + }; + + +@@ -171,17 +217,12 @@ static struct at91_mmc_data __initdata e + * LEDs + */ + static struct gpio_led ek_leds[] = { +- { /* "bottom" led, green, userled1 to be defined */ +- .name = "ds5", +- .gpio = AT91_PIN_PA6, ++ { /* "status" led, green */ ++ .name = "status", ++ .gpio = AT91_PIN_PA30, /* DJS -- was AT91_PIN_PA9, */ + .active_low = 1, +- .default_trigger = "none", +- }, +- { /* "power" led, yellow */ +- .name = "ds1", +- .gpio = AT91_PIN_PA9, + .default_trigger = "heartbeat", +- } ++ }, + }; + + static void __init ek_board_init(void) |