-diff -urN linux-2.6.24.3/arch/avr32/boards/atngw100/Kconfig avr32-2.6/arch/avr32/boards/atngw100/Kconfig
---- linux-2.6.24.3/arch/avr32/boards/atngw100/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atngw100/Kconfig 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atngw100/Kconfig
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/boards/atngw100/Kconfig
@@ -0,0 +1,12 @@
+# NGW100 customization
+
+
+ Choose 'Y' here if you're having i2c-related problems and
+ want to rule out the i2c bus driver.
-diff -urN linux-2.6.24.3/arch/avr32/boards/atngw100/setup.c avr32-2.6/arch/avr32/boards/atngw100/setup.c
---- linux-2.6.24.3/arch/avr32/boards/atngw100/setup.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atngw100/setup.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atngw100/setup.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/boards/atngw100/setup.c
++++ linux-2.6.24.7/arch/avr32/boards/atngw100/setup.c
@@ -20,7 +20,7 @@
#include <asm/io.h>
#include <asm/setup.h>
#include <asm/arch/board.h>
#include <asm/arch/init.h>
#include <asm/arch/portmux.h>
-@@ -37,11 +37,16 @@
+@@ -37,11 +37,16 @@ static struct eth_platform_data __initda
static struct spi_board_info spi0_board_info[] __initdata = {
{
.modalias = "mtd_dataflash",
/*
* The next two functions should go away as the boot loader is
* supposed to initialize the macb address registers with a valid
-@@ -124,6 +129,7 @@
+@@ -124,6 +129,7 @@ static struct platform_device ngw_gpio_l
}
};
static struct i2c_gpio_platform_data i2c_gpio_data = {
.sda_pin = GPIO_PIN_PA(6),
.scl_pin = GPIO_PIN_PA(7),
-@@ -139,6 +145,7 @@
+@@ -139,6 +145,7 @@ static struct platform_device i2c_gpio_d
.platform_data = &i2c_gpio_data,
},
};
static int __init atngw100_init(void)
{
-@@ -157,6 +164,7 @@
+@@ -157,6 +164,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));
at32_add_device_usba(0, NULL);
for (i = 0; i < ARRAY_SIZE(ngw_leds); i++) {
-@@ -165,11 +173,15 @@
+@@ -165,11 +173,15 @@ static int __init atngw100_init(void)
}
platform_device_register(&ngw_gpio_leds);
return 0;
}
-diff -urN linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1000.h avr32-2.6/arch/avr32/boards/atstk1000/atstk1000.h
---- linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1000.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atstk1000/atstk1000.h 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1000.h
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/boards/atstk1000/atstk1000.h
++++ linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1000.h
@@ -12,4 +12,6 @@
extern struct atmel_lcdfb_info atstk1000_lcdc_data;
+void atstk1000_setup_j2_leds(void);
+
#endif /* __ARCH_AVR32_BOARDS_ATSTK1000_ATSTK1000_H */
-diff -urN linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1002.c avr32-2.6/arch/avr32/boards/atstk1000/atstk1002.c
---- linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1002.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atstk1000/atstk1002.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1002.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/boards/atstk1000/atstk1002.c
++++ linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1002.c
@@ -11,7 +11,6 @@
#include <linux/etherdevice.h>
#include <linux/init.h>
#include <asm/arch/board.h>
#include <asm/arch/init.h>
#include <asm/arch/portmux.h>
-@@ -49,18 +48,16 @@
+@@ -49,18 +48,16 @@ static struct eth_platform_data __initda
},
};
{
/* AT73C213 */
.modalias = "at73c213",
-@@ -80,12 +77,25 @@
+@@ -80,12 +77,25 @@ static struct spi_board_info spi0_board_
};
#endif
/*
* The next two functions should go away as the boot loader is
* supposed to initialize the macb address registers with a valid
-@@ -141,68 +151,8 @@
+@@ -141,68 +151,8 @@ static void __init set_hw_addr(struct pl
clk_put(pclk);
}
{
struct clk *gclk;
struct clk *pll;
-@@ -220,7 +170,7 @@
+@@ -220,7 +170,7 @@ static void __init at73c213_set_clk(stru
}
at32_select_periph(GPIO_PIN_PA(30), GPIO_PERIPH_A, 0);
err_set_clk:
clk_put(pll);
-@@ -229,12 +179,16 @@
+@@ -229,12 +179,16 @@ err_pll:
err_gclk:
return;
}
at32_map_usart(0, 1); /* USART 0/B: /dev/ttyS1, IRDA */
#else
at32_map_usart(1, 0); /* USART 1/A: /dev/ttyS0, DB9 */
-@@ -271,7 +225,7 @@
+@@ -271,7 +225,7 @@ static int __init atstk1002_init(void)
at32_add_system_devices();
at32_add_device_usart(1);
#else
at32_add_device_usart(0);
-@@ -281,12 +235,16 @@
+@@ -281,12 +235,16 @@ static int __init atstk1002_init(void)
#ifndef CONFIG_BOARD_ATSTK1002_SW6_CUSTOM
set_hw_addr(at32_add_device_eth(0, ð_data[0]));
#endif
#ifdef CONFIG_BOARD_ATSTK1002_SW5_CUSTOM
set_hw_addr(at32_add_device_eth(1, ð_data[1]));
#else
-@@ -294,18 +252,23 @@
+@@ -294,18 +252,23 @@ static int __init atstk1002_init(void)
fbmem_start, fbmem_size);
#endif
at32_add_device_usba(0, NULL);
return 0;
}
postcore_initcall(atstk1002_init);
-diff -urN linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1003.c avr32-2.6/arch/avr32/boards/atstk1000/atstk1003.c
---- linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1003.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atstk1000/atstk1003.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1003.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1003.c
@@ -0,0 +1,185 @@
+/*
+ * ATSTK1003 daughterboard-specific init code
+ return 0;
+}
+postcore_initcall(atstk1003_init);
-diff -urN linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1004.c avr32-2.6/arch/avr32/boards/atstk1000/atstk1004.c
---- linux-2.6.24.3/arch/avr32/boards/atstk1000/atstk1004.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atstk1000/atstk1004.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1004.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/boards/atstk1000/atstk1004.c
@@ -0,0 +1,156 @@
+/*
+ * ATSTK1003 daughterboard-specific init code
+ return 0;
+}
+postcore_initcall(atstk1004_init);
-diff -urN linux-2.6.24.3/arch/avr32/boards/atstk1000/Kconfig avr32-2.6/arch/avr32/boards/atstk1000/Kconfig
---- linux-2.6.24.3/arch/avr32/boards/atstk1000/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atstk1000/Kconfig 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atstk1000/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/boards/atstk1000/Kconfig
++++ linux-2.6.24.7/arch/avr32/boards/atstk1000/Kconfig
@@ -1,34 +1,53 @@
# STK1000 customization
bool "SW4: use ISI/Camera (not GPIOs, SPI1, and PS2-B)"
help
To use the camera interface you'll need a custom card (on the
-@@ -36,27 +55,29 @@
+@@ -36,27 +55,29 @@ config BOARD_ATSTK1002_SW4_CUSTOM
config BOARD_ATSTK1002_SW5_CUSTOM
bool "SW5: use MACB1 (not LCDC)"
optional
help
Select this if you have jumpered the J2 jumper block to the
-@@ -64,16 +85,77 @@
+@@ -64,16 +85,77 @@ choice
IDC cable. A default "heartbeat" trigger is provided, but
you can of course override this.
+ operating on 3.3 volt.
+
+endif # stk 1000
-diff -urN linux-2.6.24.3/arch/avr32/boards/atstk1000/Makefile avr32-2.6/arch/avr32/boards/atstk1000/Makefile
---- linux-2.6.24.3/arch/avr32/boards/atstk1000/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atstk1000/Makefile 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atstk1000/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/boards/atstk1000/Makefile
++++ linux-2.6.24.7/arch/avr32/boards/atstk1000/Makefile
@@ -1,2 +1,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
-diff -urN linux-2.6.24.3/arch/avr32/boards/atstk1000/setup.c avr32-2.6/arch/avr32/boards/atstk1000/setup.c
---- linux-2.6.24.3/arch/avr32/boards/atstk1000/setup.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/boards/atstk1000/setup.c 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/boards/atstk1000/setup.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/boards/atstk1000/setup.c
++++ linux-2.6.24.7/arch/avr32/boards/atstk1000/setup.c
@@ -10,13 +10,17 @@
#include <linux/bootmem.h>
#include <linux/fb.h>
#include "atstk1000.h"
-@@ -61,3 +65,63 @@
+@@ -61,3 +65,63 @@ struct atmel_lcdfb_info __initdata atstk
.default_monspecs = &atstk1000_default_monspecs,
.guard_time = 2,
};
+
+}
+#endif /* CONFIG_BOARD_ATSTK1000_J2_LED */
-diff -urN linux-2.6.24.3/arch/avr32/configs/atngw100_defconfig avr32-2.6/arch/avr32/configs/atngw100_defconfig
---- linux-2.6.24.3/arch/avr32/configs/atngw100_defconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/configs/atngw100_defconfig 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/configs/atngw100_defconfig
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/configs/atngw100_defconfig
++++ linux-2.6.24.7/arch/avr32/configs/atngw100_defconfig
@@ -1,46 +1,52 @@
#
# Automatically generated make config: don't edit
CONFIG_SYSFS_DEPRECATED=y
# CONFIG_RELAY is not set
CONFIG_BLK_DEV_INITRD=y
-@@ -61,35 +67,28 @@
+@@ -61,35 +67,28 @@ CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
#
# IO Schedulers
-@@ -107,21 +106,28 @@
+@@ -107,21 +106,28 @@ CONFIG_DEFAULT_IOSCHED="cfq"
#
# System Type and features
#
CONFIG_LOAD_ADDRESS=0x10000000
CONFIG_ENTRY_ADDRESS=0x90000000
CONFIG_PHYS_OFFSET=0x10000000
-@@ -141,10 +147,14 @@
+@@ -141,10 +147,14 @@ CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
-@@ -153,13 +163,31 @@
+@@ -153,13 +163,31 @@ CONFIG_HZ=250
CONFIG_CMDLINE=""
#
# CONFIG_PCCARD is not set
#
-@@ -213,6 +241,7 @@
+@@ -213,6 +241,7 @@ CONFIG_INET_TUNNEL=y
CONFIG_INET_XFRM_MODE_TRANSPORT=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=y
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
# CONFIG_TCP_CONG_ADVANCED is not set
-@@ -240,6 +269,7 @@
+@@ -240,6 +269,7 @@ CONFIG_IPV6_SIT=y
# CONFIG_NETWORK_SECMARK is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
#
# Core Netfilter Configuration
-@@ -252,6 +282,7 @@
+@@ -252,6 +282,7 @@ CONFIG_NF_CONNTRACK_MARK=y
# CONFIG_NF_CONNTRACK_EVENTS is not set
CONFIG_NF_CT_PROTO_GRE=m
# CONFIG_NF_CT_PROTO_SCTP is not set
CONFIG_NF_CONNTRACK_AMANDA=m
CONFIG_NF_CONNTRACK_FTP=m
CONFIG_NF_CONNTRACK_H323=m
-@@ -269,9 +300,11 @@
+@@ -269,9 +300,11 @@ CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
-@@ -284,6 +317,7 @@
+@@ -284,6 +317,7 @@ CONFIG_NETFILTER_XT_MATCH_MAC=m
CONFIG_NETFILTER_XT_MATCH_MARK=m
CONFIG_NETFILTER_XT_MATCH_POLICY=m
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
CONFIG_NETFILTER_XT_MATCH_REALM=m
-@@ -292,6 +326,8 @@
+@@ -292,6 +326,8 @@ CONFIG_NETFILTER_XT_MATCH_STATE=m
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
CONFIG_NETFILTER_XT_MATCH_STRING=m
CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
#
-@@ -359,13 +395,19 @@
+@@ -359,13 +395,19 @@ CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_RAW=m
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
-@@ -373,10 +415,6 @@
+@@ -373,10 +415,6 @@ CONFIG_VLAN_8021Q=m
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_SCHED is not set
CONFIG_NET_CLS_ROUTE=y
-@@ -384,6 +422,7 @@
+@@ -384,6 +422,7 @@ CONFIG_NET_CLS_ROUTE=y
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
-@@ -397,6 +436,7 @@
+@@ -397,6 +436,7 @@ CONFIG_NET_CLS_ROUTE=y
# CONFIG_MAC80211 is not set
# CONFIG_IEEE80211 is not set
# CONFIG_RFKILL is not set
#
# Device Drivers
-@@ -405,16 +445,13 @@
+@@ -405,16 +445,13 @@ CONFIG_NET_CLS_ROUTE=y
#
# Generic Driver Options
#
# CONFIG_CONNECTOR is not set
CONFIG_MTD=y
# CONFIG_MTD_DEBUG is not set
-@@ -434,6 +471,7 @@
+@@ -434,6 +471,7 @@ CONFIG_MTD_BLOCK=y
# CONFIG_INFTL is not set
# CONFIG_RFD_FTL is not set
# CONFIG_SSFDC is not set
#
# RAM/ROM/Flash chip drivers
-@@ -493,20 +531,8 @@
+@@ -493,20 +531,8 @@ CONFIG_MTD_DATAFLASH=y
# UBI - Unsorted block images
#
# CONFIG_MTD_UBI is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-@@ -517,11 +543,13 @@
+@@ -517,11 +543,13 @@ CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
# CONFIG_IDE is not set
#
-@@ -529,30 +557,42 @@
+@@ -529,30 +557,42 @@ CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
#
# CONFIG_RAID_ATTRS is not set
# CONFIG_SCSI is not set
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set
-@@ -571,21 +611,14 @@
+@@ -571,21 +611,14 @@ CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPP_MPPE=m
CONFIG_PPPOE=m
# CONFIG_PHONE is not set
#
-@@ -615,28 +648,57 @@
+@@ -615,28 +648,57 @@ CONFIG_SLHC=m
#
CONFIG_SERIAL_ATMEL=y
CONFIG_SERIAL_ATMEL_CONSOLE=y
#
# SPI support
-@@ -655,13 +717,25 @@
+@@ -655,13 +717,25 @@ CONFIG_SPI_ATMEL=y
# SPI Protocol Masters
#
# CONFIG_SPI_AT25 is not set
#
# Multifunction device drivers
-@@ -678,23 +752,21 @@
+@@ -678,23 +752,21 @@ CONFIG_SPI_ATMEL=y
#
# Graphics support
#
# CONFIG_USB_ARCH_HAS_HCD is not set
# CONFIG_USB_ARCH_HAS_OHCI is not set
# CONFIG_USB_ARCH_HAS_EHCI is not set
-@@ -706,12 +778,48 @@
+@@ -706,12 +778,48 @@ CONFIG_SPI_ATMEL=y
#
# USB Gadget Support
#
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
-@@ -726,53 +834,71 @@
+@@ -726,53 +834,71 @@ CONFIG_LEDS_GPIO=y
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
# CONFIG_FS_POSIX_ACL is not set
-@@ -781,7 +907,8 @@
+@@ -781,7 +907,8 @@ CONFIG_JBD=y
# CONFIG_OCFS2_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_QUOTA is not set
# CONFIG_DNOTIFY is not set
# CONFIG_AUTOFS_FS is not set
-@@ -814,7 +941,6 @@
+@@ -814,7 +941,6 @@ CONFIG_SYSFS=y
CONFIG_TMPFS=y
# CONFIG_TMPFS_POSIX_ACL is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_CONFIGFS_FS=y
#
-@@ -830,10 +956,12 @@
+@@ -830,10 +956,12 @@ CONFIG_CONFIGFS_FS=y
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_JFFS2_FS_WRITEBUFFER=y
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
# CONFIG_CRAMFS is not set
-@@ -842,19 +970,21 @@
+@@ -842,19 +970,21 @@ CONFIG_JFFS2_RTIME=y
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
# CONFIG_SUNRPC_BIND34 is not set
-@@ -871,23 +1001,18 @@
+@@ -871,23 +1001,18 @@ CONFIG_CIFS=m
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
# CONFIG_NLS_CODEPAGE_852 is not set
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
-@@ -908,7 +1033,7 @@
+@@ -908,7 +1033,7 @@ CONFIG_NLS_CODEPAGE_850=y
# CONFIG_NLS_CODEPAGE_1250 is not set
# CONFIG_NLS_CODEPAGE_1251 is not set
# CONFIG_NLS_ASCII is not set
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
-@@ -921,18 +1046,19 @@
+@@ -921,18 +1046,19 @@ CONFIG_NLS_ISO8859_1=y
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
-@@ -941,12 +1067,17 @@
+@@ -941,12 +1067,17 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
-@@ -954,21 +1085,21 @@
+@@ -954,21 +1085,21 @@ CONFIG_DEBUG_BUGVERBOSE=y
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_LIST is not set
CONFIG_CRYPTO=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_BLKCIPHER=y
-@@ -989,6 +1120,7 @@
+@@ -989,6 +1120,7 @@ CONFIG_CRYPTO_ECB=m
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_PCBC=m
# CONFIG_CRYPTO_LRW is not set
# CONFIG_CRYPTO_CRYPTD is not set
CONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not set
-@@ -1002,15 +1134,14 @@
+@@ -1002,15 +1134,14 @@ CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_ARC4=m
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_ANUBIS is not set
#
# Library routines
-@@ -1018,8 +1149,9 @@
+@@ -1018,8 +1149,9 @@ CONFIG_CRYPTO_DEFLATE=y
CONFIG_BITREVERSE=y
CONFIG_CRC_CCITT=m
# CONFIG_CRC16 is not set
# CONFIG_LIBCRC32C is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
-diff -urN linux-2.6.24.3/arch/avr32/configs/atstk1002_defconfig avr32-2.6/arch/avr32/configs/atstk1002_defconfig
---- linux-2.6.24.3/arch/avr32/configs/atstk1002_defconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/configs/atstk1002_defconfig 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/configs/atstk1002_defconfig
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/configs/atstk1002_defconfig
++++ linux-2.6.24.7/arch/avr32/configs/atstk1002_defconfig
@@ -1,48 +1,49 @@
#
# Automatically generated make config: don't edit
CONFIG_SYSFS_DEPRECATED=y
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
-@@ -63,35 +64,28 @@
+@@ -63,35 +64,28 @@ CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
#
# IO Schedulers
-@@ -99,32 +93,49 @@
+@@ -99,32 +93,49 @@ CONFIG_BLOCK=y
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
# CONFIG_IOSCHED_DEADLINE is not set
CONFIG_LOAD_ADDRESS=0x10000000
CONFIG_ENTRY_ADDRESS=0x90000000
CONFIG_PHYS_OFFSET=0x10000000
-@@ -144,10 +155,14 @@
+@@ -144,10 +155,14 @@ CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not set
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
-@@ -156,13 +171,31 @@
+@@ -156,13 +171,31 @@ CONFIG_HZ=250
CONFIG_CMDLINE=""
#
# CONFIG_PCCARD is not set
#
-@@ -182,7 +215,12 @@
+@@ -182,7 +215,12 @@ CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
-@@ -191,36 +229,52 @@
+@@ -191,36 +229,52 @@ CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
# CONFIG_IP_PNP_BOOTP is not set
# CONFIG_IP_PNP_RARP is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
-@@ -228,16 +282,13 @@
+@@ -228,16 +282,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
-@@ -251,6 +302,7 @@
+@@ -251,6 +302,7 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_MAC80211 is not set
# CONFIG_IEEE80211 is not set
# CONFIG_RFKILL is not set
#
# Device Drivers
-@@ -259,16 +311,13 @@
+@@ -259,16 +311,13 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
#
# Generic Driver Options
#
# CONFIG_CONNECTOR is not set
CONFIG_MTD=y
# CONFIG_MTD_DEBUG is not set
-@@ -288,6 +337,7 @@
+@@ -288,6 +337,7 @@ CONFIG_MTD_BLOCK=y
# CONFIG_INFTL is not set
# CONFIG_RFD_FTL is not set
# CONFIG_SSFDC is not set
#
# RAM/ROM/Flash chip drivers
-@@ -327,6 +377,8 @@
+@@ -327,6 +377,8 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
#
# Self-contained MTD device drivers
#
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_PHRAM is not set
# CONFIG_MTD_MTDRAM is not set
-@@ -345,20 +397,8 @@
+@@ -345,20 +397,8 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2
# UBI - Unsorted block images
#
# CONFIG_MTD_UBI is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
-@@ -369,42 +409,91 @@
+@@ -369,42 +409,91 @@ CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
# CONFIG_NETDEV_1000 is not set
# CONFIG_NETDEV_10000 is not set
-@@ -423,27 +512,54 @@
+@@ -423,27 +512,54 @@ CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
# CONFIG_PPP_MPPE is not set
# CONFIG_PPPOE is not set
#
# Hardware I/O ports
-@@ -467,40 +583,94 @@
+@@ -467,40 +583,94 @@ CONFIG_SLHC=m
#
CONFIG_SERIAL_ATMEL=y
CONFIG_SERIAL_ATMEL_CONSOLE=y
#
# Multifunction device drivers
-@@ -517,23 +687,104 @@
+@@ -517,23 +687,104 @@ CONFIG_UNIX98_PTYS=y
#
# Graphics support
#
# CONFIG_USB_ARCH_HAS_HCD is not set
# CONFIG_USB_ARCH_HAS_OHCI is not set
# CONFIG_USB_ARCH_HAS_EHCI is not set
-@@ -545,63 +796,137 @@
+@@ -545,63 +796,137 @@ CONFIG_UNIX98_PTYS=y
#
# USB Gadget Support
#
# CONFIG_ROMFS_FS is not set
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
-@@ -609,7 +934,7 @@
+@@ -609,7 +934,7 @@ CONFIG_INOTIFY_USER=y
# CONFIG_DNOTIFY is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
#
# CD-ROM/DVD Filesystems
-@@ -637,8 +962,7 @@
+@@ -637,8 +962,7 @@ CONFIG_SYSFS=y
CONFIG_TMPFS=y
# CONFIG_TMPFS_POSIX_ACL is not set
# CONFIG_HUGETLB_PAGE is not set
#
# Miscellaneous filesystems
-@@ -652,11 +976,12 @@
+@@ -652,11 +976,12 @@ CONFIG_CONFIGFS_FS=m
# CONFIG_EFS_FS is not set
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
# CONFIG_CRAMFS is not set
-@@ -665,10 +990,7 @@
+@@ -665,10 +990,7 @@ CONFIG_JFFS2_RTIME=y
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
-@@ -688,17 +1010,12 @@
+@@ -688,17 +1010,12 @@ CONFIG_SUNRPC=y
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
CONFIG_NLS=m
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=m
-@@ -739,17 +1056,18 @@
+@@ -739,17 +1056,18 @@ CONFIG_NLS_ISO8859_1=m
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
CONFIG_NLS_UTF8=m
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
-@@ -758,12 +1076,17 @@
+@@ -758,12 +1076,17 @@ CONFIG_DEBUG_FS=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
-@@ -771,22 +1094,63 @@
+@@ -771,22 +1094,63 @@ CONFIG_DEBUG_BUGVERBOSE=y
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_LIST is not set
#
# Library routines
-@@ -794,10 +1158,10 @@
+@@ -794,10 +1158,10 @@ CONFIG_FORCED_INLINING=y
CONFIG_BITREVERSE=y
CONFIG_CRC_CCITT=m
# CONFIG_CRC16 is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_PLIST=y
-diff -urN linux-2.6.24.3/arch/avr32/configs/atstk1003_defconfig avr32-2.6/arch/avr32/configs/atstk1003_defconfig
---- linux-2.6.24.3/arch/avr32/configs/atstk1003_defconfig 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/configs/atstk1003_defconfig 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/configs/atstk1003_defconfig
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/configs/atstk1003_defconfig
@@ -0,0 +1,1041 @@
+#
+# Automatically generated make config: don't edit
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
-diff -urN linux-2.6.24.3/arch/avr32/configs/atstk1004_defconfig avr32-2.6/arch/avr32/configs/atstk1004_defconfig
---- linux-2.6.24.3/arch/avr32/configs/atstk1004_defconfig 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/configs/atstk1004_defconfig 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/configs/atstk1004_defconfig
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/configs/atstk1004_defconfig
@@ -0,0 +1,639 @@
+#
+# Automatically generated make config: don't edit
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
-diff -urN linux-2.6.24.3/arch/avr32/drivers/dw-dmac.c avr32-2.6/arch/avr32/drivers/dw-dmac.c
---- linux-2.6.24.3/arch/avr32/drivers/dw-dmac.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/drivers/dw-dmac.c 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/drivers/dw-dmac.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/drivers/dw-dmac.c
@@ -0,0 +1,761 @@
+/*
+ * Driver for the Synopsys DesignWare DMA Controller
+MODULE_DESCRIPTION("Synopsys DesignWare DMA Controller driver");
+MODULE_AUTHOR("Haavard Skinnemoen <hskinnemoen@atmel.com>");
+MODULE_LICENSE("GPL");
-diff -urN linux-2.6.24.3/arch/avr32/drivers/dw-dmac.h avr32-2.6/arch/avr32/drivers/dw-dmac.h
---- linux-2.6.24.3/arch/avr32/drivers/dw-dmac.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/drivers/dw-dmac.h 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/drivers/dw-dmac.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/drivers/dw-dmac.h
@@ -0,0 +1,42 @@
+/*
+ * Driver for the Synopsys DesignWare DMA Controller
+#define DW_DMAC_CHAN_DSR 0x050
+
+#endif /* __AVR32_DW_DMAC_H__ */
-diff -urN linux-2.6.24.3/arch/avr32/drivers/Makefile avr32-2.6/arch/avr32/drivers/Makefile
---- linux-2.6.24.3/arch/avr32/drivers/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/drivers/Makefile 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/drivers/Makefile
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/drivers/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_DW_DMAC) += dw-dmac.o
-diff -urN linux-2.6.24.3/arch/avr32/Kconfig avr32-2.6/arch/avr32/Kconfig
---- linux-2.6.24.3/arch/avr32/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/Kconfig 2008-04-23 20:12:35.000000000 +0200
-@@ -45,6 +45,9 @@
+Index: linux-2.6.24.7/arch/avr32/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/Kconfig
++++ linux-2.6.24.7/arch/avr32/Kconfig
+@@ -45,6 +45,9 @@ config RWSEM_GENERIC_SPINLOCK
config GENERIC_TIME
def_bool y
config RWSEM_XCHGADD_ALGORITHM
def_bool n
-@@ -54,6 +57,9 @@
+@@ -54,6 +57,9 @@ config ARCH_HAS_ILOG2_U32
config ARCH_HAS_ILOG2_U64
def_bool n
config GENERIC_HWEIGHT
def_bool y
-@@ -68,6 +74,8 @@
+@@ -68,6 +74,8 @@ source "init/Kconfig"
menu "System Type and features"
config SUBARCH_AVR32B
bool
config MMU
-@@ -81,19 +89,23 @@
+@@ -81,19 +89,23 @@ config PLATFORM_AT32AP
select MMU
select PERFORMANCE_COUNTERS
choice
prompt "AVR32 board type"
-@@ -101,15 +113,18 @@
+@@ -101,15 +113,18 @@ choice
config BOARD_ATSTK1000
bool "ATSTK1000 evaluation board"
choice
prompt "Boot loader type"
-@@ -123,15 +138,15 @@
+@@ -123,15 +138,15 @@ source "arch/avr32/mach-at32ap/Kconfig"
config LOAD_ADDRESS
hex
source "kernel/Kconfig.preempt"
-@@ -163,6 +178,20 @@
+@@ -163,6 +178,20 @@ config OWNERSHIP_TRACE
enabling Nexus-compliant debuggers to keep track of the PID of the
currently executing task.
# FPU emulation goes here
source "kernel/Kconfig.hz"
-@@ -219,6 +248,8 @@
+@@ -219,6 +248,8 @@ source "drivers/Kconfig"
source "fs/Kconfig"
source "arch/avr32/Kconfig.debug"
source "security/Kconfig"
-diff -urN linux-2.6.24.3/arch/avr32/Kconfig.debug avr32-2.6/arch/avr32/Kconfig.debug
---- linux-2.6.24.3/arch/avr32/Kconfig.debug 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/Kconfig.debug 2008-04-23 19:33:28.000000000 +0200
-@@ -6,14 +6,4 @@
+Index: linux-2.6.24.7/arch/avr32/Kconfig.debug
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/Kconfig.debug
++++ linux-2.6.24.7/arch/avr32/Kconfig.debug
+@@ -6,14 +6,4 @@ config TRACE_IRQFLAGS_SUPPORT
source "lib/Kconfig.debug"
- If in doubt, say "N".
-
endmenu
-diff -urN linux-2.6.24.3/arch/avr32/kernel/cpu.c avr32-2.6/arch/avr32/kernel/cpu.c
---- linux-2.6.24.3/arch/avr32/kernel/cpu.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/cpu.c 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/kernel/cpu.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/cpu.c
++++ linux-2.6.24.7/arch/avr32/kernel/cpu.c
@@ -13,6 +13,7 @@
#include <linux/percpu.h>
#include <linux/param.h>
#include <asm/setup.h>
#include <asm/sysreg.h>
-@@ -187,9 +188,20 @@
+@@ -187,9 +188,20 @@ static int __init topology_init(void)
subsys_initcall(topology_init);
};
#define NR_CPU_NAMES ARRAY_SIZE(cpu_names)
-@@ -206,12 +218,32 @@
+@@ -206,12 +218,32 @@ static const char *mmu_types[] = {
"MPU"
};
config0 = sysreg_read(CONFIG0);
config1 = sysreg_read(CONFIG1);
-@@ -221,11 +253,14 @@
+@@ -221,11 +253,14 @@ void __init setup_processor(void)
arch_rev = SYSREG_BFEXT(AR, config0);
mmu_type = SYSREG_BFEXT(MMUT, config0);
tmp = SYSREG_BFEXT(ILSZ, config1);
if (tmp) {
-@@ -247,41 +282,34 @@
+@@ -247,41 +282,34 @@ void __init setup_processor(void)
return;
}
printk("\n");
boot_cpu_data.features = features;
}
-@@ -291,6 +319,8 @@
+@@ -291,6 +319,8 @@ static int c_show(struct seq_file *m, vo
{
unsigned int icache_size, dcache_size;
unsigned int cpu = smp_processor_id();
icache_size = boot_cpu_data.icache.ways *
boot_cpu_data.icache.sets *
-@@ -301,15 +331,21 @@
+@@ -301,15 +331,21 @@ static int c_show(struct seq_file *m, vo
seq_printf(m, "processor\t: %d\n", cpu);
seq_printf(m, "i-cache\t\t: %dK (%u ways x %u sets x %u)\n",
icache_size >> 10,
boot_cpu_data.icache.ways,
-@@ -320,7 +356,13 @@
+@@ -320,7 +356,13 @@ static int c_show(struct seq_file *m, vo
boot_cpu_data.dcache.ways,
boot_cpu_data.dcache.sets,
boot_cpu_data.dcache.linesz);
boot_cpu_data.loops_per_jiffy / (500000/HZ),
(boot_cpu_data.loops_per_jiffy / (5000/HZ)) % 100);
-@@ -343,7 +385,7 @@
+@@ -343,7 +385,7 @@ static void c_stop(struct seq_file *m, v
}
.start = c_start,
.next = c_next,
.stop = c_stop,
-diff -urN linux-2.6.24.3/arch/avr32/kernel/dma-controller.c avr32-2.6/arch/avr32/kernel/dma-controller.c
---- linux-2.6.24.3/arch/avr32/kernel/dma-controller.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/dma-controller.c 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/kernel/dma-controller.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/kernel/dma-controller.c
@@ -0,0 +1,34 @@
+/*
+ * Preliminary DMA controller framework for AVR32
+ return NULL;
+}
+EXPORT_SYMBOL(find_dma_controller);
-diff -urN linux-2.6.24.3/arch/avr32/kernel/entry-avr32b.S avr32-2.6/arch/avr32/kernel/entry-avr32b.S
---- linux-2.6.24.3/arch/avr32/kernel/entry-avr32b.S 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/entry-avr32b.S 2008-04-23 20:12:35.000000000 +0200
-@@ -741,26 +741,6 @@
+Index: linux-2.6.24.7/arch/avr32/kernel/entry-avr32b.S
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/entry-avr32b.S
++++ linux-2.6.24.7/arch/avr32/kernel/entry-avr32b.S
+@@ -741,26 +741,6 @@ irq_level\level:
.section .irq.text,"ax",@progbits
.global irq_level0
.global irq_level1
.global irq_level2
-diff -urN linux-2.6.24.3/arch/avr32/kernel/irq.c avr32-2.6/arch/avr32/kernel/irq.c
---- linux-2.6.24.3/arch/avr32/kernel/irq.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/irq.c 2008-04-23 19:33:28.000000000 +0200
-@@ -25,6 +25,17 @@
+Index: linux-2.6.24.7/arch/avr32/kernel/irq.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/irq.c
++++ linux-2.6.24.7/arch/avr32/kernel/irq.c
+@@ -25,6 +25,17 @@ void ack_bad_irq(unsigned int irq)
printk("unexpected IRQ %u\n", irq);
}
#ifdef CONFIG_PROC_FS
int show_interrupts(struct seq_file *p, void *v)
{
-diff -urN linux-2.6.24.3/arch/avr32/kernel/kprobes.c avr32-2.6/arch/avr32/kernel/kprobes.c
---- linux-2.6.24.3/arch/avr32/kernel/kprobes.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/kprobes.c 2008-04-23 19:33:28.000000000 +0200
-@@ -48,6 +48,7 @@
+Index: linux-2.6.24.7/arch/avr32/kernel/kprobes.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/kprobes.c
++++ linux-2.6.24.7/arch/avr32/kernel/kprobes.c
+@@ -48,6 +48,7 @@ int __kprobes arch_prepare_kprobe(struct
void __kprobes arch_arm_kprobe(struct kprobe *p)
{
pr_debug("arming kprobe at %p\n", p->addr);
*p->addr = BREAKPOINT_INSTRUCTION;
flush_icache_range((unsigned long)p->addr,
(unsigned long)p->addr + sizeof(kprobe_opcode_t));
-@@ -56,6 +57,7 @@
+@@ -56,6 +57,7 @@ void __kprobes arch_arm_kprobe(struct kp
void __kprobes arch_disarm_kprobe(struct kprobe *p)
{
pr_debug("disarming kprobe at %p\n", p->addr);
*p->addr = p->opcode;
flush_icache_range((unsigned long)p->addr,
(unsigned long)p->addr + sizeof(kprobe_opcode_t));
-@@ -260,9 +262,6 @@
+@@ -260,9 +262,6 @@ int __kprobes longjmp_break_handler(stru
int __init arch_init_kprobes(void)
{
/* TODO: Register kretprobe trampoline */
return 0;
}
-diff -urN linux-2.6.24.3/arch/avr32/kernel/Makefile avr32-2.6/arch/avr32/kernel/Makefile
---- linux-2.6.24.3/arch/avr32/kernel/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/Makefile 2008-04-23 19:33:28.000000000 +0200
-@@ -6,9 +6,11 @@
+Index: linux-2.6.24.7/arch/avr32/kernel/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/Makefile
++++ linux-2.6.24.7/arch/avr32/kernel/Makefile
+@@ -6,9 +6,11 @@ extra-y := head.o vmlinux.lds
obj-$(CONFIG_SUBARCH_AVR32B) += entry-avr32b.o
obj-y += syscall_table.o syscall-stubs.o irq.o
obj-$(CONFIG_KPROBES) += kprobes.o
obj-$(CONFIG_STACKTRACE) += stacktrace.o
+obj-$(CONFIG_NMI_DEBUGGING) += nmi_debug.o
-diff -urN linux-2.6.24.3/arch/avr32/kernel/nmi_debug.c avr32-2.6/arch/avr32/kernel/nmi_debug.c
---- linux-2.6.24.3/arch/avr32/kernel/nmi_debug.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/nmi_debug.c 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/kernel/nmi_debug.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/kernel/nmi_debug.c
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2007 Atmel Corporation
+ return 0;
+}
+__setup("nmi_debug", nmi_debug_setup);
-diff -urN linux-2.6.24.3/arch/avr32/kernel/ocd.c avr32-2.6/arch/avr32/kernel/ocd.c
---- linux-2.6.24.3/arch/avr32/kernel/ocd.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/ocd.c 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/kernel/ocd.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/kernel/ocd.c
@@ -0,0 +1,163 @@
+/*
+ * Copyright (C) 2007 Atmel Corporation
+ return 0;
+}
+arch_initcall(ocd_init);
-diff -urN linux-2.6.24.3/arch/avr32/kernel/process.c avr32-2.6/arch/avr32/kernel/process.c
---- linux-2.6.24.3/arch/avr32/kernel/process.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/process.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/kernel/process.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/process.c
++++ linux-2.6.24.7/arch/avr32/kernel/process.c
@@ -11,17 +11,18 @@
#include <linux/fs.h>
#include <linux/ptrace.h>
/*
* This file handles the architecture-dependent parts of process handling..
*/
-@@ -30,8 +31,10 @@
+@@ -30,8 +31,10 @@ void cpu_idle(void)
{
/* endless idle loop with no priority at all */
while (1) {
preempt_enable_no_resched();
schedule();
preempt_disable();
-@@ -103,7 +106,7 @@
+@@ -103,7 +106,7 @@ EXPORT_SYMBOL(kernel_thread);
*/
void exit_thread(void)
{
}
void flush_thread(void)
-@@ -345,6 +348,10 @@
+@@ -345,6 +348,10 @@ int copy_thread(int nr, unsigned long cl
p->thread.cpu_context.ksp = (unsigned long)childregs;
p->thread.cpu_context.pc = (unsigned long)ret_from_fork;
return 0;
}
-diff -urN linux-2.6.24.3/arch/avr32/kernel/ptrace.c avr32-2.6/arch/avr32/kernel/ptrace.c
---- linux-2.6.24.3/arch/avr32/kernel/ptrace.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/ptrace.c 2008-04-23 19:33:28.000000000 +0200
-@@ -58,6 +58,7 @@
+Index: linux-2.6.24.7/arch/avr32/kernel/ptrace.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/ptrace.c
++++ linux-2.6.24.7/arch/avr32/kernel/ptrace.c
+@@ -58,6 +58,7 @@ void ptrace_disable(struct task_struct *
{
clear_tsk_thread_flag(child, TIF_SINGLE_STEP);
clear_tsk_thread_flag(child, TIF_BREAKPOINT);
}
/*
-@@ -144,10 +145,6 @@
+@@ -144,10 +145,6 @@ long arch_ptrace(struct task_struct *chi
{
int ret;
switch (request) {
/* Read the word at location addr in the child process */
case PTRACE_PEEKTEXT:
-diff -urN linux-2.6.24.3/arch/avr32/kernel/setup.c avr32-2.6/arch/avr32/kernel/setup.c
---- linux-2.6.24.3/arch/avr32/kernel/setup.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/setup.c 2008-04-23 20:12:35.000000000 +0200
-@@ -273,6 +273,8 @@
+Index: linux-2.6.24.7/arch/avr32/kernel/setup.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/setup.c
++++ linux-2.6.24.7/arch/avr32/kernel/setup.c
+@@ -273,6 +273,8 @@ static int __init early_parse_fbmem(char
printk(KERN_WARNING
"Failed to allocate framebuffer memory\n");
fbmem_size = 0;
}
}
-diff -urN linux-2.6.24.3/arch/avr32/kernel/signal.c avr32-2.6/arch/avr32/kernel/signal.c
---- linux-2.6.24.3/arch/avr32/kernel/signal.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/signal.c 2008-04-23 19:33:28.000000000 +0200
-@@ -270,19 +270,12 @@
+Index: linux-2.6.24.7/arch/avr32/kernel/signal.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/signal.c
++++ linux-2.6.24.7/arch/avr32/kernel/signal.c
+@@ -270,19 +270,12 @@ int do_signal(struct pt_regs *regs, sigs
if (!user_mode(regs))
return 0;
if (syscall) {
switch (regs->r12) {
case -ERESTART_RESTARTBLOCK:
-diff -urN linux-2.6.24.3/arch/avr32/kernel/time.c avr32-2.6/arch/avr32/kernel/time.c
---- linux-2.6.24.3/arch/avr32/kernel/time.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/time.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/kernel/time.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/time.c
++++ linux-2.6.24.7/arch/avr32/kernel/time.c
@@ -1,16 +1,12 @@
/*
* Copyright (C) 2004-2007 Atmel Corporation
}
-
-device_initcall(init_timer_sysfs);
-diff -urN linux-2.6.24.3/arch/avr32/kernel/traps.c avr32-2.6/arch/avr32/kernel/traps.c
---- linux-2.6.24.3/arch/avr32/kernel/traps.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/kernel/traps.c 2008-04-23 19:33:28.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/kernel/traps.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/kernel/traps.c
++++ linux-2.6.24.7/arch/avr32/kernel/traps.c
@@ -9,6 +9,7 @@
#include <linux/bug.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/notifier.h>
#include <linux/sched.h>
-@@ -107,9 +108,23 @@
+@@ -107,9 +108,23 @@ void _exception(long signr, struct pt_re
asmlinkage void do_nmi(unsigned long ecr, struct pt_regs *regs)
{
}
asmlinkage void do_critical_exception(unsigned long ecr, struct pt_regs *regs)
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/at32ap7000.c avr32-2.6/arch/avr32/mach-at32ap/at32ap7000.c
---- linux-2.6.24.3/arch/avr32/mach-at32ap/at32ap7000.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/at32ap7000.c 1970-01-01 01:00:00.000000000 +0100
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/at32ap7000.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mach-at32ap/at32ap7000.c
++++ /dev/null
@@ -1,1730 +0,0 @@
-/*
- * Copyright (C) 2005-2006 Atmel Corporation
- pm_writel(PBA_MASK, pba_mask);
- pm_writel(PBB_MASK, pbb_mask);
-}
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/at32ap700x.c avr32-2.6/arch/avr32/mach-at32ap/at32ap700x.c
---- linux-2.6.24.3/arch/avr32/mach-at32ap/at32ap700x.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/at32ap700x.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/at32ap700x.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/at32ap700x.c
@@ -0,0 +1,1944 @@
+/*
+ * Copyright (C) 2005-2006 Atmel Corporation
+ pm_writel(PBA_MASK, pba_mask);
+ pm_writel(PBB_MASK, pbb_mask);
+}
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/extint.c avr32-2.6/arch/avr32/mach-at32ap/extint.c
---- linux-2.6.24.3/arch/avr32/mach-at32ap/extint.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/extint.c 2008-04-23 19:33:29.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/extint.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mach-at32ap/extint.c
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/extint.c
@@ -26,16 +26,10 @@
#define EIC_MODE 0x0014
#define EIC_EDGE 0x0018
/* Bit manipulation macros */
#define EIC_BIT(name) \
-@@ -63,6 +57,9 @@
+@@ -63,6 +57,9 @@ struct eic {
unsigned int first_irq;
};
static void eic_ack_irq(unsigned int irq)
{
struct eic *eic = get_irq_chip_data(irq);
-@@ -133,8 +130,11 @@
+@@ -133,8 +130,11 @@ static int eic_set_irq_type(unsigned int
eic_writel(eic, EDGE, edge);
eic_writel(eic, LEVEL, level);
desc->status &= ~(IRQ_TYPE_SENSE_MASK | IRQ_LEVEL);
desc->status |= flow_type;
}
-@@ -154,9 +154,8 @@
+@@ -154,9 +154,8 @@ static struct irq_chip eic_chip = {
static void demux_eic_irq(unsigned int irq, struct irq_desc *desc)
{
struct eic *eic = desc->handler_data;
status = eic_readl(eic, ISR);
pending = status & eic_readl(eic, IMR);
-@@ -165,15 +164,28 @@
+@@ -165,15 +164,28 @@ static void demux_eic_irq(unsigned int i
i = fls(pending) - 1;
pending &= ~(1 << i);
static int __init eic_probe(struct platform_device *pdev)
{
struct eic *eic;
-@@ -214,14 +226,13 @@
+@@ -214,14 +226,13 @@ static int __init eic_probe(struct platf
pattern = eic_readl(eic, MODE);
nr_irqs = fls(pattern);
set_irq_chip_and_handler(eic->first_irq + i, &eic_chip,
handle_level_irq);
set_irq_chip_data(eic->first_irq + i, eic);
-@@ -230,6 +241,16 @@
+@@ -230,6 +241,16 @@ static int __init eic_probe(struct platf
set_irq_chained_handler(int_irq, demux_eic_irq);
set_irq_data(int_irq, eic);
dev_info(&pdev->dev,
"External Interrupt Controller at 0x%p, IRQ %u\n",
eic->regs, int_irq);
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/gpio-dev.c avr32-2.6/arch/avr32/mach-at32ap/gpio-dev.c
---- linux-2.6.24.3/arch/avr32/mach-at32ap/gpio-dev.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/gpio-dev.c 2008-04-23 19:33:29.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/gpio-dev.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/gpio-dev.c
@@ -0,0 +1,573 @@
+/*
+ * GPIO /dev and configfs interface
+ return err;
+}
+late_initcall(gpio_dev_init);
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/intc.c avr32-2.6/arch/avr32/mach-at32ap/intc.c
---- linux-2.6.24.3/arch/avr32/mach-at32ap/intc.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/intc.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/intc.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mach-at32ap/intc.c
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/intc.c
@@ -13,7 +13,6 @@
#include <linux/irq.h>
#include <linux/platform_device.h>
#include <asm/io.h>
#include "intc.h"
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/Kconfig avr32-2.6/arch/avr32/mach-at32ap/Kconfig
---- linux-2.6.24.3/arch/avr32/mach-at32ap/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/Kconfig 2008-04-23 19:33:29.000000000 +0200
-@@ -3,9 +3,9 @@
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mach-at32ap/Kconfig
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/Kconfig
+@@ -3,9 +3,9 @@ if PLATFORM_AT32AP
menu "Atmel AVR32 AP options"
choice
help
Define the width of the AP7000 external static memory interface.
This is used to determine how to mangle the address and/or data
-@@ -15,17 +15,24 @@
+@@ -15,17 +15,24 @@ choice
width for all chip selects, excluding the flash (which is using
raw access and is thus not affected by any of this.)
endmenu
endif # PLATFORM_AT32AP
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/Makefile avr32-2.6/arch/avr32/mach-at32ap/Makefile
---- linux-2.6.24.3/arch/avr32/mach-at32ap/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/Makefile 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mach-at32ap/Makefile
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/Makefile
@@ -1,4 +1,4 @@
obj-y += at32ap.o clock.o intc.o extint.o pio.o hsmc.o
-obj-$(CONFIG_CPU_AT32AP7000) += at32ap7000.o
+obj-$(CONFIG_CPU_AT32AP700X) += at32ap700x.o pm-at32ap700x.o
obj-$(CONFIG_CPU_FREQ_AT32AP) += cpufreq.o
+obj-$(CONFIG_GPIO_DEV) += gpio-dev.o
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/pio.c avr32-2.6/arch/avr32/mach-at32ap/pio.c
---- linux-2.6.24.3/arch/avr32/mach-at32ap/pio.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/pio.c 2008-04-23 20:12:35.000000000 +0200
-@@ -162,6 +162,82 @@
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/pio.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mach-at32ap/pio.c
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/pio.c
+@@ -162,6 +162,82 @@ fail:
dump_stack();
}
/*--------------------------------------------------------------------------*/
/* GPIO API */
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/pm-at32ap700x.S avr32-2.6/arch/avr32/mach-at32ap/pm-at32ap700x.S
---- linux-2.6.24.3/arch/avr32/mach-at32ap/pm-at32ap700x.S 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/pm-at32ap700x.S 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/pm-at32ap700x.S
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/mach-at32ap/pm-at32ap700x.S
@@ -0,0 +1,66 @@
+/*
+ * Low-level Power Management code.
+ unmask_interrupts
+ retal r12
+ .size cpu_idle_skip_sleep, . - cpu_idle_skip_sleep
-diff -urN linux-2.6.24.3/arch/avr32/mach-at32ap/time-tc.c avr32-2.6/arch/avr32/mach-at32ap/time-tc.c
---- linux-2.6.24.3/arch/avr32/mach-at32ap/time-tc.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mach-at32ap/time-tc.c 1970-01-01 01:00:00.000000000 +0100
+Index: linux-2.6.24.7/arch/avr32/mach-at32ap/time-tc.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mach-at32ap/time-tc.c
++++ /dev/null
@@ -1,218 +0,0 @@
-/*
- * Copyright (C) 2004-2007 Atmel Corporation
-
- return IRQ_NONE;
-}
-diff -urN linux-2.6.24.3/arch/avr32/Makefile avr32-2.6/arch/avr32/Makefile
---- linux-2.6.24.3/arch/avr32/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/Makefile 2008-04-23 19:33:28.000000000 +0200
-@@ -16,7 +16,7 @@
+Index: linux-2.6.24.7/arch/avr32/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/Makefile
++++ linux-2.6.24.7/arch/avr32/Makefile
+@@ -16,7 +16,7 @@ KBUILD_AFLAGS += -mrelax -mno-pic
CFLAGS_MODULE += -mno-relax
LDFLAGS_vmlinux += --relax
KBUILD_CFLAGS += $(cpuflags-y)
KBUILD_AFLAGS += $(cpuflags-y)
-@@ -31,6 +31,8 @@
+@@ -31,6 +31,8 @@ core-$(CONFIG_BOARD_ATNGW100) += arch/a
core-$(CONFIG_LOADER_U_BOOT) += arch/avr32/boot/u-boot/
core-y += arch/avr32/kernel/
core-y += arch/avr32/mm/
libs-y += arch/avr32/lib/
archincdir-$(CONFIG_PLATFORM_AT32AP) := arch-at32ap
-diff -urN linux-2.6.24.3/arch/avr32/mm/dma-coherent.c avr32-2.6/arch/avr32/mm/dma-coherent.c
---- linux-2.6.24.3/arch/avr32/mm/dma-coherent.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mm/dma-coherent.c 2008-04-23 19:33:29.000000000 +0200
-@@ -41,6 +41,13 @@
+Index: linux-2.6.24.7/arch/avr32/mm/dma-coherent.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mm/dma-coherent.c
++++ linux-2.6.24.7/arch/avr32/mm/dma-coherent.c
+@@ -41,6 +41,13 @@ static struct page *__dma_alloc(struct d
struct page *page, *free, *end;
int order;
size = PAGE_ALIGN(size);
order = get_order(size);
-diff -urN linux-2.6.24.3/arch/avr32/mm/fault.c avr32-2.6/arch/avr32/mm/fault.c
---- linux-2.6.24.3/arch/avr32/mm/fault.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mm/fault.c 2008-04-23 20:12:35.000000000 +0200
-@@ -189,6 +189,8 @@
+Index: linux-2.6.24.7/arch/avr32/mm/fault.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mm/fault.c
++++ linux-2.6.24.7/arch/avr32/mm/fault.c
+@@ -189,6 +189,8 @@ no_context:
page = sysreg_read(PTBR);
printk(KERN_ALERT "ptbr = %08lx", page);
if (page) {
page = ((unsigned long *)page)[address >> 22];
printk(" pgd = %08lx", page);
-diff -urN linux-2.6.24.3/arch/avr32/mm/tlb.c avr32-2.6/arch/avr32/mm/tlb.c
---- linux-2.6.24.3/arch/avr32/mm/tlb.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/arch/avr32/mm/tlb.c 2008-04-23 19:33:29.000000000 +0200
-@@ -348,7 +348,7 @@
+Index: linux-2.6.24.7/arch/avr32/mm/tlb.c
+===================================================================
+--- linux-2.6.24.7.orig/arch/avr32/mm/tlb.c
++++ linux-2.6.24.7/arch/avr32/mm/tlb.c
+@@ -348,7 +348,7 @@ static int tlb_show(struct seq_file *tlb
return 0;
}
.start = tlb_start,
.next = tlb_next,
.stop = tlb_stop,
-diff -urN linux-2.6.24.3/arch/avr32/oprofile/Makefile avr32-2.6/arch/avr32/oprofile/Makefile
---- linux-2.6.24.3/arch/avr32/oprofile/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/oprofile/Makefile 2008-04-23 19:33:29.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/oprofile/Makefile
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/oprofile/Makefile
@@ -0,0 +1,8 @@
+obj-$(CONFIG_OPROFILE) += oprofile.o
+
+ oprofilefs.o oprofile_stats.o \
+ timer_int.o)
+oprofile-y += op_model_avr32.o
-diff -urN linux-2.6.24.3/arch/avr32/oprofile/op_model_avr32.c avr32-2.6/arch/avr32/oprofile/op_model_avr32.c
---- linux-2.6.24.3/arch/avr32/oprofile/op_model_avr32.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/arch/avr32/oprofile/op_model_avr32.c 2008-04-23 20:12:35.000000000 +0200
+Index: linux-2.6.24.7/arch/avr32/oprofile/op_model_avr32.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/arch/avr32/oprofile/op_model_avr32.c
@@ -0,0 +1,234 @@
+/*
+ * AVR32 Performance Counter Driver
+{
+
+}
-diff -urN linux-2.6.24.3/Documentation/kernel-parameters.txt avr32-2.6/Documentation/kernel-parameters.txt
---- linux-2.6.24.3/Documentation/kernel-parameters.txt 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/Documentation/kernel-parameters.txt 2008-04-23 20:12:35.000000000 +0200
-@@ -34,6 +34,7 @@
+Index: linux-2.6.24.7/Documentation/kernel-parameters.txt
+===================================================================
+--- linux-2.6.24.7.orig/Documentation/kernel-parameters.txt
++++ linux-2.6.24.7/Documentation/kernel-parameters.txt
+@@ -34,6 +34,7 @@ parameter is applicable:
ALSA ALSA sound support is enabled.
APIC APIC support is enabled.
APM Advanced Power Management support is enabled.
AX25 Appropriate AX.25 support is enabled.
BLACKFIN Blackfin architecture is enabled.
DRM Direct Rendering Management support is enabled.
-@@ -1123,6 +1124,10 @@
+@@ -1124,6 +1125,10 @@ and is between 256 and 4096 characters.
of returning the full 64-bit number.
The default is to return 64-bit inode numbers.
nmi_watchdog= [KNL,BUGS=X86-32] Debugging features for SMP kernels
no387 [BUGS=X86-32] Tells the kernel to use the 387 maths
-diff -urN linux-2.6.24.3/drivers/clocksource/Makefile avr32-2.6/drivers/clocksource/Makefile
---- linux-2.6.24.3/drivers/clocksource/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/clocksource/Makefile 2008-04-23 20:12:39.000000000 +0200
+Index: linux-2.6.24.7/drivers/clocksource/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/clocksource/Makefile
++++ linux-2.6.24.7/drivers/clocksource/Makefile
@@ -1,3 +1,4 @@
+obj-$(CONFIG_ATMEL_TCB_CLKSRC) += tcb_clksrc.o
obj-$(CONFIG_X86_CYCLONE_TIMER) += cyclone.o
obj-$(CONFIG_X86_PM_TIMER) += acpi_pm.o
obj-$(CONFIG_SCx200HR_TIMER) += scx200_hrt.o
-diff -urN linux-2.6.24.3/drivers/clocksource/tcb_clksrc.c avr32-2.6/drivers/clocksource/tcb_clksrc.c
---- linux-2.6.24.3/drivers/clocksource/tcb_clksrc.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/clocksource/tcb_clksrc.c 2008-04-23 20:12:39.000000000 +0200
+Index: linux-2.6.24.7/drivers/clocksource/tcb_clksrc.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/clocksource/tcb_clksrc.c
@@ -0,0 +1,305 @@
+#include <linux/init.h>
+#include <linux/clocksource.h>
+ return 0;
+}
+arch_initcall(tcb_clksrc_init);
-diff -urN linux-2.6.24.3/drivers/i2c/busses/i2c-atmeltwi.c avr32-2.6/drivers/i2c/busses/i2c-atmeltwi.c
---- linux-2.6.24.3/drivers/i2c/busses/i2c-atmeltwi.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/i2c/busses/i2c-atmeltwi.c 2008-04-23 19:33:37.000000000 +0200
+Index: linux-2.6.24.7/drivers/i2c/busses/i2c-atmeltwi.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/i2c/busses/i2c-atmeltwi.c
@@ -0,0 +1,436 @@
+/*
+ * i2c Support for Atmel's Two-Wire Interface (TWI)
+MODULE_AUTHOR("Espen Krangnes");
+MODULE_DESCRIPTION("I2C driver for Atmel TWI");
+MODULE_LICENSE("GPL");
-diff -urN linux-2.6.24.3/drivers/i2c/busses/i2c-atmeltwi.h avr32-2.6/drivers/i2c/busses/i2c-atmeltwi.h
---- linux-2.6.24.3/drivers/i2c/busses/i2c-atmeltwi.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/i2c/busses/i2c-atmeltwi.h 2008-04-23 19:33:37.000000000 +0200
+Index: linux-2.6.24.7/drivers/i2c/busses/i2c-atmeltwi.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/i2c/busses/i2c-atmeltwi.h
@@ -0,0 +1,117 @@
+/*
+ * Register definitions for the Atmel Two-Wire Interface
+ __raw_writel((value), (port)->regs + TWI_##reg)
+
+#endif /* __ATMELTWI_H__ */
-diff -urN linux-2.6.24.3/drivers/i2c/busses/Kconfig avr32-2.6/drivers/i2c/busses/Kconfig
---- linux-2.6.24.3/drivers/i2c/busses/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/i2c/busses/Kconfig 2008-04-23 20:12:40.000000000 +0200
-@@ -88,6 +88,14 @@
+Index: linux-2.6.24.7/drivers/i2c/busses/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/i2c/busses/Kconfig
++++ linux-2.6.24.7/drivers/i2c/busses/Kconfig
+@@ -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.
config I2C_AU1550
tristate "Au1550/Au1200 SMBus interface"
depends on SOC_AU1550 || SOC_AU1200
-diff -urN linux-2.6.24.3/drivers/i2c/busses/Makefile avr32-2.6/drivers/i2c/busses/Makefile
---- linux-2.6.24.3/drivers/i2c/busses/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/i2c/busses/Makefile 2008-04-23 20:12:40.000000000 +0200
-@@ -53,6 +53,7 @@
+Index: linux-2.6.24.7/drivers/i2c/busses/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/i2c/busses/Makefile
++++ linux-2.6.24.7/drivers/i2c/busses/Makefile
+@@ -53,6 +53,7 @@ obj-$(CONFIG_I2C_VIAPRO) += i2c-viapro.o
obj-$(CONFIG_I2C_VOODOO3) += i2c-voodoo3.o
obj-$(CONFIG_SCx200_ACB) += scx200_acb.o
obj-$(CONFIG_SCx200_I2C) += scx200_i2c.o
ifeq ($(CONFIG_I2C_DEBUG_BUS),y)
EXTRA_CFLAGS += -DDEBUG
-diff -urN linux-2.6.24.3/drivers/input/serio/at32psif.c avr32-2.6/drivers/input/serio/at32psif.c
---- linux-2.6.24.3/drivers/input/serio/at32psif.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/input/serio/at32psif.c 2008-04-23 20:12:40.000000000 +0200
+Index: linux-2.6.24.7/drivers/input/serio/at32psif.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/input/serio/at32psif.c
@@ -0,0 +1,351 @@
+/*
+ * Copyright (C) 2007 Atmel Corporation
+MODULE_AUTHOR("Hans-Christian Egtvedt <hcegtvedt@atmel.com>");
+MODULE_DESCRIPTION("Atmel AVR32 PSIF PS/2 driver");
+MODULE_LICENSE("GPL");
-diff -urN linux-2.6.24.3/drivers/input/serio/at32psif.h avr32-2.6/drivers/input/serio/at32psif.h
---- linux-2.6.24.3/drivers/input/serio/at32psif.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/input/serio/at32psif.h 2008-04-23 20:12:40.000000000 +0200
+Index: linux-2.6.24.7/drivers/input/serio/at32psif.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/input/serio/at32psif.h
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2007 Atmel Corporation
+ __raw_writel((value), (port)->regs + PSIF_##reg)
+
+#endif /* _AT32PSIF_H */
-diff -urN linux-2.6.24.3/drivers/input/serio/Kconfig avr32-2.6/drivers/input/serio/Kconfig
---- linux-2.6.24.3/drivers/input/serio/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/input/serio/Kconfig 2008-04-23 20:12:40.000000000 +0200
-@@ -88,6 +88,17 @@
+Index: linux-2.6.24.7/drivers/input/serio/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/input/serio/Kconfig
++++ linux-2.6.24.7/drivers/input/serio/Kconfig
+@@ -88,6 +88,17 @@ config SERIO_RPCKBD
To compile this driver as a module, choose M here: the
module will be called rpckbd.
config SERIO_AMBAKMI
tristate "AMBA KMI keyboard controller"
depends on ARM_AMBA
-diff -urN linux-2.6.24.3/drivers/input/serio/Makefile avr32-2.6/drivers/input/serio/Makefile
---- linux-2.6.24.3/drivers/input/serio/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/input/serio/Makefile 2008-04-23 20:12:40.000000000 +0200
-@@ -12,6 +12,7 @@
+Index: linux-2.6.24.7/drivers/input/serio/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/input/serio/Makefile
++++ linux-2.6.24.7/drivers/input/serio/Makefile
+@@ -12,6 +12,7 @@ obj-$(CONFIG_SERIO_CT82C710) += ct82c710
obj-$(CONFIG_SERIO_RPCKBD) += rpckbd.o
obj-$(CONFIG_SERIO_SA1111) += sa1111ps2.o
obj-$(CONFIG_SERIO_AMBAKMI) += ambakmi.o
obj-$(CONFIG_SERIO_Q40KBD) += q40kbd.o
obj-$(CONFIG_SERIO_GSCPS2) += gscps2.o
obj-$(CONFIG_HP_SDC) += hp_sdc.o
-diff -urN linux-2.6.24.3/drivers/leds/Kconfig avr32-2.6/drivers/leds/Kconfig
---- linux-2.6.24.3/drivers/leds/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/leds/Kconfig 2008-04-23 20:12:41.000000000 +0200
-@@ -18,6 +18,13 @@
+Index: linux-2.6.24.7/drivers/leds/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/leds/Kconfig
++++ linux-2.6.24.7/drivers/leds/Kconfig
+@@ -18,6 +18,13 @@ config LEDS_CLASS
comment "LED drivers"
config LEDS_CORGI
tristate "LED Support for the Sharp SL-C7x0 series"
depends on LEDS_CLASS && PXA_SHARP_C7xx
-diff -urN linux-2.6.24.3/drivers/leds/leds-atmel-pwm.c avr32-2.6/drivers/leds/leds-atmel-pwm.c
---- linux-2.6.24.3/drivers/leds/leds-atmel-pwm.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/leds/leds-atmel-pwm.c 2008-04-23 19:33:39.000000000 +0200
+Index: linux-2.6.24.7/drivers/leds/leds-atmel-pwm.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/leds/leds-atmel-pwm.c
@@ -0,0 +1,155 @@
+#include <linux/kernel.h>
+#include <linux/platform_device.h>
+
+MODULE_DESCRIPTION("Driver for LEDs with PWM-controlled brightness");
+MODULE_LICENSE("GPL");
-diff -urN linux-2.6.24.3/drivers/leds/Makefile avr32-2.6/drivers/leds/Makefile
---- linux-2.6.24.3/drivers/leds/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/leds/Makefile 2008-04-23 20:12:41.000000000 +0200
-@@ -5,6 +5,7 @@
+Index: linux-2.6.24.7/drivers/leds/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/leds/Makefile
++++ linux-2.6.24.7/drivers/leds/Makefile
+@@ -5,6 +5,7 @@ obj-$(CONFIG_LEDS_CLASS) += led-class.o
obj-$(CONFIG_LEDS_TRIGGERS) += led-triggers.o
# LED Platform Drivers
obj-$(CONFIG_LEDS_CORGI) += leds-corgi.o
obj-$(CONFIG_LEDS_LOCOMO) += leds-locomo.o
obj-$(CONFIG_LEDS_SPITZ) += leds-spitz.o
-diff -urN linux-2.6.24.3/drivers/misc/atmel_pwm.c avr32-2.6/drivers/misc/atmel_pwm.c
---- linux-2.6.24.3/drivers/misc/atmel_pwm.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/misc/atmel_pwm.c 2008-04-23 19:33:40.000000000 +0200
+Index: linux-2.6.24.7/drivers/misc/atmel_pwm.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/misc/atmel_pwm.c
@@ -0,0 +1,409 @@
+#include <linux/module.h>
+#include <linux/clk.h>
+
+MODULE_DESCRIPTION("Driver for AT32/AT91 PWM module");
+MODULE_LICENSE("GPL");
-diff -urN linux-2.6.24.3/drivers/misc/atmel_tclib.c avr32-2.6/drivers/misc/atmel_tclib.c
---- linux-2.6.24.3/drivers/misc/atmel_tclib.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/misc/atmel_tclib.c 2008-04-23 20:12:41.000000000 +0200
+Index: linux-2.6.24.7/drivers/misc/atmel_tclib.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/misc/atmel_tclib.c
@@ -0,0 +1,161 @@
+#include <linux/atmel_tc.h>
+#include <linux/clk.h>
+ return platform_driver_probe(&tc_driver, tc_probe);
+}
+arch_initcall(tc_init);
-diff -urN linux-2.6.24.3/drivers/misc/Kconfig avr32-2.6/drivers/misc/Kconfig
---- linux-2.6.24.3/drivers/misc/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/misc/Kconfig 2008-04-23 20:12:41.000000000 +0200
-@@ -13,6 +13,48 @@
+Index: linux-2.6.24.7/drivers/misc/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/misc/Kconfig
++++ linux-2.6.24.7/drivers/misc/Kconfig
+@@ -13,6 +13,48 @@ menuconfig MISC_DEVICES
if MISC_DEVICES
config IBM_ASM
tristate "Device driver for IBM RSA service processor"
depends on X86 && PCI && INPUT && EXPERIMENTAL
-diff -urN linux-2.6.24.3/drivers/misc/Makefile avr32-2.6/drivers/misc/Makefile
---- linux-2.6.24.3/drivers/misc/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/misc/Makefile 2008-04-23 20:12:41.000000000 +0200
-@@ -7,7 +7,9 @@
+Index: linux-2.6.24.7/drivers/misc/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/misc/Makefile
++++ linux-2.6.24.7/drivers/misc/Makefile
+@@ -7,7 +7,9 @@ obj-$(CONFIG_IBM_ASM) += ibmasm/
obj-$(CONFIG_HDPU_FEATURES) += hdpuftrs/
obj-$(CONFIG_MSI_LAPTOP) += msi-laptop.o
obj-$(CONFIG_ASUS_LAPTOP) += asus-laptop.o
obj-$(CONFIG_LKDTM) += lkdtm.o
obj-$(CONFIG_TIFM_CORE) += tifm_core.o
obj-$(CONFIG_TIFM_7XX1) += tifm_7xx1.o
-diff -urN linux-2.6.24.3/drivers/mmc/host/atmel-mci.c avr32-2.6/drivers/mmc/host/atmel-mci.c
---- linux-2.6.24.3/drivers/mmc/host/atmel-mci.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/mmc/host/atmel-mci.c 2008-04-23 20:12:41.000000000 +0200
+Index: linux-2.6.24.7/drivers/mmc/host/atmel-mci.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/mmc/host/atmel-mci.c
@@ -0,0 +1,1220 @@
+/*
+ * Atmel MultiMedia Card Interface driver
+
+MODULE_DESCRIPTION("Atmel Multimedia Card Interface driver");
+MODULE_LICENSE("GPL");
-diff -urN linux-2.6.24.3/drivers/mmc/host/atmel-mci.h avr32-2.6/drivers/mmc/host/atmel-mci.h
---- linux-2.6.24.3/drivers/mmc/host/atmel-mci.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/mmc/host/atmel-mci.h 2008-04-23 19:33:40.000000000 +0200
+Index: linux-2.6.24.7/drivers/mmc/host/atmel-mci.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/mmc/host/atmel-mci.h
@@ -0,0 +1,192 @@
+/*
+ * Atmel MultiMedia Card Interface driver
+ __raw_writel((value), (port)->regs + MCI_##reg)
+
+#endif /* __DRIVERS_MMC_ATMEL_MCI_H__ */
-diff -urN linux-2.6.24.3/drivers/mmc/host/Kconfig avr32-2.6/drivers/mmc/host/Kconfig
---- linux-2.6.24.3/drivers/mmc/host/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/mmc/host/Kconfig 2008-04-23 19:33:40.000000000 +0200
-@@ -91,6 +91,16 @@
+Index: linux-2.6.24.7/drivers/mmc/host/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/mmc/host/Kconfig
++++ linux-2.6.24.7/drivers/mmc/host/Kconfig
+@@ -91,6 +91,16 @@ config MMC_AT91
If unsure, say N.
config MMC_IMX
tristate "Motorola i.MX Multimedia Card Interface support"
depends on ARCH_IMX
-diff -urN linux-2.6.24.3/drivers/mmc/host/Makefile avr32-2.6/drivers/mmc/host/Makefile
---- linux-2.6.24.3/drivers/mmc/host/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/mmc/host/Makefile 2008-04-23 19:33:40.000000000 +0200
-@@ -15,6 +15,7 @@
+Index: linux-2.6.24.7/drivers/mmc/host/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/mmc/host/Makefile
++++ linux-2.6.24.7/drivers/mmc/host/Makefile
+@@ -15,6 +15,7 @@ obj-$(CONFIG_MMC_WBSD) += wbsd.o
obj-$(CONFIG_MMC_AU1X) += au1xmmc.o
obj-$(CONFIG_MMC_OMAP) += omap.o
obj-$(CONFIG_MMC_AT91) += at91_mci.o
obj-$(CONFIG_MMC_TIFM_SD) += tifm_sd.o
obj-$(CONFIG_MMC_SPI) += mmc_spi.o
-diff -urN linux-2.6.24.3/drivers/mtd/chips/cfi_cmdset_0001.c avr32-2.6/drivers/mtd/chips/cfi_cmdset_0001.c
---- linux-2.6.24.3/drivers/mtd/chips/cfi_cmdset_0001.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/mtd/chips/cfi_cmdset_0001.c 2008-04-23 20:12:41.000000000 +0200
+Index: linux-2.6.24.7/drivers/mtd/chips/cfi_cmdset_0001.c
+===================================================================
+--- linux-2.6.24.7.orig/drivers/mtd/chips/cfi_cmdset_0001.c
++++ linux-2.6.24.7/drivers/mtd/chips/cfi_cmdset_0001.c
@@ -50,6 +50,7 @@
#define I82802AC 0x00ac
#define MANUFACTURER_ST 0x0020
static int cfi_intelext_read (struct mtd_info *, loff_t, size_t, size_t *, u_char *);
static int cfi_intelext_write_words(struct mtd_info *, loff_t, size_t, size_t *, const u_char *);
-@@ -157,6 +158,47 @@
+@@ -157,6 +158,47 @@ static void cfi_tell_features(struct cfi
}
#endif
#ifdef CMDSET0001_DISABLE_ERASE_SUSPEND_ON_WRITE
/* Some Intel Strata Flash prior to FPO revision C has bugs in this area */
static void fixup_intel_strataflash(struct mtd_info *mtd, void* param)
-@@ -234,6 +276,7 @@
+@@ -234,6 +276,7 @@ static void fixup_use_powerup_lock(struc
}
static struct cfi_fixup cfi_fixup_table[] = {
#ifdef CMDSET0001_DISABLE_ERASE_SUSPEND_ON_WRITE
{ CFI_MFR_ANY, CFI_ID_ANY, fixup_intel_strataflash, NULL },
#endif
-diff -urN linux-2.6.24.3/drivers/mtd/chips/cfi_cmdset_0002.c avr32-2.6/drivers/mtd/chips/cfi_cmdset_0002.c
---- linux-2.6.24.3/drivers/mtd/chips/cfi_cmdset_0002.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/mtd/chips/cfi_cmdset_0002.c 2008-04-23 20:12:41.000000000 +0200
-@@ -185,6 +185,10 @@
+Index: linux-2.6.24.7/drivers/mtd/chips/cfi_cmdset_0002.c
+===================================================================
+--- linux-2.6.24.7.orig/drivers/mtd/chips/cfi_cmdset_0002.c
++++ linux-2.6.24.7/drivers/mtd/chips/cfi_cmdset_0002.c
+@@ -186,6 +186,10 @@ static void fixup_convert_atmel_pri(stru
extp->TopBottom = 2;
else
extp->TopBottom = 3;
}
static void fixup_use_secsi(struct mtd_info *mtd, void *param)
-@@ -217,6 +221,7 @@
+@@ -218,6 +222,7 @@ static void fixup_use_atmel_lock(struct
}
static struct cfi_fixup cfi_fixup_table[] = {
#ifdef AMD_BOOTLOC_BUG
{ CFI_MFR_AMD, CFI_ID_ANY, fixup_amd_bootblock, NULL },
#endif
-@@ -229,7 +234,6 @@
+@@ -230,7 +235,6 @@ static struct cfi_fixup cfi_fixup_table[
#if !FORCE_WORD_WRITE
{ CFI_MFR_ANY, CFI_ID_ANY, fixup_use_write_buffers, NULL, },
#endif
{ 0, 0, NULL, NULL }
};
static struct cfi_fixup jedec_fixup_table[] = {
-diff -urN linux-2.6.24.3/drivers/pcmcia/at32_cf.c avr32-2.6/drivers/pcmcia/at32_cf.c
---- linux-2.6.24.3/drivers/pcmcia/at32_cf.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/drivers/pcmcia/at32_cf.c 2008-04-23 19:33:42.000000000 +0200
+Index: linux-2.6.24.7/drivers/pcmcia/at32_cf.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/drivers/pcmcia/at32_cf.c
@@ -0,0 +1,533 @@
+/*
+ * Driver for AVR32 Static Memory Controller: CompactFlash support
+MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("Driver for SMC PCMCIA interface");
+MODULE_AUTHOR("Hans-Christian Egtvedt <hcegtvedt@atmel.com>");
-diff -urN linux-2.6.24.3/drivers/pcmcia/Kconfig avr32-2.6/drivers/pcmcia/Kconfig
---- linux-2.6.24.3/drivers/pcmcia/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/pcmcia/Kconfig 2008-04-23 19:33:42.000000000 +0200
-@@ -276,6 +276,13 @@
+Index: linux-2.6.24.7/drivers/pcmcia/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/pcmcia/Kconfig
++++ linux-2.6.24.7/drivers/pcmcia/Kconfig
+@@ -276,6 +276,13 @@ config ELECTRA_CF
Say Y here to support the CompactFlash controller on the
PA Semi Electra eval board.
config PCCARD_NONSTATIC
tristate
-diff -urN linux-2.6.24.3/drivers/pcmcia/Makefile avr32-2.6/drivers/pcmcia/Makefile
---- linux-2.6.24.3/drivers/pcmcia/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/pcmcia/Makefile 2008-04-23 19:33:42.000000000 +0200
-@@ -38,6 +38,7 @@
+Index: linux-2.6.24.7/drivers/pcmcia/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/drivers/pcmcia/Makefile
++++ linux-2.6.24.7/drivers/pcmcia/Makefile
+@@ -38,6 +38,7 @@ obj-$(CONFIG_PCMCIA_VRC4173) += vrc417
obj-$(CONFIG_OMAP_CF) += omap_cf.o
obj-$(CONFIG_AT91_CF) += at91_cf.o
obj-$(CONFIG_ELECTRA_CF) += electra_cf.o
sa11xx_core-y += soc_common.o sa11xx_base.o
pxa2xx_core-y += soc_common.o pxa2xx_base.o
-diff -urN linux-2.6.24.3/drivers/serial/atmel_serial.c avr32-2.6/drivers/serial/atmel_serial.c
---- linux-2.6.24.3/drivers/serial/atmel_serial.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/serial/atmel_serial.c 2008-04-23 20:12:44.000000000 +0200
+Index: linux-2.6.24.7/drivers/serial/atmel_serial.c
+===================================================================
+--- linux-2.6.24.7.orig/drivers/serial/atmel_serial.c
++++ linux-2.6.24.7/drivers/serial/atmel_serial.c
@@ -7,6 +7,8 @@
* Based on drivers/char/serial_sa1100.c, by Deep Blue Solutions Ltd.
* Based on drivers/char/serial.c, by Linus Torvalds, Theodore Ts'o.
/*
* We wrap our port structure around the generic uart_port.
*/
-@@ -115,6 +132,19 @@
+@@ -115,6 +132,19 @@ struct atmel_uart_port {
struct clk *clk; /* uart clock */
unsigned short suspended; /* is port suspended? */
int break_active; /* break being received */
};
static struct atmel_uart_port atmel_ports[ATMEL_MAX_UART];
-@@ -123,6 +153,38 @@
+@@ -123,6 +153,38 @@ static struct atmel_uart_port atmel_port
static struct console atmel_console;
#endif
/*
* Return TIOCSER_TEMT when transmitter FIFO and Shift register is empty.
*/
-@@ -142,8 +204,8 @@
+@@ -142,8 +204,8 @@ static void atmel_set_mctrl(struct uart_
#ifdef CONFIG_ARCH_AT91RM9200
if (cpu_is_at91rm9200()) {
/*
*/
if (port->mapbase == AT91RM9200_BASE_US0) {
if (mctrl & TIOCM_RTS)
-@@ -204,7 +266,12 @@
+@@ -204,7 +266,12 @@ static u_int atmel_get_mctrl(struct uart
*/
static void atmel_stop_tx(struct uart_port *port)
{
}
/*
-@@ -212,7 +279,17 @@
+@@ -212,7 +279,17 @@ static void atmel_stop_tx(struct uart_po
*/
static void atmel_start_tx(struct uart_port *port)
{
}
/*
-@@ -220,7 +297,12 @@
+@@ -220,7 +297,12 @@ static void atmel_start_tx(struct uart_p
*/
static void atmel_stop_rx(struct uart_port *port)
{
}
/*
-@@ -228,7 +310,8 @@
+@@ -228,7 +310,8 @@ static void atmel_stop_rx(struct uart_po
*/
static void atmel_enable_ms(struct uart_port *port)
{
}
/*
-@@ -243,22 +326,63 @@
+@@ -243,22 +326,63 @@ static void atmel_break_ctl(struct uart_
}
/*
/*
* note that the error handling code is
* out of the main execution path
-@@ -266,15 +390,14 @@
+@@ -266,15 +390,14 @@ static void atmel_rx_chars(struct uart_p
if (unlikely(status & (ATMEL_US_PARE | ATMEL_US_FRAME
| ATMEL_US_OVRE | ATMEL_US_RXBRK)
|| atmel_port->break_active)) {
} else {
/*
* This is either the end-of-break
-@@ -287,52 +410,30 @@
+@@ -287,52 +410,30 @@ static void atmel_rx_chars(struct uart_p
status &= ~ATMEL_US_RXBRK;
atmel_port->break_active = 0;
}
while (UART_GET_CSR(port) & ATMEL_US_TXRDY) {
UART_PUT_CHAR(port, xmit->buf[xmit->tail]);
-@@ -345,8 +446,88 @@
+@@ -345,8 +446,88 @@ static void atmel_tx_chars(struct uart_p
if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
uart_write_wakeup(port);
}
/*
-@@ -355,47 +536,255 @@
+@@ -355,47 +536,255 @@ static void atmel_tx_chars(struct uart_p
static irqreturn_t atmel_interrupt(int irq, void *dev_id)
{
struct uart_port *port = dev_id;
}
/*
-@@ -403,6 +792,8 @@
+@@ -403,6 +792,8 @@ static irqreturn_t atmel_interrupt(int i
*/
static int atmel_startup(struct uart_port *port)
{
int retval;
/*
-@@ -415,13 +806,64 @@
+@@ -415,13 +806,64 @@ static int atmel_startup(struct uart_por
/*
* Allocate the IRQ
*/
* If there is a specific "open" function (to register
* control line interrupts)
*/
-@@ -437,9 +879,21 @@
+@@ -437,9 +879,21 @@ static int atmel_startup(struct uart_por
* Finally, enable the serial port
*/
UART_PUT_CR(port, ATMEL_US_RSTSTA | ATMEL_US_RSTRX);
return 0;
}
-@@ -449,6 +903,38 @@
+@@ -449,6 +903,38 @@ static int atmel_startup(struct uart_por
*/
static void atmel_shutdown(struct uart_port *port)
{
/*
* Disable all interrupts, port and break condition.
*/
-@@ -471,45 +957,48 @@
+@@ -471,45 +957,48 @@ static void atmel_shutdown(struct uart_p
/*
* Power / Clock management.
*/
quot /= 8;
mode |= ATMEL_US_USCLKS_MCK_DIV8;
}
-@@ -536,18 +1025,17 @@
+@@ -536,18 +1025,17 @@ static void atmel_set_termios(struct uar
/* parity */
if (termios->c_cflag & PARENB) {
mode |= ATMEL_US_PAR_NONE;
spin_lock_irqsave(&port->lock, flags);
-@@ -558,6 +1046,10 @@
+@@ -558,6 +1046,10 @@ static void atmel_set_termios(struct uar
if (termios->c_iflag & (BRKINT | PARMRK))
port->read_status_mask |= ATMEL_US_RXBRK;
/*
* Characters to ignore
*/
-@@ -573,16 +1065,16 @@
+@@ -573,16 +1065,16 @@ static void atmel_set_termios(struct uar
if (termios->c_iflag & IGNPAR)
port->ignore_status_mask |= ATMEL_US_OVRE;
}
/* disable receiver and transmitter */
UART_PUT_CR(port, ATMEL_US_TXDIS | ATMEL_US_RXDIS);
-@@ -708,7 +1200,8 @@
+@@ -708,7 +1200,8 @@ static struct uart_ops atmel_pops = {
/*
* Configure the port from the platform device resource info.
*/
{
struct uart_port *port = &atmel_port->uart;
struct atmel_uart_data *data = pdev->dev.platform_data;
-@@ -723,6 +1216,11 @@
+@@ -723,6 +1216,11 @@ static void __devinit atmel_init_port(st
port->mapbase = pdev->resource[0].start;
port->irq = pdev->resource[1].start;
if (data->regs)
/* Already mapped by setup code */
port->membase = data->regs;
-@@ -731,11 +1229,17 @@
+@@ -731,11 +1229,17 @@ static void __devinit atmel_init_port(st
port->membase = NULL;
}
}
/*
-@@ -755,12 +1259,11 @@
+@@ -755,12 +1259,11 @@ void __init atmel_register_uart_fns(stru
atmel_pops.set_wake = fns->set_wake;
}
UART_PUT_CHAR(port, ch);
}
-@@ -773,38 +1276,40 @@
+@@ -773,38 +1276,40 @@ static void atmel_console_write(struct c
unsigned int status, imr;
/*
mr = UART_GET_MR(port) & ATMEL_US_CHRL;
if (mr == ATMEL_US_CHRL_8)
-@@ -824,7 +1329,6 @@
+@@ -824,7 +1329,6 @@ static void __init atmel_console_get_opt
* lower than one of those, as it would make us fall through
* to a much lower baud rate than we really want.
*/
*baud = port->uartclk / (16 * (quot - 1));
}
-@@ -836,10 +1340,12 @@
+@@ -836,10 +1340,12 @@ static int __init atmel_console_setup(st
int parity = 'n';
int flow = 'n';
UART_PUT_CR(port, ATMEL_US_RSTSTA | ATMEL_US_RSTRX);
UART_PUT_CR(port, ATMEL_US_TXEN | ATMEL_US_RXEN);
-@@ -871,13 +1377,16 @@
+@@ -871,13 +1377,16 @@ static struct console atmel_console = {
static int __init atmel_console_init(void)
{
if (atmel_default_console_device) {
console_initcall(atmel_console_init);
/*
-@@ -885,34 +1394,48 @@
+@@ -885,34 +1394,48 @@ console_initcall(atmel_console_init);
*/
static int __init atmel_late_console_init(void)
{
enable_irq_wake(port->irq);
else {
uart_suspend_port(&atmel_uart, port);
-@@ -925,13 +1448,12 @@
+@@ -925,13 +1448,12 @@ static int atmel_serial_suspend(struct p
static int atmel_serial_resume(struct platform_device *pdev)
{
struct uart_port *port = platform_get_drvdata(pdev);
disable_irq_wake(port->irq);
return 0;
-@@ -944,15 +1466,40 @@
+@@ -944,15 +1466,40 @@ static int atmel_serial_resume(struct pl
static int __devinit atmel_serial_probe(struct platform_device *pdev)
{
struct atmel_uart_port *port;
}
return ret;
-@@ -961,19 +1508,21 @@
+@@ -961,19 +1508,21 @@ static int __devinit atmel_serial_probe(
static int __devexit atmel_serial_remove(struct platform_device *pdev)
{
struct uart_port *port = platform_get_drvdata(pdev);
return ret;
}
-diff -urN linux-2.6.24.3/drivers/serial/atmel_serial.h avr32-2.6/drivers/serial/atmel_serial.h
---- linux-2.6.24.3/drivers/serial/atmel_serial.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/serial/atmel_serial.h 1970-01-01 01:00:00.000000000 +0100
+Index: linux-2.6.24.7/drivers/serial/atmel_serial.h
+===================================================================
+--- linux-2.6.24.7.orig/drivers/serial/atmel_serial.h
++++ /dev/null
@@ -1,127 +0,0 @@
-/*
- * drivers/serial/atmel_serial.h
-#define ATMEL_US_IF 0x4c /* IrDA Filter Register */
-
-#endif
-diff -urN linux-2.6.24.3/drivers/serial/Kconfig avr32-2.6/drivers/serial/Kconfig
---- linux-2.6.24.3/drivers/serial/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/serial/Kconfig 2008-04-23 20:12:44.000000000 +0200
-@@ -380,6 +380,21 @@
+Index: linux-2.6.24.7/drivers/serial/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/serial/Kconfig
++++ linux-2.6.24.7/drivers/serial/Kconfig
+@@ -380,6 +380,21 @@ config SERIAL_ATMEL_CONSOLE
console is the device which receives all kernel messages and
warnings and which allows logins in single user mode).
config SERIAL_ATMEL_TTYAT
bool "Install as device ttyATn instead of ttySn"
depends on SERIAL_ATMEL=y
-diff -urN linux-2.6.24.3/drivers/spi/atmel_spi.c avr32-2.6/drivers/spi/atmel_spi.c
---- linux-2.6.24.3/drivers/spi/atmel_spi.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/spi/atmel_spi.c 2008-04-23 20:12:44.000000000 +0200
-@@ -51,7 +51,9 @@
+Index: linux-2.6.24.7/drivers/spi/atmel_spi.c
+===================================================================
+--- linux-2.6.24.7.orig/drivers/spi/atmel_spi.c
++++ linux-2.6.24.7/drivers/spi/atmel_spi.c
+@@ -51,7 +51,9 @@ struct atmel_spi {
u8 stopping;
struct list_head queue;
struct spi_transfer *current_transfer;
void *buffer;
dma_addr_t buffer_dma;
-@@ -85,6 +87,16 @@
+@@ -113,6 +115,16 @@ static void cs_deactivate(struct atmel_s
unsigned gpio = (unsigned) spi->controller_data;
unsigned active = spi->mode & SPI_CS_HIGH;
u32 mr;
+ spi_writel(as, CSR0 + 4 * i, csr ^ SPI_BIT(CPOL));
+ }
- mr = spi_readl(as, MR);
- mr = SPI_BFINS(PCS, ~(1 << spi->chip_select), mr);
-@@ -121,6 +133,48 @@
+ /* only deactivate *this* device; sometimes transfers to
+ * another device may be active when this routine is called.
+@@ -131,6 +143,48 @@ static void cs_deactivate(struct atmel_s
gpio_set_value(gpio, !active);
}
/*
* Submit next transfer for DMA.
* lock is held, spi irq is blocked
-@@ -130,53 +184,78 @@
+@@ -140,53 +194,78 @@ static void atmel_spi_next_xfer(struct s
{
struct atmel_spi *as = spi_master_get_devdata(master);
struct spi_transfer *xfer;
* transfer because we need to handle some difficult timing
* issues otherwise. If we wait for ENDTX in one transfer and
* then starts waiting for ENDRX in the next, it's difficult
-@@ -186,17 +265,7 @@
+@@ -196,17 +275,7 @@ static void atmel_spi_next_xfer(struct s
*
* It should be doable, though. Just not now...
*/
spi_writel(as, PTCR, SPI_BIT(TXTEN) | SPI_BIT(RXTEN));
}
-@@ -294,6 +363,7 @@
+@@ -304,6 +373,7 @@ atmel_spi_msg_done(struct spi_master *ma
spin_lock(&as->lock);
as->current_transfer = NULL;
/* continue if needed */
if (list_empty(&as->queue) || as->stopping)
-@@ -377,7 +447,7 @@
+@@ -387,7 +457,7 @@ atmel_spi_interrupt(int irq, void *dev_i
spi_writel(as, IDR, pending);
msg->actual_length += xfer->len;
if (!msg->is_dma_mapped)
-@@ -387,7 +457,7 @@
+@@ -397,7 +467,7 @@ atmel_spi_interrupt(int irq, void *dev_i
if (xfer->delay_usecs)
udelay(xfer->delay_usecs);
/* report completed message */
atmel_spi_msg_done(master, as, msg, 0,
xfer->cs_change);
-@@ -490,9 +560,14 @@
+@@ -500,9 +570,14 @@ static int atmel_spi_setup(struct spi_de
if (!(spi->mode & SPI_CPHA))
csr |= SPI_BIT(NCPHA);
/* chipselect must have been muxed as GPIO (e.g. in board setup) */
npcs_pin = (unsigned int)spi->controller_data;
-diff -urN linux-2.6.24.3/drivers/usb/gadget/atmel_usba_udc.c avr32-2.6/drivers/usb/gadget/atmel_usba_udc.c
---- linux-2.6.24.3/drivers/usb/gadget/atmel_usba_udc.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/usb/gadget/atmel_usba_udc.c 2008-04-23 20:12:45.000000000 +0200
+Index: linux-2.6.24.7/drivers/usb/gadget/atmel_usba_udc.c
+===================================================================
+--- linux-2.6.24.7.orig/drivers/usb/gadget/atmel_usba_udc.c
++++ linux-2.6.24.7/drivers/usb/gadget/atmel_usba_udc.c
@@ -18,6 +18,7 @@
#include <linux/platform_device.h>
#include <linux/usb/ch9.h>
#ifdef CONFIG_USB_GADGET_DEBUG_FS
#include <linux/debugfs.h>
-@@ -324,53 +326,6 @@
+@@ -324,53 +326,6 @@ static int vbus_is_present(struct usba_u
return 1;
}
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" : "");
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;
}
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,
};
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,
.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);
sizeof(test_packet_buffer));
usba_ep_writel(ep, SET_STA, USBA_TX_PK_RDY);
dev_info(dev, "Entering Test_Packet mode...\n");
-@@ -1539,7 +1466,7 @@
+@@ -1539,7 +1466,7 @@ restart:
}
DBG(DBG_FIFO, "Copying ctrl request from 0x%p:\n", ep->fifo);
/* Free up one bank in the FIFO so that we can
* generate or receive a reply right away. */
-@@ -1911,7 +1838,7 @@
+@@ -1911,7 +1838,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);
return -ENXIO;
irq = platform_get_irq(pdev, 0);
-@@ -1959,16 +1886,44 @@
+@@ -1959,16 +1886,44 @@ static int __init usba_udc_probe(struct
usba_writel(udc, CTRL, 0);
clk_disable(pclk);
list_add_tail(&ep->ep.ep_list, &udc->gadget.ep_list);
}
-@@ -1987,7 +1942,7 @@
+@@ -1987,7 +1942,7 @@ static int __init usba_udc_probe(struct
goto err_device_add;
}
if (!gpio_request(pdata->vbus_pin, "atmel_usba_udc")) {
udc->vbus_pin = pdata->vbus_pin;
-@@ -2007,7 +1962,7 @@
+@@ -2007,7 +1962,7 @@ static int __init usba_udc_probe(struct
}
usba_init_debugfs(udc);
usba_ep_init_debugfs(udc, &usba_ep[i]);
return 0;
-@@ -2015,6 +1970,8 @@
+@@ -2015,6 +1970,8 @@ static int __init usba_udc_probe(struct
err_device_add:
free_irq(irq, udc);
err_request_irq:
iounmap(udc->fifo);
err_map_fifo:
iounmap(udc->regs);
-@@ -2032,10 +1989,11 @@
+@@ -2032,10 +1989,11 @@ static int __exit usba_udc_remove(struct
{
struct usba_udc *udc;
int i;
usba_ep_cleanup_debugfs(&usba_ep[i]);
usba_cleanup_debugfs(udc);
-diff -urN linux-2.6.24.3/drivers/video/atmel_lcdfb.c avr32-2.6/drivers/video/atmel_lcdfb.c
---- linux-2.6.24.3/drivers/video/atmel_lcdfb.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/video/atmel_lcdfb.c 2008-04-23 20:12:45.000000000 +0200
+Index: linux-2.6.24.7/drivers/video/atmel_lcdfb.c
+===================================================================
+--- linux-2.6.24.7.orig/drivers/video/atmel_lcdfb.c
++++ linux-2.6.24.7/drivers/video/atmel_lcdfb.c
@@ -16,6 +16,7 @@
#include <linux/fb.h>
#include <linux/init.h>
static inline void atmel_lcdfb_update_dma2d(struct atmel_lcdfb_info *sinfo,
struct fb_var_screeninfo *var)
-@@ -69,12 +72,113 @@
+@@ -69,12 +72,113 @@ static void atmel_lcdfb_update_dma2d(str
}
#endif
.ywrapstep = 0,
.accel = FB_ACCEL_NONE,
};
-@@ -148,6 +252,8 @@
+@@ -148,6 +252,8 @@ static int atmel_lcdfb_alloc_video_memor
return -ENOMEM;
}
return 0;
}
-@@ -203,6 +309,26 @@
+@@ -203,6 +309,26 @@ static int atmel_lcdfb_check_var(struct
var->transp.offset = var->transp.length = 0;
var->xoffset = var->yoffset = 0;
switch (var->bits_per_pixel) {
case 1:
case 2:
-@@ -370,10 +496,6 @@
+@@ -370,10 +496,6 @@ static int atmel_lcdfb_set_par(struct fb
/* Disable all interrupts */
lcdc_writel(sinfo, ATMEL_LCDC_IDR, ~0UL);
/* ...wait for DMA engine to become idle... */
while (lcdc_readl(sinfo, ATMEL_LCDC_DMACON) & ATMEL_LCDC_DMABUSY)
msleep(10);
-@@ -516,7 +638,6 @@
+@@ -516,7 +638,6 @@ static int __init atmel_lcdfb_init_fbinf
struct fb_info *info = sinfo->info;
int ret = 0;
info->var.activate |= FB_ACTIVATE_FORCE | FB_ACTIVATE_NOW;
dev_info(info->device,
-@@ -577,6 +698,7 @@
+@@ -577,6 +698,7 @@ static int __init atmel_lcdfb_probe(stru
sinfo->default_monspecs = pdata_sinfo->default_monspecs;
sinfo->atmel_lcdfb_power_control = pdata_sinfo->atmel_lcdfb_power_control;
sinfo->guard_time = pdata_sinfo->guard_time;
} else {
dev_err(dev, "cannot get default configuration\n");
goto free_info;
-@@ -645,6 +767,11 @@
+@@ -645,6 +767,11 @@ static int __init atmel_lcdfb_probe(stru
info->screen_base = ioremap(info->fix.smem_start, info->fix.smem_len);
if (!info->screen_base)
goto release_intmem;
} else {
/* alocate memory buffer */
ret = atmel_lcdfb_alloc_video_memory(sinfo);
-@@ -670,6 +797,9 @@
+@@ -670,6 +797,9 @@ static int __init atmel_lcdfb_probe(stru
goto release_mem;
}
/* interrupt */
ret = request_irq(sinfo->irq_base, atmel_lcdfb_interrupt, 0, pdev->name, info);
if (ret) {
-@@ -721,6 +851,7 @@
+@@ -721,6 +851,7 @@ free_cmap:
unregister_irqs:
free_irq(sinfo->irq_base, info);
unmap_mmio:
iounmap(sinfo->mmio);
release_mem:
release_mem_region(info->fix.mmio_start, info->fix.mmio_len);
-@@ -755,6 +886,7 @@
+@@ -755,6 +886,7 @@ static int __exit atmel_lcdfb_remove(str
if (!sinfo)
return 0;
if (sinfo->atmel_lcdfb_power_control)
sinfo->atmel_lcdfb_power_control(0);
unregister_framebuffer(info);
-@@ -781,6 +913,9 @@
+@@ -781,6 +913,9 @@ static int __exit atmel_lcdfb_remove(str
static struct platform_driver atmel_lcdfb_driver = {
.remove = __exit_p(atmel_lcdfb_remove),
.driver = {
.name = "atmel_lcdfb",
.owner = THIS_MODULE,
-diff -urN linux-2.6.24.3/drivers/video/backlight/Kconfig avr32-2.6/drivers/video/backlight/Kconfig
---- linux-2.6.24.3/drivers/video/backlight/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/video/backlight/Kconfig 2008-04-23 20:12:45.000000000 +0200
-@@ -50,6 +50,19 @@
+Index: linux-2.6.24.7/drivers/video/backlight/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/video/backlight/Kconfig
++++ linux-2.6.24.7/drivers/video/backlight/Kconfig
+@@ -50,6 +50,19 @@ config BACKLIGHT_CLASS_DEVICE
To have support for your specific LCD panel you will have to
select the proper drivers which depend on this option.
config BACKLIGHT_CORGI
tristate "Generic (aka Sharp Corgi) Backlight Driver"
depends on BACKLIGHT_CLASS_DEVICE
-diff -urN linux-2.6.24.3/drivers/video/console/Kconfig avr32-2.6/drivers/video/console/Kconfig
---- linux-2.6.24.3/drivers/video/console/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/video/console/Kconfig 2008-04-23 19:33:46.000000000 +0200
-@@ -6,7 +6,7 @@
+Index: linux-2.6.24.7/drivers/video/console/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/video/console/Kconfig
++++ linux-2.6.24.7/drivers/video/console/Kconfig
+@@ -6,7 +6,7 @@ menu "Console display driver support"
config VGA_CONSOLE
bool "VGA text console" if EMBEDDED || !X86
default y
help
Saying Y here will allow you to use Linux in text mode through a
-diff -urN linux-2.6.24.3/drivers/watchdog/Kconfig avr32-2.6/drivers/watchdog/Kconfig
---- linux-2.6.24.3/drivers/watchdog/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/drivers/watchdog/Kconfig 2008-04-23 20:12:45.000000000 +0200
-@@ -223,7 +223,7 @@
+Index: linux-2.6.24.7/drivers/watchdog/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/drivers/watchdog/Kconfig
++++ linux-2.6.24.7/drivers/watchdog/Kconfig
+@@ -223,7 +223,7 @@ config DAVINCI_WATCHDOG
config AT32AP700X_WDT
tristate "AT32AP700x watchdog"
help
Watchdog timer embedded into AT32AP700x devices. This will reboot
your system when the timeout is reached.
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/at32ap7000.h avr32-2.6/include/asm-avr32/arch-at32ap/at32ap7000.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/at32ap7000.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/at32ap7000.h 1970-01-01 01:00:00.000000000 +0100
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/at32ap7000.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/arch-at32ap/at32ap7000.h
++++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Pin definitions for AT32AP7000.
-#define GPIO_PIN_PE(N) (GPIO_PIOE_BASE + (N))
-
-#endif /* __ASM_ARCH_AT32AP7000_H__ */
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/at32ap700x.h avr32-2.6/include/asm-avr32/arch-at32ap/at32ap700x.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/at32ap700x.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/at32ap700x.h 2008-04-23 20:12:46.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/at32ap700x.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/include/asm-avr32/arch-at32ap/at32ap700x.h
@@ -0,0 +1,35 @@
+/*
+ * Pin definitions for AT32AP7000.
+#define GPIO_PIN_PE(N) (GPIO_PIOE_BASE + (N))
+
+#endif /* __ASM_ARCH_AT32AP700X_H__ */
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/board.h avr32-2.6/include/asm-avr32/arch-at32ap/board.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/board.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/board.h 2008-04-23 20:12:46.000000000 +0200
-@@ -38,9 +38,7 @@
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/board.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/arch-at32ap/board.h
++++ linux-2.6.24.7/include/asm-avr32/arch-at32ap/board.h
+@@ -38,9 +38,7 @@ struct platform_device *
at32_add_device_lcdc(unsigned int id, struct atmel_lcdfb_info *data,
unsigned long fbmem_start, unsigned long fbmem_len);
struct platform_device *
at32_add_device_usba(unsigned int id, struct usba_platform_data *data);
-@@ -51,6 +49,9 @@
+@@ -51,6 +49,9 @@ struct platform_device *
at32_add_device_ide(unsigned int id, unsigned int extint,
struct ide_platform_data *data);
/* depending on what's hooked up, not all SSC pins will be used */
#define ATMEL_SSC_TK 0x01
#define ATMEL_SSC_TF 0x02
-@@ -65,8 +66,17 @@
+@@ -65,8 +66,17 @@ at32_add_device_ide(unsigned int id, uns
struct platform_device *
at32_add_device_ssc(unsigned int id, unsigned int flags);
struct platform_device *at32_add_device_ac97c(unsigned int id);
struct platform_device *at32_add_device_abdac(unsigned int id);
-@@ -81,4 +91,7 @@
+@@ -81,4 +91,7 @@ struct platform_device *
at32_add_device_cf(unsigned int id, unsigned int extint,
struct cf_platform_data *data);
+at32_add_device_psif(unsigned int id);
+
#endif /* __ASM_ARCH_BOARD_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/cpu.h avr32-2.6/include/asm-avr32/arch-at32ap/cpu.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/cpu.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/cpu.h 2008-04-23 20:12:46.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/cpu.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/arch-at32ap/cpu.h
++++ linux-2.6.24.7/include/asm-avr32/arch-at32ap/cpu.h
@@ -14,7 +14,7 @@
* Only AT32AP7000 is defined for now. We can identify the specific
* chip at runtime, but I'm not sure if it's really worth it.
# define cpu_is_at32ap7000() (1)
#else
# define cpu_is_at32ap7000() (0)
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/io.h avr32-2.6/include/asm-avr32/arch-at32ap/io.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/io.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/io.h 2008-04-23 19:33:48.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/io.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/arch-at32ap/io.h
++++ linux-2.6.24.7/include/asm-avr32/arch-at32ap/io.h
@@ -4,7 +4,7 @@
/* For "bizarre" halfword swapping */
#include <linux/byteorder/swabb.h>
# define __swizzle_addr_b(addr) (addr ^ 1UL)
# define __swizzle_addr_w(addr) (addr)
# define __swizzle_addr_l(addr) (addr)
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/pm.h avr32-2.6/include/asm-avr32/arch-at32ap/pm.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/pm.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/pm.h 2008-04-23 20:12:46.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/pm.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/include/asm-avr32/arch-at32ap/pm.h
@@ -0,0 +1,48 @@
+/*
+ * AVR32 AP Power Management.
+#endif
+
+#endif /* __ASM_AVR32_ARCH_PM_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/portmux.h avr32-2.6/include/asm-avr32/arch-at32ap/portmux.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/portmux.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/portmux.h 2008-04-23 19:33:48.000000000 +0200
-@@ -26,4 +26,16 @@
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/portmux.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/arch-at32ap/portmux.h
++++ linux-2.6.24.7/include/asm-avr32/arch-at32ap/portmux.h
+@@ -26,4 +26,16 @@ void at32_select_periph(unsigned int pin
void at32_select_gpio(unsigned int pin, unsigned long flags);
void at32_reserve_pin(unsigned int pin);
+#endif /* CONFIG_GPIO_DEV */
+
#endif /* __ASM_ARCH_PORTMUX_H__ */
-diff -urN linux-2.6.24.3/include/asm-avr32/arch-at32ap/time.h avr32-2.6/include/asm-avr32/arch-at32ap/time.h
---- linux-2.6.24.3/include/asm-avr32/arch-at32ap/time.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/arch-at32ap/time.h 1970-01-01 01:00:00.000000000 +0100
+Index: linux-2.6.24.7/include/asm-avr32/arch-at32ap/time.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/arch-at32ap/time.h
++++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Copyright (C) 2007 Atmel Corporation
- __raw_writel((value), port + (0x40 * instance) + TIMER_##reg)
-
-#endif /* _ASM_AVR32_ARCH_AT32AP_TIME_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/asm.h avr32-2.6/include/asm-avr32/asm.h
---- linux-2.6.24.3/include/asm-avr32/asm.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/asm.h 2008-04-23 20:12:46.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/asm.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/asm.h
++++ linux-2.6.24.7/include/asm-avr32/asm.h
@@ -12,10 +12,10 @@
#include <asm/asm-offsets.h>
#include <asm/thread_info.h>
#ifdef CONFIG_FRAME_POINTER
.macro save_fp
-diff -urN linux-2.6.24.3/include/asm-avr32/byteorder.h avr32-2.6/include/asm-avr32/byteorder.h
---- linux-2.6.24.3/include/asm-avr32/byteorder.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/byteorder.h 2008-04-23 20:12:46.000000000 +0200
-@@ -12,8 +12,10 @@
+Index: linux-2.6.24.7/include/asm-avr32/byteorder.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/byteorder.h
++++ linux-2.6.24.7/include/asm-avr32/byteorder.h
+@@ -12,8 +12,10 @@ extern unsigned long __builtin_bswap_32(
extern unsigned short __builtin_bswap_16(unsigned short x);
#endif
#if !defined(__STRICT_ANSI__) || defined(__KERNEL__)
# define __BYTEORDER_HAS_U64__
-diff -urN linux-2.6.24.3/include/asm-avr32/dma-controller.h avr32-2.6/include/asm-avr32/dma-controller.h
---- linux-2.6.24.3/include/asm-avr32/dma-controller.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/dma-controller.h 2008-04-23 19:33:48.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/dma-controller.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/include/asm-avr32/dma-controller.h
@@ -0,0 +1,166 @@
+/*
+ * Copyright (C) 2005-2006 Atmel Corporation
+extern struct dma_controller *find_dma_controller(int id);
+
+#endif /* __ASM_AVR32_DMA_CONTROLLER_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/intc.h avr32-2.6/include/asm-avr32/intc.h
---- linux-2.6.24.3/include/asm-avr32/intc.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/intc.h 1970-01-01 01:00:00.000000000 +0100
+Index: linux-2.6.24.7/include/asm-avr32/intc.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/intc.h
++++ /dev/null
@@ -1,128 +0,0 @@
-#ifndef __ASM_AVR32_INTC_H
-#define __ASM_AVR32_INTC_H
-extern int intc_register_controller(struct irq_controller *ctrl);
-
-#endif /* __ASM_AVR32_INTC_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/irq.h avr32-2.6/include/asm-avr32/irq.h
---- linux-2.6.24.3/include/asm-avr32/irq.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/irq.h 2008-04-23 20:12:46.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/irq.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/irq.h
++++ linux-2.6.24.7/include/asm-avr32/irq.h
@@ -11,4 +11,14 @@
#define irq_canonicalize(i) (i)
+#endif
+
#endif /* __ASM_AVR32_IOCTLS_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/kdebug.h avr32-2.6/include/asm-avr32/kdebug.h
---- linux-2.6.24.3/include/asm-avr32/kdebug.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/kdebug.h 2008-04-23 19:33:48.000000000 +0200
+Index: linux-2.6.24.7/include/asm-avr32/kdebug.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/kdebug.h
++++ linux-2.6.24.7/include/asm-avr32/kdebug.h
@@ -5,6 +5,7 @@
enum die_val {
DIE_BREAKPOINT,
};
#endif /* __ASM_AVR32_KDEBUG_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/ocd.h avr32-2.6/include/asm-avr32/ocd.h
---- linux-2.6.24.3/include/asm-avr32/ocd.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/ocd.h 2008-04-23 19:33:48.000000000 +0200
-@@ -533,6 +533,11 @@
+Index: linux-2.6.24.7/include/asm-avr32/ocd.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/ocd.h
++++ linux-2.6.24.7/include/asm-avr32/ocd.h
+@@ -533,6 +533,11 @@ static inline void __ocd_write(unsigned
#define ocd_read(reg) __ocd_read(OCD_##reg)
#define ocd_write(reg, value) __ocd_write(OCD_##reg, value)
#endif /* !__ASSEMBLER__ */
#endif /* __ASM_AVR32_OCD_H */
-diff -urN linux-2.6.24.3/include/asm-avr32/pgtable.h avr32-2.6/include/asm-avr32/pgtable.h
---- linux-2.6.24.3/include/asm-avr32/pgtable.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/pgtable.h 2008-04-23 20:12:46.000000000 +0200
-@@ -157,6 +157,7 @@
+Index: linux-2.6.24.7/include/asm-avr32/pgtable.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/pgtable.h
++++ linux-2.6.24.7/include/asm-avr32/pgtable.h
+@@ -157,6 +157,7 @@ extern struct page *empty_zero_page;
#define _PAGE_S(x) _PAGE_NORMAL(x)
#define PAGE_COPY _PAGE_P(PAGE_WRITE | PAGE_READ)
#ifndef __ASSEMBLY__
/*
-diff -urN linux-2.6.24.3/include/asm-avr32/processor.h avr32-2.6/include/asm-avr32/processor.h
---- linux-2.6.24.3/include/asm-avr32/processor.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/processor.h 2008-04-23 19:33:48.000000000 +0200
-@@ -57,11 +57,25 @@
+Index: linux-2.6.24.7/include/asm-avr32/processor.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/processor.h
++++ linux-2.6.24.7/include/asm-avr32/processor.h
+@@ -57,11 +57,25 @@ struct avr32_cpuinfo {
unsigned short cpu_revision;
enum tlb_config tlb_config;
unsigned long features;
extern struct avr32_cpuinfo boot_cpu_data;
#ifdef CONFIG_SMP
-diff -urN linux-2.6.24.3/include/asm-avr32/ptrace.h avr32-2.6/include/asm-avr32/ptrace.h
---- linux-2.6.24.3/include/asm-avr32/ptrace.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/ptrace.h 2008-04-23 19:33:48.000000000 +0200
-@@ -121,7 +121,15 @@
+Index: linux-2.6.24.7/include/asm-avr32/ptrace.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/ptrace.h
++++ linux-2.6.24.7/include/asm-avr32/ptrace.h
+@@ -121,7 +121,15 @@ struct pt_regs {
};
#ifdef __KERNEL__
extern void show_regs (struct pt_regs *);
static __inline__ int valid_user_regs(struct pt_regs *regs)
-@@ -141,9 +149,6 @@
+@@ -141,9 +149,6 @@ static __inline__ int valid_user_regs(st
return 0;
}
#endif /* __KERNEL__ */
-diff -urN linux-2.6.24.3/include/asm-avr32/thread_info.h avr32-2.6/include/asm-avr32/thread_info.h
---- linux-2.6.24.3/include/asm-avr32/thread_info.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/asm-avr32/thread_info.h 2008-04-23 19:33:48.000000000 +0200
-@@ -88,6 +88,7 @@
+Index: linux-2.6.24.7/include/asm-avr32/thread_info.h
+===================================================================
+--- linux-2.6.24.7.orig/include/asm-avr32/thread_info.h
++++ linux-2.6.24.7/include/asm-avr32/thread_info.h
+@@ -88,6 +88,7 @@ static inline struct thread_info *curren
#define TIF_MEMDIE 6
#define TIF_RESTORE_SIGMASK 7 /* restore signal mask in do_signal */
#define TIF_CPU_GOING_TO_SLEEP 8 /* CPU is entering sleep 0 mode */
#define TIF_USERSPACE 31 /* true if FS sets userspace */
#define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
-diff -urN linux-2.6.24.3/include/linux/atmel_pwm.h avr32-2.6/include/linux/atmel_pwm.h
---- linux-2.6.24.3/include/linux/atmel_pwm.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/include/linux/atmel_pwm.h 2008-04-23 19:33:51.000000000 +0200
+Index: linux-2.6.24.7/include/linux/atmel_pwm.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/include/linux/atmel_pwm.h
@@ -0,0 +1,70 @@
+#ifndef __LINUX_ATMEL_PWM_H
+#define __LINUX_ATMEL_PWM_H
+}
+
+#endif /* __LINUX_ATMEL_PWM_H */
-diff -urN linux-2.6.24.3/include/linux/atmel_serial.h avr32-2.6/include/linux/atmel_serial.h
---- linux-2.6.24.3/include/linux/atmel_serial.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/include/linux/atmel_serial.h 2008-04-23 19:33:51.000000000 +0200
+Index: linux-2.6.24.7/include/linux/atmel_serial.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/include/linux/atmel_serial.h
@@ -0,0 +1,127 @@
+/*
+ * include/linux/atmel_serial.h
+#define ATMEL_US_IF 0x4c /* IrDA Filter Register */
+
+#endif
-diff -urN linux-2.6.24.3/include/linux/atmel_tc.h avr32-2.6/include/linux/atmel_tc.h
---- linux-2.6.24.3/include/linux/atmel_tc.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/include/linux/atmel_tc.h 2008-04-23 20:12:46.000000000 +0200
+Index: linux-2.6.24.7/include/linux/atmel_tc.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/include/linux/atmel_tc.h
@@ -0,0 +1,252 @@
+/*
+ * Timer/Counter Unit (TC) registers.
+#define ATMEL_TC_ETRGS (1 << 7) /* external trigger */
+
+#endif
-diff -urN linux-2.6.24.3/include/linux/usb/atmel_usba_udc.h avr32-2.6/include/linux/usb/atmel_usba_udc.h
---- linux-2.6.24.3/include/linux/usb/atmel_usba_udc.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/include/linux/usb/atmel_usba_udc.h 2008-04-23 20:12:47.000000000 +0200
+Index: linux-2.6.24.7/include/linux/usb/atmel_usba_udc.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/include/linux/usb/atmel_usba_udc.h
@@ -0,0 +1,22 @@
+/*
+ * Platform data definitions for Atmel USBA gadget driver.
+};
+
+#endif /* __LINUX_USB_USBA_H */
-diff -urN linux-2.6.24.3/include/video/atmel_lcdc.h avr32-2.6/include/video/atmel_lcdc.h
---- linux-2.6.24.3/include/video/atmel_lcdc.h 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/include/video/atmel_lcdc.h 2008-04-23 19:33:52.000000000 +0200
+Index: linux-2.6.24.7/include/video/atmel_lcdc.h
+===================================================================
+--- linux-2.6.24.7.orig/include/video/atmel_lcdc.h
++++ linux-2.6.24.7/include/video/atmel_lcdc.h
@@ -22,7 +22,7 @@
#ifndef __ATMEL_LCDC_H__
#define __ATMEL_LCDC_H__
struct atmel_lcdfb_info {
spinlock_t lock;
struct fb_info *info;
-@@ -33,7 +33,14 @@
+@@ -33,7 +33,14 @@ struct atmel_lcdfb_info {
struct platform_device *pdev;
struct clk *bus_clk;
struct clk *lcdc_clk;
unsigned int default_lcdcon2;
unsigned int default_dmacon;
void (*atmel_lcdfb_power_control)(int on);
-@@ -115,20 +122,20 @@
+@@ -115,20 +122,20 @@ struct atmel_lcdfb_info {
#define ATMEL_LCDC_MEMOR_LITTLE (1 << 31)
#define ATMEL_LCDC_TIM1 0x0808
#define ATMEL_LCDC_LCDFRMCFG 0x0810
#define ATMEL_LCDC_LINEVAL (0x7ff << 0)
-diff -urN linux-2.6.24.3/init/do_mounts.c avr32-2.6/init/do_mounts.c
---- linux-2.6.24.3/init/do_mounts.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/init/do_mounts.c 2008-04-23 20:12:47.000000000 +0200
-@@ -219,8 +219,14 @@
+Index: linux-2.6.24.7/init/do_mounts.c
+===================================================================
+--- linux-2.6.24.7.orig/init/do_mounts.c
++++ linux-2.6.24.7/init/do_mounts.c
+@@ -219,8 +219,14 @@ __setup("root=", root_dev_setup);
static int __init rootwait_setup(char *str)
{
root_wait = 1;
return 1;
}
-diff -urN linux-2.6.24.3/kernel/ptrace.c avr32-2.6/kernel/ptrace.c
---- linux-2.6.24.3/kernel/ptrace.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/kernel/ptrace.c 2008-04-23 20:12:47.000000000 +0200
-@@ -470,6 +470,8 @@
+Index: linux-2.6.24.7/kernel/ptrace.c
+===================================================================
+--- linux-2.6.24.7.orig/kernel/ptrace.c
++++ linux-2.6.24.7/kernel/ptrace.c
+@@ -470,6 +470,8 @@ asmlinkage long sys_ptrace(long request,
lock_kernel();
if (request == PTRACE_TRACEME) {
ret = ptrace_traceme();
goto out;
}
-diff -urN linux-2.6.24.3/MAINTAINERS avr32-2.6/MAINTAINERS
---- linux-2.6.24.3/MAINTAINERS 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/MAINTAINERS 2008-04-23 20:12:35.000000000 +0200
-@@ -671,6 +671,12 @@
+Index: linux-2.6.24.7/MAINTAINERS
+===================================================================
+--- linux-2.6.24.7.orig/MAINTAINERS
++++ linux-2.6.24.7/MAINTAINERS
+@@ -671,6 +671,12 @@ W: http://www.atmel.com/products/AT91/
W: http://www.at91.com/
S: Maintained
ATMEL LCDFB DRIVER
P: Nicolas Ferre
M: nicolas.ferre@atmel.com
-diff -urN linux-2.6.24.3/sound/avr32/ac97c.c avr32-2.6/sound/avr32/ac97c.c
---- linux-2.6.24.3/sound/avr32/ac97c.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/sound/avr32/ac97c.c 2008-04-23 19:33:54.000000000 +0200
+Index: linux-2.6.24.7/sound/avr32/ac97c.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/sound/avr32/ac97c.c
@@ -0,0 +1,914 @@
+/*
+ * Driver for the Atmel AC97 controller
+MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("Driver for Atmel AC97 Controller");
+MODULE_AUTHOR("Haavard Skinnemoen <hskinnemoen@atmel.com>");
-diff -urN linux-2.6.24.3/sound/avr32/ac97c.h avr32-2.6/sound/avr32/ac97c.h
---- linux-2.6.24.3/sound/avr32/ac97c.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/sound/avr32/ac97c.h 2008-04-23 19:33:54.000000000 +0200
+Index: linux-2.6.24.7/sound/avr32/ac97c.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/sound/avr32/ac97c.h
@@ -0,0 +1,71 @@
+/*
+ * Register definitions for the Atmel AC97 Controller.
+#define AC97C_CHANNEL_B 0x2
+
+#endif /* __SOUND_AVR32_AC97C_H */
-diff -urN linux-2.6.24.3/sound/avr32/Kconfig avr32-2.6/sound/avr32/Kconfig
---- linux-2.6.24.3/sound/avr32/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/sound/avr32/Kconfig 2008-04-23 19:33:54.000000000 +0200
+Index: linux-2.6.24.7/sound/avr32/Kconfig
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/sound/avr32/Kconfig
@@ -0,0 +1,11 @@
+menu "AVR32 devices"
+ depends on SND != n && AVR32
+ ALSA sound driver for the Atmel AC97 controller.
+
+endmenu
-diff -urN linux-2.6.24.3/sound/avr32/Makefile avr32-2.6/sound/avr32/Makefile
---- linux-2.6.24.3/sound/avr32/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/sound/avr32/Makefile 2008-04-23 19:33:54.000000000 +0200
+Index: linux-2.6.24.7/sound/avr32/Makefile
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/sound/avr32/Makefile
@@ -0,0 +1,3 @@
+snd-atmel-ac97-objs := ac97c.o
+
+obj-$(CONFIG_SND_ATMEL_AC97) += snd-atmel-ac97.o
-diff -urN linux-2.6.24.3/sound/Kconfig avr32-2.6/sound/Kconfig
---- linux-2.6.24.3/sound/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/sound/Kconfig 2008-04-23 19:33:54.000000000 +0200
-@@ -63,6 +63,8 @@
+Index: linux-2.6.24.7/sound/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/sound/Kconfig
++++ linux-2.6.24.7/sound/Kconfig
+@@ -63,6 +63,8 @@ source "sound/aoa/Kconfig"
source "sound/arm/Kconfig"
if SPI
source "sound/spi/Kconfig"
endif
-diff -urN linux-2.6.24.3/sound/Makefile avr32-2.6/sound/Makefile
---- linux-2.6.24.3/sound/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/sound/Makefile 2008-04-23 19:33:54.000000000 +0200
-@@ -6,7 +6,7 @@
+Index: linux-2.6.24.7/sound/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/sound/Makefile
++++ linux-2.6.24.7/sound/Makefile
+@@ -6,7 +6,7 @@ obj-$(CONFIG_SOUND_PRIME) += sound_firmw
obj-$(CONFIG_SOUND_PRIME) += oss/
obj-$(CONFIG_DMASOUND) += oss/
obj-$(CONFIG_SND) += core/ i2c/ drivers/ isa/ pci/ ppc/ arm/ sh/ synth/ usb/ \
obj-$(CONFIG_SND_AOA) += aoa/
# This one must be compilable even if sound is configured out
-diff -urN linux-2.6.24.3/sound/oss/at32_abdac.c avr32-2.6/sound/oss/at32_abdac.c
---- linux-2.6.24.3/sound/oss/at32_abdac.c 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/sound/oss/at32_abdac.c 2008-04-23 19:33:54.000000000 +0200
+Index: linux-2.6.24.7/sound/oss/at32_abdac.c
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/sound/oss/at32_abdac.c
@@ -0,0 +1,722 @@
+/*
+ * OSS Sound Driver for the Atmel AT32 on-chip DAC.
+MODULE_AUTHOR("Haavard Skinnemoen <hskinnemoen@atmel.com>");
+MODULE_DESCRIPTION("Sound Driver for the Atmel AT32 ABDAC");
+MODULE_LICENSE("GPL");
-diff -urN linux-2.6.24.3/sound/oss/at32_abdac.h avr32-2.6/sound/oss/at32_abdac.h
---- linux-2.6.24.3/sound/oss/at32_abdac.h 1970-01-01 01:00:00.000000000 +0100
-+++ avr32-2.6/sound/oss/at32_abdac.h 2008-04-23 19:33:54.000000000 +0200
+Index: linux-2.6.24.7/sound/oss/at32_abdac.h
+===================================================================
+--- /dev/null
++++ linux-2.6.24.7/sound/oss/at32_abdac.h
@@ -0,0 +1,59 @@
+/*
+ * Register definitions for the Atmel AT32 on-chip DAC.
+ __raw_writel((value), (port)->regs + DAC_##reg)
+
+#endif /* __SOUND_OSS_AT32_ABDAC_H__ */
-diff -urN linux-2.6.24.3/sound/oss/Kconfig avr32-2.6/sound/oss/Kconfig
---- linux-2.6.24.3/sound/oss/Kconfig 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/sound/oss/Kconfig 2008-04-23 19:33:54.000000000 +0200
-@@ -654,3 +654,7 @@
+Index: linux-2.6.24.7/sound/oss/Kconfig
+===================================================================
+--- linux-2.6.24.7.orig/sound/oss/Kconfig
++++ linux-2.6.24.7/sound/oss/Kconfig
+@@ -654,3 +654,7 @@ config SOUND_SH_DAC_AUDIO_CHANNEL
int "DAC channel"
default "1"
depends on SOUND_SH_DAC_AUDIO
+config SOUND_AT32_ABDAC
+ tristate "Atmel AT32 Audio Bitstream DAC (ABDAC) support"
+ depends on SOUND_PRIME && AVR32
-diff -urN linux-2.6.24.3/sound/oss/Makefile avr32-2.6/sound/oss/Makefile
---- linux-2.6.24.3/sound/oss/Makefile 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/sound/oss/Makefile 2008-04-23 20:12:49.000000000 +0200
-@@ -10,6 +10,7 @@
+Index: linux-2.6.24.7/sound/oss/Makefile
+===================================================================
+--- linux-2.6.24.7.orig/sound/oss/Makefile
++++ linux-2.6.24.7/sound/oss/Makefile
+@@ -10,6 +10,7 @@ obj-$(CONFIG_SOUND_CS4232) += cs4232.o a
# Please leave it as is, cause the link order is significant !
obj-$(CONFIG_SOUND_SH_DAC_AUDIO) += sh_dac_audio.o
obj-$(CONFIG_SOUND_HAL2) += hal2.o
obj-$(CONFIG_SOUND_AEDSP16) += aedsp16.o
-diff -urN linux-2.6.24.3/sound/spi/at73c213.c avr32-2.6/sound/spi/at73c213.c
---- linux-2.6.24.3/sound/spi/at73c213.c 2008-02-26 01:20:20.000000000 +0100
-+++ avr32-2.6/sound/spi/at73c213.c 2008-04-23 20:12:51.000000000 +0200
-@@ -744,7 +744,7 @@
+Index: linux-2.6.24.7/sound/spi/at73c213.c
+===================================================================
+--- linux-2.6.24.7.orig/sound/spi/at73c213.c
++++ linux-2.6.24.7/sound/spi/at73c213.c
+@@ -744,7 +744,7 @@ cleanup:
/*
* Device functions
*/
{
/*
* Continuous clock output.
-@@ -774,7 +774,7 @@
+@@ -774,7 +774,7 @@ static int snd_at73c213_ssc_init(struct
return 0;
}
{
int retval;
unsigned char dac_ctrl = 0;
-@@ -939,7 +939,7 @@
+@@ -939,7 +939,7 @@ out:
return retval;
}