CC: kernel: update kernel 3.18 to version 3.18.36
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>master
parent
067545b374
commit
e7d2443743
|
@ -2,9 +2,9 @@
|
|||
|
||||
LINUX_RELEASE?=1
|
||||
|
||||
LINUX_VERSION-3.18 = .29
|
||||
LINUX_VERSION-3.18 = .36
|
||||
|
||||
LINUX_KERNEL_MD5SUM-3.18.29 = b25737a0bc98e80d12200de93f239c28
|
||||
LINUX_KERNEL_MD5SUM-3.18.36 = 31b1699c1285aeeb81fb25750baa50d9
|
||||
|
||||
ifdef KERNEL_PATCHVER
|
||||
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
|
||||
|
|
|
@ -1,49 +0,0 @@
|
|||
From f1ba020af5076172c9d29006a747ccf40027fedc Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <f1ba020af5076172c9d29006a747ccf40027fedc.1458840219.git.mschiffer@universe-factory.net>
|
||||
From: Matthias Schiffer <mschiffer@universe-factory.net>
|
||||
Date: Thu, 24 Mar 2016 15:34:05 +0100
|
||||
Subject: [PATCH] MIPS: ath79: make bootconsole wait for both THRE and TEMT
|
||||
|
||||
This makes the ath79 bootconsole behave the same way as the generic 8250
|
||||
bootconsole.
|
||||
|
||||
Also waiting for TEMT (transmit buffer is empty) instead of just THRE
|
||||
(transmit buffer is not full) ensures that all characters have been
|
||||
transmitted before the real serial driver starts reconfiguring the serial
|
||||
controller (which would sometimes result in garbage being transmitted.)
|
||||
This change does not cause a visible performance loss.
|
||||
|
||||
In addition, this seems to fix a hang observed in certain configurations on
|
||||
many AR7xxx/AR9xxx SoCs during autoconfig of the real serial driver.
|
||||
|
||||
A more complete follow-up patch will disable 8250 autoconfig for ath79
|
||||
altogether (the serial controller is detected as a 16550A, which is not
|
||||
fully compatible with the ath79 serial, and the autoconfig may lead to
|
||||
undefined behavior on ath79.)
|
||||
|
||||
Cc: <stable@vger.kernel.org>
|
||||
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
|
||||
---
|
||||
arch/mips/ath79/early_printk.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/arch/mips/ath79/early_printk.c
|
||||
+++ b/arch/mips/ath79/early_printk.c
|
||||
@@ -31,13 +31,15 @@ static inline void prom_putchar_wait(voi
|
||||
} while (1);
|
||||
}
|
||||
|
||||
+#define BOTH_EMPTY (UART_LSR_TEMT | UART_LSR_THRE)
|
||||
+
|
||||
static void prom_putchar_ar71xx(unsigned char ch)
|
||||
{
|
||||
void __iomem *base = (void __iomem *)(KSEG1ADDR(AR71XX_UART_BASE));
|
||||
|
||||
- prom_putchar_wait(base + UART_LSR * 4, UART_LSR_THRE, UART_LSR_THRE);
|
||||
+ prom_putchar_wait(base + UART_LSR * 4, BOTH_EMPTY, BOTH_EMPTY);
|
||||
__raw_writel(ch, base + UART_TX * 4);
|
||||
- prom_putchar_wait(base + UART_LSR * 4, UART_LSR_THRE, UART_LSR_THRE);
|
||||
+ prom_putchar_wait(base + UART_LSR * 4, BOTH_EMPTY, BOTH_EMPTY);
|
||||
}
|
||||
|
||||
static void prom_putchar_ar933x(unsigned char ch)
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -196,6 +196,17 @@ config ATH79_MACH_F9K1115V2
|
||||
@@ -205,6 +205,17 @@ config ATH79_MACH_F9K1115V2
|
||||
select ATH79_DEV_USB
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
|||
select SOC_QCA955X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -72,6 +72,7 @@ obj-$(CONFIG_ATH79_MACH_EAP300V2) += mac
|
||||
@@ -73,6 +73,7 @@ obj-$(CONFIG_ATH79_MACH_EAP300V2) += mac
|
||||
obj-$(CONFIG_ATH79_MACH_EAP7660D) += mach-eap7660d.o
|
||||
obj-$(CONFIG_ATH79_MACH_EL_M150) += mach-el-m150.o
|
||||
obj-$(CONFIG_ATH79_MACH_EL_MINI) += mach-el-mini.o
|
||||
|
@ -30,7 +30,7 @@
|
|||
obj-$(CONFIG_ATH79_MACH_GL_INET) += mach-gl-inet.o
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -62,6 +62,7 @@ enum ath79_mach_type {
|
||||
@@ -63,6 +63,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_EL_M150, /* EasyLink EL-M150 */
|
||||
ATH79_MACH_EL_MINI, /* EasyLink EL-MINI */
|
||||
ATH79_MACH_ESR1750, /* EnGenius ESR1750 */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -590,6 +590,16 @@ config ATH79_MACH_R6100
|
||||
@@ -599,6 +599,16 @@ config ATH79_MACH_R6100
|
||||
select ATH79_DEV_USB
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
|||
select SOC_AR71XX
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -81,6 +81,7 @@ obj-$(CONFIG_ATH79_MACH_HIWIFI_HC6361) +
|
||||
@@ -82,6 +82,7 @@ obj-$(CONFIG_ATH79_MACH_HIWIFI_HC6361) +
|
||||
obj-$(CONFIG_ATH79_MACH_JA76PF) += mach-ja76pf.o
|
||||
obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o
|
||||
obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o
|
||||
|
@ -29,7 +29,7 @@
|
|||
obj-$(CONFIG_ATH79_MACH_MYNET_N600) += mach-mynet-n600.o
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -121,6 +121,7 @@ enum ath79_mach_type {
|
||||
@@ -122,6 +122,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_TEW_673GRU, /* TRENDnet TEW-673GRU */
|
||||
ATH79_MACH_TEW_712BR, /* TRENDnet TEW-712BR */
|
||||
ATH79_MACH_TEW_732BR, /* TRENDnet TEW-732BR */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -87,6 +87,7 @@ enum ath79_mach_type {
|
||||
@@ -88,6 +88,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_OM2P_LC, /* OpenMesh OM2P-LC */
|
||||
ATH79_MACH_OM2Pv2, /* OpenMesh OM2Pv2 */
|
||||
ATH79_MACH_OM2P, /* OpenMesh OM2P */
|
||||
|
@ -10,7 +10,7 @@
|
|||
ATH79_MACH_PB42, /* Atheros PB42 */
|
||||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -743,6 +743,7 @@ config ATH79_MACH_OM2P
|
||||
@@ -752,6 +752,7 @@ config ATH79_MACH_OM2P
|
||||
config ATH79_MACH_OM5P
|
||||
bool "OpenMesh OM5P board support"
|
||||
select SOC_AR934X
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -760,6 +760,26 @@ config ATH79_MACH_ONION_OMEGA
|
||||
@@ -769,6 +769,26 @@ config ATH79_MACH_ONION_OMEGA
|
||||
select ATH79_DEV_USB
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
|||
select SOC_AR934X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -82,6 +82,8 @@ obj-$(CONFIG_ATH79_MACH_JA76PF) += mach
|
||||
@@ -83,6 +83,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
|
||||
|
@ -40,7 +40,7 @@
|
|||
obj-$(CONFIG_ATH79_MACH_MYNET_N600) += mach-mynet-n600.o
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -71,6 +71,8 @@ enum ath79_mach_type {
|
||||
@@ -72,6 +72,8 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_JA76PF2, /* jjPlus JA76PF2 */
|
||||
ATH79_MACH_JWAP003, /* jjPlus JWAP003 */
|
||||
ATH79_MACH_HORNET_UB, /* ALFA Networks Hornet-UB */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -65,6 +65,7 @@ enum ath79_mach_type {
|
||||
@@ -66,6 +66,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_EPG5000, /* EnGenius EPG5000 */
|
||||
ATH79_MACH_F9K1115V2, /* Belkin AC1750DB */
|
||||
ATH79_MACH_GL_INET, /* GL-CONNECT GL-INET */
|
||||
|
@ -10,7 +10,7 @@
|
|||
ATH79_MACH_JA76PF, /* jjPlus JA76PF */
|
||||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -522,6 +522,16 @@ config ATH79_MACH_EAP300V2
|
||||
@@ -531,6 +531,16 @@ config ATH79_MACH_EAP300V2
|
||||
select ATH79_DEV_M25P80
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
|||
select SOC_AR933X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -76,6 +76,7 @@ obj-$(CONFIG_ATH79_MACH_EPG5000) += mach
|
||||
@@ -77,6 +77,7 @@ obj-$(CONFIG_ATH79_MACH_EPG5000) += mach
|
||||
obj-$(CONFIG_ATH79_MACH_ESR1750) += mach-esr1750.o
|
||||
obj-$(CONFIG_ATH79_MACH_F9K1115V2) += mach-f9k1115v2.o
|
||||
obj-$(CONFIG_ATH79_MACH_GL_INET) += mach-gl-inet.o
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -635,6 +635,16 @@ config ATH79_MACH_RB91X
|
||||
@@ -644,6 +644,16 @@ config ATH79_MACH_RB91X
|
||||
select ATH79_DEV_USB
|
||||
select ATH79_ROUTERBOOT
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
|||
select SOC_AR934X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -104,6 +104,7 @@ obj-$(CONFIG_ATH79_MACH_R6100) += mach-
|
||||
@@ -105,6 +105,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
|
||||
@@ -111,6 +111,7 @@ enum ath79_mach_type {
|
||||
@@ -112,6 +112,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 */
|
||||
|
|
|
@ -263,7 +263,7 @@
|
|||
case IPV6_2292HOPOPTS:
|
||||
--- a/net/ipv6/ip6_gre.c
|
||||
+++ b/net/ipv6/ip6_gre.c
|
||||
@@ -393,7 +393,7 @@ static void ip6gre_err(struct sk_buff *s
|
||||
@@ -394,7 +394,7 @@ static void ip6gre_err(struct sk_buff *s
|
||||
|
||||
t = ip6gre_tunnel_lookup(skb->dev, &ipv6h->daddr, &ipv6h->saddr,
|
||||
flags & GRE_KEY ?
|
||||
|
@ -272,7 +272,7 @@
|
|||
p[1]);
|
||||
if (t == NULL)
|
||||
return;
|
||||
@@ -475,11 +475,11 @@ static int ip6gre_rcv(struct sk_buff *sk
|
||||
@@ -476,11 +476,11 @@ static int ip6gre_rcv(struct sk_buff *sk
|
||||
offset += 4;
|
||||
}
|
||||
if (flags&GRE_KEY) {
|
||||
|
@ -286,7 +286,7 @@
|
|||
offset += 4;
|
||||
}
|
||||
}
|
||||
@@ -744,7 +744,7 @@ static netdev_tx_t ip6gre_xmit2(struct s
|
||||
@@ -745,7 +745,7 @@ static netdev_tx_t ip6gre_xmit2(struct s
|
||||
|
||||
if (tunnel->parms.o_flags&GRE_SEQ) {
|
||||
++tunnel->o_seqno;
|
||||
|
@ -295,7 +295,7 @@
|
|||
ptr--;
|
||||
}
|
||||
if (tunnel->parms.o_flags&GRE_KEY) {
|
||||
@@ -840,7 +840,7 @@ static inline int ip6gre_xmit_ipv6(struc
|
||||
@@ -841,7 +841,7 @@ static inline int ip6gre_xmit_ipv6(struc
|
||||
|
||||
dsfield = ipv6_get_dsfield(ipv6h);
|
||||
if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -178,6 +178,7 @@ enum ath79_mach_type {
|
||||
@@ -179,6 +179,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 */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -21,6 +21,7 @@ enum ath79_mach_type {
|
||||
@@ -22,6 +22,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_ALL0258N, /* Allnet ALL0258N */
|
||||
ATH79_MACH_ALL0305, /* Allnet ALL0305 */
|
||||
ATH79_MACH_ALL0315N, /* Allnet ALL0315N */
|
||||
|
@ -10,7 +10,7 @@
|
|||
ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */
|
||||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -56,6 +56,16 @@ config ATH79_MACH_ALL0315N
|
||||
@@ -65,6 +65,16 @@ config ATH79_MACH_ALL0315N
|
||||
select ATH79_DEV_LEDS_GPIO
|
||||
select ATH79_DEV_M25P80
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
|||
select SOC_AR724X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -42,6 +42,7 @@ obj-$(CONFIG_ATH79_MACH_ALFA_AP96) += ma
|
||||
@@ -43,6 +43,7 @@ obj-$(CONFIG_ATH79_MACH_ALFA_AP96) += ma
|
||||
obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach-alfa-nx.o
|
||||
obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o
|
||||
obj-$(CONFIG_ATH79_MACH_ALL0315N) += mach-all0315n.o
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -66,6 +66,16 @@ config ATH79_MACH_ANTMINER_S1
|
||||
@@ -75,6 +75,16 @@ config ATH79_MACH_ANTMINER_S1
|
||||
select ATH79_DEV_USB
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
|||
select SOC_AR724X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -43,6 +43,7 @@ obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach
|
||||
@@ -44,6 +44,7 @@ obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach
|
||||
obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o
|
||||
obj-$(CONFIG_ATH79_MACH_ALL0315N) += mach-all0315n.o
|
||||
obj-$(CONFIG_ATH79_MACH_ANTMINER_S1)+= mach-antminer-s1.o
|
||||
|
@ -29,7 +29,7 @@
|
|||
obj-$(CONFIG_ATH79_MACH_AP132) += mach-ap132.o
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -22,6 +22,7 @@ enum ath79_mach_type {
|
||||
@@ -23,6 +23,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_ALL0305, /* Allnet ALL0305 */
|
||||
ATH79_MACH_ALL0315N, /* Allnet ALL0315N */
|
||||
ATH79_MACH_ANTMINER_S1, /* Antminer-S1 */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -887,6 +887,16 @@ config ATH79_MACH_EAP7660D
|
||||
@@ -896,6 +896,16 @@ config ATH79_MACH_EAP7660D
|
||||
select ATH79_DEV_LEDS_GPIO
|
||||
select ATH79_DEV_M25P80
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
|||
select SOC_QCA955X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -54,6 +54,7 @@ obj-$(CONFIG_ATH79_MACH_AP96) += mach-a
|
||||
@@ -55,6 +55,7 @@ obj-$(CONFIG_ATH79_MACH_AP96) += mach-a
|
||||
obj-$(CONFIG_ATH79_MACH_ARCHER_C7) += mach-archer-c7.o
|
||||
obj-$(CONFIG_ATH79_MACH_AW_NR580) += mach-aw-nr580.o
|
||||
obj-$(CONFIG_ATH79_MACH_BHU_BXU2000N2_A)+= mach-bhu-bxu2000n2-a.o
|
||||
|
@ -29,7 +29,7 @@
|
|||
obj-$(CONFIG_ATH79_MACH_DB120) += mach-db120.o
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -37,6 +37,7 @@ enum ath79_mach_type {
|
||||
@@ -38,6 +38,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_ARCHER_C7, /* TP-LINK Archer C7 board */
|
||||
ATH79_MACH_AW_NR580, /* AzureWave AW-NR580 */
|
||||
ATH79_MACH_BHU_BXU2000N2_A1, /* BHU BXU2000n-2 A1 */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -741,7 +741,7 @@ config ATH79_MACH_WNR2000
|
||||
@@ -750,7 +750,7 @@ config ATH79_MACH_WNR2000
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
config ATH79_MACH_WNR2000_V3
|
||||
|
@ -11,7 +11,7 @@
|
|||
select ATH79_DEV_ETH
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -204,6 +204,7 @@ enum ath79_mach_type {
|
||||
@@ -206,6 +206,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_WNR2200, /* NETGEAR WNR2200 */
|
||||
ATH79_MACH_WNR612_V2, /* NETGEAR WNR612 v2 */
|
||||
ATH79_MACH_WNR1000_V2, /* NETGEAR WNR1000 v2 */
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
--- a/arch/mips/ath79/machtypes.h 2016-04-12 21:08:09.309541276 +0200
|
||||
+++ b/arch/mips/ath79/machtypes.h 2016-04-12 21:08:43.200013377 +0200
|
||||
@@ -152,6 +152,7 @@
|
||||
ATH79_MACH_TL_WA901ND, /* TP-LINK TL-WA901ND */
|
||||
ATH79_MACH_TL_WA901ND_V2, /* TP-LINK TL-WA901ND v2 */
|
||||
ATH79_MACH_TL_WA901ND_V3, /* TP-LINK TL-WA901ND v3 */
|
||||
--- a/arch/mips/ath79/machtypes.h
|
||||
+++ b/arch/mips/ath79/machtypes.h
|
||||
@@ -152,6 +152,7 @@ enum ath79_mach_type {
|
||||
ATH79_MACH_TL_WA901ND, /* TP-LINK TL-WA901ND */
|
||||
ATH79_MACH_TL_WA901ND_V2, /* TP-LINK TL-WA901ND v2 */
|
||||
ATH79_MACH_TL_WA901ND_V3, /* TP-LINK TL-WA901ND v3 */
|
||||
+ ATH79_MACH_TL_WA901ND_V4, /* TP-LINK TL-WA901ND v4 */
|
||||
ATH79_MACH_TL_WDR3500, /* TP-LINK TL-WDR3500 */
|
||||
ATH79_MACH_TL_WDR4300, /* TP-LINK TL-WDR4300 */
|
||||
ATH79_MACH_TL_WDR4900_V2, /* TP-LINK TL-WDR4900 v2 */
|
||||
--- a/arch/mips/ath79/Kconfig 2016-04-12 21:00:07.267269819 +0200
|
||||
+++ b/arch/mips/ath79/Kconfig 2016-04-12 21:00:08.803199911 +0200
|
||||
@@ -1023,6 +1023,15 @@
|
||||
select ATH79_DEV_M25P80
|
||||
select ATH79_DEV_WMAC
|
||||
ATH79_MACH_TL_WDR3500, /* TP-LINK TL-WDR3500 */
|
||||
ATH79_MACH_TL_WDR4300, /* TP-LINK TL-WDR4300 */
|
||||
ATH79_MACH_TL_WDR4900_V2, /* TP-LINK TL-WDR4900 v2 */
|
||||
--- a/arch/mips/ath79/Kconfig
|
||||
+++ b/arch/mips/ath79/Kconfig
|
||||
@@ -1023,6 +1023,15 @@ config ATH79_MACH_TL_WA901ND_V2
|
||||
select ATH79_DEV_M25P80
|
||||
select ATH79_DEV_WMAC
|
||||
|
||||
+config ATH79_MACH_TL_WA901ND_V4
|
||||
+ bool "TP-LINK TL-WA901ND v4 support"
|
||||
|
@ -24,11 +24,11 @@
|
|||
+ select ATH79_DEV_WMAC
|
||||
+
|
||||
config ATH79_MACH_TL_WDR3500
|
||||
bool "TP-LINK TL-WDR3500 board support"
|
||||
select SOC_AR934X
|
||||
--- a/arch/mips/ath79/Makefile 2016-04-12 21:03:21.974455904 +0200
|
||||
+++ b/arch/mips/ath79/Makefile 2016-04-12 21:02:56.115621524 +0200
|
||||
@@ -128,6 +128,7 @@
|
||||
bool "TP-LINK TL-WDR3500 board support"
|
||||
select SOC_AR934X
|
||||
--- a/arch/mips/ath79/Makefile
|
||||
+++ b/arch/mips/ath79/Makefile
|
||||
@@ -128,6 +128,7 @@ obj-$(CONFIG_ATH79_MACH_TL_WA7210N_V2) +
|
||||
obj-$(CONFIG_ATH79_MACH_TL_WA830RE_V2) += mach-tl-wa830re-v2.o
|
||||
obj-$(CONFIG_ATH79_MACH_TL_WA901ND) += mach-tl-wa901nd.o
|
||||
obj-$(CONFIG_ATH79_MACH_TL_WA901ND_V2) += mach-tl-wa901nd-v2.o
|
||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|||
|
||||
--- a/drivers/pci/probe.c
|
||||
+++ b/drivers/pci/probe.c
|
||||
@@ -2100,7 +2100,10 @@ struct pci_bus *pci_scan_root_bus(struct
|
||||
@@ -2132,7 +2132,10 @@ struct pci_bus *pci_scan_root_bus(struct
|
||||
if (!found)
|
||||
pci_bus_update_busn_res_end(b, max);
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
|||
return UBI_IO_BAD_HDR_EBADMSG;
|
||||
--- a/drivers/mtd/ubi/ubi.h
|
||||
+++ b/drivers/mtd/ubi/ubi.h
|
||||
@@ -743,6 +743,7 @@ extern struct mutex ubi_devices_mutex;
|
||||
@@ -747,6 +747,7 @@ extern struct mutex ubi_devices_mutex;
|
||||
extern struct blocking_notifier_head ubi_notifiers;
|
||||
|
||||
/* attach.c */
|
||||
|
|
|
@ -90,5 +90,5 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
|||
+#endif /* CONFIG_ARCH_BCM_5301X */
|
||||
+
|
||||
if (!ret)
|
||||
xhci->xhc_state &= ~(XHCI_STATE_HALTED | XHCI_STATE_DYING);
|
||||
|
||||
/* clear state flags. Including dying, halted or removing */
|
||||
xhci->xhc_state = 0;
|
||||
|
|
|
@ -19,7 +19,7 @@ Reduces overhead when using X
|
|||
module_param_named(mousepoll, hid_mousepoll_interval, uint, 0644);
|
||||
MODULE_PARM_DESC(mousepoll, "Polling interval of mice");
|
||||
|
||||
@@ -1079,8 +1079,12 @@ static int usbhid_start(struct hid_devic
|
||||
@@ -1071,8 +1071,12 @@ static int usbhid_start(struct hid_devic
|
||||
}
|
||||
|
||||
/* Change the polling interval of mice. */
|
||||
|
|
|
@ -10,7 +10,7 @@ Hub overcurrent messages are more serious than "debug". Increase loglevel.
|
|||
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -4928,7 +4928,7 @@ static void port_event(struct usb_hub *h
|
||||
@@ -4934,7 +4934,7 @@ static void port_event(struct usb_hub *h
|
||||
if (portchange & USB_PORT_STAT_C_OVERCURRENT) {
|
||||
u16 status = 0, unused;
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||
|
||||
--- a/fs/jffs2/nodelist.h
|
||||
+++ b/fs/jffs2/nodelist.h
|
||||
@@ -255,7 +255,7 @@ struct jffs2_full_dirent
|
||||
@@ -259,7 +259,7 @@ struct jffs2_full_dirent
|
||||
uint32_t ino; /* == zero for unlink */
|
||||
unsigned int nhash;
|
||||
unsigned char type;
|
||||
|
|
|
@ -145,7 +145,7 @@ Origin: backport, https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.gi
|
|||
#endif
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -1837,6 +1837,10 @@ void __weak module_arch_cleanup(struct m
|
||||
@@ -1840,6 +1840,10 @@ void __weak module_arch_cleanup(struct m
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -156,7 +156,7 @@ Origin: backport, https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.gi
|
|||
/* Free a module, remove from lists, etc. */
|
||||
static void free_module(struct module *mod)
|
||||
{
|
||||
@@ -1869,6 +1873,7 @@ static void free_module(struct module *m
|
||||
@@ -1872,6 +1876,7 @@ static void free_module(struct module *m
|
||||
|
||||
/* This may be NULL, but that's OK */
|
||||
unset_module_init_ro_nx(mod);
|
||||
|
@ -164,7 +164,7 @@ Origin: backport, https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.gi
|
|||
module_free(mod, mod->module_init);
|
||||
kfree(mod->args);
|
||||
percpu_modfree(mod);
|
||||
@@ -2958,6 +2963,7 @@ static struct module *layout_and_allocat
|
||||
@@ -2978,6 +2983,7 @@ static struct module *layout_and_allocat
|
||||
static void module_deallocate(struct module *mod, struct load_info *info)
|
||||
{
|
||||
percpu_modfree(mod);
|
||||
|
@ -172,8 +172,8 @@ Origin: backport, https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.gi
|
|||
module_free(mod, mod->module_init);
|
||||
module_free(mod, mod->module_core);
|
||||
}
|
||||
@@ -3081,6 +3087,7 @@ static int do_init_module(struct module
|
||||
mod->strtab = mod->core_strtab;
|
||||
@@ -3100,6 +3106,7 @@ static int do_init_module(struct module
|
||||
rcu_assign_pointer(mod->kallsyms, &mod->core_kallsyms);
|
||||
#endif
|
||||
unset_module_init_ro_nx(mod);
|
||||
+ module_arch_freeing_init(mod);
|
||||
|
|
|
@ -109,7 +109,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
|||
config INIT_ALL_POSSIBLE
|
||||
--- a/kernel/module.c
|
||||
+++ b/kernel/module.c
|
||||
@@ -2674,6 +2674,7 @@ static struct module *setup_load_info(st
|
||||
@@ -2694,6 +2694,7 @@ static struct module *setup_load_info(st
|
||||
|
||||
static int check_modinfo(struct module *mod, struct load_info *info, int flags)
|
||||
{
|
||||
|
@ -117,7 +117,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
|||
const char *modmagic = get_modinfo(info, "vermagic");
|
||||
int err;
|
||||
|
||||
@@ -2699,6 +2700,7 @@ static int check_modinfo(struct module *
|
||||
@@ -2719,6 +2720,7 @@ static int check_modinfo(struct module *
|
||||
pr_warn("%s: module is from the staging directory, the quality "
|
||||
"is unknown, you have been warned.\n", mod->name);
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
break;
|
||||
--- a/drivers/mtd/ubi/ubi.h
|
||||
+++ b/drivers/mtd/ubi/ubi.h
|
||||
@@ -701,6 +701,7 @@ struct ubi_attach_info {
|
||||
@@ -705,6 +705,7 @@ struct ubi_attach_info {
|
||||
int mean_ec;
|
||||
uint64_t ec_sum;
|
||||
int ec_count;
|
||||
|
|
|
@ -84,7 +84,7 @@
|
|||
#endif /* __LINUX_USB_PCI_QUIRKS_H */
|
||||
--- a/include/linux/usb/hcd.h
|
||||
+++ b/include/linux/usb/hcd.h
|
||||
@@ -444,7 +444,14 @@ extern int usb_hcd_pci_probe(struct pci_
|
||||
@@ -445,7 +445,14 @@ extern int usb_hcd_pci_probe(struct pci_
|
||||
extern void usb_hcd_pci_remove(struct pci_dev *dev);
|
||||
extern void usb_hcd_pci_shutdown(struct pci_dev *dev);
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@
|
|||
* @dev: device the buffer will be used with
|
||||
--- a/include/linux/usb.h
|
||||
+++ b/include/linux/usb.h
|
||||
@@ -721,6 +721,7 @@ static inline bool usb_device_no_sg_cons
|
||||
@@ -720,6 +720,7 @@ static inline bool usb_device_no_sg_cons
|
||||
return udev && udev->bus && udev->bus->no_sg_constraint;
|
||||
}
|
||||
|
||||
|
|
|
@ -5514,7 +5514,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
(transaction layer end-to-end CRC checking).
|
||||
--- a/include/linux/pci.h
|
||||
+++ b/include/linux/pci.h
|
||||
@@ -1160,6 +1160,8 @@ void pci_walk_bus(struct pci_bus *top, i
|
||||
@@ -1163,6 +1163,8 @@ void pci_walk_bus(struct pci_bus *top, i
|
||||
void *userdata);
|
||||
int pci_cfg_space_size(struct pci_dev *dev);
|
||||
unsigned char pci_bus_max_busnr(struct pci_bus *bus);
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
obj-$(CONFIG_ARCH_VT8500) += irq-vt8500.o
|
||||
--- a/drivers/irqchip/irq-gic.c
|
||||
+++ b/drivers/irqchip/irq-gic.c
|
||||
@@ -1044,6 +1044,7 @@ IRQCHIP_DECLARE(gic_400, "arm,gic-400",
|
||||
@@ -1052,6 +1052,7 @@ IRQCHIP_DECLARE(gic_400, "arm,gic-400",
|
||||
IRQCHIP_DECLARE(cortex_a15_gic, "arm,cortex-a15-gic", gic_of_init);
|
||||
IRQCHIP_DECLARE(cortex_a9_gic, "arm,cortex-a9-gic", gic_of_init);
|
||||
IRQCHIP_DECLARE(cortex_a7_gic, "arm,cortex-a7-gic", gic_of_init);
|
||||
|
|
|
@ -45,7 +45,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
+};
|
||||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -711,6 +711,10 @@
|
||||
@@ -711,6 +711,10 @@ config I2C_RK3X
|
||||
This driver can also be built as a module. If so, the module will
|
||||
be called i2c-rk3x.
|
||||
|
||||
|
@ -58,7 +58,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
help
|
||||
--- a/drivers/i2c/busses/Makefile
|
||||
+++ b/drivers/i2c/busses/Makefile
|
||||
@@ -66,6 +66,7 @@
|
||||
@@ -66,6 +66,7 @@ obj-$(CONFIG_I2C_PNX) += i2c-pnx.o
|
||||
obj-$(CONFIG_I2C_PUV3) += i2c-puv3.o
|
||||
obj-$(CONFIG_I2C_PXA) += i2c-pxa.o
|
||||
obj-$(CONFIG_I2C_PXA_PCI) += i2c-pxa-pci.o
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/drivers/spi/Kconfig
|
||||
+++ b/drivers/spi/Kconfig
|
||||
@@ -439,6 +439,12 @@
|
||||
@@ -439,6 +439,12 @@ config SPI_RT2880
|
||||
help
|
||||
This selects a driver for the Ralink RT288x/RT305x SPI Controller.
|
||||
|
||||
|
@ -15,7 +15,7 @@
|
|||
depends on ARCH_S3C24XX
|
||||
--- a/drivers/spi/Makefile
|
||||
+++ b/drivers/spi/Makefile
|
||||
@@ -46,6 +46,7 @@
|
||||
@@ -46,6 +46,7 @@ obj-$(CONFIG_SPI_LM70_LLP) += spi-lm70l
|
||||
obj-$(CONFIG_SPI_MPC512x_PSC) += spi-mpc512x-psc.o
|
||||
obj-$(CONFIG_SPI_MPC52xx_PSC) += spi-mpc52xx-psc.o
|
||||
obj-$(CONFIG_SPI_MPC52xx) += spi-mpc52xx.o
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/drivers/usb/core/hcd-pci.c
|
||||
+++ b/drivers/usb/core/hcd-pci.c
|
||||
@@ -214,8 +214,13 @@ int usb_hcd_pci_probe(struct pci_dev *de
|
||||
@@ -223,8 +223,13 @@ int usb_hcd_pci_probe(struct pci_dev *de
|
||||
goto disable_pci;
|
||||
}
|
||||
|
||||
|
@ -5349,7 +5349,7 @@
|
|||
/* TODO: copied from ehci-hcd.c - can this be refactored? */
|
||||
/*
|
||||
* xhci_handshake - spin reading hc until handshake completes or fails
|
||||
@@ -199,7 +221,7 @@ int xhci_reset(struct xhci_hcd *xhci)
|
||||
@@ -200,7 +222,7 @@ int xhci_reset(struct xhci_hcd *xhci)
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -5358,7 +5358,7 @@
|
|||
static int xhci_free_msi(struct xhci_hcd *xhci)
|
||||
{
|
||||
int i;
|
||||
@@ -449,6 +471,11 @@ static void compliance_mode_recovery(uns
|
||||
@@ -450,6 +472,11 @@ static void compliance_mode_recovery(uns
|
||||
"Attempting compliance mode recovery");
|
||||
hcd = xhci->shared_hcd;
|
||||
|
||||
|
@ -5370,7 +5370,7 @@
|
|||
if (hcd->state == HC_STATE_SUSPENDED)
|
||||
usb_hcd_resume_root_hub(hcd);
|
||||
|
||||
@@ -498,6 +525,9 @@ static bool xhci_compliance_mode_recover
|
||||
@@ -499,6 +526,9 @@ static bool xhci_compliance_mode_recover
|
||||
{
|
||||
const char *dmi_product_name, *dmi_sys_vendor;
|
||||
|
||||
|
@ -5380,7 +5380,7 @@
|
|||
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)
|
||||
@@ -543,6 +573,10 @@ int xhci_init(struct usb_hcd *hcd)
|
||||
@@ -544,6 +574,10 @@ int xhci_init(struct usb_hcd *hcd)
|
||||
xhci_dbg_trace(xhci, trace_xhci_dbg_init,
|
||||
"xHCI doesn't need link TRB QUIRK");
|
||||
}
|
||||
|
@ -5391,7 +5391,7 @@
|
|||
retval = xhci_mem_init(xhci, GFP_KERNEL);
|
||||
xhci_dbg_trace(xhci, trace_xhci_dbg_init, "Finished xhci_init");
|
||||
|
||||
@@ -627,7 +661,11 @@ int xhci_run(struct usb_hcd *hcd)
|
||||
@@ -628,7 +662,11 @@ int xhci_run(struct usb_hcd *hcd)
|
||||
"// Set the interrupt modulation register");
|
||||
temp = readl(&xhci->ir_set->irq_control);
|
||||
temp &= ~ER_IRQ_INTERVAL_MASK;
|
||||
|
@ -5403,7 +5403,7 @@
|
|||
writel(temp, &xhci->ir_set->irq_control);
|
||||
|
||||
/* Set the HCD state before we enable the irqs */
|
||||
@@ -652,6 +690,9 @@ int xhci_run(struct usb_hcd *hcd)
|
||||
@@ -653,6 +691,9 @@ int xhci_run(struct usb_hcd *hcd)
|
||||
xhci_queue_vendor_command(xhci, command, 0, 0, 0,
|
||||
TRB_TYPE(TRB_NEC_GET_FW));
|
||||
}
|
||||
|
@ -5413,7 +5413,7 @@
|
|||
xhci_dbg_trace(xhci, trace_xhci_dbg_init,
|
||||
"Finished xhci_run for USB2 roothub");
|
||||
return 0;
|
||||
@@ -1650,6 +1691,14 @@ int xhci_drop_endpoint(struct usb_hcd *h
|
||||
@@ -1651,6 +1692,14 @@ int xhci_drop_endpoint(struct usb_hcd *h
|
||||
u32 drop_flag;
|
||||
u32 new_add_flags, new_drop_flags;
|
||||
int ret;
|
||||
|
@ -5428,7 +5428,7 @@
|
|||
|
||||
ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
|
||||
if (ret <= 0)
|
||||
@@ -1697,6 +1746,40 @@ int xhci_drop_endpoint(struct usb_hcd *h
|
||||
@@ -1698,6 +1747,40 @@ int xhci_drop_endpoint(struct usb_hcd *h
|
||||
|
||||
xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep);
|
||||
|
||||
|
@ -5469,7 +5469,7 @@
|
|||
xhci_dbg(xhci, "drop ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x\n",
|
||||
(unsigned int) ep->desc.bEndpointAddress,
|
||||
udev->slot_id,
|
||||
@@ -1729,6 +1812,19 @@ int xhci_add_endpoint(struct usb_hcd *hc
|
||||
@@ -1730,6 +1813,19 @@ int xhci_add_endpoint(struct usb_hcd *hc
|
||||
u32 new_add_flags, new_drop_flags;
|
||||
struct xhci_virt_device *virt_dev;
|
||||
int ret = 0;
|
||||
|
@ -5489,7 +5489,7 @@
|
|||
|
||||
ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
|
||||
if (ret <= 0) {
|
||||
@@ -1795,6 +1891,56 @@ int xhci_add_endpoint(struct usb_hcd *hc
|
||||
@@ -1796,6 +1892,56 @@ int xhci_add_endpoint(struct usb_hcd *hc
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
|
@ -5546,7 +5546,7 @@
|
|||
ctrl_ctx->add_flags |= cpu_to_le32(added_ctxs);
|
||||
new_add_flags = le32_to_cpu(ctrl_ctx->add_flags);
|
||||
|
||||
@@ -4465,8 +4611,14 @@ static u16 xhci_call_host_update_timeout
|
||||
@@ -4467,8 +4613,14 @@ static u16 xhci_call_host_update_timeout
|
||||
u16 *timeout)
|
||||
{
|
||||
if (state == USB3_LPM_U1)
|
||||
|
@ -5561,7 +5561,7 @@
|
|||
return xhci_calculate_u2_timeout(xhci, udev, desc);
|
||||
|
||||
return USB3_LPM_DISABLED;
|
||||
@@ -4851,7 +5003,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
@@ -4853,7 +5005,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
hcd->self.no_sg_constraint = 1;
|
||||
|
||||
/* XHCI controllers don't stop the ep queue on short packets :| */
|
||||
|
@ -5571,9 +5571,9 @@
|
|||
|
||||
if (usb_hcd_is_primary_hcd(hcd)) {
|
||||
xhci = kzalloc(sizeof(struct xhci_hcd), GFP_KERNEL);
|
||||
@@ -4914,6 +5068,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
goto error;
|
||||
xhci_dbg(xhci, "Reset complete\n");
|
||||
@@ -4926,6 +5080,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
if (xhci->quirks & XHCI_NO_64BIT_SUPPORT)
|
||||
xhci->hcc_params &= ~BIT(0);
|
||||
|
||||
+#if defined (CONFIG_USB_MT7621_XHCI_PLATFORM)
|
||||
+ setInitialReg();
|
||||
|
@ -5582,7 +5582,7 @@
|
|||
/* Set dma_mask and coherent_dma_mask to 64-bits,
|
||||
* if xHC supports 64-bit addressing */
|
||||
if (HCC_64BIT_ADDR(xhci->hcc_params) &&
|
||||
@@ -5008,8 +5166,57 @@ MODULE_DESCRIPTION(DRIVER_DESC);
|
||||
@@ -5020,8 +5178,57 @@ MODULE_DESCRIPTION(DRIVER_DESC);
|
||||
MODULE_AUTHOR(DRIVER_AUTHOR);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
|
@ -5664,7 +5664,7 @@
|
|||
/* xHCI PCI Configuration Registers */
|
||||
#define XHCI_SBRN_OFFSET (0x60)
|
||||
|
||||
@@ -1588,8 +1603,12 @@ struct xhci_hcd {
|
||||
@@ -1590,8 +1605,12 @@ struct xhci_hcd {
|
||||
/* Compliance Mode Recovery Data */
|
||||
struct timer_list comp_mode_recovery_timer;
|
||||
u32 port_status_u0;
|
||||
|
@ -5677,7 +5677,7 @@
|
|||
};
|
||||
|
||||
/* convert between an HCD pointer and the corresponding EHCI_HCD */
|
||||
@@ -1737,6 +1756,26 @@ void xhci_urb_free_priv(struct xhci_hcd
|
||||
@@ -1739,6 +1758,26 @@ void xhci_urb_free_priv(struct xhci_hcd
|
||||
void xhci_free_command(struct xhci_hcd *xhci,
|
||||
struct xhci_command *command);
|
||||
|
||||
|
|
|
@ -1,51 +0,0 @@
|
|||
From ff774d842a2bf9136b9c7ddd7f5085a9062705ac Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Mon, 16 Jun 2014 20:06:43 +0200
|
||||
Subject: [PATCH] ARM: dts: sunxi: Adjust touchscreen compatible for sun5i and
|
||||
later
|
||||
|
||||
The touchscreen controller in the A13 and later has a different temperature
|
||||
curve than the one in the original A10, change the compatible for the A13 and
|
||||
later so that the kernel will use the correct curve.
|
||||
|
||||
Reported-by: Tong Zhang <lovewilliam@gmail.com>
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
arch/arm/boot/dts/sun5i-a10s.dtsi | 2 +-
|
||||
arch/arm/boot/dts/sun5i-a13.dtsi | 2 +-
|
||||
arch/arm/boot/dts/sun7i-a20.dtsi | 2 +-
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/sun5i-a10s.dtsi
|
||||
+++ b/arch/arm/boot/dts/sun5i-a10s.dtsi
|
||||
@@ -533,7 +533,7 @@
|
||||
};
|
||||
|
||||
rtp: rtp@01c25000 {
|
||||
- compatible = "allwinner,sun4i-a10-ts";
|
||||
+ compatible = "allwinner,sun5i-a13-ts";
|
||||
reg = <0x01c25000 0x100>;
|
||||
interrupts = <29>;
|
||||
};
|
||||
--- a/arch/arm/boot/dts/sun5i-a13.dtsi
|
||||
+++ b/arch/arm/boot/dts/sun5i-a13.dtsi
|
||||
@@ -481,7 +481,7 @@
|
||||
};
|
||||
|
||||
rtp: rtp@01c25000 {
|
||||
- compatible = "allwinner,sun4i-a10-ts";
|
||||
+ compatible = "allwinner,sun5i-a13-ts";
|
||||
reg = <0x01c25000 0x100>;
|
||||
interrupts = <29>;
|
||||
};
|
||||
--- a/arch/arm/boot/dts/sun7i-a20.dtsi
|
||||
+++ b/arch/arm/boot/dts/sun7i-a20.dtsi
|
||||
@@ -924,7 +924,7 @@
|
||||
};
|
||||
|
||||
rtp: rtp@01c25000 {
|
||||
- compatible = "allwinner,sun4i-a10-ts";
|
||||
+ compatible = "allwinner,sun5i-a13-ts";
|
||||
reg = <0x01c25000 0x100>;
|
||||
interrupts = <0 29 4>;
|
||||
};
|
Loading…
Reference in New Issue