kernel: update 3.10 to 3.10.28

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39399 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Gabor Juhos 2014-01-26 11:30:34 +00:00
parent 66745cce93
commit ae7072b9ff
47 changed files with 159 additions and 203 deletions

View File

@ -17,8 +17,8 @@ endif
ifeq ($(LINUX_VERSION),3.9.11)
LINUX_KERNEL_MD5SUM:=edbf88eb7f7d34dbd5d3887726790755
endif
ifeq ($(LINUX_VERSION),3.10.26)
LINUX_KERNEL_MD5SUM:=9cdbcb3463b9753fafd97cddb38d1211
ifeq ($(LINUX_VERSION),3.10.28)
LINUX_KERNEL_MD5SUM:=789a39e8a381a60e46fe922cb66d77e2
endif
ifeq ($(LINUX_VERSION),3.12.5)
LINUX_KERNEL_MD5SUM:=5b5330f657f562f7bef6da100a7133b1

View File

@ -13,7 +13,7 @@ FEATURES:=squashfs atm
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
SUBTARGETS:=generic ac49x
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -1,6 +1,6 @@
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
@@ -15,7 +15,7 @@ obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
@@ -16,7 +16,7 @@ obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdlinepart.o
obj-$(CONFIG_MTD_AFS_PARTS) += afs.o

View File

@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
@@ -188,6 +188,11 @@ config MTD_OF_PARTS
@@ -192,6 +192,11 @@ config MTD_OF_PARTS
the partition map from the children of the flash node,
as described in Documentation/devicetree/booting-without-of.txt.
@ -14,7 +14,7 @@
---help---
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
@@ -14,6 +14,7 @@ mtd-$(CONFIG_MTD_SPLIT_UIMAGE_FW) += mtd
@@ -15,6 +15,7 @@ mtd-$(CONFIG_MTD_SPLIT_LZMA_FW) += mtdsp
obj-$(CONFIG_MTD_OF_PARTS) += ofpart.o
obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdlinepart.o

View File

@ -13,7 +13,7 @@ FEATURES:=mips16
CPU_TYPE=34kc
SUBTARGETS:=generic nand mikrotik
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
@@ -208,6 +208,12 @@ config MTD_BCM47XX_PARTS
@@ -212,6 +212,12 @@ config MTD_BCM47XX_PARTS
This provides partitions parser for devices based on BCM47xx
boards.
@ -15,7 +15,7 @@
depends on ADM5120 || ATHEROS_AR231X || ATHEROS_AR71XX || ATH79
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
@@ -20,6 +20,7 @@ obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o
obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o

View File

@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
@@ -210,7 +210,7 @@ config MTD_BCM47XX_PARTS
@@ -214,7 +214,7 @@ config MTD_BCM47XX_PARTS
config MTD_WRT160NL_PARTS
tristate "Linksys WRT160NL partitioning support"
@ -9,7 +9,7 @@
---help---
Linksys WRT160NL partitioning support
@@ -230,6 +230,12 @@ config MTD_MYLOADER_PARTS
@@ -234,6 +234,12 @@ config MTD_MYLOADER_PARTS
You will still need the parsing functions to be called by the driver
for your particular device. It won't happen automatically.
@ -24,7 +24,7 @@
config MTD_BLKDEVS
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
@@ -20,6 +20,7 @@ obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o
obj-$(CONFIG_MTD_MYLOADER_PARTS) += myloader.o

View File

@ -12,7 +12,7 @@ BOARDNAME:=Atmel AVR32
FEATURES:=squashfs
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -13,7 +13,7 @@ FEATURES:=squashfs usb pci pcie gpio
MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
CPU_TYPE:=cortex-a9
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -15,7 +15,7 @@ MAINTAINER:=Florian Fainelli <florian@openwrt.org>
CPU_TYPE:=arm1176jzf-s
CPU_SUBTYPE:=vfp
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += brcm2708-gpu-fw kmod-usb-hid kmod-sound-core kmod-sound-arm-bcm2835

View File

@ -12,7 +12,7 @@ BOARDNAME:=Broadcom BCM947xx/953xx
FEATURES:=squashfs usb pcmcia
MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += swconfig wpad-mini nvram \

View File

