linux-amlogic.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] ARM: dts: meson: fix SD card cd-gpio (pre v4.21-rc)
@ 2018-12-29 12:57 Martin Blumenstingl
  2018-12-29 12:57 ` [PATCH 1/3] ARM: dts: meson8b: odroidc1: mark the SD card detection GPIO active-low Martin Blumenstingl
                   ` (4 more replies)
  0 siblings, 5 replies; 13+ messages in thread
From: Martin Blumenstingl @ 2018-12-29 12:57 UTC (permalink / raw)
  To: linux-amlogic, khilman, linus.walleij
  Cc: linus.luessing, bgolaszewski, balbes-150, linux-mmc, linux-gpio,
	linux-arm-kernel, Martin Blumenstingl, linux

Today I noticed that my Odroid-C1 doesn't see it's SD card anymore.
My board is not the only one, Odroid-C1 on KernelCI suffers from the
same problem:
v4.20-6428-g00c569b567c7 still sees the SD card (mmc0): [0]
v4.20-8955-g903b77c63167 doesn't see the SD card (mmc0) anymore: [1]

My Endless Mini (EC-100) is also affected by this issue.

a git bisect run points to this commit:
89a5e15bcba87df5120d4656e0ff33d4f7cd6152 ("gpio/mmc/of: Respect polarity
in the device tree")

and indeed, reverting it makes my Odroid-C1 and EC-100 see the SD card
again.

However, while reviewing the .dts files for the 32-bit Amlogic Meson
boards I found that the cd-gpios are specified incorrectly in the .dts.
Documentation/devicetree/bindings/mmc/mmc.txt states: "[...] using the
"cd-inverted" property means, that the CD line is active high, i.e. it
is high, when a card is inserted".
This is not the case on all currently supported 32-bit Meson boards, so
this switches the cd-gpios
- from GPIO_ACTIVE_HIGH with the "cd-inverted" property being set
- to GPIO_ACTIVE_LOW with the "cd-inverted" property being absent

This fix also works even if the following two commits are reverted:
- 89a5e15bcba87d ("gpio/mmc/of: Respect polarity in the device tree")
- 81c85ec15a1946 ("gpio: OF: Parse MMC-specific CD and WP properties")

Linus, I have seen that there was some fallout that commit
89a5e15bcba87d ("gpio/mmc/of: Respect polarity in the device tree") is
supposed to fix. In commit 81c85ec15a1946 ("gpio: OF: Parse
MMC-specific CD and WP properties") you mentioned "the [MMC]  core will
use the MMC_CAP2_CD_ACTIVE_HIGH [...] I plan to clean this up at a later
point passing the handling of inversion semantics over to gpiolib". I'm
not sure how the MMC core / GPIO subsystem is supposed to handle the
"cd-inverted" case since I believe this property is now evaluated twice:
- first in of_gpio_flags_quirks
- but also in mmc_gpio_get_cd (using ctx->override_cd_active_level)
doesn't this essentially make "cd-inverted" a no-op?
(attention: this series only fixes three 32-bit Meson boards, but I
believe that this issue is not limited to the 32-bit Meson boards)


[0] https://kernelci.org/boot/id/5c25a73d59b51464fb6edd2c/
[1] https://kernelci.org/boot/id/5c27306159b514268f6edd2e/


Martin Blumenstingl (3):
  ARM: dts: meson8b: odroidc1: mark the SD card detection GPIO
    active-low
  ARM: dts: meson8b: ec100: mark the SD card detection GPIO active-low
  ARM: dts: meson8m2: mxiii-plus: mark the SD card detection GPIO
    active-low

 arch/arm/boot/dts/meson8b-ec100.dts       | 3 +--
 arch/arm/boot/dts/meson8b-odroidc1.dts    | 3 +--
 arch/arm/boot/dts/meson8m2-mxiii-plus.dts | 3 +--
 3 files changed, 3 insertions(+), 6 deletions(-)

-- 
2.20.1


_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2019-01-11  1:19 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-29 12:57 [PATCH 0/3] ARM: dts: meson: fix SD card cd-gpio (pre v4.21-rc) Martin Blumenstingl
2018-12-29 12:57 ` [PATCH 1/3] ARM: dts: meson8b: odroidc1: mark the SD card detection GPIO active-low Martin Blumenstingl
2018-12-30 19:54   ` Linus Walleij
2019-01-07  8:51   ` Anand Moon
2019-01-08 22:02     ` Martin Blumenstingl
2018-12-29 12:57 ` [PATCH 2/3] ARM: dts: meson8b: ec100: " Martin Blumenstingl
2018-12-30 19:54   ` Linus Walleij
2018-12-29 12:57 ` [PATCH 3/3] ARM: dts: meson8m2: mxiii-plus: " Martin Blumenstingl
2018-12-30 19:54   ` Linus Walleij
2018-12-29 14:29 ` [PATCH 0/3] ARM: dts: meson: fix SD card cd-gpio (pre v4.21-rc) Martin Blumenstingl
2019-01-11  1:18   ` Kevin Hilman
2018-12-30 19:57 ` Linus Walleij
2018-12-31 11:03   ` Martin Blumenstingl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).