From: Greg Kroah-Hartman Date: Wed, 21 Feb 2018 11:51:05 +0000 (+0100) Subject: 4.15-stable patches X-Git-Tag: v4.15.5~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=aadf5c8452576de63fe8d415e1c224ea6c6aa163;p=thirdparty%2Fkernel%2Fstable-queue.git 4.15-stable patches added patches: arm-dts-delete-bogus-reference-to-the-charlcd.patch arm-dts-exynos-fix-rtc-interrupt-for-exynos5410.patch arm-dts-mt2701-add-reset-cells.patch arm-dts-mt7623-update-ethsys-binding.patch arm-dts-s5pv210-add-interrupt-parent-for-ohci.patch arm-pxa-tosa-bt-add-module_license-tag.patch arm64-dts-msm8916-add-missing-phy-cells.patch media-r820t-fix-r820t_write_reg-for-kasan.patch mmc-sdhci-of-esdhc-fix-emmc-couldn-t-work-after-kexec.patch mmc-sdhci-of-esdhc-fix-the-mmc-error-after-sleep-on-ls1046ardb.patch --- diff --git a/queue-4.15/arm-dts-delete-bogus-reference-to-the-charlcd.patch b/queue-4.15/arm-dts-delete-bogus-reference-to-the-charlcd.patch new file mode 100644 index 00000000000..aeb0502a689 --- /dev/null +++ b/queue-4.15/arm-dts-delete-bogus-reference-to-the-charlcd.patch @@ -0,0 +1,40 @@ +From 586b2a4befad88cd87b372a1cea01e58c6811ea9 Mon Sep 17 00:00:00 2001 +From: Linus Walleij +Date: Tue, 2 Jan 2018 08:57:17 +0100 +Subject: ARM: dts: Delete bogus reference to the charlcd + +From: Linus Walleij + +commit 586b2a4befad88cd87b372a1cea01e58c6811ea9 upstream. + +The EB MP board probably has a character LCD but the board manual does +not really state which IRQ it has assigned to this device. The invalid +assignment was a mistake by me during submission of the DTSI where I was +looking for the reference, didn't find it and didn't fill it in. + +Delete this for now: it can probably be fixed but that requires access +to the actual board for some trial-and-error experiments. + +Reported-by: Arnd Bergmann +Signed-off-by: Linus Walleij +Signed-off-by: Olof Johansson +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/boot/dts/arm-realview-eb-mp.dtsi | 5 ----- + 1 file changed, 5 deletions(-) + +--- a/arch/arm/boot/dts/arm-realview-eb-mp.dtsi ++++ b/arch/arm/boot/dts/arm-realview-eb-mp.dtsi +@@ -150,11 +150,6 @@ + interrupts = <0 8 IRQ_TYPE_LEVEL_HIGH>; + }; + +-&charlcd { +- interrupt-parent = <&intc>; +- interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; +-}; +- + &serial0 { + interrupt-parent = <&intc>; + interrupts = <0 4 IRQ_TYPE_LEVEL_HIGH>; diff --git a/queue-4.15/arm-dts-exynos-fix-rtc-interrupt-for-exynos5410.patch b/queue-4.15/arm-dts-exynos-fix-rtc-interrupt-for-exynos5410.patch new file mode 100644 index 00000000000..cfb1e8ac1ea --- /dev/null +++ b/queue-4.15/arm-dts-exynos-fix-rtc-interrupt-for-exynos5410.patch @@ -0,0 +1,39 @@ +From 5628a8ca14149ba4226e3bdce3a04c3b688435ad Mon Sep 17 00:00:00 2001 +From: Arnd Bergmann +Date: Thu, 21 Dec 2017 22:30:07 +0100 +Subject: ARM: dts: exynos: fix RTC interrupt for exynos5410 + +From: Arnd Bergmann + +commit 5628a8ca14149ba4226e3bdce3a04c3b688435ad upstream. + +According to the comment added to exynos_dt_pmu_match[] in commit +8b283c025443 ("ARM: exynos4/5: convert pmu wakeup to stacked domains"), +the RTC is not able to wake up the system through the PMU on Exynos5410, +unlike Exynos5420. + +However, when the RTC DT node got added, it was a straight copy of +the Exynos5420 node, which now causes a warning from dtc. + +This removes the incorrect interrupt-parent, which should get the +interrupt working and avoid the warning. + +Fixes: e1e146b1b062 ("ARM: dts: exynos: Add RTC and I2C to Exynos5410") +Signed-off-by: Arnd Bergmann +Signed-off-by: Krzysztof Kozlowski +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/boot/dts/exynos5410.dtsi | 1 - + 1 file changed, 1 deletion(-) + +--- a/arch/arm/boot/dts/exynos5410.dtsi ++++ b/arch/arm/boot/dts/exynos5410.dtsi +@@ -333,7 +333,6 @@ + &rtc { + clocks = <&clock CLK_RTC>; + clock-names = "rtc"; +- interrupt-parent = <&pmu_system_controller>; + status = "disabled"; + }; + diff --git a/queue-4.15/arm-dts-mt2701-add-reset-cells.patch b/queue-4.15/arm-dts-mt2701-add-reset-cells.patch new file mode 100644 index 00000000000..84fbc8880b2 --- /dev/null +++ b/queue-4.15/arm-dts-mt2701-add-reset-cells.patch @@ -0,0 +1,38 @@ +From ae72e95b5e4ded145bfc6926ad9457b74e3af41a Mon Sep 17 00:00:00 2001 +From: Matthias Brugger +Date: Fri, 1 Dec 2017 13:07:08 +0100 +Subject: arm: dts: mt2701: Add reset-cells + +From: Matthias Brugger + +commit ae72e95b5e4ded145bfc6926ad9457b74e3af41a upstream. + +The hifsys and ethsys needs the definition of the reset-cells +property. Fix this. + +Reviewed-by: Rob Herring +Signed-off-by: Matthias Brugger +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/boot/dts/mt2701.dtsi | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/arch/arm/boot/dts/mt2701.dtsi ++++ b/arch/arm/boot/dts/mt2701.dtsi +@@ -604,6 +604,7 @@ + compatible = "mediatek,mt2701-hifsys", "syscon"; + reg = <0 0x1a000000 0 0x1000>; + #clock-cells = <1>; ++ #reset-cells = <1>; + }; + + usb0: usb@1a1c0000 { +@@ -688,6 +689,7 @@ + compatible = "mediatek,mt2701-ethsys", "syscon"; + reg = <0 0x1b000000 0 0x1000>; + #clock-cells = <1>; ++ #reset-cells = <1>; + }; + + eth: ethernet@1b100000 { diff --git a/queue-4.15/arm-dts-mt7623-update-ethsys-binding.patch b/queue-4.15/arm-dts-mt7623-update-ethsys-binding.patch new file mode 100644 index 00000000000..aced053b013 --- /dev/null +++ b/queue-4.15/arm-dts-mt7623-update-ethsys-binding.patch @@ -0,0 +1,30 @@ +From 76a09ce214addb8ddc0f6d50dc1106a5f829e713 Mon Sep 17 00:00:00 2001 +From: Matthias Brugger +Date: Fri, 1 Dec 2017 13:07:07 +0100 +Subject: arm: dts: mt7623: Update ethsys binding + +From: Matthias Brugger + +commit 76a09ce214addb8ddc0f6d50dc1106a5f829e713 upstream. + +The ethsys binding misses the reset-cells, this patch +adds this property. + +Reviewed-by: Rob Herring +Signed-off-by: Matthias Brugger +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/boot/dts/mt7623.dtsi | 1 + + 1 file changed, 1 insertion(+) + +--- a/arch/arm/boot/dts/mt7623.dtsi ++++ b/arch/arm/boot/dts/mt7623.dtsi +@@ -758,6 +758,7 @@ + "syscon"; + reg = <0 0x1b000000 0 0x1000>; + #clock-cells = <1>; ++ #reset-cells = <1>; + }; + + eth: ethernet@1b100000 { diff --git a/queue-4.15/arm-dts-s5pv210-add-interrupt-parent-for-ohci.patch b/queue-4.15/arm-dts-s5pv210-add-interrupt-parent-for-ohci.patch new file mode 100644 index 00000000000..204f0f8d7df --- /dev/null +++ b/queue-4.15/arm-dts-s5pv210-add-interrupt-parent-for-ohci.patch @@ -0,0 +1,41 @@ +From 5c1037196b9ee75897c211972de370ed1336ec8f Mon Sep 17 00:00:00 2001 +From: Arnd Bergmann +Date: Wed, 10 Jan 2018 17:10:11 +0100 +Subject: ARM: dts: s5pv210: add interrupt-parent for ohci + +From: Arnd Bergmann + +commit 5c1037196b9ee75897c211972de370ed1336ec8f upstream. + +The ohci-hcd node has an interrupt number but no interrupt-parent, +leading to a warning with current dtc versions: + +arch/arm/boot/dts/s5pv210-aquila.dtb: Warning (interrupts_property): Missing interrupt-parent for /soc/ohci@ec300000 +arch/arm/boot/dts/s5pv210-goni.dtb: Warning (interrupts_property): Missing interrupt-parent for /soc/ohci@ec300000 +arch/arm/boot/dts/s5pv210-smdkc110.dtb: Warning (interrupts_property): Missing interrupt-parent for /soc/ohci@ec300000 +arch/arm/boot/dts/s5pv210-smdkv210.dtb: Warning (interrupts_property): Missing interrupt-parent for /soc/ohci@ec300000 +arch/arm/boot/dts/s5pv210-torbreck.dtb: Warning (interrupts_property): Missing interrupt-parent for /soc/ohci@ec300000 + +As seen from the related exynos dts files, the ohci and ehci controllers +always share one interrupt number, and the number is the same here as +well, so setting the same interrupt-parent is the reasonable solution +here. + +Reviewed-by: Krzysztof Kozlowski +Signed-off-by: Arnd Bergmann +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/boot/dts/s5pv210.dtsi | 1 + + 1 file changed, 1 insertion(+) + +--- a/arch/arm/boot/dts/s5pv210.dtsi ++++ b/arch/arm/boot/dts/s5pv210.dtsi +@@ -463,6 +463,7 @@ + compatible = "samsung,exynos4210-ohci"; + reg = <0xec300000 0x100>; + interrupts = <23>; ++ interrupt-parent = <&vic1>; + clocks = <&clocks CLK_USB_HOST>; + clock-names = "usbhost"; + #address-cells = <1>; diff --git a/queue-4.15/arm-pxa-tosa-bt-add-module_license-tag.patch b/queue-4.15/arm-pxa-tosa-bt-add-module_license-tag.patch new file mode 100644 index 00000000000..0435950da67 --- /dev/null +++ b/queue-4.15/arm-pxa-tosa-bt-add-module_license-tag.patch @@ -0,0 +1,33 @@ +From 3343647813fdf0f2409fbf5816ee3e0622168079 Mon Sep 17 00:00:00 2001 +From: Arnd Bergmann +Date: Wed, 10 Jan 2018 15:40:37 +0100 +Subject: ARM: pxa/tosa-bt: add MODULE_LICENSE tag + +From: Arnd Bergmann + +commit 3343647813fdf0f2409fbf5816ee3e0622168079 upstream. + +Without this tag, we get a build warning: + +WARNING: modpost: missing MODULE_LICENSE() in arch/arm/mach-pxa/tosa-bt.o + +For completeness, I'm also adding author and description fields. + +Acked-by: Robert Jarzmik +Signed-off-by: Arnd Bergmann +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/mach-pxa/tosa-bt.c | 4 ++++ + 1 file changed, 4 insertions(+) + +--- a/arch/arm/mach-pxa/tosa-bt.c ++++ b/arch/arm/mach-pxa/tosa-bt.c +@@ -132,3 +132,7 @@ static struct platform_driver tosa_bt_dr + }, + }; + module_platform_driver(tosa_bt_driver); ++ ++MODULE_LICENSE("GPL"); ++MODULE_AUTHOR("Dmitry Baryshkov"); ++MODULE_DESCRIPTION("Bluetooth built-in chip control"); diff --git a/queue-4.15/arm64-dts-msm8916-add-missing-phy-cells.patch b/queue-4.15/arm64-dts-msm8916-add-missing-phy-cells.patch new file mode 100644 index 00000000000..6b2f5c2ce36 --- /dev/null +++ b/queue-4.15/arm64-dts-msm8916-add-missing-phy-cells.patch @@ -0,0 +1,32 @@ +From b0ab681285aa66064f2de5b74191c0cabba381ff Mon Sep 17 00:00:00 2001 +From: Bjorn Andersson +Date: Tue, 7 Nov 2017 19:45:01 -0800 +Subject: arm64: dts: msm8916: Add missing #phy-cells + +From: Bjorn Andersson + +commit b0ab681285aa66064f2de5b74191c0cabba381ff upstream. + +Add a missing #phy-cells to the dsi-phy, to silence dtc warning. + +Cc: Archit Taneja +Fixes: 305410ffd1b2 ("arm64: dts: msm8916: Add display support") +Signed-off-by: Bjorn Andersson +Reviewed-by: Archit Taneja +Signed-off-by: Andy Gross +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm64/boot/dts/qcom/msm8916.dtsi | 1 + + 1 file changed, 1 insertion(+) + +--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi ++++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi +@@ -906,6 +906,7 @@ + "dsi_phy_regulator"; + + #clock-cells = <1>; ++ #phy-cells = <0>; + + clocks = <&gcc GCC_MDSS_AHB_CLK>; + clock-names = "iface_clk"; diff --git a/queue-4.15/media-r820t-fix-r820t_write_reg-for-kasan.patch b/queue-4.15/media-r820t-fix-r820t_write_reg-for-kasan.patch new file mode 100644 index 00000000000..22ee823aa6b --- /dev/null +++ b/queue-4.15/media-r820t-fix-r820t_write_reg-for-kasan.patch @@ -0,0 +1,68 @@ +From 16c3ada89cff9a8c2a0eea34ffa1aa20af3f6008 Mon Sep 17 00:00:00 2001 +From: Arnd Bergmann +Date: Thu, 30 Nov 2017 06:08:05 -0500 +Subject: media: r820t: fix r820t_write_reg for KASAN + +From: Arnd Bergmann + +commit 16c3ada89cff9a8c2a0eea34ffa1aa20af3f6008 upstream. + +With CONFIG_KASAN, we get an overly long stack frame due to inlining +the register access functions: + +drivers/media/tuners/r820t.c: In function 'generic_set_freq.isra.7': +drivers/media/tuners/r820t.c:1334:1: error: the frame size of 2880 bytes is larger than 2048 bytes [-Werror=frame-larger-than=] + +This is caused by a gcc bug that has now been fixed in gcc-8. +To work around the problem, we can pass the register data +through a local variable that older gcc versions can optimize +out as well. + +Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81715 + +Signed-off-by: Arnd Bergmann +Signed-off-by: Mauro Carvalho Chehab +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/media/tuners/r820t.c | 13 ++++++++----- + 1 file changed, 8 insertions(+), 5 deletions(-) + +--- a/drivers/media/tuners/r820t.c ++++ b/drivers/media/tuners/r820t.c +@@ -396,9 +396,11 @@ static int r820t_write(struct r820t_priv + return 0; + } + +-static int r820t_write_reg(struct r820t_priv *priv, u8 reg, u8 val) ++static inline int r820t_write_reg(struct r820t_priv *priv, u8 reg, u8 val) + { +- return r820t_write(priv, reg, &val, 1); ++ u8 tmp = val; /* work around GCC PR81715 with asan-stack=1 */ ++ ++ return r820t_write(priv, reg, &tmp, 1); + } + + static int r820t_read_cache_reg(struct r820t_priv *priv, int reg) +@@ -411,17 +413,18 @@ static int r820t_read_cache_reg(struct r + return -EINVAL; + } + +-static int r820t_write_reg_mask(struct r820t_priv *priv, u8 reg, u8 val, ++static inline int r820t_write_reg_mask(struct r820t_priv *priv, u8 reg, u8 val, + u8 bit_mask) + { ++ u8 tmp = val; + int rc = r820t_read_cache_reg(priv, reg); + + if (rc < 0) + return rc; + +- val = (rc & ~bit_mask) | (val & bit_mask); ++ tmp = (rc & ~bit_mask) | (tmp & bit_mask); + +- return r820t_write(priv, reg, &val, 1); ++ return r820t_write(priv, reg, &tmp, 1); + } + + static int r820t_read(struct r820t_priv *priv, u8 reg, u8 *val, int len) diff --git a/queue-4.15/mmc-sdhci-of-esdhc-fix-emmc-couldn-t-work-after-kexec.patch b/queue-4.15/mmc-sdhci-of-esdhc-fix-emmc-couldn-t-work-after-kexec.patch new file mode 100644 index 00000000000..4f61106bbea --- /dev/null +++ b/queue-4.15/mmc-sdhci-of-esdhc-fix-emmc-couldn-t-work-after-kexec.patch @@ -0,0 +1,36 @@ +From 97618aca1440b5addc5c3d78659d3e176be23b80 Mon Sep 17 00:00:00 2001 +From: "yinbo.zhu" +Date: Wed, 8 Nov 2017 17:09:50 +0800 +Subject: mmc: sdhci-of-esdhc: fix eMMC couldn't work after kexec + +From: yinbo.zhu + +commit 97618aca1440b5addc5c3d78659d3e176be23b80 upstream. + +The bit eSDHC_TBCTL[TB_EN] couldn't be reset by eSDHC_SYSCTL[RSTA] which is +used to reset for all. The driver should make sure it's cleared before card +initialization, otherwise the initialization would fail. + +Signed-off-by: yinbo.zhu +Acked-by: Adrian Hunter +Signed-off-by: Ulf Hansson +Cc: Rasmus Villemoes +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mmc/host/sdhci-of-esdhc.c | 4 ++++ + 1 file changed, 4 insertions(+) + +--- a/drivers/mmc/host/sdhci-of-esdhc.c ++++ b/drivers/mmc/host/sdhci-of-esdhc.c +@@ -785,6 +785,10 @@ static void esdhc_init(struct platform_d + pltfm_host = sdhci_priv(host); + esdhc = sdhci_pltfm_priv(pltfm_host); + ++ val = sdhci_readl(host, ESDHC_TBCTL); ++ val &= ~ESDHC_TB_EN; ++ sdhci_writel(host, val, ESDHC_TBCTL); ++ + host_ver = sdhci_readw(host, SDHCI_HOST_VERSION); + esdhc->vendor_ver = (host_ver & SDHCI_VENDOR_VER_MASK) >> + SDHCI_VENDOR_VER_SHIFT; diff --git a/queue-4.15/mmc-sdhci-of-esdhc-fix-the-mmc-error-after-sleep-on-ls1046ardb.patch b/queue-4.15/mmc-sdhci-of-esdhc-fix-the-mmc-error-after-sleep-on-ls1046ardb.patch new file mode 100644 index 00000000000..345b0dae89d --- /dev/null +++ b/queue-4.15/mmc-sdhci-of-esdhc-fix-the-mmc-error-after-sleep-on-ls1046ardb.patch @@ -0,0 +1,57 @@ +From f2bc600008bd6f7f5d0b6b56238d14f95cd454d2 Mon Sep 17 00:00:00 2001 +From: "yinbo.zhu" +Date: Fri, 1 Dec 2017 15:09:34 +0800 +Subject: mmc: sdhci-of-esdhc: fix the mmc error after sleep on ls1046ardb + +From: yinbo.zhu + +commit f2bc600008bd6f7f5d0b6b56238d14f95cd454d2 upstream. + +When system wakes up from sleep on ls1046ardb, the SD operation fails +with mmc error messages since ESDHC_TB_EN bit couldn't be cleaned by +eSDHC_SYSCTL[RSTA]. It's proper to clean this bit in esdhc_reset() +rather than in probe. + +Signed-off-by: yinbo.zhu +Acked-by: Yangbo Lu +Acked-by: Adrian Hunter +Signed-off-by: Ulf Hansson +Cc: Rasmus Villemoes +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mmc/host/sdhci-of-esdhc.c | 12 ++++++++---- + 1 file changed, 8 insertions(+), 4 deletions(-) + +--- a/drivers/mmc/host/sdhci-of-esdhc.c ++++ b/drivers/mmc/host/sdhci-of-esdhc.c +@@ -589,10 +589,18 @@ static void esdhc_pltfm_set_bus_width(st + + static void esdhc_reset(struct sdhci_host *host, u8 mask) + { ++ u32 val; ++ + sdhci_reset(host, mask); + + sdhci_writel(host, host->ier, SDHCI_INT_ENABLE); + sdhci_writel(host, host->ier, SDHCI_SIGNAL_ENABLE); ++ ++ if (mask & SDHCI_RESET_ALL) { ++ val = sdhci_readl(host, ESDHC_TBCTL); ++ val &= ~ESDHC_TB_EN; ++ sdhci_writel(host, val, ESDHC_TBCTL); ++ } + } + + /* The SCFG, Supplemental Configuration Unit, provides SoC specific +@@ -785,10 +793,6 @@ static void esdhc_init(struct platform_d + pltfm_host = sdhci_priv(host); + esdhc = sdhci_pltfm_priv(pltfm_host); + +- val = sdhci_readl(host, ESDHC_TBCTL); +- val &= ~ESDHC_TB_EN; +- sdhci_writel(host, val, ESDHC_TBCTL); +- + host_ver = sdhci_readw(host, SDHCI_HOST_VERSION); + esdhc->vendor_ver = (host_ver & SDHCI_VENDOR_VER_MASK) >> + SDHCI_VENDOR_VER_SHIFT; diff --git a/queue-4.15/series b/queue-4.15/series index dfae7ee50cb..bceb818e0c6 100644 --- a/queue-4.15/series +++ b/queue-4.15/series @@ -151,3 +151,13 @@ alsa-seq-fix-racy-pool-initializations.patch mvpp2-fix-multicast-address-filter.patch usb-move-usb_uhci_big_endian_-out-of-usb_support.patch x86-mm-mm-hwpoison-don-t-unconditionally-unmap-kernel-1-1-pages.patch +arm-dts-exynos-fix-rtc-interrupt-for-exynos5410.patch +arm-pxa-tosa-bt-add-module_license-tag.patch +arm64-dts-msm8916-add-missing-phy-cells.patch +arm-dts-s5pv210-add-interrupt-parent-for-ohci.patch +arm-dts-mt7623-update-ethsys-binding.patch +arm-dts-mt2701-add-reset-cells.patch +arm-dts-delete-bogus-reference-to-the-charlcd.patch +media-r820t-fix-r820t_write_reg-for-kasan.patch +mmc-sdhci-of-esdhc-fix-emmc-couldn-t-work-after-kexec.patch +mmc-sdhci-of-esdhc-fix-the-mmc-error-after-sleep-on-ls1046ardb.patch