diff --git a/include/kernel-version.mk b/include/kernel-version.mk index a9b9286de1..6bdc5c1983 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -22,8 +22,8 @@ endif ifeq ($(LINUX_VERSION),2.6.24.7) LINUX_KERNEL_MD5SUM:=40a73780d51525d28d36dec852c680c4 endif -ifeq ($(LINUX_VERSION),2.6.25.17) - LINUX_KERNEL_MD5SUM:=30618bff93fd4fd048e20a9a6aab8e5d +ifeq ($(LINUX_VERSION),2.6.25.19) + LINUX_KERNEL_MD5SUM:=1b20d2d2a5a0f119372a166eaf816e13 endif ifeq ($(LINUX_VERSION),2.6.26.7) LINUX_KERNEL_MD5SUM:=ada8af1e3ec15bd6e9bdbcadf23a9cc2 diff --git a/target/linux/at91/Makefile b/target/linux/at91/Makefile index e616467a5f..d90d105805 100644 --- a/target/linux/at91/Makefile +++ b/target/linux/at91/Makefile @@ -11,7 +11,7 @@ BOARD:=at91 BOARDNAME:=Atmel AT91 FEATURES:=squashfs usb -LINUX_VERSION:=2.6.25.17 +LINUX_VERSION:=2.6.25.19 include $(INCLUDE_DIR)/target.mk diff --git a/target/linux/at91/patches-2.6.25/000-at91patches.patch b/target/linux/at91/patches-2.6.25/000-at91patches.patch index 74962b2e33..06c29351ec 100644 --- a/target/linux/at91/patches-2.6.25/000-at91patches.patch +++ b/target/linux/at91/patches-2.6.25/000-at91patches.patch @@ -1,6 +1,6 @@ --- a/arch/arm/mach-at91/Kconfig +++ b/arch/arm/mach-at91/Kconfig -@@ -12,18 +12,28 @@ +@@ -12,18 +12,28 @@ config ARCH_AT91RM9200 config ARCH_AT91SAM9260 bool "AT91SAM9260 or AT91SAM9XE" @@ -29,7 +29,7 @@ config ARCH_AT91X40 bool "AT91x40" -@@ -45,7 +55,7 @@ +@@ -45,7 +55,7 @@ config MACH_ONEARM depends on ARCH_AT91RM9200 help Select this if you are using Ajeco's 1ARM Single Board Computer. @@ -38,7 +38,7 @@ config ARCH_AT91RM9200DK bool "Atmel AT91RM9200-DK Development board" -@@ -94,7 +104,7 @@ +@@ -94,7 +104,7 @@ config MACH_KB9200 depends on ARCH_AT91RM9200 help Select this if you are using KwikByte's KB920x board. @@ -47,7 +47,7 @@ config MACH_PICOTUX2XX bool "picotux 200" -@@ -109,6 +119,38 @@ +@@ -109,6 +119,38 @@ config MACH_KAFA help Select this if you are using Sperry-Sun's KAFA board. @@ -86,7 +86,7 @@ endif # ---------------------------------------------------------- -@@ -133,6 +175,34 @@ +@@ -133,6 +175,34 @@ config MACH_AT91SAM9260EK Select this if you are using Atmel's AT91SAM9260-EK or AT91SAM9XE Evaluation Kit @@ -121,7 +121,7 @@ endif # ---------------------------------------------------------- -@@ -163,6 +233,13 @@ +@@ -163,6 +233,13 @@ config MACH_AT91SAM9263EK Select this if you are using Atmel's AT91SAM9263-EK Evaluation Kit. @@ -135,7 +135,7 @@ endif # ---------------------------------------------------------- -@@ -216,7 +293,7 @@ +@@ -216,7 +293,7 @@ comment "AT91 Board Options" config MTD_AT91_DATAFLASH_CARD bool "Enable DataFlash Card support" @@ -144,7 +144,7 @@ help Enable support for the DataFlash card. -@@ -237,6 +314,19 @@ +@@ -237,6 +314,19 @@ config AT91_PROGRAMMABLE_CLOCKS Select this if you need to program one or more of the PCK0..PCK3 programmable clock outputs. @@ -166,7 +166,7 @@ range 32 1024 --- a/arch/arm/mach-at91/Makefile +++ b/arch/arm/mach-at91/Makefile -@@ -28,16 +28,26 @@ +@@ -28,16 +28,26 @@ obj-$(CONFIG_MACH_CARMEVA) += board-carm obj-$(CONFIG_MACH_KB9200) += board-kb9202.o obj-$(CONFIG_MACH_ATEB9200) += board-eb9200.o obj-$(CONFIG_MACH_KAFA) += board-kafa.o @@ -193,7 +193,7 @@ # AT91SAM9RL board-specific support obj-$(CONFIG_MACH_AT91SAM9RLEK) += board-sam9rlek.o -@@ -50,9 +60,11 @@ +@@ -50,9 +60,11 @@ obj-$(CONFIG_MACH_AT91EB01) += board-eb0 # Drivers obj-y += leds.o @@ -223,7 +223,7 @@ #include "generic.h" #include "clock.h" -@@ -288,6 +291,12 @@ +@@ -288,6 +291,12 @@ static void at91cap9_reset(void) at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST); } @@ -236,7 +236,7 @@ /* -------------------------------------------------------------------- * AT91CAP9 processor initialization * -------------------------------------------------------------------- */ -@@ -298,6 +307,7 @@ +@@ -298,6 +307,7 @@ void __init at91cap9_initialize(unsigned iotable_init(at91cap9_io_desc, ARRAY_SIZE(at91cap9_io_desc)); at91_arch_reset = at91cap9_reset; @@ -244,7 +244,7 @@ at91_extern_irq = (1 << AT91CAP9_ID_IRQ0) | (1 << AT91CAP9_ID_IRQ1); /* Init clock subsystem */ -@@ -308,6 +318,12 @@ +@@ -308,6 +318,12 @@ void __init at91cap9_initialize(unsigned /* Register GPIO subsystem */ at91_gpio_init(at91cap9_gpio, 4); @@ -282,7 +282,7 @@ #include "generic.h" -@@ -69,6 +71,9 @@ +@@ -69,6 +71,9 @@ void __init at91_add_device_usbh(struct if (!data) return; @@ -292,7 +292,7 @@ /* Enable VBus control for UHP ports */ for (i = 0; i < data->ports; i++) { if (data->vbus_pin[i]) -@@ -84,6 +89,110 @@ +@@ -84,6 +89,110 @@ void __init at91_add_device_usbh(struct /* -------------------------------------------------------------------- @@ -403,7 +403,7 @@ * Ethernet * -------------------------------------------------------------------- */ -@@ -246,7 +355,7 @@ +@@ -246,7 +355,7 @@ void __init at91_add_device_mmc(short mm } mmc0_data = *data; @@ -412,7 +412,7 @@ platform_device_register(&at91cap9_mmc0_device); } else { /* MCI1 */ /* CLK */ -@@ -283,10 +392,15 @@ +@@ -283,10 +392,15 @@ static struct at91_nand_data nand_data; #define NAND_BASE AT91_CHIPSELECT_3 static struct resource nand_resources[] = { @@ -429,7 +429,7 @@ } }; -@@ -344,6 +458,7 @@ +@@ -344,6 +458,7 @@ void __init at91_add_device_nand(struct void __init at91_add_device_nand(struct at91_nand_data *data) {} #endif @@ -437,7 +437,7 @@ /* -------------------------------------------------------------------- * TWI (i2c) * -------------------------------------------------------------------- */ -@@ -532,17 +647,64 @@ +@@ -532,17 +647,64 @@ void __init at91_add_device_spi(struct s /* -------------------------------------------------------------------- @@ -504,7 +504,7 @@ platform_device_register(&at91cap9_rtt_device); } -@@ -660,6 +822,9 @@ +@@ -660,6 +822,9 @@ void __init at91_add_device_lcdc(struct if (!data) return; @@ -514,7 +514,7 @@ at91_set_A_periph(AT91_PIN_PC1, 0); /* LCDHSYNC */ at91_set_A_periph(AT91_PIN_PC2, 0); /* LCDDOTCK */ at91_set_A_periph(AT91_PIN_PC3, 0); /* LCDDEN */ -@@ -990,7 +1155,7 @@ +@@ -990,7 +1155,7 @@ static inline void configure_usart2_pins at91_set_B_periph(AT91_PIN_PD6, 0); /* CTS2 */ } @@ -523,7 +523,7 @@ struct platform_device *atmel_default_console_device; /* the serial console device */ void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) -@@ -1031,8 +1196,6 @@ +@@ -1031,8 +1196,6 @@ void __init at91_set_serial_console(unsi { if (portnr < ATMEL_MAX_UART) atmel_default_console_device = at91_uarts[portnr]; @@ -532,7 +532,7 @@ } void __init at91_add_device_serial(void) -@@ -1043,6 +1206,9 @@ +@@ -1043,6 +1206,9 @@ void __init at91_add_device_serial(void) if (at91_uarts[i]) platform_device_register(at91_uarts[i]); } @@ -542,7 +542,7 @@ } #else void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {} -@@ -1060,6 +1226,7 @@ +@@ -1060,6 +1226,7 @@ static int __init at91_add_standard_devi { at91_add_device_rtt(); at91_add_device_watchdog(); @@ -552,7 +552,7 @@ --- a/arch/arm/mach-at91/at91rm9200_devices.c +++ b/arch/arm/mach-at91/at91rm9200_devices.c -@@ -513,7 +513,18 @@ +@@ -513,7 +513,18 @@ void __init at91_add_device_i2c(struct i * SPI * -------------------------------------------------------------------- */ @@ -572,7 +572,7 @@ static u64 spi_dmamask = DMA_BIT_MASK(32); static struct resource spi_resources[] = { -@@ -530,7 +541,7 @@ +@@ -530,7 +541,7 @@ static struct resource spi_resources[] = }; static struct platform_device at91rm9200_spi_device = { @@ -581,7 +581,7 @@ .id = 0, .dev = { .dma_mask = &spi_dmamask, -@@ -563,6 +574,12 @@ +@@ -563,6 +574,12 @@ void __init at91_add_device_spi(struct s else at91_set_gpio_output(cs_pin, 1); @@ -594,7 +594,7 @@ /* pass chip-select pin to driver */ devices[i].controller_data = (void *) cs_pin; -@@ -577,6 +594,90 @@ +@@ -577,6 +594,90 @@ void __init at91_add_device_spi(struct s /* -------------------------------------------------------------------- @@ -685,7 +685,7 @@ * RTC * -------------------------------------------------------------------- */ -@@ -589,6 +690,7 @@ +@@ -589,6 +690,7 @@ static struct platform_device at91rm9200 static void __init at91_add_device_rtc(void) { @@ -693,7 +693,7 @@ platform_device_register(&at91rm9200_rtc_device); } #else -@@ -1019,7 +1121,7 @@ +@@ -1019,7 +1121,7 @@ static inline void configure_usart3_pins at91_set_B_periph(AT91_PIN_PB0, 0); /* RTS3 */ } @@ -702,7 +702,7 @@ struct platform_device *atmel_default_console_device; /* the serial console device */ void __init __deprecated at91_init_serial(struct at91_uart_config *config) -@@ -1110,8 +1212,6 @@ +@@ -1110,8 +1212,6 @@ void __init at91_set_serial_console(unsi { if (portnr < ATMEL_MAX_UART) atmel_default_console_device = at91_uarts[portnr]; @@ -711,7 +711,7 @@ } void __init at91_add_device_serial(void) -@@ -1122,6 +1222,9 @@ +@@ -1122,6 +1222,9 @@ void __init at91_add_device_serial(void) if (at91_uarts[i]) platform_device_register(at91_uarts[i]); } @@ -721,7 +721,7 @@ } #else void __init __deprecated at91_init_serial(struct at91_uart_config *config) {} -@@ -1141,6 +1244,7 @@ +@@ -1141,6 +1244,7 @@ static int __init at91_add_standard_devi { at91_add_device_rtc(); at91_add_device_watchdog(); @@ -731,7 +731,7 @@ --- a/arch/arm/mach-at91/at91rm9200_time.c +++ b/arch/arm/mach-at91/at91rm9200_time.c -@@ -136,8 +136,6 @@ +@@ -136,8 +136,6 @@ clkevt32k_next_event(unsigned long delta u32 alm; int status = 0; @@ -758,7 +758,7 @@ #include "generic.h" #include "clock.h" -@@ -267,6 +269,11 @@ +@@ -267,6 +269,11 @@ static void at91sam9260_reset(void) at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST); } @@ -770,7 +770,7 @@ /* -------------------------------------------------------------------- * AT91SAM9260 processor initialization -@@ -304,6 +311,7 @@ +@@ -304,6 +311,7 @@ void __init at91sam9260_initialize(unsig iotable_init(at91sam9260_sram_desc, ARRAY_SIZE(at91sam9260_sram_desc)); at91_arch_reset = at91sam9260_reset; @@ -790,7 +790,7 @@ #include "generic.h" -@@ -288,10 +288,15 @@ +@@ -288,10 +288,15 @@ static struct at91_nand_data nand_data; #define NAND_BASE AT91_CHIPSELECT_3 static struct resource nand_resources[] = { @@ -807,7 +807,7 @@ } }; -@@ -540,6 +545,90 @@ +@@ -540,6 +545,90 @@ void __init at91_add_device_spi(struct s /* -------------------------------------------------------------------- @@ -898,7 +898,7 @@ * RTT * -------------------------------------------------------------------- */ -@@ -553,13 +642,14 @@ +@@ -553,13 +642,14 @@ static struct resource rtt_resources[] = static struct platform_device at91sam9260_rtt_device = { .name = "at91_rtt", @@ -914,7 +914,7 @@ platform_device_register(&at91sam9260_rtt_device); } -@@ -962,7 +1052,7 @@ +@@ -962,7 +1052,7 @@ static inline void configure_usart5_pins at91_set_A_periph(AT91_PIN_PB13, 0); /* RXD5 */ } @@ -923,7 +923,7 @@ struct platform_device *atmel_default_console_device; /* the serial console device */ void __init __deprecated at91_init_serial(struct at91_uart_config *config) -@@ -1073,8 +1163,6 @@ +@@ -1073,8 +1163,6 @@ void __init at91_set_serial_console(unsi { if (portnr < ATMEL_MAX_UART) atmel_default_console_device = at91_uarts[portnr]; @@ -932,7 +932,7 @@ } void __init at91_add_device_serial(void) -@@ -1085,6 +1173,9 @@ +@@ -1085,6 +1173,9 @@ void __init at91_add_device_serial(void) if (at91_uarts[i]) platform_device_register(at91_uarts[i]); } @@ -942,7 +942,7 @@ } #else void __init __deprecated at91_init_serial(struct at91_uart_config *config) {} -@@ -1103,6 +1194,7 @@ +@@ -1103,6 +1194,7 @@ static int __init at91_add_standard_devi { at91_add_device_rtt(); at91_add_device_watchdog(); @@ -967,7 +967,7 @@ #include "generic.h" #include "clock.h" -@@ -245,6 +247,11 @@ +@@ -245,6 +247,11 @@ static void at91sam9261_reset(void) at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST); } @@ -979,7 +979,7 @@ /* -------------------------------------------------------------------- * AT91SAM9261 processor initialization -@@ -256,6 +263,7 @@ +@@ -256,6 +263,7 @@ void __init at91sam9261_initialize(unsig iotable_init(at91sam9261_io_desc, ARRAY_SIZE(at91sam9261_io_desc)); at91_arch_reset = at91sam9261_reset; @@ -998,7 +998,7 @@ #include "generic.h" -@@ -548,6 +548,55 @@ +@@ -548,6 +548,55 @@ void __init at91_add_device_lcdc(struct /* -------------------------------------------------------------------- @@ -1054,7 +1054,7 @@ * RTT * -------------------------------------------------------------------- */ -@@ -561,13 +610,14 @@ +@@ -561,13 +610,14 @@ static struct resource rtt_resources[] = static struct platform_device at91sam9261_rtt_device = { .name = "at91_rtt", @@ -1070,7 +1070,7 @@ platform_device_register(&at91sam9261_rtt_device); } -@@ -938,7 +988,7 @@ +@@ -938,7 +988,7 @@ static inline void configure_usart2_pins at91_set_B_periph(AT91_PIN_PA16, 0); /* CTS2 */ } @@ -1079,7 +1079,7 @@ struct platform_device *atmel_default_console_device; /* the serial console device */ void __init __deprecated at91_init_serial(struct at91_uart_config *config) -@@ -1019,8 +1069,6 @@ +@@ -1019,8 +1069,6 @@ void __init at91_set_serial_console(unsi { if (portnr < ATMEL_MAX_UART) atmel_default_console_device = at91_uarts[portnr]; @@ -1088,7 +1088,7 @@ } void __init at91_add_device_serial(void) -@@ -1031,6 +1079,9 @@ +@@ -1031,6 +1079,9 @@ void __init at91_add_device_serial(void) if (at91_uarts[i]) platform_device_register(at91_uarts[i]); } @@ -1098,7 +1098,7 @@ } #else void __init __deprecated at91_init_serial(struct at91_uart_config *config) {} -@@ -1050,6 +1101,7 @@ +@@ -1050,6 +1101,7 @@ static int __init at91_add_standard_devi { at91_add_device_rtt(); at91_add_device_watchdog(); @@ -1123,7 +1123,7 @@ #include "generic.h" #include "clock.h" -@@ -271,6 +273,11 @@ +@@ -271,6 +273,11 @@ static void at91sam9263_reset(void) at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST); } @@ -1135,7 +1135,7 @@ /* -------------------------------------------------------------------- * AT91SAM9263 processor initialization -@@ -282,6 +289,7 @@ +@@ -282,6 +289,7 @@ void __init at91sam9263_initialize(unsig iotable_init(at91sam9263_io_desc, ARRAY_SIZE(at91sam9263_io_desc)); at91_arch_reset = at91sam9263_reset; @@ -1155,7 +1155,7 @@ #include "generic.h" -@@ -308,7 +308,7 @@ +@@ -308,7 +308,7 @@ void __init at91_add_device_mmc(short mm } mmc0_data = *data; @@ -1164,7 +1164,7 @@ platform_device_register(&at91sam9263_mmc0_device); } else { /* MCI1 */ /* CLK */ -@@ -358,10 +358,15 @@ +@@ -358,10 +358,15 @@ static struct at91_nand_data nand_data; #define NAND_BASE AT91_CHIPSELECT_3 static struct resource nand_resources[] = { @@ -1181,7 +1181,7 @@ } }; -@@ -783,6 +788,43 @@ +@@ -783,6 +788,43 @@ void __init at91_add_device_isi(void) {} /* -------------------------------------------------------------------- @@ -1225,7 +1225,7 @@ * RTT * -------------------------------------------------------------------- */ -@@ -818,7 +860,9 @@ +@@ -818,7 +860,9 @@ static struct platform_device at91sam926 static void __init at91_add_device_rtt(void) { @@ -1235,7 +1235,7 @@ platform_device_register(&at91sam9263_rtt1_device); } -@@ -933,9 +977,6 @@ +@@ -933,9 +977,6 @@ static inline void configure_ssc1_pins(u } /* @@ -1245,7 +1245,7 @@ * SSC controllers are accessed through library code, instead of any * kind of all-singing/all-dancing driver. For example one could be * used by a particular I2S audio codec's driver, while another one -@@ -1146,7 +1187,7 @@ +@@ -1146,7 +1187,7 @@ static inline void configure_usart2_pins at91_set_B_periph(AT91_PIN_PD6, 0); /* CTS2 */ } @@ -1254,7 +1254,7 @@ struct platform_device *atmel_default_console_device; /* the serial console device */ void __init __deprecated at91_init_serial(struct at91_uart_config *config) -@@ -1227,8 +1268,6 @@ +@@ -1227,8 +1268,6 @@ void __init at91_set_serial_console(unsi { if (portnr < ATMEL_MAX_UART) atmel_default_console_device = at91_uarts[portnr]; @@ -1263,7 +1263,7 @@ } void __init at91_add_device_serial(void) -@@ -1239,9 +1278,12 @@ +@@ -1239,9 +1278,12 @@ void __init at91_add_device_serial(void) if (at91_uarts[i]) platform_device_register(at91_uarts[i]); } @@ -1277,7 +1277,7 @@ void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins) {} void __init at91_set_serial_console(unsigned portnr) {} void __init at91_add_device_serial(void) {} -@@ -1257,6 +1299,7 @@ +@@ -1257,6 +1299,7 @@ static int __init at91_add_standard_devi { at91_add_device_rtt(); at91_add_device_watchdog(); @@ -1539,7 +1539,7 @@ #include "generic.h" #include "clock.h" -@@ -244,6 +246,11 @@ +@@ -244,6 +246,11 @@ static void at91sam9rl_reset(void) at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_PROCRST | AT91_RSTC_PERRST); } @@ -1551,7 +1551,7 @@ /* -------------------------------------------------------------------- * AT91SAM9RL processor initialization -@@ -274,6 +281,7 @@ +@@ -274,6 +281,7 @@ void __init at91sam9rl_initialize(unsign iotable_init(at91sam9rl_sram_desc, ARRAY_SIZE(at91sam9rl_sram_desc)); at91_arch_reset = at91sam9rl_reset; @@ -1670,7 +1670,7 @@ * MMC / SD * -------------------------------------------------------------------- */ -@@ -105,10 +200,15 @@ +@@ -105,10 +200,15 @@ static struct at91_nand_data nand_data; #define NAND_BASE AT91_CHIPSELECT_3 static struct resource nand_resources[] = { @@ -1687,7 +1687,7 @@ } }; -@@ -385,6 +485,100 @@ +@@ -385,6 +485,100 @@ void __init at91_add_device_lcdc(struct /* -------------------------------------------------------------------- @@ -1788,7 +1788,7 @@ * RTC * -------------------------------------------------------------------- */ -@@ -397,6 +591,7 @@ +@@ -397,6 +591,7 @@ static struct platform_device at91sam9rl static void __init at91_add_device_rtc(void) { @@ -1796,7 +1796,7 @@ platform_device_register(&at91sam9rl_rtc_device); } #else -@@ -418,13 +613,14 @@ +@@ -418,13 +613,14 @@ static struct resource rtt_resources[] = static struct platform_device at91sam9rl_rtt_device = { .name = "at91_rtt", @@ -1812,7 +1812,7 @@ platform_device_register(&at91sam9rl_rtt_device); } -@@ -539,9 +735,6 @@ +@@ -539,9 +735,6 @@ static inline void configure_ssc1_pins(u } /* @@ -1822,7 +1822,7 @@ * SSC controllers are accessed through library code, instead of any * kind of all-singing/all-dancing driver. For example one could be * used by a particular I2S audio codec's driver, while another one -@@ -802,7 +995,7 @@ +@@ -802,7 +995,7 @@ static inline void configure_usart3_pins at91_set_B_periph(AT91_PIN_PD3, 0); /* CTS3 */ } @@ -1831,7 +1831,7 @@ struct platform_device *atmel_default_console_device; /* the serial console device */ void __init __deprecated at91_init_serial(struct at91_uart_config *config) -@@ -893,8 +1086,6 @@ +@@ -893,8 +1086,6 @@ void __init at91_set_serial_console(unsi { if (portnr < ATMEL_MAX_UART) atmel_default_console_device = at91_uarts[portnr]; @@ -1840,7 +1840,7 @@ } void __init at91_add_device_serial(void) -@@ -905,6 +1096,9 @@ +@@ -905,6 +1096,9 @@ void __init at91_add_device_serial(void) if (at91_uarts[i]) platform_device_register(at91_uarts[i]); } @@ -1850,7 +1850,7 @@ } #else void __init __deprecated at91_init_serial(struct at91_uart_config *config) {} -@@ -925,6 +1119,7 @@ +@@ -925,6 +1119,7 @@ static int __init at91_add_standard_devi at91_add_device_rtc(); at91_add_device_rtt(); at91_add_device_watchdog(); @@ -2061,7 +2061,7 @@ #include "generic.h" -@@ -78,6 +76,12 @@ +@@ -78,6 +76,12 @@ static struct at91_usbh_data __initdata .ports = 2, }; @@ -2074,7 +2074,7 @@ /* * ADS7846 Touchscreen -@@ -130,7 +134,7 @@ +@@ -130,7 +134,7 @@ static struct spi_board_info cap9adk_spi { .modalias = "ads7846", .chip_select = 3, /* can be 2 or 3, depending on J2 jumper */ @@ -2083,7 +2083,7 @@ .bus_num = 0, .platform_data = &ads_info, .irq = AT91_PIN_PC4, -@@ -324,8 +328,9 @@ +@@ -324,8 +328,9 @@ static void __init cap9adk_board_init(vo /* Serial */ at91_add_device_serial(); /* USB Host */ @@ -2094,7 +2094,7 @@ /* SPI */ at91_add_device_spi(cap9adk_spi_devices, ARRAY_SIZE(cap9adk_spi_devices)); /* Touchscreen */ -@@ -341,7 +346,6 @@ +@@ -341,7 +346,6 @@ static void __init cap9adk_board_init(vo /* I2C */ at91_add_device_i2c(NULL, 0); /* LCD Controller */ @@ -2139,7 +2139,7 @@ } static void __init carmeva_init_irq(void) -@@ -117,6 +114,30 @@ +@@ -117,6 +114,30 @@ static struct spi_board_info carmeva_spi }, }; @@ -2170,7 +2170,7 @@ static void __init carmeva_board_init(void) { /* Serial */ -@@ -135,6 +156,8 @@ +@@ -135,6 +156,8 @@ static void __init carmeva_board_init(vo // at91_add_device_cf(&carmeva_cf_data); /* MMC */ at91_add_device_mmc(0, &carmeva_mmc_data); @@ -2316,7 +2316,7 @@ +MACHINE_END --- a/arch/arm/mach-at91/board-csb337.c +++ b/arch/arm/mach-at91/board-csb337.c -@@ -61,6 +61,7 @@ +@@ -61,6 +61,7 @@ static void __init csb337_map_io(void) /* Setup the LEDs */ at91_init_leds(AT91_PIN_PB0, AT91_PIN_PB1); @@ -2324,7 +2324,7 @@ /* Setup the serial ports and console */ at91_init_serial(&csb337_uart_config); -@@ -202,11 +203,11 @@ +@@ -202,11 +203,11 @@ static struct platform_device csb300_but static void __init csb300_add_device_buttons(void) { @@ -2339,7 +2339,7 @@ at91_set_deglitch(AT91_PIN_PA21, 1); platform_device_register(&csb300_button_device); -@@ -233,7 +234,7 @@ +@@ -233,7 +234,7 @@ static struct gpio_led csb_leds[] = { .gpio = AT91_PIN_PB0, .active_low = 1, .default_trigger = "ide-disk", @@ -2382,7 +2382,7 @@ } static void __init csb637_init_irq(void) -@@ -118,8 +107,19 @@ +@@ -118,8 +107,19 @@ static struct platform_device csb_flash .num_resources = ARRAY_SIZE(csb_flash_resources), }; @@ -2430,7 +2430,7 @@ static void __init dk_map_io(void) { /* Initialize processor: 18.432 MHz crystal */ -@@ -64,8 +54,16 @@ +@@ -64,8 +54,16 @@ static void __init dk_map_io(void) /* Setup the LEDs */ at91_init_leds(AT91_PIN_PB2, AT91_PIN_PB2); @@ -2449,7 +2449,7 @@ } static void __init dk_init_irq(void) -@@ -73,6 +71,185 @@ +@@ -73,6 +71,185 @@ static void __init dk_init_irq(void) at91rm9200_init_interrupts(NULL); } @@ -2635,7 +2635,7 @@ static struct at91_eth_data __initdata dk_eth_data = { .phy_irq_pin = AT91_PIN_PC4, .is_rmii = 1, -@@ -164,7 +341,7 @@ +@@ -164,7 +341,7 @@ static struct at91_nand_data __initdata #define DK_FLASH_SIZE 0x200000 static struct physmap_flash_data dk_flash_data = { @@ -2644,7 +2644,7 @@ }; static struct resource dk_flash_resource = { -@@ -223,8 +400,12 @@ +@@ -223,8 +400,12 @@ static void __init dk_board_init(void) platform_device_register(&dk_flash); /* LEDs */ at91_gpio_leds(dk_leds, ARRAY_SIZE(dk_leds)); @@ -2907,7 +2907,7 @@ static void __init ek_map_io(void) { /* Initialize processor: 18.432 MHz crystal */ -@@ -64,8 +54,16 @@ +@@ -64,8 +54,16 @@ static void __init ek_map_io(void) /* Setup the LEDs */ at91_init_leds(AT91_PIN_PB1, AT91_PIN_PB2); @@ -2926,7 +2926,7 @@ } static void __init ek_init_irq(void) -@@ -73,6 +71,187 @@ +@@ -73,6 +71,187 @@ static void __init ek_init_irq(void) at91rm9200_init_interrupts(NULL); } @@ -3114,7 +3114,7 @@ static struct at91_eth_data __initdata ek_eth_data = { .phy_irq_pin = AT91_PIN_PC4, .is_rmii = 1, -@@ -122,7 +301,7 @@ +@@ -122,7 +301,7 @@ static struct i2c_board_info __initdata #define EK_FLASH_SIZE 0x200000 static struct physmap_flash_data ek_flash_data = { @@ -3123,7 +3123,7 @@ }; static struct resource ek_flash_resource = { -@@ -189,7 +368,7 @@ +@@ -189,7 +368,7 @@ static void __init ek_board_init(void) /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* VGA */ @@ -3322,7 +3322,7 @@ static void __init kb9202_map_io(void) { -@@ -59,8 +50,20 @@ +@@ -59,8 +50,20 @@ static void __init kb9202_map_io(void) /* Set up the LEDs */ at91_init_leds(AT91_PIN_PC19, AT91_PIN_PC18); @@ -3345,7 +3345,7 @@ } static void __init kb9202_init_irq(void) -@@ -111,6 +114,48 @@ +@@ -111,6 +114,48 @@ static struct at91_nand_data __initdata .partition_info = nand_partitions, }; @@ -3394,7 +3394,7 @@ static void __init kb9202_board_init(void) { /* Serial */ -@@ -129,6 +174,8 @@ +@@ -129,6 +174,8 @@ static void __init kb9202_board_init(voi at91_add_device_spi(NULL, 0); /* NAND */ at91_add_device_nand(&kb9202_nand_data); @@ -3920,7 +3920,7 @@ } static void __init ek_init_irq(void) -@@ -85,6 +89,35 @@ +@@ -85,6 +89,35 @@ static struct at91_udc_data __initdata e /* @@ -3956,7 +3956,7 @@ * SPI devices. */ static struct spi_board_info ek_spi_devices[] = { -@@ -110,6 +143,8 @@ +@@ -110,6 +143,8 @@ static struct spi_board_info ek_spi_devi .chip_select = 0, .max_speed_hz = 10 * 1000 * 1000, .bus_num = 1, @@ -3965,7 +3965,7 @@ }, #endif }; -@@ -172,6 +207,74 @@ +@@ -172,6 +207,74 @@ static struct at91_mmc_data __initdata e // .vcc_pin = ... not connected }; @@ -4040,7 +4040,7 @@ static void __init ek_board_init(void) { /* Serial */ -@@ -190,6 +293,16 @@ +@@ -190,6 +293,16 @@ static void __init ek_board_init(void) at91_add_device_mmc(0, &ek_mmc_data); /* I2C */ at91_add_device_i2c(NULL, 0); @@ -4093,7 +4093,7 @@ static void __init ek_map_io(void) { /* Initialize processor: 18.432 MHz crystal */ -@@ -68,8 +60,11 @@ +@@ -68,8 +60,11 @@ static void __init ek_map_io(void) /* Setup the LEDs */ at91_init_leds(AT91_PIN_PA13, AT91_PIN_PA14); @@ -4107,7 +4107,7 @@ } static void __init ek_init_irq(void) -@@ -239,6 +234,35 @@ +@@ -239,6 +234,35 @@ static void __init ek_add_device_ts(void #endif /* @@ -4143,7 +4143,7 @@ * SPI devices */ static struct spi_board_info ek_spi_devices[] = { -@@ -252,10 +276,11 @@ +@@ -252,10 +276,11 @@ static struct spi_board_info ek_spi_devi { .modalias = "ads7846", .chip_select = 2, @@ -4156,7 +4156,7 @@ }, #endif #if defined(CONFIG_MTD_AT91_DATAFLASH_CARD) -@@ -271,6 +296,9 @@ +@@ -271,6 +296,9 @@ static struct spi_board_info ek_spi_devi .chip_select = 3, .max_speed_hz = 10 * 1000 * 1000, .bus_num = 0, @@ -4166,7 +4166,7 @@ }, #endif }; -@@ -408,24 +436,28 @@ +@@ -408,24 +436,28 @@ static struct gpio_keys_button ek_button .code = BTN_0, .desc = "Button 0", .active_low = 1, @@ -4195,7 +4195,7 @@ } }; -@@ -445,13 +477,13 @@ +@@ -445,13 +477,13 @@ static struct platform_device ek_button_ static void __init ek_add_device_buttons(void) { @@ -4213,7 +4213,7 @@ at91_set_deglitch(AT91_PIN_PA24, 1); platform_device_register(&ek_button_device); -@@ -460,6 +492,29 @@ +@@ -460,6 +492,29 @@ static void __init ek_add_device_buttons static void __init ek_add_device_buttons(void) {} #endif @@ -4243,7 +4243,7 @@ static void __init ek_board_init(void) { /* Serial */ -@@ -481,6 +536,9 @@ +@@ -481,6 +536,9 @@ static void __init ek_board_init(void) at91_add_device_spi(ek_spi_devices, ARRAY_SIZE(ek_spi_devices)); /* Touchscreen */ ek_add_device_ts(); @@ -4253,7 +4253,7 @@ #else /* MMC */ at91_add_device_mmc(0, &ek_mmc_data); -@@ -489,6 +547,11 @@ +@@ -489,6 +547,11 @@ static void __init ek_board_init(void) at91_add_device_lcdc(&ek_lcdc_data); /* Push Buttons */ ek_add_device_buttons(); @@ -4306,7 +4306,7 @@ } static void __init ek_init_irq(void) -@@ -141,7 +136,7 @@ +@@ -141,7 +136,7 @@ static struct spi_board_info ek_spi_devi { .modalias = "ads7846", .chip_select = 3, @@ -4315,7 +4315,7 @@ .bus_num = 0, .platform_data = &ads_info, .irq = AT91SAM9263_ID_IRQ1, -@@ -301,9 +296,9 @@ +@@ -301,9 +296,9 @@ static struct platform_device ek_button_ static void __init ek_add_device_buttons(void) { @@ -4327,7 +4327,7 @@ at91_set_deglitch(AT91_PIN_PC4, 1); platform_device_register(&ek_button_device); -@@ -341,7 +336,7 @@ +@@ -341,7 +336,7 @@ static struct gpio_led ek_leds[] = { .name = "ds3", .gpio = AT91_PIN_PB7, .default_trigger = "heartbeat", @@ -4336,7 +4336,7 @@ }; -@@ -374,6 +369,9 @@ +@@ -374,6 +369,9 @@ static void __init ek_board_init(void) at91_add_device_ac97(&ek_ac97_data); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); @@ -4387,7 +4387,7 @@ } static void __init ek_init_irq(void) -@@ -61,6 +56,14 @@ +@@ -61,6 +56,14 @@ static void __init ek_init_irq(void) /* @@ -4402,7 +4402,7 @@ * MCI (SD/MMC) */ static struct at91_mmc_data __initdata ek_mmc_data = { -@@ -180,6 +183,8 @@ +@@ -180,6 +183,8 @@ static void __init ek_board_init(void) { /* Serial */ at91_add_device_serial(); @@ -4411,7 +4411,7 @@ /* I2C */ at91_add_device_i2c(NULL, 0); /* NAND */ -@@ -190,6 +195,9 @@ +@@ -190,6 +195,9 @@ static void __init ek_board_init(void) at91_add_device_mmc(0, &ek_mmc_data); /* LCD Controller */ at91_add_device_lcdc(&ek_lcdc_data); @@ -5278,7 +5278,7 @@ /* -@@ -113,12 +114,34 @@ +@@ -113,12 +114,34 @@ static void pmc_sys_mode(struct clk *clk at91_sys_write(AT91_PMC_SCDR, clk->pmc_mask); } @@ -5313,7 +5313,7 @@ static struct clk uhpck = { .name = "uhpck", .parent = &pllb, -@@ -254,6 +277,23 @@ +@@ -254,6 +277,23 @@ EXPORT_SYMBOL(clk_get_rate); /*------------------------------------------------------------------------*/ @@ -5337,7 +5337,7 @@ #ifdef CONFIG_AT91_PROGRAMMABLE_CLOCKS /* -@@ -362,7 +402,7 @@ +@@ -362,7 +402,7 @@ static void __init init_programmable_clo static int at91_clk_show(struct seq_file *s, void *unused) { @@ -5346,7 +5346,7 @@ struct clk *clk; seq_printf(s, "SCSR = %8x\n", scsr = at91_sys_read(AT91_PMC_SCSR)); -@@ -370,7 +410,10 @@ +@@ -370,7 +410,10 @@ static int at91_clk_show(struct seq_file seq_printf(s, "MOR = %8x\n", at91_sys_read(AT91_CKGR_MOR)); seq_printf(s, "MCFR = %8x\n", at91_sys_read(AT91_CKGR_MCFR)); seq_printf(s, "PLLA = %8x\n", at91_sys_read(AT91_CKGR_PLLAR)); @@ -5358,7 +5358,7 @@ seq_printf(s, "MCKR = %8x\n", at91_sys_read(AT91_PMC_MCKR)); seq_printf(s, "SR = %8x\n", sr = at91_sys_read(AT91_PMC_SR)); -@@ -383,6 +426,8 @@ +@@ -383,6 +426,8 @@ static int at91_clk_show(struct seq_file state = (scsr & clk->pmc_mask) ? "on" : "off"; else if (clk->mode == pmc_periph_mode) state = (pcsr & clk->pmc_mask) ? "on" : "off"; @@ -5367,7 +5367,7 @@ else if (clk->pmc_mask) state = (sr & clk->pmc_mask) ? "on" : "off"; else if (clk == &clk32k || clk == &main_clk) -@@ -583,6 +628,17 @@ +@@ -583,6 +628,17 @@ int __init at91_clock_init(unsigned long uhpck.rate_hz = at91_usb_rate(&pllb, pllb.rate_hz, at91_pllb_usb_init); /* @@ -5385,7 +5385,7 @@ * MCK and CPU derive from one of those primary clocks. * For now, assume this parentage won't change. */ -@@ -599,6 +655,9 @@ +@@ -599,6 +655,9 @@ int __init at91_clock_init(unsigned long for (i = 0; i < ARRAY_SIZE(standard_pmc_clocks); i++) list_add_tail(&standard_pmc_clocks[i]->node, &clocks); @@ -5397,7 +5397,7 @@ --- a/arch/arm/mach-at91/generic.h +++ b/arch/arm/mach-at91/generic.h -@@ -41,6 +41,7 @@ +@@ -41,6 +41,7 @@ extern void __init at91_clock_associate( /* Power Management */ extern void at91_irq_suspend(void); extern void at91_irq_resume(void); @@ -5407,7 +5407,7 @@ #define AT91RM9200_PQFP 3 /* AT91RM9200 PQFP package has 3 banks */ --- a/arch/arm/mach-at91/gpio.c +++ b/arch/arm/mach-at91/gpio.c -@@ -490,7 +490,8 @@ +@@ -490,7 +490,8 @@ postcore_initcall(at91_gpio_debugfs_init /*--------------------------------------------------------------------------*/ @@ -5417,7 +5417,7 @@ * category than their parents, so it won't report false recursion. */ static struct lock_class_key gpio_lock_class; -@@ -557,6 +558,7 @@ +@@ -557,6 +558,7 @@ void __init at91_gpio_init(struct at91_g data->regbase = data->offset + (void __iomem *)AT91_VA_BASE_SYS; /* AT91SAM9263_ID_PIOCDE groups PIOC, PIOD, PIOE */ @@ -5784,7 +5784,7 @@ static int at91_pm_valid_state(suspend_state_t state) { -@@ -62,6 +194,7 @@ +@@ -62,6 +194,7 @@ static int at91_pm_begin(suspend_state_t * Verify that all the clocks are correct before entering * slow-clock mode. */ @@ -5792,7 +5792,7 @@ static int at91_pm_verify_clocks(void) { unsigned long scsr; -@@ -107,24 +240,24 @@ +@@ -107,24 +240,24 @@ static int at91_pm_verify_clocks(void) } /* @@ -5823,7 +5823,7 @@ static int at91_pm_enter(suspend_state_t state) { -@@ -158,11 +291,14 @@ +@@ -158,11 +291,14 @@ static int at91_pm_enter(suspend_state_t * turning off the main oscillator; reverse on wakeup. */ if (slow_clock) { @@ -5840,7 +5840,7 @@ /* FALLTHROUGH leaving master clock alone */ } -@@ -175,13 +311,15 @@ +@@ -175,13 +311,15 @@ static int at91_pm_enter(suspend_state_t case PM_SUSPEND_STANDBY: /* * NOTE: the Wait-for-Interrupt instruction needs to be @@ -5860,7 +5860,7 @@ case PM_SUSPEND_ON: asm("mcr p15, 0, r0, c7, c0, 4"); /* wait for interrupt */ -@@ -196,6 +334,7 @@ +@@ -196,6 +334,7 @@ static int at91_pm_enter(suspend_state_t at91_sys_read(AT91_AIC_IPR) & at91_sys_read(AT91_AIC_IMR)); error: @@ -5868,7 +5868,7 @@ target_state = PM_SUSPEND_ON; at91_irq_resume(); at91_gpio_resume(); -@@ -220,21 +359,20 @@ +@@ -220,21 +359,20 @@ static struct platform_suspend_ops at91_ static int __init at91_pm_init(void) { @@ -6186,7 +6186,7 @@ + .word .-at91_slow_clock --- a/arch/arm/mach-ks8695/Makefile +++ b/arch/arm/mach-ks8695/Makefile -@@ -11,5 +11,8 @@ +@@ -11,5 +11,8 @@ obj- := # PCI support is optional obj-$(CONFIG_PCI) += pci.o @@ -6197,7 +6197,7 @@ obj-$(CONFIG_MACH_KS8695) += board-micrel.o --- a/arch/arm/mach-ks8695/devices.c +++ b/arch/arm/mach-ks8695/devices.c -@@ -176,6 +176,27 @@ +@@ -176,6 +176,27 @@ static void __init ks8695_add_device_wat #endif @@ -6227,7 +6227,7 @@ /* --- a/arch/arm/mach-ks8695/gpio.c +++ b/arch/arm/mach-ks8695/gpio.c -@@ -136,9 +136,9 @@ +@@ -136,9 +136,9 @@ int __init_or_module gpio_direction_outp /* set line state */ x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPD); if (state) @@ -6239,7 +6239,7 @@ __raw_writel(x, KS8695_GPIO_VA + KS8695_IOPD); /* set pin as output */ -@@ -168,9 +168,9 @@ +@@ -168,9 +168,9 @@ void gpio_set_value(unsigned int pin, un /* set output line state */ x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPD); if (state) @@ -6251,7 +6251,7 @@ __raw_writel(x, KS8695_GPIO_VA + KS8695_IOPD); local_irq_restore(flags); -@@ -189,7 +189,7 @@ +@@ -189,7 +189,7 @@ int gpio_get_value(unsigned int pin) return -EINVAL; x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPD); @@ -6359,7 +6359,7 @@ +__initcall(leds_init); --- a/arch/arm/mach-ks8695/pci.c +++ b/arch/arm/mach-ks8695/pci.c -@@ -141,7 +141,7 @@ +@@ -141,7 +141,7 @@ static struct pci_ops ks8695_pci_ops = { .write = ks8695_pci_writeconfig, }; @@ -6370,7 +6370,7 @@ } --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig -@@ -1056,5 +1056,21 @@ +@@ -1056,5 +1056,21 @@ config DEVPORT source "drivers/s390/char/Kconfig" @@ -6394,7 +6394,7 @@ --- a/drivers/char/Makefile +++ b/drivers/char/Makefile -@@ -98,6 +98,8 @@ +@@ -98,6 +98,8 @@ obj-$(CONFIG_GPIO_DEVICE) += gpio_dev.o obj-$(CONFIG_GPIO_VR41XX) += vr41xx_giu.o obj-$(CONFIG_GPIO_TB0219) += tb0219.o obj-$(CONFIG_TELCLOCK) += tlclk.o @@ -6981,7 +6981,7 @@ +MODULE_DESCRIPTION("SPI /dev interface for Atmel AT91RM9200") --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -88,6 +88,14 @@ +@@ -88,6 +88,14 @@ config I2C_AT91 to support combined I2C messages. Use the i2c-gpio driver unless your system can cope with those limitations. @@ -6996,7 +6996,7 @@ config I2C_AU1550 tristate "Au1550/Au1200 SMBus interface" depends on SOC_AU1550 || SOC_AU1200 -@@ -626,6 +634,14 @@ +@@ -626,6 +634,14 @@ config I2C_VOODOO3 This driver can also be built as a module. If so, the module will be called i2c-voodoo3. @@ -7013,7 +7013,7 @@ depends on ISA --- a/drivers/i2c/busses/Makefile +++ b/drivers/i2c/busses/Makefile -@@ -29,6 +29,7 @@ +@@ -29,6 +29,7 @@ obj-$(CONFIG_I2C_OMAP) += i2c-omap.o obj-$(CONFIG_I2C_PARPORT) += i2c-parport.o obj-$(CONFIG_I2C_PARPORT_LIGHT) += i2c-parport-light.o obj-$(CONFIG_I2C_PASEMI) += i2c-pasemi.o @@ -7036,7 +7036,7 @@ static struct clk *twi_clk; static void __iomem *twi_base; -@@ -53,7 +56,7 @@ +@@ -53,7 +56,7 @@ static void __devinit at91_twi_hwinit(vo at91_twi_write(AT91_TWI_CR, AT91_TWI_MSEN); /* Set Master mode */ /* Calcuate clock dividers */ @@ -7045,7 +7045,7 @@ cdiv = cdiv + 1; /* round up */ ckdiv = 0; while (cdiv > 255) { -@@ -61,11 +64,12 @@ +@@ -61,11 +64,12 @@ static void __devinit at91_twi_hwinit(vo cdiv = cdiv >> 1; } @@ -7281,7 +7281,7 @@ +MODULE_LICENSE("GPL"); --- a/drivers/mmc/host/at91_mci.c +++ b/drivers/mmc/host/at91_mci.c -@@ -659,13 +659,14 @@ +@@ -659,13 +659,14 @@ static void at91_mci_set_ios(struct mmc_ /* maybe switch power to the card */ if (host->board->vcc_pin) { switch (ios->power_mode) { @@ -7305,7 +7305,7 @@ } --- a/drivers/mtd/devices/Kconfig +++ b/drivers/mtd/devices/Kconfig -@@ -270,5 +270,17 @@ +@@ -270,5 +270,17 @@ config MTD_DOCPROBE_55AA LinuxBIOS or if you need to recover a DiskOnChip Millennium on which you have managed to wipe the first block. @@ -7326,7 +7326,7 @@ +endmenu --- a/drivers/mtd/devices/Makefile +++ b/drivers/mtd/devices/Makefile -@@ -17,3 +17,4 @@ +@@ -17,3 +17,4 @@ obj-$(CONFIG_MTD_LART) += lart.o obj-$(CONFIG_MTD_BLOCK2MTD) += block2mtd.o obj-$(CONFIG_MTD_DATAFLASH) += mtd_dataflash.o obj-$(CONFIG_MTD_M25P80) += m25p80.o @@ -8009,7 +8009,7 @@ +MODULE_DESCRIPTION("DataFlash driver for Atmel AT91RM9200"); --- a/drivers/mtd/nand/Kconfig +++ b/drivers/mtd/nand/Kconfig -@@ -273,12 +273,53 @@ +@@ -273,12 +273,53 @@ config MTD_NAND_CS553X If you say "m", the module will be called "cs553x_nand.ko". config MTD_NAND_AT91 @@ -8158,7 +8158,7 @@ * Hardware specific access to control-lines */ static void at91_nand_cmd_ctrl(struct mtd_info *mtd, int cmd, unsigned int ctrl) -@@ -44,6 +113,13 @@ +@@ -44,6 +113,13 @@ static void at91_nand_cmd_ctrl(struct mt struct nand_chip *nand_chip = mtd->priv; struct at91_nand_host *host = nand_chip->priv; @@ -8172,7 +8172,7 @@ if (cmd == NAND_CMD_NONE) return; -@@ -65,27 +141,249 @@ +@@ -65,27 +141,249 @@ static int at91_nand_device_ready(struct } /* @@ -8431,7 +8431,7 @@ /* * Probe for the NAND device. */ -@@ -94,6 +392,8 @@ +@@ -94,6 +392,8 @@ static int __init at91_nand_probe(struct struct at91_nand_host *host; struct mtd_info *mtd; struct nand_chip *nand_chip; @@ -8440,7 +8440,7 @@ int res; #ifdef CONFIG_MTD_PARTITIONS -@@ -108,8 +408,13 @@ +@@ -108,8 +408,13 @@ static int __init at91_nand_probe(struct return -ENOMEM; } @@ -8456,7 +8456,7 @@ if (host->io_base == NULL) { printk(KERN_ERR "at91_nand: ioremap failed\n"); kfree(host); -@@ -119,6 +424,7 @@ +@@ -119,6 +424,7 @@ static int __init at91_nand_probe(struct mtd = &host->mtd; nand_chip = &host->nand_chip; host->board = pdev->dev.platform_data; @@ -8464,7 +8464,7 @@ nand_chip->priv = host; /* link the private data structures */ mtd->priv = nand_chip; -@@ -132,11 +438,40 @@ +@@ -132,11 +438,40 @@ static int __init at91_nand_probe(struct if (host->board->rdy_pin) nand_chip->dev_ready = at91_nand_device_ready; @@ -8506,7 +8506,7 @@ platform_set_drvdata(pdev, host); at91_nand_enable(host); -@@ -149,8 +484,60 @@ +@@ -149,8 +484,60 @@ static int __init at91_nand_probe(struct } } @@ -8569,7 +8569,7 @@ res = -ENXIO; goto out; } -@@ -179,8 +566,11 @@ +@@ -179,8 +566,11 @@ static int __init at91_nand_probe(struct if (!res) return res; @@ -8581,7 +8581,7 @@ out: at91_nand_disable(host); platform_set_drvdata(pdev, NULL); -@@ -192,7 +582,7 @@ +@@ -192,7 +582,7 @@ out: /* * Remove a NAND device. */ @@ -8590,7 +8590,7 @@ { struct at91_nand_host *host = platform_get_drvdata(pdev); struct mtd_info *mtd = &host->mtd; -@@ -208,8 +598,7 @@ +@@ -208,8 +598,7 @@ static int __devexit at91_nand_remove(st } static struct platform_driver at91_nand_driver = { @@ -8600,7 +8600,7 @@ .driver = { .name = "at91_nand", .owner = THIS_MODULE, -@@ -218,7 +607,7 @@ +@@ -218,7 +607,7 @@ static struct platform_driver at91_nand_ static int __init at91_nand_init(void) { @@ -8609,7 +8609,7 @@ } -@@ -233,4 +622,4 @@ +@@ -233,4 +622,4 @@ module_exit(at91_nand_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Rick Bronson"); @@ -8617,7 +8617,7 @@ +MODULE_DESCRIPTION("NAND/SmartMedia driver for AT91RM9200 / AT91SAM9 / AT91CAP9"); --- a/drivers/net/arm/Kconfig +++ b/drivers/net/arm/Kconfig -@@ -47,3 +47,10 @@ +@@ -47,3 +47,10 @@ config EP93XX_ETH help This is a driver for the ethernet hardware included in EP93xx CPUs. Say Y if you are building a kernel for EP93xx based devices. @@ -8630,14 +8630,14 @@ + and enable Ethernet support, then select this option. --- a/drivers/net/arm/Makefile +++ b/drivers/net/arm/Makefile -@@ -9,3 +9,4 @@ +@@ -9,3 +9,4 @@ obj-$(CONFIG_ARM_ETHER3) += ether3.o obj-$(CONFIG_ARM_ETHER1) += ether1.o obj-$(CONFIG_ARM_AT91_ETHER) += at91_ether.o obj-$(CONFIG_EP93XX_ETH) += ep93xx_eth.o +obj-$(CONFIG_ARM_KS8695_ETHER) += ks8695_ether.o --- a/drivers/net/arm/at91_ether.c +++ b/drivers/net/arm/at91_ether.c -@@ -220,7 +220,7 @@ +@@ -220,7 +220,7 @@ static irqreturn_t at91ether_phy_interru if (!(phy & (1 << 0))) goto done; } @@ -8646,7 +8646,7 @@ read_phy(lp->phy_address, MII_TPISTATUS, &phy); /* ack interrupt in Micrel PHY */ if (!(phy & ((1 << 2) | 1))) goto done; -@@ -286,7 +286,7 @@ +@@ -286,7 +286,7 @@ static void enable_phyirq(struct net_dev dsintr = (1 << 15) | ( 1 << 14); write_phy(lp->phy_address, MII_BCMINTR_REG, dsintr); } @@ -8655,7 +8655,7 @@ dsintr = (1 << 10) | ( 1 << 8); write_phy(lp->phy_address, MII_TPISTATUS, dsintr); } -@@ -341,7 +341,7 @@ +@@ -341,7 +341,7 @@ static void disable_phyirq(struct net_de dsintr = ~(1 << 14); write_phy(lp->phy_address, MII_BCMINTR_REG, dsintr); } @@ -8664,7 +8664,7 @@ read_phy(lp->phy_address, MII_TPISTATUS, &dsintr); dsintr = ~((1 << 10) | (1 << 8)); write_phy(lp->phy_address, MII_TPISTATUS, dsintr); -@@ -820,7 +820,7 @@ +@@ -820,7 +820,7 @@ static int at91ether_tx(struct sk_buff * lp->skb = skb; lp->skb_length = skb->len; lp->skb_physaddr = dma_map_single(NULL, skb->data, skb->len, DMA_TO_DEVICE); @@ -8673,7 +8673,7 @@ /* Set address of the data in the Transmit Address register */ at91_emac_write(AT91_EMAC_TAR, lp->skb_physaddr); -@@ -843,34 +843,32 @@ +@@ -843,34 +843,32 @@ static int at91ether_tx(struct sk_buff * */ static struct net_device_stats *at91ether_stats(struct net_device *dev) { @@ -8723,7 +8723,7 @@ } /* -@@ -896,16 +894,16 @@ +@@ -896,16 +894,16 @@ static void at91ether_rx(struct net_devi skb->protocol = eth_type_trans(skb, dev); dev->last_rx = jiffies; @@ -8743,7 +8743,7 @@ dlist->descriptors[lp->rxBuffIndex].addr &= ~EMAC_DESC_DONE; /* reset ownership bit */ if (lp->rxBuffIndex == MAX_RX_DESCR-1) /* wrap after last buffer */ -@@ -934,7 +932,7 @@ +@@ -934,7 +932,7 @@ static irqreturn_t at91ether_interrupt(i if (intstatus & AT91_EMAC_TCOM) { /* Transmit complete */ /* The TCOM bit is set even if the transmission failed. */ if (intstatus & (AT91_EMAC_TUND | AT91_EMAC_RTRY)) @@ -8752,7 +8752,7 @@ if (lp->skb) { dev_kfree_skb_irq(lp->skb); -@@ -978,15 +976,22 @@ +@@ -978,15 +976,22 @@ static int __init at91ether_setup(unsign struct net_device *dev; struct at91_private *lp; unsigned int val; @@ -8778,7 +8778,7 @@ /* Install the interrupt handler */ if (request_irq(dev->irq, at91ether_interrupt, 0, dev->name, dev)) { -@@ -1043,7 +1048,9 @@ +@@ -1043,7 +1048,9 @@ static int __init at91ether_setup(unsign } else if (machine_is_csb337()) { /* mix link activity status into LED2 link state */ write_phy(phy_address, MII_LEDCTRL_REG, 0x0d22); @@ -8789,7 +8789,7 @@ disable_mdi(); spin_unlock_irq(&lp->lock); -@@ -1058,12 +1065,12 @@ +@@ -1058,12 +1065,12 @@ static int __init at91ether_setup(unsign lp->phy_address = phy_address; /* MDI address of PHY */ /* Register the network interface */ @@ -8805,7 +8805,7 @@ } /* Determine current link speed */ -@@ -1101,6 +1108,8 @@ +@@ -1101,6 +1108,8 @@ static int __init at91ether_setup(unsign printk(KERN_INFO "%s: National Semiconductor DP83848 PHY\n", dev->name); else if (phy_type == MII_AC101L_ID) printk(KERN_INFO "%s: Altima AC101L PHY\n", dev->name); @@ -8814,7 +8814,7 @@ else if (phy_type == MII_KS8721_ID) printk(KERN_INFO "%s: Micrel KS8721 PHY\n", dev->name); else if (phy_type == MII_T78Q21x3_ID) -@@ -1146,6 +1155,7 @@ +@@ -1146,6 +1155,7 @@ static int __init at91ether_probe(struct case MII_DP83847_ID: /* National Semiconductor DP83847: */ case MII_DP83848_ID: /* National Semiconductor DP83848: */ case MII_AC101L_ID: /* Altima AC101L: PHY_ID1 = 0x22, PHY_ID2 = 0x5520 */ @@ -8822,7 +8822,7 @@ case MII_KS8721_ID: /* Micrel KS8721: PHY_ID1 = 0x22, PHY_ID2 = 0x1610 */ case MII_T78Q21x3_ID: /* Teridian 78Q21x3: PHY_ID1 = 0x0E, PHY_ID2 = 7237 */ case MII_LAN83C185_ID: /* SMSC LAN83C185: PHY_ID1 = 0x0007, PHY_ID2 = 0xC0A1 */ -@@ -1246,3 +1256,4 @@ +@@ -1246,3 +1256,4 @@ module_exit(at91ether_exit) MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("AT91RM9200 EMAC Ethernet driver"); MODULE_AUTHOR("Andrew Victor"); @@ -8839,7 +8839,7 @@ /* Micrel KS8721 PHY */ #define MII_KS8721_ID 0x00221610 -@@ -84,7 +87,6 @@ +@@ -84,7 +87,6 @@ struct recv_desc_bufs struct at91_private { @@ -9956,7 +9956,7 @@ +#endif --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig -@@ -487,12 +487,12 @@ +@@ -487,12 +487,12 @@ config RTC_DRV_AT91RM9200 this is powered by the backup power supply. config RTC_DRV_AT91SAM9 @@ -9985,7 +9985,7 @@ #include -@@ -307,12 +304,6 @@ +@@ -307,12 +304,6 @@ static int __init at91_rtc_probe(struct return ret; } @@ -10008,7 +10008,7 @@ #include -@@ -150,6 +151,9 @@ +@@ -150,6 +151,9 @@ static int at91_rtc_settime(struct devic return 0; } @@ -10018,7 +10018,7 @@ static int at91_rtc_readalarm(struct device *dev, struct rtc_wkalrm *alrm) { struct sam9_rtc *rtc = dev_get_drvdata(dev); -@@ -176,6 +180,9 @@ +@@ -176,6 +180,9 @@ static int at91_rtc_readalarm(struct dev return 0; } @@ -10028,7 +10028,7 @@ static int at91_rtc_setalarm(struct device *dev, struct rtc_wkalrm *alrm) { struct sam9_rtc *rtc = dev_get_drvdata(dev); -@@ -321,10 +328,6 @@ +@@ -321,10 +328,6 @@ static int __init at91_rtc_probe(struct if (!rtc) return -ENOMEM; @@ -10041,7 +10041,7 @@ rtc->rtt += r->start; --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig -@@ -113,6 +113,15 @@ +@@ -113,6 +113,15 @@ config SPI_GPIO If unsure, say N. @@ -10059,7 +10059,7 @@ depends on SPI_MASTER && ARCH_IMX && EXPERIMENTAL --- a/drivers/spi/Makefile +++ b/drivers/spi/Makefile -@@ -29,6 +29,7 @@ +@@ -29,6 +29,7 @@ obj-$(CONFIG_SPI_S3C24XX) += spi_s3c24x obj-$(CONFIG_SPI_TXX9) += spi_txx9.o obj-$(CONFIG_SPI_XILINX) += xilinx_spi.o obj-$(CONFIG_SPI_SH_SCI) += spi_sh_sci.o @@ -10280,7 +10280,7 @@ +MODULE_ALIAS("platform:at91_spi"); --- a/drivers/usb/gadget/Kconfig +++ b/drivers/usb/gadget/Kconfig -@@ -118,10 +118,10 @@ +@@ -118,10 +118,10 @@ config USB_AMD5536UDC config USB_GADGET_ATMEL_USBA boolean "Atmel USBA" select USB_GADGET_DUALSPEED @@ -10295,7 +10295,7 @@ tristate --- a/drivers/usb/gadget/at91_udc.c +++ b/drivers/usb/gadget/at91_udc.c -@@ -1827,7 +1827,7 @@ +@@ -1827,7 +1827,7 @@ static int at91udc_suspend(struct platfo */ if ((!udc->suspended && udc->addr) || !wake @@ -10322,7 +10322,7 @@ #ifdef CONFIG_USB_GADGET_DEBUG_FS #include -@@ -324,53 +326,6 @@ +@@ -324,53 +326,6 @@ static int vbus_is_present(struct usba_u return 1; } @@ -10376,7 +10376,7 @@ static void next_fifo_transaction(struct usba_ep *ep, struct usba_request *req) { unsigned int transaction_len; -@@ -387,7 +342,7 @@ +@@ -387,7 +342,7 @@ static void next_fifo_transaction(struct ep->ep.name, req, transaction_len, req->last_transaction ? ", done" : ""); @@ -10385,7 +10385,7 @@ usba_ep_writel(ep, SET_STA, USBA_TX_PK_RDY); req->req.actual += transaction_len; } -@@ -476,7 +431,7 @@ +@@ -476,7 +431,7 @@ static void receive_data(struct usba_ep bytecount = req->req.length - req->req.actual; } @@ -10394,7 +10394,7 @@ ep->fifo, bytecount); req->req.actual += bytecount; -@@ -1029,33 +984,6 @@ +@@ -1029,33 +984,6 @@ static const struct usb_gadget_ops usba_ .set_selfpowered = usba_udc_set_selfpowered, }; @@ -10428,7 +10428,7 @@ static struct usb_endpoint_descriptor usba_ep0_desc = { .bLength = USB_DT_ENDPOINT_SIZE, .bDescriptorType = USB_DT_ENDPOINT, -@@ -1074,7 +1002,6 @@ +@@ -1074,7 +1002,6 @@ static void nop_release(struct device *d static struct usba_udc the_udc = { .gadget = { .ops = &usba_udc_ops, @@ -10436,7 +10436,7 @@ .ep_list = LIST_HEAD_INIT(the_udc.gadget.ep_list), .is_dualspeed = 1, .name = "atmel_usba_udc", -@@ -1231,7 +1158,7 @@ +@@ -1231,7 +1158,7 @@ static int do_test_mode(struct usba_udc } else { usba_ep_writel(ep, CTL_ENB, USBA_EPT_ENABLE); usba_writel(udc, TST, USBA_TST_PKT_MODE); @@ -10445,7 +10445,7 @@ sizeof(test_packet_buffer)); usba_ep_writel(ep, SET_STA, USBA_TX_PK_RDY); dev_info(dev, "Entering Test_Packet mode...\n"); -@@ -1530,13 +1457,13 @@ +@@ -1530,13 +1457,13 @@ restart: DBG(DBG_HW, "Packet length: %u\n", pkt_len); if (pkt_len != sizeof(crq)) { pr_warning("udc: Invalid packet length %u " @@ -10461,7 +10461,7 @@ /* Free up one bank in the FIFO so that we can * generate or receive a reply right away. */ -@@ -1908,7 +1835,7 @@ +@@ -1908,7 +1835,7 @@ static int __init usba_udc_probe(struct regs = platform_get_resource(pdev, IORESOURCE_MEM, CTRL_IOMEM_ID); fifo = platform_get_resource(pdev, IORESOURCE_MEM, FIFO_IOMEM_ID); @@ -10470,7 +10470,7 @@ return -ENXIO; irq = platform_get_irq(pdev, 0); -@@ -1956,16 +1883,44 @@ +@@ -1956,16 +1883,44 @@ static int __init usba_udc_probe(struct usba_writel(udc, CTRL, 0); clk_disable(pclk); @@ -10516,7 +10516,7 @@ list_add_tail(&ep->ep.ep_list, &udc->gadget.ep_list); } -@@ -1984,7 +1939,7 @@ +@@ -1984,7 +1939,7 @@ static int __init usba_udc_probe(struct goto err_device_add; } @@ -10525,7 +10525,7 @@ if (!gpio_request(pdata->vbus_pin, "atmel_usba_udc")) { udc->vbus_pin = pdata->vbus_pin; -@@ -2004,7 +1959,7 @@ +@@ -2004,7 +1959,7 @@ static int __init usba_udc_probe(struct } usba_init_debugfs(udc); @@ -10534,7 +10534,7 @@ usba_ep_init_debugfs(udc, &usba_ep[i]); return 0; -@@ -2012,6 +1967,8 @@ +@@ -2012,6 +1967,8 @@ static int __init usba_udc_probe(struct err_device_add: free_irq(irq, udc); err_request_irq: @@ -10543,7 +10543,7 @@ iounmap(udc->fifo); err_map_fifo: iounmap(udc->regs); -@@ -2029,10 +1986,11 @@ +@@ -2029,10 +1986,11 @@ static int __exit usba_udc_remove(struct { struct usba_udc *udc; int i; @@ -10558,7 +10558,7 @@ --- a/drivers/usb/host/ohci-at91.c +++ b/drivers/usb/host/ohci-at91.c -@@ -330,7 +330,7 @@ +@@ -330,7 +330,7 @@ ohci_hcd_at91_drv_suspend(struct platfor * * REVISIT: some boards will be able to turn VBUS off... */ @@ -10569,7 +10569,7 @@ } --- a/drivers/video/Kconfig +++ b/drivers/video/Kconfig -@@ -889,6 +889,17 @@ +@@ -889,6 +889,17 @@ config FB_EPSON1355 framebuffer. Product specs at . @@ -10589,7 +10589,7 @@ depends on FB --- a/drivers/video/Makefile +++ b/drivers/video/Makefile -@@ -87,7 +87,8 @@ +@@ -87,7 +87,8 @@ obj-$(CONFIG_FB_G364) += g36 obj-$(CONFIG_FB_SA1100) += sa1100fb.o obj-$(CONFIG_FB_HIT) += hitfb.o obj-$(CONFIG_FB_EPSON1355) += epson1355fb.o @@ -10610,7 +10610,7 @@ #define ATMEL_LCDC_FIFO_SIZE 2048 #else #define ATMEL_LCDC_FIFO_SIZE 512 -@@ -903,11 +903,45 @@ +@@ -903,11 +903,45 @@ static int __exit atmel_lcdfb_remove(str return 0; } @@ -10661,7 +10661,7 @@ .owner = THIS_MODULE, --- a/drivers/video/backlight/Kconfig +++ b/drivers/video/backlight/Kconfig -@@ -112,3 +112,11 @@ +@@ -112,3 +112,11 @@ config BACKLIGHT_CARILLO_RANCH help If you have a Intel LE80578 (Carillo Ranch) say Y to enable the backlight driver. @@ -10675,7 +10675,7 @@ + backlight driver. --- a/drivers/video/backlight/Makefile +++ b/drivers/video/backlight/Makefile -@@ -10,3 +10,4 @@ +@@ -10,3 +10,4 @@ obj-$(CONFIG_BACKLIGHT_LOCOMO) += locomo obj-$(CONFIG_BACKLIGHT_OMAP1) += omap1_bl.o obj-$(CONFIG_BACKLIGHT_PROGEAR) += progear_bl.o obj-$(CONFIG_BACKLIGHT_CARILLO_RANCH) += cr_bllcd.o @@ -11507,7 +11507,7 @@ +MODULE_LICENSE("GPL"); --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig -@@ -66,6 +66,14 @@ +@@ -66,6 +66,14 @@ config AT91RM9200_WATCHDOG Watchdog timer embedded into AT91RM9200 chips. This will reboot your system when the timeout is reached. @@ -11524,7 +11524,7 @@ depends on FOOTBRIDGE --- a/drivers/watchdog/Makefile +++ b/drivers/watchdog/Makefile -@@ -26,6 +26,7 @@ +@@ -26,6 +26,7 @@ obj-$(CONFIG_USBPCWATCHDOG) += pcwd_usb. # ARM Architecture obj-$(CONFIG_AT91RM9200_WATCHDOG) += at91rm9200_wdt.o @@ -12556,7 +12556,7 @@ /* USB Device */ struct at91_udc_data { -@@ -45,6 +46,9 @@ +@@ -45,6 +46,9 @@ struct at91_udc_data { }; extern void __init at91_add_device_udc(struct at91_udc_data *data); @@ -12566,7 +12566,7 @@ /* Compact Flash */ struct at91_cf_data { u8 irq_pin; /* I/O IRQ */ -@@ -158,6 +162,9 @@ +@@ -158,6 +162,9 @@ extern void __init at91_add_device_ac97( /* ISI */ extern void __init at91_add_device_isi(void); @@ -12578,7 +12578,7 @@ extern void __init at91_gpio_leds(struct gpio_led *leds, int nr); --- a/include/asm-arm/arch-at91/cpu.h +++ b/include/asm-arm/arch-at91/cpu.h -@@ -48,6 +48,17 @@ +@@ -48,6 +48,17 @@ static inline unsigned long at91_arch_id return (at91_sys_read(AT91_DBGU_CIDR) & AT91_CIDR_ARCH); } @@ -12596,7 +12596,7 @@ #ifdef CONFIG_ARCH_AT91RM9200 #define cpu_is_at91rm9200() (at91_cpu_identify() == ARCH_ID_AT91RM9200) -@@ -83,8 +94,12 @@ +@@ -83,8 +94,12 @@ static inline unsigned long at91_arch_id #ifdef CONFIG_ARCH_AT91CAP9 #define cpu_is_at91cap9() (at91_cpu_identify() == ARCH_ID_AT91CAP9) @@ -12858,7 +12858,7 @@ #elif defined(CONFIG_ARCH_AT91SAM9RL) --- a/include/asm-arm/arch-ks8695/devices.h +++ b/include/asm-arm/arch-ks8695/devices.h -@@ -18,6 +18,11 @@ +@@ -18,6 +18,11 @@ extern void __init ks8695_add_device_wan extern void __init ks8695_add_device_lan(void); extern void __init ks8695_add_device_hpna(void); @@ -12872,7 +12872,7 @@ #define KS8695_MODE_MINIPCI 1 --- a/include/linux/clk.h +++ b/include/linux/clk.h -@@ -121,4 +121,24 @@ +@@ -121,4 +121,24 @@ int clk_set_parent(struct clk *clk, stru */ struct clk *clk_get_parent(struct clk *clk); @@ -12935,7 +12935,7 @@ + --- a/include/video/atmel_lcdc.h +++ b/include/video/atmel_lcdc.h -@@ -39,6 +39,7 @@ +@@ -39,6 +39,7 @@ struct atmel_lcdfb_info { u8 bl_power; #endif bool lcdcon_is_backlight; @@ -12969,7 +12969,7 @@ static struct clk *pck1_clk; static struct clk *pllb_clk; -@@ -276,7 +268,6 @@ +@@ -276,7 +268,6 @@ static struct platform_device *eti_b1_sn static int __init eti_b1_init(void) { int ret; @@ -12977,7 +12977,7 @@ struct at91_ssc_periph *ssc = eti_b1_dai.cpu_dai->private_data; if (!request_mem_region(AT91RM9200_BASE_SSC1, SZ_16K, "soc-audio")) { -@@ -310,19 +301,12 @@ +@@ -310,19 +301,12 @@ static int __init eti_b1_init(void) goto fail_io_unmap; } @@ -13005,7 +13005,7 @@ * Set PCK1 parent to PLLB and its rate to 12 Mhz. --- a/sound/spi/at73c213.c +++ b/sound/spi/at73c213.c -@@ -114,7 +114,11 @@ +@@ -114,7 +114,11 @@ snd_at73c213_write_reg(struct snd_at73c2 static struct snd_pcm_hardware snd_at73c213_playback_hw = { .info = SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_BLOCK_TRANSFER, diff --git a/target/linux/at91/patches-2.6.25/001-vlink-machine.patch b/target/linux/at91/patches-2.6.25/001-vlink-machine.patch index ee23cc8c5c..76e3698c52 100644 --- a/target/linux/at91/patches-2.6.25/001-vlink-machine.patch +++ b/target/linux/at91/patches-2.6.25/001-vlink-machine.patch @@ -1,6 +1,6 @@ --- a/arch/arm/mach-at91/Kconfig +++ b/arch/arm/mach-at91/Kconfig -@@ -151,6 +151,12 @@ +@@ -151,6 +151,12 @@ config MACH_TT9200 help Select this if you are using Toptech's TT9200 board. @@ -15,7 +15,7 @@ # ---------------------------------------------------------- --- a/arch/arm/mach-at91/Makefile +++ b/arch/arm/mach-at91/Makefile -@@ -29,6 +29,7 @@ +@@ -29,6 +29,7 @@ obj-$(CONFIG_MACH_KB9200) += board-kb920 obj-$(CONFIG_MACH_ATEB9200) += board-eb9200.o obj-$(CONFIG_MACH_KAFA) += board-kafa.o obj-$(CONFIG_MACH_CHUB) += board-chub.o diff --git a/target/linux/at91/patches-2.6.25/002-led-driver.patch b/target/linux/at91/patches-2.6.25/002-led-driver.patch index 20e1fe7729..595720dcb2 100644 --- a/target/linux/at91/patches-2.6.25/002-led-driver.patch +++ b/target/linux/at91/patches-2.6.25/002-led-driver.patch @@ -1,6 +1,6 @@ --- a/arch/arm/mach-at91/at91rm9200_devices.c +++ b/arch/arm/mach-at91/at91rm9200_devices.c -@@ -717,6 +717,26 @@ +@@ -717,6 +717,26 @@ static void __init at91_add_device_watch static void __init at91_add_device_watchdog(void) {} #endif @@ -29,7 +29,7 @@ * SSC -- Synchronous Serial Controller --- a/arch/arm/mach-at91/Makefile +++ b/arch/arm/mach-at91/Makefile -@@ -60,7 +60,12 @@ +@@ -60,7 +60,12 @@ obj-$(CONFIG_MACH_AT91CAP9ADK) += board- obj-$(CONFIG_MACH_AT91EB01) += board-eb01.o # Drivers @@ -153,7 +153,7 @@ +__initcall(leds_init); --- a/include/asm-arm/arch-at91/board.h +++ b/include/asm-arm/arch-at91/board.h -@@ -162,6 +162,11 @@ +@@ -162,6 +162,11 @@ extern void __init at91_add_device_ac97( /* ISI */ extern void __init at91_add_device_isi(void); diff --git a/target/linux/at91/patches-2.6.25/003-gpio-driver.patch b/target/linux/at91/patches-2.6.25/003-gpio-driver.patch index f27b361051..3968c6b2d5 100644 --- a/target/linux/at91/patches-2.6.25/003-gpio-driver.patch +++ b/target/linux/at91/patches-2.6.25/003-gpio-driver.patch @@ -1,6 +1,6 @@ --- a/arch/arm/mach-at91/board-vlink.c +++ b/arch/arm/mach-at91/board-vlink.c -@@ -99,7 +99,7 @@ +@@ -99,7 +99,7 @@ static struct at91_udc_data __initdata v */ static struct at91_mmc_data __initdata vlink_mmc_data = { @@ -9,7 +9,7 @@ .slot_b = 0, .wire4 = 1, // .wp_pin = AT91_PIN_PA17, -@@ -136,6 +136,7 @@ +@@ -136,6 +136,7 @@ static struct spi_board_info vlink_spi_d static void __init vlink_board_init(void) { @@ -17,7 +17,7 @@ /* Serial */ at91_add_device_serial(); /* Ethernet */ -@@ -157,36 +158,66 @@ +@@ -157,36 +158,66 @@ static void __init vlink_board_init(void // at91_set_gpio_output(AT91_PIN_PB22, 1); /* this MMC card slot can optionally use SPI signaling (CS3). */ at91_add_device_mmc(0, &vlink_mmc_data); #endif @@ -112,7 +112,7 @@ static inline void __iomem *pin_to_controller(unsigned pin) -@@ -71,9 +72,13 @@ +@@ -71,9 +72,13 @@ int __init_or_module at91_set_GPIO_perip { void __iomem *pio = pin_to_controller(pin); unsigned mask = pin_to_mask(pin); @@ -126,7 +126,7 @@ __raw_writel(mask, pio + PIO_IDR); __raw_writel(mask, pio + (use_pullup ? PIO_PUER : PIO_PUDR)); __raw_writel(mask, pio + PIO_PER); -@@ -130,10 +135,13 @@ +@@ -130,10 +135,13 @@ int __init_or_module at91_set_gpio_input { void __iomem *pio = pin_to_controller(pin); unsigned mask = pin_to_mask(pin); @@ -140,7 +140,7 @@ __raw_writel(mask, pio + PIO_IDR); __raw_writel(mask, pio + (use_pullup ? PIO_PUER : PIO_PUDR)); __raw_writel(mask, pio + PIO_ODR); -@@ -151,10 +159,13 @@ +@@ -151,10 +159,13 @@ int __init_or_module at91_set_gpio_outpu { void __iomem *pio = pin_to_controller(pin); unsigned mask = pin_to_mask(pin); @@ -154,7 +154,7 @@ __raw_writel(mask, pio + PIO_IDR); __raw_writel(mask, pio + PIO_PUDR); __raw_writel(mask, pio + (value ? PIO_SODR : PIO_CODR)); -@@ -262,6 +273,18 @@ +@@ -262,6 +273,18 @@ int at91_get_gpio_value(unsigned pin) } EXPORT_SYMBOL(at91_get_gpio_value); @@ -175,7 +175,7 @@ #ifdef CONFIG_PM --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig -@@ -1072,5 +1072,12 @@ +@@ -1072,5 +1072,12 @@ config AT91_SPIDEV The SPI driver gives user mode access to this serial bus on the AT91RM9200 processor. @@ -190,7 +190,7 @@ --- a/drivers/char/Makefile +++ b/drivers/char/Makefile -@@ -100,6 +100,7 @@ +@@ -100,6 +100,7 @@ obj-$(CONFIG_GPIO_TB0219) += tb0219.o obj-$(CONFIG_TELCLOCK) += tlclk.o obj-$(CONFIG_AT91_SPI) += at91_spi.o obj-$(CONFIG_AT91_SPIDEV) += at91_spidev.o @@ -536,7 +536,7 @@ +MODULE_DESCRIPTION("FDL Versalink GPIO Driver"); --- a/include/asm-arm/arch-at91/gpio.h +++ b/include/asm-arm/arch-at91/gpio.h -@@ -199,6 +199,7 @@ +@@ -199,6 +199,7 @@ extern int __init_or_module at91_set_mul /* callable at any time */ extern int at91_set_gpio_value(unsigned pin, int value); extern int at91_get_gpio_value(unsigned pin); diff --git a/target/linux/at91/patches-2.6.25/007-mtd-partition.patch b/target/linux/at91/patches-2.6.25/007-mtd-partition.patch index 80602596ad..503c89200b 100644 --- a/target/linux/at91/patches-2.6.25/007-mtd-partition.patch +++ b/target/linux/at91/patches-2.6.25/007-mtd-partition.patch @@ -1,6 +1,6 @@ --- a/drivers/mtd/devices/at91_dataflash.c +++ b/drivers/mtd/devices/at91_dataflash.c -@@ -175,7 +175,7 @@ +@@ -175,7 +175,7 @@ static struct mtd_partition static_parti }; #endif @@ -11,7 +11,7 @@ --- a/drivers/mtd/Kconfig +++ b/drivers/mtd/Kconfig -@@ -168,6 +168,12 @@ +@@ -168,6 +168,12 @@ config MTD_OF_PARTS the partition map from the children of the flash node, as described in Documentation/powerpc/booting-without-of.txt. @@ -26,7 +26,7 @@ config MTD_CHAR --- a/drivers/mtd/Makefile +++ b/drivers/mtd/Makefile -@@ -12,6 +12,7 @@ +@@ -12,6 +12,7 @@ obj-$(CONFIG_MTD_REDBOOT_PARTS) += redbo obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdlinepart.o obj-$(CONFIG_MTD_AFS_PARTS) += afs.o obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o diff --git a/target/linux/at91/patches-2.6.25/008-fdl-serial.patch b/target/linux/at91/patches-2.6.25/008-fdl-serial.patch index 331990168b..cf11ac0da5 100644 --- a/target/linux/at91/patches-2.6.25/008-fdl-serial.patch +++ b/target/linux/at91/patches-2.6.25/008-fdl-serial.patch @@ -1,6 +1,6 @@ --- a/drivers/serial/atmel_serial.c +++ b/drivers/serial/atmel_serial.c -@@ -214,6 +214,34 @@ +@@ -214,6 +214,34 @@ static void atmel_set_mctrl(struct uart_ at91_set_gpio_value(AT91_PIN_PA21, 0); else at91_set_gpio_value(AT91_PIN_PA21, 1); @@ -35,7 +35,7 @@ } } #endif -@@ -251,8 +279,10 @@ +@@ -251,8 +279,10 @@ static u_int atmel_get_mctrl(struct uart /* * The control signals are active low. */ @@ -48,7 +48,7 @@ if (!(status & ATMEL_US_CTS)) ret |= TIOCM_CTS; if (!(status & ATMEL_US_DSR)) -@@ -260,6 +290,16 @@ +@@ -260,6 +290,16 @@ static u_int atmel_get_mctrl(struct uart if (!(status & ATMEL_US_RI)) ret |= TIOCM_RI; @@ -65,7 +65,7 @@ return ret; } -@@ -453,6 +493,34 @@ +@@ -453,6 +493,34 @@ static void atmel_tx_chars(struct uart_p } /* @@ -100,7 +100,7 @@ * receive interrupt handler. */ static void -@@ -815,6 +883,23 @@ +@@ -815,6 +883,23 @@ static int atmel_startup(struct uart_por return retval; } @@ -124,7 +124,7 @@ /* * Initialize DMA (if necessary) */ -@@ -834,6 +919,10 @@ +@@ -834,6 +919,10 @@ static int atmel_startup(struct uart_por kfree(atmel_port->pdc_rx[0].buf); } free_irq(port->irq, port); @@ -135,7 +135,7 @@ return -ENOMEM; } pdc->dma_addr = dma_map_single(port->dev, -@@ -873,7 +962,11 @@ +@@ -873,7 +962,11 @@ static int atmel_startup(struct uart_por retval = atmel_open_hook(port); if (retval) { free_irq(port->irq, port); @@ -148,7 +148,7 @@ } } -@@ -947,6 +1040,10 @@ +@@ -947,6 +1040,10 @@ static void atmel_shutdown(struct uart_p * Free the interrupt */ free_irq(port->irq, port); diff --git a/target/linux/at91/patches-2.6.25/009-fdl-uartinit.patch b/target/linux/at91/patches-2.6.25/009-fdl-uartinit.patch index 45d6783bb4..d30023186a 100644 --- a/target/linux/at91/patches-2.6.25/009-fdl-uartinit.patch +++ b/target/linux/at91/patches-2.6.25/009-fdl-uartinit.patch @@ -1,6 +1,6 @@ --- a/arch/arm/mach-at91/at91rm9200_devices.c +++ b/arch/arm/mach-at91/at91rm9200_devices.c -@@ -1001,7 +1001,15 @@ +@@ -1001,7 +1001,15 @@ static inline void configure_usart0_pins * We need to drive the pin manually. Default is off (RTS is active low). */ at91_set_gpio_output(AT91_PIN_PA21, 1); @@ -17,7 +17,7 @@ } static struct resource uart1_resources[] = { -@@ -1139,6 +1147,14 @@ +@@ -1139,6 +1147,14 @@ static inline void configure_usart3_pins at91_set_B_periph(AT91_PIN_PB1, 0); /* CTS3 */ if (pins & ATMEL_UART_RTS) at91_set_B_periph(AT91_PIN_PB0, 0); /* RTS3 */ diff --git a/target/linux/at91/patches-2.6.25/010-dm9161a-phyfix.patch b/target/linux/at91/patches-2.6.25/010-dm9161a-phyfix.patch index a84851298e..756e014f02 100644 --- a/target/linux/at91/patches-2.6.25/010-dm9161a-phyfix.patch +++ b/target/linux/at91/patches-2.6.25/010-dm9161a-phyfix.patch @@ -1,6 +1,6 @@ --- a/drivers/net/arm/at91_ether.c +++ b/drivers/net/arm/at91_ether.c -@@ -146,6 +146,7 @@ +@@ -146,6 +146,7 @@ static void update_linkspeed(struct net_ struct at91_private *lp = netdev_priv(dev); unsigned int bmsr, bmcr, lpa, mac_cfg; unsigned int speed, duplex; @@ -8,7 +8,7 @@ if (!mii_link_ok(&lp->mii)) { /* no link */ netif_carrier_off(dev); -@@ -158,8 +159,15 @@ +@@ -158,8 +159,15 @@ static void update_linkspeed(struct net_ read_phy(lp->phy_address, MII_BMSR, &bmsr); read_phy(lp->phy_address, MII_BMCR, &bmcr); if (bmcr & BMCR_ANENABLE) { /* AutoNegotiation is enabled */ diff --git a/target/linux/at91/patches-2.6.25/014-initpartition.patch b/target/linux/at91/patches-2.6.25/014-initpartition.patch index 491207443e..554c1491e7 100644 --- a/target/linux/at91/patches-2.6.25/014-initpartition.patch +++ b/target/linux/at91/patches-2.6.25/014-initpartition.patch @@ -1,6 +1,6 @@ --- a/drivers/mtd/devices/at91_dataflash.c +++ b/drivers/mtd/devices/at91_dataflash.c -@@ -163,12 +163,12 @@ +@@ -163,12 +163,12 @@ static struct mtd_partition static_parti .mask_flags = MTD_WRITEABLE, /* read-only */ }, { diff --git a/target/linux/at91/patches-2.6.25/017-usb_serial_endpoint_size.patch b/target/linux/at91/patches-2.6.25/017-usb_serial_endpoint_size.patch index d698763c68..7bd38b4434 100644 --- a/target/linux/at91/patches-2.6.25/017-usb_serial_endpoint_size.patch +++ b/target/linux/at91/patches-2.6.25/017-usb_serial_endpoint_size.patch @@ -1,6 +1,6 @@ --- a/drivers/usb/serial/usb-serial.c +++ b/drivers/usb/serial/usb-serial.c -@@ -904,7 +904,7 @@ +@@ -904,7 +904,7 @@ int usb_serial_probe(struct usb_interfac dev_err(&interface->dev, "No free urbs available\n"); goto probe_error; } diff --git a/target/linux/au1000/Makefile b/target/linux/au1000/Makefile index 4db3a39dc8..a022d5f1a4 100644 --- a/target/linux/au1000/Makefile +++ b/target/linux/au1000/Makefile @@ -11,7 +11,7 @@ BOARD:=au1000 BOARDNAME:=RMI/AMD AU1x00 FEATURES:=jffs2 usb pci -LINUX_VERSION:=2.6.25.17 +LINUX_VERSION:=2.6.25.19 include $(INCLUDE_DIR)/target.mk DEFAULT_PACKAGES += yamonenv diff --git a/target/linux/au1000/patches/001-au1000_gpio_kconfig.patch b/target/linux/au1000/patches/001-au1000_gpio_kconfig.patch index bac9463e04..b3aa0637b8 100644 --- a/target/linux/au1000/patches/001-au1000_gpio_kconfig.patch +++ b/target/linux/au1000/patches/001-au1000_gpio_kconfig.patch @@ -12,7 +12,7 @@ Signed-off-by: Florian Fainelli --- a/arch/mips/au1000/Kconfig +++ b/arch/mips/au1000/Kconfig -@@ -135,3 +135,4 @@ +@@ -135,3 +135,4 @@ config SOC_AU1X00 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_APM_EMULATION select SYS_SUPPORTS_KGDB diff --git a/target/linux/au1000/patches/002-sys_btn_gpio.patch b/target/linux/au1000/patches/002-sys_btn_gpio.patch index a3aa7ad679..e38b83f7cb 100644 --- a/target/linux/au1000/patches/002-sys_btn_gpio.patch +++ b/target/linux/au1000/patches/002-sys_btn_gpio.patch @@ -37,7 +37,7 @@ Signed-off-by: Florian Fainelli static struct resource mtx1_wdt_res[] = { [0] = { .start = 15, -@@ -62,11 +85,13 @@ +@@ -62,11 +85,13 @@ static struct platform_device mtx1_gpio_ static struct platform_device *mtx1_devs[] = { &mtx1_gpio_leds, diff --git a/target/linux/au1000/patches/005-au1000_eth_link_beat.patch b/target/linux/au1000/patches/005-au1000_eth_link_beat.patch index 8ba5f0024e..e3771d7720 100644 --- a/target/linux/au1000/patches/005-au1000_eth_link_beat.patch +++ b/target/linux/au1000/patches/005-au1000_eth_link_beat.patch @@ -10,7 +10,7 @@ * ######################################################################## * * This program is free software; you can distribute it and/or modify it -@@ -835,6 +838,10 @@ +@@ -835,6 +838,10 @@ static int au1000_init(struct net_device control = MAC_RX_ENABLE | MAC_TX_ENABLE; #ifndef CONFIG_CPU_LITTLE_ENDIAN diff --git a/target/linux/au1000/patches/012-mtx1_cmdline.patch b/target/linux/au1000/patches/012-mtx1_cmdline.patch index ee8b541b81..a41ee6f21d 100644 --- a/target/linux/au1000/patches/012-mtx1_cmdline.patch +++ b/target/linux/au1000/patches/012-mtx1_cmdline.patch @@ -1,6 +1,6 @@ --- a/arch/mips/au1000/mtx-1/init.c +++ b/arch/mips/au1000/mtx-1/init.c -@@ -54,7 +54,7 @@ +@@ -54,7 +54,7 @@ void __init prom_init(void) prom_argv = (char **) fw_arg1; prom_envp = (char **) fw_arg2; diff --git a/target/linux/au1000/patches/013-openwrt_rootfs.patch b/target/linux/au1000/patches/013-openwrt_rootfs.patch index 414aa39583..e7bcba6b6e 100644 --- a/target/linux/au1000/patches/013-openwrt_rootfs.patch +++ b/target/linux/au1000/patches/013-openwrt_rootfs.patch @@ -1,6 +1,6 @@ --- a/drivers/mtd/maps/mtx-1_flash.c +++ b/drivers/mtd/maps/mtx-1_flash.c -@@ -28,7 +28,7 @@ +@@ -28,7 +28,7 @@ static struct map_info mtx1_map = { static struct mtd_partition mtx1_partitions[] = { { diff --git a/target/linux/au1000/patches/014-au1000_eth_ioctl.patch b/target/linux/au1000/patches/014-au1000_eth_ioctl.patch index ed308f8190..935898159f 100644 --- a/target/linux/au1000/patches/014-au1000_eth_ioctl.patch +++ b/target/linux/au1000/patches/014-au1000_eth_ioctl.patch @@ -1,6 +1,6 @@ --- a/drivers/net/au1000_eth.c +++ b/drivers/net/au1000_eth.c -@@ -1306,9 +1306,12 @@ +@@ -1306,9 +1306,12 @@ static void set_rx_mode(struct net_devic } } diff --git a/target/linux/au1000/patches/016-net-irq.patch b/target/linux/au1000/patches/016-net-irq.patch index 4ad718bf6e..a5b00a8789 100644 --- a/target/linux/au1000/patches/016-net-irq.patch +++ b/target/linux/au1000/patches/016-net-irq.patch @@ -1,6 +1,6 @@ --- a/include/asm-mips/mach-au1x00/au1000.h +++ b/include/asm-mips/mach-au1x00/au1000.h -@@ -623,6 +623,7 @@ +@@ -623,6 +623,7 @@ enum soc_au1500_ints { AU1000_RTC_MATCH1_INT, AU1000_RTC_MATCH2_INT, AU1500_PCI_ERR_INT, diff --git a/target/linux/au1000/patches/017-gpio-dir.patch b/target/linux/au1000/patches/017-gpio-dir.patch index 982d10af4e..5ae819ee18 100644 --- a/target/linux/au1000/patches/017-gpio-dir.patch +++ b/target/linux/au1000/patches/017-gpio-dir.patch @@ -1,6 +1,6 @@ --- a/arch/mips/au1000/common/gpio.c +++ b/arch/mips/au1000/common/gpio.c -@@ -66,7 +66,8 @@ +@@ -66,7 +66,8 @@ static int au1xxx_gpio2_direction_input( static int au1xxx_gpio2_direction_output(unsigned gpio, int value) { gpio -= AU1XXX_GPIO_BASE; @@ -10,7 +10,7 @@ return 0; } -@@ -95,6 +96,7 @@ +@@ -95,6 +96,7 @@ static int au1xxx_gpio1_direction_input( static int au1xxx_gpio1_direction_output(unsigned gpio, int value) { gpio1->trioutclr = (0x01 & gpio); diff --git a/target/linux/avr32/Makefile b/target/linux/avr32/Makefile index 6d24ecffb3..7d1b8418a5 100644 --- a/target/linux/avr32/Makefile +++ b/target/linux/avr32/Makefile @@ -10,7 +10,7 @@ ARCH:=avr32 BOARD:=avr32 BOARDNAME:=Atmel AVR32 FEATURES:=squashfs -LINUX_VERSION:=2.6.25.17 +LINUX_VERSION:=2.6.25.19 include $(INCLUDE_DIR)/target.mk diff --git a/target/linux/avr32/patches/100-git_sync.patch b/target/linux/avr32/patches/100-git_sync.patch index 2f6291a7db..6c9fe1eb66 100644 --- a/target/linux/avr32/patches/100-git_sync.patch +++ b/target/linux/avr32/patches/100-git_sync.patch @@ -1,6 +1,6 @@ --- a/Documentation/serial/driver +++ b/Documentation/serial/driver -@@ -186,6 +186,17 @@ +@@ -186,6 +186,17 @@ hardware. Locking: port_sem taken. Interrupts: caller dependent. @@ -20,7 +20,7 @@ bits. Update read_status_mask and ignore_status_mask to indicate --- a/arch/avr32/Kconfig +++ b/arch/avr32/Kconfig -@@ -47,6 +47,9 @@ +@@ -47,6 +47,9 @@ config RWSEM_GENERIC_SPINLOCK config GENERIC_TIME def_bool y @@ -30,7 +30,7 @@ config RWSEM_XCHGADD_ALGORITHM def_bool n -@@ -70,6 +73,8 @@ +@@ -70,6 +73,8 @@ source "init/Kconfig" menu "System Type and features" @@ -39,7 +39,7 @@ config SUBARCH_AVR32B bool config MMU -@@ -83,6 +88,7 @@ +@@ -83,6 +88,7 @@ config PLATFORM_AT32AP select MMU select PERFORMANCE_COUNTERS select HAVE_GPIO_LIB @@ -47,7 +47,7 @@ # # CPU types -@@ -117,6 +123,9 @@ +@@ -117,6 +123,9 @@ endchoice if BOARD_ATSTK1000 source "arch/avr32/boards/atstk1000/Kconfig" endif @@ -57,7 +57,7 @@ choice prompt "Boot loader type" -@@ -142,6 +151,9 @@ +@@ -142,6 +151,9 @@ config PHYS_OFFSET source "kernel/Kconfig.preempt" @@ -67,7 +67,7 @@ config HAVE_ARCH_BOOTMEM_NODE def_bool n -@@ -180,6 +192,10 @@ +@@ -180,6 +192,10 @@ config NMI_DEBUGGING be dumped to the console when a Non-Maskable Interrupt happens. @@ -78,7 +78,7 @@ # FPU emulation goes here source "kernel/Kconfig.hz" -@@ -196,6 +212,11 @@ +@@ -196,6 +212,11 @@ endmenu menu "Power management options" @@ -92,7 +92,7 @@ source "drivers/cpufreq/Kconfig" --- a/arch/avr32/Makefile +++ b/arch/avr32/Makefile -@@ -32,6 +32,7 @@ +@@ -32,6 +32,7 @@ core-$(CONFIG_LOADER_U_BOOT) += arch/av core-y += arch/avr32/kernel/ core-y += arch/avr32/mm/ drivers-$(CONFIG_OPROFILE) += arch/avr32/oprofile/ @@ -131,7 +131,7 @@ /* Initialized by bootloader-specific startup code. */ struct tag *bootloader_tags __initdata; -@@ -37,11 +44,16 @@ +@@ -37,11 +44,16 @@ static struct eth_platform_data __initda static struct spi_board_info spi0_board_info[] __initdata = { { .modalias = "mtd_dataflash", @@ -149,7 +149,7 @@ /* * The next two functions should go away as the boot loader is * supposed to initialize the macb address registers with a valid -@@ -124,6 +136,7 @@ +@@ -124,6 +136,7 @@ static struct platform_device ngw_gpio_l } }; @@ -157,7 +157,7 @@ static struct i2c_gpio_platform_data i2c_gpio_data = { .sda_pin = GPIO_PIN_PA(6), .scl_pin = GPIO_PIN_PA(7), -@@ -139,6 +152,7 @@ +@@ -139,6 +152,7 @@ static struct platform_device i2c_gpio_d .platform_data = &i2c_gpio_data, }, }; @@ -165,7 +165,7 @@ static int __init atngw100_init(void) { -@@ -157,6 +171,7 @@ +@@ -157,6 +171,7 @@ static int __init atngw100_init(void) set_hw_addr(at32_add_device_eth(1, ð_data[1])); at32_add_device_spi(0, spi0_board_info, ARRAY_SIZE(spi0_board_info)); @@ -173,7 +173,7 @@ at32_add_device_usba(0, NULL); for (i = 0; i < ARRAY_SIZE(ngw_leds); i++) { -@@ -165,11 +180,15 @@ +@@ -165,11 +180,15 @@ static int __init atngw100_init(void) } platform_device_register(&ngw_gpio_leds); @@ -191,7 +191,7 @@ } --- a/arch/avr32/boards/atstk1000/Kconfig +++ b/arch/avr32/boards/atstk1000/Kconfig -@@ -18,6 +18,10 @@ +@@ -18,6 +18,10 @@ config BOARD_ATSTK1004 bool "ATSTK1004" select CPU_AT32AP7002 @@ -202,7 +202,7 @@ endchoice -@@ -102,4 +106,60 @@ +@@ -102,4 +106,60 @@ config BOARD_ATSTK1000_EXTDAC depends on !BOARD_ATSTK100X_SW1_CUSTOM && !BOARD_ATSTK100X_SW3_CUSTOM default y @@ -265,7 +265,7 @@ endif # stk 1000 --- a/arch/avr32/boards/atstk1000/Makefile +++ b/arch/avr32/boards/atstk1000/Makefile -@@ -2,3 +2,4 @@ +@@ -2,3 +2,4 @@ obj-y += setup.o flash.o obj-$(CONFIG_BOARD_ATSTK1002) += atstk1002.o obj-$(CONFIG_BOARD_ATSTK1003) += atstk1003.o obj-$(CONFIG_BOARD_ATSTK1004) += atstk1004.o @@ -363,7 +363,7 @@ struct eth_addr { u8 addr[6]; -@@ -83,6 +157,19 @@ +@@ -83,6 +157,19 @@ static struct spi_board_info spi1_board_ } }; #endif @@ -383,7 +383,7 @@ /* * The next two functions should go away as the boot loader is * supposed to initialize the macb address registers with a valid -@@ -212,6 +299,12 @@ +@@ -212,6 +299,12 @@ static int __init atstk1002_init(void) at32_add_system_devices(); @@ -396,7 +396,7 @@ #ifdef CONFIG_BOARD_ATSTK100X_SW2_CUSTOM at32_add_device_usart(1); #else -@@ -228,16 +321,30 @@ +@@ -228,16 +321,30 @@ static int __init atstk1002_init(void) #ifdef CONFIG_BOARD_ATSTK100X_SPI1 at32_add_device_spi(1, spi1_board_info, ARRAY_SIZE(spi1_board_info)); #endif @@ -444,7 +444,7 @@ #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC static struct at73c213_board_info at73c213_data = { .ssc_id = 0, -@@ -59,6 +66,19 @@ +@@ -59,6 +66,19 @@ static struct spi_board_info spi1_board_ } }; #endif @@ -464,7 +464,7 @@ #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC static void __init atstk1003_setup_extdac(void) { -@@ -147,12 +167,22 @@ +@@ -147,12 +167,22 @@ static int __init atstk1003_init(void) at32_add_device_spi(1, spi1_board_info, ARRAY_SIZE(spi1_board_info)); #endif #ifndef CONFIG_BOARD_ATSTK100X_SW2_CUSTOM @@ -504,7 +504,7 @@ #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC static struct at73c213_board_info at73c213_data = { .ssc_id = 0, -@@ -130,14 +137,23 @@ +@@ -130,14 +137,23 @@ static int __init atstk1004_init(void) at32_add_device_spi(1, spi1_board_info, ARRAY_SIZE(spi1_board_info)); #endif #ifndef CONFIG_BOARD_ATSTK100X_SW2_CUSTOM @@ -542,7 +542,7 @@ # CONFIG_AVR32=y CONFIG_GENERIC_GPIO=y -@@ -13,10 +13,10 @@ +@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y CONFIG_GENERIC_IRQ_PROBE=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_TIME=y @@ -554,7 +554,7 @@ CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_BUG=y -@@ -37,17 +37,15 @@ +@@ -37,17 +37,15 @@ CONFIG_POSIX_MQUEUE=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_BSD_PROCESS_ACCT_V3=y # CONFIG_TASKSTATS is not set @@ -575,7 +575,7 @@ CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" CONFIG_CC_OPTIMIZE_FOR_SIZE=y -@@ -61,11 +59,13 @@ +@@ -61,11 +59,13 @@ CONFIG_HOTPLUG=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y @@ -589,7 +589,7 @@ CONFIG_EVENTFD=y CONFIG_SHMEM=y CONFIG_VM_EVENT_COUNTERS=y -@@ -73,6 +73,14 @@ +@@ -73,6 +73,14 @@ CONFIG_SLUB_DEBUG=y # CONFIG_SLAB is not set CONFIG_SLUB=y # CONFIG_SLOB is not set @@ -604,7 +604,7 @@ CONFIG_SLABINFO=y CONFIG_RT_MUTEXES=y # CONFIG_TINY_SHMEM is not set -@@ -101,10 +109,15 @@ +@@ -101,10 +109,15 @@ CONFIG_IOSCHED_CFQ=y CONFIG_DEFAULT_CFQ=y # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="cfq" @@ -620,7 +620,7 @@ CONFIG_SUBARCH_AVR32B=y CONFIG_MMU=y CONFIG_PERFORMANCE_COUNTERS=y -@@ -113,6 +126,7 @@ +@@ -113,6 +126,7 @@ CONFIG_CPU_AT32AP700X=y CONFIG_CPU_AT32AP7000=y # CONFIG_BOARD_ATSTK1000 is not set CONFIG_BOARD_ATNGW100=y @@ -628,7 +628,7 @@ CONFIG_LOADER_U_BOOT=y # -@@ -121,6 +135,7 @@ +@@ -121,6 +135,7 @@ CONFIG_LOADER_U_BOOT=y # CONFIG_AP700X_32_BIT_SMC is not set CONFIG_AP700X_16_BIT_SMC=y # CONFIG_AP700X_8_BIT_SMC is not set @@ -636,7 +636,7 @@ CONFIG_LOAD_ADDRESS=0x10000000 CONFIG_ENTRY_ADDRESS=0x90000000 CONFIG_PHYS_OFFSET=0x10000000 -@@ -146,16 +161,26 @@ +@@ -146,16 +161,26 @@ CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_ZONE_DMA_FLAG=0 CONFIG_VIRT_TO_BUS=y # CONFIG_OWNERSHIP_TRACE is not set @@ -663,7 +663,7 @@ # # CPU Frequency scaling -@@ -164,9 +189,9 @@ +@@ -164,9 +189,9 @@ CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ_TABLE=y # CONFIG_CPU_FREQ_DEBUG is not set # CONFIG_CPU_FREQ_STAT is not set @@ -675,7 +675,7 @@ # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set CONFIG_CPU_FREQ_GOV_PERFORMANCE=y # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set -@@ -202,6 +227,7 @@ +@@ -202,6 +227,7 @@ CONFIG_XFRM=y CONFIG_XFRM_USER=y # CONFIG_XFRM_SUB_POLICY is not set # CONFIG_XFRM_MIGRATE is not set @@ -683,7 +683,7 @@ CONFIG_NET_KEY=y # CONFIG_NET_KEY_MIGRATE is not set CONFIG_INET=y -@@ -260,82 +286,33 @@ +@@ -260,82 +286,33 @@ CONFIG_IPV6_SIT=y # CONFIG_NETWORK_SECMARK is not set CONFIG_NETFILTER=y # CONFIG_NETFILTER_DEBUG is not set @@ -770,7 +770,7 @@ CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_TARGET_REJECT=m CONFIG_IP_NF_TARGET_LOG=m -@@ -343,54 +320,25 @@ +@@ -343,54 +320,25 @@ CONFIG_IP_NF_TARGET_LOG=m CONFIG_NF_NAT=m CONFIG_NF_NAT_NEEDED=y CONFIG_IP_NF_TARGET_MASQUERADE=m @@ -830,7 +830,7 @@ # CONFIG_IP_DCCP is not set # CONFIG_IP_SCTP is not set # CONFIG_TIPC is not set -@@ -407,7 +355,6 @@ +@@ -407,7 +355,6 @@ CONFIG_LLC=m # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_SCHED is not set @@ -838,7 +838,7 @@ # # Network testing -@@ -415,6 +362,7 @@ +@@ -415,6 +362,7 @@ CONFIG_NET_CLS_ROUTE=y # CONFIG_NET_PKTGEN is not set # CONFIG_NET_TCPPROBE is not set # CONFIG_HAMRADIO is not set @@ -846,7 +846,7 @@ # CONFIG_IRDA is not set # CONFIG_BT is not set # CONFIG_AF_RXRPC is not set -@@ -531,11 +479,18 @@ +@@ -531,11 +479,18 @@ CONFIG_BLK_DEV_NBD=m CONFIG_BLK_DEV_RAM=m CONFIG_BLK_DEV_RAM_COUNT=16 CONFIG_BLK_DEV_RAM_SIZE=4096 @@ -868,7 +868,7 @@ # # SCSI device support -@@ -568,11 +523,13 @@ +@@ -568,11 +523,13 @@ CONFIG_PHYLIB=y # CONFIG_SMSC_PHY is not set # CONFIG_BROADCOM_PHY is not set # CONFIG_ICPLUS_PHY is not set @@ -882,7 +882,7 @@ # CONFIG_IBM_NEW_EMAC_ZMII is not set # CONFIG_IBM_NEW_EMAC_RGMII is not set # CONFIG_IBM_NEW_EMAC_TAH is not set -@@ -599,7 +556,6 @@ +@@ -599,7 +556,6 @@ CONFIG_PPPOE=m # CONFIG_PPPOL2TP is not set # CONFIG_SLIP is not set CONFIG_SLHC=m @@ -890,7 +890,7 @@ # CONFIG_NETCONSOLE is not set # CONFIG_NETPOLL is not set # CONFIG_NET_POLL_CONTROLLER is not set -@@ -633,6 +589,7 @@ +@@ -633,6 +589,7 @@ CONFIG_SLHC=m # CONFIG_SERIAL_ATMEL=y CONFIG_SERIAL_ATMEL_CONSOLE=y @@ -898,7 +898,7 @@ # CONFIG_SERIAL_ATMEL_TTYAT is not set CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y -@@ -640,8 +597,6 @@ +@@ -640,8 +597,6 @@ CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set # CONFIG_IPMI_HANDLER is not set # CONFIG_HW_RANDOM is not set @@ -907,7 +907,7 @@ # CONFIG_R3964 is not set # CONFIG_RAW_DRIVER is not set # CONFIG_TCG_TPM is not set -@@ -659,6 +614,7 @@ +@@ -659,6 +614,7 @@ CONFIG_I2C_ALGOBIT=m # # I2C Hardware Bus support # @@ -915,7 +915,7 @@ CONFIG_I2C_GPIO=m # CONFIG_I2C_OCORES is not set # CONFIG_I2C_PARPORT_LIGHT is not set -@@ -669,13 +625,12 @@ +@@ -669,13 +625,12 @@ CONFIG_I2C_GPIO=m # # Miscellaneous I2C Chip support # @@ -931,7 +931,7 @@ # CONFIG_SENSORS_MAX6875 is not set # CONFIG_SENSORS_TSL2550 is not set # CONFIG_I2C_DEBUG_CORE is not set -@@ -702,9 +657,27 @@ +@@ -702,9 +657,27 @@ CONFIG_SPI_ATMEL=y # CONFIG_SPI_AT25 is not set CONFIG_SPI_SPIDEV=m # CONFIG_SPI_TLE62X0 is not set @@ -959,7 +959,7 @@ CONFIG_WATCHDOG=y # CONFIG_WATCHDOG_NOWAYOUT is not set -@@ -757,10 +730,6 @@ +@@ -757,10 +730,6 @@ CONFIG_USB_SUPPORT=y # # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' # @@ -970,7 +970,7 @@ CONFIG_USB_GADGET=y # CONFIG_USB_GADGET_DEBUG is not set # CONFIG_USB_GADGET_DEBUG_FILES is not set -@@ -787,21 +756,24 @@ +@@ -787,21 +756,24 @@ CONFIG_USB_FILE_STORAGE=m # CONFIG_USB_FILE_STORAGE_TEST is not set CONFIG_USB_G_SERIAL=m # CONFIG_USB_MIDI_GADGET is not set @@ -997,7 +997,7 @@ CONFIG_NEW_LEDS=y CONFIG_LEDS_CLASS=y -@@ -844,19 +816,22 @@ +@@ -844,19 +816,22 @@ CONFIG_RTC_INTF_DEV=y # CONFIG_RTC_DRV_PCF8563 is not set # CONFIG_RTC_DRV_PCF8583 is not set # CONFIG_RTC_DRV_M41T80 is not set @@ -1022,7 +1022,7 @@ # CONFIG_RTC_DRV_M48T86 is not set # CONFIG_RTC_DRV_M48T59 is not set # CONFIG_RTC_DRV_V3020 is not set -@@ -874,25 +849,23 @@ +@@ -874,25 +849,23 @@ CONFIG_RTC_DRV_AT32AP700X=y # # File systems # @@ -1052,7 +1052,7 @@ # CONFIG_AUTOFS_FS is not set # CONFIG_AUTOFS4_FS is not set CONFIG_FUSE_FS=m -@@ -923,7 +896,7 @@ +@@ -923,7 +896,7 @@ CONFIG_SYSFS=y CONFIG_TMPFS=y # CONFIG_TMPFS_POSIX_ACL is not set # CONFIG_HUGETLB_PAGE is not set @@ -1061,7 +1061,7 @@ # # Miscellaneous filesystems -@@ -948,8 +921,10 @@ +@@ -948,8 +921,10 @@ CONFIG_JFFS2_RTIME=y # CONFIG_JFFS2_RUBIN is not set # CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set @@ -1072,7 +1072,7 @@ # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set CONFIG_NETWORK_FILESYSTEMS=y -@@ -1030,11 +1005,6 @@ +@@ -1030,11 +1005,6 @@ CONFIG_NLS_ISO8859_1=m # CONFIG_NLS_KOI8_U is not set CONFIG_NLS_UTF8=m # CONFIG_DLM is not set @@ -1084,7 +1084,7 @@ # # Kernel hacking -@@ -1053,6 +1023,7 @@ +@@ -1053,6 +1023,7 @@ CONFIG_SCHED_DEBUG=y # CONFIG_SCHEDSTATS is not set # CONFIG_TIMER_STATS is not set # CONFIG_SLUB_DEBUG_ON is not set @@ -1092,7 +1092,7 @@ # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_RT_MUTEX_TESTER is not set # CONFIG_DEBUG_SPINLOCK is not set -@@ -1069,9 +1040,10 @@ +@@ -1069,9 +1040,10 @@ CONFIG_DEBUG_BUGVERBOSE=y # CONFIG_DEBUG_LIST is not set # CONFIG_DEBUG_SG is not set CONFIG_FRAME_POINTER=y @@ -1104,7 +1104,7 @@ # CONFIG_LKDTM is not set # CONFIG_FAULT_INJECTION is not set # CONFIG_SAMPLES is not set -@@ -1084,7 +1056,9 @@ +@@ -1084,7 +1056,9 @@ CONFIG_FRAME_POINTER=y # CONFIG_SECURITY_FILE_CAPABILITIES is not set CONFIG_CRYPTO=y CONFIG_CRYPTO_ALGAPI=y @@ -1114,7 +1114,7 @@ CONFIG_CRYPTO_HASH=y CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_HMAC=y -@@ -1103,6 +1077,9 @@ +@@ -1103,6 +1077,9 @@ CONFIG_CRYPTO_CBC=y CONFIG_CRYPTO_PCBC=m # CONFIG_CRYPTO_LRW is not set # CONFIG_CRYPTO_XTS is not set @@ -1124,7 +1124,7 @@ # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_DES=y # CONFIG_CRYPTO_FCRYPT is not set -@@ -1117,12 +1094,14 @@ +@@ -1117,12 +1094,14 @@ CONFIG_CRYPTO_ARC4=m # CONFIG_CRYPTO_KHAZAD is not set # CONFIG_CRYPTO_ANUBIS is not set # CONFIG_CRYPTO_SEED is not set @@ -1140,7 +1140,7 @@ CONFIG_CRYPTO_HW=y # -@@ -1137,10 +1116,7 @@ +@@ -1137,10 +1116,7 @@ CONFIG_CRC7=m # CONFIG_LIBCRC32C is not set CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y @@ -1164,7 +1164,7 @@ # CONFIG_AVR32=y CONFIG_GENERIC_GPIO=y -@@ -13,10 +13,10 @@ +@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y CONFIG_GENERIC_IRQ_PROBE=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_TIME=y @@ -1176,7 +1176,7 @@ CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_BUG=y -@@ -36,15 +36,15 @@ +@@ -36,15 +36,15 @@ CONFIG_SYSVIPC_SYSCTL=y CONFIG_POSIX_MQUEUE=y # CONFIG_BSD_PROCESS_ACCT is not set # CONFIG_TASKSTATS is not set @@ -1195,7 +1195,7 @@ CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" CONFIG_CC_OPTIMIZE_FOR_SIZE=y -@@ -58,11 +58,13 @@ +@@ -58,11 +58,13 @@ CONFIG_HOTPLUG=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y @@ -1209,7 +1209,7 @@ CONFIG_EVENTFD=y CONFIG_SHMEM=y CONFIG_VM_EVENT_COUNTERS=y -@@ -70,6 +72,14 @@ +@@ -70,6 +72,14 @@ CONFIG_SLUB_DEBUG=y # CONFIG_SLAB is not set CONFIG_SLUB=y # CONFIG_SLOB is not set @@ -1224,7 +1224,7 @@ CONFIG_SLABINFO=y CONFIG_RT_MUTEXES=y # CONFIG_TINY_SHMEM is not set -@@ -98,10 +108,15 @@ +@@ -98,10 +108,15 @@ CONFIG_IOSCHED_CFQ=y CONFIG_DEFAULT_CFQ=y # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="cfq" @@ -1240,7 +1240,7 @@ CONFIG_SUBARCH_AVR32B=y CONFIG_MMU=y CONFIG_PERFORMANCE_COUNTERS=y -@@ -113,12 +128,16 @@ +@@ -113,12 +128,16 @@ CONFIG_BOARD_ATSTK1000=y CONFIG_BOARD_ATSTK1002=y # CONFIG_BOARD_ATSTK1003 is not set # CONFIG_BOARD_ATSTK1004 is not set @@ -1257,7 +1257,7 @@ CONFIG_LOADER_U_BOOT=y # -@@ -127,6 +146,7 @@ +@@ -127,6 +146,7 @@ CONFIG_LOADER_U_BOOT=y # CONFIG_AP700X_32_BIT_SMC is not set CONFIG_AP700X_16_BIT_SMC=y # CONFIG_AP700X_8_BIT_SMC is not set @@ -1265,7 +1265,7 @@ CONFIG_LOAD_ADDRESS=0x10000000 CONFIG_ENTRY_ADDRESS=0x90000000 CONFIG_PHYS_OFFSET=0x10000000 -@@ -152,16 +172,26 @@ +@@ -152,16 +172,26 @@ CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_ZONE_DMA_FLAG=0 CONFIG_VIRT_TO_BUS=y # CONFIG_OWNERSHIP_TRACE is not set @@ -1292,7 +1292,7 @@ # # CPU Frequency scaling -@@ -170,9 +200,9 @@ +@@ -170,9 +200,9 @@ CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ_TABLE=y # CONFIG_CPU_FREQ_DEBUG is not set # CONFIG_CPU_FREQ_STAT is not set @@ -1304,7 +1304,7 @@ # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set CONFIG_CPU_FREQ_GOV_PERFORMANCE=y # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set -@@ -208,6 +238,7 @@ +@@ -208,6 +238,7 @@ CONFIG_XFRM=y CONFIG_XFRM_USER=m # CONFIG_XFRM_SUB_POLICY is not set # CONFIG_XFRM_MIGRATE is not set @@ -1312,7 +1312,7 @@ CONFIG_NET_KEY=m # CONFIG_NET_KEY_MIGRATE is not set CONFIG_INET=y -@@ -279,6 +310,7 @@ +@@ -279,6 +310,7 @@ CONFIG_LLC=m # CONFIG_NET_PKTGEN is not set # CONFIG_NET_TCPPROBE is not set # CONFIG_HAMRADIO is not set @@ -1320,7 +1320,7 @@ # CONFIG_IRDA is not set # CONFIG_BT is not set # CONFIG_AF_RXRPC is not set -@@ -395,13 +427,18 @@ +@@ -395,13 +427,18 @@ CONFIG_BLK_DEV_NBD=m CONFIG_BLK_DEV_RAM=m CONFIG_BLK_DEV_RAM_COUNT=16 CONFIG_BLK_DEV_RAM_SIZE=4096 @@ -1341,7 +1341,7 @@ # # SCSI device support -@@ -444,6 +481,7 @@ +@@ -444,6 +481,7 @@ CONFIG_SCSI_WAIT_SCAN=m # CONFIG_SCSI_LOWLEVEL is not set CONFIG_ATA=m # CONFIG_ATA_NONSTANDARD is not set @@ -1349,7 +1349,7 @@ CONFIG_PATA_AT32=m # CONFIG_PATA_PLATFORM is not set # CONFIG_MD is not set -@@ -469,11 +507,13 @@ +@@ -469,11 +507,13 @@ CONFIG_PHYLIB=y # CONFIG_SMSC_PHY is not set # CONFIG_BROADCOM_PHY is not set # CONFIG_ICPLUS_PHY is not set @@ -1363,7 +1363,7 @@ # CONFIG_IBM_NEW_EMAC_ZMII is not set # CONFIG_IBM_NEW_EMAC_RGMII is not set # CONFIG_IBM_NEW_EMAC_TAH is not set -@@ -500,7 +540,6 @@ +@@ -500,7 +540,6 @@ CONFIG_PPP_BSDCOMP=m # CONFIG_PPPOL2TP is not set # CONFIG_SLIP is not set CONFIG_SLHC=m @@ -1371,7 +1371,7 @@ # CONFIG_NETCONSOLE is not set # CONFIG_NETPOLL is not set # CONFIG_NET_POLL_CONTROLLER is not set -@@ -568,6 +607,7 @@ +@@ -568,6 +607,7 @@ CONFIG_MOUSE_GPIO=m # CONFIG_SERIAL_ATMEL=y CONFIG_SERIAL_ATMEL_CONSOLE=y @@ -1379,7 +1379,7 @@ # CONFIG_SERIAL_ATMEL_TTYAT is not set CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y -@@ -575,8 +615,6 @@ +@@ -575,8 +615,6 @@ CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set # CONFIG_IPMI_HANDLER is not set # CONFIG_HW_RANDOM is not set @@ -1388,7 +1388,7 @@ # CONFIG_R3964 is not set # CONFIG_RAW_DRIVER is not set # CONFIG_TCG_TPM is not set -@@ -594,6 +632,7 @@ +@@ -594,6 +632,7 @@ CONFIG_I2C_ALGOBIT=m # # I2C Hardware Bus support # @@ -1396,7 +1396,7 @@ CONFIG_I2C_GPIO=m # CONFIG_I2C_OCORES is not set # CONFIG_I2C_PARPORT_LIGHT is not set -@@ -604,13 +643,12 @@ +@@ -604,13 +643,12 @@ CONFIG_I2C_GPIO=m # # Miscellaneous I2C Chip support # @@ -1412,7 +1412,7 @@ # CONFIG_SENSORS_MAX6875 is not set # CONFIG_SENSORS_TSL2550 is not set # CONFIG_I2C_DEBUG_CORE is not set -@@ -637,9 +675,27 @@ +@@ -637,9 +675,27 @@ CONFIG_SPI_ATMEL=y # CONFIG_SPI_AT25 is not set CONFIG_SPI_SPIDEV=m # CONFIG_SPI_TLE62X0 is not set @@ -1440,7 +1440,7 @@ CONFIG_WATCHDOG=y # CONFIG_WATCHDOG_NOWAYOUT is not set -@@ -732,12 +788,18 @@ +@@ -732,12 +788,18 @@ CONFIG_SND_PCM_OSS_PLUGINS=y # # Generic devices # @@ -1459,7 +1459,7 @@ # SPI devices # CONFIG_SND_AT73C213=m -@@ -753,9 +815,14 @@ +@@ -753,9 +815,14 @@ CONFIG_SND_AT73C213_TARGET_BITRATE=48000 # # @@ -1474,7 +1474,7 @@ # CONFIG_HID_SUPPORT is not set CONFIG_USB_SUPPORT=y # CONFIG_USB_ARCH_HAS_HCD is not set -@@ -765,10 +832,6 @@ +@@ -765,10 +832,6 @@ CONFIG_USB_SUPPORT=y # # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' # @@ -1485,7 +1485,7 @@ CONFIG_USB_GADGET=y # CONFIG_USB_GADGET_DEBUG is not set # CONFIG_USB_GADGET_DEBUG_FILES is not set -@@ -796,27 +859,31 @@ +@@ -796,27 +859,31 @@ CONFIG_USB_FILE_STORAGE=m # CONFIG_USB_FILE_STORAGE_TEST is not set CONFIG_USB_G_SERIAL=m # CONFIG_USB_MIDI_GADGET is not set @@ -1519,7 +1519,7 @@ CONFIG_LEDS_GPIO=m # -@@ -853,19 +920,22 @@ +@@ -853,19 +920,22 @@ CONFIG_RTC_INTF_DEV=y # CONFIG_RTC_DRV_PCF8563 is not set # CONFIG_RTC_DRV_PCF8583 is not set # CONFIG_RTC_DRV_M41T80 is not set @@ -1544,7 +1544,7 @@ # CONFIG_RTC_DRV_M48T86 is not set # CONFIG_RTC_DRV_M48T59 is not set # CONFIG_RTC_DRV_V3020 is not set -@@ -883,13 +953,13 @@ +@@ -883,13 +953,13 @@ CONFIG_RTC_DRV_AT32AP700X=y # # File systems # @@ -1561,7 +1561,7 @@ # CONFIG_JBD_DEBUG is not set # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set -@@ -897,12 +967,10 @@ +@@ -897,12 +967,10 @@ CONFIG_JBD=m # CONFIG_XFS_FS is not set # CONFIG_GFS2_FS is not set # CONFIG_OCFS2_FS is not set @@ -1575,7 +1575,7 @@ # CONFIG_AUTOFS_FS is not set # CONFIG_AUTOFS4_FS is not set CONFIG_FUSE_FS=m -@@ -933,7 +1001,7 @@ +@@ -933,7 +1001,7 @@ CONFIG_SYSFS=y CONFIG_TMPFS=y # CONFIG_TMPFS_POSIX_ACL is not set # CONFIG_HUGETLB_PAGE is not set @@ -1584,7 +1584,7 @@ # # Miscellaneous filesystems -@@ -957,8 +1025,10 @@ +@@ -957,8 +1025,10 @@ CONFIG_JFFS2_RTIME=y # CONFIG_JFFS2_RUBIN is not set # CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set @@ -1595,7 +1595,7 @@ # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set CONFIG_NETWORK_FILESYSTEMS=y -@@ -1028,11 +1098,6 @@ +@@ -1028,11 +1098,6 @@ CONFIG_NLS_ISO8859_1=m # CONFIG_NLS_KOI8_U is not set CONFIG_NLS_UTF8=m # CONFIG_DLM is not set @@ -1607,7 +1607,7 @@ # # Kernel hacking -@@ -1051,6 +1116,7 @@ +@@ -1051,6 +1116,7 @@ CONFIG_SCHED_DEBUG=y # CONFIG_SCHEDSTATS is not set # CONFIG_TIMER_STATS is not set # CONFIG_SLUB_DEBUG_ON is not set @@ -1615,7 +1615,7 @@ # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_RT_MUTEX_TESTER is not set # CONFIG_DEBUG_SPINLOCK is not set -@@ -1067,9 +1133,10 @@ +@@ -1067,9 +1133,10 @@ CONFIG_DEBUG_BUGVERBOSE=y # CONFIG_DEBUG_LIST is not set # CONFIG_DEBUG_SG is not set CONFIG_FRAME_POINTER=y @@ -1627,7 +1627,7 @@ # CONFIG_LKDTM is not set # CONFIG_FAULT_INJECTION is not set # CONFIG_SAMPLES is not set -@@ -1082,7 +1149,9 @@ +@@ -1082,7 +1149,9 @@ CONFIG_FORCED_INLINING=y # CONFIG_SECURITY_FILE_CAPABILITIES is not set CONFIG_CRYPTO=y CONFIG_CRYPTO_ALGAPI=m @@ -1637,7 +1637,7 @@ CONFIG_CRYPTO_HASH=m CONFIG_CRYPTO_MANAGER=m CONFIG_CRYPTO_HMAC=m -@@ -1101,6 +1170,9 @@ +@@ -1101,6 +1170,9 @@ CONFIG_CRYPTO_CBC=m # CONFIG_CRYPTO_PCBC is not set # CONFIG_CRYPTO_LRW is not set # CONFIG_CRYPTO_XTS is not set @@ -1647,7 +1647,7 @@ # CONFIG_CRYPTO_CRYPTD is not set CONFIG_CRYPTO_DES=m # CONFIG_CRYPTO_FCRYPT is not set -@@ -1115,12 +1187,14 @@ +@@ -1115,12 +1187,14 @@ CONFIG_CRYPTO_DES=m # CONFIG_CRYPTO_KHAZAD is not set # CONFIG_CRYPTO_ANUBIS is not set # CONFIG_CRYPTO_SEED is not set @@ -1663,7 +1663,7 @@ # CONFIG_CRYPTO_HW is not set # -@@ -1135,6 +1209,7 @@ +@@ -1135,6 +1209,7 @@ CONFIG_CRC7=m # CONFIG_LIBCRC32C is not set CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y @@ -1683,7 +1683,7 @@ # CONFIG_AVR32=y CONFIG_GENERIC_GPIO=y -@@ -13,10 +13,10 @@ +@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y CONFIG_GENERIC_IRQ_PROBE=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_TIME=y @@ -1695,7 +1695,7 @@ CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_BUG=y -@@ -39,17 +39,15 @@ +@@ -39,17 +39,15 @@ CONFIG_BSD_PROCESS_ACCT_V3=y CONFIG_TASKSTATS=y CONFIG_TASK_DELAY_ACCT=y # CONFIG_TASK_XACCT is not set @@ -1716,7 +1716,7 @@ CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" CONFIG_CC_OPTIMIZE_FOR_SIZE=y -@@ -63,11 +61,13 @@ +@@ -63,11 +61,13 @@ CONFIG_HOTPLUG=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y @@ -1730,7 +1730,7 @@ CONFIG_EVENTFD=y CONFIG_SHMEM=y CONFIG_VM_EVENT_COUNTERS=y -@@ -75,6 +75,14 @@ +@@ -75,6 +75,14 @@ CONFIG_VM_EVENT_COUNTERS=y # CONFIG_SLAB is not set CONFIG_SLUB=y # CONFIG_SLOB is not set @@ -1745,7 +1745,7 @@ CONFIG_SLABINFO=y CONFIG_RT_MUTEXES=y # CONFIG_TINY_SHMEM is not set -@@ -103,10 +111,15 @@ +@@ -103,10 +111,15 @@ CONFIG_IOSCHED_CFQ=y CONFIG_DEFAULT_CFQ=y # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="cfq" @@ -1761,7 +1761,7 @@ CONFIG_SUBARCH_AVR32B=y CONFIG_MMU=y CONFIG_PERFORMANCE_COUNTERS=y -@@ -118,12 +131,16 @@ +@@ -118,12 +131,16 @@ CONFIG_BOARD_ATSTK1000=y # CONFIG_BOARD_ATSTK1002 is not set CONFIG_BOARD_ATSTK1003=y # CONFIG_BOARD_ATSTK1004 is not set @@ -1778,7 +1778,7 @@ CONFIG_LOADER_U_BOOT=y # -@@ -132,6 +149,7 @@ +@@ -132,6 +149,7 @@ CONFIG_LOADER_U_BOOT=y # CONFIG_AP700X_32_BIT_SMC is not set CONFIG_AP700X_16_BIT_SMC=y # CONFIG_AP700X_8_BIT_SMC is not set @@ -1786,7 +1786,7 @@ CONFIG_LOAD_ADDRESS=0x10000000 CONFIG_ENTRY_ADDRESS=0x90000000 CONFIG_PHYS_OFFSET=0x10000000 -@@ -157,16 +175,26 @@ +@@ -157,16 +175,26 @@ CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_ZONE_DMA_FLAG=0 CONFIG_VIRT_TO_BUS=y # CONFIG_OWNERSHIP_TRACE is not set @@ -1813,7 +1813,7 @@ # # CPU Frequency scaling -@@ -175,9 +203,9 @@ +@@ -175,9 +203,9 @@ CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ_TABLE=y # CONFIG_CPU_FREQ_DEBUG is not set # CONFIG_CPU_FREQ_STAT is not set @@ -1825,7 +1825,7 @@ # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set CONFIG_CPU_FREQ_GOV_PERFORMANCE=y # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set -@@ -260,6 +288,7 @@ +@@ -260,6 +288,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic" # CONFIG_NET_PKTGEN is not set # CONFIG_NET_TCPPROBE is not set # CONFIG_HAMRADIO is not set @@ -1833,7 +1833,7 @@ # CONFIG_IRDA is not set # CONFIG_BT is not set # CONFIG_AF_RXRPC is not set -@@ -376,13 +405,18 @@ +@@ -376,13 +405,18 @@ CONFIG_BLK_DEV_NBD=m CONFIG_BLK_DEV_RAM=m CONFIG_BLK_DEV_RAM_COUNT=16 CONFIG_BLK_DEV_RAM_SIZE=4096 @@ -1854,7 +1854,7 @@ # # SCSI device support -@@ -427,6 +461,7 @@ +@@ -427,6 +461,7 @@ CONFIG_SCSI_LOWLEVEL=y # CONFIG_SCSI_DEBUG is not set CONFIG_ATA=m # CONFIG_ATA_NONSTANDARD is not set @@ -1862,7 +1862,7 @@ CONFIG_PATA_AT32=m # CONFIG_PATA_PLATFORM is not set # CONFIG_MD is not set -@@ -460,7 +495,6 @@ +@@ -460,7 +495,6 @@ CONFIG_PPP_BSDCOMP=m # CONFIG_PPPOL2TP is not set # CONFIG_SLIP is not set CONFIG_SLHC=m @@ -1870,7 +1870,7 @@ # CONFIG_NETCONSOLE is not set # CONFIG_NETPOLL is not set # CONFIG_NET_POLL_CONTROLLER is not set -@@ -528,6 +562,7 @@ +@@ -528,6 +562,7 @@ CONFIG_MOUSE_GPIO=m # CONFIG_SERIAL_ATMEL=y CONFIG_SERIAL_ATMEL_CONSOLE=y @@ -1878,7 +1878,7 @@ # CONFIG_SERIAL_ATMEL_TTYAT is not set CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y -@@ -535,8 +570,6 @@ +@@ -535,8 +570,6 @@ CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set # CONFIG_IPMI_HANDLER is not set # CONFIG_HW_RANDOM is not set @@ -1887,7 +1887,7 @@ # CONFIG_R3964 is not set # CONFIG_RAW_DRIVER is not set # CONFIG_TCG_TPM is not set -@@ -554,6 +587,7 @@ +@@ -554,6 +587,7 @@ CONFIG_I2C_ALGOBIT=m # # I2C Hardware Bus support # @@ -1895,7 +1895,7 @@ CONFIG_I2C_GPIO=m # CONFIG_I2C_OCORES is not set # CONFIG_I2C_PARPORT_LIGHT is not set -@@ -564,13 +598,12 @@ +@@ -564,13 +598,12 @@ CONFIG_I2C_GPIO=m # # Miscellaneous I2C Chip support # @@ -1911,7 +1911,7 @@ # CONFIG_SENSORS_MAX6875 is not set # CONFIG_SENSORS_TSL2550 is not set # CONFIG_I2C_DEBUG_CORE is not set -@@ -597,9 +630,27 @@ +@@ -597,9 +630,27 @@ CONFIG_SPI_ATMEL=y # CONFIG_SPI_AT25 is not set CONFIG_SPI_SPIDEV=m # CONFIG_SPI_TLE62X0 is not set @@ -1939,7 +1939,7 @@ CONFIG_WATCHDOG=y # CONFIG_WATCHDOG_NOWAYOUT is not set -@@ -665,12 +716,18 @@ +@@ -665,12 +716,18 @@ CONFIG_SND_VERBOSE_PROCFS=y # # Generic devices # @@ -1958,7 +1958,7 @@ # SPI devices # CONFIG_SND_AT73C213=m -@@ -686,9 +743,14 @@ +@@ -686,9 +743,14 @@ CONFIG_SND_AT73C213_TARGET_BITRATE=48000 # # @@ -1973,7 +1973,7 @@ # CONFIG_HID_SUPPORT is not set CONFIG_USB_SUPPORT=y # CONFIG_USB_ARCH_HAS_HCD is not set -@@ -698,10 +760,6 @@ +@@ -698,10 +760,6 @@ CONFIG_USB_SUPPORT=y # # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' # @@ -1984,7 +1984,7 @@ CONFIG_USB_GADGET=y # CONFIG_USB_GADGET_DEBUG is not set # CONFIG_USB_GADGET_DEBUG_FILES is not set -@@ -729,27 +787,31 @@ +@@ -729,27 +787,31 @@ CONFIG_USB_FILE_STORAGE=m # CONFIG_USB_FILE_STORAGE_TEST is not set CONFIG_USB_G_SERIAL=m # CONFIG_USB_MIDI_GADGET is not set @@ -2018,7 +2018,7 @@ CONFIG_LEDS_GPIO=y # -@@ -786,19 +848,22 @@ +@@ -786,19 +848,22 @@ CONFIG_RTC_INTF_DEV=y # CONFIG_RTC_DRV_PCF8563 is not set # CONFIG_RTC_DRV_PCF8583 is not set # CONFIG_RTC_DRV_M41T80 is not set @@ -2043,7 +2043,7 @@ # CONFIG_RTC_DRV_M48T86 is not set # CONFIG_RTC_DRV_M48T59 is not set # CONFIG_RTC_DRV_V3020 is not set -@@ -816,13 +881,13 @@ +@@ -816,13 +881,13 @@ CONFIG_UIO=m # # File systems # @@ -2060,7 +2060,7 @@ # CONFIG_JBD_DEBUG is not set # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set -@@ -830,12 +895,10 @@ +@@ -830,12 +895,10 @@ CONFIG_JBD=m # CONFIG_XFS_FS is not set # CONFIG_GFS2_FS is not set # CONFIG_OCFS2_FS is not set @@ -2074,7 +2074,7 @@ # CONFIG_AUTOFS_FS is not set # CONFIG_AUTOFS4_FS is not set CONFIG_FUSE_FS=m -@@ -866,7 +929,7 @@ +@@ -866,7 +929,7 @@ CONFIG_SYSFS=y CONFIG_TMPFS=y # CONFIG_TMPFS_POSIX_ACL is not set # CONFIG_HUGETLB_PAGE is not set @@ -2083,7 +2083,7 @@ # # Miscellaneous filesystems -@@ -891,8 +954,10 @@ +@@ -891,8 +954,10 @@ CONFIG_JFFS2_RTIME=y # CONFIG_JFFS2_RUBIN is not set # CONFIG_CRAMFS is not set # CONFIG_VXFS_FS is not set @@ -2094,7 +2094,7 @@ # CONFIG_SYSV_FS is not set # CONFIG_UFS_FS is not set # CONFIG_NETWORK_FILESYSTEMS is not set -@@ -943,11 +1008,6 @@ +@@ -943,11 +1008,6 @@ CONFIG_NLS_ISO8859_1=m # CONFIG_NLS_KOI8_U is not set CONFIG_NLS_UTF8=m # CONFIG_DLM is not set @@ -2106,7 +2106,7 @@ # # Kernel hacking -@@ -965,6 +1025,7 @@ +@@ -965,6 +1025,7 @@ CONFIG_DETECT_SOFTLOCKUP=y CONFIG_SCHED_DEBUG=y # CONFIG_SCHEDSTATS is not set # CONFIG_TIMER_STATS is not set @@ -2114,7 +2114,7 @@ # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_RT_MUTEX_TESTER is not set # CONFIG_DEBUG_SPINLOCK is not set -@@ -981,9 +1042,10 @@ +@@ -981,9 +1042,10 @@ CONFIG_DEBUG_BUGVERBOSE=y # CONFIG_DEBUG_LIST is not set # CONFIG_DEBUG_SG is not set CONFIG_FRAME_POINTER=y @@ -2126,7 +2126,7 @@ # CONFIG_LKDTM is not set # CONFIG_FAULT_INJECTION is not set # CONFIG_SAMPLES is not set -@@ -1009,6 +1071,7 @@ +@@ -1009,6 +1071,7 @@ CONFIG_CRC7=m CONFIG_AUDIT_GENERIC=y CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y @@ -2146,7 +2146,7 @@ # CONFIG_AVR32=y CONFIG_GENERIC_GPIO=y -@@ -13,10 +13,10 @@ +@@ -13,10 +13,10 @@ CONFIG_HARDIRQS_SW_RESEND=y CONFIG_GENERIC_IRQ_PROBE=y CONFIG_RWSEM_GENERIC_SPINLOCK=y CONFIG_GENERIC_TIME=y @@ -2158,7 +2158,7 @@ CONFIG_GENERIC_HWEIGHT=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_GENERIC_BUG=y -@@ -34,15 +34,15 @@ +@@ -34,15 +34,15 @@ CONFIG_LOCALVERSION="" # CONFIG_POSIX_MQUEUE is not set # CONFIG_BSD_PROCESS_ACCT is not set # CONFIG_TASKSTATS is not set @@ -2177,7 +2177,7 @@ # CONFIG_BLK_DEV_INITRD is not set CONFIG_CC_OPTIMIZE_FOR_SIZE=y CONFIG_SYSCTL=y -@@ -54,24 +54,37 @@ +@@ -54,24 +54,37 @@ CONFIG_HOTPLUG=y CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y @@ -2215,7 +2215,7 @@ CONFIG_SUBARCH_AVR32B=y CONFIG_MMU=y CONFIG_PERFORMANCE_COUNTERS=y -@@ -83,10 +96,14 @@ +@@ -83,10 +96,14 @@ CONFIG_BOARD_ATSTK1000=y # CONFIG_BOARD_ATSTK1002 is not set # CONFIG_BOARD_ATSTK1003 is not set CONFIG_BOARD_ATSTK1004=y @@ -2230,7 +2230,7 @@ CONFIG_LOADER_U_BOOT=y # -@@ -95,6 +112,7 @@ +@@ -95,6 +112,7 @@ CONFIG_LOADER_U_BOOT=y # CONFIG_AP700X_32_BIT_SMC is not set CONFIG_AP700X_16_BIT_SMC=y # CONFIG_AP700X_8_BIT_SMC is not set @@ -2238,7 +2238,7 @@ CONFIG_LOAD_ADDRESS=0x10000000 CONFIG_ENTRY_ADDRESS=0x90000000 CONFIG_PHYS_OFFSET=0x10000000 -@@ -120,34 +138,26 @@ +@@ -120,34 +138,26 @@ CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_ZONE_DMA_FLAG=0 CONFIG_VIRT_TO_BUS=y # CONFIG_OWNERSHIP_TRACE is not set @@ -2279,7 +2279,7 @@ # # Bus options -@@ -222,6 +232,7 @@ +@@ -222,6 +232,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic" # # CONFIG_NET_PKTGEN is not set # CONFIG_HAMRADIO is not set @@ -2287,7 +2287,7 @@ # CONFIG_IRDA is not set # CONFIG_BT is not set # CONFIG_AF_RXRPC is not set -@@ -321,6 +332,7 @@ +@@ -321,6 +332,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 # CONFIG_MTD_UBI is not set # CONFIG_PARPORT is not set # CONFIG_MISC_DEVICES is not set @@ -2295,7 +2295,7 @@ # # SCSI device support -@@ -358,6 +370,7 @@ +@@ -358,6 +370,7 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 # CONFIG_SERIAL_ATMEL=y CONFIG_SERIAL_ATMEL_CONSOLE=y @@ -2303,7 +2303,7 @@ # CONFIG_SERIAL_ATMEL_TTYAT is not set CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y -@@ -365,8 +378,6 @@ +@@ -365,8 +378,6 @@ CONFIG_UNIX98_PTYS=y # CONFIG_LEGACY_PTYS is not set # CONFIG_IPMI_HANDLER is not set # CONFIG_HW_RANDOM is not set @@ -2312,7 +2312,7 @@ # CONFIG_R3964 is not set # CONFIG_TCG_TPM is not set # CONFIG_I2C is not set -@@ -389,9 +400,24 @@ +@@ -389,9 +400,24 @@ CONFIG_SPI_ATMEL=y # CONFIG_SPI_AT25 is not set # CONFIG_SPI_SPIDEV is not set # CONFIG_SPI_TLE62X0 is not set @@ -2337,7 +2337,7 @@ CONFIG_WATCHDOG=y # CONFIG_WATCHDOG_NOWAYOUT is not set -@@ -471,10 +497,6 @@ +@@ -471,10 +497,6 @@ CONFIG_USB_SUPPORT=y # # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' # @@ -2348,7 +2348,7 @@ CONFIG_USB_GADGET=y # CONFIG_USB_GADGET_DEBUG_FILES is not set CONFIG_USB_GADGET_SELECTED=y -@@ -499,7 +521,9 @@ +@@ -499,7 +521,9 @@ CONFIG_USB_ETH=y # CONFIG_USB_FILE_STORAGE is not set # CONFIG_USB_G_SERIAL is not set # CONFIG_USB_MIDI_GADGET is not set @@ -2358,7 +2358,7 @@ # CONFIG_NEW_LEDS is not set CONFIG_RTC_LIB=y CONFIG_RTC_CLASS=y -@@ -519,15 +543,17 @@ +@@ -519,15 +543,17 @@ CONFIG_RTC_INTF_DEV=y # # SPI RTC drivers # @@ -2378,7 +2378,7 @@ # CONFIG_RTC_DRV_M48T86 is not set # CONFIG_RTC_DRV_M48T59 is not set # CONFIG_RTC_DRV_V3020 is not set -@@ -545,9 +571,9 @@ +@@ -545,9 +571,9 @@ CONFIG_RTC_DRV_AT32AP700X=y # # File systems # @@ -2389,7 +2389,7 @@ # CONFIG_AUTOFS_FS is not set # CONFIG_AUTOFS4_FS is not set # CONFIG_FUSE_FS is not set -@@ -580,7 +606,6 @@ +@@ -580,7 +606,6 @@ CONFIG_JFFS2_RTIME=y # CONFIG_NETWORK_FILESYSTEMS is not set # CONFIG_NLS is not set # CONFIG_DLM is not set @@ -2397,7 +2397,7 @@ # # Kernel hacking -@@ -616,6 +641,7 @@ +@@ -616,6 +641,7 @@ CONFIG_CRC32=y # CONFIG_LIBCRC32C is not set CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y @@ -4458,7 +4458,7 @@ +#endif /* __AVR32_DW_DMAC_H__ */ --- a/arch/avr32/kernel/Makefile +++ b/arch/avr32/kernel/Makefile -@@ -9,6 +9,7 @@ +@@ -9,6 +9,7 @@ obj-y += syscall_table.o syscall-stub obj-y += setup.o traps.o semaphore.o ocd.o ptrace.o obj-y += signal.o sys_avr32.o process.o time.o obj-y += init_task.o switch_to.o cpu.o @@ -4468,7 +4468,7 @@ obj-$(CONFIG_STACKTRACE) += stacktrace.o --- a/arch/avr32/kernel/avr32_ksyms.c +++ b/arch/avr32/kernel/avr32_ksyms.c -@@ -29,7 +29,9 @@ +@@ -29,7 +29,9 @@ EXPORT_SYMBOL(__avr32_asr64); */ EXPORT_SYMBOL(memset); EXPORT_SYMBOL(memcpy); @@ -4478,7 +4478,7 @@ /* * Userspace access stuff. -@@ -41,6 +43,8 @@ +@@ -41,6 +43,8 @@ EXPORT_SYMBOL(strncpy_from_user); EXPORT_SYMBOL(__strncpy_from_user); EXPORT_SYMBOL(clear_user); EXPORT_SYMBOL(__clear_user); @@ -4526,7 +4526,7 @@ +EXPORT_SYMBOL(find_dma_controller); --- a/arch/avr32/kernel/entry-avr32b.S +++ b/arch/avr32/kernel/entry-avr32b.S -@@ -74,50 +74,41 @@ +@@ -74,50 +74,41 @@ exception_vectors: .align 2 bral do_dtlb_modified @@ -4588,7 +4588,7 @@ /* Second level lookup */ ld.w r2, r3[r1 << 2] -@@ -148,16 +139,55 @@ +@@ -148,16 +139,55 @@ pgtbl_lookup: tlbmiss_restore rete @@ -4647,7 +4647,7 @@ system_call: #ifdef CONFIG_PREEMPT mask_interrupts -@@ -266,18 +296,6 @@ +@@ -266,18 +296,6 @@ syscall_exit_work: brcc syscall_exit_cont rjmp enter_monitor_mode @@ -4666,7 +4666,7 @@ /* This function expects to find offending PC in SYSREG_RAR_EX */ .type save_full_context_ex, @function .align 2 -@@ -741,26 +759,6 @@ +@@ -741,26 +759,6 @@ irq_level\level: .section .irq.text,"ax",@progbits @@ -4709,7 +4709,7 @@ /* * This file handles the architecture-dependent parts of process handling.. */ -@@ -54,6 +54,8 @@ +@@ -54,6 +54,8 @@ void machine_halt(void) void machine_power_off(void) { @@ -4720,7 +4720,7 @@ void machine_restart(char *cmd) --- a/arch/avr32/kernel/setup.c +++ b/arch/avr32/kernel/setup.c -@@ -274,6 +274,8 @@ +@@ -274,6 +274,8 @@ static int __init early_parse_fbmem(char printk(KERN_WARNING "Failed to allocate framebuffer memory\n"); fbmem_size = 0; @@ -4731,7 +4731,7 @@ --- a/arch/avr32/kernel/signal.c +++ b/arch/avr32/kernel/signal.c -@@ -93,6 +93,9 @@ +@@ -93,6 +93,9 @@ asmlinkage int sys_rt_sigreturn(struct p if (restore_sigcontext(regs, &frame->uc.uc_mcontext)) goto badframe; @@ -5067,7 +5067,7 @@ -device_initcall(init_timer_sysfs); --- a/arch/avr32/kernel/vmlinux.lds.S +++ b/arch/avr32/kernel/vmlinux.lds.S -@@ -68,14 +68,6 @@ +@@ -68,14 +68,6 @@ SECTIONS _evba = .; _text = .; *(.ex.text) @@ -5082,7 +5082,7 @@ *(.irq.text) KPROBES_TEXT TEXT_TEXT -@@ -107,6 +99,10 @@ +@@ -107,6 +99,10 @@ SECTIONS */ *(.data.init_task) @@ -5095,7 +5095,7 @@ *(.data.cacheline_aligned) --- a/arch/avr32/lib/io-readsb.S +++ b/arch/avr32/lib/io-readsb.S -@@ -41,7 +41,7 @@ +@@ -41,7 +41,7 @@ __raw_readsb: 2: sub r10, -4 reteq r12 @@ -5106,7 +5106,7 @@ brne 3b --- a/arch/avr32/mach-at32ap/Kconfig +++ b/arch/avr32/mach-at32ap/Kconfig -@@ -26,6 +26,13 @@ +@@ -26,6 +26,13 @@ config AP700X_8_BIT_SMC endchoice @@ -5218,7 +5218,7 @@ #include