summaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-3.6
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-10-24 13:05:22 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-10-24 13:05:22 +0000
commiteb0c0200624c487af549aca9eddb722413dbc1cd (patch)
treeb152afa6fd38537133c7a67e6aeff8476342d5a0 /target/linux/generic/patches-3.6
parent8b3c85ca8244eec0d01eea269922d780f73ccebb (diff)
[kernel] make all 3.6 patches apply and build
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33911 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/patches-3.6')
-rw-r--r--target/linux/generic/patches-3.6/060-hso_devices.patch2
-rw-r--r--target/linux/generic/patches-3.6/060-tcp-ecn-dont-delay-ACKS-after-CE.patch4
-rw-r--r--target/linux/generic/patches-3.6/100-overlayfs.patch152
-rw-r--r--target/linux/generic/patches-3.6/102-ehci_hcd_ignore_oc.patch8
-rw-r--r--target/linux/generic/patches-3.6/200-fix_localversion.patch2
-rw-r--r--target/linux/generic/patches-3.6/201-extra_optimization.patch4
-rw-r--r--target/linux/generic/patches-3.6/202-reduce_module_size.patch2
-rw-r--r--target/linux/generic/patches-3.6/211-stddef_include.patch4
-rw-r--r--target/linux/generic/patches-3.6/220-module_exports.patch6
-rw-r--r--target/linux/generic/patches-3.6/250-netfilter_depends.patch4
-rw-r--r--target/linux/generic/patches-3.6/252-mv_cesa_depends.patch2
-rw-r--r--target/linux/generic/patches-3.6/254-textsearch_kconfig_hacks.patch2
-rw-r--r--target/linux/generic/patches-3.6/255-lib80211_kconfig_hacks.patch2
-rw-r--r--target/linux/generic/patches-3.6/300-mips_expose_boot_raw.patch4
-rw-r--r--target/linux/generic/patches-3.6/301-mips_image_cmdline_hack.patch2
-rw-r--r--target/linux/generic/patches-3.6/304-mips_disable_fpu.patch6
-rw-r--r--target/linux/generic/patches-3.6/305-mips_module_reloc.patch10
-rw-r--r--target/linux/generic/patches-3.6/307-mips_oprofile_fix.patch16
-rw-r--r--target/linux/generic/patches-3.6/308-mips-show-correct-cpu-name-for-24KEc.patch2
-rw-r--r--target/linux/generic/patches-3.6/320-ppc4xx_optimization.patch2
-rw-r--r--target/linux/generic/patches-3.6/321-powerpc_crtsavres_prereq.patch10
-rw-r--r--target/linux/generic/patches-3.6/330-mips-add-crash-and-kdump-support.patch8
-rw-r--r--target/linux/generic/patches-3.6/331-mips-kexec-enhanche-the-support.patch2
-rw-r--r--target/linux/generic/patches-3.6/340-module_alloc_size_check.patch2
-rw-r--r--target/linux/generic/patches-3.6/400-rootfs_split.patch16
-rw-r--r--target/linux/generic/patches-3.6/401-partial_eraseblock_write.patch14
-rw-r--r--target/linux/generic/patches-3.6/420-redboot_space.patch2
-rw-r--r--target/linux/generic/patches-3.6/421-redboot_boardconfig.patch6
-rw-r--r--target/linux/generic/patches-3.6/440-block2mtd_init.patch16
-rw-r--r--target/linux/generic/patches-3.6/441-block2mtd_refresh.patch20
-rw-r--r--target/linux/generic/patches-3.6/442-block2mtd_probe.patch2
-rw-r--r--target/linux/generic/patches-3.6/450-mtd_plat_nand_chip_fixup.patch2
-rw-r--r--target/linux/generic/patches-3.6/460-cfi_cmdset_0002_no_erase_suspend.patch2
-rw-r--r--target/linux/generic/patches-3.6/470-mtd_m25p80_add_pm25lv_flash_support.patch6
-rw-r--r--target/linux/generic/patches-3.6/473-mtd_m25p80_add_w25q128.patch2
-rw-r--r--target/linux/generic/patches-3.6/475-mtd_cfi_cmdset_0002-add-buffer-write-cmd-timeout.patch2
-rw-r--r--target/linux/generic/patches-3.6/476-mtd-m25p80-allow-to-disable-small-sector-erase.patch8
-rw-r--r--target/linux/generic/patches-3.6/477-mtd-m25p80-add-support-for-the-EON-EN25Q64-chip.patch6
-rw-r--r--target/linux/generic/patches-3.6/478-mtd-partial_eraseblock_unlock.patch2
-rw-r--r--target/linux/generic/patches-3.6/500-yaffs_support.patch4
-rw-r--r--target/linux/generic/patches-3.6/502-yaffs_git_2010_10_20.patch6
-rw-r--r--target/linux/generic/patches-3.6/510-jffs2_make_lzma_available.patch8
-rw-r--r--target/linux/generic/patches-3.6/512-jffs2_eofdetect.patch9
-rw-r--r--target/linux/generic/patches-3.6/540-crypto-xz-decompression-support.patch2
-rw-r--r--target/linux/generic/patches-3.6/541-ubifs-xz-decompression-support.patch4
-rw-r--r--target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch2
-rw-r--r--target/linux/generic/patches-3.6/600-netfilter_layer7_2.22.patch10
-rw-r--r--target/linux/generic/patches-3.6/603-netfilter_layer7_2.6.36_fix.patch4
-rw-r--r--target/linux/generic/patches-3.6/604-netfilter_cisco_794x_iphone.patch47
-rw-r--r--target/linux/generic/patches-3.6/610-netfilter_match_bypass_default_checks.patch8
-rw-r--r--target/linux/generic/patches-3.6/611-netfilter_match_bypass_default_table.patch6
-rw-r--r--target/linux/generic/patches-3.6/613-netfilter_optional_tcp_window_check.patch6
-rw-r--r--target/linux/generic/patches-3.6/620-sched_esfq.patch6
-rw-r--r--target/linux/generic/patches-3.6/621-sched_act_connmark.patch2
-rw-r--r--target/linux/generic/patches-3.6/630-packet_socket_type.patch26
-rw-r--r--target/linux/generic/patches-3.6/642-bridge_port_isolate.patch10
-rw-r--r--target/linux/generic/patches-3.6/643-bridge_remove_ipv6_dependency.patch12
-rw-r--r--target/linux/generic/patches-3.6/644-bridge_optimize_netfilter_hooks.patch14
-rw-r--r--target/linux/generic/patches-3.6/650-pppoe_header_pad.patch4
-rw-r--r--target/linux/generic/patches-3.6/651-wireless_mesh_header.patch2
-rw-r--r--target/linux/generic/patches-3.6/653-disable_netlink_trim.patch2
-rw-r--r--target/linux/generic/patches-3.6/655-increase_skb_pad.patch2
-rw-r--r--target/linux/generic/patches-3.6/700-swconfig.patch2
-rw-r--r--target/linux/generic/patches-3.6/701-phy_extension.patch6
-rw-r--r--target/linux/generic/patches-3.6/702-phy_add_aneg_done_function.patch6
-rw-r--r--target/linux/generic/patches-3.6/710-phy-add-mdio_register_board_info.patch4
-rw-r--r--target/linux/generic/patches-3.6/720-phy_adm6996.patch6
-rw-r--r--target/linux/generic/patches-3.6/721-phy_packets.patch30
-rw-r--r--target/linux/generic/patches-3.6/722-phy_mvswitch.patch6
-rw-r--r--target/linux/generic/patches-3.6/723-phy_ip175c.patch4
-rw-r--r--target/linux/generic/patches-3.6/724-phy_ar8216.patch4
-rw-r--r--target/linux/generic/patches-3.6/725-phy_rtl8306.patch4
-rw-r--r--target/linux/generic/patches-3.6/726-phy_rtl8366.patch8
-rw-r--r--target/linux/generic/patches-3.6/727-phy-rtl8367.patch4
-rw-r--r--target/linux/generic/patches-3.6/728-phy-micrel.patch4
-rw-r--r--target/linux/generic/patches-3.6/729-phy-rtl8367b.patch4
-rw-r--r--target/linux/generic/patches-3.6/729-phy-tantos.patch6
-rw-r--r--target/linux/generic/patches-3.6/750-hostap_txpower.patch2
-rw-r--r--target/linux/generic/patches-3.6/810-pci_disable_common_quirks.patch14
-rw-r--r--target/linux/generic/patches-3.6/811-pci_disable_usb_common_quirks.patch29
-rw-r--r--target/linux/generic/patches-3.6/820-usb_add_usb_find_device_by_name.patch4
-rw-r--r--target/linux/generic/patches-3.6/830-ledtrig_morse.patch10
-rw-r--r--target/linux/generic/patches-3.6/831-ledtrig_netdev.patch6
-rw-r--r--target/linux/generic/patches-3.6/832-ledtrig_usbdev.patch6
-rw-r--r--target/linux/generic/patches-3.6/840-rtc7301.patch4
-rw-r--r--target/linux/generic/patches-3.6/841-rtc_pt7c4338.patch4
-rw-r--r--target/linux/generic/patches-3.6/862-gpio_spi_driver.patch4
-rw-r--r--target/linux/generic/patches-3.6/863-gpiommc.patch10
-rw-r--r--target/linux/generic/patches-3.6/865-gpiopwm.patch8
-rw-r--r--target/linux/generic/patches-3.6/880-gateworks_system_controller.patch6
-rw-r--r--target/linux/generic/patches-3.6/900-slab_maxsize.patch2
-rw-r--r--target/linux/generic/patches-3.6/910-kobject_uevent.patch2
-rw-r--r--target/linux/generic/patches-3.6/911-kobject_add_broadcast_uevent.patch2
-rw-r--r--target/linux/generic/patches-3.6/920-unable_to_open_console.patch2
-rw-r--r--target/linux/generic/patches-3.6/921-use_preinit_as_init.patch2
-rw-r--r--target/linux/generic/patches-3.6/930-crashlog.patch6
-rw-r--r--target/linux/generic/patches-3.6/940-ocf_kbuild_integration.patch2
-rw-r--r--target/linux/generic/patches-3.6/941-ocf_20120127.patch10
-rw-r--r--target/linux/generic/patches-3.6/950-vm_exports.patch55
-rw-r--r--target/linux/generic/patches-3.6/980-update_arm_machtypes.patch936
-rw-r--r--target/linux/generic/patches-3.6/992-mpcore_wdt_fix_watchdog_counter_loading.patch22
-rw-r--r--target/linux/generic/patches-3.6/993-mpcore_wdt_fix_wdioc_setoptions_handling.patch2
-rw-r--r--target/linux/generic/patches-3.6/994-mpcore_wdt_fix_timer_mode_setup.patch6
103 files changed, 1008 insertions, 806 deletions
diff --git a/target/linux/generic/patches-3.6/060-hso_devices.patch b/target/linux/generic/patches-3.6/060-hso_devices.patch
index 9b15c7572..14c5b9208 100644
--- a/target/linux/generic/patches-3.6/060-hso_devices.patch
+++ b/target/linux/generic/patches-3.6/060-hso_devices.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/usb/hso.c
+++ b/drivers/net/usb/hso.c
-@@ -476,8 +476,10 @@ static const struct usb_device_id hso_id
+@@ -468,8 +468,10 @@ static const struct usb_device_id hso_id
{USB_DEVICE(0x0af0, 0x8400)},
{USB_DEVICE(0x0af0, 0x8600)},
{USB_DEVICE(0x0af0, 0x8800)},
diff --git a/target/linux/generic/patches-3.6/060-tcp-ecn-dont-delay-ACKS-after-CE.patch b/target/linux/generic/patches-3.6/060-tcp-ecn-dont-delay-ACKS-after-CE.patch
index 547e4faf7..7fe3069df 100644
--- a/target/linux/generic/patches-3.6/060-tcp-ecn-dont-delay-ACKS-after-CE.patch
+++ b/target/linux/generic/patches-3.6/060-tcp-ecn-dont-delay-ACKS-after-CE.patch
@@ -44,11 +44,9 @@ To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
-diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
-index 2fd2bc9..fa2c2c2 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -237,7 +237,11 @@ static inline void TCP_ECN_check_ce(struct tcp_sock *tp, const struct sk_buff *s
+@@ -237,7 +237,11 @@ static inline void TCP_ECN_check_ce(stru
tcp_enter_quickack_mode((struct sock *)tp);
break;
case INET_ECN_CE:
diff --git a/target/linux/generic/patches-3.6/100-overlayfs.patch b/target/linux/generic/patches-3.6/100-overlayfs.patch
index dcc1eaacf..5ffeb0ed7 100644
--- a/target/linux/generic/patches-3.6/100-overlayfs.patch
+++ b/target/linux/generic/patches-3.6/100-overlayfs.patch
@@ -1,7 +1,6 @@
-diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/Locking vfs-3d5a648/Documentation/filesystems/Locking
---- vfs-4cbe5a5/Documentation/filesystems/Locking 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/Documentation/filesystems/Locking 2012-09-05 16:35:20.000000000 +0200
-@@ -64,6 +64,7 @@
+--- a/Documentation/filesystems/Locking
++++ b/Documentation/filesystems/Locking
+@@ -64,6 +64,7 @@ prototypes:
int (*atomic_open)(struct inode *, struct dentry *,
struct file *, unsigned open_flag,
umode_t create_mode, int *opened);
@@ -9,7 +8,7 @@ diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/Locking vfs-3d5a648/Docu
locking rules:
all may block
-@@ -92,6 +93,7 @@
+@@ -92,6 +93,7 @@ removexattr: yes
fiemap: no
update_time: no
atomic_open: yes
@@ -17,9 +16,8 @@ diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/Locking vfs-3d5a648/Docu
Additionally, ->rmdir(), ->unlink() and ->rename() have ->i_mutex on
victim.
-diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/overlayfs.txt vfs-3d5a648/Documentation/filesystems/overlayfs.txt
---- vfs-4cbe5a5/Documentation/filesystems/overlayfs.txt 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/Documentation/filesystems/overlayfs.txt 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/Documentation/filesystems/overlayfs.txt
@@ -0,0 +1,199 @@
+Written by: Neil Brown <neilb@suse.de>
+
@@ -220,10 +218,9 @@ diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/overlayfs.txt vfs-3d5a64
+filesystem are not allowed. If the underlying filesystem is changed,
+the behavior of the overlay is undefined, though it will not result in
+a crash or deadlock.
-diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/vfs.txt vfs-3d5a648/Documentation/filesystems/vfs.txt
---- vfs-4cbe5a5/Documentation/filesystems/vfs.txt 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/Documentation/filesystems/vfs.txt 2012-09-05 16:35:20.000000000 +0200
-@@ -363,6 +363,7 @@
+--- a/Documentation/filesystems/vfs.txt
++++ b/Documentation/filesystems/vfs.txt
+@@ -363,6 +363,7 @@ struct inode_operations {
int (*atomic_open)(struct inode *, struct dentry *,
struct file *, unsigned open_flag,
umode_t create_mode, int *opened);
@@ -231,7 +228,7 @@ diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/vfs.txt vfs-3d5a648/Docu
};
Again, all methods are called without any locks being held, unless
-@@ -692,6 +693,12 @@
+@@ -692,6 +693,12 @@ struct address_space_operations {
but instead uses bmap to find out where the blocks in the file
are and uses those addresses directly.
@@ -244,10 +241,9 @@ diff -Nur -x .git vfs-4cbe5a5/Documentation/filesystems/vfs.txt vfs-3d5a648/Docu
invalidatepage: If a page has PagePrivate set, then invalidatepage
will be called when part or all of the page is to be removed
-diff -Nur -x .git vfs-4cbe5a5/fs/ecryptfs/main.c vfs-3d5a648/fs/ecryptfs/main.c
---- vfs-4cbe5a5/fs/ecryptfs/main.c 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/ecryptfs/main.c 2012-09-05 16:35:20.000000000 +0200
-@@ -565,6 +565,13 @@
+--- a/fs/ecryptfs/main.c
++++ b/fs/ecryptfs/main.c
+@@ -566,6 +566,13 @@ static struct dentry *ecryptfs_mount(str
s->s_maxbytes = path.dentry->d_sb->s_maxbytes;
s->s_blocksize = path.dentry->d_sb->s_blocksize;
s->s_magic = ECRYPTFS_SUPER_MAGIC;
@@ -261,10 +257,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/ecryptfs/main.c vfs-3d5a648/fs/ecryptfs/main.c
inode = ecryptfs_get_inode(path.dentry->d_inode, s);
rc = PTR_ERR(inode);
-diff -Nur -x .git vfs-4cbe5a5/fs/internal.h vfs-3d5a648/fs/internal.h
---- vfs-4cbe5a5/fs/internal.h 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/internal.h 2012-09-05 16:35:20.000000000 +0200
-@@ -42,11 +42,6 @@
+--- a/fs/internal.h
++++ b/fs/internal.h
+@@ -42,11 +42,6 @@ static inline int __sync_blockdev(struct
extern void __init chrdev_init(void);
/*
@@ -276,10 +271,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/internal.h vfs-3d5a648/fs/internal.h
* namespace.c
*/
extern int copy_mount_options(const void __user *, unsigned long *);
-diff -Nur -x .git vfs-4cbe5a5/fs/Kconfig vfs-3d5a648/fs/Kconfig
---- vfs-4cbe5a5/fs/Kconfig 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/Kconfig 2012-09-05 16:35:20.000000000 +0200
-@@ -67,6 +67,7 @@
+--- a/fs/Kconfig
++++ b/fs/Kconfig
+@@ -67,6 +67,7 @@ source "fs/quota/Kconfig"
source "fs/autofs4/Kconfig"
source "fs/fuse/Kconfig"
@@ -287,10 +281,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/Kconfig vfs-3d5a648/fs/Kconfig
config CUSE
tristate "Character device in Userspace support"
-diff -Nur -x .git vfs-4cbe5a5/fs/Makefile vfs-3d5a648/fs/Makefile
---- vfs-4cbe5a5/fs/Makefile 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/Makefile 2012-09-05 16:35:20.000000000 +0200
-@@ -106,6 +106,7 @@
+--- a/fs/Makefile
++++ b/fs/Makefile
+@@ -106,6 +106,7 @@ obj-$(CONFIG_QNX6FS_FS) += qnx6/
obj-$(CONFIG_AUTOFS4_FS) += autofs4/
obj-$(CONFIG_ADFS_FS) += adfs/
obj-$(CONFIG_FUSE_FS) += fuse/
@@ -298,10 +291,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/Makefile vfs-3d5a648/fs/Makefile
obj-$(CONFIG_UDF_FS) += udf/
obj-$(CONFIG_SUN_OPENPROMFS) += openpromfs/
obj-$(CONFIG_OMFS_FS) += omfs/
-diff -Nur -x .git vfs-4cbe5a5/fs/namei.c vfs-3d5a648/fs/namei.c
---- vfs-4cbe5a5/fs/namei.c 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/namei.c 2012-09-05 16:35:20.000000000 +0200
-@@ -348,6 +348,7 @@
+--- a/fs/namei.c
++++ b/fs/namei.c
+@@ -348,6 +348,7 @@ int __inode_permission(struct inode *ino
return security_inode_permission(inode, mask);
}
@@ -309,7 +301,7 @@ diff -Nur -x .git vfs-4cbe5a5/fs/namei.c vfs-3d5a648/fs/namei.c
/**
* sb_permission - Check superblock-level permissions
-@@ -2822,9 +2823,12 @@
+@@ -2822,9 +2823,12 @@ finish_open_created:
error = may_open(&nd->path, acc_mode, open_flag);
if (error)
goto out;
@@ -325,10 +317,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/namei.c vfs-3d5a648/fs/namei.c
if (error == -EOPENSTALE)
goto stale_open;
goto out;
-diff -Nur -x .git vfs-4cbe5a5/fs/namespace.c vfs-3d5a648/fs/namespace.c
---- vfs-4cbe5a5/fs/namespace.c 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/namespace.c 2012-09-05 16:35:20.000000000 +0200
-@@ -1387,6 +1387,24 @@
+--- a/fs/namespace.c
++++ b/fs/namespace.c
+@@ -1387,6 +1387,24 @@ void drop_collected_mounts(struct vfsmou
release_mounts(&umount_list);
}
@@ -353,10 +344,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/namespace.c vfs-3d5a648/fs/namespace.c
int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
struct vfsmount *root)
{
-diff -Nur -x .git vfs-4cbe5a5/fs/open.c vfs-3d5a648/fs/open.c
---- vfs-4cbe5a5/fs/open.c 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/open.c 2012-09-05 16:35:20.000000000 +0200
-@@ -787,8 +787,7 @@
+--- a/fs/open.c
++++ b/fs/open.c
+@@ -787,8 +787,7 @@ struct file *dentry_open(const struct pa
return ERR_PTR(error);
f->f_flags = flags;
@@ -366,7 +356,7 @@ diff -Nur -x .git vfs-4cbe5a5/fs/open.c vfs-3d5a648/fs/open.c
if (!error) {
error = open_check_o_direct(f);
if (error) {
-@@ -803,6 +802,26 @@
+@@ -803,6 +802,26 @@ struct file *dentry_open(const struct pa
}
EXPORT_SYMBOL(dentry_open);
@@ -393,9 +383,8 @@ diff -Nur -x .git vfs-4cbe5a5/fs/open.c vfs-3d5a648/fs/open.c
static void __put_unused_fd(struct files_struct *files, unsigned int fd)
{
struct fdtable *fdt = files_fdtable(files);
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/copy_up.c vfs-3d5a648/fs/overlayfs/copy_up.c
---- vfs-4cbe5a5/fs/overlayfs/copy_up.c 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/copy_up.c 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/copy_up.c
@@ -0,0 +1,385 @@
+/*
+ *
@@ -782,9 +771,8 @@ diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/copy_up.c vfs-3d5a648/fs/overlayfs/co
+ dput(parent);
+ return err;
+}
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/dir.c vfs-3d5a648/fs/overlayfs/dir.c
---- vfs-4cbe5a5/fs/overlayfs/dir.c 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/dir.c 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/dir.c
@@ -0,0 +1,604 @@
+/*
+ *
@@ -1390,9 +1378,8 @@ diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/dir.c vfs-3d5a648/fs/overlayfs/dir.c
+ .listxattr = ovl_listxattr,
+ .removexattr = ovl_removexattr,
+};
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/inode.c vfs-3d5a648/fs/overlayfs/inode.c
---- vfs-4cbe5a5/fs/overlayfs/inode.c 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/inode.c 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/inode.c
@@ -0,0 +1,372 @@
+/*
+ *
@@ -1766,17 +1753,15 @@ diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/inode.c vfs-3d5a648/fs/overlayfs/inod
+ return inode;
+
+}
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/Kconfig vfs-3d5a648/fs/overlayfs/Kconfig
---- vfs-4cbe5a5/fs/overlayfs/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/Kconfig 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/Kconfig
@@ -0,0 +1,4 @@
+config OVERLAYFS_FS
+ tristate "Overlay filesystem support"
+ help
+ Add support for overlay filesystem.
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/Makefile vfs-3d5a648/fs/overlayfs/Makefile
---- vfs-4cbe5a5/fs/overlayfs/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/Makefile 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/Makefile
@@ -0,0 +1,7 @@
+#
+# Makefile for the overlay filesystem.
@@ -1785,9 +1770,8 @@ diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/Makefile vfs-3d5a648/fs/overlayfs/Mak
+obj-$(CONFIG_OVERLAYFS_FS) += overlayfs.o
+
+overlayfs-objs := super.o inode.o dir.o readdir.o copy_up.o
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/overlayfs.h vfs-3d5a648/fs/overlayfs/overlayfs.h
---- vfs-4cbe5a5/fs/overlayfs/overlayfs.h 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/overlayfs.h 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/overlayfs.h
@@ -0,0 +1,70 @@
+/*
+ *
@@ -1859,9 +1843,8 @@ diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/overlayfs.h vfs-3d5a648/fs/overlayfs/
+/* copy_up.c */
+int ovl_copy_up(struct dentry *dentry);
+int ovl_copy_up_truncate(struct dentry *dentry, loff_t size);
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/readdir.c vfs-3d5a648/fs/overlayfs/readdir.c
---- vfs-4cbe5a5/fs/overlayfs/readdir.c 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/readdir.c 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/readdir.c
@@ -0,0 +1,566 @@
+/*
+ *
@@ -2429,9 +2412,8 @@ diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/readdir.c vfs-3d5a648/fs/overlayfs/re
+
+ return err;
+}
-diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/super.c vfs-3d5a648/fs/overlayfs/super.c
---- vfs-4cbe5a5/fs/overlayfs/super.c 1970-01-01 01:00:00.000000000 +0100
-+++ vfs-3d5a648/fs/overlayfs/super.c 2012-09-05 16:35:20.000000000 +0200
+--- /dev/null
++++ b/fs/overlayfs/super.c
@@ -0,0 +1,685 @@
+/*
+ *
@@ -3118,10 +3100,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/overlayfs/super.c vfs-3d5a648/fs/overlayfs/supe
+
+module_init(ovl_init);
+module_exit(ovl_exit);
-diff -Nur -x .git vfs-4cbe5a5/fs/splice.c vfs-3d5a648/fs/splice.c
---- vfs-4cbe5a5/fs/splice.c 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/fs/splice.c 2012-09-05 16:35:20.000000000 +0200
-@@ -1308,6 +1308,7 @@
+--- a/fs/splice.c
++++ b/fs/splice.c
+@@ -1308,6 +1308,7 @@ long do_splice_direct(struct file *in, l
return ret;
}
@@ -3129,10 +3110,9 @@ diff -Nur -x .git vfs-4cbe5a5/fs/splice.c vfs-3d5a648/fs/splice.c
static int splice_pipe_to_pipe(struct pipe_inode_info *ipipe,
struct pipe_inode_info *opipe,
-diff -Nur -x .git vfs-4cbe5a5/include/linux/fs.h vfs-3d5a648/include/linux/fs.h
---- vfs-4cbe5a5/include/linux/fs.h 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/include/linux/fs.h 2012-09-05 16:35:20.000000000 +0200
-@@ -505,6 +505,12 @@
+--- a/include/linux/fs.h
++++ b/include/linux/fs.h
+@@ -505,6 +505,12 @@ struct iattr {
*/
#include <linux/quota.h>
@@ -3145,7 +3125,7 @@ diff -Nur -x .git vfs-4cbe5a5/include/linux/fs.h vfs-3d5a648/include/linux/fs.h
/**
* enum positive_aop_returns - aop return codes with specific semantics
*
-@@ -1578,6 +1584,11 @@
+@@ -1578,6 +1584,11 @@ struct super_block {
/* Being remounted read-only */
int s_readonly_remount;
@@ -3157,7 +3137,7 @@ diff -Nur -x .git vfs-4cbe5a5/include/linux/fs.h vfs-3d5a648/include/linux/fs.h
};
/* superblock cache pruning functions */
-@@ -1835,6 +1846,7 @@
+@@ -1835,6 +1846,7 @@ struct inode_operations {
int (*atomic_open)(struct inode *, struct dentry *,
struct file *, unsigned open_flag,
umode_t create_mode, int *opened);
@@ -3165,7 +3145,7 @@ diff -Nur -x .git vfs-4cbe5a5/include/linux/fs.h vfs-3d5a648/include/linux/fs.h
} ____cacheline_aligned;
struct seq_file;
-@@ -2199,6 +2211,7 @@
+@@ -2199,6 +2211,7 @@ extern long do_sys_open(int dfd, const c
extern struct file *filp_open(const char *, int, umode_t);
extern struct file *file_open_root(struct dentry *, struct vfsmount *,
const char *, int);
@@ -3173,7 +3153,7 @@ diff -Nur -x .git vfs-4cbe5a5/include/linux/fs.h vfs-3d5a648/include/linux/fs.h
extern struct file * dentry_open(const struct path *, int, const struct cred *);
extern int filp_close(struct file *, fl_owner_t id);
extern char * getname(const char __user *);
-@@ -2402,6 +2415,7 @@
+@@ -2402,6 +2415,7 @@ extern sector_t bmap(struct inode *, sec
#endif
extern int notify_change(struct dentry *, struct iattr *);
extern int inode_permission(struct inode *, int);
@@ -3181,10 +3161,9 @@ diff -Nur -x .git vfs-4cbe5a5/include/linux/fs.h vfs-3d5a648/include/linux/fs.h
extern int generic_permission(struct inode *, int);
static inline bool execute_ok(struct inode *inode)
-diff -Nur -x .git vfs-4cbe5a5/include/linux/mount.h vfs-3d5a648/include/linux/mount.h
---- vfs-4cbe5a5/include/linux/mount.h 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/include/linux/mount.h 2012-09-05 16:35:20.000000000 +0200
-@@ -66,6 +66,9 @@
+--- a/include/linux/mount.h
++++ b/include/linux/mount.h
+@@ -66,6 +66,9 @@ extern void mnt_pin(struct vfsmount *mnt
extern void mnt_unpin(struct vfsmount *mnt);
extern int __mnt_is_readonly(struct vfsmount *mnt);
@@ -3194,10 +3173,9 @@ diff -Nur -x .git vfs-4cbe5a5/include/linux/mount.h vfs-3d5a648/include/linux/mo
struct file_system_type;
extern struct vfsmount *vfs_kern_mount(struct file_system_type *type,
int flags, const char *name,
-diff -Nur -x .git vfs-4cbe5a5/MAINTAINERS vfs-3d5a648/MAINTAINERS
---- vfs-4cbe5a5/MAINTAINERS 2012-09-01 19:39:58.000000000 +0200
-+++ vfs-3d5a648/MAINTAINERS 2012-09-05 16:35:20.000000000 +0200
-@@ -5103,6 +5103,13 @@
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -5105,6 +5105,13 @@ F: drivers/scsi/osd/
F: include/scsi/osd_*
F: fs/exofs/
diff --git a/target/linux/generic/patches-3.6/102-ehci_hcd_ignore_oc.patch b/target/linux/generic/patches-3.6/102-ehci_hcd_ignore_oc.patch
index 400d2ed8e..bf1815a2e 100644
--- a/target/linux/generic/patches-3.6/102-ehci_hcd_ignore_oc.patch
+++ b/target/linux/generic/patches-3.6/102-ehci_hcd_ignore_oc.patch
@@ -1,6 +1,6 @@
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
-@@ -795,7 +795,7 @@ static int ehci_run (struct usb_hcd *hcd
+@@ -645,7 +645,7 @@ static int ehci_run (struct usb_hcd *hcd
"USB %x.%x started, EHCI %x.%02x%s\n",
((ehci->sbrn & 0xf0)>>4), (ehci->sbrn & 0x0f),
temp >> 8, temp & 0xff,
@@ -11,7 +11,7 @@
&ehci->regs->intr_enable); /* Turn On Interrupts */
--- a/drivers/usb/host/ehci-hub.c
+++ b/drivers/usb/host/ehci-hub.c
-@@ -578,7 +578,7 @@ ehci_hub_status_data (struct usb_hcd *hc
+@@ -585,7 +585,7 @@ ehci_hub_status_data (struct usb_hcd *hc
* always set, seem to clear PORT_OCC and PORT_CSC when writing to
* PORT_POWER; that's surprising, but maybe within-spec.
*/
@@ -20,7 +20,7 @@
mask = PORT_CSC | PORT_PEC | PORT_OCC;
else
mask = PORT_CSC | PORT_PEC;
-@@ -803,7 +803,7 @@ static int ehci_hub_control (
+@@ -804,7 +804,7 @@ static int ehci_hub_control (
if (temp & PORT_PEC)
status |= USB_PORT_STAT_C_ENABLE << 16;
@@ -31,7 +31,7 @@
/*
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
-@@ -147,6 +147,7 @@ struct ehci_hcd { /* one per controlle
+@@ -197,6 +197,7 @@ struct ehci_hcd { /* one per controlle
unsigned use_dummy_qh:1; /* AMD Frame List table quirk*/
unsigned has_synopsys_hc_bug:1; /* Synopsys HC */
unsigned frame_index_bug:1; /* MosChip (AKA NetMos) */
diff --git a/target/linux/generic/patches-3.6/200-fix_localversion.patch b/target/linux/generic/patches-3.6/200-fix_localversion.patch
index 0d1bae8d4..6c16dd1b4 100644
--- a/target/linux/generic/patches-3.6/200-fix_localversion.patch
+++ b/target/linux/generic/patches-3.6/200-fix_localversion.patch
@@ -1,6 +1,6 @@
--- a/scripts/setlocalversion
+++ b/scripts/setlocalversion
-@@ -168,7 +168,7 @@ else
+@@ -167,7 +167,7 @@ else
# annotated or signed tagged state (as git describe only
# looks at signed or annotated tags - git tag -a/-s) and
# LOCALVERSION= is not specified
diff --git a/target/linux/generic/patches-3.6/201-extra_optimization.patch b/target/linux/generic/patches-3.6/201-extra_optimization.patch
index 6fe8b0938..ac2610845 100644
--- a/target/linux/generic/patches-3.6/201-extra_optimization.patch
+++ b/target/linux/generic/patches-3.6/201-extra_optimization.patch
@@ -1,6 +1,6 @@
--- a/Makefile
+++ b/Makefile
-@@ -559,9 +559,9 @@ endif # $(dot-config)
+@@ -556,9 +556,9 @@ endif # $(dot-config)
all: vmlinux
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
@@ -12,7 +12,7 @@
endif
include $(srctree)/arch/$(SRCARCH)/Makefile
-@@ -620,6 +620,9 @@ endif
+@@ -627,6 +627,9 @@ endif
NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)
CHECKFLAGS += $(NOSTDINC_FLAGS)
diff --git a/target/linux/generic/patches-3.6/202-reduce_module_size.patch b/target/linux/generic/patches-3.6/202-reduce_module_size.patch
index bca1e356a..6cc81f58b 100644
--- a/target/linux/generic/patches-3.6/202-reduce_module_size.patch
+++ b/target/linux/generic/patches-3.6/202-reduce_module_size.patch
@@ -1,6 +1,6 @@
--- a/Makefile
+++ b/Makefile
-@@ -374,7 +374,7 @@ KBUILD_CFLAGS_KERNEL :=
+@@ -369,7 +369,7 @@ KBUILD_CFLAGS_KERNEL :=
KBUILD_AFLAGS := -D__ASSEMBLY__
KBUILD_AFLAGS_MODULE := -DMODULE
KBUILD_CFLAGS_MODULE := -DMODULE
diff --git a/target/linux/generic/patches-3.6/211-stddef_include.patch b/target/linux/generic/patches-3.6/211-stddef_include.patch
index 7fe248d8d..1a8e48276 100644
--- a/target/linux/generic/patches-3.6/211-stddef_include.patch
+++ b/target/linux/generic/patches-3.6/211-stddef_include.patch
@@ -1,6 +1,6 @@
--- a/include/linux/stddef.h
+++ b/include/linux/stddef.h
-@@ -16,6 +16,7 @@ enum {
+@@ -12,6 +12,7 @@ enum {
false = 0,
true = 1
};
@@ -8,7 +8,7 @@
#undef offsetof
#ifdef __compiler_offsetof
-@@ -23,6 +24,5 @@ enum {
+@@ -19,6 +20,5 @@ enum {
#else
#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
#endif
diff --git a/target/linux/generic/patches-3.6/220-module_exports.patch b/target/linux/generic/patches-3.6/220-module_exports.patch
index be6b6ff9d..8acb18f83 100644
--- a/target/linux/generic/patches-3.6/220-module_exports.patch
+++ b/target/linux/generic/patches-3.6/220-module_exports.patch
@@ -28,7 +28,7 @@
#ifndef SYMBOL_PREFIX
#define VMLINUX_SYMBOL(sym) sym
#else
-@@ -275,14 +296,14 @@
+@@ -276,14 +297,14 @@
/* Kernel symbol table: Normal symbols */ \
__ksymtab : AT(ADDR(__ksymtab) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__start___ksymtab) = .; \
@@ -45,7 +45,7 @@
VMLINUX_SYMBOL(__stop___ksymtab_gpl) = .; \
} \
\
-@@ -344,7 +365,7 @@
+@@ -345,7 +366,7 @@
\
/* Kernel symbol table: strings */ \
__ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
@@ -54,7 +54,7 @@
} \
\
/* __*init sections */ \
-@@ -676,6 +697,9 @@
+@@ -670,6 +691,9 @@
EXIT_TEXT \
EXIT_DATA \
EXIT_CALL \
diff --git a/target/linux/generic/patches-3.6/250-netfilter_depends.patch b/target/linux/generic/patches-3.6/250-netfilter_depends.patch
index cbe389231..f0c2275c0 100644
--- a/target/linux/generic/patches-3.6/250-netfilter_depends.patch
+++ b/target/linux/generic/patches-3.6/250-netfilter_depends.patch
@@ -1,6 +1,6 @@
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -181,7 +181,6 @@ config NF_CONNTRACK_FTP
+@@ -191,7 +191,6 @@ config NF_CONNTRACK_FTP
config NF_CONNTRACK_H323
tristate "H.323 protocol support"
@@ -8,7 +8,7 @@
depends on NETFILTER_ADVANCED
help
H.323 is a VoIP signalling protocol from ITU-T. As one of the most
-@@ -627,7 +626,6 @@ config NETFILTER_XT_TARGET_SECMARK
+@@ -693,7 +692,6 @@ config NETFILTER_XT_TARGET_SECMARK
config NETFILTER_XT_TARGET_TCPMSS
tristate '"TCPMSS" target support'
diff --git a/target/linux/generic/patches-3.6/252-mv_cesa_depends.patch b/target/linux/generic/patches-3.6/252-mv_cesa_depends.patch
index 53701458a..fee28db12 100644
--- a/target/linux/generic/patches-3.6/252-mv_cesa_depends.patch
+++ b/target/linux/generic/patches-3.6/252-mv_cesa_depends.patch
@@ -1,6 +1,6 @@
--- a/drivers/crypto/Kconfig
+++ b/drivers/crypto/Kconfig
-@@ -172,6 +172,7 @@ config CRYPTO_DEV_MV_CESA
+@@ -164,6 +164,7 @@ config CRYPTO_DEV_MV_CESA
depends on PLAT_ORION
select CRYPTO_ALGAPI
select CRYPTO_AES
diff --git a/target/linux/generic/patches-3.6/254-textsearch_kconfig_hacks.patch b/target/linux/generic/patches-3.6/254-textsearch_kconfig_hacks.patch
index 1659fda93..690642d6a 100644
--- a/target/linux/generic/patches-3.6/254-textsearch_kconfig_hacks.patch
+++ b/target/linux/generic/patches-3.6/254-textsearch_kconfig_hacks.patch
@@ -1,6 +1,6 @@
--- a/lib/Kconfig
+++ b/lib/Kconfig
-@@ -207,16 +207,16 @@ config BCH_CONST_T
+@@ -277,16 +277,16 @@ config BCH_CONST_T
# Textsearch support is select'ed if needed
#
config TEXTSEARCH
diff --git a/target/linux/generic/patches-3.6/255-lib80211_kconfig_hacks.patch b/target/linux/generic/patches-3.6/255-lib80211_kconfig_hacks.patch
index 8dde331a9..0c4b92e24 100644
--- a/target/linux/generic/patches-3.6/255-lib80211_kconfig_hacks.patch
+++ b/target/linux/generic/patches-3.6/255-lib80211_kconfig_hacks.patch
@@ -1,6 +1,6 @@
--- a/net/wireless/Kconfig
+++ b/net/wireless/Kconfig
-@@ -143,13 +143,13 @@ config LIB80211
+@@ -150,13 +150,13 @@ config LIB80211
you want this built into your kernel.
config LIB80211_CRYPT_WEP
diff --git a/target/linux/generic/patches-3.6/300-mips_expose_boot_raw.patch b/target/linux/generic/patches-3.6/300-mips_expose_boot_raw.patch
index b114ef404..e74803dff 100644
--- a/target/linux/generic/patches-3.6/300-mips_expose_boot_raw.patch
+++ b/target/linux/generic/patches-3.6/300-mips_expose_boot_raw.patch
@@ -8,7 +8,7 @@ Acked-by: Rob Landley <rob@landley.net>
---
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -877,9 +877,6 @@ config ARC
+@@ -894,9 +894,6 @@ config ARC
config ARCH_MAY_HAVE_PC_FDC
bool
@@ -18,7 +18,7 @@ Acked-by: Rob Landley <rob@landley.net>
config CEVT_BCM1480
bool
-@@ -2330,6 +2327,18 @@ config USE_OF
+@@ -2367,6 +2364,18 @@ config USE_OF
help
Include support for flattened device tree machine descriptions.
diff --git a/target/linux/generic/patches-3.6/301-mips_image_cmdline_hack.patch b/target/linux/generic/patches-3.6/301-mips_image_cmdline_hack.patch
index 9193c68f0..df09b5a70 100644
--- a/target/linux/generic/patches-3.6/301-mips_image_cmdline_hack.patch
+++ b/target/linux/generic/patches-3.6/301-mips_image_cmdline_hack.patch
@@ -1,6 +1,6 @@
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -976,6 +976,10 @@ config SYNC_R4K
+@@ -993,6 +993,10 @@ config SYNC_R4K
config MIPS_MACHINE
def_bool n
diff --git a/target/linux/generic/patches-3.6/304-mips_disable_fpu.patch b/target/linux/generic/patches-3.6/304-mips_disable_fpu.patch
index e747feac6..dab490ab4 100644
--- a/target/linux/generic/patches-3.6/304-mips_disable_fpu.patch
+++ b/target/linux/generic/patches-3.6/304-mips_disable_fpu.patch
@@ -8,7 +8,7 @@ Signed-off-by: Florian Fainelli <florian@openwrt.org>
--
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -961,6 +961,17 @@ config I8259
+@@ -978,6 +978,17 @@ config I8259
config MIPS_BONITO64
bool
@@ -92,7 +92,7 @@ Signed-off-by: Florian Fainelli <florian@openwrt.org>
+#endif /* CONFIG_MIPS_FPU_EMU */
--- a/arch/mips/math-emu/dsemul.c
+++ b/arch/mips/math-emu/dsemul.c
-@@ -109,6 +109,7 @@ int mips_dsemul(struct pt_regs *regs, mi
+@@ -108,6 +108,7 @@ int mips_dsemul(struct pt_regs *regs, mi
return SIGILL; /* force out of emulation loop */
}
@@ -100,7 +100,7 @@ Signed-off-by: Florian Fainelli <florian@openwrt.org>
int do_dsemulret(struct pt_regs *xcp)
{
struct emuframe __user *fr;
-@@ -165,3 +166,9 @@ int do_dsemulret(struct pt_regs *xcp)
+@@ -164,3 +165,9 @@ int do_dsemulret(struct pt_regs *xcp)
return 1;
}
diff --git a/target/linux/generic/patches-3.6/305-mips_module_reloc.patch b/target/linux/generic/patches-3.6/305-mips_module_reloc.patch
index 2dcbf951f..fea4a0012 100644
--- a/target/linux/generic/patches-3.6/305-mips_module_reloc.patch
+++ b/target/linux/generic/patches-3.6/305-mips_module_reloc.patch
@@ -13,7 +13,7 @@
--- a/arch/mips/include/asm/module.h
+++ b/arch/mips/include/asm/module.h
-@@ -9,6 +9,11 @@ struct mod_arch_specific {
+@@ -11,6 +11,11 @@ struct mod_arch_specific {
const struct exception_table_entry *dbe_start;
const struct exception_table_entry *dbe_end;
struct mips_hi16 *r_mips_hi16_list;
@@ -27,7 +27,7 @@
typedef uint8_t Elf64_Byte; /* Type for a 8-bit quantity. */
--- a/arch/mips/kernel/module.c
+++ b/arch/mips/kernel/module.c
-@@ -44,14 +44,219 @@ static struct mips_hi16 *mips_hi16_list;
+@@ -42,14 +42,219 @@ struct mips_hi16 {
static LIST_HEAD(dbe_list);
static DEFINE_SPINLOCK(dbe_lock);
@@ -248,7 +248,7 @@
static int apply_r_mips_none(struct module *me, u32 *location, Elf_Addr v)
{
-@@ -72,28 +277,36 @@ static int apply_r_mips_32_rela(struct m
+@@ -70,28 +275,36 @@ static int apply_r_mips_32_rela(struct m
return 0;
}
@@ -301,7 +301,7 @@
{
if (v % 4) {
pr_err("module %s: dangerous R_MIPS_26 RELArelocation\n",
-@@ -102,17 +315,31 @@ static int apply_r_mips_26_rela(struct m
+@@ -100,17 +313,31 @@ static int apply_r_mips_26_rela(struct m
}
if ((v & 0xf0000000) != (((unsigned long)location + 4) & 0xf0000000)) {
@@ -336,7 +336,7 @@
static int apply_r_mips_hi16_rel(struct module *me, u32 *location, Elf_Addr v)
{
struct mips_hi16 *n;
-@@ -380,11 +607,32 @@ int module_finalize(const Elf_Ehdr *hdr,
+@@ -405,11 +632,32 @@ int module_finalize(const Elf_Ehdr *hdr,
list_add(&me->arch.dbe_list, &dbe_list);
spin_unlock_irq(&dbe_lock);
}
diff --git a/target/linux/generic/patches-3.6/307-mips_oprofile_fix.patch b/target/linux/generic/patches-3.6/307-mips_oprofile_fix.patch
index f83c96bb8..bed578645 100644
--- a/target/linux/generic/patches-3.6/307-mips_oprofile_fix.patch
+++ b/target/linux/generic/patches-3.6/307-mips_oprofile_fix.patch
@@ -1,7 +1,7 @@
--- a/arch/mips/oprofile/op_model_mipsxx.c
+++ b/arch/mips/oprofile/op_model_mipsxx.c
-@@ -298,6 +298,11 @@ static void reset_counters(void *arg)
- }
+@@ -303,6 +303,11 @@ static irqreturn_t mipsxx_perfcount_int(
+ return mipsxx_perfcount_handler();
}
+static irqreturn_t mipsxx_perfcount_int(int irq, void *dev_id)
@@ -12,9 +12,9 @@
static int __init mipsxx_init(void)
{
int counters;
-@@ -374,6 +379,10 @@ static int __init mipsxx_init(void)
- save_perf_irq = perf_irq;
- perf_irq = mipsxx_perfcount_handler;
+@@ -385,6 +390,10 @@ static int __init mipsxx_init(void)
+ return request_irq(cp0_perfcount_irq, mipsxx_perfcount_int,
+ 0, "Perfcounter", save_perf_irq);
+ if (cp0_perfcount_irq >= 0)
+ return request_irq(cp0_perfcount_irq, mipsxx_perfcount_int,
@@ -23,9 +23,9 @@
return 0;
}
-@@ -381,6 +390,9 @@ static void mipsxx_exit(void)
- {
- int counters = op_model_mipsxx_ops.num_counters;
+@@ -395,6 +404,9 @@ static void mipsxx_exit(void)
+ if ((cp0_perfcount_irq >= 0) && (cp0_compare_irq != cp0_perfcount_irq))
+ free_irq(cp0_perfcount_irq, save_perf_irq);
+ if (cp0_perfcount_irq >= 0)
+ free_irq(cp0_perfcount_irq, save_perf_irq);
diff --git a/target/linux/generic/patches-3.6/308-mips-show-correct-cpu-name-for-24KEc.patch b/target/linux/generic/patches-3.6/308-mips-show-correct-cpu-name-for-24KEc.patch
index ac6304a2b..7d16726f0 100644
--- a/target/linux/generic/patches-3.6/308-mips-show-correct-cpu-name-for-24KEc.patch
+++ b/target/linux/generic/patches-3.6/308-mips-show-correct-cpu-name-for-24KEc.patch
@@ -1,6 +1,6 @@
--- a/arch/mips/kernel/cpu-probe.c
+++ b/arch/mips/kernel/cpu-probe.c
-@@ -816,10 +816,13 @@ static inline void cpu_probe_mips(struct
+@@ -833,10 +833,13 @@ static inline void cpu_probe_mips(struct
__cpu_name[cpu] = "MIPS 20Kc";
break;
case PRID_IMP_24K:
diff --git a/target/linux/generic/patches-3.6/320-ppc4xx_optimization.patch b/target/linux/generic/patches-3.6/320-ppc4xx_optimization.patch
index 3f67f1b6c..885f347d9 100644
--- a/target/linux/generic/patches-3.6/320-ppc4xx_optimization.patch
+++ b/target/linux/generic/patches-3.6/320-ppc4xx_optimization.patch
@@ -3,7 +3,7 @@ they still want to support gcc 3.3 -- well, we don't.
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
-@@ -130,7 +130,8 @@ ifeq ($(CONFIG_FUNCTION_TRACER),y)
+@@ -119,7 +119,8 @@ ifeq ($(CONFIG_FUNCTION_TRACER),y)
KBUILD_CFLAGS += -mno-sched-epilog
endif
diff --git a/target/linux/generic/patches-3.6/321-powerpc_crtsavres_prereq.patch b/target/linux/generic/patches-3.6/321-powerpc_crtsavres_prereq.patch
index 941aa909d..fe5d7c576 100644
--- a/target/linux/generic/patches-3.6/321-powerpc_crtsavres_prereq.patch
+++ b/target/linux/generic/patches-3.6/321-powerpc_crtsavres_prereq.patch
@@ -1,10 +1,10 @@
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
-@@ -94,7 +94,6 @@ else
- endif
- endif
+@@ -86,7 +86,6 @@ CPP = $(CC) -E $(KBUILD_CFLAGS)
+
+ CHECKFLAGS += -m$(CONFIG_WORD_SIZE) -D__powerpc__ -D__powerpc$(CONFIG_WORD_SIZE)__
-KBUILD_LDFLAGS_MODULE += arch/powerpc/lib/crtsavres.o
- ifeq ($(CONFIG_TUNE_CELL),y)
- KBUILD_CFLAGS += $(call cc-option,-mtune=cell)
+ # No AltiVec or VSX instructions when building kernel
+ KBUILD_CFLAGS += $(call cc-option,-mno-altivec)
diff --git a/target/linux/generic/patches-3.6/330-mips-add-crash-and-kdump-support.patch b/target/linux/generic/patches-3.6/330-mips-add-crash-and-kdump-support.patch
index 7a79c4144..e94ef650a 100644
--- a/target/linux/generic/patches-3.6/330-mips-add-crash-and-kdump-support.patch
+++ b/target/linux/generic/patches-3.6/330-mips-add-crash-and-kdump-support.patch
@@ -437,7 +437,7 @@ Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
#include <asm/addrspace.h>
#include <asm/bootinfo.h>
-@@ -523,12 +524,62 @@ static void __init arch_mem_init(char **
+@@ -522,12 +523,62 @@ static void __init arch_mem_init(char **
}
bootmem_init();
@@ -500,7 +500,7 @@ Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
static void __init resource_init(void)
{
int i;
-@@ -544,6 +595,8 @@ static void __init resource_init(void)
+@@ -543,6 +594,8 @@ static void __init resource_init(void)
/*
* Request address space for all standard RAM.
*/
@@ -509,7 +509,7 @@ Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
for (i = 0; i < boot_mem_map.nr_map; i++) {
struct resource *res;
unsigned long start, end;
-@@ -580,6 +633,7 @@ static void __init resource_init(void)
+@@ -579,6 +632,7 @@ static void __init resource_init(void)
*/
request_resource(res, &code_resource);
request_resource(res, &data_resource);
@@ -519,7 +519,7 @@ Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
--- a/arch/mips/kernel/smp.c
+++ b/arch/mips/kernel/smp.c
-@@ -433,3 +433,21 @@ void flush_tlb_one(unsigned long vaddr)
+@@ -386,3 +386,21 @@ void flush_tlb_one(unsigned long vaddr)
EXPORT_SYMBOL(flush_tlb_page);
EXPORT_SYMBOL(flush_tlb_one);
diff --git a/target/linux/generic/patches-3.6/331-mips-kexec-enhanche-the-support.patch b/target/linux/generic/patches-3.6/331-mips-kexec-enhanche-the-support.patch
index 5ffc2e29b..c98fc24a4 100644
--- a/target/linux/generic/patches-3.6/331-mips-kexec-enhanche-the-support.patch
+++ b/target/linux/generic/patches-3.6/331-mips-kexec-enhanche-the-support.patch
@@ -146,7 +146,7 @@ Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
- .size relocate_new_kernel_size, PTRSIZE
--- a/arch/mips/kernel/vmlinux.lds.S
+++ b/arch/mips/kernel/vmlinux.lds.S
-@@ -50,6 +50,10 @@ SECTIONS
+@@ -51,6 +51,10 @@ SECTIONS
*(.text.*)
*(.fixup)
*(.gnu.warning)
diff --git a/target/linux/generic/patches-3.6/340-module_alloc_size_check.patch b/target/linux/generic/patches-3.6/340-module_alloc_size_check.patch
index 549df5a66..ea9ee53c4 100644
--- a/target/linux/generic/patches-3.6/340-module_alloc_size_check.patch
+++ b/target/linux/generic/patches-3.6/340-module_alloc_size_check.patch
@@ -1,6 +1,6 @@
--- a/kernel/module.c
+++ b/kernel/module.c
-@@ -2322,12 +2322,15 @@ static void dynamic_debug_remove(struct
+@@ -2353,12 +2353,15 @@ static void dynamic_debug_remove(struct
void * __weak module_alloc(unsigned long size)
{
diff --git a/target/linux/generic/patches-3.6/400-rootfs_split.patch b/target/linux/generic/patches-3.6/400-rootfs_split.patch
index 6dc433bd5..976f56002 100644
--- a/target/linux/generic/patches-3.6/400-rootfs_split.patch
+++ b/target/linux/generic/patches-3.6/400-rootfs_split.patch
@@ -31,11 +31,11 @@
*/
#define PART(x) ((struct mtd_part *)(x))
-
-+#define IS_PART(mtd) (mtd->read == part_read)
++#define IS_PART(mtd) (mtd->_read == part_read)
/*
* MTD methods which simply translate the effective address and pass through
-@@ -643,6 +645,155 @@ int mtd_del_partition(struct mtd_info *m
+@@ -613,6 +615,155 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -55,7 +55,7 @@
+ struct squashfs_super_block sb;
+ int len, ret;
+
-+ ret = master->read(master, offset, sizeof(sb), &len, (void *) &sb);
++ ret = master->_read(master, offset, sizeof(sb), &len, (void *) &sb);
+ if (ret || (len != sizeof(sb))) {
+ printk(KERN_ALERT "split_squashfs: error occured while reading "
+ "from \"%s\"\n", master->name);
@@ -191,7 +191,7 @@
/*
* This function, given a master MTD object and a partition table, creates
* and registers slave MTD objects which are bound to the master according to
-@@ -659,6 +810,9 @@ int add_mtd_partitions(struct mtd_info *
+@@ -629,6 +780,9 @@ int add_mtd_partitions(struct mtd_info *
struct mtd_part *slave;
uint64_t cur_offset = 0;
int i;
@@ -201,7 +201,7 @@
printk(KERN_NOTICE "Creating %d MTD partitions on \"%s\":\n", nbparts, master->name);
-@@ -673,12 +827,53 @@ int add_mtd_partitions(struct mtd_info *
+@@ -643,12 +797,53 @@ int add_mtd_partitions(struct mtd_info *
add_mtd_device(&slave->mtd);
@@ -257,7 +257,7 @@
--- a/drivers/mtd/mtdchar.c
+++ b/drivers/mtd/mtdchar.c
-@@ -1005,6 +1005,12 @@ static int mtdchar_ioctl(struct file *fi
+@@ -1012,6 +1012,12 @@ static int mtdchar_ioctl(struct file *fi
break;
}
@@ -280,7 +280,7 @@
struct mtd_info {
u_char type;
uint32_t flags;
-@@ -214,6 +215,9 @@ struct mtd_info {
+@@ -226,6 +227,9 @@ struct mtd_info {
int (*_block_markbad) (struct mtd_info *mtd, loff_t ofs);
int (*_suspend) (struct mtd_info *mtd);
void (*_resume) (struct mtd_info *mtd);
@@ -290,7 +290,7 @@
/*
* If the driver is something smart, like UBI, it may need to maintain
* its own reference counting. The below functions are only for driver.
-@@ -502,6 +506,7 @@ extern int mtd_device_parse_register(str
+@@ -375,6 +379,7 @@ extern int mtd_device_parse_register(str
int defnr_parts);
#define mtd_device_register(master, parts, nr_parts) \
mtd_device_parse_register(master, NULL, NULL, parts, nr_parts)
diff --git a/target/linux/generic/patches-3.6/401-partial_eraseblock_write.patch b/target/linux/generic/patches-3.6/401-partial_eraseblock_write.patch
index 24b93448c..f2fa3676f 100644
--- a/target/linux/generic/patches-3.6/401-partial_eraseblock_write.patch
+++ b/target/linux/generic/patches-3.6/401-partial_eraseblock_write.patch
@@ -9,7 +9,7 @@
/* Our partition linked list */
static LIST_HEAD(mtd_partitions);
static DEFINE_MUTEX(mtd_partitions_mutex);
-@@ -252,13 +254,60 @@ static int part_erase(struct mtd_info *m
+@@ -230,13 +232,60 @@ static int part_erase(struct mtd_info *m
struct mtd_part *part = PART(mtd);
int ret;
@@ -70,21 +70,21 @@
return ret;
}
-@@ -266,7 +315,25 @@ void mtd_erase_callback(struct erase_inf
+@@ -244,7 +293,25 @@ void mtd_erase_callback(struct erase_inf
{
- if (instr->mtd->erase == part_erase) {
+ if (instr->mtd->_erase == part_erase) {
struct mtd_part *part = PART(instr->mtd);
+ size_t wrlen = 0;
+ if (instr->mtd->flags & MTD_ERASE_PARTIAL) {
+ if (instr->partial_start) {
-+ part->master->write(part->master,
++ part->master->_write(part->master,
+ instr->addr, instr->erase_buf_ofs,
+ &wrlen, instr->erase_buf);
+ instr->addr += instr->erase_buf_ofs;
+ } else {
+ instr->len -= instr->erase_buf_ofs;
-+ part->master->write(part->master,
++ part->master->_write(part->master,
+ instr->addr + instr->len,
+ instr->erase_buf_ofs, &wrlen,
+ instr->erase_buf +
@@ -96,7 +96,7 @@
if (instr->fail_addr != MTD_FAIL_ADDR_UNKNOWN)
instr->fail_addr -= part->offset;
instr->addr -= part->offset;
-@@ -537,18 +604,24 @@ static struct mtd_part *allocate_partiti
+@@ -504,18 +571,24 @@ static struct mtd_part *allocate_partiti
if ((slave->mtd.flags & MTD_WRITEABLE) &&
mtd_mod_by_eb(slave->offset, &slave->mtd)) {
/* Doesn't start on a boundary of major erase size */
@@ -129,7 +129,7 @@
+ part->name);
slave->mtd.ecclayout = master->ecclayout;
- if (master->block_isbad) {
+ slave->mtd.ecc_strength = master->ecc_strength;
--- a/include/linux/mtd/mtd.h
+++ b/include/linux/mtd/mtd.h
@@ -58,6 +58,10 @@ struct erase_info {
diff --git a/target/linux/generic/patches-3.6/420-redboot_space.patch b/target/linux/generic/patches-3.6/420-redboot_space.patch
index fb6700b07..f74affcef 100644
--- a/target/linux/generic/patches-3.6/420-redboot_space.patch
+++ b/target/linux/generic/patches-3.6/420-redboot_space.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
-@@ -267,14 +267,21 @@ static int parse_redboot_partitions(stru
+@@ -265,14 +265,21 @@ static int parse_redboot_partitions(stru
#endif
names += strlen(names)+1;
diff --git a/target/linux/generic/patches-3.6/421-redboot_boardconfig.patch b/target/linux/generic/patches-3.6/421-redboot_boardconfig.patch
index db8377b30..4191b0d42 100644
--- a/target/linux/generic/patches-3.6/421-redboot_boardconfig.patch
+++ b/target/linux/generic/patches-3.6/421-redboot_boardconfig.patch
@@ -17,7 +17,7 @@
int nrparts = 0;
struct fis_image_desc *buf;
struct mtd_partition *parts;
-@@ -227,14 +230,14 @@ static int parse_redboot_partitions(stru
+@@ -225,14 +228,14 @@ static int parse_redboot_partitions(stru
}
}
#endif
@@ -34,7 +34,7 @@
#ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED
if (nulllen > 0) {
strcpy(nullname, nullstring);
-@@ -253,6 +256,8 @@ static int parse_redboot_partitions(stru
+@@ -251,6 +254,8 @@ static int parse_redboot_partitions(stru
}
#endif
for ( ; i<nrparts; i++) {
@@ -43,7 +43,7 @@
parts[i].size = fl->img->size;
parts[i].offset = fl->img->flash_base;
parts[i].name = names;
-@@ -286,6 +291,14 @@ static int parse_redboot_partitions(stru
+@@ -284,6 +289,14 @@ static int parse_redboot_partitions(stru
fl = fl->next;
kfree(tmp_fl);
}
diff --git a/target/linux/generic/patches-3.6/440-block2mtd_init.patch b/target/linux/generic/patches-3.6/440-block2mtd_init.patch
index 00208c870..d87b59b56 100644
--- a/target/linux/generic/patches-3.6/440-block2mtd_init.patch
+++ b/target/linux/generic/patches-3.6/440-block2mtd_init.patch
@@ -8,7 +8,7 @@
#include <linux/mutex.h>
#include <linux/mount.h>
#include <linux/slab.h>
-@@ -231,11 +232,12 @@ static void block2mtd_free_device(struct
+@@ -208,11 +209,12 @@ static void block2mtd_free_device(struct
/* FIXME: ensure that mtd->size % erase_size == 0 */
@@ -22,7 +22,7 @@
char *name;
if (!devname)
-@@ -274,13 +276,16 @@ static struct block2mtd_dev *add_device(
+@@ -251,13 +253,16 @@ static struct block2mtd_dev *add_device(
/* Setup the MTD structure */
/* make the name contain the block device in */
@@ -41,7 +41,7 @@
dev->mtd.erasesize = erase_size;
dev->mtd.writesize = 1;
dev->mtd.writebufsize = PAGE_SIZE;
-@@ -294,14 +299,17 @@ static struct block2mtd_dev *add_device(
+@@ -270,14 +275,17 @@ static struct block2mtd_dev *add_device(
dev->mtd.priv = dev;
dev->mtd.owner = THIS_MODULE;
@@ -62,7 +62,7 @@
return dev;
devinit_err:
-@@ -374,9 +382,9 @@ static char block2mtd_paramline[80 + 12]
+@@ -350,9 +358,9 @@ static char block2mtd_paramline[80 + 12]
static int block2mtd_setup2(const char *val)
{
@@ -74,7 +74,7 @@
char *name;
size_t erase_size = PAGE_SIZE;
int i, ret;
-@@ -387,7 +395,7 @@ static int block2mtd_setup2(const char *
+@@ -363,7 +371,7 @@ static int block2mtd_setup2(const char *
strcpy(str, val);
kill_final_newline(str);
@@ -83,7 +83,7 @@
token[i] = strsep(&str, ",");
if (str)
-@@ -406,8 +414,10 @@ static int block2mtd_setup2(const char *
+@@ -382,8 +390,10 @@ static int block2mtd_setup2(const char *
parse_err("illegal erase size");
}
}
@@ -95,7 +95,7 @@
return 0;
}
-@@ -441,7 +451,7 @@ static int block2mtd_setup(const char *v
+@@ -417,7 +427,7 @@ static int block2mtd_setup(const char *v
module_param_call(block2mtd, block2mtd_setup, NULL, NULL, 0200);
@@ -106,7 +106,7 @@
{
--- a/block/partition-generic.c
+++ b/block/partition-generic.c
-@@ -546,6 +546,7 @@ int invalidate_partitions(struct gendisk
+@@ -548,6 +548,7 @@ int invalidate_partitions(struct gendisk
return 0;
}
diff --git a/target/linux/generic/patches-3.6/441-block2mtd_refresh.patch b/target/linux/generic/patches-3.6/441-block2mtd_refresh.patch
index bbaddf7de..d54e52900 100644
--- a/target/linux/generic/patches-3.6/441-block2mtd_refresh.patch
+++ b/target/linux/generic/patches-3.6/441-block2mtd_refresh.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
-@@ -29,6 +29,8 @@
+@@ -29,6 +29,8 @@ struct block2mtd_dev {
struct block_device *blkdev;
struct mtd_info mtd;
struct mutex write_mutex;
@@ -9,7 +9,7 @@
};
-@@ -79,6 +81,12 @@
+@@ -79,6 +81,12 @@ static int block2mtd_erase(struct mtd_in
size_t len = instr->len;
int err;
@@ -22,7 +22,7 @@
instr->state = MTD_ERASING;
mutex_lock(&dev->write_mutex);
err = _block2mtd_erase(dev, from, len);
-@@ -90,6 +98,10 @@
+@@ -90,6 +98,10 @@ static int block2mtd_erase(struct mtd_in
instr->state = MTD_ERASE_DONE;
mtd_erase_callback(instr);
@@ -33,7 +33,7 @@
return err;
}
-@@ -101,7 +113,13 @@
+@@ -101,7 +113,13 @@ static int block2mtd_read(struct mtd_inf
struct page *page;
int index = from >> PAGE_SHIFT;
int offset = from & (PAGE_SIZE-1);
@@ -48,7 +48,7 @@
while (len) {
if ((offset + len) > PAGE_SIZE)
-@@ -111,8 +129,10 @@
+@@ -111,8 +129,10 @@ static int block2mtd_read(struct mtd_inf
len = len - cpylen;
page = page_read(dev->blkdev->bd_inode->i_mapping, index);
@@ -60,7 +60,7 @@
memcpy(buf, page_address(page) + offset, cpylen);
page_cache_release(page);
-@@ -123,7 +143,10 @@
+@@ -123,7 +143,10 @@ static int block2mtd_read(struct mtd_inf
offset = 0;
index++;
}
@@ -72,7 +72,7 @@
}
-@@ -171,13 +194,22 @@
+@@ -171,13 +194,22 @@ static int block2mtd_write(struct mtd_in
size_t *retlen, const u_char *buf)
{
struct block2mtd_dev *dev = mtd->priv;
@@ -96,7 +96,7 @@
return err;
}
-@@ -186,33 +218,110 @@
+@@ -186,33 +218,110 @@ static int block2mtd_write(struct mtd_in
static void block2mtd_sync(struct mtd_info *mtd)
{
struct block2mtd_dev *dev = mtd->priv;
@@ -217,7 +217,7 @@
struct block2mtd_dev *dev;
struct mtd_partition *part;
char *name;
-@@ -220,36 +329,17 @@
+@@ -220,36 +329,17 @@ static struct block2mtd_dev *add_device(
if (!devname)
return NULL;
@@ -258,7 +258,7 @@
/* Setup the MTD structure */
/* make the name contain the block device in */
-@@ -274,6 +364,7 @@
+@@ -274,6 +364,7 @@ static struct block2mtd_dev *add_device(
dev->mtd._read = block2mtd_read;
dev->mtd.priv = dev;
dev->mtd.owner = THIS_MODULE;
diff --git a/target/linux/generic/patches-3.6/442-block2mtd_probe.patch b/target/linux/generic/patches-3.6/442-block2mtd_probe.patch
index c427e9fd0..328748611 100644
--- a/target/linux/generic/patches-3.6/442-block2mtd_probe.patch
+++ b/target/linux/generic/patches-3.6/442-block2mtd_probe.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
-@@ -268,6 +268,7 @@ static int _open_bdev(struct block2mtd_d
+@@ -241,6 +241,7 @@ static int _open_bdev(struct block2mtd_d
/* We might not have rootfs mounted at this point. Try
to resolve the device name by other means. */
diff --git a/target/linux/generic/patches-3.6/450-mtd_plat_nand_chip_fixup.patch b/target/linux/generic/patches-3.6/450-mtd_plat_nand_chip_fixup.patch
index fd2b9b57b..5c6b02827 100644
--- a/target/linux/generic/patches-3.6/450-mtd_plat_nand_chip_fixup.patch
+++ b/target/linux/generic/patches-3.6/450-mtd_plat_nand_chip_fixup.patch
@@ -15,7 +15,7 @@
/* Keep gcc happy */
--- a/drivers/mtd/nand/plat_nand.c
+++ b/drivers/mtd/nand/plat_nand.c
-@@ -93,7 +93,18 @@ static int __devinit plat_nand_probe(str
+@@ -98,7 +98,18 @@ static int __devinit plat_nand_probe(str
}
/* Scan to find existence of the device */
diff --git a/target/linux/generic/patches-3.6/460-cfi_cmdset_0002_no_erase_suspend.patch b/target/linux/generic/patches-3.6/460-cfi_cmdset_0002_no_erase_suspend.patch
index 0c4b9bea0..0cdec9ede 100644
--- a/target/linux/generic/patches-3.6/460-cfi_cmdset_0002_no_erase_suspend.patch
+++ b/target/linux/generic/patches-3.6/460-cfi_cmdset_0002_no_erase_suspend.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
-@@ -682,7 +682,7 @@ static int get_chip(struct map_info *map
+@@ -700,7 +700,7 @@ static int get_chip(struct map_info *map
return 0;
case FL_ERASING:
diff --git a/target/linux/generic/patches-3.6/470-mtd_m25p80_add_pm25lv_flash_support.patch b/target/linux/generic/patches-3.6/470-mtd_m25p80_add_pm25lv_flash_support.patch
index ff27d04f8..76989506a 100644
--- a/target/linux/generic/patches-3.6/470-mtd_m25p80_add_pm25lv_flash_support.patch
+++ b/target/linux/generic/patches-3.6/470-mtd_m25p80_add_pm25lv_flash_support.patch
@@ -8,7 +8,7 @@
#define OPCODE_SE 0xd8 /* Sector erase (usually 64KiB) */
#define OPCODE_RDID 0x9f /* Read JEDEC ID */
-@@ -625,6 +626,7 @@ struct flash_info {
+@@ -594,6 +595,7 @@ struct flash_info {
u16 flags;
#define SECT_4K 0x01 /* OPCODE_BE_4K works uniformly */
#define M25P_NO_ERASE 0x02 /* No erase command needed */
@@ -16,7 +16,7 @@
};
#define INFO(_jedec_id, _ext_id, _sector_size, _n_sectors, _flags) \
-@@ -686,6 +688,10 @@ static const struct spi_device_id m25p_i
+@@ -659,6 +661,10 @@ static const struct spi_device_id m25p_i
{ "mx25l25635e", INFO(0xc22019, 0, 64 * 1024, 512, 0) },
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
@@ -27,7 +27,7 @@
/* Spansion -- single (large) sector size only, at least
* for the chips listed here (without boot sectors).
*/
-@@ -921,6 +927,9 @@ static int __devinit m25p_probe(struct s
+@@ -895,6 +901,9 @@ static int __devinit m25p_probe(struct s
if (info->flags & SECT_4K) {
flash->erase_opcode = OPCODE_BE_4K;
flash->mtd.erasesize = 4096;
diff --git a/target/linux/generic/patches-3.6/473-mtd_m25p80_add_w25q128.patch b/target/linux/generic/patches-3.6/473-mtd_m25p80_add_w25q128.patch
index 290f4f6b8..d731d1279 100644
--- a/target/linux/generic/patches-3.6/473-mtd_m25p80_add_w25q128.patch
+++ b/target/linux/generic/patches-3.6/473-mtd_m25p80_add_w25q128.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
-@@ -765,6 +765,7 @@ static const struct spi_device_id m25p_i
+@@ -739,6 +739,7 @@ static const struct spi_device_id m25p_i
{ "w25x64", INFO(0xef3017, 0, 64 * 1024, 128, SECT_4K) },
{ "w25q64", INFO(0xef4017, 0, 64 * 1024, 128, SECT_4K) },
{ "w25q80", INFO(0xef5014, 0, 64 * 1024, 16, SECT_4K) },
diff --git a/target/linux/generic/patches-3.6/475-mtd_cfi_cmdset_0002-add-buffer-write-cmd-timeout.patch b/target/linux/generic/patches-3.6/475-mtd_cfi_cmdset_0002-add-buffer-write-cmd-timeout.patch
index 3b43535da..b2ed53aa9 100644
--- a/target/linux/generic/patches-3.6/475-mtd_cfi_cmdset_0002-add-buffer-write-cmd-timeout.patch
+++ b/target/linux/generic/patches-3.6/475-mtd_cfi_cmdset_0002-add-buffer-write-cmd-timeout.patch
@@ -8,7 +8,7 @@ Signed-off-by: George Kashperko <george@znau.edu.ua>
1 file changed, 1 insertion(+)
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
-@@ -1409,6 +1409,7 @@ static int __xipram do_write_buffer(stru
+@@ -1413,6 +1413,7 @@ static int __xipram do_write_buffer(stru
/* Write Buffer Load */
map_write(map, CMD(0x25), cmd_adr);
diff --git a/target/linux/generic/patches-3.6/476-mtd-m25p80-allow-to-disable-small-sector-erase.patch b/target/linux/generic/patches-3.6/476-mtd-m25p80-allow-to-disable-small-sector-erase.patch
index 231d4548c..270586ea7 100644
--- a/target/linux/generic/patches-3.6/476-mtd-m25p80-allow-to-disable-small-sector-erase.patch
+++ b/target/linux/generic/patches-3.6/476-mtd-m25p80-allow-to-disable-small-sector-erase.patch
@@ -1,8 +1,8 @@
--- a/drivers/mtd/devices/Kconfig
+++ b/drivers/mtd/devices/Kconfig
-@@ -102,6 +102,14 @@ config M25PXX_USE_FAST_READ
+@@ -110,6 +110,14 @@ config MTD_SPEAR_SMI
help
- This option enables FAST_READ access supported by ST M25Pxx.
+ This enable SNOR support on SPEAR platforms using SMI controller
+config M25PXX_PREFER_SMALL_SECTOR_ERASE
+ bool "Prefer small sector erase"
@@ -30,8 +30,8 @@
/****************************************************************************/
struct m25p {
-@@ -925,7 +931,7 @@ static int __devinit m25p_probe(struct s
- flash->mtd.write = m25p80_write;
+@@ -899,7 +905,7 @@ static int __devinit m25p_probe(struct s
+ flash->mtd._write = m25p80_write;
/* prefer "small sector" erase if possible */
- if (info->flags & SECT_4K) {
diff --git a/target/linux/generic/patches-3.6/477-mtd-m25p80-add-support-for-the-EON-EN25Q64-chip.patch b/target/linux/generic/patches-3.6/477-mtd-m25p80-add-support-for-the-EON-EN25Q64-chip.patch
index 439cbde16..1bba91953 100644
--- a/target/linux/generic/patches-3.6/477-mtd-m25p80-add-support-for-the-EON-EN25Q64-chip.patch
+++ b/target/linux/generic/patches-3.6/477-mtd-m25p80-add-support-for-the-EON-EN25Q64-chip.patch
@@ -1,10 +1,10 @@
--- a/drivers/mtd/devices/m25p80.c
+++ b/drivers/mtd/devices/m25p80.c
-@@ -677,6 +677,7 @@ static const struct spi_device_id m25p_i
+@@ -646,6 +646,7 @@ static const struct spi_device_id m25p_i
{ "en25p32", INFO(0x1c2016, 0, 64 * 1024, 64, 0) },
{ "en25q32b", INFO(0x1c3016, 0, 64 * 1024, 64, 0) },
{ "en25p64", INFO(0x1c2017, 0, 64 * 1024, 128, 0) },
+ { "en25q64", INFO(0x1c3017, 0, 64 * 1024, 128, SECT_4K) },
- /* Intel/Numonyx -- xxxs33b */
- { "160s33b", INFO(0x898911, 0, 64 * 1024, 32, 0) },
+ /* Everspin */
+ { "mr25h256", CAT25_INFO( 32 * 1024, 1, 256, 2) },
diff --git a/target/linux/generic/patches-3.6/478-mtd-partial_eraseblock_unlock.patch b/target/linux/generic/patches-3.6/478-mtd-partial_eraseblock_unlock.patch
index d60a428f0..0fc4154fa 100644
--- a/target/linux/generic/patches-3.6/478-mtd-partial_eraseblock_unlock.patch
+++ b/target/linux/generic/patches-3.6/478-mtd-partial_eraseblock_unlock.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -356,7 +356,14 @@ static int part_unlock(struct mtd_info *
+@@ -330,7 +330,14 @@ static int part_lock(struct mtd_info *mt
static int part_unlock(struct mtd_info *mtd, loff_t ofs, uint64_t len)
{
struct mtd_part *part = PART(mtd);
diff --git a/target/linux/generic/patches-3.6/500-yaffs_support.patch b/target/linux/generic/patches-3.6/500-yaffs_support.patch
index 7776dcfb9..9efe3ecc6 100644
--- a/target/linux/generic/patches-3.6/500-yaffs_support.patch
+++ b/target/linux/generic/patches-3.6/500-yaffs_support.patch
@@ -1,6 +1,6 @@
--- a/fs/Kconfig
+++ b/fs/Kconfig
-@@ -35,6 +35,7 @@ source "fs/gfs2/Kconfig"
+@@ -39,6 +39,7 @@ source "fs/gfs2/Kconfig"
source "fs/ocfs2/Kconfig"
source "fs/btrfs/Kconfig"
source "fs/nilfs2/Kconfig"
@@ -10,7 +10,7 @@
--- a/fs/Makefile
+++ b/fs/Makefile
-@@ -125,3 +125,5 @@ obj-$(CONFIG_GFS2_FS) += gfs2/
+@@ -126,3 +126,5 @@ obj-$(CONFIG_GFS2_FS) += gfs2/
obj-y += exofs/ # Multiple modules
obj-$(CONFIG_CEPH_FS) += ceph/
obj-$(CONFIG_PSTORE) += pstore/
diff --git a/target/linux/generic/patches-3.6/502-yaffs_git_2010_10_20.patch b/target/linux/generic/patches-3.6/502-yaffs_git_2010_10_20.patch
index f4535a6b5..3d705056e 100644
--- a/target/linux/generic/patches-3.6/502-yaffs_git_2010_10_20.patch
+++ b/target/linux/generic/patches-3.6/502-yaffs_git_2010_10_20.patch
@@ -1,6 +1,6 @@
--- a/fs/Kconfig
+++ b/fs/Kconfig
-@@ -35,7 +35,6 @@ source "fs/gfs2/Kconfig"
+@@ -39,7 +39,6 @@ source "fs/gfs2/Kconfig"
source "fs/ocfs2/Kconfig"
source "fs/btrfs/Kconfig"
source "fs/nilfs2/Kconfig"
@@ -8,7 +8,7 @@
endif # BLOCK
-@@ -201,6 +200,10 @@ source "fs/hfsplus/Kconfig"
+@@ -205,6 +204,10 @@ source "fs/hfsplus/Kconfig"
source "fs/befs/Kconfig"
source "fs/bfs/Kconfig"
source "fs/efs/Kconfig"
@@ -21,7 +21,7 @@
source "fs/ubifs/Kconfig"
--- a/fs/Makefile
+++ b/fs/Makefile
-@@ -125,5 +125,6 @@ obj-$(CONFIG_GFS2_FS) += gfs2/
+@@ -126,5 +126,6 @@ obj-$(CONFIG_GFS2_FS) += gfs2/
obj-y += exofs/ # Multiple modules
obj-$(CONFIG_CEPH_FS) += ceph/
obj-$(CONFIG_PSTORE) += pstore/
diff --git a/target/linux/generic/patches-3.6/510-jffs2_make_lzma_available.patch b/target/linux/generic/patches-3.6/510-jffs2_make_lzma_available.patch
index 2d4c3fc6e..4a0fd0bea 100644
--- a/target/linux/generic/patches-3.6/510-jffs2_make_lzma_available.patch
+++ b/target/linux/generic/patches-3.6/510-jffs2_make_lzma_available.patch
@@ -28,7 +28,7 @@
+CFLAGS_compr_lzma.o += -Iinclude/linux -Ilib/lzma
--- a/fs/jffs2/compr.c
+++ b/fs/jffs2/compr.c
-@@ -374,6 +374,9 @@ int __init jffs2_compressors_init(void)
+@@ -378,6 +378,9 @@ int __init jffs2_compressors_init(void)
#ifdef CONFIG_JFFS2_LZO
jffs2_lzo_init();
#endif
@@ -38,7 +38,7 @@
/* Setting default compression mode */
#ifdef CONFIG_JFFS2_CMODE_NONE
jffs2_compression_mode = JFFS2_COMPR_MODE_NONE;
-@@ -397,6 +400,9 @@ int __init jffs2_compressors_init(void)
+@@ -401,6 +404,9 @@ int __init jffs2_compressors_init(void)
int jffs2_compressors_exit(void)
{
/* Unregistering compressors */
@@ -206,7 +206,7 @@
+}
--- a/fs/jffs2/super.c
+++ b/fs/jffs2/super.c
-@@ -371,14 +371,41 @@ static int __init init_jffs2_fs(void)
+@@ -373,14 +373,41 @@ static int __init init_jffs2_fs(void)
BUILD_BUG_ON(sizeof(struct jffs2_raw_inode) != 68);
BUILD_BUG_ON(sizeof(struct jffs2_raw_summary) != 32);
@@ -1049,7 +1049,7 @@
+#endif
--- a/lib/Kconfig
+++ b/lib/Kconfig
-@@ -118,6 +118,12 @@ config LZO_DECOMPRESS
+@@ -188,6 +188,12 @@ config LZO_DECOMPRESS
source "lib/xz/Kconfig"
diff --git a/target/linux/generic/patches-3.6/512-jffs2_eofdetect.patch b/target/linux/generic/patches-3.6/512-jffs2_eofdetect.patch
index c0afcd281..f36131e99 100644
--- a/target/linux/generic/patches-3.6/512-jffs2_eofdetect.patch
+++ b/target/linux/generic/patches-3.6/512-jffs2_eofdetect.patch
@@ -1,13 +1,12 @@
--- a/fs/jffs2/build.c
+++ b/fs/jffs2/build.c
-@@ -112,6 +112,17 @@ static int jffs2_build_filesystem(struct
+@@ -114,6 +114,16 @@ static int jffs2_build_filesystem(struct
dbg_fsbuild("scanned flash completely\n");
jffs2_dbg_dump_block_lists_nolock(c);
+ if (c->flags & (1 << 7)) {
+ printk("%s(): unlocking the mtd device... ", __func__);
-+ if (c->mtd->unlock)
-+ c->mtd->unlock(c->mtd, 0, c->mtd->size);
++ mtd_unlock(c->mtd, 0, c->mtd->size);
+ printk("done.\n");
+
+ printk("%s(): erasing all blocks after the end marker... ", __func__);
@@ -20,7 +19,7 @@
/* Now scan the directory tree, increasing nlink according to every dirent found. */
--- a/fs/jffs2/scan.c
+++ b/fs/jffs2/scan.c
-@@ -147,8 +147,11 @@ int jffs2_scan_medium(struct jffs2_sb_in
+@@ -148,8 +148,11 @@ int jffs2_scan_medium(struct jffs2_sb_in
/* reset summary info for next eraseblock scan */
jffs2_sum_reset_collected(s);
@@ -34,7 +33,7 @@
if (ret < 0)
goto out;
-@@ -549,6 +552,17 @@ static int jffs2_scan_eraseblock (struct
+@@ -556,6 +559,17 @@ static int jffs2_scan_eraseblock (struct
return err;
}
diff --git a/target/linux/generic/patches-3.6/540-crypto-xz-decompression-support.patch b/target/linux/generic/patches-3.6/540-crypto-xz-decompression-support.patch
index 3b3700730..c43f166a8 100644
--- a/target/linux/generic/patches-3.6/540-crypto-xz-decompression-support.patch
+++ b/target/linux/generic/patches-3.6/540-crypto-xz-decompression-support.patch
@@ -1,6 +1,6 @@
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
-@@ -924,6 +924,13 @@ config CRYPTO_LZO
+@@ -1008,6 +1008,13 @@ config CRYPTO_LZO
help
This is the LZO algorithm.
diff --git a/target/linux/generic/patches-3.6/541-ubifs-xz-decompression-support.patch b/target/linux/generic/patches-3.6/541-ubifs-xz-decompression-support.patch
index 212670f4e..e69c7f1d0 100644
--- a/target/linux/generic/patches-3.6/541-ubifs-xz-decompression-support.patch
+++ b/target/linux/generic/patches-3.6/541-ubifs-xz-decompression-support.patch
@@ -1,6 +1,6 @@
--- a/fs/ubifs/Kconfig
+++ b/fs/ubifs/Kconfig
-@@ -5,8 +5,10 @@
+@@ -5,8 +5,10 @@ config UBIFS_FS
select CRYPTO if UBIFS_FS_ADVANCED_COMPR
select CRYPTO if UBIFS_FS_LZO
select CRYPTO if UBIFS_FS_ZLIB
@@ -11,7 +11,7 @@
depends on MTD_UBI
help
UBIFS is a file system for flash devices which works on top of UBI.
-@@ -35,3 +37,12 @@
+@@ -35,3 +37,12 @@ config UBIFS_FS_ZLIB
default y
help
Zlib compresses better than LZO but it is slower. Say 'Y' if unsure.
diff --git a/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch b/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch
index b0d818e8d..3d4936318 100644
--- a/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch
+++ b/target/linux/generic/patches-3.6/550-ubifs-symlink-xattr-support.patch
@@ -1,6 +1,6 @@
--- a/fs/ubifs/file.c
+++ b/fs/ubifs/file.c
-@@ -1575,6 +1575,12 @@ const struct inode_operations ubifs_syml
+@@ -1573,6 +1573,12 @@ const struct inode_operations ubifs_syml
.follow_link = ubifs_follow_link,
.setattr = ubifs_setattr,
.getattr = ubifs_getattr,
diff --git a/target/linux/generic/patches-3.6/600-netfilter_layer7_2.22.patch b/target/linux/generic/patches-3.6/600-netfilter_layer7_2.22.patch
index f3055590a..c1d9f681e 100644
--- a/target/linux/generic/patches-3.6/600-netfilter_layer7_2.22.patch
+++ b/target/linux/generic/patches-3.6/600-netfilter_layer7_2.22.patch
@@ -1,6 +1,6 @@
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -1053,6 +1053,27 @@ config NETFILTER_XT_MATCH_STATE
+@@ -1119,6 +1119,27 @@ config NETFILTER_XT_MATCH_STATE
To compile it as a module, choose M here. If unsure, say N.
@@ -30,7 +30,7 @@
depends on NETFILTER_ADVANCED
--- a/net/netfilter/Makefile
+++ b/net/netfilter/Makefile
-@@ -105,6 +105,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT)
+@@ -112,6 +112,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT)
obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o
obj-$(CONFIG_NETFILTER_XT_MATCH_SOCKET) += xt_socket.o
obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o
@@ -2059,7 +2059,7 @@
+}
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
-@@ -214,6 +214,14 @@ destroy_conntrack(struct nf_conntrack *n
+@@ -215,6 +215,14 @@ destroy_conntrack(struct nf_conntrack *n
* too. */
nf_ct_remove_expectations(ct);
@@ -2091,7 +2091,7 @@
--- a/include/net/netfilter/nf_conntrack.h
+++ b/include/net/netfilter/nf_conntrack.h
-@@ -134,6 +134,22 @@ struct nf_conn {
+@@ -105,6 +105,22 @@ struct nf_conn {
struct net *ct_net;
#endif
@@ -2132,7 +2132,7 @@
+#endif /* _XT_LAYER7_H */
--- a/include/linux/netfilter/Kbuild
+++ b/include/linux/netfilter/Kbuild
-@@ -49,6 +49,7 @@ header-y += xt_hashlimit.h
+@@ -52,6 +52,7 @@ header-y += xt_hashlimit.h
header-y += xt_helper.h
header-y += xt_iprange.h
header-y += xt_ipvs.h
diff --git a/target/linux/generic/patches-3.6/603-netfilter_layer7_2.6.36_fix.patch b/target/linux/generic/patches-3.6/603-netfilter_layer7_2.6.36_fix.patch
index 92a720060..49767fb52 100644
--- a/target/linux/generic/patches-3.6/603-netfilter_layer7_2.6.36_fix.patch
+++ b/target/linux/generic/patches-3.6/603-netfilter_layer7_2.6.36_fix.patch
@@ -1,6 +1,6 @@
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -857,6 +857,27 @@ config NETFILTER_XT_MATCH_IPVS
+@@ -923,6 +923,27 @@ config NETFILTER_XT_MATCH_IPVS
If unsure, say N.
@@ -28,7 +28,7 @@
config NETFILTER_XT_MATCH_LENGTH
tristate '"length" match support'
depends on NETFILTER_ADVANCED
-@@ -1053,26 +1074,11 @@ config NETFILTER_XT_MATCH_STATE
+@@ -1119,26 +1140,11 @@ config NETFILTER_XT_MATCH_STATE
To compile it as a module, choose M here. If unsure, say N.
diff --git a/target/linux/generic/patches-3.6/604-netfilter_cisco_794x_iphone.patch b/target/linux/generic/patches-3.6/604-netfilter_cisco_794x_iphone.patch
index 662a499d1..be40370f5 100644
--- a/target/linux/generic/patches-3.6/604-netfilter_cisco_794x_iphone.patch
+++ b/target/linux/generic/patches-3.6/604-netfilter_cisco_794x_iphone.patch
@@ -1,8 +1,8 @@
--- a/include/linux/netfilter/nf_conntrack_sip.h
+++ b/include/linux/netfilter/nf_conntrack_sip.h
-@@ -2,12 +2,15 @@
- #define __NF_CONNTRACK_SIP_H__
- #ifdef __KERNEL__
+@@ -4,12 +4,15 @@
+
+ #include <net/netfilter/nf_conntrack_expect.h>
+#include <linux/types.h>
+
@@ -18,25 +18,32 @@
enum sip_expectation_classes {
--- a/net/ipv4/netfilter/nf_nat_sip.c
+++ b/net/ipv4/netfilter/nf_nat_sip.c
-@@ -73,6 +73,7 @@ static int map_addr(struct sk_buff *skb,
+@@ -73,11 +73,14 @@ static int map_addr(struct sk_buff *skb,
enum ip_conntrack_info ctinfo;
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
enum ip_conntrack_dir dir = CTINFO2DIR(ctinfo);
-+ struct nf_conn_help *help = nfct_help(ct);
++ struct nf_ct_sip_master *ct_sip_info;
char buffer[sizeof("nnn.nnn.nnn.nnn:nnnnn")];
unsigned int buflen;
__be32 newaddr;
-@@ -85,7 +86,8 @@ static int map_addr(struct sk_buff *skb,
+ __be16 newport;
+
++ ct_sip_info = nfct_help_data(ct->master);
++
+ if (ct->tuplehash[dir].tuple.src.u3.ip == addr->ip &&
+ ct->tuplehash[dir].tuple.src.u.udp.port == port) {
+ newaddr = ct->tuplehash[!dir].tuple.dst.u3.ip;
+@@ -85,7 +88,8 @@ static int map_addr(struct sk_buff *skb,
} else if (ct->tuplehash[dir].tuple.dst.u3.ip == addr->ip &&
ct->tuplehash[dir].tuple.dst.u.udp.port == port) {
newaddr = ct->tuplehash[!dir].tuple.src.u3.ip;
- newport = ct->tuplehash[!dir].tuple.src.u.udp.port;
-+ newport = help->help.ct_sip_info.forced_dport ? :
++ newport = ct_sip_info->forced_dport ? :
+ ct->tuplehash[!dir].tuple.src.u.udp.port;
} else
return 1;
-@@ -121,6 +123,7 @@ static unsigned int ip_nat_sip(struct sk
+@@ -121,6 +125,7 @@ static unsigned int ip_nat_sip(struct sk
enum ip_conntrack_info ctinfo;
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
enum ip_conntrack_dir dir = CTINFO2DIR(ctinfo);
@@ -44,19 +51,21 @@
unsigned int coff, matchoff, matchlen;
enum sip_header_types hdr;
union nf_inet_addr addr;
-@@ -229,6 +232,20 @@ next:
+@@ -230,6 +235,22 @@ next:
!map_sip_addr(skb, dataoff, dptr, datalen, SIP_HDR_TO))
return NF_DROP;
++ struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct->master);
++
+ /* Mangle destination port for Cisco phones, then fix up checksums */
-+ if (dir == IP_CT_DIR_REPLY && help->help.ct_sip_info.forced_dport) {
++ if (dir == IP_CT_DIR_REPLY && ct_sip_info->forced_dport) {
+ struct udphdr *uh;
+
+ if (!skb_make_writable(skb, skb->len))
+ return NF_DROP;
+
+ uh = (struct udphdr *)(skb->data + ip_hdrlen(skb));
-+ uh->dest = help->help.ct_sip_info.forced_dport;
++ uh->dest = ct_sip_info->forced_dport;
+
+ if (!nf_nat_mangle_udp_packet(skb, ct, ctinfo, 0, 0, NULL, 0))
+ return NF_DROP;
@@ -65,7 +74,7 @@
return NF_ACCEPT;
}
-@@ -280,8 +297,10 @@ static unsigned int ip_nat_sip_expect(st
+@@ -281,10 +302,13 @@ static unsigned int ip_nat_sip_expect(st
enum ip_conntrack_info ctinfo;
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
enum ip_conntrack_dir dir = CTINFO2DIR(ctinfo);
@@ -74,15 +83,18 @@
u_int16_t port;
+ __be16 srcport;
char buffer[sizeof("nnn.nnn.nnn.nnn:nnnnn")];
- unsigned buflen;
+ unsigned int buflen;
++ struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct->master);
-@@ -294,8 +313,9 @@ static unsigned int ip_nat_sip_expect(st
+ /* Connection will come from reply */
+ if (ct->tuplehash[dir].tuple.src.u3.ip == ct->tuplehash[!dir].tuple.dst.u3.ip)
+@@ -295,8 +319,9 @@ static unsigned int ip_nat_sip_expect(st
/* If the signalling port matches the connection's source port in the
* original direction, try to use the destination port in the opposite
* direction. */
- if (exp->tuple.dst.u.udp.port ==
- ct->tuplehash[dir].tuple.src.u.udp.port)
-+ srcport = help->help.ct_sip_info.forced_dport ? :
++ srcport = ct_sip_info->forced_dport ? :
+ ct->tuplehash[dir].tuple.src.u.udp.port;
+ if (exp->tuple.dst.u.udp.port == srcport)
port = ntohs(ct->tuplehash[!dir].tuple.dst.u.udp.port);
@@ -90,7 +102,7 @@
port = ntohs(exp->tuple.dst.u.udp.port);
--- a/net/netfilter/nf_conntrack_sip.c
+++ b/net/netfilter/nf_conntrack_sip.c
-@@ -1363,8 +1363,25 @@ static int process_sip_request(struct sk
+@@ -1416,8 +1416,26 @@ static int process_sip_request(struct sk
{
enum ip_conntrack_info ctinfo;
struct nf_conn *ct = nf_ct_get(skb, &ctinfo);
@@ -100,6 +112,7 @@
unsigned int cseq, i;
+ union nf_inet_addr addr;
+ __be16 port;
++ struct nf_ct_sip_master *ct_sip_info = nfct_help_data(ct->master);
+
+ /* Many Cisco IP phones use a high source port for SIP requests, but
+ * listen for the response on port 5060. If we are the local
@@ -112,7 +125,7 @@
+ &matchlen, &addr, &port) > 0 &&
+ port != ct->tuplehash[dir].tuple.src.u.udp.port &&
+ nf_inet_addr_cmp(&addr, &ct->tuplehash[dir].tuple.src.u3))
-+ help->help.ct_sip_info.forced_dport = port;
++ ct_sip_info->forced_dport = port;
for (i = 0; i < ARRAY_SIZE(sip_handlers); i++) {
const struct sip_handler *handler;
diff --git a/target/linux/generic/patches-3.6/610-netfilter_match_bypass_default_checks.patch b/target/linux/generic/patches-3.6/610-netfilter_match_bypass_default_checks.patch
index 51c9e0999..003df8bb1 100644
--- a/target/linux/generic/patches-3.6/610-netfilter_match_bypass_default_checks.patch
+++ b/target/linux/generic/patches-3.6/610-netfilter_match_bypass_default_checks.patch
@@ -50,7 +50,7 @@
static bool
ip_checkentry(const struct ipt_ip *ip)
{
-@@ -561,7 +587,7 @@ static void cleanup_match(struct xt_entr
+@@ -560,7 +586,7 @@ static void cleanup_match(struct xt_entr
}
static int
@@ -59,7 +59,7 @@
{
const struct xt_entry_target *t;
-@@ -570,6 +596,8 @@ check_entry(const struct ipt_entry *e, c
+@@ -569,6 +595,8 @@ check_entry(const struct ipt_entry *e, c
return -EINVAL;
}
@@ -68,7 +68,7 @@
if (e->target_offset + sizeof(struct xt_entry_target) >
e->next_offset)
return -EINVAL;
-@@ -931,6 +959,7 @@ copy_entries_to_user(unsigned int total_
+@@ -930,6 +958,7 @@ copy_entries_to_user(unsigned int total_
const struct xt_table_info *private = table->private;
int ret = 0;
const void *loc_cpu_entry;
@@ -76,7 +76,7 @@
counters = alloc_counters(table);
if (IS_ERR(counters))
-@@ -961,6 +990,14 @@ copy_entries_to_user(unsigned int total_
+@@ -960,6 +989,14 @@ copy_entries_to_user(unsigned int total_
ret = -EFAULT;
goto free_counters;
}
diff --git a/target/linux/generic/patches-3.6/611-netfilter_match_bypass_default_table.patch b/target/linux/generic/patches-3.6/611-netfilter_match_bypass_default_table.patch
index 3cf0e5a32..10f9250bb 100644
--- a/target/linux/generic/patches-3.6/611-netfilter_match_bypass_default_table.patch
+++ b/target/linux/generic/patches-3.6/611-netfilter_match_bypass_default_table.patch
@@ -1,6 +1,6 @@
--- a/net/ipv4/netfilter/ip_tables.c
+++ b/net/ipv4/netfilter/ip_tables.c
-@@ -310,6 +310,33 @@ struct ipt_entry *ipt_next_entry(const s
+@@ -309,6 +309,33 @@ struct ipt_entry *ipt_next_entry(const s
return (void *)entry + entry->next_offset;
}
@@ -34,7 +34,7 @@
/* Returns one of the generic firewall policies, like NF_ACCEPT. */
unsigned int
ipt_do_table(struct sk_buff *skb,
-@@ -334,6 +361,25 @@ ipt_do_table(struct sk_buff *skb,
+@@ -333,6 +360,25 @@ ipt_do_table(struct sk_buff *skb,
ip = ip_hdr(skb);
indev = in ? in->name : nulldevname;
outdev = out ? out->name : nulldevname;
@@ -60,7 +60,7 @@
/* We handle fragments by dealing with the first fragment as
* if it was a normal packet. All other fragments are treated
* normally, except that they will NEVER match rules that ask
-@@ -348,18 +394,6 @@ ipt_do_table(struct sk_buff *skb,
+@@ -347,18 +393,6 @@ ipt_do_table(struct sk_buff *skb,
acpar.family = NFPROTO_IPV4;
acpar.hooknum = hook;
diff --git a/target/linux/generic/patches-3.6/613-netfilter_optional_tcp_window_check.patch b/target/linux/generic/patches-3.6/613-netfilter_optional_tcp_window_check.patch
index 1c259d4f0..a1e46effe 100644
--- a/target/linux/generic/patches-3.6/613-netfilter_optional_tcp_window_check.patch
+++ b/target/linux/generic/patches-3.6/613-netfilter_optional_tcp_window_check.patch
@@ -10,7 +10,7 @@
/* "Be conservative in what you do,
be liberal in what you accept from others."
If it's non-zero, we mark only out of window RST segments as INVALID. */
-@@ -524,6 +527,9 @@ static bool tcp_in_window(const struct n
+@@ -526,6 +529,9 @@ static bool tcp_in_window(const struct n
s16 receiver_offset;
bool res;
@@ -20,7 +20,7 @@
/*
* Get the required data from the packet.
*/
-@@ -1321,6 +1327,13 @@ static struct ctl_table tcp_sysctl_table
+@@ -1425,6 +1431,13 @@ static struct ctl_table tcp_sysctl_table
.proc_handler = proc_dointvec,
},
{
@@ -32,5 +32,5 @@
+ },
+ {
.procname = "nf_conntrack_tcp_be_liberal",
- .data = &nf_ct_tcp_be_liberal,
.maxlen = sizeof(unsigned int),
+ .mode = 0644,
diff --git a/target/linux/generic/patches-3.6/620-sched_esfq.patch b/target/linux/generic/patches-3.6/620-sched_esfq.patch
index 1fdf09d09..a21bf1e45 100644
--- a/target/linux/generic/patches-3.6/620-sched_esfq.patch
+++ b/target/linux/generic/patches-3.6/620-sched_esfq.patch
@@ -1,6 +1,6 @@
--- a/include/linux/pkt_sched.h
+++ b/include/linux/pkt_sched.h
-@@ -193,6 +193,33 @@ struct tc_sfq_xstats {
+@@ -214,6 +214,33 @@ struct tc_sfq_xstats {
__s32 allot;
};
@@ -114,7 +114,6 @@
+
+#include <linux/module.h>
+#include <asm/uaccess.h>
-+#include <asm/system.h>
+#include <linux/bitops.h>
+#include <linux/types.h>
+#include <linux/kernel.h>
@@ -751,7 +750,8 @@
+ opt.flows = q->depth;
+ opt.hash_kind = q->hash_kind;
+
-+ NLA_PUT(skb, TCA_OPTIONS, sizeof(opt), &opt);
++ if (nla_put(skb, TCA_OPTIONS, sizeof(opt), &opt))
++ goto nla_put_failure;
+
+ return skb->len;
+
diff --git a/target/linux/generic/patches-3.6/621-sched_act_connmark.patch b/target/linux/generic/patches-3.6/621-sched_act_connmark.patch
index b6adce1fe..0393f1589 100644
--- a/target/linux/generic/patches-3.6/621-sched_act_connmark.patch
+++ b/target/linux/generic/patches-3.6/621-sched_act_connmark.patch
@@ -140,7 +140,7 @@
+module_exit(connmark_cleanup_module);
--- a/net/sched/Kconfig
+++ b/net/sched/Kconfig
-@@ -624,6 +624,19 @@ config NET_ACT_CSUM
+@@ -670,6 +670,19 @@ config NET_ACT_CSUM
To compile this code as a module, choose M here: the
module will be called act_csum.
diff --git a/target/linux/generic/patches-3.6/630-packet_socket_type.patch b/target/linux/generic/patches-3.6/630-packet_socket_type.patch
index 231b745c6..a630d1d82 100644
--- a/target/linux/generic/patches-3.6/630-packet_socket_type.patch
+++ b/target/linux/generic/patches-3.6/630-packet_socket_type.patch
@@ -26,7 +26,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
#define PACKET_FANOUT_LB 1
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
-@@ -296,6 +296,7 @@ struct packet_sock {
+@@ -295,6 +295,7 @@ struct packet_sock {
unsigned int tp_loss:1;
unsigned int tp_tstamp;
struct packet_type prot_hook ____cacheline_aligned_in_smp;
@@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
};
#define PACKET_FANOUT_MAX 256
-@@ -1383,6 +1384,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1384,6 +1385,7 @@ static int packet_rcv_spkt(struct sk_buf
{
struct sock *sk;
struct sockaddr_pkt *spkt;
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
/*
* When we registered the protocol we saved the socket in the data
-@@ -1390,6 +1392,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1391,6 +1393,7 @@ static int packet_rcv_spkt(struct sk_buf
*/
sk = pt->af_packet_priv;
@@ -50,7 +50,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
/*
* Yank back the headers [hope the device set this
-@@ -1402,7 +1405,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1403,7 +1406,7 @@ static int packet_rcv_spkt(struct sk_buf
* so that this procedure is noop.
*/
@@ -59,7 +59,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
goto out;
if (!net_eq(dev_net(dev), sock_net(sk)))
-@@ -1596,12 +1599,12 @@ static int packet_rcv(struct sk_buff *sk
+@@ -1609,12 +1612,12 @@ static int packet_rcv(struct sk_buff *sk
int skb_len = skb->len;
unsigned int snaplen, res;
@@ -75,7 +75,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -1720,12 +1723,12 @@ static int tpacket_rcv(struct sk_buff *s
+@@ -1733,12 +1736,12 @@ static int tpacket_rcv(struct sk_buff *s
struct timespec ts;
struct skb_shared_hwtstamps *shhwtstamps = skb_hwtstamps(skb);
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -2595,6 +2598,7 @@ static int packet_create(struct net *net
+@@ -2619,6 +2622,7 @@ static int packet_create(struct net *net
spin_lock_init(&po->bind_lock);
mutex_init(&po->pg_vec_lock);
po->prot_hook.func = packet_rcv;
@@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -3192,6 +3196,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3216,6 +3220,16 @@ packet_setsockopt(struct socket *sock, i
return fanout_add(sk, val & 0xffff, val >> 16);
}
@@ -116,9 +116,9 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
default:
return -ENOPROTOOPT;
}
-@@ -3262,6 +3276,13 @@ static int packet_getsockopt(struct sock
-
- data = &val;
+@@ -3270,6 +3284,13 @@ static int packet_getsockopt(struct sock
+ case PACKET_VNET_HDR:
+ val = po->has_vnet_hdr;
break;
+ case PACKET_RECV_TYPE:
+ if (len > sizeof(unsigned int))
@@ -128,5 +128,5 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+ data = &val;
+ break;
case PACKET_VERSION:
- if (len > sizeof(int))
- len = sizeof(int);
+ val = po->tp_version;
+ break;
diff --git a/target/linux/generic/patches-3.6/642-bridge_port_isolate.patch b/target/linux/generic/patches-3.6/642-bridge_port_isolate.patch
index 68434bfc2..9920a5e51 100644
--- a/target/linux/generic/patches-3.6/642-bridge_port_isolate.patch
+++ b/target/linux/generic/patches-3.6/642-bridge_port_isolate.patch
@@ -33,7 +33,7 @@
#ifdef CONFIG_BRIDGE_IGMP_SNOOPING
static ssize_t show_multicast_router(struct net_bridge_port *p, char *buf)
{
-@@ -181,6 +197,7 @@ static struct brport_attribute *brport_a
+@@ -181,6 +197,7 @@ static const struct brport_attribute *br
&brport_attr_hold_timer,
&brport_attr_flush,
&brport_attr_hairpin_mode,
@@ -55,7 +55,7 @@
skb = NULL;
--- a/net/bridge/br_forward.c
+++ b/net/bridge/br_forward.c
-@@ -109,7 +109,7 @@ void br_deliver(const struct net_bridge_
+@@ -110,7 +110,7 @@ void br_deliver(const struct net_bridge_
/* called with rcu_read_lock */
void br_forward(const struct net_bridge_port *to, struct sk_buff *skb, struct sk_buff *skb0)
{
@@ -64,7 +64,7 @@
if (skb0)
deliver_clone(to, skb, __br_forward);
else
-@@ -164,7 +164,8 @@ out:
+@@ -165,7 +165,8 @@ out:
static void br_flood(struct net_bridge *br, struct sk_buff *skb,
struct sk_buff *skb0,
void (*__packet_hook)(const struct net_bridge_port *p,
@@ -74,7 +74,7 @@
{
struct net_bridge_port *p;
struct net_bridge_port *prev;
-@@ -172,6 +173,9 @@ static void br_flood(struct net_bridge *
+@@ -173,6 +174,9 @@ static void br_flood(struct net_bridge *
prev = NULL;
list_for_each_entry_rcu(p, &br->port_list, list) {
@@ -84,7 +84,7 @@
prev = maybe_deliver(prev, p, skb, __packet_hook);
if (IS_ERR(prev))
goto out;
-@@ -195,14 +199,14 @@ out:
+@@ -196,14 +200,14 @@ out:
/* called with rcu_read_lock */
void br_flood_deliver(struct net_bridge *br, struct sk_buff *skb)
{
diff --git a/target/linux/generic/patches-3.6/643-bridge_remove_ipv6_dependency.patch b/target/linux/generic/patches-3.6/643-bridge_remove_ipv6_dependency.patch
index 301b6be44..035bbf8bc 100644
--- a/target/linux/generic/patches-3.6/643-bridge_remove_ipv6_dependency.patch
+++ b/target/linux/generic/patches-3.6/643-bridge_remove_ipv6_dependency.patch
@@ -1,6 +1,6 @@
--- a/include/net/addrconf.h
+++ b/include/net/addrconf.h
-@@ -91,6 +91,12 @@ extern void addrconf_join_solict(struc
+@@ -92,6 +92,12 @@ extern void addrconf_join_solict(struc
extern void addrconf_leave_solict(struct inet6_dev *idev,
const struct in6_addr *addr);
@@ -11,7 +11,7 @@
+ struct in6_addr *saddr);
+
static inline unsigned long addrconf_timeout_fixup(u32 timeout,
- unsigned unit)
+ unsigned int unit)
{
--- a/net/bridge/Kconfig
+++ b/net/bridge/Kconfig
@@ -32,7 +32,7 @@
+obj-$(subst m,y,$(CONFIG_IPV6)) += inet6_stubs.o
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
-@@ -1103,7 +1103,7 @@ out:
+@@ -1099,7 +1099,7 @@ out:
return ret;
}
@@ -41,7 +41,7 @@
const struct in6_addr *daddr, unsigned int prefs,
struct in6_addr *saddr)
{
-@@ -1228,7 +1228,6 @@ try_nextdev:
+@@ -1224,7 +1224,6 @@ try_nextdev:
in6_ifa_put(hiscore->ifa);
return 0;
}
@@ -49,7 +49,7 @@
int ipv6_get_lladdr(struct net_device *dev, struct in6_addr *addr,
unsigned char banned_flags)
-@@ -4840,6 +4839,9 @@ int __init addrconf_init(void)
+@@ -4808,6 +4807,9 @@ int __init addrconf_init(void)
ipv6_addr_label_rtnl_register();
@@ -59,7 +59,7 @@
return 0;
errout:
rtnl_af_unregister(&inet6_ops);
-@@ -4858,6 +4860,9 @@ void addrconf_cleanup(void)
+@@ -4826,6 +4828,9 @@ void addrconf_cleanup(void)
struct net_device *dev;
int i;
diff --git a/target/linux/generic/patches-3.6/644-bridge_optimize_netfilter_hooks.patch b/target/linux/generic/patches-3.6/644-bridge_optimize_netfilter_hooks.patch
index dafe42081..43c850394 100644
--- a/target/linux/generic/patches-3.6/644-bridge_optimize_netfilter_hooks.patch
+++ b/target/linux/generic/patches-3.6/644-bridge_optimize_netfilter_hooks.patch
@@ -1,6 +1,6 @@
--- a/net/bridge/br_forward.c
+++ b/net/bridge/br_forward.c
-@@ -55,7 +55,7 @@ int br_dev_queue_push_xmit(struct sk_buf
+@@ -56,7 +56,7 @@ int br_dev_queue_push_xmit(struct sk_buf
int br_forward_finish(struct sk_buff *skb)
{
@@ -9,7 +9,7 @@
br_dev_queue_push_xmit);
}
-@@ -74,7 +74,7 @@ static void __br_deliver(const struct ne
+@@ -75,7 +75,7 @@ static void __br_deliver(const struct ne
return;
}
@@ -18,7 +18,7 @@
br_forward_finish);
}
-@@ -91,7 +91,7 @@ static void __br_forward(const struct ne
+@@ -92,7 +92,7 @@ static void __br_forward(const struct ne
skb->dev = to->dev;
skb_forward_csum(skb);
@@ -48,7 +48,7 @@
return RX_HANDLER_CONSUMED; /* consumed by filter */
} else {
@@ -224,7 +224,7 @@ forward:
- if (!compare_ether_addr(p->br->dev->dev_addr, dest))
+ if (ether_addr_equal(p->br->dev->dev_addr, dest))
skb->pkt_type = PACKET_HOST;
- NF_HOOK(NFPROTO_BRIDGE, NF_BR_PRE_ROUTING, skb, skb->dev, NULL,
@@ -58,7 +58,7 @@
default:
--- a/net/bridge/br_multicast.c
+++ b/net/bridge/br_multicast.c
-@@ -753,7 +753,7 @@ static void __br_multicast_send_query(st
+@@ -770,7 +770,7 @@ static void __br_multicast_send_query(st
if (port) {
__skb_push(skb, sizeof(struct ethhdr));
skb->dev = port->dev;
@@ -69,7 +69,7 @@
netif_rx(skb);
--- a/net/bridge/br_netfilter.c
+++ b/net/bridge/br_netfilter.c
-@@ -71,6 +71,15 @@ static int brnf_filter_pppoe_tagged __re
+@@ -73,6 +73,15 @@ static int brnf_pass_vlan_indev __read_m
#define IS_ARP(skb) \
(!vlan_tx_tag_present(skb) && skb->protocol == htons(ETH_P_ARP))
@@ -87,7 +87,7 @@
if (vlan_tx_tag_present(skb))
--- a/net/bridge/br_private.h
+++ b/net/bridge/br_private.h
-@@ -486,15 +486,29 @@ static inline bool br_multicast_is_route
+@@ -497,15 +497,29 @@ static inline bool br_multicast_is_route
/* br_netfilter.c */
#ifdef CONFIG_BRIDGE_NETFILTER
diff --git a/target/linux/generic/patches-3.6/650-pppoe_header_pad.patch b/target/linux/generic/patches-3.6/650-pppoe_header_pad.patch
index 5862dc113..a89a9f3b7 100644
--- a/target/linux/generic/patches-3.6/650-pppoe_header_pad.patch
+++ b/target/linux/generic/patches-3.6/650-pppoe_header_pad.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/ppp/pppoe.c
+++ b/drivers/net/ppp/pppoe.c
-@@ -856,7 +856,7 @@ static int pppoe_sendmsg(struct kiocb *i
+@@ -850,7 +850,7 @@ static int pppoe_sendmsg(struct kiocb *i
goto end;
@@ -9,7 +9,7 @@
0, GFP_KERNEL);
if (!skb) {
error = -ENOMEM;
-@@ -864,7 +864,7 @@ static int pppoe_sendmsg(struct kiocb *i
+@@ -858,7 +858,7 @@ static int pppoe_sendmsg(struct kiocb *i
}
/* Reserve space for headers. */
diff --git a/target/linux/generic/patches-3.6/651-wireless_mesh_header.patch b/target/linux/generic/patches-3.6/651-wireless_mesh_header.patch
index 5c83d1948..05c820d44 100644
--- a/target/linux/generic/patches-3.6/651-wireless_mesh_header.patch
+++ b/target/linux/generic/patches-3.6/651-wireless_mesh_header.patch
@@ -1,6 +1,6 @@
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -145,7 +145,7 @@ static inline bool dev_xmit_complete(int
+@@ -147,7 +147,7 @@ static inline bool dev_xmit_complete(int
*/
#if defined(CONFIG_WLAN) || IS_ENABLED(CONFIG_AX25)
diff --git a/target/linux/generic/patches-3.6/653-disable_netlink_trim.patch b/target/linux/generic/patches-3.6/653-disable_netlink_trim.patch
index 74f01cebb..bfd297b12 100644
--- a/target/linux/generic/patches-3.6/653-disable_netlink_trim.patch
+++ b/target/linux/generic/patches-3.6/653-disable_netlink_trim.patch
@@ -1,6 +1,6 @@
--- a/net/netlink/af_netlink.c
+++ b/net/netlink/af_netlink.c
-@@ -854,25 +854,7 @@ void netlink_detachskb(struct sock *sk,
+@@ -880,25 +880,7 @@ void netlink_detachskb(struct sock *sk,
static struct sk_buff *netlink_trim(struct sk_buff *skb, gfp_t allocation)
{
diff --git a/target/linux/generic/patches-3.6/655-increase_skb_pad.patch b/target/linux/generic/patches-3.6/655-increase_skb_pad.patch
index 5d14daadf..69b259f95 100644
--- a/target/linux/generic/patches-3.6/655-increase_skb_pad.patch
+++ b/target/linux/generic/patches-3.6/655-increase_skb_pad.patch
@@ -1,6 +1,6 @@
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -1558,7 +1558,7 @@ static inline int pskb_network_may_pull(
+@@ -1626,7 +1626,7 @@ static inline int pskb_network_may_pull(
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD
diff --git a/target/linux/generic/patches-3.6/700-swconfig.patch b/target/linux/generic/patches-3.6/700-swconfig.patch
index 48cb64372..777ea95d7 100644
--- a/target/linux/generic/patches-3.6/700-swconfig.patch
+++ b/target/linux/generic/patches-3.6/700-swconfig.patch
@@ -16,7 +16,7 @@
+
comment "MII PHY device drivers"
- config MARVELL_PHY
+ config AMD_PHY
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
@@ -3,6 +3,7 @@
diff --git a/target/linux/generic/patches-3.6/701-phy_extension.patch b/target/linux/generic/patches-3.6/701-phy_extension.patch
index 201c857d2..45464ac75 100644
--- a/target/linux/generic/patches-3.6/701-phy_extension.patch
+++ b/target/linux/generic/patches-3.6/701-phy_extension.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
-@@ -299,6 +299,50 @@ int phy_ethtool_gset(struct phy_device *
+@@ -301,6 +301,50 @@ int phy_ethtool_gset(struct phy_device *
}
EXPORT_SYMBOL(phy_ethtool_gset);
@@ -51,7 +51,7 @@
/**
* phy_mii_ioctl - generic PHY MII ioctl interface
* @phydev: the phy_device struct
-@@ -474,7 +518,7 @@ static void phy_force_reduction(struct p
+@@ -476,7 +520,7 @@ static void phy_force_reduction(struct p
int idx;
idx = phy_find_setting(phydev->speed, phydev->duplex);
@@ -62,7 +62,7 @@
idx = phy_find_valid(idx, phydev->supported);
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -515,6 +515,7 @@ void phy_start_machine(struct phy_device
+@@ -542,6 +542,7 @@ void phy_start_machine(struct phy_device
void phy_stop_machine(struct phy_device *phydev);
int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd);
int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd);
diff --git a/target/linux/generic/patches-3.6/702-phy_add_aneg_done_function.patch b/target/linux/generic/patches-3.6/702-phy_add_aneg_done_function.patch
index 0649afb10..8e4443604 100644
--- a/target/linux/generic/patches-3.6/702-phy_add_aneg_done_function.patch
+++ b/target/linux/generic/patches-3.6/702-phy_add_aneg_done_function.patch
@@ -1,6 +1,6 @@
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -393,9 +393,18 @@ struct phy_driver {
+@@ -408,9 +408,18 @@ struct phy_driver {
*/
int (*config_aneg)(struct phy_device *phydev);
@@ -21,7 +21,7 @@
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -705,6 +705,9 @@ int genphy_update_link(struct phy_device
+@@ -796,6 +796,9 @@ int genphy_update_link(struct phy_device
{
int status;
@@ -33,7 +33,7 @@
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
-@@ -106,6 +106,9 @@ static inline int phy_aneg_done(struct p
+@@ -108,6 +108,9 @@ static inline int phy_aneg_done(struct p
{
int retval;
diff --git a/target/linux/generic/patches-3.6/710-phy-add-mdio_register_board_info.patch b/target/linux/generic/patches-3.6/710-phy-add-mdio_register_board_info.patch
index 2c20d7099..db64f5ba9 100644
--- a/target/linux/generic/patches-3.6/710-phy-add-mdio_register_board_info.patch
+++ b/target/linux/generic/patches-3.6/710-phy-add-mdio_register_board_info.patch
@@ -9,7 +9,7 @@
/**
* mdiobus_alloc_size - allocate a mii_bus structure
* @size: extra amount of memory to allocate for private storage.
-@@ -228,15 +230,33 @@
+@@ -228,15 +230,33 @@ void mdiobus_free(struct mii_bus *bus)
}
EXPORT_SYMBOL(mdiobus_free);
@@ -45,7 +45,7 @@
phy_device_free(phydev);
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -543,4 +543,22 @@ int __init mdio_bus_init(void);
+@@ -575,4 +575,22 @@ int __init mdio_bus_init(void);
void mdio_bus_exit(void);
extern struct bus_type mdio_bus_type;
diff --git a/target/linux/generic/patches-3.6/720-phy_adm6996.patch b/target/linux/generic/patches-3.6/720-phy_adm6996.patch
index c99824a6b..0ec5ed579 100644
--- a/target/linux/generic/patches-3.6/720-phy_adm6996.patch
+++ b/target/linux/generic/patches-3.6/720-phy_adm6996.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -106,6 +106,13 @@ config MICREL_PHY
+@@ -116,6 +116,13 @@ config MICREL_PHY
---help---
Supports the KSZ9021, VSC8201, KS8001 PHYs.
@@ -16,9 +16,9 @@
depends on PHYLIB=y
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -16,6 +16,7 @@ obj-$(CONFIG_VITESSE_PHY) += vitesse.o
- obj-$(CONFIG_BROADCOM_PHY) += broadcom.o
+@@ -17,6 +17,7 @@ obj-$(CONFIG_BROADCOM_PHY) += broadcom.o
obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o
+ obj-$(CONFIG_BCM87XX_PHY) += bcm87xx.o
obj-$(CONFIG_ICPLUS_PHY) += icplus.o
+obj-$(CONFIG_ADM6996_PHY) += adm6996.o
obj-$(CONFIG_REALTEK_PHY) += realtek.o
diff --git a/target/linux/generic/patches-3.6/721-phy_packets.patch b/target/linux/generic/patches-3.6/721-phy_packets.patch
index 37f641709..c99e64e24 100644
--- a/target/linux/generic/patches-3.6/721-phy_packets.patch
+++ b/target/linux/generic/patches-3.6/721-phy_packets.patch
@@ -1,6 +1,6 @@
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -1078,6 +1078,11 @@ struct net_device {
+@@ -1102,6 +1102,11 @@ struct net_device {
const struct net_device_ops *netdev_ops;
const struct ethtool_ops *ethtool_ops;
@@ -12,7 +12,7 @@
/* Hardware header description */
const struct header_ops *header_ops;
-@@ -1134,6 +1139,9 @@ struct net_device {
+@@ -1158,6 +1163,9 @@ struct net_device {
void *ax25_ptr; /* AX.25 specific data */
struct wireless_dev *ieee80211_ptr; /* IEEE 802.11 specific data,
assign before registering */
@@ -34,21 +34,21 @@
#define IF_GET_IFACE 0x0001 /* for querying only */
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -1661,6 +1661,10 @@ extern struct sk_buff *dev_alloc_skb(uns
- extern struct sk_buff *__netdev_alloc_skb(struct net_device *dev,
- unsigned int length, gfp_t gfp_mask);
+@@ -1656,6 +1656,10 @@ static inline int pskb_trim(struct sk_bu
+ return (len < skb->len) ? __pskb_trim(skb, len) : 0;
+ }
+extern struct sk_buff *__netdev_alloc_skb_ip_align(struct net_device *dev,
+ unsigned int length, gfp_t gfp);
+
+
/**
- * netdev_alloc_skb - allocate an skbuff for rx on a specific device
- * @dev: network device to receive on
-@@ -1680,16 +1684,6 @@ static inline struct sk_buff *netdev_all
- return __netdev_alloc_skb(dev, length, GFP_ATOMIC);
+ * pskb_trim_unique - remove end from a paged unique (not cloned) buffer
+ * @skb: buffer to alter
+@@ -1758,16 +1762,6 @@ static inline struct sk_buff *dev_alloc_
}
+
-static inline struct sk_buff *__netdev_alloc_skb_ip_align(struct net_device *dev,
- unsigned int length, gfp_t gfp)
-{
@@ -79,7 +79,7 @@
help
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -2267,9 +2267,19 @@ int dev_hard_start_xmit(struct sk_buff *
+@@ -2243,9 +2243,19 @@ int dev_hard_start_xmit(struct sk_buff *
}
}
@@ -102,7 +102,7 @@
if (rc == NETDEV_TX_OK)
txq_trans_update(txq);
return rc;
-@@ -2289,9 +2299,19 @@ gso:
+@@ -2265,9 +2275,19 @@ gso:
if (dev->priv_flags & IFF_XMIT_DST_RELEASE)
skb_dst_drop(nskb);
@@ -127,7 +127,7 @@
goto out_kfree_gso_skb;
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
-@@ -58,6 +58,7 @@
+@@ -60,6 +60,7 @@
#include <linux/scatterlist.h>
#include <linux/errqueue.h>
#include <linux/prefetch.h>
@@ -135,7 +135,7 @@
#include <net/protocol.h>
#include <net/dst.h>
-@@ -320,6 +321,22 @@ struct sk_buff *__netdev_alloc_skb(struc
+@@ -441,6 +442,22 @@ struct sk_buff *__netdev_alloc_skb(struc
}
EXPORT_SYMBOL(__netdev_alloc_skb);
@@ -156,11 +156,11 @@
+EXPORT_SYMBOL(__netdev_alloc_skb_ip_align);
+
void skb_add_rx_frag(struct sk_buff *skb, int i, struct page *page, int off,
- int size)
+ int size, unsigned int truesize)
{
--- a/net/ethernet/eth.c
+++ b/net/ethernet/eth.c
-@@ -160,6 +160,12 @@ __be16 eth_type_trans(struct sk_buff *sk
+@@ -159,6 +159,12 @@ __be16 eth_type_trans(struct sk_buff *sk
struct ethhdr *eth;
skb->dev = dev;
diff --git a/target/linux/generic/patches-3.6/722-phy_mvswitch.patch b/target/linux/generic/patches-3.6/722-phy_mvswitch.patch
index 8a456117f..7aa9ee4e1 100644
--- a/target/linux/generic/patches-3.6/722-phy_mvswitch.patch
+++ b/target/linux/generic/patches-3.6/722-phy_mvswitch.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -113,6 +113,10 @@ config ADM6996_PHY
+@@ -123,6 +123,10 @@ config ADM6996_PHY
Currently supports the ADM6996FC and ADM6996M switches.
Support for FC is very limited.
@@ -13,8 +13,8 @@
depends on PHYLIB=y
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -17,6 +17,7 @@ obj-$(CONFIG_BROADCOM_PHY) += broadcom.o
- obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o
+@@ -18,6 +18,7 @@ obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o
+ obj-$(CONFIG_BCM87XX_PHY) += bcm87xx.o
obj-$(CONFIG_ICPLUS_PHY) += icplus.o
obj-$(CONFIG_ADM6996_PHY) += adm6996.o
+obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
diff --git a/target/linux/generic/patches-3.6/723-phy_ip175c.patch b/target/linux/generic/patches-3.6/723-phy_ip175c.patch
index 8eff10cf4..0ab3a617b 100644
--- a/target/linux/generic/patches-3.6/723-phy_ip175c.patch
+++ b/target/linux/generic/patches-3.6/723-phy_ip175c.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -117,6 +117,10 @@ config MVSWITCH_PHY
+@@ -127,6 +127,10 @@ config MVSWITCH_PHY
tristate "Driver for Marvell 88E6060 switches"
select ETHERNET_PACKET_MANGLE
@@ -13,7 +13,7 @@
depends on PHYLIB=y
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -18,6 +18,7 @@ obj-$(CONFIG_BCM63XX_PHY) += bcm63xx.o
+@@ -19,6 +19,7 @@ obj-$(CONFIG_BCM87XX_PHY) += bcm87xx.o
obj-$(CONFIG_ICPLUS_PHY) += icplus.o
obj-$(CONFIG_ADM6996_PHY) += adm6996.o
obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
diff --git a/target/linux/generic/patches-3.6/724-phy_ar8216.patch b/target/linux/generic/patches-3.6/724-phy_ar8216.patch
index eed6e2b92..5f7c20d55 100644
--- a/target/linux/generic/patches-3.6/724-phy_ar8216.patch
+++ b/target/linux/generic/patches-3.6/724-phy_ar8216.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -121,6 +121,11 @@ config IP17XX_PHY
+@@ -131,6 +131,11 @@ config IP17XX_PHY
tristate "Driver for IC+ IP17xx switches"
select SWCONFIG
@@ -14,7 +14,7 @@
depends on PHYLIB=y
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -20,6 +20,7 @@ obj-$(CONFIG_ADM6996_PHY) += adm6996.o
+@@ -21,6 +21,7 @@ obj-$(CONFIG_ADM6996_PHY) += adm6996.o
obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
obj-$(CONFIG_IP17XX_PHY) += ip17xx.o
obj-$(CONFIG_REALTEK_PHY) += realtek.o
diff --git a/target/linux/generic/patches-3.6/725-phy_rtl8306.patch b/target/linux/generic/patches-3.6/725-phy_rtl8306.patch
index db0ee6582..fa791177d 100644
--- a/target/linux/generic/patches-3.6/725-phy_rtl8306.patch
+++ b/target/linux/generic/patches-3.6/725-phy_rtl8306.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -126,6 +126,10 @@ config AR8216_PHY
+@@ -136,6 +136,10 @@ config AR8216_PHY
select ETHERNET_PACKET_MANGLE
select SWCONFIG
@@ -13,7 +13,7 @@
depends on PHYLIB=y
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -21,6 +21,7 @@ obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
+@@ -22,6 +22,7 @@ obj-$(CONFIG_MVSWITCH_PHY) += mvswitch.o
obj-$(CONFIG_IP17XX_PHY) += ip17xx.o
obj-$(CONFIG_REALTEK_PHY) += realtek.o
obj-$(CONFIG_AR8216_PHY) += ar8216.o
diff --git a/target/linux/generic/patches-3.6/726-phy_rtl8366.patch b/target/linux/generic/patches-3.6/726-phy_rtl8366.patch
index d258e4b56..fd2da634e 100644
--- a/target/linux/generic/patches-3.6/726-phy_rtl8366.patch
+++ b/target/linux/generic/patches-3.6/726-phy_rtl8366.patch
@@ -1,8 +1,8 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -168,6 +168,30 @@ config MDIO_OCTEON
-
- If in doubt, say Y.
+@@ -197,6 +197,30 @@ config MDIO_BUS_MUX_GPIO
+ several child MDIO busses to a parent bus. Child bus
+ selection is under the control of GPIO lines.
+config RTL8366_SMI
+ tristate "Driver for the RTL8366 SMI interface"
@@ -33,7 +33,7 @@
config MICREL_KS8995MA
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -22,6 +22,9 @@ obj-$(CONFIG_IP17XX_PHY) += ip17xx.o
+@@ -23,6 +23,9 @@ obj-$(CONFIG_IP17XX_PHY) += ip17xx.o
obj-$(CONFIG_REALTEK_PHY) += realtek.o
obj-$(CONFIG_AR8216_PHY) += ar8216.o
obj-$(CONFIG_RTL8306_PHY) += rtl8306.o
diff --git a/target/linux/generic/patches-3.6/727-phy-rtl8367.patch b/target/linux/generic/patches-3.6/727-phy-rtl8367.patch
index a24f497c9..ded6857d9 100644
--- a/target/linux/generic/patches-3.6/727-phy-rtl8367.patch
+++ b/target/linux/generic/patches-3.6/727-phy-rtl8367.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -190,6 +190,10 @@ config RTL8366RB_PHY
+@@ -219,6 +219,10 @@ config RTL8366RB_PHY
tristate "Driver for the Realtek RTL8366RB switch"
select SWCONFIG
@@ -13,7 +13,7 @@
endif # PHYLIB
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -25,6 +25,7 @@ obj-$(CONFIG_RTL8306_PHY) += rtl8306.o
+@@ -26,6 +26,7 @@ obj-$(CONFIG_RTL8306_PHY) += rtl8306.o
obj-$(CONFIG_RTL8366_SMI) += rtl8366_smi.o
obj-$(CONFIG_RTL8366S_PHY) += rtl8366s.o
obj-$(CONFIG_RTL8366RB_PHY) += rtl8366rb.o
diff --git a/target/linux/generic/patches-3.6/728-phy-micrel.patch b/target/linux/generic/patches-3.6/728-phy-micrel.patch
index c41d0309c..7d132f68a 100644
--- a/target/linux/generic/patches-3.6/728-phy-micrel.patch
+++ b/target/linux/generic/patches-3.6/728-phy-micrel.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -130,6 +130,11 @@ config RTL8306_PHY
+@@ -140,6 +140,11 @@ config RTL8306_PHY
tristate "Driver for Realtek RTL8306S switches"
select SWCONFIG
@@ -14,7 +14,7 @@
depends on PHYLIB=y
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -27,6 +27,7 @@ obj-$(CONFIG_RTL8366S_PHY) += rtl8366s.o
+@@ -28,6 +28,7 @@ obj-$(CONFIG_RTL8366S_PHY) += rtl8366s.o
obj-$(CONFIG_RTL8366RB_PHY) += rtl8366rb.o
obj-$(CONFIG_RTL8367_PHY) += rtl8367.o
obj-$(CONFIG_LSI_ET1011C_PHY) += et1011c.o
diff --git a/target/linux/generic/patches-3.6/729-phy-rtl8367b.patch b/target/linux/generic/patches-3.6/729-phy-rtl8367b.patch
index 82a7386f9..6db98ffd2 100644
--- a/target/linux/generic/patches-3.6/729-phy-rtl8367b.patch
+++ b/target/linux/generic/patches-3.6/729-phy-rtl8367b.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -199,6 +199,10 @@ config RTL8367_PHY
+@@ -228,6 +228,10 @@ config RTL8367_PHY
tristate "Driver for the Realtek RTL8367R/M switches"
select SWCONFIG
@@ -13,7 +13,7 @@
endif # PHYLIB
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -26,6 +26,7 @@ obj-$(CONFIG_RTL8366_SMI) += rtl8366_smi
+@@ -27,6 +27,7 @@ obj-$(CONFIG_RTL8366_SMI) += rtl8366_smi
obj-$(CONFIG_RTL8366S_PHY) += rtl8366s.o
obj-$(CONFIG_RTL8366RB_PHY) += rtl8366rb.o
obj-$(CONFIG_RTL8367_PHY) += rtl8367.o
diff --git a/target/linux/generic/patches-3.6/729-phy-tantos.patch b/target/linux/generic/patches-3.6/729-phy-tantos.patch
index 0466d94b4..931447923 100644
--- a/target/linux/generic/patches-3.6/729-phy-tantos.patch
+++ b/target/linux/generic/patches-3.6/729-phy-tantos.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
-@@ -206,3 +206,8 @@ endif # PHYLIB
+@@ -239,3 +239,8 @@ endif # PHYLIB
config MICREL_KS8995MA
tristate "Micrel KS8995MA 5-ports 10/100 managed Ethernet switch"
depends on SPI
@@ -11,8 +11,8 @@
+ select ETHERNET_PACKET_MANGLE
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
-@@ -28,6 +28,7 @@ obj-$(CONFIG_RTL8366RB_PHY) += rtl8366rb
- obj-$(CONFIG_RTL8367_PHY) += rtl8367.o
+@@ -30,6 +30,7 @@ obj-$(CONFIG_RTL8367_PHY) += rtl8367.o
+ obj-$(CONFIG_RTL8367B_PHY) += rtl8367b.o
obj-$(CONFIG_LSI_ET1011C_PHY) += et1011c.o
obj-$(CONFIG_MICREL_PHY) += micrel.o
+obj-$(CONFIG_PSB6970_PHY) += psb6970.o
diff --git a/target/linux/generic/patches-3.6/750-hostap_txpower.patch b/target/linux/generic/patches-3.6/750-hostap_txpower.patch
index 8e2ec9afc..91033dc48 100644
--- a/target/linux/generic/patches-3.6/750-hostap_txpower.patch
+++ b/target/linux/generic/patches-3.6/750-hostap_txpower.patch
@@ -64,7 +64,7 @@
#endif /* HOSTAP_H */
--- a/drivers/net/wireless/hostap/hostap_hw.c
+++ b/drivers/net/wireless/hostap/hostap_hw.c
-@@ -932,6 +932,7 @@ static int hfa384x_set_rid(struct net_de
+@@ -928,6 +928,7 @@ static int hfa384x_set_rid(struct net_de
prism2_hw_reset(dev);
}
diff --git a/target/linux/generic/patches-3.6/810-pci_disable_common_quirks.patch b/target/linux/generic/patches-3.6/810-pci_disable_common_quirks.patch
index 480215718..85e3c97b8 100644
--- a/target/linux/generic/patches-3.6/810-pci_disable_common_quirks.patch
+++ b/target/linux/generic/patches-3.6/810-pci_disable_common_quirks.patch
@@ -1,6 +1,6 @@
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
-@@ -51,6 +51,12 @@ config XEN_PCIDEV_FRONTEND
+@@ -64,6 +64,12 @@ config XEN_PCIDEV_FRONTEND
The PCI device frontend driver allows the kernel to import arbitrary
PCI devices from a PCI backend to support PCI driver domains.
@@ -15,15 +15,15 @@
default y
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
-@@ -105,6 +105,7 @@ static void __devinit quirk_mmio_always_
- }
- DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, quirk_mmio_always_on);
+@@ -44,6 +44,7 @@ static void __devinit quirk_mmio_always_
+ DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID,
+ PCI_CLASS_BRIDGE_HOST, 8, quirk_mmio_always_on);
+#ifndef CONFIG_PCI_DISABLE_COMMON_QUIRKS
/* The Mellanox Tavor device gives false positive parity errors
* Mark this device with a broken_parity_status, to allow
* PCI scanning code to "skip" this now blacklisted device.
-@@ -1990,7 +1991,9 @@ static void __devinit fixup_rev1_53c810(
+@@ -1933,7 +1934,9 @@ static void __devinit fixup_rev1_53c810(
}
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);
@@ -33,9 +33,9 @@
/* Enable 1k I/O space granularity on the Intel P64H2 */
static void __devinit quirk_p64h2_1k_io(struct pci_dev *dev)
{
-@@ -2666,6 +2669,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AT
+@@ -2605,6 +2608,7 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AT
+ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATTANSIC, 0x1083,
quirk_msi_intx_disable_bug);
-
#endif /* CONFIG_PCI_MSI */
+#endif /* !CONFIG_PCI_DISABLE_COMMON_QUIRKS */
diff --git a/target/linux/generic/patches-3.6/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/patches-3.6/811-pci_disable_usb_common_quirks.patch
index 7bf8eaf1e..6debec9c8 100644
--- a/target/linux/generic/patches-3.6/811-pci_disable_usb_common_quirks.patch
+++ b/target/linux/generic/patches-3.6/811-pci_disable_usb_common_quirks.patch
@@ -1,7 +1,7 @@
--- a/drivers/usb/host/pci-quirks.c
+++ b/drivers/usb/host/pci-quirks.c
-@@ -432,6 +432,8 @@ reset_needed:
+@@ -434,6 +434,8 @@ reset_needed:
}
EXPORT_SYMBOL_GPL(uhci_check_and_reset_hc);
@@ -10,29 +10,8 @@
static inline int io_type_enabled(struct pci_dev *pdev, unsigned int mask)
{
u16 cmd;
-@@ -928,3 +930,5 @@ static void __devinit quirk_usb_early_ha
- pci_disable_device(pdev);
+@@ -964,3 +966,4 @@ static void __devinit quirk_usb_early_ha
}
- DECLARE_PCI_FIXUP_FINAL(PCI_ANY_ID, PCI_ANY_ID, quirk_usb_early_handoff);
-+
-+#endif
---- a/drivers/usb/host/pci-quirks.h
-+++ b/drivers/usb/host/pci-quirks.h
-@@ -8,9 +8,17 @@ int usb_amd_find_chipset_info(void);
- void usb_amd_dev_put(void);
- void usb_amd_quirk_pll_disable(void);
- void usb_amd_quirk_pll_enable(void);
-+#if !defined(CONFIG_PCI_DISABLE_COMMON_QUIRKS)
- bool usb_is_intel_switchable_xhci(struct pci_dev *pdev);
- void usb_enable_xhci_ports(struct pci_dev *xhci_pdev);
- #else
-+static inline bool usb_is_intel_switchable_xhci(struct pci_dev *pdev)
-+{
-+ return false;
-+}
-+static inline void usb_enable_xhci_ports(struct pci_dev *xhci_pdev) {}
+ DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_ANY_ID, PCI_ANY_ID,
+ PCI_CLASS_SERIAL_USB, 8, quirk_usb_early_handoff);
+#endif
-+#else
- static inline void usb_amd_quirk_pll_disable(void) {}
- static inline void usb_amd_quirk_pll_enable(void) {}
- static inline void usb_amd_dev_put(void) {}
diff --git a/target/linux/generic/patches-3.6/820-usb_add_usb_find_device_by_name.patch b/target/linux/generic/patches-3.6/820-usb_add_usb_find_device_by_name.patch
index ee50ff90e..6b72a4769 100644
--- a/target/linux/generic/patches-3.6/820-usb_add_usb_find_device_by_name.patch
+++ b/target/linux/generic/patches-3.6/820-usb_add_usb_find_device_by_name.patch
@@ -1,6 +1,6 @@
--- a/drivers/usb/core/usb.c
+++ b/drivers/usb/core/usb.c
-@@ -652,6 +652,71 @@ int __usb_get_extra_descriptor(char *buf
+@@ -653,6 +653,71 @@ int __usb_get_extra_descriptor(char *buf
}
EXPORT_SYMBOL_GPL(__usb_get_extra_descriptor);
@@ -74,7 +74,7 @@
* @dev: device the buffer will be used with
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
-@@ -531,6 +531,7 @@ extern int usb_lock_device_for_reset(str
+@@ -584,6 +584,7 @@ extern int usb_lock_device_for_reset(str
extern int usb_reset_device(struct usb_device *dev);
extern void usb_queue_reset_device(struct usb_interface *dev);
diff --git a/target/linux/generic/patches-3.6/830-ledtrig_morse.patch b/target/linux/generic/patches-3.6/830-ledtrig_morse.patch
index 3283807f2..9692712ea 100644
--- a/target/linux/generic/patches-3.6/830-ledtrig_morse.patch
+++ b/target/linux/generic/patches-3.6/830-ledtrig_morse.patch
@@ -1,8 +1,8 @@
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
-@@ -480,4 +480,8 @@ config LEDS_TRIGGER_DEFAULT_ON
- comment "iptables trigger is under Netfilter config (LED target)"
- depends on LEDS_TRIGGERS
+@@ -537,4 +537,8 @@ config LEDS_TRIGGER_TRANSIENT
+ GPIO/PWM based hardware.
+ If unsure, say Y.
+config LEDS_TRIGGER_MORSE
+ tristate "LED Morse Trigger"
@@ -11,10 +11,10 @@
endif # NEW_LEDS
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -57,3 +57,4 @@ obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT) +=
- obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT) += ledtrig-backlight.o
+@@ -63,3 +63,4 @@ obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT) +=
obj-$(CONFIG_LEDS_TRIGGER_GPIO) += ledtrig-gpio.o
obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o
+ obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o
+obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
--- a/drivers/leds/ledtrig-morse.c
+++ b/drivers/leds/ledtrig-morse.c
diff --git a/target/linux/generic/patches-3.6/831-ledtrig_netdev.patch b/target/linux/generic/patches-3.6/831-ledtrig_netdev.patch
index 7f94b1cd3..cd00fddd5 100644
--- a/target/linux/generic/patches-3.6/831-ledtrig_netdev.patch
+++ b/target/linux/generic/patches-3.6/831-ledtrig_netdev.patch
@@ -1,6 +1,6 @@
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
-@@ -484,4 +484,11 @@ config LEDS_TRIGGER_MORSE
+@@ -541,4 +541,11 @@ config LEDS_TRIGGER_MORSE
tristate "LED Morse Trigger"
depends on LEDS_TRIGGERS
@@ -14,9 +14,9 @@
endif # NEW_LEDS
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -58,3 +58,4 @@ obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT) +=
- obj-$(CONFIG_LEDS_TRIGGER_GPIO) += ledtrig-gpio.o
+@@ -64,3 +64,4 @@ obj-$(CONFIG_LEDS_TRIGGER_GPIO) += ledt
obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o
+ obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
+obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
--- a/drivers/leds/ledtrig-netdev.c
diff --git a/target/linux/generic/patches-3.6/832-ledtrig_usbdev.patch b/target/linux/generic/patches-3.6/832-ledtrig_usbdev.patch
index 8933497e8..ef8715e64 100644
--- a/target/linux/generic/patches-3.6/832-ledtrig_usbdev.patch
+++ b/target/linux/generic/patches-3.6/832-ledtrig_usbdev.patch
@@ -1,6 +1,6 @@
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
-@@ -491,4 +491,11 @@ config LEDS_TRIGGER_NETDEV
+@@ -548,4 +548,11 @@ config LEDS_TRIGGER_NETDEV
This allows LEDs to be controlled by network device activity.
If unsure, say Y.
@@ -14,8 +14,8 @@
endif # NEW_LEDS
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -59,3 +59,4 @@ obj-$(CONFIG_LEDS_TRIGGER_GPIO) += ledt
- obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o
+@@ -65,3 +65,4 @@ obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) +=
+ obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
+obj-$(CONFIG_LEDS_TRIGGER_USBDEV) += ledtrig-usbdev.o
diff --git a/target/linux/generic/patches-3.6/840-rtc7301.patch b/target/linux/generic/patches-3.6/840-rtc7301.patch
index 35dd3b8bd..6c96116ea 100644
--- a/target/linux/generic/patches-3.6/840-rtc7301.patch
+++ b/target/linux/generic/patches-3.6/840-rtc7301.patch
@@ -1,6 +1,6 @@
--- a/drivers/rtc/Kconfig
+++ b/drivers/rtc/Kconfig
-@@ -719,6 +719,15 @@ config RTC_DRV_NUC900
+@@ -716,6 +716,15 @@ config RTC_DRV_NUC900
If you say yes here you get support for the RTC subsystem of the
NUC910/NUC920 used in embedded systems.
@@ -18,7 +18,7 @@
config RTC_DRV_DAVINCI
--- a/drivers/rtc/Makefile
+++ b/drivers/rtc/Makefile
-@@ -86,6 +86,7 @@ obj-$(CONFIG_RTC_DRV_RP5C01) += rtc-rp5c
+@@ -89,6 +89,7 @@ obj-$(CONFIG_RTC_DRV_RP5C01) += rtc-rp5c
obj-$(CONFIG_RTC_DRV_RS5C313) += rtc-rs5c313.o
obj-$(CONFIG_RTC_DRV_RS5C348) += rtc-rs5c348.o
obj-$(CONFIG_RTC_DRV_RS5C372) += rtc-rs5c372.o
diff --git a/target/linux/generic/patches-3.6/841-rtc_pt7c4338.patch b/target/linux/generic/patches-3.6/841-rtc_pt7c4338.patch
index 2c9e6035a..17b3d755d 100644
--- a/target/linux/generic/patches-3.6/841-rtc_pt7c4338.patch
+++ b/target/linux/generic/patches-3.6/841-rtc_pt7c4338.patch
@@ -1,6 +1,6 @@
--- a/drivers/rtc/Kconfig
+++ b/drivers/rtc/Kconfig
-@@ -379,6 +379,15 @@ config RTC_DRV_RV3029C2
+@@ -389,6 +389,15 @@ config RTC_DRV_RV3029C2
This driver can also be built as a module. If so, the module
will be called rtc-rv3029c2.
@@ -18,7 +18,7 @@
comment "SPI RTC drivers"
--- a/drivers/rtc/Makefile
+++ b/drivers/rtc/Makefile
-@@ -79,6 +79,7 @@ obj-$(CONFIG_RTC_DRV_PL030) += rtc-pl030
+@@ -82,6 +82,7 @@ obj-$(CONFIG_RTC_DRV_PL030) += rtc-pl030
obj-$(CONFIG_RTC_DRV_PL031) += rtc-pl031.o
obj-$(CONFIG_RTC_DRV_PM8XXX) += rtc-pm8xxx.o
obj-$(CONFIG_RTC_DRV_PS3) += rtc-ps3.o
diff --git a/target/linux/generic/patches-3.6/862-gpio_spi_driver.patch b/target/linux/generic/patches-3.6/862-gpio_spi_driver.patch
index 6cbea32a3..16d80d958 100644
--- a/target/linux/generic/patches-3.6/862-gpio_spi_driver.patch
+++ b/target/linux/generic/patches-3.6/862-gpio_spi_driver.patch
@@ -345,7 +345,7 @@ Please use the new mainline SPI-GPIO driver, as of 2.6.29.
+MODULE_LICENSE("GPL v2");
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
-@@ -154,6 +154,15 @@ config SPI_GPIO
+@@ -169,6 +169,15 @@ config SPI_GPIO
GPIO operations, you should be able to leverage that for better
speed with a custom version of this driver; see the source code.
@@ -363,7 +363,7 @@ Please use the new mainline SPI-GPIO driver, as of 2.6.29.
depends on ARCH_MXC
--- a/drivers/spi/Makefile
+++ b/drivers/spi/Makefile
-@@ -29,6 +29,7 @@ obj-$(CONFIG_SPI_FSL_LIB) += spi-fsl-li
+@@ -31,6 +31,7 @@ obj-$(CONFIG_SPI_FSL_LIB) += spi-fsl-li
obj-$(CONFIG_SPI_FSL_ESPI) += spi-fsl-espi.o
obj-$(CONFIG_SPI_FSL_SPI) += spi-fsl-spi.o
obj-$(CONFIG_SPI_GPIO) += spi-gpio.o
diff --git a/target/linux/generic/patches-3.6/863-gpiommc.patch b/target/linux/generic/patches-3.6/863-gpiommc.patch
index 32606711f..2e8d4da12 100644
--- a/target/linux/generic/patches-3.6/863-gpiommc.patch
+++ b/target/linux/generic/patches-3.6/863-gpiommc.patch
@@ -612,7 +612,7 @@
+module_exit(gpiommc_modexit);
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
-@@ -474,6 +474,31 @@ config MMC_SDHI
+@@ -467,6 +467,31 @@ config MMC_SDHI
This provides support for the SDHI SD/SDIO controller found in
SuperH and ARM SH-Mobile SoCs
@@ -646,14 +646,14 @@
depends on PCI
--- a/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile
-@@ -37,6 +37,7 @@ tmio_mmc_core-$(subst m,y,$(CONFIG_MMC_S
+@@ -36,6 +36,7 @@ tmio_mmc_core-$(subst m,y,$(CONFIG_MMC_S
obj-$(CONFIG_MMC_SDHI) += sh_mobile_sdhi.o
obj-$(CONFIG_MMC_CB710) += cb710-mmc.o
obj-$(CONFIG_MMC_VIA_SDMMC) += via-sdmmc.o
+obj-$(CONFIG_GPIOMMC) += gpiommc.o
obj-$(CONFIG_SDH_BFIN) += bfin_sdh.o
obj-$(CONFIG_MMC_DW) += dw_mmc.o
- obj-$(CONFIG_MMC_SH_MMCIF) += sh_mmcif.o
+ obj-$(CONFIG_MMC_DW_PLTFM) += dw_mmc-pltfm.o
--- /dev/null
+++ b/include/linux/mmc/gpiommc.h
@@ -0,0 +1,71 @@
@@ -830,7 +830,7 @@
+be done automatically.
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -3045,6 +3045,11 @@ L: linuxppc-dev@lists.ozlabs.org
+@@ -3188,6 +3188,11 @@ L: linuxppc-dev@lists.ozlabs.org
S: Odd Fixes
F: drivers/tty/hvc/
@@ -841,4 +841,4 @@
+
HARDWARE MONITORING
M: Jean Delvare <khali@linux-fr.org>
- M: Guenter Roeck <guenter.roeck@ericsson.com>
+ M: Guenter Roeck <linux@roeck-us.net>
diff --git a/target/linux/generic/patches-3.6/865-gpiopwm.patch b/target/linux/generic/patches-3.6/865-gpiopwm.patch
index 015f14ab3..0ed0c966d 100644
--- a/target/linux/generic/patches-3.6/865-gpiopwm.patch
+++ b/target/linux/generic/patches-3.6/865-gpiopwm.patch
@@ -11,11 +11,11 @@
source "drivers/power/Kconfig"
--- a/drivers/Makefile
+++ b/drivers/Makefile
-@@ -8,6 +8,7 @@
- # GPIO must come after pinctrl as gpios may need to mux pins etc
- obj-y += pinctrl/
+@@ -10,6 +10,7 @@ obj-y += pinctrl/
obj-y += gpio/
-+obj-$(CONFIG_GENERIC_PWM) += pwm/
+ obj-y += pwm/
obj-$(CONFIG_PCI) += pci/
++obj-$(CONFIG_GENERIC_PWM) += pwm/
obj-$(CONFIG_PARISC) += parisc/
obj-$(CONFIG_RAPIDIO) += rapidio/
+ obj-y += video/
diff --git a/target/linux/generic/patches-3.6/880-gateworks_system_controller.patch b/target/linux/generic/patches-3.6/880-gateworks_system_controller.patch
index 981610dad..02c9d8f9a 100644
--- a/target/linux/generic/patches-3.6/880-gateworks_system_controller.patch
+++ b/target/linux/generic/patches-3.6/880-gateworks_system_controller.patch
@@ -1,6 +1,6 @@
--- a/drivers/hwmon/Kconfig
+++ b/drivers/hwmon/Kconfig
-@@ -423,6 +423,15 @@ config SENSORS_GL520SM
+@@ -434,6 +434,15 @@ config SENSORS_GL520SM
This driver can also be built as a module. If so, the module
will be called gl520sm.
@@ -15,10 +15,10 @@
+
config SENSORS_GPIO_FAN
tristate "GPIO fan"
- depends on GENERIC_GPIO
+ depends on GPIOLIB
--- a/drivers/hwmon/Makefile
+++ b/drivers/hwmon/Makefile
-@@ -125,6 +125,7 @@ obj-$(CONFIG_SENSORS_W83L785TS) += w83l7
+@@ -129,6 +129,7 @@ obj-$(CONFIG_SENSORS_W83L785TS) += w83l7
obj-$(CONFIG_SENSORS_W83L786NG) += w83l786ng.o
obj-$(CONFIG_SENSORS_WM831X) += wm831x-hwmon.o
obj-$(CONFIG_SENSORS_WM8350) += wm8350-hwmon.o
diff --git a/target/linux/generic/patches-3.6/900-slab_maxsize.patch b/target/linux/generic/patches-3.6/900-slab_maxsize.patch
index 1c9569450..b77b9f0f9 100644
--- a/target/linux/generic/patches-3.6/900-slab_maxsize.patch
+++ b/target/linux/generic/patches-3.6/900-slab_maxsize.patch
@@ -1,6 +1,6 @@
--- a/include/linux/slab.h
+++ b/include/linux/slab.h
-@@ -127,8 +127,8 @@ unsigned int kmem_cache_size(struct kmem
+@@ -151,8 +151,8 @@ unsigned int kmem_cache_size(struct kmem
* to do various tricks to work around compiler limitations in order to
* ensure proper constant folding.
*/
diff --git a/target/linux/generic/patches-3.6/910-kobject_uevent.patch b/target/linux/generic/patches-3.6/910-kobject_uevent.patch
index aa9a40f09..9ee9cff67 100644
--- a/target/linux/generic/patches-3.6/910-kobject_uevent.patch
+++ b/target/linux/generic/patches-3.6/910-kobject_uevent.patch
@@ -1,6 +1,6 @@
--- a/lib/kobject_uevent.c
+++ b/lib/kobject_uevent.c
-@@ -50,6 +50,18 @@ static const char *kobject_actions[] = {
+@@ -51,6 +51,18 @@ static const char *kobject_actions[] = {
[KOBJ_OFFLINE] = "offline",
};
diff --git a/target/linux/generic/patches-3.6/911-kobject_add_broadcast_uevent.patch b/target/linux/generic/patches-3.6/911-kobject_add_broadcast_uevent.patch
index 104df13bf..7bc6d15d8 100644
--- a/target/linux/generic/patches-3.6/911-kobject_add_broadcast_uevent.patch
+++ b/target/linux/generic/patches-3.6/911-kobject_add_broadcast_uevent.patch
@@ -39,7 +39,7 @@
#endif /* _KOBJECT_H_ */
--- a/lib/kobject_uevent.c
+++ b/lib/kobject_uevent.c
-@@ -381,6 +381,43 @@ int add_uevent_var(struct kobj_uevent_en
+@@ -382,6 +382,43 @@ int add_uevent_var(struct kobj_uevent_en
EXPORT_SYMBOL_GPL(add_uevent_var);
#if defined(CONFIG_NET)
diff --git a/target/linux/generic/patches-3.6/920-unable_to_open_console.patch b/target/linux/generic/patches-3.6/920-unable_to_open_console.patch
index 11f67dc2c..f9bcf1673 100644
--- a/target/linux/generic/patches-3.6/920-unable_to_open_console.patch
+++ b/target/linux/generic/patches-3.6/920-unable_to_open_console.patch
@@ -1,6 +1,6 @@
--- a/init/main.c
+++ b/init/main.c
-@@ -816,7 +816,7 @@ static int __init kernel_init(void * unu
+@@ -868,7 +868,7 @@ static int __init kernel_init(void * unu
/* Open the /dev/console on the rootfs, this should never fail */
if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
diff --git a/target/linux/generic/patches-3.6/921-use_preinit_as_init.patch b/target/linux/generic/patches-3.6/921-use_preinit_as_init.patch
index a71251dcd..abd00c65f 100644
--- a/target/linux/generic/patches-3.6/921-use_preinit_as_init.patch
+++ b/target/linux/generic/patches-3.6/921-use_preinit_as_init.patch
@@ -1,6 +1,6 @@
--- a/init/main.c
+++ b/init/main.c
-@@ -774,10 +774,7 @@ static noinline int init_post(void)
+@@ -826,10 +826,7 @@ static noinline int init_post(void)
printk(KERN_WARNING "Failed to execute %s. Attempting "
"defaults...\n", execute_command);
}
diff --git a/target/linux/generic/patches-3.6/930-crashlog.patch b/target/linux/generic/patches-3.6/930-crashlog.patch
index bce0ea40c..5231907f8 100644
--- a/target/linux/generic/patches-3.6/930-crashlog.patch
+++ b/target/linux/generic/patches-3.6/930-crashlog.patch
@@ -20,7 +20,7 @@
+#endif
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -926,6 +926,10 @@ config RELAY
+@@ -1105,6 +1105,10 @@ config RELAY
If unsure, say N.
@@ -33,7 +33,7 @@
depends on BROKEN || !FRV
--- a/kernel/Makefile
+++ b/kernel/Makefile
-@@ -107,6 +107,7 @@ obj-$(CONFIG_USER_RETURN_NOTIFIER) += us
+@@ -110,6 +110,7 @@ obj-$(CONFIG_USER_RETURN_NOTIFIER) += us
obj-$(CONFIG_PADATA) += padata.o
obj-$(CONFIG_CRASH_DUMP) += crash_dump.o
obj-$(CONFIG_JUMP_LABEL) += jump_label.o
@@ -274,7 +274,7 @@
static struct memblock_region memblock_memory_init_regions[INIT_MEMBLOCK_REGIONS] __initdata_memblock;
static struct memblock_region memblock_reserved_init_regions[INIT_MEMBLOCK_REGIONS] __initdata_memblock;
-@@ -305,6 +306,8 @@ static void __init_memblock memblock_ins
+@@ -341,6 +342,8 @@ static void __init_memblock memblock_ins
memblock_set_region_node(rgn, nid);
type->cnt++;
type->total_size += size;
diff --git a/target/linux/generic/patches-3.6/940-ocf_kbuild_integration.patch b/target/linux/generic/patches-3.6/940-ocf_kbuild_integration.patch
index b5cce90a1..61519b5cf 100644
--- a/target/linux/generic/patches-3.6/940-ocf_kbuild_integration.patch
+++ b/target/linux/generic/patches-3.6/940-ocf_kbuild_integration.patch
@@ -1,6 +1,6 @@
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
-@@ -968,3 +968,6 @@ config CRYPTO_USER_API_SKCIPHER
+@@ -1052,3 +1052,6 @@ config CRYPTO_USER_API_SKCIPHER
source "drivers/crypto/Kconfig"
endif # if CRYPTO
diff --git a/target/linux/generic/patches-3.6/941-ocf_20120127.patch b/target/linux/generic/patches-3.6/941-ocf_20120127.patch
index 794627a85..3c24fe42f 100644
--- a/target/linux/generic/patches-3.6/941-ocf_20120127.patch
+++ b/target/linux/generic/patches-3.6/941-ocf_20120127.patch
@@ -1,8 +1,8 @@
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
-@@ -131,6 +131,9 @@
- * void add_interrupt_randomness(int irq, int irq_flags);
- * void add_disk_randomness(struct gendisk *disk);
+@@ -139,6 +139,9 @@
+ * that might otherwise be identical and have very little entropy
+ * available to them (particularly common in the embedded world).
*
+ * void random_input_words(__u32 *buf, size_t wordcount, int ent_count)
+ * int random_input_wait(void);
@@ -24,7 +24,7 @@
* All of these routines try to estimate how many bits of randomness a
* particular randomness source. They do this by keeping track of the
* first and second order deltas of the event timings.
-@@ -796,6 +806,63 @@ void add_disk_randomness(struct gendisk
+@@ -799,6 +809,63 @@ void add_disk_randomness(struct gendisk
}
#endif
@@ -90,7 +90,7 @@
* Entropy extraction routines
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
-@@ -142,6 +142,7 @@ SYSCALL_DEFINE1(dup, unsigned int, filde
+@@ -143,6 +143,7 @@ SYSCALL_DEFINE1(dup, unsigned int, filde
}
return ret;
}
diff --git a/target/linux/generic/patches-3.6/950-vm_exports.patch b/target/linux/generic/patches-3.6/950-vm_exports.patch
index 1cd970c80..cac3bc99c 100644
--- a/target/linux/generic/patches-3.6/950-vm_exports.patch
+++ b/target/linux/generic/patches-3.6/950-vm_exports.patch
@@ -1,6 +1,6 @@
--- a/mm/shmem.c
+++ b/mm/shmem.c
-@@ -2490,6 +2490,16 @@ EXPORT_SYMBOL_GPL(shmem_truncate_range);
+@@ -2902,6 +2902,16 @@ EXPORT_SYMBOL_GPL(shmem_truncate_range);
/* common code */
@@ -17,7 +17,7 @@
/**
* shmem_file_setup - get an unlinked file living in tmpfs
* @name: name for dentry (to be seen in /proc/<pid>/maps
-@@ -2567,11 +2577,8 @@ int shmem_zero_setup(struct vm_area_stru
+@@ -2979,11 +2989,8 @@ int shmem_zero_setup(struct vm_area_stru
if (IS_ERR(file))
return PTR_ERR(file);
@@ -33,7 +33,7 @@
--- a/fs/file.c
+++ b/fs/file.c
-@@ -268,6 +268,7 @@ int expand_files(struct files_struct *fi
+@@ -269,6 +269,7 @@ int expand_files(struct files_struct *fi
/* All good, so we try */
return expand_fdtable(files, nr);
}
@@ -43,7 +43,7 @@
{
--- a/kernel/exit.c
+++ b/kernel/exit.c
-@@ -500,6 +500,7 @@ struct files_struct *get_files_struct(st
+@@ -513,6 +513,7 @@ struct files_struct *get_files_struct(st
return files;
}
@@ -51,7 +51,7 @@
void put_files_struct(struct files_struct *files)
{
-@@ -521,6 +522,7 @@ void put_files_struct(struct files_struc
+@@ -534,6 +535,7 @@ void put_files_struct(struct files_struc
rcu_read_unlock();
}
}
@@ -61,7 +61,7 @@
{
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
-@@ -3854,6 +3854,7 @@ int can_nice(const struct task_struct *p
+@@ -4106,6 +4106,7 @@ int can_nice(const struct task_struct *p
return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) ||
capable(CAP_SYS_NICE));
}
@@ -71,25 +71,17 @@
--- a/mm/memory.c
+++ b/mm/memory.c
-@@ -1412,6 +1412,7 @@ unsigned long zap_page_range(struct vm_a
- tlb_finish_mmu(&tlb, address, end);
- return end;
+@@ -1408,6 +1408,7 @@ void zap_page_range(struct vm_area_struc
+ mmu_notifier_invalidate_range_end(mm, start, end);
+ tlb_finish_mmu(&tlb, start, end);
}
+EXPORT_SYMBOL_GPL(zap_page_range);
/**
- * zap_vma_ptes - remove ptes mapping the vma
-@@ -3087,6 +3088,7 @@ static inline int check_stack_guard_page
- }
- return 0;
- }
-+EXPORT_SYMBOL_GPL(vmtruncate_range);
-
- /*
- * We enter with non-exclusive mmap_sem (to exclude vma changes,
+ * zap_page_range_single - remove user pages in a given range
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
-@@ -1257,6 +1257,7 @@ void unmap_kernel_range(unsigned long ad
+@@ -1266,6 +1266,7 @@ void unmap_kernel_range(unsigned long ad
vunmap_page_range(addr, end);
flush_tlb_kernel_range(addr, end);
}
@@ -97,21 +89,22 @@
int map_vm_area(struct vm_struct *area, pgprot_t prot, struct page ***pages)
{
-@@ -1394,6 +1395,7 @@ struct vm_struct *get_vm_area(unsigned l
+@@ -1403,6 +1404,7 @@ struct vm_struct *get_vm_area(unsigned l
return __get_vm_area_node(size, 1, flags, VMALLOC_START, VMALLOC_END,
-1, GFP_KERNEL, __builtin_return_address(0));
}
+EXPORT_SYMBOL_GPL(get_vm_area);
struct vm_struct *get_vm_area_caller(unsigned long size, unsigned long flags,
- void *caller)
---- a/include/linux/mm.h
-+++ b/include/linux/mm.h
-@@ -872,6 +872,7 @@ extern bool skip_free_areas_node(unsigne
-
- int shmem_lock(struct file *file, int lock, struct user_struct *user);
- struct file *shmem_file_setup(const char *name, loff_t size, unsigned long flags);
-+void shmem_set_file(struct vm_area_struct *vma, struct file *file);
- int shmem_zero_setup(struct vm_area_struct *);
-
- extern int can_do_mlock(void);
+ const void *caller)
+--- a/include/linux/shmem_fs.h
++++ b/include/linux/shmem_fs.h
+@@ -46,6 +46,8 @@ extern int shmem_init(void);
+ extern int shmem_fill_super(struct super_block *sb, void *data, int silent);
+ extern struct file *shmem_file_setup(const char *name,
+ loff_t size, unsigned long flags);
++
++extern void shmem_set_file(struct vm_area_struct *vma, struct file *file);
+ extern int shmem_zero_setup(struct vm_area_struct *);
+ extern int shmem_lock(struct file *file, int lock, struct user_struct *user);
+ extern void shmem_unlock_mapping(struct address_space *mapping);
diff --git a/target/linux/generic/patches-3.6/980-update_arm_machtypes.patch b/target/linux/generic/patches-3.6/980-update_arm_machtypes.patch
index 391511c8f..ff2530b27 100644
--- a/target/linux/generic/patches-3.6/980-update_arm_machtypes.patch
+++ b/target/linux/generic/patches-3.6/980-update_arm_machtypes.patch
@@ -1,6 +1,6 @@
--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
-@@ -12,531 +12,3179 @@
+@@ -12,539 +12,3428 @@
#
# http://www.arm.linux.org.uk/developer/machines/?action=new
#
@@ -8,8 +8,8 @@
-# are merged into mainline or have been edited in the machine database
-# within the last 12 months. References to machine_is_NAME() do not count!
-#
--# Last update: Tue Dec 6 11:07:38 2011
-+# Last update: Fri Apr 20 08:30:36 2012
+-# Last update: Thu Apr 26 08:44:23 2012
++# Last update: Tue Oct 23 13:49:50 2012
#
# machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number
#
@@ -1024,7 +1024,7 @@
+mtt_ranger MACH_MTT_RANGER MTT_RANGER 1018
+nexus MACH_NEXUS NEXUS 1019
+desman MACH_DESMAN DESMAN 1020
-+bkde303 MACH_BKDE303 BKDE303 1021
+ bkde303 MACH_BKDE303 BKDE303 1021
smdk2413 MACH_SMDK2413 SMDK2413 1022
+aml_m7200 MACH_AML_M7200 AML_M7200 1023
aml_m5900 MACH_AML_M5900 AML_M5900 1024
@@ -2155,8 +2155,8 @@
+actia_tgw MACH_ACTIA_TGW ACTIA_TGW 2169
+e4430 MACH_E4430 E4430 2170
+ql300 MACH_QL300 QL300 2171
- btmavb101 MACH_BTMAVB101 BTMAVB101 2172
- btmawb101 MACH_BTMAWB101 BTMAWB101 2173
++btmavb101 MACH_BTMAVB101 BTMAVB101 2172
++btmawb101 MACH_BTMAWB101 BTMAWB101 2173
+sq201 MACH_SQ201 SQ201 2174
+quatro45xx MACH_QUATRO45XX QUATRO45XX 2175
+openpad MACH_OPENPAD OPENPAD 2176
@@ -2201,7 +2201,7 @@
+irvine MACH_IRVINE IRVINE 2217
+sff772 MACH_SFF772 SFF772 2218
+pelco_milano MACH_PELCO_MILANO PELCO_MILANO 2219
- pc7302 MACH_PC7302 PC7302 2220
++pc7302 MACH_PC7302 PC7302 2220
+bip6000 MACH_BIP6000 BIP6000 2221
+silvermoon MACH_SILVERMOON SILVERMOON 2222
+vc0830 MACH_VC0830 VC0830 2223
@@ -2282,7 +2282,7 @@
+dilax_pcu200 MACH_DILAX_PCU200 DILAX_PCU200 2299
+leonardo MACH_LEONARDO LEONARDO 2300
+zoran_approach7 MACH_ZORAN_APPROACH7 ZORAN_APPROACH7 2301
- dp6xx MACH_DP6XX DP6XX 2302
++dp6xx MACH_DP6XX DP6XX 2302
+bcm2153_vesper MACH_BCM2153_VESPER BCM2153_VESPER 2303
mahimahi MACH_MAHIMAHI MAHIMAHI 2304
+clickc MACH_CLICKC CLICKC 2305
@@ -2551,9 +2551,9 @@
+magnolia2 MACH_MAGNOLIA2 MAGNOLIA2 2573
+emxx MACH_EMXX EMXX 2574
+outlaw MACH_OUTLAW OUTLAW 2575
- riot_bei2 MACH_RIOT_BEI2 RIOT_BEI2 2576
++riot_bei2 MACH_RIOT_BEI2 RIOT_BEI2 2576
+riot_gx2 MACH_RIOT_VOX RIOT_VOX 2577
- riot_x37 MACH_RIOT_X37 RIOT_X37 2578
++riot_x37 MACH_RIOT_X37 RIOT_X37 2578
+mega25mx MACH_MEGA25MX MEGA25MX 2579
+benzina2 MACH_BENZINA2 BENZINA2 2580
+ignite MACH_IGNITE IGNITE 2581
@@ -2656,7 +2656,7 @@
+micro2440 MACH_MICRO2440 MICRO2440 2680
+am2440 MACH_AM2440 AM2440 2681
+tq2440 MACH_TQ2440 TQ2440 2682
- ea2478devkit MACH_EA2478DEVKIT EA2478DEVKIT 2683
++ea2478devkit MACH_EA2478DEVKIT EA2478DEVKIT 2683
+ak880x MACH_AK880X AK880X 2684
+cobra3530 MACH_COBRA3530 COBRA3530 2685
+pmppb MACH_PMPPB PMPPB 2686
@@ -2730,9 +2730,9 @@
msm8x60_surf MACH_MSM8X60_SURF MSM8X60_SURF 2755
msm8x60_sim MACH_MSM8X60_SIM MSM8X60_SIM 2756
tcc8000_sdk MACH_TCC8000_SDK TCC8000_SDK 2758
- nanos MACH_NANOS NANOS 2759
++nanos MACH_NANOS NANOS 2759
+stamp9g10 MACH_STAMP9G10 STAMP9G10 2760
- stamp9g45 MACH_STAMP9G45 STAMP9G45 2761
++stamp9g45 MACH_STAMP9G45 STAMP9G45 2761
+h6053 MACH_H6053 H6053 2762
+smint01 MACH_SMINT01 SMINT01 2763
+prtlvt2 MACH_PRTLVT2 PRTLVT2 2764
@@ -2807,12 +2807,11 @@
+omap3_tao3530 MACH_OMAP3_TAO3530 OMAP3_TAO3530 2836
+omap3_pcutouch MACH_OMAP3_PCUTOUCH OMAP3_PCUTOUCH 2837
smdkc210 MACH_SMDKC210 SMDKC210 2838
--pca102 MACH_PCA102 PCA102 2843
+omap3_braillo MACH_OMAP3_BRAILLO OMAP3_BRAILLO 2839
+spyplug MACH_SPYPLUG SPYPLUG 2840
+ginger MACH_GINGER GINGER 2841
+tny_t3530 MACH_TNY_T3530 TNY_T3530 2842
-+pcaal1 MACH_PCAAL1 PCAAL1 2843
+ pcaal1 MACH_PCAAL1 PCAAL1 2843
+spade MACH_SPADE SPADE 2844
+mxc25_topaz MACH_MXC25_TOPAZ MXC25_TOPAZ 2845
t5325 MACH_T5325 T5325 2846
@@ -2826,9 +2825,9 @@
+xsbase255 MACH_XSBASE255 XSBASE255 2854
+pvm2030 MACH_PVM2030 PVM2030 2855
+mioa502 MACH_MIOA502 MIOA502 2856
- vvbox_sdorig2 MACH_VVBOX_SDORIG2 VVBOX_SDORIG2 2857
- vvbox_sdlite2 MACH_VVBOX_SDLITE2 VVBOX_SDLITE2 2858
- vvbox_sdpro4 MACH_VVBOX_SDPRO4 VVBOX_SDPRO4 2859
++vvbox_sdorig2 MACH_VVBOX_SDORIG2 VVBOX_SDORIG2 2857
++vvbox_sdlite2 MACH_VVBOX_SDLITE2 VVBOX_SDLITE2 2858
++vvbox_sdpro4 MACH_VVBOX_SDPRO4 VVBOX_SDPRO4 2859
+htc_spv_m700 MACH_HTC_SPV_M700 HTC_SPV_M700 2860
mx257sx MACH_MX257SX MX257SX 2861
goni MACH_GONI GONI 2862
@@ -2878,7 +2877,7 @@
+blueshark MACH_BLUESHARK BLUESHARK 2907
+e10 MACH_E10 E10 2908
+app3k_robin MACH_APP3K_ROBIN APP3K_ROBIN 2909
-+pov15hd MACH_POV15HD POV15HD 2910
+ pov15hd MACH_POV15HD POV15HD 2910
+stella MACH_STELLA STELLA 2911
linkstation_lschl MACH_LINKSTATION_LSCHL LINKSTATION_LSCHL 2913
+netwalker MACH_NETWALKER NETWALKER 2914
@@ -3004,6 +3003,7 @@
+spdm MACH_SPDM SPDM 3037
+gtib MACH_GTIB GTIB 3038
+dgm3240 MACH_DGM3240 DGM3240 3039
++iv_atlas_i_lpe MACH_ATLAS_I_LPE ATLAS_I_LPE 3040
+htcmega MACH_HTCMEGA HTCMEGA 3041
+tricorder MACH_TRICORDER TRICORDER 3042
tx28 MACH_TX28 TX28 3043
@@ -3183,74 +3183,258 @@
+unino1 MACH_UNINO1 UNINO1 3223
+greeco MACH_GREECO GREECO 3224
+verdi MACH_VERDI VERDI 3225
- dm6446_adbox MACH_DM6446_ADBOX DM6446_ADBOX 3226
- quad_salsa MACH_QUAD_SALSA QUAD_SALSA 3227
- abb_gma_1_1 MACH_ABB_GMA_1_1 ABB_GMA_1_1 3228
-@@ -603,7 +3251,9 @@ isc3 MACH_ISC3 ISC3 3291
- rascal MACH_RASCAL RASCAL 3292
++dm6446_adbox MACH_DM6446_ADBOX DM6446_ADBOX 3226
++quad_salsa MACH_QUAD_SALSA QUAD_SALSA 3227
++abb_gma_1_1 MACH_ABB_GMA_1_1 ABB_GMA_1_1 3228
++svcid MACH_SVCID SVCID 3229
+ msm8960_sim MACH_MSM8960_SIM MSM8960_SIM 3230
+ msm8960_rumi3 MACH_MSM8960_RUMI3 MSM8960_RUMI3 3231
++icon_g MACH_ICON_G ICON_G 3232
++mb3 MACH_MB3 MB3 3233
+ gsia18s MACH_GSIA18S GSIA18S 3234
++pivicc MACH_PIVICC PIVICC 3235
++pcm048 MACH_PCM048 PCM048 3236
++dds MACH_DDS DDS 3237
++chalten_xa1 MACH_CHALTEN_XA1 CHALTEN_XA1 3238
++ts48xx MACH_TS48XX TS48XX 3239
++tonga2_tfttimer MACH_TONGA2_TFTTIMER TONGA2_TFTTIMER 3240
++whistler MACH_WHISTLER WHISTLER 3241
++asl_phoenix MACH_ASL_PHOENIX ASL_PHOENIX 3242
++at91sam9263otlite MACH_AT91SAM9263OTLITE AT91SAM9263OTLITE 3243
++ddplug MACH_DDPLUG DDPLUG 3244
++d2plug MACH_D2PLUG D2PLUG 3245
++kzm9d MACH_KZM9D KZM9D 3246
++verdi_lte MACH_VERDI_LTE VERDI_LTE 3247
++nanozoom MACH_NANOZOOM NANOZOOM 3248
++dm3730_som_lv MACH_DM3730_SOM_LV DM3730_SOM_LV 3249
++dm3730_torpedo MACH_DM3730_TORPEDO DM3730_TORPEDO 3250
++anchovy MACH_ANCHOVY ANCHOVY 3251
++re2rev20 MACH_RE2REV20 RE2REV20 3253
++re2rev21 MACH_RE2REV21 RE2REV21 3254
++cns21xx MACH_CNS21XX CNS21XX 3255
++rider MACH_RIDER RIDER 3257
++nsk330 MACH_NSK330 NSK330 3258
++cns2133evb MACH_CNS2133EVB CNS2133EVB 3259
++z3_816x_mod MACH_Z3_816X_MOD Z3_816X_MOD 3260
++z3_814x_mod MACH_Z3_814X_MOD Z3_814X_MOD 3261
++beect MACH_BEECT BEECT 3262
++dma_thunderbug MACH_DMA_THUNDERBUG DMA_THUNDERBUG 3263
++omn_at91sam9g20 MACH_OMN_AT91SAM9G20 OMN_AT91SAM9G20 3264
++mx25_e2s_uc MACH_MX25_E2S_UC MX25_E2S_UC 3265
++mione MACH_MIONE MIONE 3266
++top9000_tcu MACH_TOP9000_TCU TOP9000_TCU 3267
++top9000_bsl MACH_TOP9000_BSL TOP9000_BSL 3268
++kingdom MACH_KINGDOM KINGDOM 3269
++armadillo460 MACH_ARMADILLO460 ARMADILLO460 3270
++lq2 MACH_LQ2 LQ2 3271
++sweda_tms2 MACH_SWEDA_TMS2 SWEDA_TMS2 3272
+ mx53_loco MACH_MX53_LOCO MX53_LOCO 3273
++acer_a8 MACH_ACER_A8 ACER_A8 3275
++acer_gauguin MACH_ACER_GAUGUIN ACER_GAUGUIN 3276
++guppy MACH_GUPPY GUPPY 3277
++mx61_ard MACH_MX61_ARD MX61_ARD 3278
+ tx53 MACH_TX53 TX53 3279
++omapl138_case_a3 MACH_OMAPL138_CASE_A3 OMAPL138_CASE_A3 3280
++uemd MACH_UEMD UEMD 3281
++ccwmx51mut MACH_CCWMX51MUT CCWMX51MUT 3282
++rockhopper MACH_ROCKHOPPER ROCKHOPPER 3283
+ encore MACH_ENCORE ENCORE 3284
++hkdkc100 MACH_HKDKC100 HKDKC100 3285
++ts42xx MACH_TS42XX TS42XX 3286
++aebl MACH_AEBL AEBL 3287
+ wario MACH_WARIO WARIO 3288
++gfs_spm MACH_GFS_SPM GFS_SPM 3289
+ cm_t3730 MACH_CM_T3730 CM_T3730 3290
++isc3 MACH_ISC3 ISC3 3291
++rascal MACH_RASCAL RASCAL 3292
hrefv60 MACH_HREFV60 HREFV60 3293
- tpt_2_0 MACH_TPT_2_0 TPT_2_0 3294
++tpt_2_0 MACH_TPT_2_0 TPT_2_0 3294
+pydtd MACH_PYRAMID_TD PYRAMID_TD 3295
- splendor MACH_SPLENDOR SPLENDOR 3296
++splendor MACH_SPLENDOR SPLENDOR 3296
+guf_vincell MACH_GUF_PLANET GUF_PLANET 3297
- msm8x60_qt MACH_MSM8X60_QT MSM8X60_QT 3298
- htc_hd_mini MACH_HTC_HD_MINI HTC_HD_MINI 3299
- athene MACH_ATHENE ATHENE 3300
-@@ -614,6 +3264,7 @@ rfl109145_ssrv MACH_RFL109145_SSRV RFL1
- nmh MACH_NMH NMH 3305
- wn802t MACH_WN802T WN802T 3306
- dragonet MACH_DRAGONET DRAGONET 3307
++msm8x60_qt MACH_MSM8X60_QT MSM8X60_QT 3298
++htc_hd_mini MACH_HTC_HD_MINI HTC_HD_MINI 3299
++athene MACH_ATHENE ATHENE 3300
++deep_r_ek_1 MACH_DEEP_R_EK_1 DEEP_R_EK_1 3301
++vivow_ct MACH_VIVOW_CT VIVOW_CT 3302
++nery_1000 MACH_NERY_1000 NERY_1000 3303
++rfl109145_ssrv MACH_RFL109145_SSRV RFL109145_SSRV 3304
++nmh MACH_NMH NMH 3305
++wn802t MACH_WN802T WN802T 3306
++dragonet MACH_DRAGONET DRAGONET 3307
+geneva_b4 MACH_GENEVA_B GENEVA_B 3308
- at91sam9263desk16l MACH_AT91SAM9263DESK16L AT91SAM9263DESK16L 3309
- bcmhana_sv MACH_BCMHANA_SV BCMHANA_SV 3310
- bcmhana_tablet MACH_BCMHANA_TABLET BCMHANA_TABLET 3311
-@@ -621,11 +3272,13 @@ koi MACH_KOI KOI 3312
- ts4800 MACH_TS4800 TS4800 3313
- tqma9263 MACH_TQMA9263 TQMA9263 3314
- holiday MACH_HOLIDAY HOLIDAY 3315
++at91sam9263desk16l MACH_AT91SAM9263DESK16L AT91SAM9263DESK16L 3309
++bcmhana_sv MACH_BCMHANA_SV BCMHANA_SV 3310
++bcmhana_tablet MACH_BCMHANA_TABLET BCMHANA_TABLET 3311
++koi MACH_KOI KOI 3312
++ts4800 MACH_TS4800 TS4800 3313
++tqma9263 MACH_TQMA9263 TQMA9263 3314
++holiday MACH_HOLIDAY HOLIDAY 3315
+dma_6410 MACH_DMA6410 DMA6410 3316
- pcats_overlay MACH_PCATS_OVERLAY PCATS_OVERLAY 3317
- hwgw6410 MACH_HWGW6410 HWGW6410 3318
- shenzhou MACH_SHENZHOU SHENZHOU 3319
- cwme9210 MACH_CWME9210 CWME9210 3320
- cwme9210js MACH_CWME9210JS CWME9210JS 3321
++pcats_overlay MACH_PCATS_OVERLAY PCATS_OVERLAY 3317
++hwgw6410 MACH_HWGW6410 HWGW6410 3318
++shenzhou MACH_SHENZHOU SHENZHOU 3319
++cwme9210 MACH_CWME9210 CWME9210 3320
++cwme9210js MACH_CWME9210JS CWME9210JS 3321
+pgs_v1 MACH_PGS_SITARA PGS_SITARA 3322
- colibri_tegra2 MACH_COLIBRI_TEGRA2 COLIBRI_TEGRA2 3323
- w21 MACH_W21 W21 3324
- polysat1 MACH_POLYSAT1 POLYSAT1 3325
-@@ -691,11 +3344,15 @@ viprinet MACH_VIPRINET VIPRINET 3385
- bockw MACH_BOCKW BOCKW 3386
- eva2000 MACH_EVA2000 EVA2000 3387
- steelyard MACH_STEELYARD STEELYARD 3388
++colibri_tegra2 MACH_COLIBRI_TEGRA2 COLIBRI_TEGRA2 3323
++w21 MACH_W21 W21 3324
++polysat1 MACH_POLYSAT1 POLYSAT1 3325
++dataway MACH_DATAWAY DATAWAY 3326
++cobral138 MACH_COBRAL138 COBRAL138 3327
++roverpcs8 MACH_ROVERPCS8 ROVERPCS8 3328
++marvelc MACH_MARVELC MARVELC 3329
++navefihid MACH_NAVEFIHID NAVEFIHID 3330
++dm365_cv100 MACH_DM365_CV100 DM365_CV100 3331
++able MACH_ABLE ABLE 3332
++legacy MACH_LEGACY LEGACY 3333
++icong MACH_ICONG ICONG 3334
++rover_g8 MACH_ROVER_G8 ROVER_G8 3335
++t5388p MACH_T5388P T5388P 3336
++dingo MACH_DINGO DINGO 3337
++goflexhome MACH_GOFLEXHOME GOFLEXHOME 3338
++lanreadyfn511 MACH_LANREADYFN511 LANREADYFN511 3340
++omap3_baia MACH_OMAP3_BAIA OMAP3_BAIA 3341
++omap3smartdisplay MACH_OMAP3SMARTDISPLAY OMAP3SMARTDISPLAY 3342
++xilinx MACH_XILINX XILINX 3343
++a2f MACH_A2F A2F 3344
++sky25 MACH_SKY25 SKY25 3345
++ccmx53 MACH_CCMX53 CCMX53 3346
++ccmx53js MACH_CCMX53JS CCMX53JS 3347
++ccwmx53 MACH_CCWMX53 CCWMX53 3348
++ccwmx53js MACH_CCWMX53JS CCWMX53JS 3349
++frisms MACH_FRISMS FRISMS 3350
++msm7x27a_ffa MACH_MSM7X27A_FFA MSM7X27A_FFA 3351
++msm7x27a_surf MACH_MSM7X27A_SURF MSM7X27A_SURF 3352
++msm7x27a_rumi3 MACH_MSM7X27A_RUMI3 MSM7X27A_RUMI3 3353
++dimmsam9g20 MACH_DIMMSAM9G20 DIMMSAM9G20 3354
++dimm_imx28 MACH_DIMM_IMX28 DIMM_IMX28 3355
++amk_a4 MACH_AMK_A4 AMK_A4 3356
++gnet_sgme MACH_GNET_SGME GNET_SGME 3357
++shooter_u MACH_SHOOTER_U SHOOTER_U 3358
++vmx53 MACH_VMX53 VMX53 3359
++rhino MACH_RHINO RHINO 3360
+ armlex4210 MACH_ARMLEX4210 ARMLEX4210 3361
++swarcoextmodem MACH_SWARCOEXTMODEM SWARCOEXTMODEM 3362
+ snowball MACH_SNOWBALL SNOWBALL 3363
++pcm049 MACH_PCM049 PCM049 3364
++vigor MACH_VIGOR VIGOR 3365
++oslo_amundsen MACH_OSLO_AMUNDSEN OSLO_AMUNDSEN 3366
++gsl_diamond MACH_GSL_DIAMOND GSL_DIAMOND 3367
++cv2201 MACH_CV2201 CV2201 3368
++cv2202 MACH_CV2202 CV2202 3369
++cv2203 MACH_CV2203 CV2203 3370
++vit_ibox MACH_VIT_IBOX VIT_IBOX 3371
++dm6441_esp MACH_DM6441_ESP DM6441_ESP 3372
++at91sam9x5ek MACH_AT91SAM9X5EK AT91SAM9X5EK 3373
++libra MACH_LIBRA LIBRA 3374
++easycrrh MACH_EASYCRRH EASYCRRH 3375
++tripel MACH_TRIPEL TRIPEL 3376
++endian_mini MACH_ENDIAN_MINI ENDIAN_MINI 3377
+ xilinx_ep107 MACH_XILINX_EP107 XILINX_EP107 3378
+ nuri MACH_NURI NURI 3379
++janus MACH_JANUS JANUS 3380
++ddnas MACH_DDNAS DDNAS 3381
++tag MACH_TAG TAG 3382
++tagw MACH_TAGW TAGW 3383
++nitrogen_vm_imx51 MACH_NITROGEN_VM_IMX51 NITROGEN_VM_IMX51 3384
++viprinet MACH_VIPRINET VIPRINET 3385
++bockw MACH_BOCKW BOCKW 3386
++eva2000 MACH_EVA2000 EVA2000 3387
++steelyard MACH_STEELYARD STEELYARD 3388
+ea2468devkit MACH_LPC2468OEM LPC2468OEM 3389
+sdh001 MACH_MACH_SDH001 MACH_SDH001 3390
+fe2478mblox MACH_LPC2478MICROBLOX LPC2478MICROBLOX 3391
- nsslsboard MACH_NSSLSBOARD NSSLSBOARD 3392
- geneva_b5 MACH_GENEVA_B5 GENEVA_B5 3393
- spear1340 MACH_SPEAR1340 SPEAR1340 3394
- rexmas MACH_REXMAS REXMAS 3395
- msm8960_cdp MACH_MSM8960_CDP MSM8960_CDP 3396
++nsslsboard MACH_NSSLSBOARD NSSLSBOARD 3392
++geneva_b5 MACH_GENEVA_B5 GENEVA_B5 3393
++spear1340 MACH_SPEAR1340 SPEAR1340 3394
++rexmas MACH_REXMAS REXMAS 3395
++msm8960_cdp MACH_MSM8960_CDP MSM8960_CDP 3396
+msm8960_mtp MACH_MSM8960_MDP MSM8960_MDP 3397
- msm8960_fluid MACH_MSM8960_FLUID MSM8960_FLUID 3398
- msm8960_apq MACH_MSM8960_APQ MSM8960_APQ 3399
- helios_v2 MACH_HELIOS_V2 HELIOS_V2 3400
-@@ -727,6 +3384,7 @@ gt_i5700 MACH_GT_I5700 GT_I5700 3425
- ctera_plug_c2 MACH_CTERA_PLUG_C2 CTERA_PLUG_C2 3426
- marvelct MACH_MARVELCT MARVELCT 3427
- ag11005 MACH_AG11005 AG11005 3428
++msm8960_fluid MACH_MSM8960_FLUID MSM8960_FLUID 3398
++msm8960_apq MACH_MSM8960_APQ MSM8960_APQ 3399
++helios_v2 MACH_HELIOS_V2 HELIOS_V2 3400
++mif10p MACH_MIF10P MIF10P 3401
++iam28 MACH_IAM28 IAM28 3402
++picasso MACH_PICASSO PICASSO 3403
++mr301a MACH_MR301A MR301A 3404
++notle MACH_NOTLE NOTLE 3405
++eelx2 MACH_EELX2 EELX2 3406
++moon MACH_MOON MOON 3407
++ruby MACH_RUBY RUBY 3408
++goldengate MACH_GOLDENGATE GOLDENGATE 3409
++ctbu_gen2 MACH_CTBU_GEN2 CTBU_GEN2 3410
++kmp_am17_01 MACH_KMP_AM17_01 KMP_AM17_01 3411
+ wtplug MACH_WTPLUG WTPLUG 3412
++mx27su2 MACH_MX27SU2 MX27SU2 3413
++nb31 MACH_NB31 NB31 3414
++hjsdu MACH_HJSDU HJSDU 3415
++td3_rev1 MACH_TD3_REV1 TD3_REV1 3416
++eag_ci4000 MACH_EAG_CI4000 EAG_CI4000 3417
++net5big_nand_v2 MACH_NET5BIG_NAND_V2 NET5BIG_NAND_V2 3418
++cpx2 MACH_CPX2 CPX2 3419
++net2big_nand_v2 MACH_NET2BIG_NAND_V2 NET2BIG_NAND_V2 3420
++ecuv5 MACH_ECUV5 ECUV5 3421
++hsgx6d MACH_HSGX6D HSGX6D 3422
++dawad7 MACH_DAWAD7 DAWAD7 3423
++sam9repeater MACH_SAM9REPEATER SAM9REPEATER 3424
++gt_i5700 MACH_GT_I5700 GT_I5700 3425
++ctera_plug_c2 MACH_CTERA_PLUG_C2 CTERA_PLUG_C2 3426
++marvelct MACH_MARVELCT MARVELCT 3427
++ag11005 MACH_AG11005 AG11005 3428
+omap_tabletblaze MACH_OMAP_BLAZE OMAP_BLAZE 3429
- vangogh MACH_VANGOGH VANGOGH 3430
- matrix505 MACH_MATRIX505 MATRIX505 3431
- oce_nigma MACH_OCE_NIGMA OCE_NIGMA 3432
-@@ -766,6 +3424,7 @@ h1600 MACH_H1600 H1600 3465
- mini210 MACH_MINI210 MINI210 3466
- mini8168 MACH_MINI8168 MINI8168 3467
- pc7308 MACH_PC7308 PC7308 3468
++vangogh MACH_VANGOGH VANGOGH 3430
++matrix505 MACH_MATRIX505 MATRIX505 3431
++oce_nigma MACH_OCE_NIGMA OCE_NIGMA 3432
++t55 MACH_T55 T55 3433
++bio3k MACH_BIO3K BIO3K 3434
++expressct MACH_EXPRESSCT EXPRESSCT 3435
++cardhu MACH_CARDHU CARDHU 3436
++aruba MACH_ARUBA ARUBA 3437
++bonaire MACH_BONAIRE BONAIRE 3438
++nuc700evb MACH_NUC700EVB NUC700EVB 3439
++nuc710evb MACH_NUC710EVB NUC710EVB 3440
++nuc740evb MACH_NUC740EVB NUC740EVB 3441
++nuc745evb MACH_NUC745EVB NUC745EVB 3442
++transcede MACH_TRANSCEDE TRANSCEDE 3443
++mora MACH_MORA MORA 3444
++nda_evm MACH_NDA_EVM NDA_EVM 3445
++timu MACH_TIMU TIMU 3446
++expressh MACH_EXPRESSH EXPRESSH 3447
+ veridis_a300 MACH_VERIDIS_A300 VERIDIS_A300 3448
++dm368_leopard MACH_DM368_LEOPARD DM368_LEOPARD 3449
++omap_mcop MACH_OMAP_MCOP OMAP_MCOP 3450
++tritip MACH_TRITIP TRITIP 3451
++sm1k MACH_SM1K SM1K 3452
++monch MACH_MONCH MONCH 3453
++curacao MACH_CURACAO CURACAO 3454
+ origen MACH_ORIGEN ORIGEN 3455
++epc10 MACH_EPC10 EPC10 3456
++sgh_i740 MACH_SGH_I740 SGH_I740 3457
++tuna MACH_TUNA TUNA 3458
++mx51_tulip MACH_MX51_TULIP MX51_TULIP 3459
++mx51_aster7 MACH_MX51_ASTER7 MX51_ASTER7 3460
++acro37xbrd MACH_ACRO37XBRD ACRO37XBRD 3461
++elke MACH_ELKE ELKE 3462
++sbc6000x MACH_SBC6000X SBC6000X 3463
++r1801e MACH_R1801E R1801E 3464
++h1600 MACH_H1600 H1600 3465
++mini210 MACH_MINI210 MINI210 3466
++mini8168 MACH_MINI8168 MINI8168 3467
++pc7308 MACH_PC7308 PC7308 3468
+ge863_pro3_evk MACH_GE863 GE863 3469
- kmm2m01 MACH_KMM2M01 KMM2M01 3470
- mx51erebus MACH_MX51EREBUS MX51EREBUS 3471
++kmm2m01 MACH_KMM2M01 KMM2M01 3470
++mx51erebus MACH_MX51EREBUS MX51EREBUS 3471
wm8650refboard MACH_WM8650REFBOARD WM8650REFBOARD 3472
-@@ -802,6 +3461,7 @@ shooter_k MACH_SHOOTER_K SHOOTER_K 35
++tuxrail MACH_TUXRAIL TUXRAIL 3473
++arthur MACH_ARTHUR ARTHUR 3474
++doorboy MACH_DOORBOY DOORBOY 3475
+ xarina MACH_XARINA XARINA 3476
++roverx7 MACH_ROVERX7 ROVERX7 3477
+ sdvr MACH_SDVR SDVR 3478
+ acer_maya MACH_ACER_MAYA ACER_MAYA 3479
+ pico MACH_PICO PICO 3480
+@@ -573,6 +3462,7 @@ shooter_k MACH_SHOOTER_K SHOOTER_K 35
nspire MACH_NSPIRE NSPIRE 3503
mickxx MACH_MICKXX MICKXX 3504
lxmb MACH_LXMB LXMB 3505
@@ -3258,7 +3442,7 @@
adam MACH_ADAM ADAM 3507
b1004 MACH_B1004 B1004 3508
oboea MACH_OBOEA OBOEA 3509
-@@ -879,6 +3539,7 @@ bct MACH_BCT BCT 3582
+@@ -650,6 +3540,7 @@ bct MACH_BCT BCT 3582
tuscan MACH_TUSCAN TUSCAN 3583
xbt_sam9g45 MACH_XBT_SAM9G45 XBT_SAM9G45 3584
enbw_cmc MACH_ENBW_CMC ENBW_CMC 3585
@@ -3266,7 +3450,7 @@
ch104mx257 MACH_CH104MX257 CH104MX257 3587
openpri MACH_OPENPRI OPENPRI 3588
am335xevm MACH_AM335XEVM AM335XEVM 3589
-@@ -900,6 +3561,7 @@ cinema MACH_CINEMA CINEMA 3604
+@@ -671,6 +3562,7 @@ cinema MACH_CINEMA CINEMA 3604
cinema_tea MACH_CINEMA_TEA CINEMA_TEA 3605
cinema_coffee MACH_CINEMA_COFFEE CINEMA_COFFEE 3606
cinema_juice MACH_CINEMA_JUICE CINEMA_JUICE 3607
@@ -3274,7 +3458,7 @@
mx53_mirage2 MACH_MX53_MIRAGE2 MX53_MIRAGE2 3609
mx53_efikasb MACH_MX53_EFIKASB MX53_EFIKASB 3610
stm_b2000 MACH_STM_B2000 STM_B2000 3612
-@@ -965,6 +3627,7 @@ pia_am35x MACH_PIA_AM35X PIA_AM35X 36
+@@ -736,6 +3628,7 @@ pia_am35x MACH_PIA_AM35X PIA_AM35X 36
cedar MACH_CEDAR CEDAR 3672
picasso_e MACH_PICASSO_E PICASSO_E 3673
samsung_e60 MACH_SAMSUNG_E60 SAMSUNG_E60 3674
@@ -3282,7 +3466,7 @@
sdvr_mini MACH_SDVR_MINI SDVR_MINI 3676
omap3_ij3k MACH_OMAP3_IJ3K OMAP3_IJ3K 3677
modasmc1 MACH_MODASMC1 MODASMC1 3678
-@@ -992,6 +3655,8 @@ fmc_uic MACH_FMC_UIC FMC_UIC 3699
+@@ -763,6 +3656,8 @@ fmc_uic MACH_FMC_UIC FMC_UIC 3699
fmc_dcm MACH_FMC_DCM FMC_DCM 3700
batwm MACH_BATWM BATWM 3701
atlas6cb MACH_ATLAS6CB ATLAS6CB 3702
@@ -3291,11 +3475,9 @@
blue MACH_BLUE BLUE 3705
colorado MACH_COLORADO COLORADO 3706
popc MACH_POPC POPC 3707
-@@ -999,15 +3664,19 @@ promwad_jade MACH_PROMWAD_JADE PROMWAD_
- amp MACH_AMP AMP 3709
- gnet_amp MACH_GNET_AMP GNET_AMP 3710
+@@ -772,14 +3667,17 @@ gnet_amp MACH_GNET_AMP GNET_AMP 3710
toques MACH_TOQUES TOQUES 3711
-+apx4devkit MACH_APX4DEVKIT APX4DEVKIT 3712
+ apx4devkit MACH_APX4DEVKIT APX4DEVKIT 3712
dct_storm MACH_DCT_STORM DCT_STORM 3713
+dm8168z3 MACH_Z3 Z3 3714
owl MACH_OWL OWL 3715
@@ -3311,7 +3493,7 @@
oslo_elisabeth MACH_OSLO_ELISABETH OSLO_ELISABETH 3725
tt01 MACH_TT01 TT01 3726
msm8930_cdp MACH_MSM8930_CDP MSM8930_CDP 3727
-@@ -1038,6 +3707,7 @@ ptip_murnau MACH_PTIP_MURNAU PTIP_MURNA
+@@ -810,6 +3708,7 @@ ptip_murnau MACH_PTIP_MURNAU PTIP_MURNA
ptip_classic MACH_PTIP_CLASSIC PTIP_CLASSIC 3753
mx53grb MACH_MX53GRB MX53GRB 3754
gagarin MACH_GAGARIN GAGARIN 3755
@@ -3319,7 +3501,15 @@
nas2big MACH_NAS2BIG NAS2BIG 3757
superfemto MACH_SUPERFEMTO SUPERFEMTO 3758
teufel MACH_TEUFEL TEUFEL 3759
-@@ -1087,6 +3757,7 @@ ubisys_g1 MACH_UBISYS_G1 UBISYS_G1 38
+@@ -835,6 +3734,7 @@ shelter MACH_SHELTER SHELTER 3778
+ omap3_devkit8500 MACH_OMAP3_DEVKIT8500 OMAP3_DEVKIT8500 3779
+ edgetd MACH_EDGETD EDGETD 3780
+ copperyard MACH_COPPERYARD COPPERYARD 3781
++edge_test MACH_EDGE EDGE 3782
+ edge_u MACH_EDGE_U EDGE_U 3783
+ edge_td MACH_EDGE_TD EDGE_TD 3784
+ wdss MACH_WDSS WDSS 3785
+@@ -858,6 +3758,7 @@ ubisys_g1 MACH_UBISYS_G1 UBISYS_G1 38
mx53_pf1 MACH_MX53_PF1 MX53_PF1 3803
asanti MACH_ASANTI ASANTI 3804
volta MACH_VOLTA VOLTA 3805
@@ -3327,7 +3517,7 @@
knight MACH_KNIGHT KNIGHT 3807
beaglebone MACH_BEAGLEBONE BEAGLEBONE 3808
becker MACH_BECKER BECKER 3809
-@@ -1148,6 +3819,7 @@ primou MACH_PRIMOU PRIMOU 3864
+@@ -919,6 +3820,7 @@ primou MACH_PRIMOU PRIMOU 3864
primoc MACH_PRIMOC PRIMOC 3865
primoct MACH_PRIMOCT PRIMOCT 3866
a9500 MACH_A9500 A9500 3867
@@ -3335,7 +3525,7 @@
pluto MACH_PLUTO PLUTO 3869
acfx100 MACH_ACFX100 ACFX100 3870
msm8625_rumi3 MACH_MSM8625_RUMI3 MSM8625_RUMI3 3871
-@@ -1161,6 +3833,8 @@ valente_wx MACH_VALENTE_WX VALENTE_WX
+@@ -932,6 +3834,8 @@ valente_wx MACH_VALENTE_WX VALENTE_WX
huangshans MACH_HUANGSHANS HUANGSHANS 3879
bosphorus1 MACH_BOSPHORUS1 BOSPHORUS1 3880
prima MACH_PRIMA PRIMA 3881
@@ -3344,275 +3534,323 @@
evita_ulk MACH_EVITA_ULK EVITA_ULK 3884
merisc600 MACH_MERISC600 MERISC600 3885
dolak MACH_DOLAK DOLAK 3886
-@@ -1169,3 +3843,271 @@ elite_ulk MACH_ELITE_ULK ELITE_ULK 38
- pov2 MACH_POV2 POV2 3889
- ipod_touch_2g MACH_IPOD_TOUCH_2G IPOD_TOUCH_2G 3890
- da850_pqab MACH_DA850_PQAB DA850_PQAB 3891
-+fermi MACH_FERMI FERMI 3892
-+ccardwmx28 MACH_CCARDWMX28 CCARDWMX28 3893
-+ccardmx28 MACH_CCARDMX28 CCARDMX28 3894
-+fs20_fcm2050 MACH_FS20_FCM2050 FS20_FCM2050 3895
-+kinetis MACH_KINETIS KINETIS 3896
-+kai MACH_KAI KAI 3897
-+bcthb2 MACH_BCTHB2 BCTHB2 3898
-+inels3_cu MACH_INELS3_CU INELS3_CU 3899
+@@ -948,6 +3852,7 @@ kinetis MACH_KINETIS KINETIS 3896
+ kai MACH_KAI KAI 3897
+ bcthb2 MACH_BCTHB2 BCTHB2 3898
+ inels3_cu MACH_INELS3_CU INELS3_CU 3899
+da850_juniper MACH_JUNIPER JUNIPER 3900
-+da850_apollo MACH_DA850_APOLLO DA850_APOLLO 3901
-+tracnas MACH_TRACNAS TRACNAS 3902
-+mityarm335x MACH_MITYARM335X MITYARM335X 3903
-+xcgz7x MACH_XCGZ7X XCGZ7X 3904
-+cubox MACH_CUBOX CUBOX 3905
-+terminator MACH_TERMINATOR TERMINATOR 3906
-+eye03 MACH_EYE03 EYE03 3907
-+kota3 MACH_KOTA3 KOTA3 3908
+ da850_apollo MACH_DA850_APOLLO DA850_APOLLO 3901
+ tracnas MACH_TRACNAS TRACNAS 3902
+ mityarm335x MACH_MITYARM335X MITYARM335X 3903
+@@ -956,6 +3861,7 @@ cubox MACH_CUBOX CUBOX 3905
+ terminator MACH_TERMINATOR TERMINATOR 3906
+ eye03 MACH_EYE03 EYE03 3907
+ kota3 MACH_KOTA3 KOTA3 3908
+mx53_nitrogen_k MACH_MX5 MX5 3909
-+pscpe MACH_PSCPE PSCPE 3910
-+akt1100 MACH_AKT1100 AKT1100 3911
-+pcaaxl2 MACH_PCAAXL2 PCAAXL2 3912
-+primodd_ct MACH_PRIMODD_CT PRIMODD_CT 3913
-+nsbc MACH_NSBC NSBC 3914
-+meson2_skt MACH_MESON2_SKT MESON2_SKT 3915
-+meson2_ref MACH_MESON2_REF MESON2_REF 3916
-+ccardwmx28js MACH_CCARDWMX28JS CCARDWMX28JS 3917
-+ccardmx28js MACH_CCARDMX28JS CCARDMX28JS 3918
-+indico MACH_INDICO INDICO 3919
-+msm8960dt MACH_MSM8960DT MSM8960DT 3920
-+primods MACH_PRIMODS PRIMODS 3921
-+beluga_m1388 MACH_BELUGA_M1388 BELUGA_M1388 3922
-+primotd MACH_PRIMOTD PRIMOTD 3923
-+varan_master MACH_VARAN_MASTER VARAN_MASTER 3924
-+primodd MACH_PRIMODD PRIMODD 3925
-+jetduo MACH_JETDUO JETDUO 3926
-+mx53_umobo MACH_MX53_UMOBO MX53_UMOBO 3927
-+trats MACH_TRATS TRATS 3928
-+starcraft MACH_STARCRAFT STARCRAFT 3929
-+qseven_tegra2 MACH_QSEVEN_TEGRA2 QSEVEN_TEGRA2 3930
-+lichee_sun4i_devbd MACH_LICHEE_SUN4I_DEVBD LICHEE_SUN4I_DEVBD 3931
-+movenow MACH_MOVENOW MOVENOW 3932
-+golf_u MACH_GOLF_U GOLF_U 3933
-+msm7627a_evb MACH_MSM7627A_EVB MSM7627A_EVB 3934
-+rambo MACH_RAMBO RAMBO 3935
-+golfu MACH_GOLFU GOLFU 3936
-+mango310 MACH_MANGO310 MANGO310 3937
-+dns343 MACH_DNS343 DNS343 3938
-+var_som_om44 MACH_VAR_SOM_OM44 VAR_SOM_OM44 3939
-+naon MACH_NAON NAON 3940
-+vp4000 MACH_VP4000 VP4000 3941
-+impcard MACH_IMPCARD IMPCARD 3942
-+smoovcam MACH_SMOOVCAM SMOOVCAM 3943
-+cobham3725 MACH_COBHAM3725 COBHAM3725 3944
-+cobham3730 MACH_COBHAM3730 COBHAM3730 3945
-+cobham3703 MACH_COBHAM3703 COBHAM3703 3946
-+quetzal MACH_QUETZAL QUETZAL 3947
-+apq8064_cdp MACH_APQ8064_CDP APQ8064_CDP 3948
-+apq8064_mtp MACH_APQ8064_MTP APQ8064_MTP 3949
-+apq8064_fluid MACH_APQ8064_FLUID APQ8064_FLUID 3950
-+apq8064_liquid MACH_APQ8064_LIQUID APQ8064_LIQUID 3951
-+mango210 MACH_MANGO210 MANGO210 3952
-+mango100 MACH_MANGO100 MANGO100 3953
-+mango24 MACH_MANGO24 MANGO24 3954
-+mango64 MACH_MANGO64 MANGO64 3955
-+nsa320 MACH_NSA320 NSA320 3956
-+elv_ccu2 MACH_ELV_CCU2 ELV_CCU2 3957
-+triton_x00 MACH_TRITON_X00 TRITON_X00 3958
-+triton_1500_2000 MACH_TRITON_1500_2000 TRITON_1500_2000 3959
-+pogoplugv4 MACH_POGOPLUGV4 POGOPLUGV4 3960
-+venus_cl MACH_VENUS_CL VENUS_CL 3961
-+vulcano_g20 MACH_VULCANO_G20 VULCANO_G20 3962
-+sgs_i9100 MACH_SGS_I9100 SGS_I9100 3963
-+stsv2 MACH_STSV2 STSV2 3964
-+csb1724 MACH_CSB1724 CSB1724 3965
-+omapl138_lcdk MACH_OMAPL138_LCDK OMAPL138_LCDK 3966
+ pscpe MACH_PSCPE PSCPE 3910
+ akt1100 MACH_AKT1100 AKT1100 3911
+ pcaaxl2 MACH_PCAAXL2 PCAAXL2 3912
+@@ -1013,10 +3919,12 @@ sgs_i9100 MACH_SGS_I9100 SGS_I9100 39
+ stsv2 MACH_STSV2 STSV2 3964
+ csb1724 MACH_CSB1724 CSB1724 3965
+ omapl138_lcdk MACH_OMAPL138_LCDK OMAPL138_LCDK 3966
+jel_dd MACH_JEWEL_DD JEWEL_DD 3967
-+pvd_mx25 MACH_PVD_MX25 PVD_MX25 3968
-+meson6_skt MACH_MESON6_SKT MESON6_SKT 3969
-+meson6_ref MACH_MESON6_REF MESON6_REF 3970
-+pxm MACH_PXM PXM 3971
+ pvd_mx25 MACH_PVD_MX25 PVD_MX25 3968
+ meson6_skt MACH_MESON6_SKT MESON6_SKT 3969
+ meson6_ref MACH_MESON6_REF MESON6_REF 3970
+ pxm MACH_PXM PXM 3971
+stuttgart MACH_S3 S3 3972
-+pogoplugv3 MACH_POGOPLUGV3 POGOPLUGV3 3973
-+mlp89626 MACH_MLP89626 MLP89626 3974
-+iomegahmndce MACH_IOMEGAHMNDCE IOMEGAHMNDCE 3975
-+pogoplugv3pci MACH_POGOPLUGV3PCI POGOPLUGV3PCI 3976
-+bntv250 MACH_BNTV250 BNTV250 3977
-+mx53_qseven MACH_MX53_QSEVEN MX53_QSEVEN 3978
-+gtl_it1100 MACH_GTL_IT1100 GTL_IT1100 3979
-+mx6q_sabresd MACH_MX6Q_SABRESD MX6Q_SABRESD 3980
-+mt4 MACH_MT4 MT4 3981
-+jumbo_d MACH_JUMBO_D JUMBO_D 3982
-+jumbo_i MACH_JUMBO_I JUMBO_I 3983
-+fs20_dmp MACH_FS20_DMP FS20_DMP 3984
-+dns320 MACH_DNS320 DNS320 3985
-+mx28bacos MACH_MX28BACOS MX28BACOS 3986
-+tl80 MACH_TL80 TL80 3987
-+polatis_nic_1001 MACH_POLATIS_NIC_1001 POLATIS_NIC_1001 3988
-+tely MACH_TELY TELY 3989
-+u8520 MACH_U8520 U8520 3990
-+manta MACH_MANTA MANTA 3991
+ pogoplugv3 MACH_POGOPLUGV3 POGOPLUGV3 3973
+ mlp89626 MACH_MLP89626 MLP89626 3974
+ iomegahmndce MACH_IOMEGAHMNDCE IOMEGAHMNDCE 3975
+@@ -1036,7 +3944,9 @@ polatis_nic_1001 MACH_POLATIS_NIC_1001 P
+ tely MACH_TELY TELY 3989
+ u8520 MACH_U8520 U8520 3990
+ manta MACH_MANTA MANTA 3991
+spear1340_lcad MACH_SPEAR_EM_S900 SPEAR_EM_S900 3992
-+mpq8064_cdp MACH_MPQ8064_CDP MPQ8064_CDP 3993
+ mpq8064_cdp MACH_MPQ8064_CDP MPQ8064_CDP 3993
+mpq8064_hrd MACH_MPQ8064_STB MPQ8064_STB 3994
-+mpq8064_dtv MACH_MPQ8064_DTV MPQ8064_DTV 3995
-+dm368som MACH_DM368SOM DM368SOM 3996
-+gprisb2 MACH_GPRISB2 GPRISB2 3997
-+chammid MACH_CHAMMID CHAMMID 3998
-+seoul2 MACH_SEOUL2 SEOUL2 3999
-+omap4_nooktablet MACH_OMAP4_NOOKTABLET OMAP4_NOOKTABLET 4000
-+aalto MACH_AALTO AALTO 4001
-+metro MACH_METRO METRO 4002
-+cydm3730 MACH_CYDM3730 CYDM3730 4003
-+tqma53 MACH_TQMA53 TQMA53 4004
-+msm7627a_qrd3 MACH_MSM7627A_QRD3 MSM7627A_QRD3 4005
-+mx28_canby MACH_MX28_CANBY MX28_CANBY 4006
-+tiger MACH_TIGER TIGER 4007
-+pcats_9307_type_a MACH_PCATS_9307_TYPE_A PCATS_9307_TYPE_A 4008
-+pcats_9307_type_o MACH_PCATS_9307_TYPE_O PCATS_9307_TYPE_O 4009
-+pcats_9307_type_r MACH_PCATS_9307_TYPE_R PCATS_9307_TYPE_R 4010
-+streamplug MACH_STREAMPLUG STREAMPLUG 4011
-+icechicken_dev MACH_ICECHICKEN_DEV ICECHICKEN_DEV 4012
-+hedgehog MACH_HEDGEHOG HEDGEHOG 4013
-+yusend_obc MACH_YUSEND_OBC YUSEND_OBC 4014
-+imxninja MACH_IMXNINJA IMXNINJA 4015
-+omap4_jarod MACH_OMAP4_JAROD OMAP4_JAROD 4016
-+eco5_pk MACH_ECO5_PK ECO5_PK 4017
-+qj2440 MACH_QJ2440 QJ2440 4018
-+mx6q_mercury MACH_MX6Q_MERCURY MX6Q_MERCURY 4019
-+cm6810 MACH_CM6810 CM6810 4020
-+omap4_torpedo MACH_OMAP4_TORPEDO OMAP4_TORPEDO 4021
-+nsa310 MACH_NSA310 NSA310 4022
-+tmx536 MACH_TMX536 TMX536 4023
-+ktt20 MACH_KTT20 KTT20 4024
-+dragonix MACH_DRAGONIX DRAGONIX 4025
-+lungching MACH_LUNGCHING LUNGCHING 4026
-+bulogics MACH_BULOGICS BULOGICS 4027
-+mx535_sx MACH_MX535_SX MX535_SX 4028
-+ngui3250 MACH_NGUI3250 NGUI3250 4029
-+salutec_dac MACH_SALUTEC_DAC SALUTEC_DAC 4030
-+loco MACH_LOCO LOCO 4031
-+ctera_plug_usi MACH_CTERA_PLUG_USI CTERA_PLUG_USI 4032
-+scepter MACH_SCEPTER SCEPTER 4033
-+sga MACH_SGA SGA 4034
-+p_81_j5 MACH_P_81_J5 P_81_J5 4035
-+p_81_o4 MACH_P_81_O4 P_81_O4 4036
-+msm8625_surf MACH_MSM8625_SURF MSM8625_SURF 4037
-+carallon_shark MACH_CARALLON_SHARK CARALLON_SHARK 4038
+ mpq8064_dtv MACH_MPQ8064_DTV MPQ8064_DTV 3995
+ dm368som MACH_DM368SOM DM368SOM 3996
+ gprisb2 MACH_GPRISB2 GPRISB2 3997
+@@ -1081,6 +3991,7 @@ p_81_j5 MACH_P_81_J5 P_81_J5 4035
+ p_81_o4 MACH_P_81_O4 P_81_O4 4036
+ msm8625_surf MACH_MSM8625_SURF MSM8625_SURF 4037
+ carallon_shark MACH_CARALLON_SHARK CARALLON_SHARK 4038
+lsgc_icam MACH_LSGCICAM LSGCICAM 4039
-+ordog MACH_ORDOG ORDOG 4040
-+puente_io MACH_PUENTE_IO PUENTE_IO 4041
-+msm8625_evb MACH_MSM8625_EVB MSM8625_EVB 4042
-+ev_am1707 MACH_EV_AM1707 EV_AM1707 4043
-+ev_am1707e2 MACH_EV_AM1707E2 EV_AM1707E2 4044
-+ev_am3517e2 MACH_EV_AM3517E2 EV_AM3517E2 4045
-+calabria MACH_CALABRIA CALABRIA 4046
-+ev_imx287 MACH_EV_IMX287 EV_IMX287 4047
-+erau MACH_ERAU ERAU 4048
-+sichuan MACH_SICHUAN SICHUAN 4049
+ ordog MACH_ORDOG ORDOG 4040
+ puente_io MACH_PUENTE_IO PUENTE_IO 4041
+ msm8625_evb MACH_MSM8625_EVB MSM8625_EVB 4042
+@@ -1091,6 +4002,7 @@ calabria MACH_CALABRIA CALABRIA 4046
+ ev_imx287 MACH_EV_IMX287 EV_IMX287 4047
+ erau MACH_ERAU ERAU 4048
+ sichuan MACH_SICHUAN SICHUAN 4049
+sopdm MACH_WIRMA3 WIRMA3 4050
-+davinci_da850 MACH_DAVINCI_DA850 DAVINCI_DA850 4051
-+omap138_trunarc MACH_OMAP138_TRUNARC OMAP138_TRUNARC 4052
-+bcm4761 MACH_BCM4761 BCM4761 4053
-+picasso_e2 MACH_PICASSO_E2 PICASSO_E2 4054
-+picasso_mf MACH_PICASSO_MF PICASSO_MF 4055
-+miro MACH_MIRO MIRO 4056
-+at91sam9g20ewon3 MACH_AT91SAM9G20EWON3 AT91SAM9G20EWON3 4057
-+yoyo MACH_YOYO YOYO 4058
-+windjkl MACH_WINDJKL WINDJKL 4059
-+monarudo MACH_MONARUDO MONARUDO 4060
-+batan MACH_BATAN BATAN 4061
-+tadao MACH_TADAO TADAO 4062
-+baso MACH_BASO BASO 4063
-+mahon MACH_MAHON MAHON 4064
-+villec2 MACH_VILLEC2 VILLEC2 4065
-+asi1230 MACH_ASI1230 ASI1230 4066
-+alaska MACH_ALASKA ALASKA 4067
-+swarco_shdsl2 MACH_SWARCO_SHDSL2 SWARCO_SHDSL2 4068
-+oxrtu MACH_OXRTU OXRTU 4069
-+omap5_panda MACH_OMAP5_PANDA OMAP5_PANDA 4070
+ davinci_da850 MACH_DAVINCI_DA850 DAVINCI_DA850 4051
+ omap138_trunarc MACH_OMAP138_TRUNARC OMAP138_TRUNARC 4052
+ bcm4761 MACH_BCM4761 BCM4761 4053
+@@ -1111,6 +4023,7 @@ alaska MACH_ALASKA ALASKA 4067
+ swarco_shdsl2 MACH_SWARCO_SHDSL2 SWARCO_SHDSL2 4068
+ oxrtu MACH_OXRTU OXRTU 4069
+ omap5_panda MACH_OMAP5_PANDA OMAP5_PANDA 4070
+imx286 MACH_MX28XDI MX28XDI 4071
-+c8000 MACH_C8000 C8000 4072
-+bje_display3_5 MACH_BJE_DISPLAY3_5 BJE_DISPLAY3_5 4073
-+picomod7 MACH_PICOMOD7 PICOMOD7 4074
-+picocom5 MACH_PICOCOM5 PICOCOM5 4075
-+qblissa8 MACH_QBLISSA8 QBLISSA8 4076
-+armstonea8 MACH_ARMSTONEA8 ARMSTONEA8 4077
-+netdcu14 MACH_NETDCU14 NETDCU14 4078
-+at91sam9x5_epiphan MACH_AT91SAM9X5_EPIPHAN AT91SAM9X5_EPIPHAN 4079
-+p2u MACH_P2U P2U 4080
-+doris MACH_DORIS DORIS 4081
-+j49 MACH_J49 J49 4082
-+vdss2e MACH_VDSS2E VDSS2E 4083
-+vc300 MACH_VC300 VC300 4084
-+ns115_pad_test MACH_NS115_PAD_TEST NS115_PAD_TEST 4085
-+ns115_pad_ref MACH_NS115_PAD_REF NS115_PAD_REF 4086
-+ns115_phone_test MACH_NS115_PHONE_TEST NS115_PHONE_TEST 4087
-+ns115_phone_ref MACH_NS115_PHONE_REF NS115_PHONE_REF 4088
-+golfc MACH_GOLFC GOLFC 4089
-+xerox_olympus MACH_XEROX_OLYMPUS XEROX_OLYMPUS 4090
-+mx6sl_arm2 MACH_MX6SL_ARM2 MX6SL_ARM2 4091
-+csb1701_csb1726 MACH_CSB1701_CSB1726 CSB1701_CSB1726 4092
-+at91sam9xeek MACH_AT91SAM9XEEK AT91SAM9XEEK 4093
-+ebv210 MACH_EBV210 EBV210 4094
-+msm7627a_qrd7 MACH_MSM7627A_QRD7 MSM7627A_QRD7 4095
-+svthin MACH_SVTHIN SVTHIN 4096
-+duovero MACH_DUOVERO DUOVERO 4097
-+chupacabra MACH_CHUPACABRA CHUPACABRA 4098
-+scorpion MACH_SCORPION SCORPION 4099
-+davinci_he_hmi10 MACH_DAVINCI_HE_HMI10 DAVINCI_HE_HMI10 4100
-+topkick MACH_TOPKICK TOPKICK 4101
-+m3_auguestrush MACH_M3_AUGUESTRUSH M3_AUGUESTRUSH 4102
-+ipc335x MACH_IPC335X IPC335X 4103
-+sun4i MACH_SUN4I SUN4I 4104
-+imx233_olinuxino MACH_IMX233_OLINUXINO IMX233_OLINUXINO 4105
-+k2_wl MACH_K2_WL K2_WL 4106
-+k2_ul MACH_K2_UL K2_UL 4107
-+k2_cl MACH_K2_CL K2_CL 4108
-+minbari_w MACH_MINBARI_W MINBARI_W 4109
-+minbari_m MACH_MINBARI_M MINBARI_M 4110
-+k035 MACH_K035 K035 4111
-+ariel MACH_ARIEL ARIEL 4112
-+arielsaarc MACH_ARIELSAARC ARIELSAARC 4113
-+arieldkb MACH_ARIELDKB ARIELDKB 4114
-+armadillo810 MACH_ARMADILLO810 ARMADILLO810 4115
-+tam335x MACH_TAM335X TAM335X 4116
-+grouper MACH_GROUPER GROUPER 4117
-+mpcsa21_9g20 MACH_MPCSA21_9G20 MPCSA21_9G20 4118
-+m6u_cpu MACH_M6U_CPU M6U_CPU 4119
-+davinci_dp10 MACH_DAVINCI_DP10 DAVINCI_DP10 4120
-+ginkgo MACH_GINKGO GINKGO 4121
-+cgt_qmx6 MACH_CGT_QMX6 CGT_QMX6 4122
-+profpga MACH_PROFPGA PROFPGA 4123
-+acfx100oc MACH_ACFX100OC ACFX100OC 4124
-+acfx100nb MACH_ACFX100NB ACFX100NB 4125
-+capricorn MACH_CAPRICORN CAPRICORN 4126
-+pisces MACH_PISCES PISCES 4127
-+aries MACH_ARIES ARIES 4128
-+cancer MACH_CANCER CANCER 4129
-+leo MACH_LEO LEO 4130
-+virgo MACH_VIRGO VIRGO 4131
-+sagittarius MACH_SAGITTARIUS SAGITTARIUS 4132
-+devil MACH_DEVIL DEVIL 4133
-+ballantines MACH_BALLANTINES BALLANTINES 4134
-+omap3_procerusvpu MACH_OMAP3_PROCERUSVPU OMAP3_PROCERUSVPU 4135
-+my27 MACH_MY27 MY27 4136
-+sun6i MACH_SUN6I SUN6I 4137
-+sun5i MACH_SUN5I SUN5I 4138
-+mx512_mx MACH_MX512_MX MX512_MX 4139
-+kzm9g MACH_KZM9G KZM9G 4140
-+vdstbn MACH_VDSTBN VDSTBN 4141
-+cfa10036 MACH_CFA10036 CFA10036 4142
-+cfa10049 MACH_CFA10049 CFA10049 4143
-+pcm051 MACH_PCM051 PCM051 4144
-+vybrid_vf7xx MACH_VYBRID_VF7XX VYBRID_VF7XX 4145
-+vybrid_vf6xx MACH_VYBRID_VF6XX VYBRID_VF6XX 4146
-+vybrid_vf5xx MACH_VYBRID_VF5XX VYBRID_VF5XX 4147
-+vybrid_vf4xx MACH_VYBRID_VF4XX VYBRID_VF4XX 4148
-+aria_g25 MACH_ARIA_G25 ARIA_G25 4149
-+bcm21553 MACH_BCM21553 BCM21553 4150
-+smdk5410 MACH_SMDK5410 SMDK5410 4151
-+lpc18xx MACH_LPC18XX LPC18XX 4152
-+oratisparty MACH_ORATISPARTY ORATISPARTY 4153
-+qseven MACH_QSEVEN QSEVEN 4154
-+gmv_generic MACH_GMV_GENERIC GMV_GENERIC 4155
-+th_link_eth MACH_TH_LINK_ETH TH_LINK_ETH 4156
-+tn_muninn MACH_TN_MUNINN TN_MUNINN 4157
-+rampage MACH_RAMPAGE RAMPAGE 4158
-+visstrim_mv10 MACH_VISSTRIM_MV10 VISSTRIM_MV10 4159
+ c8000 MACH_C8000 C8000 4072
+ bje_display3_5 MACH_BJE_DISPLAY3_5 BJE_DISPLAY3_5 4073
+ picomod7 MACH_PICOMOD7 PICOMOD7 4074
+@@ -1159,7 +4072,7 @@ tam335x MACH_TAM335X TAM335X 4116
+ grouper MACH_GROUPER GROUPER 4117
+ mpcsa21_9g20 MACH_MPCSA21_9G20 MPCSA21_9G20 4118
+ m6u_cpu MACH_M6U_CPU M6U_CPU 4119
+-davinci_dp10 MACH_DAVINCI_DP10 DAVINCI_DP10 4120
++davinci_dp7 MACH_DAVINCI_DP10 DAVINCI_DP10 4120
+ ginkgo MACH_GINKGO GINKGO 4121
+ cgt_qmx6 MACH_CGT_QMX6 CGT_QMX6 4122
+ profpga MACH_PROFPGA PROFPGA 4123
+@@ -1199,10 +4112,247 @@ th_link_eth MACH_TH_LINK_ETH TH_LINK_ET
+ tn_muninn MACH_TN_MUNINN TN_MUNINN 4157
+ rampage MACH_RAMPAGE RAMPAGE 4158
+ visstrim_mv10 MACH_VISSTRIM_MV10 VISSTRIM_MV10 4159
++monacotdu MACH_MONACO_TDU MONACO_TDU 4160
++monacoul MACH_MONACO_UL MONACO_UL 4161
++enrc2u MACH_ENRC2_U ENRC2_U 4162
++evitareul MACH_EVITA_UL EVITA_UL 4163
+ mx28_wilma MACH_MX28_WILMA MX28_WILMA 4164
++monacou MACH_MONACO_U MONACO_U 4165
+ msm8625_ffa MACH_MSM8625_FFA MSM8625_FFA 4166
+ vpu101 MACH_VPU101 VPU101 4167
++operaul MACH_OPERA_UL OPERA_UL 4168
+ baileys MACH_BAILEYS BAILEYS 4169
+ familybox MACH_FAMILYBOX FAMILYBOX 4170
+ ensemble_mx35 MACH_ENSEMBLE_MX35 ENSEMBLE_MX35 4171
+ sc_sps_1 MACH_SC_SPS_1 SC_SPS_1 4172
++ucsimply_sam9260 MACH_UCSIMPLY_SAM9260 UCSIMPLY_SAM9260 4173
++unicorn MACH_UNICORN UNICORN 4174
++m9g45a MACH_M9G45A M9G45A 4175
++mtwebif MACH_MTWEBIF MTWEBIF 4176
++playstone MACH_PLAYSTONE PLAYSTONE 4177
++chelsea MACH_CHELSEA CHELSEA 4178
++bayern MACH_BAYERN BAYERN 4179
++mitwo MACH_MITWO MITWO 4180
++mx25_noah MACH_MX25_NOAH MX25_NOAH 4181
++stm_b2020 MACH_STM_B2020 STM_B2020 4182
++annax_src MACH_ANNAX_SRC ANNAX_SRC 4183
++ionics_stratus MACH_IONICS_STRATUS IONICS_STRATUS 4184
++hugo MACH_HUGO HUGO 4185
++em300 MACH_EM300 EM300 4186
++mmp3_qseven MACH_MMP3_QSEVEN MMP3_QSEVEN 4187
++bosphorus2 MACH_BOSPHORUS2 BOSPHORUS2 4188
++tt2200 MACH_TT2200 TT2200 4189
++ocelot3 MACH_OCELOT3 OCELOT3 4190
++tek_cobra MACH_TEK_COBRA TEK_COBRA 4191
++protou MACH_PROTOU PROTOU 4192
++msm8625_evt MACH_MSM8625_EVT MSM8625_EVT 4193
++mx53_sellwood MACH_MX53_SELLWOOD MX53_SELLWOOD 4194
++somiq_am35 MACH_SOMIQ_AM35 SOMIQ_AM35 4195
++somiq_am37 MACH_SOMIQ_AM37 SOMIQ_AM37 4196
++k2_plc_cl MACH_K2_PLC_CL K2_PLC_CL 4197
++tc2 MACH_TC2 TC2 4198
++dulex_j MACH_DULEX_J DULEX_J 4199
++stm_b2044 MACH_STM_B2044 STM_B2044 4200
++deluxe_j MACH_DELUXE_J DELUXE_J 4201
++mango2443 MACH_MANGO2443 MANGO2443 4202
++cp2dcg MACH_CP2DCG CP2DCG 4203
++cp2dtg MACH_CP2DTG CP2DTG 4204
++cp2dug MACH_CP2DUG CP2DUG 4205
++var_som_am33 MACH_VAR_SOM_AM33 VAR_SOM_AM33 4206
++pepper MACH_PEPPER PEPPER 4207
++mango2450 MACH_MANGO2450 MANGO2450 4208
++valente_wx_c9 MACH_VALENTE_WX_C9 VALENTE_WX_C9 4209
++minitv MACH_MINITV MINITV 4210
++u8540 MACH_U8540 U8540 4211
++iv_atlas_i_z7e MACH_IV_ATLAS_I_Z7E IV_ATLAS_I_Z7E 4212
++mx53_csb1733 MACH_COGENT_CSB1733 COGENT_CSB1733 4213
++mach_type_sky MACH_MACH_TYPE_SKY MACH_TYPE_SKY 4214
++bluesky MACH_BLUESKY BLUESKY 4215
++ngrouter MACH_NGROUTER NGROUTER 4216
++mx53_denetim MACH_MX53_DENETIM MX53_DENETIM 4217
++opal MACH_OPAL OPAL 4218
++gnet_us3gref MACH_GNET_US3GREF GNET_US3GREF 4219
++gnet_nc3g MACH_GNET_NC3G GNET_NC3G 4220
++gnet_ge3g MACH_GNET_GE3G GNET_GE3G 4221
++adp2 MACH_ADP2 ADP2 4222
++tqma28 MACH_TQMA28 TQMA28 4223
++kacom3 MACH_KACOM3 KACOM3 4224
++rrhdemo MACH_RRHDEMO RRHDEMO 4225
++protodug MACH_PROTODUG PROTODUG 4226
++lago MACH_LAGO LAGO 4227
++ktt30 MACH_KTT30 KTT30 4228
++ts43xx MACH_TS43XX TS43XX 4229
++mx6q_denso MACH_MX6Q_DENSO MX6Q_DENSO 4230
++comsat_gsmumts8 MACH_COMSAT_GSMUMTS8 COMSAT_GSMUMTS8 4231
++dreamx MACH_DREAMX DREAMX 4232
++thunderstonem MACH_THUNDERSTONEM THUNDERSTONEM 4233
++yoyopad MACH_YOYOPAD YOYOPAD 4234
++yoyopatient MACH_YOYOPATIENT YOYOPATIENT 4235
++a10l MACH_A10L A10L 4236
++mq60 MACH_MQ60 MQ60 4237
++linkstation_lsql MACH_LINKSTATION_LSQL LINKSTATION_LSQL 4238
++am3703gateway MACH_AM3703GATEWAY AM3703GATEWAY 4239
++accipiter MACH_ACCIPITER ACCIPITER 4240
++e1853 MACH_P1853 P1853 4241
++magnidug MACH_MAGNIDUG MAGNIDUG 4242
++hydra MACH_HYDRA HYDRA 4243
++sun3i MACH_SUN3I SUN3I 4244
++stm_b2078 MACH_STM_B2078 STM_B2078 4245
++at91sam9263deskv2 MACH_AT91SAM9263DESKV2 AT91SAM9263DESKV2 4246
++deluxe_r MACH_DELUXE_R DELUXE_R 4247
++p_98_v MACH_P_98_V P_98_V 4248
++p_98_c MACH_P_98_C P_98_C 4249
++davinci_am18xx_omn MACH_DAVINCI_AM18XX_OMN DAVINCI_AM18XX_OMN 4250
++socfpga_cyclone5 MACH_SOCFPGA_CYCLONE5 SOCFPGA_CYCLONE5 4251
++cabatuin MACH_CABATUIN CABATUIN 4252
++yoyopad_ft MACH_YOYOPAD_FT YOYOPAD_FT 4253
++dan2400evb MACH_DAN2400EVB DAN2400EVB 4254
++dan3400evb MACH_DAN3400EVB DAN3400EVB 4255
++edm_sf_imx6 MACH_EDM_SF_IMX6 EDM_SF_IMX6 4256
++edm_cf_imx6 MACH_EDM_CF_IMX6 EDM_CF_IMX6 4257
++vpos3xx MACH_VPOS3XX VPOS3XX 4258
++vulcano_9x5 MACH_VULCANO_9X5 VULCANO_9X5 4259
++spmp8000 MACH_SPMP8000 SPMP8000 4260
++catalina MACH_CATALINA CATALINA 4261
++rd88f5181l_fe MACH_RD88F5181L_FE RD88F5181L_FE 4262
++mx535_mx MACH_MX535_MX MX535_MX 4263
++armadillo840 MACH_ARMADILLO840 ARMADILLO840 4264
++spc9000baseboard MACH_SPC9000BASEBOARD SPC9000BASEBOARD 4265
++iris MACH_IRIS IRIS 4266
++protodcg MACH_PROTODCG PROTODCG 4267
++palmtree MACH_PALMTREE PALMTREE 4268
++novena MACH_NOVENA NOVENA 4269
++ma_um MACH_MA_UM MA_UM 4270
++ma_am MACH_MA_AM MA_AM 4271
++ems348 MACH_EMS348 EMS348 4272
++cm_fx6 MACH_CM_FX6 CM_FX6 4273
++arndale MACH_ARNDALE ARNDALE 4274
++q5xr5 MACH_Q5XR5 Q5XR5 4275
++willow MACH_WILLOW WILLOW 4276
++omap3621_odyv3 MACH_OMAP3621_ODYV3 OMAP3621_ODYV3 4277
++omapl138_presonus MACH_OMAPL138_PRESONUS OMAPL138_PRESONUS 4278
++dvf99 MACH_DVF99 DVF99 4279
++impression_j MACH_IMPRESSION_J IMPRESSION_J 4280
++qblissa9 MACH_QBLISSA9 QBLISSA9 4281
++robin_heliview10 MACH_ROBIN_HELIVIEW10 ROBIN_HELIVIEW10 4282
++sun7i MACH_SUN7I SUN7I 4283
++mx6q_hdmidongle MACH_MX6Q_HDMIDONGLE MX6Q_HDMIDONGLE 4284
++mx6_sid2 MACH_MX6_SID2 MX6_SID2 4285
++helios_v3 MACH_HELIOS_V3 HELIOS_V3 4286
++helios_v4 MACH_HELIOS_V4 HELIOS_V4 4287
++q7_imx6 MACH_Q7_IMX6 Q7_IMX6 4288
++odroidx MACH_ODROIDX ODROIDX 4289
++robpro MACH_ROBPRO ROBPRO 4290
++research59if_mk1 MACH_RESEARCH59IF_MK1 RESEARCH59IF_MK1 4291
++bobsleigh MACH_BOBSLEIGH BOBSLEIGH 4292
++dcshgwt3 MACH_DCSHGWT3 DCSHGWT3 4293
++gld1018 MACH_GLD1018 GLD1018 4294
++ev10 MACH_EV10 EV10 4295
++nitrogen6x MACH_NITROGEN6X NITROGEN6X 4296
++p_107_bb MACH_P_107_BB P_107_BB 4297
++evita_utl MACH_EVITA_UTL EVITA_UTL 4298
++falconwing MACH_FALCONWING FALCONWING 4299
++dct3 MACH_DCT3 DCT3 4300
++cpx2e_cell MACH_CPX2E_CELL CPX2E_CELL 4301
++amiro MACH_AMIRO AMIRO 4302
++mx6q_brassboard MACH_MX6Q_BRASSBOARD MX6Q_BRASSBOARD 4303
++dalmore MACH_DALMORE DALMORE 4304
++omap3_portal7cp MACH_OMAP3_PORTAL7CP OMAP3_PORTAL7CP 4305
++tegra_pluto MACH_TEGRA_PLUTO TEGRA_PLUTO 4306
++mx6sl_evk MACH_MX6SL_EVK MX6SL_EVK 4307
++m7 MACH_M7 M7 4308
++pxm2 MACH_PXM2 PXM2 4309
++haba_knx_lite MACH_HABA_KNX_LITE HABA_KNX_LITE 4310
++tai MACH_TAI TAI 4311
++prototd MACH_PROTOTD PROTOTD 4312
++dst_tonto MACH_DST_TONTO DST_TONTO 4313
++draco MACH_DRACO DRACO 4314
++dxr2 MACH_DXR2 DXR2 4315
++rut MACH_RUT RUT 4316
++am180x_wsc MACH_AM180X_WSC AM180X_WSC 4317
++deluxe_u MACH_DELUXE_U DELUXE_U 4318
++deluxe_ul MACH_DELUXE_UL DELUXE_UL 4319
++at91sam9260medths MACH_AT91SAM9260MEDTHS AT91SAM9260MEDTHS 4320
++matrix516 MACH_MATRIX516 MATRIX516 4321
++vid401x MACH_VID401X VID401X 4322
++helios_v5 MACH_HELIOS_V5 HELIOS_V5 4323
++playpaq2 MACH_PLAYPAQ2 PLAYPAQ2 4324
++igam MACH_IGAM IGAM 4325
++amico_i MACH_AMICO_I AMICO_I 4326
++amico_e MACH_AMICO_E AMICO_E 4327
++sentient_mm3_ck MACH_SENTIENT_MM3_CK SENTIENT_MM3_CK 4328
++smx6 MACH_SMX6 SMX6 4329
++pango MACH_PANGO PANGO 4330
++ns115_stick MACH_NS115_STICK NS115_STICK 4331
++bctrm3 MACH_BCTRM3 BCTRM3 4332
++doctorws MACH_DOCTORWS DOCTORWS 4333
++m2601 MACH_M2601 M2601 4334
++gco_mgmtt MACH_GRIDCO_TRINITY GRIDCO_TRINITY 4335
++pc73032 MACH_PC3032 PC3032 4336
++vgg1111 MACH_VGG1111 VGG1111 4337
++countach MACH_COUNTACH COUNTACH 4338
++visstrim_sm20 MACH_VISSTRIM_SM20 VISSTRIM_SM20 4339
++a639 MACH_A639 A639 4340
++spacemonkey MACH_SPACEMONKEY SPACEMONKEY 4341
++zpdu_stamp MACH_ZPDU_STAMP ZPDU_STAMP 4342
++htc_g7_clone MACH_HTC_G7_CLONE HTC_G7_CLONE 4343
++ft2080_corvus MACH_FT2080_CORVUS FT2080_CORVUS 4344
++fisland MACH_FISLAND FISLAND 4345
++zpdu MACH_ZPDU ZPDU 4346
++urt MACH_URT URT 4347
++conti_ovip MACH_CONTI_OVIP CONTI_OVIP 4348
++omapl138_nagra MACH_OMAPL138_NAGRA OMAPL138_NAGRA 4349
++da850_at3kp1 MACH_DA850_AT3KP1 DA850_AT3KP1 4350
++da850_at3kp2 MACH_DA850_AT3KP2 DA850_AT3KP2 4351
++surma MACH_SURMA SURMA 4352
++stm_b2092 MACH_STM_B2092 STM_B2092 4353
++mx535_ycr MACH_MX535_YCR MX535_YCR 4354
++m7_wl MACH_M7_WL M7_WL 4355
++m7_u MACH_M7_U M7_U 4356
++omap3_stndt_evm MACH_OMAP3_STNDT_EVM OMAP3_STNDT_EVM 4357
++m7_wlv MACH_M7_WLV M7_WLV 4358
++xam3517 MACH_XAM3517 XAM3517 4359
++a220 MACH_A220 A220 4360
++aclima_odie MACH_ACLIMA_ODIE ACLIMA_ODIE 4361
++vibble MACH_VIBBLE VIBBLE 4362
++k2_u MACH_K2_U K2_U 4363
++mx53_egf MACH_MX53_EGF MX53_EGF 4364
++novpek_imx53 MACH_NOVPEK_IMX53 NOVPEK_IMX53 4365
++novpek_imx6x MACH_NOVPEK_IMX6X NOVPEK_IMX6X 4366
++mx25_smartbox MACH_MX25_SMARTBOX MX25_SMARTBOX 4367
++eicg6410 MACH_EICG6410 EICG6410 4368
++picasso_e3 MACH_PICASSO_E3 PICASSO_E3 4369
++motonavigator MACH_MOTONAVIGATOR MOTONAVIGATOR 4370
++varioconnect2 MACH_VARIOCONNECT2 VARIOCONNECT2 4371
++deluxe_tw MACH_DELUXE_TW DELUXE_TW 4372
++ref_brd MACH_VISCONTI3 VISCONTI3 4373
++kore3 MACH_KORE3 KORE3 4374
++mx6s_drs MACH_MX6S_DRS MX6S_DRS 4375
++cmimx6 MACH_CMIMX6 CMIMX6 4376
++roth MACH_ROTH ROTH 4377
++eq4ux MACH_EQ4UX EQ4UX 4378
++x1plus MACH_X1PLUS X1PLUS 4379
++modimx27 MACH_MODIMX27 MODIMX27 4380
++videon_hduac MACH_VIDEON_HDUAC VIDEON_HDUAC 4381
++blackbird MACH_BLACKBIRD BLACKBIRD 4382
++runmaster MACH_RUNMASTER RUNMASTER 4383
++ceres MACH_CERES CERES 4384
++nad435 MACH_NAD435 NAD435 4385
++ns115_proto_type MACH_NS115_PROTO_TYPE NS115_PROTO_TYPE 4386
++fs20_vcc MACH_FS20_VCC FS20_VCC 4387
++meson6tv_ref MACH_MESON6TV MESON6TV 4388
++meson6tv_skt MACH_MESON6TV_SKT MESON6TV_SKT 4389
++keystone MACH_KEYSTONE KEYSTONE 4390
++pcm052 MACH_PCM052 PCM052 4391
++rainbowg15_q7 MACH_TYPE TYPE 4392
++qrd_skud_prime MACH_QRD_SKUD_PRIME QRD_SKUD_PRIME 4393
++mx6_rainbow MACH_RAINBOWG15 RAINBOWG15 4394
++guf_santaro MACH_GUF_SANTARO GUF_SANTARO 4395
++sheepshead MACH_SHEEPSHEAD SHEEPSHEAD 4396
++mx6_iwg15m_mxm MACH_MX6_IWG15M_MXM MX6_IWG15M_MXM 4397
++mx6_iwg15m_q7 MACH_MX6_IWG15M_Q7 MX6_IWG15M_Q7 4398
++at91sam9263if8mic MACH_AT91SAM9263IF8MIC AT91SAM9263IF8MIC 4399
++ex MACH_EXCEL EXCEL 4400
++marcopolo MACH_MARCOPOLO MARCOPOLO 4401
++mx535_sdcr MACH_MX535_SDCR MX535_SDCR 4402
++
diff --git a/target/linux/generic/patches-3.6/992-mpcore_wdt_fix_watchdog_counter_loading.patch b/target/linux/generic/patches-3.6/992-mpcore_wdt_fix_watchdog_counter_loading.patch
index fb16e2aa6..26bb9b8b2 100644
--- a/target/linux/generic/patches-3.6/992-mpcore_wdt_fix_watchdog_counter_loading.patch
+++ b/target/linux/generic/patches-3.6/992-mpcore_wdt_fix_watchdog_counter_loading.patch
@@ -29,29 +29,33 @@ Signed-off-by: Vitaly Kuzmichev <vkuzmichev@mvista.com>
--- a/arch/arm/include/asm/smp_twd.h
+++ b/arch/arm/include/asm/smp_twd.h
-@@ -24,5 +24,6 @@ extern void __iomem *twd_base;
+@@ -33,6 +33,7 @@ struct twd_local_timer name __initdata =
+ };
- void twd_timer_setup(struct clock_event_device *);
- void twd_timer_stop(struct clock_event_device *);
+ int twd_local_timer_register(struct twd_local_timer *);
+unsigned long twd_timer_get_rate(void);
- #endif
+ #ifdef CONFIG_HAVE_ARM_TWD
+ void twd_local_timer_of_register(void);
--- a/arch/arm/kernel/smp_twd.c
+++ b/arch/arm/kernel/smp_twd.c
-@@ -268,3 +268,10 @@ void __cpuinit twd_timer_setup(struct cl
- 0xf, 0xffffffff);
- enable_percpu_irq(clk->irq, 0);
+@@ -352,6 +352,13 @@ int __init twd_local_timer_register(stru
+ return twd_local_timer_common_register();
}
-+
+
+/* Needed by mpcore_wdt */
+unsigned long twd_timer_get_rate(void)
+{
+ return twd_timer_rate;
+}
+EXPORT_SYMBOL_GPL(twd_timer_get_rate);
++
+ #ifdef CONFIG_OF
+ const static struct of_device_id twd_of_match[] __initconst = {
+ { .compatible = "arm,cortex-a9-twd-timer", },
--- a/drivers/watchdog/mpcore_wdt.c
+++ b/drivers/watchdog/mpcore_wdt.c
-@@ -99,9 +99,7 @@ static void mpcore_wdt_keepalive(struct
+@@ -102,9 +102,7 @@ static void mpcore_wdt_keepalive(struct
spin_lock(&wdt_lock);
/* Assume prescale is set to 256 */
diff --git a/target/linux/generic/patches-3.6/993-mpcore_wdt_fix_wdioc_setoptions_handling.patch b/target/linux/generic/patches-3.6/993-mpcore_wdt_fix_wdioc_setoptions_handling.patch
index fa261ce64..93ac93950 100644
--- a/target/linux/generic/patches-3.6/993-mpcore_wdt_fix_wdioc_setoptions_handling.patch
+++ b/target/linux/generic/patches-3.6/993-mpcore_wdt_fix_wdioc_setoptions_handling.patch
@@ -17,7 +17,7 @@ Signed-off-by: Vitaly Kuzmichev <vkuzmichev@mvista.com>
--- a/drivers/watchdog/mpcore_wdt.c
+++ b/drivers/watchdog/mpcore_wdt.c
-@@ -233,7 +233,8 @@ static long mpcore_wdt_ioctl(struct file
+@@ -236,7 +236,8 @@ static long mpcore_wdt_ioctl(struct file
if (_IOC_DIR(cmd) && _IOC_SIZE(cmd) > sizeof(uarg))
return -ENOTTY;
diff --git a/target/linux/generic/patches-3.6/994-mpcore_wdt_fix_timer_mode_setup.patch b/target/linux/generic/patches-3.6/994-mpcore_wdt_fix_timer_mode_setup.patch
index 009092376..dd9f21730 100644
--- a/target/linux/generic/patches-3.6/994-mpcore_wdt_fix_timer_mode_setup.patch
+++ b/target/linux/generic/patches-3.6/994-mpcore_wdt_fix_timer_mode_setup.patch
@@ -20,12 +20,12 @@ Signed-off-by: Vitaly Kuzmichev <vkuzmichev@mvista.com>
+#define TWD_WDOG_CONTROL_TIMER_MODE (0 << 3)
+#define TWD_WDOG_CONTROL_WATCHDOG_MODE (1 << 3)
+
- struct clock_event_device;
+ #include <linux/ioport.h>
- extern void __iomem *twd_base;
+ struct twd_local_timer {
--- a/drivers/watchdog/mpcore_wdt.c
+++ b/drivers/watchdog/mpcore_wdt.c
-@@ -118,18 +118,25 @@ static void mpcore_wdt_stop(struct mpcor
+@@ -121,18 +121,25 @@ static void mpcore_wdt_stop(struct mpcor
static void mpcore_wdt_start(struct mpcore_wdt *wdt)
{