summaryrefslogtreecommitdiffstats
path: root/arm-imx6-hummingboard2.patch
diff options
context:
space:
mode:
authorPeter Robinson <pbrobinson@gmail.com>2017-04-06 15:51:42 +0100
committerPeter Robinson <pbrobinson@gmail.com>2017-04-06 15:51:42 +0100
commit96b951dd144a041ec6e9ae8fa176eab7dedb3368 (patch)
tree77f18b18ca7caf48d65d53f2f57d331af65afb5e /arm-imx6-hummingboard2.patch
parentf94fde04fcfd727fa9521e45aeed1e3861384ef5 (diff)
downloadkernel-96b951dd144a041ec6e9ae8fa176eab7dedb3368.tar.gz
kernel-96b951dd144a041ec6e9ae8fa176eab7dedb3368.tar.xz
kernel-96b951dd144a041ec6e9ae8fa176eab7dedb3368.zip
Rebase to new HummingBoard 2 DT patch, Minor ARM cleanups.
Enable Serial device TTY port controller As the TTY core is built-in only, this has the side effect of making serdev built-in as well. This is needed for devices such as Bluetooth, WiFi, GPS and NFC connected to UARTs on host processors.
Diffstat (limited to 'arm-imx6-hummingboard2.patch')
-rw-r--r--arm-imx6-hummingboard2.patch407
1 files changed, 288 insertions, 119 deletions
diff --git a/arm-imx6-hummingboard2.patch b/arm-imx6-hummingboard2.patch
index 6b1186073..bcb93214e 100644
--- a/arm-imx6-hummingboard2.patch
+++ b/arm-imx6-hummingboard2.patch
@@ -1,23 +1,28 @@
-From 1f4fd839f959f821d5dd3feb608a900ae5f32ade Mon Sep 17 00:00:00 2001
+From e9e601215d294d473a593641b1ecfd1fa4586a90 Mon Sep 17 00:00:00 2001
From: Peter Robinson <pbrobinson@gmail.com>
-Date: Fri, 20 Jan 2017 08:32:55 +0000
-Subject: [PATCH] Add support for Hummingobard2 (Edge/Gate)
+Date: Thu, 6 Apr 2017 13:52:54 +0100
+Subject: [PATCH 1/4] [RFC,v2,1/4] ARM: dts: imx6qdl: add HummingBoard2 boards
-http://www.spinics.net/lists/arm-kernel/msg552554.html
+From: Jon Nettleton <jon@solid-run.com>
-Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
+This adds support for the Hummingboard Gate and Edge devices from
+SolidRun.
+
+Signed-off-by: Jon Nettleton <jon@solid-run.com>
+Signed-off-by: Rabeeh Khoury <rabeeh@solid-run.com>
+Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
---
arch/arm/boot/dts/Makefile | 2 +
arch/arm/boot/dts/imx6dl-hummingboard2.dts | 52 +++
arch/arm/boot/dts/imx6q-hummingboard2.dts | 60 +++
- arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 562 +++++++++++++++++++++++++++
- 4 files changed, 676 insertions(+)
+ arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 543 +++++++++++++++++++++++++++
+ 4 files changed, 657 insertions(+)
create mode 100644 arch/arm/boot/dts/imx6dl-hummingboard2.dts
create mode 100644 arch/arm/boot/dts/imx6q-hummingboard2.dts
create mode 100644 arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
-index 0118084..ccdff66 100644
+index 011808490fed..ccdff6650541 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -353,6 +353,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
@@ -38,7 +43,7 @@ index 0118084..ccdff66 100644
imx6q-marsboard.dtb \
diff --git a/arch/arm/boot/dts/imx6dl-hummingboard2.dts b/arch/arm/boot/dts/imx6dl-hummingboard2.dts
new file mode 100644
-index 0000000..990b505
+index 000000000000..990b5050de5b
--- /dev/null
+++ b/arch/arm/boot/dts/imx6dl-hummingboard2.dts
@@ -0,0 +1,52 @@
@@ -96,7 +101,7 @@ index 0000000..990b505
+};
diff --git a/arch/arm/boot/dts/imx6q-hummingboard2.dts b/arch/arm/boot/dts/imx6q-hummingboard2.dts
new file mode 100644
-index 0000000..f5eec91
+index 000000000000..f5eec9163bb8
--- /dev/null
+++ b/arch/arm/boot/dts/imx6q-hummingboard2.dts
@@ -0,0 +1,60 @@
@@ -162,10 +167,10 @@ index 0000000..f5eec91
+};
diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
new file mode 100644
-index 0000000..66098a5
+index 000000000000..11b63f6f2b89
--- /dev/null
+++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
-@@ -0,0 +1,562 @@
+@@ -0,0 +1,543 @@
+/*
+ * Device Tree file for SolidRun HummingBoard2
+ * Copyright (C) 2015 Rabeeh Khoury <rabeeh@solid-run.com>
@@ -180,12 +185,12 @@ index 0000000..66098a5
+ * published by the Free Software Foundation; either version 2 of the
+ * License.
+ *
-+ * This file is distributed in the hope that it will be useful
++ * This file is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
-+ * Or, alternatively
++ * Or, alternatively,
+ *
+ * b) Permission is hereby granted, free of charge, to any person
+ * obtaining a copy of this software and associated documentation
@@ -199,11 +204,11 @@ index 0000000..66098a5
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
-+ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
@@ -218,88 +223,77 @@ index 0000000..66098a5
+
+ ir_recv: ir-receiver {
+ compatible = "gpio-ir-receiver";
-+ gpios = <&gpio7 9 GPIO_ACTIVE_LOW>;
++ gpios = <&gpio7 9 1>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hummingboard2_gpio7_9>;
+ linux,rc-map-name = "rc-rc6-mce";
+ };
+
-+ regulators {
-+ compatible = "simple-bus";
-+
-+ reg_3p3v: 3p3v {
-+ compatible = "regulator-fixed";
-+ regulator-name = "3P3V";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-always-on;
-+ };
++ usdhc2_pwrseq: usdhc2-pwrseq {
++ compatible = "mmc-pwrseq-simple";
++ reset-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>;
++ };
+
-+ reg_1p8v: 1p8v {
-+ compatible = "regulator-fixed";
-+ regulator-name = "1P8V";
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-always-on;
-+ };
++ reg_3p3v: regulator-3p3v {
++ compatible = "regulator-fixed";
++ regulator-name = "3P3V";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-always-on;
++ };
+
-+ reg_usdhc2_vmmc: reg-usdhc2-vmmc {
-+ compatible = "regulator-fixed";
-+ gpio = <&gpio4 30 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pinctrl_hummingboard2_vmmc>;
-+ regulator-boot-on;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-name = "usdhc2_vmmc";
-+ startup-delay-us = <1000>;
-+ };
++ reg_1p8v: regulator-1p8v {
++ compatible = "regulator-fixed";
++ regulator-name = "1P8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-always-on;
++ };
+
-+ reg_usbh1_vbus: usb-h1-vbus {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pinctrl_hummingboard2_usbh1_vbus>;
-+ regulator-name = "usb_h1_vbus";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ };
++ reg_usbh1_vbus: regulator-usb-h1-vbus {
++ compatible = "regulator-fixed";
++ enable-active-high;
++ gpio = <&gpio1 0 0>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_hummingboard2_usbh1_vbus>;
++ regulator-name = "usb_h1_vbus";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ };
+
-+ reg_usbotg_vbus: usb-otg-vbus {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pinctrl_hummingboard2_usbotg_vbus>;
-+ regulator-name = "usb_otg_vbus";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ };
++ reg_usbotg_vbus: regulator-usb-otg-vbus {
++ compatible = "regulator-fixed";
++ enable-active-high;
++ gpio = <&gpio3 22 0>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_hummingboard2_usbotg_vbus>;
++ regulator-name = "usb_otg_vbus";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ };
+
-+ reg_usbh2_vbus: usb-h2-vbus {
-+ compatible = "regulator-gpio";
-+ enable-active-high;
-+ enable-gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pinctrl_hummingboard2_usbh2_vbus>;
-+ regulator-name = "usb_h2_vbus";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ regulator-boot-on;
-+ };
++ reg_usbh2_vbus: regulator-usb-h2-vbus {
++ compatible = "regulator-gpio";
++ enable-active-high;
++ enable-gpio = <&gpio2 13 0>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_hummingboard2_usbh2_vbus>;
++ regulator-name = "usb_h2_vbus";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ regulator-boot-on;
++ };
+
-+ reg_usbh3_vbus: usb-h3-vbus {
-+ compatible = "regulator-gpio";
-+ enable-active-high;
-+ enable-gpio = <&gpio7 10 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pinctrl_hummingboard2_usbh3_vbus>;
-+ regulator-name = "usb_h3_vbus";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ regulator-boot-on;
-+ };
++ reg_usbh3_vbus: regulator-usb-h3-vbus {
++ compatible = "regulator-gpio";
++ enable-active-high;
++ enable-gpio = <&gpio7 10 0>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_hummingboard2_usbh3_vbus>;
++ regulator-name = "usb_h3_vbus";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ regulator-boot-on;
+ };
+
+ sound-sgtl5000 {
@@ -323,7 +317,6 @@ index 0000000..66098a5
+&ecspi2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hummingboard2_ecspi2>;
-+ fsl,spi-num-chipselects = <1>;
+ cs-gpios = <&gpio2 26 0>;
+ status = "okay";
+};
@@ -341,13 +334,13 @@ index 0000000..66098a5
+ pinctrl-0 = <&pinctrl_hummingboard2_i2c1>;
+ status = "okay";
+
-+ rtc: pcf8523@68 {
++ pcf8523: rtc@68 {
+ compatible = "nxp,pcf8523";
+ reg = <0x68>;
+ nxp,12p5_pf;
+ };
+
-+ sgtl5000: sgtl5000@0a {
++ sgtl5000: codec@0a {
+ clocks = <&clks IMX6QDL_CLK_CKO>;
+ compatible = "fsl,sgtl5000";
+ pinctrl-names = "default";
@@ -375,6 +368,7 @@ index 0000000..66098a5
+&iomuxc {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hog>;
++
+ hummingboard2 {
+ pinctrl_hog: hoggrp {
+ fsl,pins = <
@@ -474,6 +468,15 @@ index 0000000..66098a5
+ >;
+ };
+
++ pinctrl_hummingboard2_ecspi2: hummingboard2-ecspi2grp {
++ fsl,pins = <
++ MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1
++ MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1
++ MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1
++ MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1 /* CS */
++ >;
++ };
++
+ pinctrl_hummingboard2_gpio7_9: hummingboard2-gpio7_9 {
+ fsl,pins = <
+ MX6QDL_PAD_SD4_CMD__GPIO7_IO09 0x80000000
@@ -507,13 +510,13 @@ index 0000000..66098a5
+ >;
+ };
+
-+ pinctrl_hummingboard2_mipi: hummingboard2_mipi {
-+ fsl,pins = <
-+ MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x4001b8b1
-+ MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x4001b8b1
-+ MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x130b0
-+ >;
-+ };
++ pinctrl_hummingboard2_mipi: hummingboard2_mipi {
++ fsl,pins = <
++ MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x4001b8b1
++ MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x4001b8b1
++ MX6QDL_PAD_NANDF_CS2__CCM_CLKO2 0x130b0
++ >;
++ };
+
+ pinctrl_hummingboard2_pcie_reset: hummingboard2-pcie-reset {
+ fsl,pins = <
@@ -563,6 +566,7 @@ index 0000000..66098a5
+
+ pinctrl_hummingboard2_usdhc2_aux: hummingboard2-usdhc2-aux {
+ fsl,pins = <
++ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x13071
+ MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071
+ MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0
+ >;
@@ -601,12 +605,6 @@ index 0000000..66098a5
+ >;
+ };
+
-+ pinctrl_hummingboard2_vmmc: hummingboard2-vmmc {
-+ fsl,pins = <
-+ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071
-+ >;
-+ };
-+
+ pinctrl_hummingboard2_usdhc3: hummingboard2-usdhc3 {
+ fsl,pins = <
+ MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
@@ -629,15 +627,6 @@ index 0000000..66098a5
+ MX6QDL_PAD_EIM_D24__UART3_RX_DATA 0x40013000
+ >;
+ };
-+
-+ pinctrl_hummingboard2_ecspi2: hummingboard2-ecspi2grp {
-+ fsl,pins = <
-+ MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1
-+ MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1
-+ MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1
-+ MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1 /* CS */
-+ >;
-+ };
+ };
+};
+
@@ -652,9 +641,7 @@ index 0000000..66098a5
+
+&pcie {
+ pinctrl-names = "default";
-+ pinctrl-0 = <
-+ &pinctrl_hummingboard2_pcie_reset
-+ >;
++ pinctrl-0 = <&pinctrl_hummingboard2_pcie_reset>;
+ reset-gpio = <&gpio2 11 0>;
+ status = "okay";
+};
@@ -674,7 +661,6 @@ index 0000000..66098a5
+};
+
+&ssi1 {
-+ fsl,mode = "i2s-slave";
+ status = "okay";
+};
+
@@ -706,8 +692,8 @@ index 0000000..66098a5
+ &pinctrl_hummingboard2_usdhc2_aux
+ &pinctrl_hummingboard2_usdhc2_200mhz
+ >;
-+ vmmc-supply = <&reg_usdhc2_vmmc>;
-+ cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
++ mmc-pwrseq = <&usdhc2_pwrseq>;
++ cd-gpios = <&gpio1 4 0>;
+ status = "okay";
+};
+
@@ -729,5 +715,188 @@ index 0000000..66098a5
+ status = "okay";
+};
--
-2.7.4
+2.12.2
+
+From 3da2a99c4a8f19e846b19071441d2c6b88e00c06 Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel@arm.linux.org.uk>
+Date: Fri, 13 Jan 2017 14:45:30 +0000
+Subject: [PATCH 2/4] ARM: dts: imx6*-hummingboard2: fix SD card detect
+
+Fix the SD card detect signal, which was missing the polarity
+specification, and the pull-up necessary for proper signalling.
+
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+---
+ arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
+index 11b63f6f2b89..734487edf200 100644
+--- a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
+@@ -393,7 +393,7 @@
+
+ pinctrl_hummingboard2_usdhc2_aux: hummingboard2-usdhc2-aux {
+ fsl,pins = <
+- MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x13071
++ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071
+ MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071
+ MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0
+ >;
+@@ -520,7 +520,7 @@
+ &pinctrl_hummingboard2_usdhc2_200mhz
+ >;
+ mmc-pwrseq = <&usdhc2_pwrseq>;
+- cd-gpios = <&gpio1 4 0>;
++ cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
+ status = "okay";
+ };
+
+--
+2.12.2
+
+From 57b0103b600a535a35e5ff9714649519a0b3a77a Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel@armlinux.org.uk>
+Date: Fri, 13 Jan 2017 14:45:35 +0000
+Subject: [PATCH 3/4] ARM: dts: imx6*-hummingboard2: use proper gpio flags
+ definitions
+
+Use proper gpio flag definitions for GPIOs rather than using opaque
+uninformative numbers.
+
+Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
+---
+ arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
+index 734487edf200..88aaed26dd77 100644
+--- a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
+@@ -50,7 +50,7 @@
+
+ ir_recv: ir-receiver {
+ compatible = "gpio-ir-receiver";
+- gpios = <&gpio7 9 1>;
++ gpios = <&gpio7 9 GPIO_ACTIVE_LOW>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hummingboard2_gpio7_9>;
+ linux,rc-map-name = "rc-rc6-mce";
+@@ -80,7 +80,7 @@
+ reg_usbh1_vbus: regulator-usb-h1-vbus {
+ compatible = "regulator-fixed";
+ enable-active-high;
+- gpio = <&gpio1 0 0>;
++ gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hummingboard2_usbh1_vbus>;
+ regulator-name = "usb_h1_vbus";
+@@ -91,7 +91,7 @@
+ reg_usbotg_vbus: regulator-usb-otg-vbus {
+ compatible = "regulator-fixed";
+ enable-active-high;
+- gpio = <&gpio3 22 0>;
++ gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hummingboard2_usbotg_vbus>;
+ regulator-name = "usb_otg_vbus";
+@@ -102,7 +102,7 @@
+ reg_usbh2_vbus: regulator-usb-h2-vbus {
+ compatible = "regulator-gpio";
+ enable-active-high;
+- enable-gpio = <&gpio2 13 0>;
++ enable-gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hummingboard2_usbh2_vbus>;
+ regulator-name = "usb_h2_vbus";
+@@ -114,7 +114,7 @@
+ reg_usbh3_vbus: regulator-usb-h3-vbus {
+ compatible = "regulator-gpio";
+ enable-active-high;
+- enable-gpio = <&gpio7 10 0>;
++ enable-gpio = <&gpio7 10 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_hummingboard2_usbh3_vbus>;
+ regulator-name = "usb_h3_vbus";
+--
+2.12.2
+
+From f931de70370ff576f381cb9745bc54225a1a8056 Mon Sep 17 00:00:00 2001
+From: Russell King <rmk+kernel@arm.linux.org.uk>
+Date: Fri, 13 Jan 2017 14:45:40 +0000
+Subject: [PATCH 4/4] ARM: dts: imx6*-hummingboard2: convert to more
+ conventional vmmc-supply
+
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+---
+ arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi | 26 +++++++++++++++++++-------
+ 1 file changed, 19 insertions(+), 7 deletions(-)
+
+diff --git a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
+index 88aaed26dd77..f19d30b34ac4 100644
+--- a/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-hummingboard2.dtsi
+@@ -56,11 +56,6 @@
+ linux,rc-map-name = "rc-rc6-mce";
+ };
+
+- usdhc2_pwrseq: usdhc2-pwrseq {
+- compatible = "mmc-pwrseq-simple";
+- reset-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>;
+- };
+-
+ reg_3p3v: regulator-3p3v {
+ compatible = "regulator-fixed";
+ regulator-name = "3P3V";
+@@ -123,6 +118,18 @@
+ regulator-boot-on;
+ };
+
++ reg_usdhc2_vmmc: reg-usdhc2-vmmc {
++ compatible = "regulator-fixed";
++ gpio = <&gpio4 30 GPIO_ACTIVE_HIGH>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&pinctrl_hummingboard2_vmmc>;
++ regulator-boot-on;
++ regulator-max-microvolt = <3300000>;
++ regulator-min-microvolt = <3300000>;
++ regulator-name = "usdhc2_vmmc";
++ startup-delay-us = <1000>;
++ };
++
+ sound-sgtl5000 {
+ audio-codec = <&sgtl5000>;
+ audio-routing =
+@@ -393,7 +400,6 @@
+
+ pinctrl_hummingboard2_usdhc2_aux: hummingboard2-usdhc2-aux {
+ fsl,pins = <
+- MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071
+ MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071
+ MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0
+ >;
+@@ -432,6 +438,12 @@
+ >;
+ };
+
++ pinctrl_hummingboard2_vmmc: hummingboard2-vmmc {
++ fsl,pins = <
++ MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071
++ >;
++ };
++
+ pinctrl_hummingboard2_usdhc3: hummingboard2-usdhc3 {
+ fsl,pins = <
+ MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
+@@ -519,7 +531,7 @@
+ &pinctrl_hummingboard2_usdhc2_aux
+ &pinctrl_hummingboard2_usdhc2_200mhz
+ >;
+- mmc-pwrseq = <&usdhc2_pwrseq>;
++ vmmc-supply = <&reg_usdhc2_vmmc>;
+ cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
+ status = "okay";
+ };
+--
+2.12.2