[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