@ -174,7 +174,7 @@
return phy_mii_ioctl(phydev, ifr, cmd);
}
@@ -17190,8 +17197,10 @@ static int tg3_init_one(struct pci_dev *
@@ -17193,8 +17200,10 @@ static int tg3_init_one(struct pci_dev *
tg3_flag_set(tp, FLUSH_POSTED_WRITES);
if (ssb_gige_one_dma_at_once(pdev))
tg3_flag_set(tp, ONE_DMA_AT_ONCE);
@ -186,7 +186,7 @@
if (ssb_gige_is_rgmii(pdev))
tg3_flag_set(tp, RGMII_MODE);
}
@@ -17461,7 +17470,7 @@ static int tg3_init_one(struct pci_dev *
@@ -17464,7 +17473,7 @@ static int tg3_init_one(struct pci_dev *
if (tp->phy_flags & TG3_PHYFLG_IS_CONNECTED) {
struct phy_device *phydev;

View File

@ -11,7 +11,7 @@ BOARD:=brcm63xx
BOARDNAME:=Broadcom BCM63xx
SUBTARGETS:=generic smp
FEATURES:=squashfs usb atm pci pcmcia usbgadget
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
include $(INCLUDE_DIR)/target.mk

View File

@ -12,7 +12,7 @@ BOARDNAME:=Cavium Networks Econa CNS21xx
FEATURES:=squashfs
CPU_TYPE:=fa526
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -1,6 +1,6 @@
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
@@ -208,6 +208,22 @@ config MTD_BCM47XX_PARTS
@@ -212,6 +212,22 @@ config MTD_BCM47XX_PARTS
This provides partitions parser for devices based on BCM47xx
boards.
@ -25,7 +25,7 @@
config MTD_BLKDEVS
--- a/drivers/mtd/Makefile
+++ b/drivers/mtd/Makefile
@@ -18,6 +18,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
@@ -19,6 +19,7 @@ obj-$(CONFIG_MTD_AFS_PARTS) += afs.o
obj-$(CONFIG_MTD_AR7_PARTS) += ar7part.o
obj-$(CONFIG_MTD_BCM63XX_PARTS) += bcm63xxpart.o
obj-$(CONFIG_MTD_BCM47XX_PARTS) += bcm47xxpart.o

View File

@ -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
@@ -1382,6 +1382,7 @@ static int packet_rcv_spkt(struct sk_buf
@@ -1403,6 +1403,7 @@ static int packet_rcv_spkt(struct sk_buf
{
struct sock *sk;
struct sockaddr_pkt *spkt;
@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
/*
* When we registered the protocol we saved the socket in the data
@@ -1389,6 +1390,7 @@ static int packet_rcv_spkt(struct sk_buf
@@ -1410,6 +1411,7 @@ static int packet_rcv_spkt(struct sk_buf
*/
sk = pt->af_packet_priv;
@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
/*
* Yank back the headers [hope the device set this
@@ -1401,7 +1403,7 @@ static int packet_rcv_spkt(struct sk_buf
@@ -1422,7 +1424,7 @@ static int packet_rcv_spkt(struct sk_buf
* so that this procedure is noop.
*/
@ -51,7 +51,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
goto out;
if (!net_eq(dev_net(dev), sock_net(sk)))
@@ -1608,12 +1610,12 @@ static int packet_rcv(struct sk_buff *sk
@@ -1629,12 +1631,12 @@ static int packet_rcv(struct sk_buff *sk
int skb_len = skb->len;
unsigned int snaplen, res;
@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
@@ -1726,12 +1728,12 @@ static int tpacket_rcv(struct sk_buff *s
@@ -1747,12 +1749,12 @@ static int tpacket_rcv(struct sk_buff *s
struct timespec ts;
__u32 ts_status;
@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
@@ -2627,6 +2629,7 @@ static int packet_create(struct net *net
@@ -2641,6 +2643,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;
@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
@@ -3237,6 +3240,16 @@ packet_setsockopt(struct socket *sock, i
@@ -3251,6 +3254,16 @@ packet_setsockopt(struct socket *sock, i
po->tp_tx_has_off = !!val;
return 0;
}
@ -108,7 +108,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
default:
return -ENOPROTOOPT;
}
@@ -3288,6 +3301,13 @@ static int packet_getsockopt(struct sock
@@ -3302,6 +3315,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;

View File

@ -1,6 +1,6 @@
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -1844,7 +1844,7 @@ static inline int pskb_network_may_pull(
@@ -1849,7 +1849,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

View File

@ -14,7 +14,7 @@ when needed.
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -1889,6 +1889,24 @@ static inline void pskb_trim_unique(stru
@@ -1894,6 +1894,24 @@ static inline void pskb_trim_unique(stru
BUG_ON(err);
}

View File

@ -102,7 +102,7 @@
return -EINVAL;
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
@@ -251,6 +251,24 @@ static const struct rt6_info ip6_prohibi
@@ -250,6 +250,24 @@ static const struct rt6_info ip6_prohibi
.rt6i_ref = ATOMIC_INIT(1),
};
@ -127,17 +127,19 @@
static const struct rt6_info ip6_blk_hole_entry_template = {
.dst = {
.__refcnt = ATOMIC_INIT(1),
@@ -1511,6 +1529,9 @@ int ip6_route_add(struct fib6_config *cf
case RTN_THROW:
rt->dst.error = -EAGAIN;
@@ -1509,6 +1527,11 @@ int ip6_route_add(struct fib6_config *cf
rt->dst.output = ip6_pkt_prohibit_out;
rt->dst.input = ip6_pkt_prohibit;
break;
+ case RTN_FAILED_POLICY:
+ rt->dst.error = -EPERM;
+ rt->dst.output = ip6_pkt_failed_policy_out;
+ rt->dst.input = ip6_pkt_failed_policy;
+ break;
case RTN_THROW:
default:
rt->dst.error = -ENETUNREACH;
break;
@@ -2090,6 +2111,17 @@ static int ip6_pkt_prohibit_out(struct s
rt->dst.error = (cfg->fc_type == RTN_THROW) ? -EAGAIN
@@ -2088,6 +2111,17 @@ static int ip6_pkt_prohibit_out(struct s
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
}
@ -152,10 +154,10 @@
+ return ip6_pkt_drop(skb, ICMPV6_POLICY_FAIL, IPSTATS_MIB_OUTNOROUTES);
+}
+
#endif
/*
@@ -2296,7 +2328,8 @@ static int rtm_to_fib6_config(struct sk_
* Allocate a dst for local (unicast / anycast) address.
*/
@@ -2290,7 +2324,8 @@ static int rtm_to_fib6_config(struct sk_
if (rtm->rtm_type == RTN_UNREACHABLE ||
rtm->rtm_type == RTN_BLACKHOLE ||
rtm->rtm_type == RTN_PROHIBIT ||
@ -165,7 +167,7 @@
cfg->fc_flags |= RTF_REJECT;
if (rtm->rtm_type == RTN_LOCAL)
@@ -2498,6 +2531,9 @@ static int rt6_fill_node(struct net *net
@@ -2492,6 +2527,9 @@ static int rt6_fill_node(struct net *net
case -EACCES:
rtm->rtm_type = RTN_PROHIBIT;
break;
@ -175,7 +177,7 @@
case -EAGAIN:
rtm->rtm_type = RTN_THROW;
break;
@@ -2748,6 +2784,8 @@ static int ip6_route_dev_notify(struct n
@@ -2742,6 +2780,8 @@ static int ip6_route_dev_notify(struct n
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
net->ipv6.ip6_prohibit_entry->dst.dev = dev;
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
@ -184,7 +186,7 @@
net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
#endif
@@ -3008,6 +3046,17 @@ static int __net_init ip6_route_net_init
@@ -3002,6 +3042,17 @@ static int __net_init ip6_route_net_init
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
ip6_template_metrics, true);
@ -202,7 +204,7 @@
#endif
net->ipv6.sysctl.flush_delay = 0;
@@ -3026,6 +3075,8 @@ out:
@@ -3020,6 +3071,8 @@ out:
return ret;
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
@ -211,7 +213,7 @@
out_ip6_prohibit_entry:
kfree(net->ipv6.ip6_prohibit_entry);
out_ip6_null_entry:
@@ -3043,6 +3094,7 @@ static void __net_exit ip6_route_net_exi
@@ -3037,6 +3090,7 @@ static void __net_exit ip6_route_net_exi
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
kfree(net->ipv6.ip6_prohibit_entry);
kfree(net->ipv6.ip6_blk_hole_entry);
@ -219,7 +221,7 @@
#endif
dst_entries_destroy(&net->ipv6.ip6_dst_ops);
}
@@ -3139,6 +3191,9 @@ int __init ip6_route_init(void)
@@ -3133,6 +3187,9 @@ int __init ip6_route_init(void)
init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);

View File

@ -34,7 +34,7 @@
#define IF_GET_IFACE 0x0001 /* for querying only */
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -1874,6 +1874,10 @@ static inline int pskb_trim(struct sk_bu
@@ -1879,6 +1879,10 @@ static inline int pskb_trim(struct sk_bu
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
}
@ -45,7 +45,7 @@
/**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter
@@ -1998,16 +2002,6 @@ static inline struct sk_buff *dev_alloc_
@@ -2003,16 +2007,6 @@ static inline struct sk_buff *dev_alloc_
}

View File

@ -14,7 +14,7 @@ CPU_TYPE:=cortex-a9
CPU_SUBTYPE:=vfpv3
MAINTAINER:=Luka Perkov <luka@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -13,7 +13,7 @@ FEATURES:=squashfs
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
SUBTARGETS=generic harddisk
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -13,7 +13,7 @@ FEATURES:=targz usb jffs2_nand ubifs
CPU_TYPE:=xscale
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -11,7 +11,7 @@ BOARDNAME:=Lantiq GPON/XWAY/SVIP
FEATURES:=squashfs
SUBTARGETS=xway xrx200 ase falcon
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
CPU_TYPE:=mips32r2

View File

@ -13,7 +13,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
@@ -149,6 +149,11 @@ config MICREL_PHY
@@ -153,6 +153,11 @@ config MICREL_PHY
---help---
Currently has a driver for the KSZ8041

View File

@ -12,7 +12,7 @@ SUBTARGETS:=le be le64 be64
INITRAMFS_EXTRA_FILES:=
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
DEVICE_TYPE:=developerboard

View File

@ -14,7 +14,7 @@ FEATURES:=spe_fpu squashfs
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
SUBTARGETS=generic p1020
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -14,7 +14,7 @@ CPU_TYPE:=cortex-a9
CPU_SUBTYPE:=vfpv3
MAINTAINER:=Luka Perkov <luka@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -14,7 +14,7 @@ CPU_TYPE:=octeon
CPU_CFLAGS_octeon:=-march=octeon
MAINTAINER:=John Crispin <blogic@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -13,7 +13,7 @@ FEATURES:=squashfs
CPU_TYPE:=405
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -13,7 +13,7 @@ FEATURES:=squashfs broken
CPU_TYPE:=440
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk

View File

@ -12,7 +12,7 @@ BOARDNAME:=Ralink RT288x/RT3xxx
SUBTARGETS:=rt305x mt7620a mt7620n mt7621 rt3883 rt288x
FEATURES:=squashfs gpio
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES+=\

View File

@ -16,11 +16,9 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/irq-gic.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/arch/mips/kernel/irq-gic.c b/arch/mips/kernel/irq-gic.c
index c01b307..5b5ddb2 100644
--- a/arch/mips/kernel/irq-gic.c
+++ b/arch/mips/kernel/irq-gic.c
@@ -219,16 +219,15 @@ static int gic_set_affinity(struct irq_data *d, const struct cpumask *cpumask,
@@ -219,16 +219,15 @@ static int gic_set_affinity(struct irq_d
/* Assumption : cpumask refers to a single CPU */
spin_lock_irqsave(&gic_lock, flags);
@ -44,6 +42,3 @@ index c01b307..5b5ddb2 100644
cpumask_copy(d->affinity, cpumask);
spin_unlock_irqrestore(&gic_lock, flags);
--
1.7.10.4

View File

@ -40,11 +40,9 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index e82c066..b537fb1 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -2010,6 +2010,7 @@ config MIPS_VPE_APSP_API
@@ -2038,6 +2038,7 @@ config MIPS_VPE_APSP_API
config MIPS_CMP
bool "MIPS CMP framework support"
depends on SYS_SUPPORTS_MIPS_CMP
@ -52,6 +50,3 @@ index e82c066..b537fb1 100644
select SYNC_R4K
select SYS_SUPPORTS_SMP
select SYS_SUPPORTS_SCHED_SMT if SMP
--
1.7.10.4

View File

@ -19,8 +19,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/smp-cmp.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/arch/mips/kernel/smp-cmp.c b/arch/mips/kernel/smp-cmp.c
index c2e5d74..5969f1e 100644
--- a/arch/mips/kernel/smp-cmp.c
+++ b/arch/mips/kernel/smp-cmp.c
@@ -99,7 +99,9 @@ static void cmp_init_secondary(void)
@ -52,6 +50,3 @@ index c2e5d74..5969f1e 100644
smp_num_siblings = nvpe;
}
pr_info("Detected %i available secondary CPU(s)\n", ncpu);
--
1.7.10.4

View File

@ -10,11 +10,9 @@ Signed-off-by: Steven J. Hill <Steven.Hill@imgtec.com>
arch/mips/kernel/smp-mt.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/arch/mips/kernel/smp-mt.c b/arch/mips/kernel/smp-mt.c
index 2f8c468..d057c84 100644
--- a/arch/mips/kernel/smp-mt.c
+++ b/arch/mips/kernel/smp-mt.c
@@ -71,6 +71,7 @@ static unsigned int __init smvp_vpe_init(unsigned int tc, unsigned int mvpconf0,
@@ -71,6 +71,7 @@ static unsigned int __init smvp_vpe_init
/* Record this as available CPU */
set_cpu_possible(tc, true);
@ -22,7 +20,7 @@ index 2f8c468..d057c84 100644
__cpu_number_map[tc] = ++ncpu;
__cpu_logical_map[ncpu] = tc;
}
@@ -112,12 +113,35 @@ static void __init smvp_tc_init(unsigned int tc, unsigned int mvpconf0)
@@ -112,12 +113,35 @@ static void __init smvp_tc_init(unsigned
write_tc_c0_tchalt(TCHALT_H);
}
@ -58,7 +56,7 @@ index 2f8c468..d057c84 100644
local_irq_save(flags);
vpflags = dvpe(); /* can't access the other CPU's registers whilst MVPE enabled */
@@ -164,6 +188,8 @@ static void __cpuinit vsmp_init_secondary(void)
@@ -164,6 +188,8 @@ static void __cpuinit vsmp_init_secondar
static void __cpuinit vsmp_smp_finish(void)
{
@ -67,7 +65,7 @@ index 2f8c468..d057c84 100644
/* CDFIXME: remove this? */
write_c0_compare(read_c0_count() + (8* mips_hpt_frequency/HZ));
@@ -178,6 +204,7 @@ static void __cpuinit vsmp_smp_finish(void)
@@ -178,6 +204,7 @@ static void __cpuinit vsmp_smp_finish(vo
static void vsmp_cpus_done(void)
{
@ -101,6 +99,3 @@ index 2f8c468..d057c84 100644
mips_mt_set_cpuoptions();
}
--
1.7.10.4

View File

@ -1,8 +1,6 @@
Index: linux-3.10.26/drivers/usb/core/hub.c
===================================================================
--- linux-3.10.26.orig/drivers/usb/core/hub.c 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/core/hub.c 2014-01-19 16:29:18.548615960 +0000
@@ -1259,7 +1259,7 @@
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -1259,7 +1259,7 @@ static void hub_quiesce(struct usb_hub *
if (type != HUB_SUSPEND) {
/* Disconnect all the children */
for (i = 0; i < hdev->maxchild; ++i) {
@ -11,11 +9,9 @@ Index: linux-3.10.26/drivers/usb/core/hub.c
usb_disconnect(&hub->ports[i]->child);
}
}
Index: linux-3.10.26/drivers/usb/core/port.c
===================================================================
--- linux-3.10.26.orig/drivers/usb/core/port.c 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/core/port.c 2014-01-19 16:29:18.548615960 +0000
@@ -193,6 +193,7 @@
--- a/drivers/usb/core/port.c
+++ b/drivers/usb/core/port.c
@@ -193,6 +193,7 @@ exit:
void usb_hub_remove_port_device(struct usb_hub *hub,
int port1)
{
@ -24,11 +20,9 @@ Index: linux-3.10.26/drivers/usb/core/port.c
+ device_unregister(&hub->ports[port1 - 1]->dev);
}
Index: linux-3.10.26/drivers/usb/host/Kconfig
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/Kconfig 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/Kconfig 2014-01-19 16:29:18.548615960 +0000
@@ -28,7 +28,11 @@
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -28,7 +28,11 @@ config USB_XHCI_HCD
if USB_XHCI_HCD
config USB_XHCI_PLATFORM
@ -41,11 +35,9 @@ Index: linux-3.10.26/drivers/usb/host/Kconfig
config USB_XHCI_HCD_DEBUGGING
bool "Debugging for the xHCI host controller"
Index: linux-3.10.26/drivers/usb/host/Makefile
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/Makefile 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/Makefile 2014-01-19 16:30:54.964617843 +0000
@@ -13,15 +13,23 @@
--- a/drivers/usb/host/Makefile
+++ b/drivers/usb/host/Makefile
@@ -13,15 +13,23 @@ fhci-$(CONFIG_FHCI_DEBUG) += fhci-dbg.o
xhci-hcd-y := xhci.o xhci-mem.o
xhci-hcd-y += xhci-ring.o xhci-hub.o xhci-dbg.o
@ -70,10 +62,8 @@ Index: linux-3.10.26/drivers/usb/host/Makefile
obj-$(CONFIG_USB_EHCI_HCD) += ehci-hcd.o
obj-$(CONFIG_USB_EHCI_PCI) += ehci-pci.o
Index: linux-3.10.26/drivers/usb/host/pci-quirks.h
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/pci-quirks.h 2014-01-19 16:29:17.392615927 +0000
+++ linux-3.10.26/drivers/usb/host/pci-quirks.h 2014-01-19 16:29:18.548615960 +0000
--- a/drivers/usb/host/pci-quirks.h
+++ b/drivers/usb/host/pci-quirks.h
@@ -1,7 +1,7 @@
#ifndef __LINUX_USB_PCI_QUIRKS_H
#define __LINUX_USB_PCI_QUIRKS_H
@ -82,11 +72,9 @@ Index: linux-3.10.26/drivers/usb/host/pci-quirks.h
+#if defined (CONFIG_PCI) && !defined (CONFIG_USB_MT7621_XHCI_PLATFORM)
void uhci_reset_hc(struct pci_dev *pdev, unsigned long base);
int uhci_check_and_reset_hc(struct pci_dev *pdev, unsigned long base);
bool usb_is_intel_switchable_xhci(struct pci_dev *pdev);
Index: linux-3.10.26/drivers/usb/host/xhci.c
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/xhci.c 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/xhci.c 2014-01-19 16:29:18.548615960 +0000
#endif /* CONFIG_PCI */
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -30,6 +30,16 @@
#include "xhci.h"
@ -104,7 +92,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
#define DRIVER_AUTHOR "Sarah Sharp"
#define DRIVER_DESC "'eXtensible' Host Controller (xHC) Driver"
@@ -38,6 +48,18 @@
@@ -38,6 +48,18 @@ static int link_quirk;
module_param(link_quirk, int, S_IRUGO | S_IWUSR);
MODULE_PARM_DESC(link_quirk, "Don't clear the chain bit on a link TRB");
@ -123,7 +111,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
/* TODO: copied from ehci-hcd.c - can this be refactored? */
/*
* xhci_handshake - spin reading hc until handshake completes or fails
@@ -189,7 +211,7 @@
@@ -189,7 +211,7 @@ int xhci_reset(struct xhci_hcd *xhci)
return ret;
}
@ -132,7 +120,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
static int xhci_free_msi(struct xhci_hcd *xhci)
{
int i;
@@ -386,6 +408,7 @@
@@ -386,6 +408,7 @@ static int xhci_try_enable_msi(struct us
return ret;
}
hcd->irq = pdev->irq;
@ -140,7 +128,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
return 0;
}
@@ -427,6 +450,11 @@
@@ -427,6 +450,11 @@ static void compliance_mode_recovery(uns
xhci_dbg(xhci, "Attempting compliance mode recovery\n");
hcd = xhci->shared_hcd;
@ -152,7 +140,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
if (hcd->state == HC_STATE_SUSPENDED)
usb_hcd_resume_root_hub(hcd);
@@ -475,6 +503,9 @@
@@ -475,6 +503,9 @@ bool xhci_compliance_mode_recovery_timer
{
const char *dmi_product_name, *dmi_sys_vendor;
@ -162,7 +150,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
dmi_product_name = dmi_get_system_info(DMI_PRODUCT_NAME);
dmi_sys_vendor = dmi_get_system_info(DMI_SYS_VENDOR);
if (!dmi_product_name || !dmi_sys_vendor)
@@ -518,6 +549,10 @@
@@ -518,6 +549,10 @@ int xhci_init(struct usb_hcd *hcd)
} else {
xhci_dbg(xhci, "xHCI doesn't need link TRB QUIRK\n");
}
@ -173,7 +161,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
retval = xhci_mem_init(xhci, GFP_KERNEL);
xhci_dbg(xhci, "Finished xhci_init\n");
@@ -661,7 +696,11 @@
@@ -661,7 +696,11 @@ int xhci_run(struct usb_hcd *hcd)
xhci_dbg(xhci, "// Set the interrupt modulation register\n");
temp = xhci_readl(xhci, &xhci->ir_set->irq_control);
temp &= ~ER_IRQ_INTERVAL_MASK;
@ -185,7 +173,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
xhci_writel(xhci, temp, &xhci->ir_set->irq_control);
/* Set the HCD state before we enable the irqs */
@@ -682,6 +721,9 @@
@@ -682,6 +721,9 @@ int xhci_run(struct usb_hcd *hcd)
xhci_queue_vendor_command(xhci, 0, 0, 0,
TRB_TYPE(TRB_NEC_GET_FW));
@ -195,7 +183,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
xhci_dbg(xhci, "Finished xhci_run for USB2 roothub\n");
return 0;
}
@@ -999,7 +1041,6 @@
@@ -999,7 +1041,6 @@ int xhci_resume(struct xhci_hcd *xhci, b
/* If restore operation fails, re-initialize the HC during resume */
if ((temp & STS_SRE) || hibernated) {
@ -203,7 +191,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
if ((xhci->quirks & XHCI_COMP_MODE_QUIRK) &&
!(xhci_all_ports_seen_u0(xhci))) {
del_timer_sync(&xhci->comp_mode_recovery_timer);
@@ -1583,6 +1624,13 @@
@@ -1583,6 +1624,13 @@ int xhci_drop_endpoint(struct usb_hcd *h
u32 drop_flag;
u32 new_add_flags, new_drop_flags, new_slot_info;
int ret;
@ -217,7 +205,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
if (ret <= 0)
@@ -1634,6 +1682,40 @@
@@ -1634,6 +1682,40 @@ int xhci_drop_endpoint(struct usb_hcd *h
xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep);
@ -258,7 +246,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
xhci_dbg(xhci, "drop ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x, new slot info = %#x\n",
(unsigned int) ep->desc.bEndpointAddress,
udev->slot_id,
@@ -1669,6 +1751,18 @@
@@ -1669,6 +1751,18 @@ int xhci_add_endpoint(struct usb_hcd *hc
u32 new_add_flags, new_drop_flags, new_slot_info;
struct xhci_virt_device *virt_dev;
int ret = 0;
@ -277,7 +265,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
if (ret <= 0) {
@@ -1731,6 +1825,56 @@
@@ -1731,6 +1825,56 @@ int xhci_add_endpoint(struct usb_hcd *hc
return -ENOMEM;
}
@ -334,7 +322,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
ctrl_ctx->add_flags |= cpu_to_le32(added_ctxs);
new_add_flags = le32_to_cpu(ctrl_ctx->add_flags);
@@ -2694,7 +2838,7 @@
@@ -2694,7 +2838,7 @@ int xhci_check_bandwidth(struct usb_hcd
if (ctrl_ctx->add_flags == cpu_to_le32(SLOT_FLAG) &&
ctrl_ctx->drop_flags == 0)
return 0;
@ -343,7 +331,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
xhci_dbg(xhci, "New Input Control Context:\n");
slot_ctx = xhci_get_slot_ctx(xhci, virt_dev->in_ctx);
xhci_dbg_ctx(xhci, virt_dev->in_ctx,
@@ -4230,10 +4374,14 @@
@@ -4230,10 +4374,14 @@ static u16 xhci_call_host_update_timeout
u16 *timeout)
{
if (state == USB3_LPM_U1) {
@ -358,7 +346,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
return xhci_calculate_intel_u2_timeout(udev, desc);
}
@@ -4659,7 +4807,9 @@
@@ -4659,7 +4807,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
/* Accept arbitrarily long scatter-gather lists */
hcd->self.sg_tablesize = ~0;
/* XHCI controllers don't stop the ep queue on short packets :| */
@ -368,7 +356,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
if (usb_hcd_is_primary_hcd(hcd)) {
xhci = kzalloc(sizeof(struct xhci_hcd), GFP_KERNEL);
@@ -4728,6 +4878,10 @@
@@ -4728,6 +4878,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
goto error;
xhci_dbg(xhci, "Reset complete\n");
@ -379,7 +367,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
temp = xhci_readl(xhci, &xhci->cap_regs->hcc_params);
if (HCC_64BIT_ADDR(temp)) {
xhci_dbg(xhci, "Enabling 64-bit DMA addresses.\n");
@@ -4752,8 +4906,21 @@
@@ -4752,8 +4906,21 @@ MODULE_DESCRIPTION(DRIVER_DESC);
MODULE_AUTHOR(DRIVER_AUTHOR);
MODULE_LICENSE("GPL");
@ -401,7 +389,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
int retval;
retval = xhci_register_pci();
@@ -4766,6 +4933,33 @@
@@ -4766,6 +4933,33 @@ static int __init xhci_hcd_init(void)
printk(KERN_DEBUG "Problem registering platform driver.");
goto unreg_pci;
}
@ -435,7 +423,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
/*
* Check the compiler generated sizes of structures that must be laid
* out in specific ways for hardware access.
@@ -4783,6 +4977,7 @@
@@ -4783,6 +4977,7 @@ static int __init xhci_hcd_init(void)
BUILD_BUG_ON(sizeof(struct xhci_intr_reg) != 8*32/8);
/* xhci_run_regs has eight fields and embeds 128 xhci_intr_regs */
BUILD_BUG_ON(sizeof(struct xhci_run_regs) != (8+8*128)*32/8);
@ -443,10 +431,8 @@ Index: linux-3.10.26/drivers/usb/host/xhci.c
return 0;
unreg_pci:
xhci_unregister_pci();
Index: linux-3.10.26/drivers/usb/host/xhci-dbg.c
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/xhci-dbg.c 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/xhci-dbg.c 2014-01-19 16:29:18.548615960 +0000
--- a/drivers/usb/host/xhci-dbg.c
+++ b/drivers/usb/host/xhci-dbg.c
@@ -21,6 +21,9 @@
*/
@ -457,10 +443,8 @@ Index: linux-3.10.26/drivers/usb/host/xhci-dbg.c
#define XHCI_INIT_VALUE 0x0
Index: linux-3.10.26/drivers/usb/host/xhci.h
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/xhci.h 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/xhci.h 2014-01-19 16:29:18.548615960 +0000
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -29,9 +29,24 @@
#include <linux/usb/hcd.h>
@ -487,7 +471,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.h
/* xHCI PCI Configuration Registers */
#define XHCI_SBRN_OFFSET (0x60)
@@ -1536,8 +1551,12 @@
@@ -1536,8 +1551,12 @@ struct xhci_hcd {
/* Compliance Mode Recovery Data */
struct timer_list comp_mode_recovery_timer;
u32 port_status_u0;
@ -500,7 +484,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci.h
};
/* convert between an HCD pointer and the corresponding EHCI_HCD */
@@ -1703,7 +1722,7 @@
@@ -1703,7 +1722,7 @@ void xhci_urb_free_priv(struct xhci_hcd
void xhci_free_command(struct xhci_hcd *xhci,
struct xhci_command *command);
@ -509,11 +493,9 @@ Index: linux-3.10.26/drivers/usb/host/xhci.h
/* xHCI PCI glue */
int xhci_register_pci(void);
void xhci_unregister_pci(void);
Index: linux-3.10.26/drivers/usb/host/xhci-mem.c
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/xhci-mem.c 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/xhci-mem.c 2014-01-19 16:29:18.548615960 +0000
@@ -65,6 +65,9 @@
--- a/drivers/usb/host/xhci-mem.c
+++ b/drivers/usb/host/xhci-mem.c
@@ -65,6 +65,9 @@ static struct xhci_segment *xhci_segment
static void xhci_segment_free(struct xhci_hcd *xhci, struct xhci_segment *seg)
{
@ -523,7 +505,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-mem.c
if (seg->trbs) {
dma_pool_free(xhci->segment_pool, seg->trbs, seg->dma);
seg->trbs = NULL;
@@ -1446,9 +1449,17 @@
@@ -1446,9 +1449,17 @@ int xhci_endpoint_init(struct xhci_hcd *
max_burst = (usb_endpoint_maxp(&ep->desc)
& 0x1800) >> 11;
}
@ -541,11 +523,9 @@ Index: linux-3.10.26/drivers/usb/host/xhci-mem.c
break;
default:
BUG();
Index: linux-3.10.26/drivers/usb/host/xhci-plat.c
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/xhci-plat.c 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/xhci-plat.c 2014-01-19 16:29:18.548615960 +0000
@@ -25,6 +25,13 @@
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -25,6 +25,13 @@ static void xhci_plat_quirks(struct devi
* dev struct in order to setup MSI
*/
xhci->quirks |= XHCI_PLAT;
@ -559,7 +539,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-plat.c
}
/* called during probe() after chip reset completes */
@@ -96,20 +103,32 @@
@@ -96,20 +103,32 @@ static int xhci_plat_probe(struct platfo
driver = &xhci_plat_xhci_driver;
@ -592,11 +572,9 @@ Index: linux-3.10.26/drivers/usb/host/xhci-plat.c
if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len,
driver->description)) {
Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
===================================================================
--- linux-3.10.26.orig/drivers/usb/host/xhci-ring.c 2014-01-09 20:25:15.000000000 +0000
+++ linux-3.10.26/drivers/usb/host/xhci-ring.c 2014-01-19 16:29:18.548615960 +0000
@@ -236,7 +236,6 @@
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -236,7 +236,6 @@ static void inc_enq(struct xhci_hcd *xhc
*/
if (!chain && !more_trbs_coming)
break;
@ -604,7 +582,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
/* If we're not dealing with 0.95 hardware or
* isoc rings on AMD 0.96 host,
* carry over the chain bit of the previous TRB
@@ -273,16 +272,20 @@
@@ -273,16 +272,20 @@ static void inc_enq(struct xhci_hcd *xhc
static inline int room_on_ring(struct xhci_hcd *xhci, struct xhci_ring *ring,
unsigned int num_trbs)
{
@ -625,7 +603,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
return 1;
}
@@ -2910,6 +2913,7 @@
@@ -2910,6 +2913,7 @@ static int prepare_ring(struct xhci_hcd
next = ring->enqueue;
while (last_trb(xhci, ring, ring->enq_seg, next)) {
@ -633,7 +611,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
/* If we're not dealing with 0.95 hardware or isoc rings
* on AMD 0.96 host, clear the chain bit.
*/
@@ -2919,7 +2923,9 @@
@@ -2919,7 +2923,9 @@ static int prepare_ring(struct xhci_hcd
next->link.control &= cpu_to_le32(~TRB_CHAIN);
else
next->link.control |= cpu_to_le32(TRB_CHAIN);
@ -644,7 +622,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
wmb();
next->link.control ^= cpu_to_le32(TRB_CYCLE);
@@ -3049,6 +3055,9 @@
@@ -3049,6 +3055,9 @@ static void giveback_first_trb(struct xh
start_trb->field[3] |= cpu_to_le32(start_cycle);
else
start_trb->field[3] &= cpu_to_le32(~TRB_CYCLE);
@ -654,7 +632,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
xhci_ring_ep_doorbell(xhci, slot_id, ep_index, stream_id);
}
@@ -3108,6 +3117,29 @@
@@ -3108,6 +3117,29 @@ static u32 xhci_td_remainder(unsigned in
return (remainder >> 10) << 17;
}
@ -684,7 +662,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
/*
* For xHCI 1.0 host controllers, TD size is the number of max packet sized
* packets remaining in the TD (*not* including this TRB).
@@ -3245,6 +3277,7 @@
@@ -3245,6 +3277,7 @@ static int queue_bulk_sg_tx(struct xhci_
}
/* Set the TRB length, TD size, and interrupter fields. */
@ -692,7 +670,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
if (xhci->hci_version < 0x100) {
remainder = xhci_td_remainder(
urb->transfer_buffer_length -
@@ -3254,6 +3287,13 @@
@@ -3254,6 +3287,13 @@ static int queue_bulk_sg_tx(struct xhci_
trb_buff_len, total_packet_count, urb,
num_trbs - 1);
}
@ -706,7 +684,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
length_field = TRB_LEN(trb_buff_len) |
remainder |
TRB_INTR_TARGET(0);
@@ -3316,6 +3356,9 @@
@@ -3316,6 +3356,9 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
int running_total, trb_buff_len, ret;
unsigned int total_packet_count;
u64 addr;
@ -716,7 +694,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
if (urb->num_sgs)
return queue_bulk_sg_tx(xhci, mem_flags, urb, slot_id, ep_index);
@@ -3341,6 +3384,25 @@
@@ -3341,6 +3384,25 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
running_total += TRB_MAX_BUFF_SIZE;
}
/* FIXME: this doesn't deal with URB_ZERO_PACKET - need one more */
@ -742,7 +720,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
ret = prepare_transfer(xhci, xhci->devs[slot_id],
ep_index, urb->stream_id,
@@ -3400,6 +3462,7 @@
@@ -3400,6 +3462,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
field |= TRB_ISP;
/* Set the TRB length, TD size, and interrupter fields. */
@ -750,7 +728,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
if (xhci->hci_version < 0x100) {
remainder = xhci_td_remainder(
urb->transfer_buffer_length -
@@ -3409,6 +3472,10 @@
@@ -3409,6 +3472,10 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
trb_buff_len, total_packet_count, urb,
num_trbs - 1);
}
@ -761,7 +739,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
length_field = TRB_LEN(trb_buff_len) |
remainder |
TRB_INTR_TARGET(0);
@@ -3498,7 +3565,11 @@
@@ -3498,7 +3565,11 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
field |= 0x1;
/* xHCI 1.0 6.4.1.2.1: Transfer Type field */
@ -773,7 +751,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
if (urb->transfer_buffer_length > 0) {
if (setup->bRequestType & USB_DIR_IN)
field |= TRB_TX_TYPE(TRB_DATA_IN);
@@ -3522,7 +3593,12 @@
@@ -3522,7 +3593,12 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
field = TRB_TYPE(TRB_DATA);
length_field = TRB_LEN(urb->transfer_buffer_length) |
@ -786,7 +764,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
TRB_INTR_TARGET(0);
if (urb->transfer_buffer_length > 0) {
if (setup->bRequestType & USB_DIR_IN)
@@ -3533,7 +3609,7 @@
@@ -3533,7 +3609,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
length_field,
field | ep_ring->cycle_state);
}
@ -795,7 +773,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
/* Save the DMA address of the last TRB in the TD */
td->last_trb = ep_ring->enqueue;
@@ -3645,6 +3721,9 @@
@@ -3645,6 +3721,9 @@ static int xhci_queue_isoc_tx(struct xhc
u64 start_addr, addr;
int i, j;
bool more_trbs_coming;
@ -805,7 +783,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
ep_ring = xhci->devs[slot_id]->eps[ep_index].ring;
@@ -3658,6 +3737,21 @@
@@ -3658,6 +3737,21 @@ static int xhci_queue_isoc_tx(struct xhc
start_trb = &ep_ring->enqueue->generic;
start_cycle = ep_ring->cycle_state;
@ -827,7 +805,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
urb_priv = urb->hcpriv;
/* Queue the first TRB, even if it's zero-length */
for (i = 0; i < num_tds; i++) {
@@ -3729,9 +3823,13 @@
@@ -3729,9 +3823,13 @@ static int xhci_queue_isoc_tx(struct xhc
} else {
td->last_trb = ep_ring->enqueue;
field |= TRB_IOC;
@ -841,7 +819,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
/* Set BEI bit except for the last td */
if (i < num_tds - 1)
field |= TRB_BEI;
@@ -3746,6 +3844,7 @@
@@ -3746,6 +3844,7 @@ static int xhci_queue_isoc_tx(struct xhc
trb_buff_len = td_remain_len;
/* Set the TRB length, TD size, & interrupter fields. */
@ -849,7 +827,7 @@ Index: linux-3.10.26/drivers/usb/host/xhci-ring.c
if (xhci->hci_version < 0x100) {
remainder = xhci_td_remainder(
td_len - running_total);
@@ -3755,6 +3854,10 @@
@@ -3755,6 +3854,10 @@ static int xhci_queue_isoc_tx(struct xhc
total_packet_count, urb,
(trbs_per_td - j - 1));
}

View File

@ -1,8 +1,6 @@
Index: linux-3.10.26/arch/mips/ralink/of.c
===================================================================
--- linux-3.10.26.orig/arch/mips/ralink/of.c 2014-01-12 11:49:40.292069849 +0100
+++ linux-3.10.26/arch/mips/ralink/of.c 2014-01-12 12:38:01.236138974 +0100
@@ -80,6 +80,16 @@
--- a/arch/mips/ralink/of.c
+++ b/arch/mips/ralink/of.c
@@ -80,6 +80,16 @@ void __init device_tree_init(void)
}
extern struct boot_param_header __image_dtb;
@ -19,7 +17,7 @@ Index: linux-3.10.26/arch/mips/ralink/of.c
void __init plat_mem_setup(void)
{
@@ -90,8 +100,10 @@
@@ -90,8 +100,10 @@ void __init plat_mem_setup(void)
* parsed resulting in our memory appearing
*/
__dt_setup_arch(&__image_dtb);

View File

@ -1,8 +1,6 @@
Index: linux-3.10.26/drivers/net/ethernet/ralink/ralink_soc_eth.c
===================================================================
--- linux-3.10.26.orig/drivers/net/ethernet/ralink/ralink_soc_eth.c 2014-01-12 11:49:40.052069844 +0100
+++ linux-3.10.26/drivers/net/ethernet/ralink/ralink_soc_eth.c 2014-01-12 12:49:31.776155429 +0100
@@ -335,7 +335,7 @@
--- a/drivers/net/ethernet/ralink/ralink_soc_eth.c
+++ b/drivers/net/ethernet/ralink/ralink_soc_eth.c
@@ -335,7 +335,7 @@ static int fe_start_xmit(struct sk_buff
if (priv->soc->tso)
fe_start_tso(skb, dev, nr_frags, tx);
@ -11,7 +9,7 @@ Index: linux-3.10.26/drivers/net/ethernet/ralink/ralink_soc_eth.c
struct iphdr *iph = NULL;
struct tcphdr *th = NULL;
struct ipv6hdr *ip6h = NULL;
@@ -741,8 +741,7 @@
@@ -741,8 +741,7 @@ static int fe_probe(struct platform_devi
dev_info(&pdev->dev, "Enabling TSO\n");
netdev->features |= NETIF_F_SG | NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_IPV6_CSUM;
}

View File

@ -11,7 +11,7 @@ BOARD:=rb532
BOARDNAME:=Mikrotik RouterBoard 532
FEATURES:=pci targz broken
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += wpad-mini kmod-madwifi kmod-input-rb532

View File

@ -14,7 +14,7 @@ CPU_TYPE:=mpcore
CPU_SUBTYPE:=vfp
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
DEVICE_TYPE:=developerboard

View File

@ -11,7 +11,7 @@ BOARD:=sparc
BOARDNAME:=Sun UltraSPARC
FEATURES+=fpu tgz ext4 squashfs broken
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
include $(INCLUDE_DIR)/target.mk

View File

@ -19,7 +19,7 @@ DEFAULT_PACKAGES += \
kmod-ledtrig-heartbeat kmod-ledtrig-gpio \
kmod-ledtrig-netdev \
kmod-cpu-msr hwclock wpad
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
CS5535_MASK:=0x0b000042
CPU_TYPE := geode

View File

@ -1,6 +1,6 @@
BOARDNAME:=Generic
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
define Target/Description
Build firmware images for x86 based boards

View File

@ -2,4 +2,4 @@ BOARDNAME:=KVM Guest
FEATURES:=ext4 pci usb
DEFAULT_PACKAGES += kmod-virtio-balloon kmod-virtio-net kmod-virtio-random
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28

View File

@ -12,7 +12,7 @@ BOARDNAME:=x86_64
FEATURES:=ext4 vdi vmdk targz
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
KERNELNAME:=bzImage

View File

@ -12,7 +12,7 @@ BOARDNAME:=Ingenic XBurst
FEATURES:=targz ubifs audio
SUBTARGETS:=qi_lb60 n516 n526 id800wt
LINUX_VERSION:=3.10.26
LINUX_VERSION:=3.10.28
DEVICE_TYPE=other