[OpenWrt-Devel] [PATCH] mxs: fix user led for OLinuXino boards
Michael Heimpold
mhei at heimpold.de
Mon Mar 16 17:47:44 EDT 2020
More testing after kernel upgrade to 5.4 uncovered a regression: the user
led is not present anymore due to a pin mux "collision" in device tree.
A patch sent to upstream kernel was accepted now. Integrate this
pending fix as platform specific patch so that user led is available again.
Signed-off-by: Michael Heimpold <mhei at heimpold.de>
---
...ARM-dts-imx23-introduce-mmc0_sck_cfg.patch | 61 +++++++++++++++++++
1 file changed, 61 insertions(+)
create mode 100644 target/linux/mxs/patches-5.4/100-ARM-dts-imx23-introduce-mmc0_sck_cfg.patch
diff --git a/target/linux/mxs/patches-5.4/100-ARM-dts-imx23-introduce-mmc0_sck_cfg.patch b/target/linux/mxs/patches-5.4/100-ARM-dts-imx23-introduce-mmc0_sck_cfg.patch
new file mode 100644
index 0000000000..029fe6a8af
--- /dev/null
+++ b/target/linux/mxs/patches-5.4/100-ARM-dts-imx23-introduce-mmc0_sck_cfg.patch
@@ -0,0 +1,61 @@
+From e4fdac5def509ffb723b49d6a91f9043009119f9 Mon Sep 17 00:00:00 2001
+From: Michael Heimpold <mhei at heimpold.de>
+Date: Sun, 8 Mar 2020 23:21:44 +0100
+Subject: [PATCH] ARM: dts: imx23: introduce mmc0_sck_cfg
+
+The Olimex Olinuxino board has a user led connected to SSP1_DETECT.
+But since this pin is listed in mmc0_pins_fixup, it is already claimed
+by MMC driver and this results in this error during boot:
+
+[ 1.390000] imx23-pinctrl 80018000.pinctrl: pin SSP1_DETECT already
+ requested by 80010000.spi; cannot claim for leds
+[ 1.400000] imx23-pinctrl 80018000.pinctrl: pin-65 (leds) status -22
+[ 1.410000] imx23-pinctrl 80018000.pinctrl: could not request pin 65
+ (SSP1_DETECT) from group led_gpio2_1.0 on device 80018000.pinctrl
+[ 1.420000] leds-gpio leds: Error applying setting, reverse things back
+[ 1.430000] leds-gpio: probe of leds failed with error -22
+
+This fix it, introduce mmc0_sck_cfg and switch the Olinuxino board to it.
+
+Signed-off-by: Michael Heimpold <mhei at heimpold.de>
+Signed-off-by: Shawn Guo <shawnguo at kernel.org>
+---
+ arch/arm/boot/dts/imx23-olinuxino.dts | 2 +-
+ arch/arm/boot/dts/imx23.dtsi | 8 ++++++++
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/imx23-olinuxino.dts b/arch/arm/boot/dts/imx23-olinuxino.dts
+index 4c9aafe00b5d..0729e72f2283 100644
+--- a/arch/arm/boot/dts/imx23-olinuxino.dts
++++ b/arch/arm/boot/dts/imx23-olinuxino.dts
+@@ -23,7 +23,7 @@
+ ssp0: spi at 80010000 {
+ compatible = "fsl,imx23-mmc";
+ pinctrl-names = "default";
+- pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_pins_fixup>;
++ pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_sck_cfg>;
+ bus-width = <4>;
+ broken-cd;
+ status = "okay";
+diff --git a/arch/arm/boot/dts/imx23.dtsi b/arch/arm/boot/dts/imx23.dtsi
+index eb0aeda1682c..c5edff381213 100644
+--- a/arch/arm/boot/dts/imx23.dtsi
++++ b/arch/arm/boot/dts/imx23.dtsi
+@@ -267,6 +267,14 @@
+ fsl,pull-up = <MXS_PULL_DISABLE>;
+ };
+
++ mmc0_sck_cfg: mmc0-sck-cfg at 0 {
++ reg = <0>;
++ fsl,pinmux-ids = <
++ MX23_PAD_SSP1_SCK__SSP1_SCK
++ >;
++ fsl,pull-up = <MXS_PULL_DISABLE>;
++ };
++
+ mmc1_4bit_pins_a: mmc1-4bit at 0 {
+ reg = <0>;
+ fsl,pinmux-ids = <
+--
+2.17.1
+
--
2.17.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list