kernel: update 3.18 to 3.18.16
Changelogs: * https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.15 * https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.16 Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 46011
This commit is contained in:
parent
e952654f0b
commit
9a59b350b7
45 changed files with 127 additions and 336 deletions
|
@ -2,10 +2,10 @@
|
|||
|
||||
LINUX_RELEASE?=1
|
||||
|
||||
LINUX_VERSION-3.18 = .14
|
||||
LINUX_VERSION-3.18 = .16
|
||||
LINUX_VERSION-4.0 = .4
|
||||
|
||||
LINUX_KERNEL_MD5SUM-3.18.14 = cb6f534b83333ba52f1fed7979824a1b
|
||||
LINUX_KERNEL_MD5SUM-3.18.16 = 3b0e66fdf47b0660521d79b881eabf04
|
||||
LINUX_KERNEL_MD5SUM-4.0.4 = 71d8b666438e6b59f103e9384889c15a
|
||||
|
||||
ifdef KERNEL_PATCHVER
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
};
|
||||
|
||||
struct at803x_context {
|
||||
@@ -61,6 +71,43 @@ struct at803x_context {
|
||||
@@ -61,6 +72,43 @@ struct at803x_context {
|
||||
u16 led_control;
|
||||
};
|
||||
|
||||
|
@ -84,7 +84,7 @@
|
|||
/* save relevant PHY registers to private copy */
|
||||
static void at803x_context_save(struct phy_device *phydev,
|
||||
struct at803x_context *context)
|
||||
@@ -208,8 +255,16 @@ static int at803x_probe(struct phy_devic
|
||||
@@ -208,8 +256,16 @@ static int at803x_probe(struct phy_devic
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -101,7 +101,7 @@
|
|||
int ret;
|
||||
|
||||
ret = genphy_config_init(phydev);
|
||||
@@ -227,6 +282,26 @@ static int at803x_config_init(struct phy
|
||||
@@ -227,6 +283,26 @@ static int at803x_config_init(struct phy
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -137,11 +137,10 @@
|
|||
|
||||
/*
|
||||
* Conduct a hardware reset for AT8030 every time a link loss is
|
||||
@@ -287,6 +365,26 @@ static void at803x_link_change_notify(st
|
||||
} else {
|
||||
@@ -288,6 +366,26 @@ static void at803x_link_change_notify(st
|
||||
priv->phy_reset = false;
|
||||
}
|
||||
+ }
|
||||
}
|
||||
+ if (pdata->fixup_rgmii_tx_delay &&
|
||||
+ phydev->speed != priv->prev_speed) {
|
||||
+ switch (phydev->speed) {
|
||||
|
@ -161,9 +160,10 @@
|
|||
+ }
|
||||
+
|
||||
+ priv->prev_speed = phydev->speed;
|
||||
}
|
||||
+ }
|
||||
}
|
||||
|
||||
static struct phy_driver at803x_driver[] = {
|
||||
--- /dev/null
|
||||
+++ b/include/linux/platform_data/phy-at803x.h
|
||||
@@ -0,0 +1,11 @@
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -687,6 +687,26 @@ config ATH79_MACH_OM5P
|
||||
@@ -694,6 +694,26 @@ config ATH79_MACH_OM5P
|
||||
select ATH79_DEV_M25P80
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
|||
select SOC_AR934X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -78,6 +78,8 @@ obj-$(CONFIG_ATH79_MACH_JA76PF) +
|
||||
@@ -78,6 +78,8 @@ obj-$(CONFIG_ATH79_MACH_JA76PF) += mach
|
||||
obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o
|
||||
obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o
|
||||
obj-$(CONFIG_ATH79_MACH_MC_MAC1200R) += mach-mc-mac1200r.o
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
select SOC_AR934X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -96,6 +96,7 @@ obj-$(CONFIG_ATH79_MACH_R6100) += mach-
|
||||
@@ -98,6 +98,7 @@ obj-$(CONFIG_ATH79_MACH_R6100) += mach-
|
||||
obj-$(CONFIG_ATH79_MACH_RB4XX) += mach-rb4xx.o
|
||||
obj-$(CONFIG_ATH79_MACH_RB750) += mach-rb750.o
|
||||
obj-$(CONFIG_ATH79_MACH_RB91X) += mach-rb91x.o
|
||||
|
@ -29,7 +29,7 @@
|
|||
obj-$(CONFIG_ATH79_MACH_RBSXTLITE) += mach-rbsxtlite.o
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -103,6 +103,7 @@ enum ath79_mach_type {
|
||||
@@ -105,6 +105,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_RB_750G_R3, /* MikroTik RouterBOARD 750GL */
|
||||
ATH79_MACH_RB_751, /* MikroTik RouterBOARD 751 */
|
||||
ATH79_MACH_RB_751G, /* Mikrotik RouterBOARD 751G */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -169,6 +169,7 @@ enum ath79_mach_type {
|
||||
@@ -171,6 +171,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_UBNT_NANO_M, /* Ubiquiti NanoStation M */
|
||||
ATH79_MACH_UBNT_NANO_M_XW, /* Ubiquiti NanoStation M XW */
|
||||
ATH79_MACH_UBNT_ROCKET_M, /* Ubiquiti Rocket M */
|
||||
|
|
|
@ -16,8 +16,6 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|||
arch/arm/mach-bcm/bcm_5301x.c | 9 +++++----
|
||||
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-bcm/bcm_5301x.c b/arch/arm/mach-bcm/bcm_5301x.c
|
||||
index e9bcbdb..7aef927 100644
|
||||
--- a/arch/arm/mach-bcm/bcm_5301x.c
|
||||
+++ b/arch/arm/mach-bcm/bcm_5301x.c
|
||||
@@ -18,15 +18,16 @@ static bool first_fault = true;
|
||||
|
@ -41,6 +39,3 @@ index e9bcbdb..7aef927 100644
|
|||
|
||||
/* Returning non-zero causes fault display and panic */
|
||||
return 0;
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -27,8 +27,6 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|||
14 files changed, 50 insertions(+), 6 deletions(-)
|
||||
create mode 100644 arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi
|
||||
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts b/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
|
||||
index 71cff8d..112a5a8 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -39,8 +37,6 @@ index 71cff8d..112a5a8 100644
|
|||
|
||||
/ {
|
||||
compatible = "asus,rt-ac56u", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts b/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
|
||||
index 8b62836..3600f56 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -51,8 +47,6 @@ index 8b62836..3600f56 100644
|
|||
|
||||
/ {
|
||||
compatible = "asus,rt-ac68u", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
index 78e95c0..24f0ab5 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -63,8 +57,6 @@ index 78e95c0..24f0ab5 100644
|
|||
|
||||
/ {
|
||||
compatible = "buffalo,wzr-1750dhp", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
index 946c728..f039393 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -90,8 +82,6 @@ index 946c728..f039393 100644
|
|||
partition@0 {
|
||||
label = "ubi";
|
||||
reg = <0x00000000 0x08000000>;
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
|
||||
index 2ed9e57..326ce8f 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -102,8 +92,6 @@ index 2ed9e57..326ce8f 100644
|
|||
|
||||
/ {
|
||||
compatible = "netgear,r6250v1", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
|
||||
index 3991042..3a94606 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -114,8 +102,6 @@ index 3991042..3a94606 100644
|
|||
|
||||
/ {
|
||||
compatible = "netgear,r6300v2", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
|
||||
index 66dfb53..d6a033b 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -126,8 +112,6 @@ index 66dfb53..d6a033b 100644
|
|||
|
||||
/ {
|
||||
compatible = "smartrg,sr400ac", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
|
||||
index 0ee85ea..71b98cf 100644
|
||||
--- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -138,8 +122,6 @@ index 0ee85ea..71b98cf 100644
|
|||
|
||||
/ {
|
||||
compatible = "asus,rt-n18u", "brcm,bcm47081", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
|
||||
index db9131e..bb0cb0b 100644
|
||||
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -150,8 +132,6 @@ index db9131e..bb0cb0b 100644
|
|||
|
||||
/ {
|
||||
compatible = "buffalo,wzr-600dhp2", "brcm,bcm47081", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
index 7d6868a..184fd92 100644
|
||||
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -162,8 +142,6 @@ index 7d6868a..184fd92 100644
|
|||
|
||||
/ {
|
||||
compatible = "buffalo,wzr-900dhp", "brcm,bcm47081", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts b/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
|
||||
index 548e93b..2a92e8d 100644
|
||||
--- a/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -174,8 +152,6 @@ index 548e93b..2a92e8d 100644
|
|||
|
||||
/ {
|
||||
compatible = "buffalo,wxr-1900dhp", "brcm,bcm4709", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
|
||||
index ea26dd3..446c586 100644
|
||||
--- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
|
||||
@@ -10,6 +10,7 @@
|
||||
|
@ -186,9 +162,6 @@ index ea26dd3..446c586 100644
|
|||
|
||||
/ {
|
||||
compatible = "netgear,r8000", "brcm,bcm4709", "brcm,bcm4708";
|
||||
diff --git a/arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi b/arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi
|
||||
new file mode 100644
|
||||
index 0000000..d10781e
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi
|
||||
@@ -0,0 +1,24 @@
|
||||
|
@ -216,8 +189,6 @@ index 0000000..d10781e
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/bcm5301x.dtsi b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
index 78aec62..a97f631 100644
|
||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
@@ -143,4 +143,16 @@
|
||||
|
@ -237,6 +208,3 @@ index 78aec62..a97f631 100644
|
|||
+ brcm,nand-has-wp;
|
||||
+ };
|
||||
};
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -13,8 +13,6 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|||
arch/arm/boot/dts/bcm5301x.dtsi | 24 ++++++++++++++++++++++++
|
||||
1 file changed, 24 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/bcm5301x.dtsi b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
index a97f631..21fefd4 100644
|
||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
@@ -108,6 +108,30 @@
|
||||
|
@ -48,6 +46,3 @@ index a97f631..21fefd4 100644
|
|||
/* USB 2.0 Controller */
|
||||
<0x00021000 0 &gic GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>,
|
||||
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -15,8 +15,6 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|||
2 files changed, 66 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
|
||||
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
|
||||
index 4802376..4e76f68 100644
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -65,6 +65,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
|
@ -27,9 +25,6 @@ index 4802376..4e76f68 100644
|
|||
bcm4709-buffalo-wxr-1900dhp.dtb \
|
||||
bcm4709-netgear-r8000.dtb
|
||||
dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb
|
||||
diff --git a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
new file mode 100644
|
||||
index 0000000..aedf3c4
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
@@ -0,0 +1,65 @@
|
||||
|
@ -98,6 +93,3 @@ index 0000000..aedf3c4
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -13,8 +13,6 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||
drivers/usb/host/bcma-hcd.c | 5 -----
|
||||
1 file changed, 5 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
|
||||
index cd6d0af..080587e 100644
|
||||
--- a/drivers/usb/host/bcma-hcd.c
|
||||
+++ b/drivers/usb/host/bcma-hcd.c
|
||||
@@ -214,16 +214,11 @@ err_alloc:
|
||||
|
@ -34,6 +32,3 @@ index cd6d0af..080587e 100644
|
|||
|
||||
/* TODO: Probably need checks here; is the core connected? */
|
||||
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -10,11 +10,9 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||
drivers/usb/host/bcma-hcd.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
|
||||
index 080587e..853bf9d 100644
|
||||
--- a/drivers/usb/host/bcma-hcd.c
|
||||
+++ b/drivers/usb/host/bcma-hcd.c
|
||||
@@ -233,7 +233,8 @@ static int bcma_hcd_probe(struct bcma_device *dev)
|
||||
@@ -233,7 +233,8 @@ static int bcma_hcd_probe(struct bcma_de
|
||||
|
||||
/* In AI chips EHCI is addrspace 0, OHCI is 1 */
|
||||
ohci_addr = dev->addr_s[0];
|
||||
|
@ -24,6 +22,3 @@ index 080587e..853bf9d 100644
|
|||
&& chipinfo->rev == 0)
|
||||
ohci_addr = 0x18009000;
|
||||
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -11,11 +11,9 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||
drivers/usb/host/bcma-hcd.c | 11 ++++-------
|
||||
1 file changed, 4 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
|
||||
index 853bf9d..d7ea50d 100644
|
||||
--- a/drivers/usb/host/bcma-hcd.c
|
||||
+++ b/drivers/usb/host/bcma-hcd.c
|
||||
@@ -225,7 +225,8 @@ static int bcma_hcd_probe(struct bcma_device *dev)
|
||||
@@ -225,7 +225,8 @@ static int bcma_hcd_probe(struct bcma_de
|
||||
if (dma_set_mask_and_coherent(dev->dma_dev, DMA_BIT_MASK(32)))
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
|
@ -25,7 +23,7 @@ index 853bf9d..d7ea50d 100644
|
|||
if (!usb_dev)
|
||||
return -ENOMEM;
|
||||
|
||||
@@ -239,10 +240,8 @@ static int bcma_hcd_probe(struct bcma_device *dev)
|
||||
@@ -239,10 +240,8 @@ static int bcma_hcd_probe(struct bcma_de
|
||||
ohci_addr = 0x18009000;
|
||||
|
||||
usb_dev->ohci_dev = bcma_hcd_create_pdev(dev, true, ohci_addr);
|
||||
|
@ -38,7 +36,7 @@ index 853bf9d..d7ea50d 100644
|
|||
|
||||
usb_dev->ehci_dev = bcma_hcd_create_pdev(dev, false, dev->addr);
|
||||
if (IS_ERR(usb_dev->ehci_dev)) {
|
||||
@@ -255,8 +254,6 @@ static int bcma_hcd_probe(struct bcma_device *dev)
|
||||
@@ -255,8 +254,6 @@ static int bcma_hcd_probe(struct bcma_de
|
||||
|
||||
err_unregister_ohci_dev:
|
||||
platform_device_unregister(usb_dev->ohci_dev);
|
||||
|
@ -47,6 +45,3 @@ index 853bf9d..d7ea50d 100644
|
|||
return err;
|
||||
}
|
||||
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -11,11 +11,9 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||
drivers/usb/host/bcma-hcd.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
|
||||
index d7ea50d..8a38313 100644
|
||||
--- a/drivers/usb/host/bcma-hcd.c
|
||||
+++ b/drivers/usb/host/bcma-hcd.c
|
||||
@@ -169,7 +169,7 @@ static struct platform_device *bcma_hcd_create_pdev(struct bcma_device *dev, boo
|
||||
@@ -169,7 +169,7 @@ static struct platform_device *bcma_hcd_
|
||||
{
|
||||
struct platform_device *hci_dev;
|
||||
struct resource hci_res[2];
|
||||
|
@ -24,7 +22,7 @@ index d7ea50d..8a38313 100644
|
|||
|
||||
memset(hci_res, 0, sizeof(hci_res));
|
||||
|
||||
@@ -183,7 +183,7 @@ static struct platform_device *bcma_hcd_create_pdev(struct bcma_device *dev, boo
|
||||
@@ -183,7 +183,7 @@ static struct platform_device *bcma_hcd_
|
||||
hci_dev = platform_device_alloc(ohci ? "ohci-platform" :
|
||||
"ehci-platform" , 0);
|
||||
if (!hci_dev)
|
||||
|
@ -33,6 +31,3 @@ index d7ea50d..8a38313 100644
|
|||
|
||||
hci_dev->dev.parent = &dev->dev;
|
||||
hci_dev->dev.dma_mask = &hci_dev->dev.coherent_dma_mask;
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -13,8 +13,6 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||
drivers/usb/host/bcma-hcd.c | 81 +++++++++++++++++++++++++++++++++++++++++++--
|
||||
1 file changed, 78 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
|
||||
index 8a38313..983bc67 100644
|
||||
--- a/drivers/usb/host/bcma-hcd.c
|
||||
+++ b/drivers/usb/host/bcma-hcd.c
|
||||
@@ -2,7 +2,8 @@
|
||||
|
@ -27,7 +25,7 @@ index 8a38313..983bc67 100644
|
|||
*
|
||||
* Based on ssb-ohci driver
|
||||
* Copyright 2007 Michael Buesch <m@bues.ch>
|
||||
@@ -88,7 +89,7 @@ static void bcma_hcd_4716wa(struct bcma_device *dev)
|
||||
@@ -88,7 +89,7 @@ static void bcma_hcd_4716wa(struct bcma_
|
||||
}
|
||||
|
||||
/* based on arch/mips/brcm-boards/bcm947xx/pcibios.c */
|
||||
|
@ -36,7 +34,7 @@ index 8a38313..983bc67 100644
|
|||
{
|
||||
u32 tmp;
|
||||
|
||||
@@ -159,6 +160,70 @@ static void bcma_hcd_init_chip(struct bcma_device *dev)
|
||||
@@ -159,6 +160,70 @@ static void bcma_hcd_init_chip(struct bc
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -107,7 +105,7 @@ index 8a38313..983bc67 100644
|
|||
static const struct usb_ehci_pdata ehci_pdata = {
|
||||
};
|
||||
|
||||
@@ -230,7 +295,16 @@ static int bcma_hcd_probe(struct bcma_device *dev)
|
||||
@@ -230,7 +295,16 @@ static int bcma_hcd_probe(struct bcma_de
|
||||
if (!usb_dev)
|
||||
return -ENOMEM;
|
||||
|
||||
|
@ -125,7 +123,7 @@ index 8a38313..983bc67 100644
|
|||
|
||||
/* In AI chips EHCI is addrspace 0, OHCI is 1 */
|
||||
ohci_addr = dev->addr_s[0];
|
||||
@@ -299,6 +373,7 @@ static int bcma_hcd_resume(struct bcma_device *dev)
|
||||
@@ -299,6 +373,7 @@ static int bcma_hcd_resume(struct bcma_d
|
||||
|
||||
static const struct bcma_device_id bcma_hcd_table[] = {
|
||||
BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_USB20_HOST, BCMA_ANY_REV, BCMA_ANY_CLASS),
|
||||
|
@ -133,6 +131,3 @@ index 8a38313..983bc67 100644
|
|||
BCMA_CORETABLE_END
|
||||
};
|
||||
MODULE_DEVICE_TABLE(bcma, bcma_hcd_table);
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -12,8 +12,6 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||
drivers/usb/host/bcma-hcd.c | 24 ++++++++++++++++++++++++
|
||||
1 file changed, 24 insertions(+)
|
||||
|
||||
diff --git a/drivers/usb/host/bcma-hcd.c b/drivers/usb/host/bcma-hcd.c
|
||||
index 983bc67..a01c6ce 100644
|
||||
--- a/drivers/usb/host/bcma-hcd.c
|
||||
+++ b/drivers/usb/host/bcma-hcd.c
|
||||
@@ -24,6 +24,8 @@
|
||||
|
@ -25,7 +23,7 @@ index 983bc67..a01c6ce 100644
|
|||
#include <linux/usb/ehci_pdriver.h>
|
||||
#include <linux/usb/ohci_pdriver.h>
|
||||
|
||||
@@ -224,6 +226,23 @@ static void bcma_hcd_init_chip_arm(struct bcma_device *dev)
|
||||
@@ -224,6 +226,23 @@ static void bcma_hcd_init_chip_arm(struc
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -49,7 +47,7 @@ index 983bc67..a01c6ce 100644
|
|||
static const struct usb_ehci_pdata ehci_pdata = {
|
||||
};
|
||||
|
||||
@@ -295,6 +314,8 @@ static int bcma_hcd_probe(struct bcma_device *dev)
|
||||
@@ -295,6 +314,8 @@ static int bcma_hcd_probe(struct bcma_de
|
||||
if (!usb_dev)
|
||||
return -ENOMEM;
|
||||
|
||||
|
@ -58,7 +56,7 @@ index 983bc67..a01c6ce 100644
|
|||
switch (dev->id.id) {
|
||||
case BCMA_CORE_NS_USB20:
|
||||
bcma_hcd_init_chip_arm(dev);
|
||||
@@ -347,6 +368,7 @@ static void bcma_hcd_remove(struct bcma_device *dev)
|
||||
@@ -347,6 +368,7 @@ static void bcma_hcd_remove(struct bcma_
|
||||
|
||||
static void bcma_hcd_shutdown(struct bcma_device *dev)
|
||||
{
|
||||
|
@ -66,7 +64,7 @@ index 983bc67..a01c6ce 100644
|
|||
bcma_core_disable(dev, 0);
|
||||
}
|
||||
|
||||
@@ -354,6 +376,7 @@ static void bcma_hcd_shutdown(struct bcma_device *dev)
|
||||
@@ -354,6 +376,7 @@ static void bcma_hcd_shutdown(struct bcm
|
||||
|
||||
static int bcma_hcd_suspend(struct bcma_device *dev)
|
||||
{
|
||||
|
@ -74,7 +72,7 @@ index 983bc67..a01c6ce 100644
|
|||
bcma_core_disable(dev, 0);
|
||||
|
||||
return 0;
|
||||
@@ -361,6 +384,7 @@ static int bcma_hcd_suspend(struct bcma_device *dev)
|
||||
@@ -361,6 +384,7 @@ static int bcma_hcd_suspend(struct bcma_
|
||||
|
||||
static int bcma_hcd_resume(struct bcma_device *dev)
|
||||
{
|
||||
|
@ -82,6 +80,3 @@ index 983bc67..a01c6ce 100644
|
|||
bcma_core_enable(dev, 0);
|
||||
|
||||
return 0;
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -11,8 +11,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
|||
arch/arm/boot/dts/bcm5301x.dtsi | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/bcm5301x.dtsi b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
index 21fefd4..58515f8 100644
|
||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
@@ -95,6 +95,10 @@
|
||||
|
@ -26,6 +24,3 @@ index 21fefd4..58515f8 100644
|
|||
axi@18000000 {
|
||||
compatible = "brcm,bus-axi";
|
||||
reg = <0x18000000 0x1000>;
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -14,8 +14,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
|||
arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
index b84a503..413978a 100644
|
||||
--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
@@ -34,6 +34,18 @@
|
||||
|
@ -37,6 +35,3 @@ index b84a503..413978a 100644
|
|||
nand: nand@18028000 {
|
||||
nandcs@0 {
|
||||
partition@0 {
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -19,8 +19,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
arch/mips/bcm47xx/nvram.c | 9 +++++----
|
||||
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
|
||||
index ba632ff..dee1c32 100644
|
||||
--- a/arch/mips/bcm47xx/nvram.c
|
||||
+++ b/arch/mips/bcm47xx/nvram.c
|
||||
@@ -98,7 +98,7 @@ found:
|
||||
|
@ -54,6 +52,3 @@ index ba632ff..dee1c32 100644
|
|||
}
|
||||
|
||||
err = mtd_read(mtd, 0, len, &bytes_read, dst);
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -22,8 +22,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
arch/mips/bcm47xx/nvram.c | 13 +++++--------
|
||||
1 file changed, 5 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
|
||||
index dee1c32..95d028c 100644
|
||||
--- a/arch/mips/bcm47xx/nvram.c
|
||||
+++ b/arch/mips/bcm47xx/nvram.c
|
||||
@@ -171,7 +171,7 @@ static int nvram_init(void)
|
||||
|
@ -35,7 +33,7 @@ index dee1c32..95d028c 100644
|
|||
|
||||
if (!name)
|
||||
return -EINVAL;
|
||||
@@ -184,19 +184,16 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
|
||||
@@ -184,19 +184,16 @@ int bcm47xx_nvram_getenv(const char *nam
|
||||
|
||||
/* Look for name=value and return value */
|
||||
var = &nvram_buf[sizeof(struct nvram_header)];
|
||||
|
@ -59,6 +57,3 @@ index dee1c32..95d028c 100644
|
|||
}
|
||||
return -ENOENT;
|
||||
}
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -21,11 +21,9 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
include/linux/ssb/ssb.h | 5 ++++-
|
||||
2 files changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
|
||||
index 68ebf23..4048083 100644
|
||||
--- a/arch/mips/bcm47xx/sprom.c
|
||||
+++ b/arch/mips/bcm47xx/sprom.c
|
||||
@@ -201,6 +201,9 @@ static void bcm47xx_sprom_fill_auto(struct ssb_sprom *sprom,
|
||||
@@ -201,6 +201,9 @@ static void bcm47xx_sprom_fill_auto(stru
|
||||
bool fb = fallback;
|
||||
|
||||
ENTRY(0xfffffffe, u16, pre, "boardrev", board_rev, 0, true);
|
||||
|
|
|
@ -21,8 +21,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
include/linux/ssb/ssb.h | 3 +++
|
||||
2 files changed, 9 insertions(+)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
|
||||
index 4048083..92a6c9d 100644
|
||||
--- a/arch/mips/bcm47xx/sprom.c
|
||||
+++ b/arch/mips/bcm47xx/sprom.c
|
||||
@@ -531,6 +531,8 @@ static int mac_addr_used = 2;
|
||||
|
@ -34,7 +32,7 @@ index 4048083..92a6c9d 100644
|
|||
nvram_read_macaddr(prefix, "et0macaddr", sprom->et0mac, fallback);
|
||||
nvram_read_u8(prefix, NULL, "et0mdcport", &sprom->et0mdcport, 0,
|
||||
fallback);
|
||||
@@ -543,6 +545,10 @@ static void bcm47xx_fill_sprom_ethernet(struct ssb_sprom *sprom,
|
||||
@@ -543,6 +545,10 @@ static void bcm47xx_fill_sprom_ethernet(
|
||||
nvram_read_u8(prefix, NULL, "et1phyaddr", &sprom->et1phyaddr, 0,
|
||||
fallback);
|
||||
|
||||
|
|
|
@ -27,8 +27,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
arch/mips/include/asm/mach-bcm47xx/bcm47xx.h | 4 ---
|
||||
3 files changed, 22 insertions(+), 29 deletions(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/setup.c b/arch/mips/bcm47xx/setup.c
|
||||
index 82ff9fd..98c075f 100644
|
||||
--- a/arch/mips/bcm47xx/setup.c
|
||||
+++ b/arch/mips/bcm47xx/setup.c
|
||||
@@ -206,9 +206,6 @@ void __init bcm47xx_bus_setup(void)
|
||||
|
@ -41,11 +39,9 @@ index 82ff9fd..98c075f 100644
|
|||
}
|
||||
#endif
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/sprom.c b/arch/mips/bcm47xx/sprom.c
|
||||
index 92a6c9d..b0d62e7 100644
|
||||
--- a/arch/mips/bcm47xx/sprom.c
|
||||
+++ b/arch/mips/bcm47xx/sprom.c
|
||||
@@ -640,19 +640,6 @@ void bcm47xx_fill_ssb_boardinfo(struct ssb_boardinfo *boardinfo,
|
||||
@@ -640,19 +640,6 @@ void bcm47xx_fill_ssb_boardinfo(struct s
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -65,7 +61,7 @@ index 92a6c9d..b0d62e7 100644
|
|||
#if defined(CONFIG_BCM47XX_SSB)
|
||||
static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
|
||||
{
|
||||
@@ -707,33 +694,46 @@ static void bcm47xx_sprom_apply_prefix_alias(char *prefix, size_t prefix_size)
|
||||
@@ -707,33 +694,46 @@ static void bcm47xx_sprom_apply_prefix_a
|
||||
|
||||
static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
|
||||
{
|
||||
|
@ -121,11 +117,9 @@ index 92a6c9d..b0d62e7 100644
|
|||
}
|
||||
#endif
|
||||
|
||||
diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
|
||||
index 8ed77f6..1461c10 100644
|
||||
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
|
||||
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
|
||||
@@ -52,10 +52,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
|
||||
@@ -52,10 +52,6 @@ void bcm47xx_fill_sprom(struct ssb_sprom
|
||||
void bcm47xx_fill_ssb_boardinfo(struct ssb_boardinfo *boardinfo,
|
||||
const char *prefix);
|
||||
#endif
|
||||
|
@ -136,6 +130,3 @@ index 8ed77f6..1461c10 100644
|
|||
|
||||
void bcm47xx_set_system_type(u16 chip_id);
|
||||
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -25,8 +25,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
arch/mips/mm/tlb-r4k.c | 2 +-
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/prom.c b/arch/mips/bcm47xx/prom.c
|
||||
index ab698ba..135a540 100644
|
||||
--- a/arch/mips/bcm47xx/prom.c
|
||||
+++ b/arch/mips/bcm47xx/prom.c
|
||||
@@ -126,7 +126,7 @@ void __init prom_free_prom_memory(void)
|
||||
|
@ -38,8 +36,6 @@ index ab698ba..135a540 100644
|
|||
{
|
||||
write_c0_pagemask(PM_DEFAULT_MASK);
|
||||
write_c0_wired(0);
|
||||
diff --git a/arch/mips/include/asm/pgtable-32.h b/arch/mips/include/asm/pgtable-32.h
|
||||
index 7d56686..832e216 100644
|
||||
--- a/arch/mips/include/asm/pgtable-32.h
|
||||
+++ b/arch/mips/include/asm/pgtable-32.h
|
||||
@@ -18,7 +18,7 @@
|
||||
|
@ -51,11 +47,9 @@ index 7d56686..832e216 100644
|
|||
|
||||
/*
|
||||
* - add_temporary_entry() add a temporary TLB entry. We use TLB entries
|
||||
diff --git a/arch/mips/mm/tlb-r4k.c b/arch/mips/mm/tlb-r4k.c
|
||||
index 08318ec..5037d58 100644
|
||||
--- a/arch/mips/mm/tlb-r4k.c
|
||||
+++ b/arch/mips/mm/tlb-r4k.c
|
||||
@@ -411,7 +411,7 @@ int __init has_transparent_hugepage(void)
|
||||
@@ -411,7 +411,7 @@ int __init has_transparent_hugepage(void
|
||||
* lifetime of the system
|
||||
*/
|
||||
|
||||
|
@ -64,6 +58,3 @@ index 08318ec..5037d58 100644
|
|||
|
||||
__init int add_temporary_entry(unsigned long entrylo0, unsigned long entrylo1,
|
||||
unsigned long entryhi, unsigned long pagemask)
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -20,11 +20,9 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | 2 ++
|
||||
4 files changed, 28 insertions(+)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c
|
||||
index bd56415..a88975a 100644
|
||||
--- a/arch/mips/bcm47xx/board.c
|
||||
+++ b/arch/mips/bcm47xx/board.c
|
||||
@@ -149,6 +149,7 @@ struct bcm47xx_board_type_list2 bcm47xx_board_list_boot_hw[] __initconst = {
|
||||
@@ -149,6 +149,7 @@ struct bcm47xx_board_type_list2 bcm47xx_
|
||||
/* board_id */
|
||||
static const
|
||||
struct bcm47xx_board_type_list1 bcm47xx_board_list_board_id[] __initconst = {
|
||||
|
@ -32,11 +30,9 @@ index bd56415..a88975a 100644
|
|||
{{BCM47XX_BOARD_NETGEAR_WGR614V8, "Netgear WGR614 V8"}, "U12H072T00_NETGEAR"},
|
||||
{{BCM47XX_BOARD_NETGEAR_WGR614V9, "Netgear WGR614 V9"}, "U12H094T00_NETGEAR"},
|
||||
{{BCM47XX_BOARD_NETGEAR_WGR614_V10, "Netgear WGR614 V10"}, "U12H139T01_NETGEAR"},
|
||||
diff --git a/arch/mips/bcm47xx/buttons.c b/arch/mips/bcm47xx/buttons.c
|
||||
index 276276a..08a4abf 100644
|
||||
--- a/arch/mips/bcm47xx/buttons.c
|
||||
+++ b/arch/mips/bcm47xx/buttons.c
|
||||
@@ -299,6 +299,13 @@ bcm47xx_buttons_linksys_wrtsl54gs[] __initconst = {
|
||||
@@ -299,6 +299,13 @@ bcm47xx_buttons_linksys_wrtsl54gs[] __in
|
||||
BCM47XX_GPIO_KEY(6, KEY_RESTART),
|
||||
};
|
||||
|
||||
|
@ -50,7 +46,7 @@ index 276276a..08a4abf 100644
|
|||
/* Microsoft */
|
||||
|
||||
static const struct gpio_keys_button
|
||||
@@ -555,6 +562,10 @@ int __init bcm47xx_buttons_register(void)
|
||||
@@ -555,6 +562,10 @@ int __init bcm47xx_buttons_register(void
|
||||
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrtsl54gs);
|
||||
break;
|
||||
|
||||
|
@ -61,11 +57,9 @@ index 276276a..08a4abf 100644
|
|||
case BCM47XX_BOARD_MICROSOFT_MN700:
|
||||
err = bcm47xx_copy_bdata(bcm47xx_buttons_microsoft_nm700);
|
||||
break;
|
||||
diff --git a/arch/mips/bcm47xx/leds.c b/arch/mips/bcm47xx/leds.c
|
||||
index 0e4ade3..d20ae63 100644
|
||||
--- a/arch/mips/bcm47xx/leds.c
|
||||
+++ b/arch/mips/bcm47xx/leds.c
|
||||
@@ -370,6 +370,16 @@ bcm47xx_leds_linksys_wrtsl54gs[] __initconst = {
|
||||
@@ -370,6 +370,16 @@ bcm47xx_leds_linksys_wrtsl54gs[] __initc
|
||||
BCM47XX_GPIO_LED(7, "orange", "wps", 1, LEDS_GPIO_DEFSTATE_OFF),
|
||||
};
|
||||
|
||||
|
@ -93,8 +87,6 @@ index 0e4ade3..d20ae63 100644
|
|||
case BCM47XX_BOARD_MICROSOFT_MN700:
|
||||
bcm47xx_set_pdata(bcm47xx_leds_microsoft_nm700);
|
||||
break;
|
||||
diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
|
||||
index c41d1dc..2afb840 100644
|
||||
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
|
||||
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
|
||||
@@ -80,6 +80,8 @@ enum bcm47xx_board {
|
||||
|
@ -106,6 +98,3 @@ index c41d1dc..2afb840 100644
|
|||
BCM47XX_BOARD_MICROSOFT_MN700,
|
||||
|
||||
BCM47XX_BOARD_MOTOROLA_WE800G,
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -22,11 +22,9 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
include/linux/bcm47xx_nvram.h | 15 +++++++++++
|
||||
2 files changed, 60 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
|
||||
index 95d028c..2ed762e 100644
|
||||
--- a/arch/mips/bcm47xx/nvram.c
|
||||
+++ b/arch/mips/bcm47xx/nvram.c
|
||||
@@ -94,17 +94,22 @@ static int nvram_find_and_copy(void __iomem *iobase, u32 lim)
|
||||
@@ -94,17 +94,22 @@ static int nvram_find_and_copy(void __io
|
||||
return -ENXIO;
|
||||
|
||||
found:
|
||||
|
@ -94,7 +92,7 @@ index 95d028c..2ed762e 100644
|
|||
return 0;
|
||||
}
|
||||
#endif
|
||||
@@ -219,3 +226,26 @@ int bcm47xx_nvram_gpio_pin(const char *name)
|
||||
@@ -219,3 +226,26 @@ int bcm47xx_nvram_gpio_pin(const char *n
|
||||
return -ENOENT;
|
||||
}
|
||||
EXPORT_SYMBOL(bcm47xx_nvram_gpio_pin);
|
||||
|
@ -121,8 +119,6 @@ index 95d028c..2ed762e 100644
|
|||
+ return nvram;
|
||||
+}
|
||||
+EXPORT_SYMBOL(bcm47xx_nvram_get_contents);
|
||||
diff --git a/include/linux/bcm47xx_nvram.h b/include/linux/bcm47xx_nvram.h
|
||||
index b12b07e..c73927c 100644
|
||||
--- a/include/linux/bcm47xx_nvram.h
|
||||
+++ b/include/linux/bcm47xx_nvram.h
|
||||
@@ -10,11 +10,17 @@
|
||||
|
@ -143,7 +139,7 @@ index b12b07e..c73927c 100644
|
|||
#else
|
||||
static inline int bcm47xx_nvram_init_from_mem(u32 base, u32 lim)
|
||||
{
|
||||
@@ -29,6 +35,15 @@ static inline int bcm47xx_nvram_gpio_pin(const char *name)
|
||||
@@ -29,6 +35,15 @@ static inline int bcm47xx_nvram_gpio_pin
|
||||
{
|
||||
return -ENOTSUPP;
|
||||
};
|
||||
|
@ -159,6 +155,3 @@ index b12b07e..c73927c 100644
|
|||
#endif
|
||||
|
||||
#endif /* __BCM47XX_NVRAM_H */
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -24,8 +24,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
arch/mips/bcm47xx/nvram.c | 37 ++++++++++++++++---------------------
|
||||
1 file changed, 16 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
|
||||
index 2ed762e..9ccdce8 100644
|
||||
--- a/arch/mips/bcm47xx/nvram.c
|
||||
+++ b/arch/mips/bcm47xx/nvram.c
|
||||
@@ -35,6 +35,7 @@ struct nvram_header {
|
||||
|
@ -36,7 +34,7 @@ index 2ed762e..9ccdce8 100644
|
|||
static const u32 nvram_sizes[] = {0x8000, 0xF000, 0x10000};
|
||||
|
||||
static u32 find_nvram_size(void __iomem *end)
|
||||
@@ -60,7 +61,7 @@ static int nvram_find_and_copy(void __iomem *iobase, u32 lim)
|
||||
@@ -60,7 +61,7 @@ static int nvram_find_and_copy(void __io
|
||||
u32 *src, *dst;
|
||||
u32 size;
|
||||
|
||||
|
@ -103,7 +101,7 @@ index 2ed762e..9ccdce8 100644
|
|||
}
|
||||
#endif
|
||||
|
||||
@@ -183,7 +180,7 @@ int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len)
|
||||
@@ -183,7 +180,7 @@ int bcm47xx_nvram_getenv(const char *nam
|
||||
if (!name)
|
||||
return -EINVAL;
|
||||
|
||||
|
@ -112,7 +110,7 @@ index 2ed762e..9ccdce8 100644
|
|||
err = nvram_init();
|
||||
if (err)
|
||||
return err;
|
||||
@@ -231,16 +228,14 @@ char *bcm47xx_nvram_get_contents(size_t *nvram_size)
|
||||
@@ -231,16 +228,14 @@ char *bcm47xx_nvram_get_contents(size_t
|
||||
{
|
||||
int err;
|
||||
char *nvram;
|
||||
|
@ -131,6 +129,3 @@ index 2ed762e..9ccdce8 100644
|
|||
nvram = vmalloc(*nvram_size);
|
||||
if (!nvram)
|
||||
return NULL;
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -18,8 +18,6 @@ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
|
|||
arch/mips/bcm47xx/Kconfig | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/arch/mips/bcm47xx/Kconfig b/arch/mips/bcm47xx/Kconfig
|
||||
index fc21d36..51ed599 100644
|
||||
--- a/arch/mips/bcm47xx/Kconfig
|
||||
+++ b/arch/mips/bcm47xx/Kconfig
|
||||
@@ -25,7 +25,6 @@ config BCM47XX_BCMA
|
||||
|
@ -30,6 +28,3 @@ index fc21d36..51ed599 100644
|
|||
select BCMA_DRIVER_PCI_HOSTMODE if PCI
|
||||
select BCMA_DRIVER_GPIO
|
||||
default y
|
||||
--
|
||||
1.8.4.5
|
||||
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -1928,6 +1928,53 @@
|
||||
|
||||
.spis = DGND3700v1_3800B_spi_devices,
|
||||
@@ -1930,6 +1930,53 @@ static struct board_info __initdata boar
|
||||
.num_spis = ARRAY_SIZE(DGND3700v1_3800B_spi_devices),
|
||||
+};
|
||||
+
|
||||
};
|
||||
|
||||
+static struct board_info __initdata board_HG655b = {
|
||||
+ .name = "HW65x",
|
||||
+ .expected_cpu_id = 0x6368,
|
||||
|
@ -51,10 +49,12 @@
|
|||
+ },
|
||||
+ },
|
||||
+ },
|
||||
};
|
||||
|
||||
+};
|
||||
+
|
||||
static struct sprom_fixup __initdata vr3025u_fixups[] = {
|
||||
@@ -2380,6 +2427,7 @@
|
||||
{ .offset = 97, .value = 0xfeb3 },
|
||||
{ .offset = 98, .value = 0x1618 },
|
||||
@@ -2380,6 +2427,7 @@ static const struct board_info __initcon
|
||||
&board_96368mvwg,
|
||||
&board_96368mvngr,
|
||||
&board_DGND3700v1_3800B,
|
||||
|
@ -62,7 +62,7 @@
|
|||
&board_P870HW51A_V2,
|
||||
&board_VR3025u,
|
||||
&board_VR3025un,
|
||||
@@ -2483,6 +2531,7 @@
|
||||
@@ -2483,6 +2531,7 @@ static struct of_device_id const bcm963x
|
||||
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
|
||||
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
|
||||
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
|
||||
|
|
|
@ -45,53 +45,53 @@ Miklos
|
|||
--- a/fs/overlayfs/copy_up.c
|
||||
+++ b/fs/overlayfs/copy_up.c
|
||||
@@ -300,6 +300,9 @@ int ovl_copy_up_one(struct dentry *paren
|
||||
struct cred *override_cred;
|
||||
char *link = NULL;
|
||||
struct cred *override_cred;
|
||||
char *link = NULL;
|
||||
|
||||
+ if (WARN_ON(!workdir))
|
||||
+ return -EROFS;
|
||||
+
|
||||
ovl_path_upper(parent, &parentpath);
|
||||
upperdir = parentpath.dentry;
|
||||
ovl_path_upper(parent, &parentpath);
|
||||
upperdir = parentpath.dentry;
|
||||
|
||||
--- a/fs/overlayfs/dir.c
|
||||
+++ b/fs/overlayfs/dir.c
|
||||
@@ -222,6 +222,9 @@ static struct dentry *ovl_clear_empty(st
|
||||
struct kstat stat;
|
||||
int err;
|
||||
struct kstat stat;
|
||||
int err;
|
||||
|
||||
+ if (WARN_ON(!workdir))
|
||||
+ return ERR_PTR(-EROFS);
|
||||
+
|
||||
err = ovl_lock_rename_workdir(workdir, upperdir);
|
||||
if (err)
|
||||
goto out;
|
||||
err = ovl_lock_rename_workdir(workdir, upperdir);
|
||||
if (err)
|
||||
goto out;
|
||||
@@ -322,6 +325,9 @@ static int ovl_create_over_whiteout(stru
|
||||
struct dentry *newdentry;
|
||||
int err;
|
||||
struct dentry *newdentry;
|
||||
int err;
|
||||
|
||||
+ if (WARN_ON(!workdir))
|
||||
+ return -EROFS;
|
||||
+
|
||||
err = ovl_lock_rename_workdir(workdir, upperdir);
|
||||
if (err)
|
||||
goto out;
|
||||
err = ovl_lock_rename_workdir(workdir, upperdir);
|
||||
if (err)
|
||||
goto out;
|
||||
@@ -506,6 +512,9 @@ static int ovl_remove_and_whiteout(struc
|
||||
struct dentry *opaquedir = NULL;
|
||||
int err;
|
||||
struct dentry *opaquedir = NULL;
|
||||
int err;
|
||||
|
||||
+ if (WARN_ON(!workdir))
|
||||
+ return -EROFS;
|
||||
+
|
||||
if (is_dir) {
|
||||
opaquedir = ovl_check_empty_and_clear(dentry);
|
||||
err = PTR_ERR(opaquedir);
|
||||
if (is_dir) {
|
||||
opaquedir = ovl_check_empty_and_clear(dentry);
|
||||
err = PTR_ERR(opaquedir);
|
||||
--- a/fs/overlayfs/super.c
|
||||
+++ b/fs/overlayfs/super.c
|
||||
@@ -740,9 +740,15 @@ static int ovl_fill_super(struct super_b
|
||||
ufs->workdir = ovl_workdir_create(ufs->upper_mnt, workpath.dentry);
|
||||
err = PTR_ERR(ufs->workdir);
|
||||
if (IS_ERR(ufs->workdir)) {
|
||||
ufs->workdir = ovl_workdir_create(ufs->upper_mnt, workpath.dentry);
|
||||
err = PTR_ERR(ufs->workdir);
|
||||
if (IS_ERR(ufs->workdir)) {
|
||||
- pr_err("overlayfs: failed to create directory %s/%s\n",
|
||||
- ufs->config.workdir, OVL_WORKDIR_NAME);
|
||||
- goto out_put_lower_mnt;
|
||||
|
@ -104,6 +104,6 @@ Miklos
|
|||
+ ufs->config.workdir, OVL_WORKDIR_NAME);
|
||||
+ goto out_put_lower_mnt;
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
/*
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
{USB_DEVICE(0x0af0, 0xd155)},
|
||||
--- a/drivers/usb/storage/unusual_devs.h
|
||||
+++ b/drivers/usb/storage/unusual_devs.h
|
||||
@@ -1323,6 +1323,12 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
|
||||
@@ -1330,6 +1330,12 @@ UNUSUAL_DEV( 0x0af0, 0x8304, 0x0000, 0x0
|
||||
USB_SC_DEVICE, USB_PR_DEVICE, NULL,
|
||||
0 ),
|
||||
|
||||
|
|
|
@ -138,7 +138,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||
|
||||
/*
|
||||
* Define if arch has non-standard setup. This is a _PCI_ standard
|
||||
@@ -862,6 +865,12 @@ struct ata_port {
|
||||
@@ -871,6 +874,12 @@ struct ata_port {
|
||||
#ifdef CONFIG_ATA_ACPI
|
||||
struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */
|
||||
#endif
|
||||
|
|
|
@ -15,9 +15,6 @@ Signed-off-by: Lee Jones <lee.jones@linaro.org>
|
|||
create mode 100644 Documentation/devicetree/bindings/mfd/qcom-rpm.txt
|
||||
create mode 100644 include/dt-bindings/mfd/qcom-rpm.h
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
|
||||
new file mode 100644
|
||||
index 0000000..85e3198
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
|
||||
@@ -0,0 +1,70 @@
|
||||
|
@ -91,9 +88,6 @@ index 0000000..85e3198
|
|||
+ #size-cells = <0>;
|
||||
+ };
|
||||
+
|
||||
diff --git a/include/dt-bindings/mfd/qcom-rpm.h b/include/dt-bindings/mfd/qcom-rpm.h
|
||||
new file mode 100644
|
||||
index 0000000..388a6f3
|
||||
--- /dev/null
|
||||
+++ b/include/dt-bindings/mfd/qcom-rpm.h
|
||||
@@ -0,0 +1,154 @@
|
||||
|
@ -251,6 +245,3 @@ index 0000000..388a6f3
|
|||
+#define QCOM_RPM_FORCE_MODE_BYPASS 4
|
||||
+
|
||||
+#endif
|
||||
--
|
||||
2.1.4
|
||||
|
||||
|
|
|
@ -193,7 +193,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
if (ltq_pci_plat_arch_init)
|
||||
return ltq_pci_plat_arch_init(dev);
|
||||
|
||||
@@ -25,5 +31,10 @@
|
||||
@@ -25,5 +31,10 @@ int pcibios_plat_dev_init(struct pci_dev
|
||||
|
||||
int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
|
||||
{
|
||||
|
|
|
@ -140,9 +140,9 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
-int gpiod_export(struct gpio_desc *desc, bool direction_may_change)
|
||||
+int __gpiod_export(struct gpio_desc *desc, bool direction_may_change, const char *name)
|
||||
{
|
||||
struct gpio_chip *chip;
|
||||
unsigned long flags;
|
||||
int status;
|
||||
@@ -557,6 +557,8 @@ int gpiod_export(struct gpio_desc *desc,
|
||||
@@ -566,6 +566,8 @@ int gpiod_export(struct gpio_desc *desc,
|
||||
offset = gpio_chip_hwgpio(desc);
|
||||
if (desc->chip->names && desc->chip->names[offset])
|
||||
ioname = desc->chip->names[offset];
|
||||
|
@ -151,7 +151,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
|
||||
dev = device_create_with_groups(&gpio_class, desc->chip->dev,
|
||||
MKDEV(0, 0), desc, gpio_groups,
|
||||
@@ -593,6 +595,12 @@ fail_unlock:
|
||||
@@ -602,6 +604,12 @@ fail_unlock:
|
||||
gpiod_dbg(desc, "%s: status %d\n", __func__, status);
|
||||
return status;
|
||||
}
|
||||
|
|
|
@ -10,8 +10,6 @@ Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
|
|||
Acked-by: John Crispin <blogic@openwrt.org>
|
||||
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
|
||||
diff --git a/drivers/gpio/gpio-stp-xway.c b/drivers/gpio/gpio-stp-xway.c
|
||||
index 202361e..6d4148f 100644
|
||||
--- a/drivers/gpio/gpio-stp-xway.c
|
||||
+++ b/drivers/gpio/gpio-stp-xway.c
|
||||
@@ -58,7 +58,7 @@
|
||||
|
|
|
@ -9,16 +9,16 @@
|
|||
#include "ifxmips_pcie.h"
|
||||
#include "ifxmips_pcie_reg.h"
|
||||
|
||||
@@ -1048,7 +1050,7 @@ pcie_rc_initialize(int pcie_port)
|
||||
extern int (*ltq_pci_plat_arch_init)(struct pci_dev *dev);
|
||||
extern int (*ltq_pci_map_irq)(const struct pci_dev *dev, u8 slot, u8 pin);
|
||||
@@ -1045,7 +1047,7 @@ pcie_rc_initialize(int pcie_port)
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static int __init ifx_pcie_bios_init(void)
|
||||
+static int __init ifx_pcie_bios_probe(struct platform_device *pdev)
|
||||
{
|
||||
void __iomem *io_map_base;
|
||||
int pcie_port;
|
||||
@@ -1090,6 +1092,30 @@ static int __init ifx_pcie_bios_init(voi
|
||||
@@ -1083,6 +1085,30 @@ static int __init ifx_pcie_bios_init(voi
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -81,7 +81,7 @@ Signed-off-by: Jason Cooper <jason@lakedaemon.net>
|
|||
marvell,function = "gpio";
|
||||
--- a/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts
|
||||
+++ b/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts
|
||||
@@ -77,7 +77,7 @@
|
||||
@@ -81,7 +81,7 @@
|
||||
serial@12100 {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -231,7 +231,7 @@ Signed-off-by: Jason Cooper <jason@lakedaemon.net>
|
|||
+};
|
||||
--- a/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts
|
||||
+++ b/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts
|
||||
@@ -77,12 +77,7 @@
|
||||
@@ -81,12 +81,7 @@
|
||||
serial@12100 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -245,7 +245,7 @@ Signed-off-by: Jason Cooper <jason@lakedaemon.net>
|
|||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
@@ -187,3 +182,10 @@
|
||||
@@ -191,3 +186,10 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,48 +0,0 @@
|
|||
This patch is a partial backport of commit ef01c6c36bb8 ("ARM: mvebu:
|
||||
remove Armada 375 Z1 workaround for I/O coherency"). This commit was
|
||||
merged in v3.19, so kernel versions later than v3.19 are not affected
|
||||
by the problem that this commit fixes.
|
||||
|
||||
It does not make a lot of sense to backport this commit entirely,
|
||||
since it is mainly removing some no longer useful code. However, this
|
||||
commit is also making sure that the bus_register_notifier that
|
||||
register the custom DMA operations that should be used for HW I/O
|
||||
coherency does not get registered when said HW I/O coherency is not
|
||||
enabled.
|
||||
|
||||
This is particularly critical since we have decided to disable HW I/O
|
||||
coherency completely in all kernels < 4.0, to be on the safe side,
|
||||
while experimenting a new implementation of the HW I/O coherency in >=
|
||||
4.0.
|
||||
|
||||
Without this commit, kernels earlier than 3.18 have the custom DMA
|
||||
operations normally used for HW I/O coherency registered (they don't
|
||||
do cache maintenance operations), while HW I/O coherency is
|
||||
disabled. It essentially causes every DMA transfer to transfer
|
||||
garbage.
|
||||
|
||||
The issue fixed by this commit was introduced by 5ab5afd8ba83 ("ARM:
|
||||
mvebu: implement Armada 375 coherency workaround"), but it was not
|
||||
visible until now since it didn't cause any problem when HW I/O
|
||||
coherency is enabled.
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
Cc: <stable@vger.kernel.org> v3.16..v3.18
|
||||
---
|
||||
arch/arm/mach-mvebu/coherency.c | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/arch/arm/mach-mvebu/coherency.c
|
||||
+++ b/arch/arm/mach-mvebu/coherency.c
|
||||
@@ -391,8 +391,9 @@ static int __init coherency_late_init(vo
|
||||
armada_375_coherency_init_wa();
|
||||
}
|
||||
|
||||
- bus_register_notifier(&platform_bus_type,
|
||||
- &mvebu_hwcc_nb);
|
||||
+ if (coherency_available())
|
||||
+ bus_register_notifier(&platform_bus_type,
|
||||
+ &mvebu_hwcc_nb);
|
||||
|
||||
return 0;
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/arm/boot/dts/imx23-olinuxino.dts
|
||||
+++ b/arch/arm/boot/dts/imx23-olinuxino.dts
|
||||
@@ -88,6 +88,25 @@
|
||||
@@ -89,6 +89,25 @@
|
||||
usbphy0: usbphy@8007c000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -26,8 +26,8 @@
|
|||
};
|
||||
};
|
||||
|
||||
@@ -125,4 +144,10 @@
|
||||
gpios = <&gpio2 1 1>;
|
||||
@@ -127,4 +146,10 @@
|
||||
gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
+
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
status = "disabled";
|
||||
--- a/arch/arm/boot/dts/imx23-olinuxino.dts
|
||||
+++ b/arch/arm/boot/dts/imx23-olinuxino.dts
|
||||
@@ -73,6 +73,12 @@
|
||||
@@ -74,6 +74,12 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -68,7 +68,7 @@
|
|||
duart: serial@80070000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&duart_pins_a>;
|
||||
@@ -88,7 +94,7 @@
|
||||
@@ -89,7 +95,7 @@
|
||||
usbphy0: usbphy@8007c000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
--- a/include/linux/libata.h
|
||||
+++ b/include/linux/libata.h
|
||||
@@ -891,6 +891,8 @@ struct ata_port_operations {
|
||||
@@ -900,6 +900,8 @@ struct ata_port_operations {
|
||||
void (*qc_prep)(struct ata_queued_cmd *qc);
|
||||
unsigned int (*qc_issue)(struct ata_queued_cmd *qc);
|
||||
bool (*qc_fill_rtf)(struct ata_queued_cmd *qc);
|
||||
|
@ -45,7 +45,7 @@
|
|||
|
||||
/*
|
||||
* Configuration and exception handling
|
||||
@@ -981,6 +983,9 @@ struct ata_port_operations {
|
||||
@@ -990,6 +992,9 @@ struct ata_port_operations {
|
||||
void (*phy_reset)(struct ata_port *ap);
|
||||
void (*eng_timeout)(struct ata_port *ap);
|
||||
|
||||
|
|
|
@ -140,9 +140,9 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
-int gpiod_export(struct gpio_desc *desc, bool direction_may_change)
|
||||
+int __gpiod_export(struct gpio_desc *desc, bool direction_may_change, const char *name)
|
||||
{
|
||||
struct gpio_chip *chip;
|
||||
unsigned long flags;
|
||||
int status;
|
||||
@@ -557,6 +557,8 @@ int gpiod_export(struct gpio_desc *desc,
|
||||
@@ -566,6 +566,8 @@ int gpiod_export(struct gpio_desc *desc,
|
||||
offset = gpio_chip_hwgpio(desc);
|
||||
if (desc->chip->names && desc->chip->names[offset])
|
||||
ioname = desc->chip->names[offset];
|
||||
|
@ -151,7 +151,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
|
||||
dev = device_create_with_groups(&gpio_class, desc->chip->dev,
|
||||
MKDEV(0, 0), desc, gpio_groups,
|
||||
@@ -593,6 +595,12 @@ fail_unlock:
|
||||
@@ -602,6 +604,12 @@ fail_unlock:
|
||||
gpiod_dbg(desc, "%s: status %d\n", __func__, status);
|
||||
return status;
|
||||
}
|
||||
|
|
|
@ -5089,7 +5089,7 @@
|
|||
|
||||
return 1;
|
||||
}
|
||||
@@ -2805,6 +2809,7 @@ static int prepare_ring(struct xhci_hcd
|
||||
@@ -2810,6 +2814,7 @@ static int prepare_ring(struct xhci_hcd
|
||||
next = ring->enqueue;
|
||||
|
||||
while (last_trb(xhci, ring, ring->enq_seg, next)) {
|
||||
|
@ -5097,7 +5097,7 @@
|
|||
/* If we're not dealing with 0.95 hardware or isoc rings
|
||||
* on AMD 0.96 host, clear the chain bit.
|
||||
*/
|
||||
@@ -2814,6 +2819,9 @@ static int prepare_ring(struct xhci_hcd
|
||||
@@ -2819,6 +2824,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);
|
||||
|
@ -5107,7 +5107,7 @@
|
|||
|
||||
wmb();
|
||||
next->link.control ^= cpu_to_le32(TRB_CYCLE);
|
||||
@@ -2944,6 +2952,9 @@ static void giveback_first_trb(struct xh
|
||||
@@ -2949,6 +2957,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);
|
||||
|
@ -5117,7 +5117,7 @@
|
|||
xhci_ring_ep_doorbell(xhci, slot_id, ep_index, stream_id);
|
||||
}
|
||||
|
||||
@@ -2999,6 +3010,29 @@ static u32 xhci_td_remainder(unsigned in
|
||||
@@ -3004,6 +3015,29 @@ static u32 xhci_td_remainder(unsigned in
|
||||
return (remainder >> 10) << 17;
|
||||
}
|
||||
|
||||
|
@ -5147,7 +5147,7 @@
|
|||
/*
|
||||
* For xHCI 1.0 host controllers, TD size is the number of max packet sized
|
||||
* packets remaining in the TD (*not* including this TRB).
|
||||
@@ -3136,6 +3170,7 @@ static int queue_bulk_sg_tx(struct xhci_
|
||||
@@ -3141,6 +3175,7 @@ static int queue_bulk_sg_tx(struct xhci_
|
||||
}
|
||||
|
||||
/* Set the TRB length, TD size, and interrupter fields. */
|
||||
|
@ -5155,7 +5155,7 @@
|
|||
if (xhci->hci_version < 0x100) {
|
||||
remainder = xhci_td_remainder(
|
||||
urb->transfer_buffer_length -
|
||||
@@ -3145,6 +3180,12 @@ static int queue_bulk_sg_tx(struct xhci_
|
||||
@@ -3150,6 +3185,12 @@ static int queue_bulk_sg_tx(struct xhci_
|
||||
trb_buff_len, total_packet_count, urb,
|
||||
num_trbs - 1);
|
||||
}
|
||||
|
@ -5168,7 +5168,7 @@
|
|||
length_field = TRB_LEN(trb_buff_len) |
|
||||
remainder |
|
||||
TRB_INTR_TARGET(0);
|
||||
@@ -3207,6 +3248,9 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
|
||||
@@ -3212,6 +3253,9 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
|
||||
int running_total, trb_buff_len, ret;
|
||||
unsigned int total_packet_count;
|
||||
u64 addr;
|
||||
|
@ -5178,7 +5178,7 @@
|
|||
|
||||
if (urb->num_sgs)
|
||||
return queue_bulk_sg_tx(xhci, mem_flags, urb, slot_id, ep_index);
|
||||
@@ -3232,6 +3276,25 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
|
||||
@@ -3237,6 +3281,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 */
|
||||
|
@ -5204,7 +5204,7 @@
|
|||
|
||||
ret = prepare_transfer(xhci, xhci->devs[slot_id],
|
||||
ep_index, urb->stream_id,
|
||||
@@ -3291,6 +3354,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
|
||||
@@ -3296,6 +3359,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
|
||||
field |= TRB_ISP;
|
||||
|
||||
/* Set the TRB length, TD size, and interrupter fields. */
|
||||
|
@ -5212,7 +5212,7 @@
|
|||
if (xhci->hci_version < 0x100) {
|
||||
remainder = xhci_td_remainder(
|
||||
urb->transfer_buffer_length -
|
||||
@@ -3300,6 +3364,10 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
|
||||
@@ -3305,6 +3369,10 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
|
||||
trb_buff_len, total_packet_count, urb,
|
||||
num_trbs - 1);
|
||||
}
|
||||
|
@ -5223,7 +5223,7 @@
|
|||
length_field = TRB_LEN(trb_buff_len) |
|
||||
remainder |
|
||||
TRB_INTR_TARGET(0);
|
||||
@@ -3389,7 +3457,11 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
@@ -3394,7 +3462,11 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
field |= 0x1;
|
||||
|
||||
/* xHCI 1.0 6.4.1.2.1: Transfer Type field */
|
||||
|
@ -5235,7 +5235,7 @@
|
|||
if (urb->transfer_buffer_length > 0) {
|
||||
if (setup->bRequestType & USB_DIR_IN)
|
||||
field |= TRB_TX_TYPE(TRB_DATA_IN);
|
||||
@@ -3413,7 +3485,12 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
@@ -3418,7 +3490,12 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
|
||||
field = TRB_TYPE(TRB_DATA);
|
||||
|
||||
length_field = TRB_LEN(urb->transfer_buffer_length) |
|
||||
|
@ -5248,7 +5248,7 @@
|
|||
TRB_INTR_TARGET(0);
|
||||
if (urb->transfer_buffer_length > 0) {
|
||||
if (setup->bRequestType & USB_DIR_IN)
|
||||
@@ -3536,6 +3613,9 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
@@ -3541,6 +3618,9 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
u64 start_addr, addr;
|
||||
int i, j;
|
||||
bool more_trbs_coming;
|
||||
|
@ -5258,7 +5258,7 @@
|
|||
|
||||
ep_ring = xhci->devs[slot_id]->eps[ep_index].ring;
|
||||
|
||||
@@ -3549,6 +3629,21 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
@@ -3554,6 +3634,21 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
start_trb = &ep_ring->enqueue->generic;
|
||||
start_cycle = ep_ring->cycle_state;
|
||||
|
||||
|
@ -5280,7 +5280,7 @@
|
|||
urb_priv = urb->hcpriv;
|
||||
/* Queue the first TRB, even if it's zero-length */
|
||||
for (i = 0; i < num_tds; i++) {
|
||||
@@ -3620,9 +3715,13 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
@@ -3625,9 +3720,13 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
} else {
|
||||
td->last_trb = ep_ring->enqueue;
|
||||
field |= TRB_IOC;
|
||||
|
@ -5294,7 +5294,7 @@
|
|||
/* Set BEI bit except for the last td */
|
||||
if (i < num_tds - 1)
|
||||
field |= TRB_BEI;
|
||||
@@ -3637,6 +3736,7 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
@@ -3642,6 +3741,7 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
trb_buff_len = td_remain_len;
|
||||
|
||||
/* Set the TRB length, TD size, & interrupter fields. */
|
||||
|
@ -5302,7 +5302,7 @@
|
|||
if (xhci->hci_version < 0x100) {
|
||||
remainder = xhci_td_remainder(
|
||||
td_len - running_total);
|
||||
@@ -3646,6 +3746,10 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
@@ -3651,6 +3751,10 @@ static int xhci_queue_isoc_tx(struct xhc
|
||||
total_packet_count, urb,
|
||||
(trbs_per_td - j - 1));
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ralink/Kconfig
|
||||
+++ b/arch/mips/ralink/Kconfig
|
||||
@@ -13,9 +13,9 @@
|
||||
@@ -13,9 +13,9 @@ config CLKEVT_RT3352
|
||||
select CEVT_SYSTICK_QUIRK
|
||||
|
||||
config RALINK_ILL_ACC
|
||||
|
|
Loading…
Reference in a new issue