ifeq ($(LINUX_VERSION),3.9.11)
LINUX_KERNEL_MD5SUM:=edbf88eb7f7d34dbd5d3887726790755
endif
-ifeq ($(LINUX_VERSION),3.10.28)
- LINUX_KERNEL_MD5SUM:=789a39e8a381a60e46fe922cb66d77e2
+ifeq ($(LINUX_VERSION),3.10.32)
+ LINUX_KERNEL_MD5SUM:=58bfaf95f4e23be2d658dab0a7fb9615
endif
ifeq ($(LINUX_VERSION),3.12.10)
LINUX_KERNEL_MD5SUM:=93325074b7b1d7bb76fb7d4348f0aa7a
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
SUBTARGETS:=generic ac49x
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
};
/* Uart divisor latch read */
-@@ -2839,7 +2846,11 @@ static void serial8250_console_putchar(s
+@@ -2843,7 +2850,11 @@ static void serial8250_console_putchar(s
struct uart_8250_port *up =
container_of(port, struct uart_8250_port, port);
CPU_TYPE=34kc
SUBTARGETS:=generic nand mikrotik
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
# ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
--- a/lib/Makefile
+++ b/lib/Makefile
-@@ -89,6 +89,7 @@ obj-$(CONFIG_XZ_DEC) += xz/
+@@ -90,6 +90,7 @@ obj-$(CONFIG_XZ_DEC) += xz/
obj-$(CONFIG_RAID6_PQ) += raid6/
obj-$(CONFIG_LZMA_COMPRESS) += lzma/
obj-$(CONFIG_LZMA_DECOMPRESS) += lzma/
retval = handshake (ehci, &ehci->regs->command,
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
-@@ -201,6 +201,10 @@ struct ehci_hcd { /* one per controlle
- unsigned frame_index_bug:1; /* MosChip (AKA NetMos) */
+@@ -202,6 +202,10 @@ struct ehci_hcd { /* one per controlle
unsigned need_oc_pp_cycle:1; /* MPC834X port power */
+ unsigned imx28_write_fix:1; /* For Freescale i.MX28 */
unsigned ignore_oc:1;
+ unsigned qca_force_host_mode:1;
+ unsigned qca_force_16bit_ptw:1; /* force 16 bit UTMI */
BOARDNAME:=Atheros AR231x/AR5312
FEATURES:=squashfs
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
FEATURES:=squashfs
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
CPU_TYPE:=cortex-a9
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
CPU_TYPE:=arm1176jzf-s
CPU_SUBTYPE:=vfp
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += brcm2708-gpu-fw kmod-usb-hid kmod-sound-core kmod-sound-arm-bcm2835
+MODULE_ALIAS("platform:" DRV_NAME);
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
-@@ -344,6 +344,25 @@ config I2C_BCM2835
+@@ -345,6 +345,25 @@ config I2C_BCM2835
This support is also available as a module. If so, the module
will be called i2c-bcm2835.
FEATURES:=squashfs usb pcmcia
MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += swconfig wpad-mini nvram \
+++ /dev/null
-From e85583b12b023773b488cf8406f11719a4037461 Mon Sep 17 00:00:00 2001
-From: Jonas Gorski <jogo@openwrt.org>
-Date: Sun, 1 Dec 2013 16:16:44 +0100
-Subject: [PATCH 1/2] spi/bcm63xx: don't substract prepend length from total
- length
-
-The spi command must include the full message length including any
-prepended writes, else transfers larger than 256 bytes will be
-incomplete.
-
-Signed-off-by: Jonas Gorski <jogo@openwrt.org>
----
- drivers/spi/spi-bcm63xx.c | 2 --
- 1 file changed, 2 deletions(-)
-
---- a/drivers/spi/spi-bcm63xx.c
-+++ b/drivers/spi/spi-bcm63xx.c
-@@ -180,8 +180,6 @@ static int bcm63xx_txrx_bufs(struct spi_
- transfer_list);
- }
-
-- len -= prepend_len;
--
- init_completion(&bs->done);
-
- /* Fill in the Message control register */
FEATURES:=squashfs
CPU_TYPE:=fa526
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
{USB_DEVICE(0x0af0, 0xd155)},
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
-@@ -1259,6 +1259,18 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
+@@ -1266,6 +1266,18 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
USB_SC_DEVICE, USB_PR_DEVICE, NULL,
0 ),
+module_exit(ovl_exit);
--- a/fs/splice.c
+++ b/fs/splice.c
-@@ -1313,6 +1313,7 @@ long do_splice_direct(struct file *in, l
+@@ -1331,6 +1331,7 @@ long do_splice_direct(struct file *in, l
return ret;
}
retval = ehci_setup(hcd);
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
-@@ -200,6 +200,7 @@ struct ehci_hcd { /* one per controlle
- unsigned has_synopsys_hc_bug:1; /* Synopsys HC */
+@@ -201,6 +201,7 @@ struct ehci_hcd { /* one per controlle
unsigned frame_index_bug:1; /* MosChip (AKA NetMos) */
unsigned need_oc_pp_cycle:1; /* MPC834X port power */
+ unsigned imx28_write_fix:1; /* For Freescale i.MX28 */
+ unsigned ignore_oc:1;
/* required for usb32 quirk */
ifdef CONFIG_FUNCTION_TRACER
ORIG_CFLAGS := $(KBUILD_CFLAGS)
KBUILD_CFLAGS = $(subst -pg,,$(ORIG_CFLAGS))
-@@ -77,6 +87,8 @@ obj-$(CONFIG_LZO_COMPRESS) += lzo/
+@@ -78,6 +88,8 @@ obj-$(CONFIG_LZO_COMPRESS) += lzo/
obj-$(CONFIG_LZO_DECOMPRESS) += lzo/
obj-$(CONFIG_XZ_DEC) += xz/
obj-$(CONFIG_RAID6_PQ) += raid6/
static inline const char *rtn_type(char *buf, size_t len, unsigned int t)
--- a/net/ipv4/ipmr.c
+++ b/net/ipv4/ipmr.c
-@@ -181,6 +181,7 @@ static int ipmr_rule_action(struct fib_r
+@@ -184,6 +184,7 @@ static int ipmr_rule_action(struct fib_r
case FR_ACT_UNREACHABLE:
return -ENETUNREACH;
case FR_ACT_PROHIBIT:
table = fib6_get_table(net, rule->table);
--- a/net/ipv6/ip6mr.c
+++ b/net/ipv6/ip6mr.c
-@@ -166,6 +166,8 @@ static int ip6mr_rule_action(struct fib_
+@@ -169,6 +169,8 @@ static int ip6mr_rule_action(struct fib_
return -ENETUNREACH;
case FR_ACT_PROHIBIT:
return -EACCES;
#include <net/protocol.h>
#include <net/dst.h>
-@@ -471,6 +472,22 @@ struct sk_buff *__netdev_alloc_skb(struc
+@@ -441,6 +442,22 @@ struct sk_buff *__netdev_alloc_skb(struc
}
EXPORT_SYMBOL(__netdev_alloc_skb);
CPU_SUBTYPE:=vfpv3
MAINTAINER:=Luka Perkov <luka@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
-@@ -223,6 +223,73 @@ int of_pci_address_to_resource(struct de
+@@ -224,6 +224,73 @@ int of_pci_address_to_resource(struct de
return __of_address_to_resource(dev, addrp, size, flags, NULL, r);
}
EXPORT_SYMBOL_GPL(of_pci_address_to_resource);
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
SUBTARGETS=generic harddisk
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
if (!port->mapbase)
break;
-@@ -3091,6 +3113,7 @@ static int serial8250_probe(struct platf
+@@ -3095,6 +3117,7 @@ static int serial8250_probe(struct platf
uart.port.set_termios = p->set_termios;
uart.port.pm = p->pm;
uart.port.dev = &dev->dev;
uart.port.irqflags |= irqflag;
ret = serial8250_register_8250_port(&uart);
if (ret < 0) {
-@@ -3242,6 +3265,7 @@ int serial8250_register_8250_port(struct
+@@ -3246,6 +3269,7 @@ int serial8250_register_8250_port(struct
uart->port.flags = up->port.flags | UPF_BOOT_AUTOCONF;
uart->bugs = up->bugs;
uart->port.mapbase = up->port.mapbase;
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
-@@ -238,6 +238,9 @@ struct sk_buff *__alloc_skb(unsigned int
+@@ -208,6 +208,9 @@ struct sk_buff *__alloc_skb(unsigned int
if (sk_memalloc_socks() && (flags & SKB_ALLOC_RX))
gfp_mask |= __GFP_MEMALLOC;
/* Get the HEAD */
skb = kmem_cache_alloc_node(cache, gfp_mask & ~__GFP_DMA, node);
-@@ -1082,6 +1085,10 @@ int pskb_expand_head(struct sk_buff *skb
+@@ -1052,6 +1055,10 @@ int pskb_expand_head(struct sk_buff *skb
if (skb_shared(skb))
BUG();
CPU_TYPE:=xscale
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
-@@ -223,6 +223,73 @@ int of_pci_address_to_resource(struct de
+@@ -224,6 +224,73 @@ int of_pci_address_to_resource(struct de
return __of_address_to_resource(dev, addrp, size, flags, NULL, r);
}
EXPORT_SYMBOL_GPL(of_pci_address_to_resource);
FEATURES:=squashfs
SUBTARGETS=xway xrx200 ase falcon
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
CPU_TYPE:=mips32r2
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
-@@ -495,6 +495,16 @@ config I2C_IOP3XX
+@@ -496,6 +496,16 @@ config I2C_IOP3XX
This driver can also be built as a module. If so, the module
will be called i2c-iop3xx.
choice
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
-@@ -4053,7 +4053,7 @@ hub_port_init (struct usb_hub *hub, stru
+@@ -4026,7 +4026,7 @@ hub_port_init (struct usb_hub *hub, stru
udev->ttport = hdev->ttport;
} else if (udev->speed != USB_SPEED_HIGH
&& hdev->speed == USB_SPEED_HIGH) {
drivers/pinctrl/pinctrl-xway.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c
-index ed2d1ba..e66f4ca 100644
--- a/drivers/pinctrl/pinctrl-xway.c
+++ b/drivers/pinctrl/pinctrl-xway.c
-@@ -332,10 +332,10 @@ static const struct ltq_pin_group xway_grps[] = {
+@@ -332,10 +332,10 @@ static const struct ltq_pin_group xway_g
GRP_MUX("mdio", MDIO, pins_mdio),
GRP_MUX("gphy0 led0", GPHY, pins_gphy0_led0),
GRP_MUX("gphy0 led1", GPHY, pins_gphy0_led1),
};
static const struct ltq_pin_group ase_grps[] = {
---
-1.8.5.3
-
INITRAMFS_EXTRA_FILES:=
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
DEVICE_TYPE:=developerboard
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
SUBTARGETS=generic p1020
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
CPU_SUBTYPE:=vfpv3
MAINTAINER:=Luka Perkov <luka@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
-@@ -223,6 +223,73 @@ int of_pci_address_to_resource(struct de
+@@ -224,6 +224,73 @@ int of_pci_address_to_resource(struct de
return __of_address_to_resource(dev, addrp, size, flags, NULL, r);
}
EXPORT_SYMBOL_GPL(of_pci_address_to_resource);
+++ /dev/null
-From 60b78d28057f9f1ecce39955755d26e4cd3130de Mon Sep 17 00:00:00 2001
-From: Lior Amsalem <alior@marvell.com>
-Date: Mon, 25 Nov 2013 17:26:44 +0100
-Subject: [PATCH 085/203] irqchip: armada-370-xp: fix IPI race condition
-
-In the Armada 370/XP driver, when we receive an IRQ 0, we read the
-list of doorbells that caused the interrupt from register
-ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS. This gives the list of IPIs that
-were generated. However, instead of acknowledging only the IPIs that
-were generated, we acknowledge *all* the IPIs, by writing
-~IPI_DOORBELL_MASK in the ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS register.
-
-This creates a race condition: if a new IPI that isn't part of the
-ones read into the temporary "ipimask" variable is fired before we
-acknowledge all IPIs, then we will simply loose it. This is causing
-scheduling hangs on SMP intensive workloads.
-
-It is important to mention that this ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS
-register has the following behavior: "A CPU write of 0 clears the bits
-in this field. A CPU write of 1 has no effect". This is what allows us
-to simply write ~ipimask to acknoledge the handled IPIs.
-
-Notice that the same problem is present in the MSI implementation, but
-it will be fixed as a separate patch, so that this IPI fix can be
-pushed to older stable versions as appropriate (all the way to 3.8),
-while the MSI code only appeared in 3.13.
-
-Signed-off-by: Lior Amsalem <alior@marvell.com>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Cc: stable@vger.kernel.org
-Cc: Thomas Gleixner <tglx@linutronix.de>
----
- drivers/irqchip/irq-armada-370-xp.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/drivers/irqchip/irq-armada-370-xp.c
-+++ b/drivers/irqchip/irq-armada-370-xp.c
-@@ -407,7 +407,7 @@ armada_370_xp_handle_irq(struct pt_regs
- ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS)
- & IPI_DOORBELL_MASK;
-
-- writel(~IPI_DOORBELL_MASK, per_cpu_int_base +
-+ writel(~ipimask, per_cpu_int_base +
- ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS);
-
- /* Handle all pending doorbells */
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
-@@ -481,7 +481,7 @@ static u64 __of_translate_address(struct
+@@ -482,7 +482,7 @@ static u64 __of_translate_address(struct
int na, ns, pna, pns;
u64 result = OF_BAD_ADDR;
/* Increase refcount at current level */
of_node_get(dev);
-@@ -496,13 +496,13 @@ static u64 __of_translate_address(struct
+@@ -497,13 +497,13 @@ static u64 __of_translate_address(struct
bus->count_cells(dev, &na, &ns);
if (!OF_CHECK_COUNTS(na, ns)) {
printk(KERN_ERR "prom_parse: Bad cell count for %s\n",
--- a/drivers/of/address.c
+++ b/drivers/of/address.c
-@@ -524,12 +524,12 @@ static u64 __of_translate_address(struct
+@@ -525,12 +525,12 @@ static u64 __of_translate_address(struct
pbus->count_cells(dev, &pna, &pns);
if (!OF_CHECK_COUNTS(pna, pns)) {
printk(KERN_ERR "prom_parse: Bad cell count for %s\n",
+++ /dev/null
-From d587c866f34aa8e59ddc3628969113e725e36eab Mon Sep 17 00:00:00 2001
-From: Lior Amsalem <alior@marvell.com>
-Date: Mon, 23 Dec 2013 13:07:35 +0100
-Subject: [PATCH 196/203] ata: sata_mv: setting PHY speed according to SControl
- speed
-
-This patch fixes a SATA hotplug issue on the Armada 370 and Armada XP
-SoCs. Without it, if a disk is unplugged from a SATA port, then further
-hotplug notification are now longer received on this port.
-
-This should be applied to every -stable kernel supporting Armada SoCs.
-
-Signed-off-by: Lior Amsalem <alior@marvell.com>
-Signed-off-by: Nadav Haklai <nadavh@marvell.com>
-Signed-off-by: Simon Guinot <simon.guinot@sequanux.org>
-Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Cc: Jason Cooper <jason@lakedaemon.net>
-Cc: Andrew Lunn <andrew@lunn.ch>
-Cc: Gregory Clement <gregory.clement@free-electrons.com>
-Cc: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
-Cc: stable@vger.kernel.org
----
- drivers/ata/sata_mv.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
---- a/drivers/ata/sata_mv.c
-+++ b/drivers/ata/sata_mv.c
-@@ -304,6 +304,7 @@ enum {
- MV5_LTMODE = 0x30,
- MV5_PHY_CTL = 0x0C,
- SATA_IFCFG = 0x050,
-+ LP_PHY_CTL = 0x058,
-
- MV_M2_PREAMP_MASK = 0x7e0,
-
-@@ -1353,6 +1354,7 @@ static int mv_scr_write(struct ata_link
-
- if (ofs != 0xffffffffU) {
- void __iomem *addr = mv_ap_base(link->ap) + ofs;
-+ void __iomem *lp_phy_addr = mv_ap_base(link->ap) + LP_PHY_CTL;
- if (sc_reg_in == SCR_CONTROL) {
- /*
- * Workaround for 88SX60x1 FEr SATA#26:
-@@ -1369,6 +1371,14 @@ static int mv_scr_write(struct ata_link
- */
- if ((val & 0xf) == 1 || (readl(addr) & 0xf) == 1)
- val |= 0xf000;
-+
-+ /*
-+ * Setting PHY speed according to SControl speed
-+ */
-+ if ((val & 0xf0) == 0x10)
-+ writelfl(0x7, lp_phy_addr);
-+ else
-+ writelfl(0x227, lp_phy_addr);
- }
- writelfl(val, addr);
- return 0;
return -ENOMEM;
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
-@@ -4654,7 +4654,6 @@ int xhci_gen_setup(struct usb_hcd *hcd,
+@@ -4657,7 +4657,6 @@ int xhci_gen_setup(struct usb_hcd *hcd,
struct xhci_hcd *xhci;
struct device *dev = hcd->self.controller;
int retval;
/* Accept arbitrarily long scatter-gather lists */
hcd->self.sg_tablesize = ~0;
-@@ -4682,14 +4681,6 @@ int xhci_gen_setup(struct usb_hcd *hcd,
+@@ -4685,14 +4684,6 @@ int xhci_gen_setup(struct usb_hcd *hcd,
/* xHCI private pointer was set in xhci_pci_probe for the second
* registered roothub.
*/
return 0;
}
-@@ -4728,12 +4719,12 @@ int xhci_gen_setup(struct usb_hcd *hcd,
+@@ -4731,12 +4722,12 @@ int xhci_gen_setup(struct usb_hcd *hcd,
goto error;
xhci_dbg(xhci, "Reset complete\n");
CPU_CFLAGS_octeon:=-march=octeon
MAINTAINER:=John Crispin <blogic@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
CPU_TYPE:=405
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
CPU_TYPE:=440
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
SUBTARGETS:=rt305x mt7620a mt7620n mt7621 rt3883 rt288x
FEATURES:=squashfs gpio
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES+=\
+};
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
-@@ -629,6 +629,10 @@ config I2C_PXA_SLAVE
+@@ -630,6 +630,10 @@ config I2C_PXA_SLAVE
is necessary for systems where the PXA may be a target on the
I2C bus.
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
-@@ -1259,7 +1259,7 @@ static void hub_quiesce(struct usb_hub *
+@@ -1254,7 +1254,7 @@ static void hub_quiesce(struct usb_hub *
if (type != HUB_SUSPEND) {
/* Disconnect all the children */
for (i = 0; i < hdev->maxchild; ++i) {
static int xhci_free_msi(struct xhci_hcd *xhci)
{
int i;
-@@ -386,6 +408,7 @@ static int xhci_try_enable_msi(struct us
+@@ -389,6 +411,7 @@ static int xhci_try_enable_msi(struct us
return ret;
}
hcd->irq = pdev->irq;
return 0;
}
-@@ -427,6 +450,11 @@ static void compliance_mode_recovery(uns
+@@ -430,6 +453,11 @@ static void compliance_mode_recovery(uns
xhci_dbg(xhci, "Attempting compliance mode recovery\n");
hcd = xhci->shared_hcd;
if (hcd->state == HC_STATE_SUSPENDED)
usb_hcd_resume_root_hub(hcd);
-@@ -475,6 +503,9 @@ bool xhci_compliance_mode_recovery_timer
+@@ -478,6 +506,9 @@ bool xhci_compliance_mode_recovery_timer
{
const char *dmi_product_name, *dmi_sys_vendor;
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 @@ int xhci_init(struct usb_hcd *hcd)
+@@ -521,6 +552,10 @@ int xhci_init(struct usb_hcd *hcd)
} else {
xhci_dbg(xhci, "xHCI doesn't need link TRB QUIRK\n");
}
retval = xhci_mem_init(xhci, GFP_KERNEL);
xhci_dbg(xhci, "Finished xhci_init\n");
-@@ -661,7 +696,11 @@ int xhci_run(struct usb_hcd *hcd)
+@@ -664,7 +699,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;
xhci_writel(xhci, temp, &xhci->ir_set->irq_control);
/* Set the HCD state before we enable the irqs */
-@@ -682,6 +721,9 @@ int xhci_run(struct usb_hcd *hcd)
+@@ -685,6 +724,9 @@ int xhci_run(struct usb_hcd *hcd)
xhci_queue_vendor_command(xhci, 0, 0, 0,
TRB_TYPE(TRB_NEC_GET_FW));
xhci_dbg(xhci, "Finished xhci_run for USB2 roothub\n");
return 0;
}
-@@ -999,7 +1041,6 @@ int xhci_resume(struct xhci_hcd *xhci, b
+@@ -1002,7 +1044,6 @@ int xhci_resume(struct xhci_hcd *xhci, b
/* If restore operation fails, re-initialize the HC during resume */
if ((temp & STS_SRE) || hibernated) {
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 @@ int xhci_drop_endpoint(struct usb_hcd *h
+@@ -1586,6 +1627,13 @@ int xhci_drop_endpoint(struct usb_hcd *h
u32 drop_flag;
u32 new_add_flags, new_drop_flags, new_slot_info;
int ret;
ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
if (ret <= 0)
-@@ -1634,6 +1682,40 @@ int xhci_drop_endpoint(struct usb_hcd *h
+@@ -1637,6 +1685,40 @@ int xhci_drop_endpoint(struct usb_hcd *h
xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep);
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 @@ int xhci_add_endpoint(struct usb_hcd *hc
+@@ -1672,6 +1754,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;
ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
if (ret <= 0) {
-@@ -1731,6 +1825,56 @@ int xhci_add_endpoint(struct usb_hcd *hc
+@@ -1734,6 +1828,56 @@ int xhci_add_endpoint(struct usb_hcd *hc
return -ENOMEM;
}
ctrl_ctx->add_flags |= cpu_to_le32(added_ctxs);
new_add_flags = le32_to_cpu(ctrl_ctx->add_flags);
-@@ -2694,7 +2838,7 @@ int xhci_check_bandwidth(struct usb_hcd
+@@ -2697,7 +2841,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;
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 @@ static u16 xhci_call_host_update_timeout
+@@ -4233,10 +4377,14 @@ static u16 xhci_call_host_update_timeout
u16 *timeout)
{
if (state == USB3_LPM_U1) {
return xhci_calculate_intel_u2_timeout(udev, desc);
}
-@@ -4659,7 +4807,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
+@@ -4662,7 +4810,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 :| */
if (usb_hcd_is_primary_hcd(hcd)) {
xhci = kzalloc(sizeof(struct xhci_hcd), GFP_KERNEL);
-@@ -4728,6 +4878,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
+@@ -4731,6 +4881,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
goto error;
xhci_dbg(xhci, "Reset complete\n");
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 @@ MODULE_DESCRIPTION(DRIVER_DESC);
+@@ -4755,8 +4909,21 @@ MODULE_DESCRIPTION(DRIVER_DESC);
MODULE_AUTHOR(DRIVER_AUTHOR);
MODULE_LICENSE("GPL");
int retval;
retval = xhci_register_pci();
-@@ -4766,6 +4933,33 @@ static int __init xhci_hcd_init(void)
+@@ -4769,6 +4936,33 @@ static int __init xhci_hcd_init(void)
printk(KERN_DEBUG "Problem registering platform driver.");
goto unreg_pci;
}
/*
* Check the compiler generated sizes of structures that must be laid
* out in specific ways for hardware access.
-@@ -4783,6 +4977,7 @@ static int __init xhci_hcd_init(void)
+@@ -4786,6 +4980,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);
-Index: linux-3.10.28/drivers/pinctrl/pinctrl-rt2880.c
-===================================================================
---- linux-3.10.28.orig/drivers/pinctrl/pinctrl-rt2880.c 2014-02-14 10:46:06.216549358 +0000
-+++ linux-3.10.28/drivers/pinctrl/pinctrl-rt2880.c 2014-02-14 14:58:18.580040433 +0000
-@@ -204,6 +204,7 @@
+--- a/drivers/pinctrl/pinctrl-rt2880.c
++++ b/drivers/pinctrl/pinctrl-rt2880.c
+@@ -204,6 +204,7 @@ static int rt2880_pmx_group_enable(struc
{
struct rt2880_priv *p = pinctrl_dev_get_drvdata(pctrldev);
u32 mode = 0;
/* dont allow double use */
if (p->groups[group].enabled) {
-@@ -217,16 +218,16 @@
+@@ -217,16 +218,16 @@ static int rt2880_pmx_group_enable(struc
mode = rt_sysc_r32(SYSC_REG_GPIO_MODE);
mode &= ~(p->groups[group].mask << p->groups[group].shift);
BOARDNAME:=Mikrotik RouterBoard 532
FEATURES:=pci targz broken
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
include $(INCLUDE_DIR)/target.mk
DEFAULT_PACKAGES += wpad-mini kmod-madwifi kmod-input-rb532
CPU_SUBTYPE:=vfp
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
DEVICE_TYPE:=developerboard
BOARDNAME:=Sun UltraSPARC
FEATURES+=fpu tgz ext4 squashfs broken
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
include $(INCLUDE_DIR)/target.mk
kmod-ledtrig-heartbeat kmod-ledtrig-gpio \
kmod-ledtrig-netdev \
kmod-cpu-msr hwclock wpad
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
CS5535_MASK:=0x0b000042
CPU_TYPE := geode
BOARDNAME:=Generic
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
define Target/Description
Build firmware images for x86 based boards
FEATURES:=ext4 pci usb
DEFAULT_PACKAGES += kmod-virtio-balloon kmod-virtio-net kmod-virtio-random
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
FEATURES:=targz ubifs audio
SUBTARGETS:=qi_lb60 n516 n526 id800wt
-LINUX_VERSION:=3.10.28
+LINUX_VERSION:=3.10.32
DEVICE_TYPE=other