]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.3-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 6 Dec 2015 05:51:46 +0000 (21:51 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 6 Dec 2015 05:51:46 +0000 (21:51 -0800)
added patches:
arm-8426-1-dma-mapping-add-missing-range-check-in-dma_mmap.patch
arm-8427-1-dma-mapping-add-support-for-offset-parameter-in-dma_mmap.patch
arm-at91-dt-corrections-to-i2c1-declaration-to-sama5d4.patch
arm-at91-pm-at91_pm_suspend_in_sram-must-be-8-byte-aligned.patch
arm-common-edma-fix-channel-parameter-for-irq-callbacks.patch
arm-dts-add-vbus-regulator-to-usb2-phy-nodes-on-exynos3250-exynos4210-and-exynos4412-boards.patch
arm-dts-fix-wlan-regression-on-omap5-uevm.patch
arm-dts-imx27.dtsi-change-the-clock-information-for-usb.patch
arm-dts-sun6i-hummingbird-fix-vdd-cpu-and-vdd-gpu.patch
arm-pxa-remove-incorrect-__init-annotation-on-pxa27x_set_pwrmode.patch
arm-tegra-paz00-use-con_id-s-to-refer-gpio-s-in-gpiod_lookup-table.patch

12 files changed:
queue-4.3/arm-8426-1-dma-mapping-add-missing-range-check-in-dma_mmap.patch [new file with mode: 0644]
queue-4.3/arm-8427-1-dma-mapping-add-support-for-offset-parameter-in-dma_mmap.patch [new file with mode: 0644]
queue-4.3/arm-at91-dt-corrections-to-i2c1-declaration-to-sama5d4.patch [new file with mode: 0644]
queue-4.3/arm-at91-pm-at91_pm_suspend_in_sram-must-be-8-byte-aligned.patch [new file with mode: 0644]
queue-4.3/arm-common-edma-fix-channel-parameter-for-irq-callbacks.patch [new file with mode: 0644]
queue-4.3/arm-dts-add-vbus-regulator-to-usb2-phy-nodes-on-exynos3250-exynos4210-and-exynos4412-boards.patch [new file with mode: 0644]
queue-4.3/arm-dts-fix-wlan-regression-on-omap5-uevm.patch [new file with mode: 0644]
queue-4.3/arm-dts-imx27.dtsi-change-the-clock-information-for-usb.patch [new file with mode: 0644]
queue-4.3/arm-dts-sun6i-hummingbird-fix-vdd-cpu-and-vdd-gpu.patch [new file with mode: 0644]
queue-4.3/arm-pxa-remove-incorrect-__init-annotation-on-pxa27x_set_pwrmode.patch [new file with mode: 0644]
queue-4.3/arm-tegra-paz00-use-con_id-s-to-refer-gpio-s-in-gpiod_lookup-table.patch [new file with mode: 0644]
queue-4.3/series

diff --git a/queue-4.3/arm-8426-1-dma-mapping-add-missing-range-check-in-dma_mmap.patch b/queue-4.3/arm-8426-1-dma-mapping-add-missing-range-check-in-dma_mmap.patch
new file mode 100644 (file)
index 0000000..0990ccb
--- /dev/null
@@ -0,0 +1,42 @@
+From 371f0f085f629fc0f66695f572373ca4445a67ad Mon Sep 17 00:00:00 2001
+From: Marek Szyprowski <m.szyprowski@samsung.com>
+Date: Fri, 28 Aug 2015 09:41:39 +0100
+Subject: ARM: 8426/1: dma-mapping: add missing range check in dma_mmap()
+
+From: Marek Szyprowski <m.szyprowski@samsung.com>
+
+commit 371f0f085f629fc0f66695f572373ca4445a67ad upstream.
+
+dma_mmap() function in IOMMU-based dma-mapping implementation lacked
+a check for valid range of mmap parameters (offset and buffer size), what
+might have caused access beyond the allocated buffer. This patch fixes
+this issue.
+
+Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/mm/dma-mapping.c |    5 +++++
+ 1 file changed, 5 insertions(+)
+
+--- a/arch/arm/mm/dma-mapping.c
++++ b/arch/arm/mm/dma-mapping.c
+@@ -1407,12 +1407,17 @@ static int arm_iommu_mmap_attrs(struct d
+       unsigned long uaddr = vma->vm_start;
+       unsigned long usize = vma->vm_end - vma->vm_start;
+       struct page **pages = __iommu_get_pages(cpu_addr, attrs);
++      unsigned long nr_pages = PAGE_ALIGN(size) >> PAGE_SHIFT;
++      unsigned long off = vma->vm_pgoff;
+       vma->vm_page_prot = __get_dma_pgprot(attrs, vma->vm_page_prot);
+       if (!pages)
+               return -ENXIO;
++      if (off >= nr_pages || (usize >> PAGE_SHIFT) > nr_pages - off)
++              return -ENXIO;
++
+       do {
+               int ret = vm_insert_page(vma, uaddr, *pages++);
+               if (ret) {
diff --git a/queue-4.3/arm-8427-1-dma-mapping-add-support-for-offset-parameter-in-dma_mmap.patch b/queue-4.3/arm-8427-1-dma-mapping-add-support-for-offset-parameter-in-dma_mmap.patch
new file mode 100644 (file)
index 0000000..31dd1e4
--- /dev/null
@@ -0,0 +1,33 @@
+From 7e31210349e9e03a9a4dff31ab5f2bc83e8e84f5 Mon Sep 17 00:00:00 2001
+From: Marek Szyprowski <m.szyprowski@samsung.com>
+Date: Fri, 28 Aug 2015 09:42:09 +0100
+Subject: ARM: 8427/1: dma-mapping: add support for offset parameter in dma_mmap()
+
+From: Marek Szyprowski <m.szyprowski@samsung.com>
+
+commit 7e31210349e9e03a9a4dff31ab5f2bc83e8e84f5 upstream.
+
+IOMMU-based dma_mmap() implementation lacked proper support for offset
+parameter used in mmap call (it always assumed that mapping starts from
+offset zero). This patch adds support for offset parameter to IOMMU-based
+implementation.
+
+Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/mm/dma-mapping.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/arch/arm/mm/dma-mapping.c
++++ b/arch/arm/mm/dma-mapping.c
+@@ -1418,6 +1418,8 @@ static int arm_iommu_mmap_attrs(struct d
+       if (off >= nr_pages || (usize >> PAGE_SHIFT) > nr_pages - off)
+               return -ENXIO;
++      pages += off;
++
+       do {
+               int ret = vm_insert_page(vma, uaddr, *pages++);
+               if (ret) {
diff --git a/queue-4.3/arm-at91-dt-corrections-to-i2c1-declaration-to-sama5d4.patch b/queue-4.3/arm-at91-dt-corrections-to-i2c1-declaration-to-sama5d4.patch
new file mode 100644 (file)
index 0000000..ef4bbea
--- /dev/null
@@ -0,0 +1,38 @@
+From d1a9c24ad16ab2b26f1574bc3f2c165a7beff5df Mon Sep 17 00:00:00 2001
+From: Holger Busse <h.busse@kathrein-sachsen.de>
+Date: Wed, 26 Aug 2015 10:45:45 +0200
+Subject: ARM: at91/dt: corrections to i2c1 declaration to sama5d4
+
+From: Holger Busse <h.busse@kathrein-sachsen.de>
+
+commit d1a9c24ad16ab2b26f1574bc3f2c165a7beff5df upstream.
+
+Correcting the dma declaration for i2c1 dma.
+
+Signed-off-by: Holger Busse <h.busse@kathrein-sachsen.de>
+Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
+Fixes: 4cc7cdf35c5f ("ARM: at91/dt: add i2c1 declaration to sama5d4")
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/boot/dts/sama5d4.dtsi |    8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- a/arch/arm/boot/dts/sama5d4.dtsi
++++ b/arch/arm/boot/dts/sama5d4.dtsi
+@@ -939,11 +939,11 @@
+                               reg = <0xf8018000 0x4000>;
+                               interrupts = <33 IRQ_TYPE_LEVEL_HIGH 6>;
+                               dmas = <&dma1
+-                                      (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1))
+-                                      AT91_XDMAC_DT_PERID(4)>,
++                                      (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
++                                      | AT91_XDMAC_DT_PERID(4))>,
+                                      <&dma1
+-                                      (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1))
+-                                      AT91_XDMAC_DT_PERID(5)>;
++                                      (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
++                                      | AT91_XDMAC_DT_PERID(5))>;
+                               dma-names = "tx", "rx";
+                               pinctrl-names = "default";
+                               pinctrl-0 = <&pinctrl_i2c1>;
diff --git a/queue-4.3/arm-at91-pm-at91_pm_suspend_in_sram-must-be-8-byte-aligned.patch b/queue-4.3/arm-at91-pm-at91_pm_suspend_in_sram-must-be-8-byte-aligned.patch
new file mode 100644 (file)
index 0000000..d045b1c
--- /dev/null
@@ -0,0 +1,33 @@
+From 5fcf8d1a0e84792b2bc44922c5d833dab96a9c1e Mon Sep 17 00:00:00 2001
+From: Patrick Doyle <pdoyle@irobot.com>
+Date: Fri, 16 Oct 2015 12:39:05 +0200
+Subject: ARM: at91: pm: at91_pm_suspend_in_sram() must be 8-byte aligned
+
+From: Patrick Doyle <pdoyle@irobot.com>
+
+commit 5fcf8d1a0e84792b2bc44922c5d833dab96a9c1e upstream.
+
+fncpy() requires that the source and the destination are both 8-byte
+aligned.
+
+Signed-off-by: Patrick Doyle <pdoyle@irobot.com>
+Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
+Fixes: d94e688cae56 ("ARM: at91/pm: move the copying the sram function to the sram initialization phase")
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/mach-at91/pm_suspend.S |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/arch/arm/mach-at91/pm_suspend.S
++++ b/arch/arm/mach-at91/pm_suspend.S
+@@ -80,6 +80,8 @@ tmp2 .req    r5
+  *    @r2: base address of second SDRAM Controller or 0 if not present
+  *    @r3: pm information
+  */
++/* at91_pm_suspend_in_sram must be 8-byte aligned per the requirements of fncpy() */
++      .align 3
+ ENTRY(at91_pm_suspend_in_sram)
+       /* Save registers on stack */
+       stmfd   sp!, {r4 - r12, lr}
diff --git a/queue-4.3/arm-common-edma-fix-channel-parameter-for-irq-callbacks.patch b/queue-4.3/arm-common-edma-fix-channel-parameter-for-irq-callbacks.patch
new file mode 100644 (file)
index 0000000..346132f
--- /dev/null
@@ -0,0 +1,42 @@
+From 696d8b70c09dd421c4d037fab04341e5b30585cf Mon Sep 17 00:00:00 2001
+From: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Date: Wed, 14 Oct 2015 14:42:43 +0300
+Subject: ARM: common: edma: Fix channel parameter for irq callbacks
+
+From: Peter Ujfalusi <peter.ujfalusi@ti.com>
+
+commit 696d8b70c09dd421c4d037fab04341e5b30585cf upstream.
+
+In case when the interrupt happened for the second eDMA the channel
+number was incorrectly passed to the client driver.
+
+Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Signed-off-by: Vinod Koul <vinod.koul@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/common/edma.c |    6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+--- a/arch/arm/common/edma.c
++++ b/arch/arm/common/edma.c
+@@ -406,7 +406,8 @@ static irqreturn_t dma_irq_handler(int i
+                                       BIT(slot));
+                       if (edma_cc[ctlr]->intr_data[channel].callback)
+                               edma_cc[ctlr]->intr_data[channel].callback(
+-                                      channel, EDMA_DMA_COMPLETE,
++                                      EDMA_CTLR_CHAN(ctlr, channel),
++                                      EDMA_DMA_COMPLETE,
+                                       edma_cc[ctlr]->intr_data[channel].data);
+               }
+       } while (sh_ipr);
+@@ -460,7 +461,8 @@ static irqreturn_t dma_ccerr_handler(int
+                                       if (edma_cc[ctlr]->intr_data[k].
+                                                               callback) {
+                                               edma_cc[ctlr]->intr_data[k].
+-                                              callback(k,
++                                              callback(
++                                              EDMA_CTLR_CHAN(ctlr, k),
+                                               EDMA_DMA_CC_ERROR,
+                                               edma_cc[ctlr]->intr_data
+                                               [k].data);
diff --git a/queue-4.3/arm-dts-add-vbus-regulator-to-usb2-phy-nodes-on-exynos3250-exynos4210-and-exynos4412-boards.patch b/queue-4.3/arm-dts-add-vbus-regulator-to-usb2-phy-nodes-on-exynos3250-exynos4210-and-exynos4412-boards.patch
new file mode 100644 (file)
index 0000000..34dc528
--- /dev/null
@@ -0,0 +1,95 @@
+From 4ae9a4c66cdcb8b5d4e4d904846f1b450dbcabb4 Mon Sep 17 00:00:00 2001
+From: Marek Szyprowski <m.szyprowski@samsung.com>
+Date: Fri, 21 Aug 2015 14:38:38 +0200
+Subject: ARM: dts: Add vbus regulator to USB2 phy nodes on exynos3250, exynos4210 and exynos4412 boards
+
+From: Marek Szyprowski <m.szyprowski@samsung.com>
+
+commit 4ae9a4c66cdcb8b5d4e4d904846f1b450dbcabb4 upstream.
+
+Exynos USB2 PHY driver now supports VBUS regulator, so add it to all
+boards which have it available. This also fixes commit
+7eec1266751b ("ARM: dts: Add Maxim 77693 PMIC to exynos4412-trats2"),
+which added new regulators to Trats2 board, but without linking them to
+the consumers.
+
+Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
+Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
+Fixes: 7eec1266751b ("ARM: dts: Add Maxim 77693 PMIC to exynos4412-trats2")
+Signed-off-by: Kukjin Kim <kgene@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/boot/dts/exynos3250-monk.dts           |    1 +
+ arch/arm/boot/dts/exynos3250-rinato.dts         |    1 +
+ arch/arm/boot/dts/exynos4210-trats.dts          |    2 +-
+ arch/arm/boot/dts/exynos4210-universal_c210.dts |    2 +-
+ arch/arm/boot/dts/exynos4412-trats2.dts         |    1 +
+ 5 files changed, 5 insertions(+), 2 deletions(-)
+
+--- a/arch/arm/boot/dts/exynos3250-monk.dts
++++ b/arch/arm/boot/dts/exynos3250-monk.dts
+@@ -161,6 +161,7 @@
+ };
+ &exynos_usbphy {
++      vbus-supply = <&safeout_reg>;
+       status = "okay";
+ };
+--- a/arch/arm/boot/dts/exynos3250-rinato.dts
++++ b/arch/arm/boot/dts/exynos3250-rinato.dts
+@@ -153,6 +153,7 @@
+ &exynos_usbphy {
+       status = "okay";
++      vbus-supply = <&safeout_reg>;
+ };
+ &hsotg {
+--- a/arch/arm/boot/dts/exynos4210-trats.dts
++++ b/arch/arm/boot/dts/exynos4210-trats.dts
+@@ -251,6 +251,7 @@
+ &exynos_usbphy {
+       status = "okay";
++      vbus-supply = <&safe1_sreg>;
+ };
+ &fimd {
+@@ -448,7 +449,6 @@
+                       safe1_sreg: ESAFEOUT1 {
+                            regulator-name = "SAFEOUT1";
+-                           regulator-always-on;
+                       };
+                       safe2_sreg: ESAFEOUT2 {
+--- a/arch/arm/boot/dts/exynos4210-universal_c210.dts
++++ b/arch/arm/boot/dts/exynos4210-universal_c210.dts
+@@ -248,6 +248,7 @@
+ &exynos_usbphy {
+       status = "okay";
++      vbus-supply = <&safeout1_reg>;
+ };
+ &fimd {
+@@ -486,7 +487,6 @@
+                       safeout1_reg: ESAFEOUT1 {
+                               regulator-name = "SAFEOUT1";
+-                              regulator-always-on;
+                       };
+                       safeout2_reg: ESAFEOUT2 {
+--- a/arch/arm/boot/dts/exynos4412-trats2.dts
++++ b/arch/arm/boot/dts/exynos4412-trats2.dts
+@@ -391,6 +391,7 @@
+ };
+ &exynos_usbphy {
++      vbus-supply = <&esafeout1_reg>;
+       status = "okay";
+ };
diff --git a/queue-4.3/arm-dts-fix-wlan-regression-on-omap5-uevm.patch b/queue-4.3/arm-dts-fix-wlan-regression-on-omap5-uevm.patch
new file mode 100644 (file)
index 0000000..3cfa1e9
--- /dev/null
@@ -0,0 +1,154 @@
+From 0efc898a9bea7a2e8e583c6efab0e19dc7093078 Mon Sep 17 00:00:00 2001
+From: Tony Lindgren <tony@atomide.com>
+Date: Fri, 16 Oct 2015 12:32:32 -0700
+Subject: ARM: dts: Fix WLAN regression on omap5-uevm
+
+From: Tony Lindgren <tony@atomide.com>
+
+commit 0efc898a9bea7a2e8e583c6efab0e19dc7093078 upstream.
+
+Commit 99f84cae43df ("ARM: dts: add wl12xx/wl18xx bindings") added
+device tree bindings for the TI WLAN SDIO on many omap variants.
+
+I recall wondering how come omap5-uevm did not have the WLAN
+added and this issue has been bugging me for a while now, and
+I finally tracked it down to a bad pinmux regression, and a missing
+deferred probe handling for the 32k clock from palmas that's
+requested by twl6040.
+
+Basically 392adaf796b9 ("ARM: dts: omap5-evm: Add mcspi data")
+added pin muxing for mcspi4 that conflicts with the onboard
+WLAN. While some omap5-uevm don't have WLAN populated, the
+pins are not reused for other devices. And as the SDIO bus
+should be probed, let's try to enable WLAN by default.
+
+Let's fix the regression and add the WLAN configuration as
+done for the other boards in 99f84cae43df ("ARM: dts: add
+wl12xx/wl18xx bindings"). And let's use the new MMC pwrseq for
+the 32k clock as suggested by Javier Martinez Canillas
+<javier@dowhile0.org>.
+
+Note that without a related deferred probe fix for twl6040,
+the 32k clock is not initialized if palmas-clk is a module
+and twl6040 is built-in.
+
+Let's also use the generic "non-removable" instead of the
+legacy "ti,non-removable" property while at it.
+
+And finally, note that omap5 seems to require WAKEUP_EN for
+the WLAN GPIO interrupt.
+
+Fixes: 392adaf796b9 ("ARM: dts: omap5-evm: Add mcspi data")
+Cc: Sourav Poddar <sourav.poddar@ti.com>
+Signed-off-by: Tony Lindgren <tony@atomide.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/boot/dts/omap5-uevm.dts |   66 ++++++++++++++++++++++++++++++++-------
+ 1 file changed, 55 insertions(+), 11 deletions(-)
+
+--- a/arch/arm/boot/dts/omap5-uevm.dts
++++ b/arch/arm/boot/dts/omap5-uevm.dts
+@@ -31,6 +31,24 @@
+               regulator-max-microvolt = <3000000>;
+       };
++      mmc3_pwrseq: sdhci0_pwrseq {
++              compatible = "mmc-pwrseq-simple";
++              clocks = <&clk32kgaudio>;
++              clock-names = "ext_clock";
++      };
++
++      vmmcsdio_fixed: fixedregulator-mmcsdio {
++              compatible = "regulator-fixed";
++              regulator-name = "vmmcsdio_fixed";
++              regulator-min-microvolt = <1800000>;
++              regulator-max-microvolt = <1800000>;
++              gpio = <&gpio5 12 GPIO_ACTIVE_HIGH>;    /* gpio140 WLAN_EN */
++              enable-active-high;
++              startup-delay-us = <70000>;
++              pinctrl-names = "default";
++              pinctrl-0 = <&wlan_pins>;
++      };
++
+       /* HS USB Host PHY on PORT 2 */
+       hsusb2_phy: hsusb2_phy {
+               compatible = "usb-nop-xceiv";
+@@ -197,12 +215,20 @@
+               >;
+       };
+-      mcspi4_pins: pinmux_mcspi4_pins {
++      mmc3_pins: pinmux_mmc3_pins {
++              pinctrl-single,pins = <
++                      OMAP5_IOPAD(0x01a4, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_clk */
++                      OMAP5_IOPAD(0x01a6, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_cmd */
++                      OMAP5_IOPAD(0x01a8, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data0 */
++                      OMAP5_IOPAD(0x01aa, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data1 */
++                      OMAP5_IOPAD(0x01ac, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data2 */
++                      OMAP5_IOPAD(0x01ae, PIN_INPUT_PULLUP | MUX_MODE0) /* wlsdio_data3 */
++              >;
++      };
++
++      wlan_pins: pinmux_wlan_pins {
+               pinctrl-single,pins = <
+-                      0x164 (PIN_INPUT | MUX_MODE1)           /*  mcspi4_clk */
+-                      0x168 (PIN_INPUT | MUX_MODE1)           /*  mcspi4_simo */
+-                      0x16a (PIN_INPUT | MUX_MODE1)           /*  mcspi4_somi */
+-                      0x16c (PIN_INPUT | MUX_MODE1)           /*  mcspi4_cs0 */
++                      OMAP5_IOPAD(0x1bc, PIN_OUTPUT | MUX_MODE6) /* mcspi1_clk.gpio5_140 */
+               >;
+       };
+@@ -276,6 +302,12 @@
+                       0x1A (PIN_OUTPUT | MUX_MODE0) /* fref_clk1_out, USB hub clk */
+               >;
+       };
++
++      wlcore_irq_pin: pinmux_wlcore_irq_pin {
++              pinctrl-single,pins = <
++                      OMAP5_IOPAD(0x040, WAKEUP_EN | PIN_INPUT_PULLUP | MUX_MODE6)    /* llia_wakereqin.gpio1_wk14 */
++              >;
++      };
+ };
+ &mmc1 {
+@@ -290,8 +322,25 @@
+ };
+ &mmc3 {
++      vmmc-supply = <&vmmcsdio_fixed>;
++      mmc-pwrseq = <&mmc3_pwrseq>;
+       bus-width = <4>;
+-      ti,non-removable;
++      non-removable;
++      cap-power-off-card;
++      pinctrl-names = "default";
++      pinctrl-0 = <&mmc3_pins &wlcore_irq_pin>;
++      interrupts-extended = <&gic GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH
++                             &omap5_pmx_core 0x168>;
++
++      #address-cells = <1>;
++      #size-cells = <0>;
++      wlcore: wlcore@2 {
++              compatible = "ti,wl1271";
++              reg = <2>;
++              interrupt-parent = <&gpio1>;
++              interrupts = <14 IRQ_TYPE_LEVEL_HIGH>;  /* gpio 14 */
++              ref-clock-frequency = <26000000>;
++      };
+ };
+ &mmc4 {
+@@ -598,11 +647,6 @@
+       pinctrl-0 = <&mcspi3_pins>;
+ };
+-&mcspi4 {
+-      pinctrl-names = "default";
+-      pinctrl-0 = <&mcspi4_pins>;
+-};
+-
+ &uart1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&uart1_pins>;
diff --git a/queue-4.3/arm-dts-imx27.dtsi-change-the-clock-information-for-usb.patch b/queue-4.3/arm-dts-imx27.dtsi-change-the-clock-information-for-usb.patch
new file mode 100644 (file)
index 0000000..c4388e7
--- /dev/null
@@ -0,0 +1,91 @@
+From facf47ee6b4d07d43c3bfd6f0762f1b28f64703a Mon Sep 17 00:00:00 2001
+From: Peter Chen <peter.chen@freescale.com>
+Date: Wed, 16 Sep 2015 09:35:06 +0800
+Subject: ARM: dts: imx27.dtsi: change the clock information for usb
+
+From: Peter Chen <peter.chen@freescale.com>
+
+commit facf47ee6b4d07d43c3bfd6f0762f1b28f64703a upstream.
+
+For imx27, it needs three clocks to let the controller work,
+the old code is wrong, and usbmisc has not included clock handling
+code any more. Without this patch, it will cause below data
+abort when accessing usbmisc registers.
+
+usbcore: registered new interface driver usb-storage
+Unhandled fault: external abort on non-linefetch (0x008) at 0xf4424600
+pgd = c0004000
+[f4424600] *pgd=10000452(bad)
+Internal error: : 8 [#1] PREEMPT ARM
+Modules linked in:
+CPU: 0 PID: 1 Comm: swapper Not tainted 4.1.0-next-20150701-dirty #3089
+Hardware name: Freescale i.MX27 (Device Tree Support)
+task: c7832b60 ti: c783e000 task.ti: c783e000
+PC is at usbmisc_imx27_init+0x4c/0xbc
+LR is at usbmisc_imx27_init+0x40/0xbc
+pc : [<c03cb5c0>]    lr : [<c03cb5b4>]    psr: 60000093
+sp : c783fe08  ip : 00000000  fp : 00000000
+r10: c0576434  r9 : 0000009c  r8 : c7a773a0
+r7 : 01000000  r6 : 60000013  r5 : c7a776f0  r4 : c7a773f0
+r3 : f4424600  r2 : 00000000  r1 : 00000001  r0 : 00000001
+Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
+Control: 0005317f  Table: a0004000  DAC: 00000017
+Process swapper (pid: 1, stack limit = 0xc783e190)
+Stack: (0xc783fe08 to 0xc7840000)
+
+Signed-off-by: Peter Chen <peter.chen@freescale.com>
+Reported-by: Fabio Estevam <fabio.estevam@freescale.com>
+Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
+Acked-by: Shawn Guo <shawnguo@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/boot/dts/imx27.dtsi |   16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+--- a/arch/arm/boot/dts/imx27.dtsi
++++ b/arch/arm/boot/dts/imx27.dtsi
+@@ -486,7 +486,10 @@
+                               compatible = "fsl,imx27-usb";
+                               reg = <0x10024000 0x200>;
+                               interrupts = <56>;
+-                              clocks = <&clks IMX27_CLK_USB_IPG_GATE>;
++                              clocks = <&clks IMX27_CLK_USB_IPG_GATE>,
++                                      <&clks IMX27_CLK_USB_AHB_GATE>,
++                                      <&clks IMX27_CLK_USB_DIV>;
++                              clock-names = "ipg", "ahb", "per";
+                               fsl,usbmisc = <&usbmisc 0>;
+                               status = "disabled";
+                       };
+@@ -495,7 +498,10 @@
+                               compatible = "fsl,imx27-usb";
+                               reg = <0x10024200 0x200>;
+                               interrupts = <54>;
+-                              clocks = <&clks IMX27_CLK_USB_IPG_GATE>;
++                              clocks = <&clks IMX27_CLK_USB_IPG_GATE>,
++                                      <&clks IMX27_CLK_USB_AHB_GATE>,
++                                      <&clks IMX27_CLK_USB_DIV>;
++                              clock-names = "ipg", "ahb", "per";
+                               fsl,usbmisc = <&usbmisc 1>;
+                               dr_mode = "host";
+                               status = "disabled";
+@@ -505,7 +511,10 @@
+                               compatible = "fsl,imx27-usb";
+                               reg = <0x10024400 0x200>;
+                               interrupts = <55>;
+-                              clocks = <&clks IMX27_CLK_USB_IPG_GATE>;
++                              clocks = <&clks IMX27_CLK_USB_IPG_GATE>,
++                                      <&clks IMX27_CLK_USB_AHB_GATE>,
++                                      <&clks IMX27_CLK_USB_DIV>;
++                              clock-names = "ipg", "ahb", "per";
+                               fsl,usbmisc = <&usbmisc 2>;
+                               dr_mode = "host";
+                               status = "disabled";
+@@ -515,7 +524,6 @@
+                               #index-cells = <1>;
+                               compatible = "fsl,imx27-usbmisc";
+                               reg = <0x10024600 0x200>;
+-                              clocks = <&clks IMX27_CLK_USB_AHB_GATE>;
+                       };
+                       sahara2: sahara@10025000 {
diff --git a/queue-4.3/arm-dts-sun6i-hummingbird-fix-vdd-cpu-and-vdd-gpu.patch b/queue-4.3/arm-dts-sun6i-hummingbird-fix-vdd-cpu-and-vdd-gpu.patch
new file mode 100644 (file)
index 0000000..24ab4f3
--- /dev/null
@@ -0,0 +1,48 @@
+From 976d84fce6aa1e5bf92b8d06d69014ac45fd5fad Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens@csie.org>
+Date: Sat, 10 Oct 2015 22:48:56 +0800
+Subject: ARM: dts: sun6i: hummingbird: Fix VDD-CPU and VDD-GPU
+ regulator names
+
+From: Chen-Yu Tsai <wens@csie.org>
+
+commit 976d84fce6aa1e5bf92b8d06d69014ac45fd5fad upstream.
+
+The VDD-CPU and VDD-GPU regulators were incorrectly swapped.
+
+Fixes: bab03561224ba ("ARM: dts: sun6i: hummingbird: Add AXP221 regulator
+       nodes")
+
+Signed-off-by: Chen-Yu Tsai <wens@csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/boot/dts/sun6i-a31-hummingbird.dts |    8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- a/arch/arm/boot/dts/sun6i-a31-hummingbird.dts
++++ b/arch/arm/boot/dts/sun6i-a31-hummingbird.dts
+@@ -184,18 +184,18 @@
+                               regulator-name = "vcc-3v0";
+                       };
+-                      vdd_cpu: dcdc2 {
++                      vdd_gpu: dcdc2 {
+                               regulator-always-on;
+                               regulator-min-microvolt = <700000>;
+                               regulator-max-microvolt = <1320000>;
+-                              regulator-name = "vdd-cpu";
++                              regulator-name = "vdd-gpu";
+                       };
+-                      vdd_gpu: dcdc3 {
++                      vdd_cpu: dcdc3 {
+                               regulator-always-on;
+                               regulator-min-microvolt = <700000>;
+                               regulator-max-microvolt = <1320000>;
+-                              regulator-name = "vdd-gpu";
++                              regulator-name = "vdd-cpu";
+                       };
+                       vdd_sys_dll: dcdc4 {
diff --git a/queue-4.3/arm-pxa-remove-incorrect-__init-annotation-on-pxa27x_set_pwrmode.patch b/queue-4.3/arm-pxa-remove-incorrect-__init-annotation-on-pxa27x_set_pwrmode.patch
new file mode 100644 (file)
index 0000000..7a6f387
--- /dev/null
@@ -0,0 +1,54 @@
+From 54c09889bff6d99c8733eed4a26c9391b177c88b Mon Sep 17 00:00:00 2001
+From: Arnd Bergmann <arnd@arndb.de>
+Date: Mon, 12 Oct 2015 15:46:08 +0200
+Subject: ARM: pxa: remove incorrect __init annotation on pxa27x_set_pwrmode
+
+From: Arnd Bergmann <arnd@arndb.de>
+
+commit 54c09889bff6d99c8733eed4a26c9391b177c88b upstream.
+
+The z2 machine calls pxa27x_set_pwrmode() in order to power off
+the machine, but this function gets discarded early at boot because
+it is marked __init, as pointed out by kbuild:
+
+WARNING: vmlinux.o(.text+0x145c4): Section mismatch in reference from the function z2_power_off() to the function .init.text:pxa27x_set_pwrmode()
+The function z2_power_off() references
+the function __init pxa27x_set_pwrmode().
+This is often because z2_power_off lacks a __init
+annotation or the annotation of pxa27x_set_pwrmode is wrong.
+
+This removes the __init section modifier to fix rebooting and the
+build error.
+
+Signed-off-by: Arnd Bergmann <arnd@arndb.de>
+Fixes: ba4a90a6d86a ("ARM: pxa/z2: fix building error of pxa27x_cpu_suspend() no longer available")
+Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/mach-pxa/include/mach/pxa27x.h |    2 +-
+ arch/arm/mach-pxa/pxa27x.c              |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+--- a/arch/arm/mach-pxa/include/mach/pxa27x.h
++++ b/arch/arm/mach-pxa/include/mach/pxa27x.h
+@@ -19,7 +19,7 @@
+ #define ARB_CORE_PARK         (1<<24)    /* Be parked with core when idle */
+ #define ARB_LOCK_FLAG         (1<<23)    /* Only Locking masters gain access to the bus */
+-extern int __init pxa27x_set_pwrmode(unsigned int mode);
++extern int pxa27x_set_pwrmode(unsigned int mode);
+ extern void pxa27x_cpu_pm_enter(suspend_state_t state);
+ #endif /* __MACH_PXA27x_H */
+--- a/arch/arm/mach-pxa/pxa27x.c
++++ b/arch/arm/mach-pxa/pxa27x.c
+@@ -84,7 +84,7 @@ EXPORT_SYMBOL_GPL(pxa27x_configure_ac97r
+  */
+ static unsigned int pwrmode = PWRMODE_SLEEP;
+-int __init pxa27x_set_pwrmode(unsigned int mode)
++int pxa27x_set_pwrmode(unsigned int mode)
+ {
+       switch (mode) {
+       case PWRMODE_SLEEP:
diff --git a/queue-4.3/arm-tegra-paz00-use-con_id-s-to-refer-gpio-s-in-gpiod_lookup-table.patch b/queue-4.3/arm-tegra-paz00-use-con_id-s-to-refer-gpio-s-in-gpiod_lookup-table.patch
new file mode 100644 (file)
index 0000000..d9eab8e
--- /dev/null
@@ -0,0 +1,41 @@
+From e77b675f8786f38d40fc1562e1275875daf67fef Mon Sep 17 00:00:00 2001
+From: Dmitry Osipenko <digetx@gmail.com>
+Date: Tue, 30 Jun 2015 17:15:50 +0300
+Subject: ARM: tegra: paz00: use con_id's to refer GPIO's in gpiod_lookup table
+
+From: Dmitry Osipenko <digetx@gmail.com>
+
+commit e77b675f8786f38d40fc1562e1275875daf67fef upstream.
+
+Commit 72daceb9a10a ("net: rfkill: gpio: Add default GPIO driver mappings
+for ACPI") removed possibility to request GPIO by table index for non-ACPI
+platforms without changing its users. As result "shutdown" GPIO request
+will fail if request for "reset" GPIO succeeded or "reset" will be
+requested instead of "shutdown" if "reset" wasn't defined. Fix it by
+making gpiod_lookup_table use con_id's instead of indexes.
+
+Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
+Fixes: 72daceb (net: rfkill: gpio: Add default GPIO driver mappings for ACPI)
+Acked-by: Alexandre Courbot <acourbot@nvidia.com>
+Reviewed-by: Marc Dietrich <marvin24@gmx.de>
+Tested-by: Marc Dietrich <marvin24@gmx.de>
+Signed-off-by: Thierry Reding <treding@nvidia.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/mach-tegra/board-paz00.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/arch/arm/mach-tegra/board-paz00.c
++++ b/arch/arm/mach-tegra/board-paz00.c
+@@ -39,8 +39,8 @@ static struct platform_device wifi_rfkil
+ static struct gpiod_lookup_table wifi_gpio_lookup = {
+       .dev_id = "rfkill_gpio",
+       .table = {
+-              GPIO_LOOKUP_IDX("tegra-gpio", 25, NULL, 0, 0),
+-              GPIO_LOOKUP_IDX("tegra-gpio", 85, NULL, 1, 0),
++              GPIO_LOOKUP("tegra-gpio", 25, "reset", 0),
++              GPIO_LOOKUP("tegra-gpio", 85, "shutdown", 0),
+               { },
+       },
+ };
index 6e15d23ae0cc0bb26d13ebed4ceae997777ccc45..2923a712def1249b040ba38f82e1bf564ccf9538 100644 (file)
@@ -17,3 +17,14 @@ tun_dst-fix-potential-null-dereference.patch
 packet-race-condition-in-packet_bind.patch
 bonding-fix-panic-on-non-arphrd_ether-enslave-failure.patch
 net-fix-a-race-in-dst_release.patch
+arm-8426-1-dma-mapping-add-missing-range-check-in-dma_mmap.patch
+arm-8427-1-dma-mapping-add-support-for-offset-parameter-in-dma_mmap.patch
+arm-common-edma-fix-channel-parameter-for-irq-callbacks.patch
+arm-dts-imx27.dtsi-change-the-clock-information-for-usb.patch
+arm-tegra-paz00-use-con_id-s-to-refer-gpio-s-in-gpiod_lookup-table.patch
+arm-at91-dt-corrections-to-i2c1-declaration-to-sama5d4.patch
+arm-at91-pm-at91_pm_suspend_in_sram-must-be-8-byte-aligned.patch
+arm-dts-add-vbus-regulator-to-usb2-phy-nodes-on-exynos3250-exynos4210-and-exynos4412-boards.patch
+arm-dts-fix-wlan-regression-on-omap5-uevm.patch
+arm-dts-sun6i-hummingbird-fix-vdd-cpu-and-vdd-gpu.patch
+arm-pxa-remove-incorrect-__init-annotation-on-pxa27x_set_pwrmode.patch