[PATCH v1 0/6] mmc: sdhci-pci: Add some CD GPIO related quirks

From: Andy Shevchenko
Date: Tue Oct 05 2021 - 06:24:36 EST


It appears that one of the supported platform magically worked with the
custom IRQ handler (any hints how?) while having two PCB designs with
an opposite CD sense level. Here is an attempt to fix it by quirking out
CD GPIO.

Patch 1 introduces two additional quirks (it's done this way due to
patch 3, see below). Patch 2 is an actual fix for the mentioned platform.
If backported need to be taken with patch 1 together. Patch 3 is (RFT)
clean up. The questionable part here is the locking scheme. Shouldn't
we do something similar in the generic IRQ handler of SDHCI? Or Broxton
case has something quite different in mind?

Patches 4-6 are dead-code removals. Patch 4 accompanying patch 2, patches
5-6 just similar to it, but (functionally) independent. Would like to hear
if it's okay to do.

Any comments, hints, advice are welcome!

Andy Shevchenko (6):
mmc: sdhci: Introduce couple of quirks to ignore particular state of
CD GPIO
mmc: sdhci-pci: Read card detect from ACPI for Intel Merrifield
mmc: sdhci: Replace bxt_get_cd() with
SDHCI_QUIRK_CARD_DETECTION_IF_GPIO_HIGH
mmc: sdhci-pci: Remove dead code (struct sdhci_pci_data et al)
mmc: sdhci-pci: Remove dead code (cd_gpio, cd_irq et al)
mmc: sdhci-pci: Remove dead code (rst_n_gpio et al)

drivers/mmc/host/Makefile | 1 -
drivers/mmc/host/sdhci-acpi.c | 24 +----
drivers/mmc/host/sdhci-pci-core.c | 166 +++--------------------------
drivers/mmc/host/sdhci-pci-data.c | 6 --
drivers/mmc/host/sdhci-pci.h | 5 -
drivers/mmc/host/sdhci.c | 13 ++-
drivers/mmc/host/sdhci.h | 4 +
include/linux/mmc/sdhci-pci-data.h | 18 ----
8 files changed, 27 insertions(+), 210 deletions(-)
delete mode 100644 drivers/mmc/host/sdhci-pci-data.c
delete mode 100644 include/linux/mmc/sdhci-pci-data.h

--
2.33.0