generic/3.18: upgrade to 3.18.10

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>



git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45197 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
Imre Kaloz
2015-03-31 19:21:13 +00:00
parent 6f5acae617
commit 5d823c725d
4 changed files with 5 additions and 66 deletions

View File

@@ -52,7 +52,7 @@
int __ipv6_get_lladdr(struct inet6_dev *idev, struct in6_addr *addr,
u32 banned_flags)
@@ -5434,6 +5433,9 @@ int __init addrconf_init(void)
@@ -5451,6 +5450,9 @@ int __init addrconf_init(void)
ipv6_addr_label_rtnl_register();
@@ -62,7 +62,7 @@
return 0;
errout:
rtnl_af_unregister(&inet6_ops);
@@ -5453,6 +5455,9 @@ void addrconf_cleanup(void)
@@ -5470,6 +5472,9 @@ void addrconf_cleanup(void)
struct net_device *dev;
int i;

View File

@@ -1,6 +1,6 @@
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -338,6 +338,50 @@ int phy_ethtool_gset(struct phy_device *
@@ -357,6 +357,50 @@ int phy_ethtool_gset(struct phy_device *
}
EXPORT_SYMBOL(phy_ethtool_gset);

View File

@@ -1,61 +0,0 @@
From 1e7e4fb66489cc84366656ca5318f1cb61afd4ba Mon Sep 17 00:00:00 2001
From: Maxime Ripard <maxime.ripard@free-electrons.com>
Date: Tue, 24 Feb 2015 18:27:00 +0200
Subject: usb: XHCI: platform: Move the Marvell quirks after the enabling the
clocks
The commit 973747928514 ("usb: host: xhci-plat: add support for the Armada
375/38x XHCI controllers") extended the xhci-plat driver to support the Armada
375/38x SoCs, mostly by adding a quirk configuring the MBUS window.
However, that quirk was run before the clock the controllers needs has been
enabled. This usually worked because the clock was first enabled by the
bootloader, and left as such until the driver is probe, where it tries to
access the MBUS configuration registers before enabling the clock.
Things get messy when EPROBE_DEFER is involved during the probe, since as part
of its error path, the driver will rightfully disable the clock. When the
driver will be reprobed, it will retry to access the MBUS registers, but this
time with the clock disabled, which hangs forever.
Fix this by running the quirks after the clock has been enabled by the driver.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: <stable@vger.kernel.org> # v3.16+
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -87,15 +87,6 @@ static int xhci_plat_probe(struct platfo
if (!res)
return -ENODEV;
- if (of_device_is_compatible(pdev->dev.of_node,
- "marvell,armada-375-xhci") ||
- of_device_is_compatible(pdev->dev.of_node,
- "marvell,armada-380-xhci")) {
- ret = xhci_mvebu_mbus_init_quirk(pdev);
- if (ret)
- return ret;
- }
-
/* Initialize dma_mask and coherent_dma_mask to 32-bits */
ret = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
if (ret)
@@ -129,6 +120,15 @@ static int xhci_plat_probe(struct platfo
goto put_hcd;
}
+ if (of_device_is_compatible(pdev->dev.of_node,
+ "marvell,armada-375-xhci") ||
+ of_device_is_compatible(pdev->dev.of_node,
+ "marvell,armada-380-xhci")) {
+ ret = xhci_mvebu_mbus_init_quirk(pdev);
+ if (ret)
+ return ret;
+ }
+
ret = usb_add_hcd(hcd, irq, IRQF_SHARED);
if (ret)
goto disable_clk;