| From foo@baz Mon Apr 9 17:09:24 CEST 2018 |
| From: Geert Uytterhoeven <geert+renesas@glider.be> |
| Date: Thu, 1 Jun 2017 12:27:00 +0200 |
| Subject: ARM: dts: armadillo800eva: Split LCD mux and gpio |
| |
| From: Geert Uytterhoeven <geert+renesas@glider.be> |
| |
| |
| [ Upstream commit 13132b3f44d3600983aceb7e9920b8ebb55a7cf8 ] |
| |
| Configuration of the lcd0 pinmux group and GPIO hog for the external |
| GPIO mux are done using a single device node, causing the "output-high" |
| property to be applied to both. This will fail for the pinmux group, |
| but doesn't cause any harm, as the failure is ignored silently. |
| |
| However, after "pinctrl: sh-pfc: propagate errors on group config", the |
| failure will become fatal, leading to a broken display: |
| |
| sh-pfc e6050000.pin-controller: pin_config_group_set op failed for group 102 |
| sh-pfc e6050000.pin-controller: Error applying setting, reverse things back |
| sh-pfc e6050000.pin-controller: failed to select default state |
| |
| Move the GPIO hog to its own node to fix this. |
| |
| Fixes: ffd2f9a5afb730b9 ("ARM: shmobile: armadillo800eva dts: Add pinctrl and gpio-hog for lcdc0") |
| Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> |
| Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/arm/boot/dts/r8a7740-armadillo800eva.dts | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| --- a/arch/arm/boot/dts/r8a7740-armadillo800eva.dts |
| +++ b/arch/arm/boot/dts/r8a7740-armadillo800eva.dts |
| @@ -266,7 +266,9 @@ |
| lcd0_pins: lcd0 { |
| groups = "lcd0_data24_0", "lcd0_lclk_1", "lcd0_sync"; |
| function = "lcd0"; |
| + }; |
| |
| + lcd0_mux { |
| /* DBGMD/LCDC0/FSIA MUX */ |
| gpio-hog; |
| gpios = <176 0>; |