linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function
@ 2024-04-07 20:04 Hans de Goede
  2024-04-07 20:04 ` [PATCH 2/6] mmc: sdhci-acpi: Sort DMI quirks alphabetically Hans de Goede
                   ` (6 more replies)
  0 siblings, 7 replies; 15+ messages in thread
From: Hans de Goede @ 2024-04-07 20:04 UTC (permalink / raw)
  To: Adrian Hunter, Ulf Hansson, Mika Westerberg, Andy Shevchenko
  Cc: Hans de Goede, linux-mmc, linux-gpio

Some mmc host drivers may need to fixup a card-detection GPIO's config
to e.g. enable the GPIO controllers builtin pull-up resistor on devices
where the firmware description of the GPIO is broken (e.g. GpioInt with
PullNone instead of PullUp in ACPI DSDT).

Since this is the exception rather then the rule adding a config
parameter to mmc_gpiod_request_cd() seems undesirable, so instead
add a new mmc_gpiod_set_cd_config() function. This is simply a wrapper
to call gpiod_set_config() on the card-detect GPIO acquired through
mmc_gpiod_request_cd().

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/mmc/core/slot-gpio.c  | 20 ++++++++++++++++++++
 include/linux/mmc/slot-gpio.h |  1 +
 2 files changed, 21 insertions(+)

diff --git a/drivers/mmc/core/slot-gpio.c b/drivers/mmc/core/slot-gpio.c
index 39f45c2b6de8..8791656e9e20 100644
--- a/drivers/mmc/core/slot-gpio.c
+++ b/drivers/mmc/core/slot-gpio.c
@@ -221,6 +221,26 @@ int mmc_gpiod_request_cd(struct mmc_host *host, const char *con_id,
 }
 EXPORT_SYMBOL(mmc_gpiod_request_cd);
 
+/**
+ * mmc_gpiod_set_cd_config - set config for card-detection GPIO
+ * @host: mmc host
+ * @config: Generic pinconf config (from pinconf_to_config_packed())
+ *
+ * This can be used by mmc host drivers to fixup a card-detection GPIO's config
+ * (e.g. set PIN_CONFIG_BIAS_PULL_UP) after acquiring the GPIO descriptor
+ * through mmc_gpiod_request_cd().
+ *
+ * Returns:
+ * 0 on success, or a negative errno value on error.
+ */
+int mmc_gpiod_set_cd_config(struct mmc_host *host, unsigned long config)
+{
+	struct mmc_gpio *ctx = host->slot.handler_priv;
+
+	return gpiod_set_config(ctx->cd_gpio, config);
+}
+EXPORT_SYMBOL(mmc_gpiod_set_cd_config);
+
 bool mmc_can_gpio_cd(struct mmc_host *host)
 {
 	struct mmc_gpio *ctx = host->slot.handler_priv;
diff --git a/include/linux/mmc/slot-gpio.h b/include/linux/mmc/slot-gpio.h
index 5d3d15e97868..748ab7a88e78 100644
--- a/include/linux/mmc/slot-gpio.h
+++ b/include/linux/mmc/slot-gpio.h
@@ -19,6 +19,7 @@ void mmc_gpio_set_cd_irq(struct mmc_host *host, int irq);
 int mmc_gpiod_request_cd(struct mmc_host *host, const char *con_id,
 			 unsigned int idx, bool override_active_level,
 			 unsigned int debounce);
+int mmc_gpiod_set_cd_config(struct mmc_host *host, unsigned long config);
 int mmc_gpiod_request_ro(struct mmc_host *host, const char *con_id,
 			 unsigned int idx, unsigned int debounce);
 void mmc_gpio_set_cd_isr(struct mmc_host *host,
-- 
2.44.0


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

* [PATCH 2/6] mmc: sdhci-acpi: Sort DMI quirks alphabetically
  2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
@ 2024-04-07 20:04 ` Hans de Goede
  2024-04-07 20:04 ` [PATCH 3/6] mmc: sdhci-acpi: Fix Lenovo Yoga Tablet 2 Pro 1380 sdcard slot not working Hans de Goede
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 15+ messages in thread
From: Hans de Goede @ 2024-04-07 20:04 UTC (permalink / raw)
  To: Adrian Hunter, Ulf Hansson, Mika Westerberg, Andy Shevchenko
  Cc: Hans de Goede, linux-mmc, linux-gpio

Sort the DMI quirks alphabetically.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/mmc/host/sdhci-acpi.c | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index acf5fc3ad7e4..d2003d3be6ba 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -719,7 +719,20 @@ static const struct acpi_device_id sdhci_acpi_ids[] = {
 };
 MODULE_DEVICE_TABLE(acpi, sdhci_acpi_ids);
 
+/* Please keep this list sorted alphabetically */
 static const struct dmi_system_id sdhci_acpi_quirks[] = {
+	{
+		/*
+		 * The Acer Aspire Switch 10 (SW5-012) microSD slot always
+		 * reports the card being write-protected even though microSD
+		 * cards do not have a write-protect switch at all.
+		 */
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "Aspire SW5-012"),
+		},
+		.driver_data = (void *)DMI_QUIRK_SD_NO_WRITE_PROTECT,
+	},
 	{
 		/*
 		 * The Lenovo Miix 320-10ICR has a bug in the _PS0 method of
@@ -734,18 +747,6 @@ static const struct dmi_system_id sdhci_acpi_quirks[] = {
 		},
 		.driver_data = (void *)DMI_QUIRK_RESET_SD_SIGNAL_VOLT_ON_SUSP,
 	},
-	{
-		/*
-		 * The Acer Aspire Switch 10 (SW5-012) microSD slot always
-		 * reports the card being write-protected even though microSD
-		 * cards do not have a write-protect switch at all.
-		 */
-		.matches = {
-			DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
-			DMI_MATCH(DMI_PRODUCT_NAME, "Aspire SW5-012"),
-		},
-		.driver_data = (void *)DMI_QUIRK_SD_NO_WRITE_PROTECT,
-	},
 	{
 		/*
 		 * The Toshiba WT8-B's microSD slot always reports the card being
-- 
2.44.0


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

* [PATCH 3/6] mmc: sdhci-acpi: Fix Lenovo Yoga Tablet 2 Pro 1380 sdcard slot not working
  2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
  2024-04-07 20:04 ` [PATCH 2/6] mmc: sdhci-acpi: Sort DMI quirks alphabetically Hans de Goede
@ 2024-04-07 20:04 ` Hans de Goede
  2024-04-07 20:04 ` [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot Hans de Goede
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 15+ messages in thread
From: Hans de Goede @ 2024-04-07 20:04 UTC (permalink / raw)
  To: Adrian Hunter, Ulf Hansson, Mika Westerberg, Andy Shevchenko
  Cc: Hans de Goede, linux-mmc, linux-gpio

The Lenovo Yoga Tablet 2 Pro 1380 sdcard slot has an active high cd pin
and a broken wp pin which always reports the card being write-protected.

Add a DMI quirk to address both issues.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/mmc/host/sdhci-acpi.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index d2003d3be6ba..c0d77f589deb 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -80,6 +80,7 @@ struct sdhci_acpi_host {
 enum {
 	DMI_QUIRK_RESET_SD_SIGNAL_VOLT_ON_SUSP			= BIT(0),
 	DMI_QUIRK_SD_NO_WRITE_PROTECT				= BIT(1),
+	DMI_QUIRK_SD_CD_ACTIVE_HIGH				= BIT(2),
 };
 
 static inline void *sdhci_acpi_priv(struct sdhci_acpi_host *c)
@@ -747,6 +748,26 @@ static const struct dmi_system_id sdhci_acpi_quirks[] = {
 		},
 		.driver_data = (void *)DMI_QUIRK_RESET_SD_SIGNAL_VOLT_ON_SUSP,
 	},
+	{
+		/*
+		 * Lenovo Yoga Tablet 2 Pro 1380F/L (13" Android version) this
+		 * has broken WP reporting and an inverted CD signal.
+		 * Note this has more or less the same BIOS as the Lenovo Yoga
+		 * Tablet 2 830F/L or 1050F/L (8" and 10" Android), but unlike
+		 * the 830 / 1050 models which share the same mainboard this
+		 * model has a different mainboard and the inverted CD and
+		 * broken WP are unique to this board.
+		 */
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Intel Corp."),
+			DMI_MATCH(DMI_PRODUCT_NAME, "VALLEYVIEW C0 PLATFORM"),
+			DMI_MATCH(DMI_BOARD_NAME, "BYT-T FFD8"),
+			/* Full match so as to NOT match the 830/1050 BIOS */
+			DMI_MATCH(DMI_BIOS_VERSION, "BLADE_21.X64.0005.R00.1504101516"),
+		},
+		.driver_data = (void *)(DMI_QUIRK_SD_NO_WRITE_PROTECT |
+					DMI_QUIRK_SD_CD_ACTIVE_HIGH),
+	},
 	{
 		/*
 		 * The Toshiba WT8-B's microSD slot always reports the card being
@@ -867,6 +888,9 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
 	if (sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD)) {
 		bool v = sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD_OVERRIDE_LEVEL);
 
+		if (quirks & DMI_QUIRK_SD_CD_ACTIVE_HIGH)
+			host->mmc->caps2 |= MMC_CAP2_CD_ACTIVE_HIGH;
+
 		err = mmc_gpiod_request_cd(host->mmc, NULL, 0, v, 0);
 		if (err) {
 			if (err == -EPROBE_DEFER)
-- 
2.44.0


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

* [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot
  2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
  2024-04-07 20:04 ` [PATCH 2/6] mmc: sdhci-acpi: Sort DMI quirks alphabetically Hans de Goede
  2024-04-07 20:04 ` [PATCH 3/6] mmc: sdhci-acpi: Fix Lenovo Yoga Tablet 2 Pro 1380 sdcard slot not working Hans de Goede
@ 2024-04-07 20:04 ` Hans de Goede
  2024-04-08 15:19   ` Andy Shevchenko
  2024-04-07 20:04 ` [PATCH 5/6] mmc: sdhci-acpi: Disable write protect detection on Toshiba WT10-A Hans de Goede
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 15+ messages in thread
From: Hans de Goede @ 2024-04-07 20:04 UTC (permalink / raw)
  To: Adrian Hunter, Ulf Hansson, Mika Westerberg, Andy Shevchenko
  Cc: Hans de Goede, linux-mmc, linux-gpio

Unlike all other Bay Trail devices I have (quite a few) the BIOS on
the Lenovo Yoga Tablet 2 830 / 1050 and Lenovo Yoga Tablet 2 Pro 1380 (8",
10" and 13") models sets the SDHCI_SUPPORT_DDR50 bit in the sdcard slots'
SDHCI controller's Caps_1 register which causes Linux to try and use
UHS SDR12 / SDR25 and DDR50 modes on UHS cards.

These tablets do have 1.8V signalling implemented in the hw level through
the Bay Trail SoC's SD3_1P8EN pin. But trying to use UHS modes leads to
lots of errors like these:

[  225.272001] mmc2: Unexpected interrupt 0x04000000.
[  225.272024] mmc2: sdhci: ============ SDHCI REGISTER DUMP ===========
[  225.272034] mmc2: sdhci: Sys addr:  0x0712c400 | Version:  0x0000b502
[  225.272044] mmc2: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000007
[  225.272054] mmc2: sdhci: Argument:  0x00000000 | Trn mode: 0x00000023
[  225.272064] mmc2: sdhci: Present:   0x01e20002 | Host ctl: 0x00000016
[  225.272073] mmc2: sdhci: Power:     0x0000000f | Blk gap:  0x00000000
[  225.272082] mmc2: sdhci: Wake-up:   0x00000000 | Clock:    0x00000107
[  225.272092] mmc2: sdhci: Timeout:   0x0000000e | Int stat: 0x00000001
[  225.272101] mmc2: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
[  225.272110] mmc2: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
[  225.272119] mmc2: sdhci: Caps:      0x076864b2 | Caps_1:   0x00000004
[  225.272129] mmc2: sdhci: Cmd:       0x00000c1b | Max curr: 0x00000000
[  225.272138] mmc2: sdhci: Resp[0]:   0x00000c00 | Resp[1]:  0x00000000
[  225.272147] mmc2: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000900
[  225.272155] mmc2: sdhci: Host ctl2: 0x0000000c
[  225.272164] mmc2: sdhci: ADMA Err:  0x00000003 | ADMA Ptr: 0x0712c200
[  225.272172] mmc2: sdhci: ============================================

Since sdhci_acpi_slot_int_emmc sets SDHCI_QUIRK2_PRESET_VALUE_BROKEN
I tried setting that for sdhci_acpi_slot_int_sd too and that does makes
things mostly work, but the above error still sometimes happen and
regularly access to the card simply freezes for seconds, which are
problems which do not happen with the non UHS SDR50 mode.

Add a new DMI_QUIRK_SD_NO_1_8_V DMI quirk flag and set that for these
tablets to disable sdcard slot UHS modes by setting SDHCI_QUIRK2_NO_1_8_V
for the sdcard slot when this quirk is set.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
Note a possible alternative approach would be to simply always set
SDHCI_QUIRK2_NO_1_8_V for the sdcard slot on all Bay Trail models
but that seems like a bit of a big hammer for a problem only seen
on these specific models and maybe there are Bay Trail models out
there with working UHS modes for their sdcard slot.
---
 drivers/mmc/host/sdhci-acpi.c | 29 ++++++++++++++++++++++++++---
 1 file changed, 26 insertions(+), 3 deletions(-)

diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index c0d77f589deb..233af36d55a9 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -80,7 +80,8 @@ struct sdhci_acpi_host {
 enum {
 	DMI_QUIRK_RESET_SD_SIGNAL_VOLT_ON_SUSP			= BIT(0),
 	DMI_QUIRK_SD_NO_WRITE_PROTECT				= BIT(1),
-	DMI_QUIRK_SD_CD_ACTIVE_HIGH				= BIT(2),
+	DMI_QUIRK_SD_NO_1_8_V					= BIT(2),
+	DMI_QUIRK_SD_CD_ACTIVE_HIGH				= BIT(3),
 };
 
 static inline void *sdhci_acpi_priv(struct sdhci_acpi_host *c)
@@ -751,12 +752,15 @@ static const struct dmi_system_id sdhci_acpi_quirks[] = {
 	{
 		/*
 		 * Lenovo Yoga Tablet 2 Pro 1380F/L (13" Android version) this
-		 * has broken WP reporting and an inverted CD signal.
+		 * has broken WP reporting, an inverted CD signal and claims
+		 * to support UHS modes but they do not work.
 		 * Note this has more or less the same BIOS as the Lenovo Yoga
 		 * Tablet 2 830F/L or 1050F/L (8" and 10" Android), but unlike
 		 * the 830 / 1050 models which share the same mainboard this
 		 * model has a different mainboard and the inverted CD and
 		 * broken WP are unique to this board.
+		 * This match for the 13" model MUST come before the 8" + 10"
+		 * match since that one will also match the 13" model!
 		 */
 		.matches = {
 			DMI_MATCH(DMI_SYS_VENDOR, "Intel Corp."),
@@ -766,7 +770,23 @@ static const struct dmi_system_id sdhci_acpi_quirks[] = {
 			DMI_MATCH(DMI_BIOS_VERSION, "BLADE_21.X64.0005.R00.1504101516"),
 		},
 		.driver_data = (void *)(DMI_QUIRK_SD_NO_WRITE_PROTECT |
-					DMI_QUIRK_SD_CD_ACTIVE_HIGH),
+					DMI_QUIRK_SD_CD_ACTIVE_HIGH |
+					DMI_QUIRK_SD_NO_1_8_V),
+	},
+	{
+		/*
+		 * Lenovo Yoga Tablet 2 830F/L or 1050F/L (The 8" and 10"
+		 * Lenovo Yoga Tablet 2 use the same mainboard) These claim
+		 * to support UHS modes but they do not work.
+		 */
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Intel Corp."),
+			DMI_MATCH(DMI_PRODUCT_NAME, "VALLEYVIEW C0 PLATFORM"),
+			DMI_MATCH(DMI_BOARD_NAME, "BYT-T FFD8"),
+			/* Partial match on beginning of BIOS version */
+			DMI_MATCH(DMI_BIOS_VERSION, "BLADE_21"),
+		},
+		.driver_data = (void *)DMI_QUIRK_SD_NO_1_8_V,
 	},
 	{
 		/*
@@ -904,6 +924,9 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
 
 		if (quirks & DMI_QUIRK_SD_NO_WRITE_PROTECT)
 			host->mmc->caps2 |= MMC_CAP2_NO_WRITE_PROTECT;
+
+		if (quirks & DMI_QUIRK_SD_NO_1_8_V)
+			host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V;
 	}
 
 	err = sdhci_setup_host(host);
-- 
2.44.0


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

* [PATCH 5/6] mmc: sdhci-acpi: Disable write protect detection on Toshiba WT10-A
  2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
                   ` (2 preceding siblings ...)
  2024-04-07 20:04 ` [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot Hans de Goede
@ 2024-04-07 20:04 ` Hans de Goede
  2024-04-07 20:04 ` [PATCH 6/6] mmc: sdhci-acpi: Add quirk to enable pull-up on the card-detect GPIO on Asus T100TA Hans de Goede
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 15+ messages in thread
From: Hans de Goede @ 2024-04-07 20:04 UTC (permalink / raw)
  To: Adrian Hunter, Ulf Hansson, Mika Westerberg, Andy Shevchenko
  Cc: Hans de Goede, linux-mmc, linux-gpio

On the Toshiba WT10-A the microSD slot always reports the card being
write-protected, just like on the Toshiba WT8-B.

Add a DMI quirk to work around this.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/mmc/host/sdhci-acpi.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index 233af36d55a9..ff45114bf886 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -799,6 +799,17 @@ static const struct dmi_system_id sdhci_acpi_quirks[] = {
 		},
 		.driver_data = (void *)DMI_QUIRK_SD_NO_WRITE_PROTECT,
 	},
+	{
+		/*
+		 * The Toshiba WT10-A's microSD slot always reports the card being
+		 * write-protected.
+		 */
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "TOSHIBA WT10-A"),
+		},
+		.driver_data = (void *)DMI_QUIRK_SD_NO_WRITE_PROTECT,
+	},
 	{} /* Terminating entry */
 };
 
-- 
2.44.0


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

* [PATCH 6/6] mmc: sdhci-acpi: Add quirk to enable pull-up on the card-detect GPIO on Asus T100TA
  2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
                   ` (3 preceding siblings ...)
  2024-04-07 20:04 ` [PATCH 5/6] mmc: sdhci-acpi: Disable write protect detection on Toshiba WT10-A Hans de Goede
@ 2024-04-07 20:04 ` Hans de Goede
  2024-04-08 15:22   ` Andy Shevchenko
  2024-04-08 15:16 ` [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Andy Shevchenko
  2024-04-08 15:23 ` Andy Shevchenko
  6 siblings, 1 reply; 15+ messages in thread
From: Hans de Goede @ 2024-04-07 20:04 UTC (permalink / raw)
  To: Adrian Hunter, Ulf Hansson, Mika Westerberg, Andy Shevchenko
  Cc: Hans de Goede, linux-mmc, linux-gpio, Nuno Sá

The card-detect GPIO for the microSD slot on Asus T100TA / T100TAM models
stopped working under Linux after commit 6fd03f024828 ("gpiolib: acpi:
support bias pull disable").

The GPIO in question is connected to a mechanical switch in the slot
which shorts the pin to GND when a card is inserted.

The GPIO pin correctly gets configured with a 20K pull-up by the BIOS,
but there is a bug in the DSDT where the GpioInt for the card-detect is
configured with a NoPull setting:

                GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x2710,
                    "\\_SB.GPO0", 0x00, ResourceConsumer, ,
                    )
                    {   // Pin list
                        0x0026
                    }

Linux now actually honors the PullNone setting and disables the 20K pull-up
configured by the BIOS.

Add a new DMI_QUIRK_SD_CD_ENABLE_PULL_UP quirk which when set calls
mmc_gpiod_set_cd_config() to re-enable the pull-up and set this for
the Asus T100TA models to fix this.

Cc: Nuno Sá <nuno.sa@analog.com>
Fixes: 6fd03f024828 ("gpiolib: acpi: support bias pull disable")
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/mmc/host/sdhci-acpi.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index ff45114bf886..2450617e99f0 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -10,6 +10,7 @@
 #include <linux/export.h>
 #include <linux/module.h>
 #include <linux/device.h>
+#include <linux/pinctrl/pinconf-generic.h>
 #include <linux/platform_device.h>
 #include <linux/ioport.h>
 #include <linux/io.h>
@@ -82,6 +83,7 @@ enum {
 	DMI_QUIRK_SD_NO_WRITE_PROTECT				= BIT(1),
 	DMI_QUIRK_SD_NO_1_8_V					= BIT(2),
 	DMI_QUIRK_SD_CD_ACTIVE_HIGH				= BIT(3),
+	DMI_QUIRK_SD_CD_ENABLE_PULL_UP				= BIT(4),
 };
 
 static inline void *sdhci_acpi_priv(struct sdhci_acpi_host *c)
@@ -735,6 +737,14 @@ static const struct dmi_system_id sdhci_acpi_quirks[] = {
 		},
 		.driver_data = (void *)DMI_QUIRK_SD_NO_WRITE_PROTECT,
 	},
+	{
+		/* Asus T100TA, needs pull-up for cd but DSDT GpioInt has NoPull set */
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+			DMI_MATCH(DMI_PRODUCT_NAME, "T100TA"),
+		},
+		.driver_data = (void *)DMI_QUIRK_SD_CD_ENABLE_PULL_UP,
+	},
 	{
 		/*
 		 * The Lenovo Miix 320-10ICR has a bug in the _PS0 method of
@@ -928,7 +938,9 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
 				goto err_free;
 			dev_warn(dev, "failed to setup card detect gpio\n");
 			c->use_runtime_pm = false;
-		}
+		} else if (quirks & DMI_QUIRK_SD_CD_ENABLE_PULL_UP)
+			mmc_gpiod_set_cd_config(host->mmc,
+						PIN_CONF_PACKED(PIN_CONFIG_BIAS_PULL_UP, 20000));
 
 		if (quirks & DMI_QUIRK_RESET_SD_SIGNAL_VOLT_ON_SUSP)
 			c->reset_signal_volt_on_suspend = true;
-- 
2.44.0


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

* Re: [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function
  2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
                   ` (4 preceding siblings ...)
  2024-04-07 20:04 ` [PATCH 6/6] mmc: sdhci-acpi: Add quirk to enable pull-up on the card-detect GPIO on Asus T100TA Hans de Goede
@ 2024-04-08 15:16 ` Andy Shevchenko
  2024-04-08 15:21   ` Hans de Goede
  2024-04-08 15:23 ` Andy Shevchenko
  6 siblings, 1 reply; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-08 15:16 UTC (permalink / raw)
  To: Hans de Goede
  Cc: Adrian Hunter, Ulf Hansson, Mika Westerberg, linux-mmc,
	linux-gpio

On Sun, Apr 07, 2024 at 10:04:48PM +0200, Hans de Goede wrote:
> Some mmc host drivers may need to fixup a card-detection GPIO's config
> to e.g. enable the GPIO controllers builtin pull-up resistor on devices
> where the firmware description of the GPIO is broken (e.g. GpioInt with
> PullNone instead of PullUp in ACPI DSDT).
> 
> Since this is the exception rather then the rule adding a config
> parameter to mmc_gpiod_request_cd() seems undesirable, so instead
> add a new mmc_gpiod_set_cd_config() function. This is simply a wrapper
> to call gpiod_set_config() on the card-detect GPIO acquired through
> mmc_gpiod_request_cd().

...

>  int mmc_gpiod_request_cd(struct mmc_host *host, const char *con_id,
>  			 unsigned int idx, bool override_active_level,
>  			 unsigned int debounce);
> +int mmc_gpiod_set_cd_config(struct mmc_host *host, unsigned long config);

A nit, can we group it with...

>  int mmc_gpiod_request_ro(struct mmc_host *host, const char *con_id,
>  			 unsigned int idx, unsigned int debounce);
>  void mmc_gpio_set_cd_isr(struct mmc_host *host,

...this one, as request ops vs. set_cd ones?

-- 
With Best Regards,
Andy Shevchenko



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

* Re: [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot
  2024-04-07 20:04 ` [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot Hans de Goede
@ 2024-04-08 15:19   ` Andy Shevchenko
  2024-04-08 15:22     ` Hans de Goede
  0 siblings, 1 reply; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-08 15:19 UTC (permalink / raw)
  To: Hans de Goede
  Cc: Adrian Hunter, Ulf Hansson, Mika Westerberg, linux-mmc,
	linux-gpio

On Sun, Apr 07, 2024 at 10:04:51PM +0200, Hans de Goede wrote:
> Unlike all other Bay Trail devices I have (quite a few) the BIOS on
> the Lenovo Yoga Tablet 2 830 / 1050 and Lenovo Yoga Tablet 2 Pro 1380 (8",
> 10" and 13") models sets the SDHCI_SUPPORT_DDR50 bit in the sdcard slots'
> SDHCI controller's Caps_1 register which causes Linux to try and use
> UHS SDR12 / SDR25 and DDR50 modes on UHS cards.
> 
> These tablets do have 1.8V signalling implemented in the hw level through
> the Bay Trail SoC's SD3_1P8EN pin. But trying to use UHS modes leads to
> lots of errors like these:
> 
> [  225.272001] mmc2: Unexpected interrupt 0x04000000.
> [  225.272024] mmc2: sdhci: ============ SDHCI REGISTER DUMP ===========
> [  225.272034] mmc2: sdhci: Sys addr:  0x0712c400 | Version:  0x0000b502
> [  225.272044] mmc2: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000007
> [  225.272054] mmc2: sdhci: Argument:  0x00000000 | Trn mode: 0x00000023
> [  225.272064] mmc2: sdhci: Present:   0x01e20002 | Host ctl: 0x00000016
> [  225.272073] mmc2: sdhci: Power:     0x0000000f | Blk gap:  0x00000000
> [  225.272082] mmc2: sdhci: Wake-up:   0x00000000 | Clock:    0x00000107
> [  225.272092] mmc2: sdhci: Timeout:   0x0000000e | Int stat: 0x00000001
> [  225.272101] mmc2: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
> [  225.272110] mmc2: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
> [  225.272119] mmc2: sdhci: Caps:      0x076864b2 | Caps_1:   0x00000004
> [  225.272129] mmc2: sdhci: Cmd:       0x00000c1b | Max curr: 0x00000000
> [  225.272138] mmc2: sdhci: Resp[0]:   0x00000c00 | Resp[1]:  0x00000000
> [  225.272147] mmc2: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000900
> [  225.272155] mmc2: sdhci: Host ctl2: 0x0000000c
> [  225.272164] mmc2: sdhci: ADMA Err:  0x00000003 | ADMA Ptr: 0x0712c200
> [  225.272172] mmc2: sdhci: ============================================

> Since sdhci_acpi_slot_int_emmc sets SDHCI_QUIRK2_PRESET_VALUE_BROKEN

sdhci_acpi_slot_int_emmc()


> I tried setting that for sdhci_acpi_slot_int_sd too and that does makes

sdhci_acpi_slot_int_sd()

> things mostly work, but the above error still sometimes happen and
> regularly access to the card simply freezes for seconds, which are
> problems which do not happen with the non UHS SDR50 mode.
> 
> Add a new DMI_QUIRK_SD_NO_1_8_V DMI quirk flag and set that for these
> tablets to disable sdcard slot UHS modes by setting SDHCI_QUIRK2_NO_1_8_V
> for the sdcard slot when this quirk is set.

-- 
With Best Regards,
Andy Shevchenko



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

* Re: [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function
  2024-04-08 15:16 ` [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Andy Shevchenko
@ 2024-04-08 15:21   ` Hans de Goede
  0 siblings, 0 replies; 15+ messages in thread
From: Hans de Goede @ 2024-04-08 15:21 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: Adrian Hunter, Ulf Hansson, Mika Westerberg, linux-mmc,
	linux-gpio

Hi,

On 4/8/24 5:16 PM, Andy Shevchenko wrote:
> On Sun, Apr 07, 2024 at 10:04:48PM +0200, Hans de Goede wrote:
>> Some mmc host drivers may need to fixup a card-detection GPIO's config
>> to e.g. enable the GPIO controllers builtin pull-up resistor on devices
>> where the firmware description of the GPIO is broken (e.g. GpioInt with
>> PullNone instead of PullUp in ACPI DSDT).
>>
>> Since this is the exception rather then the rule adding a config
>> parameter to mmc_gpiod_request_cd() seems undesirable, so instead
>> add a new mmc_gpiod_set_cd_config() function. This is simply a wrapper
>> to call gpiod_set_config() on the card-detect GPIO acquired through
>> mmc_gpiod_request_cd().
> 
> ...
> 
>>  int mmc_gpiod_request_cd(struct mmc_host *host, const char *con_id,
>>  			 unsigned int idx, bool override_active_level,
>>  			 unsigned int debounce);
>> +int mmc_gpiod_set_cd_config(struct mmc_host *host, unsigned long config);
> 
> A nit, can we group it with...
> 
>>  int mmc_gpiod_request_ro(struct mmc_host *host, const char *con_id,
>>  			 unsigned int idx, unsigned int debounce);
>>  void mmc_gpio_set_cd_isr(struct mmc_host *host,
> 
> ...this one, as request ops vs. set_cd ones?


I actually deliberately grouped it with mmc_gpiod_request_cd() since
it operates on the gpiod requested by that / since this is sorta an
alternative to just adding a config param to mmc_gpiod_request_cd()
mirroring the existing debounce parameter.

With that said I've no objections against moving it either. So whatever
you prefer.

Regards,

Hans




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

* Re: [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot
  2024-04-08 15:19   ` Andy Shevchenko
@ 2024-04-08 15:22     ` Hans de Goede
  2024-04-08 15:26       ` Andy Shevchenko
  0 siblings, 1 reply; 15+ messages in thread
From: Hans de Goede @ 2024-04-08 15:22 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: Adrian Hunter, Ulf Hansson, Mika Westerberg, linux-mmc,
	linux-gpio

Hi,

On 4/8/24 5:19 PM, Andy Shevchenko wrote:
> On Sun, Apr 07, 2024 at 10:04:51PM +0200, Hans de Goede wrote:
>> Unlike all other Bay Trail devices I have (quite a few) the BIOS on
>> the Lenovo Yoga Tablet 2 830 / 1050 and Lenovo Yoga Tablet 2 Pro 1380 (8",
>> 10" and 13") models sets the SDHCI_SUPPORT_DDR50 bit in the sdcard slots'
>> SDHCI controller's Caps_1 register which causes Linux to try and use
>> UHS SDR12 / SDR25 and DDR50 modes on UHS cards.
>>
>> These tablets do have 1.8V signalling implemented in the hw level through
>> the Bay Trail SoC's SD3_1P8EN pin. But trying to use UHS modes leads to
>> lots of errors like these:
>>
>> [  225.272001] mmc2: Unexpected interrupt 0x04000000.
>> [  225.272024] mmc2: sdhci: ============ SDHCI REGISTER DUMP ===========
>> [  225.272034] mmc2: sdhci: Sys addr:  0x0712c400 | Version:  0x0000b502
>> [  225.272044] mmc2: sdhci: Blk size:  0x00007200 | Blk cnt:  0x00000007
>> [  225.272054] mmc2: sdhci: Argument:  0x00000000 | Trn mode: 0x00000023
>> [  225.272064] mmc2: sdhci: Present:   0x01e20002 | Host ctl: 0x00000016
>> [  225.272073] mmc2: sdhci: Power:     0x0000000f | Blk gap:  0x00000000
>> [  225.272082] mmc2: sdhci: Wake-up:   0x00000000 | Clock:    0x00000107
>> [  225.272092] mmc2: sdhci: Timeout:   0x0000000e | Int stat: 0x00000001
>> [  225.272101] mmc2: sdhci: Int enab:  0x03ff000b | Sig enab: 0x03ff000b
>> [  225.272110] mmc2: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
>> [  225.272119] mmc2: sdhci: Caps:      0x076864b2 | Caps_1:   0x00000004
>> [  225.272129] mmc2: sdhci: Cmd:       0x00000c1b | Max curr: 0x00000000
>> [  225.272138] mmc2: sdhci: Resp[0]:   0x00000c00 | Resp[1]:  0x00000000
>> [  225.272147] mmc2: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000900
>> [  225.272155] mmc2: sdhci: Host ctl2: 0x0000000c
>> [  225.272164] mmc2: sdhci: ADMA Err:  0x00000003 | ADMA Ptr: 0x0712c200
>> [  225.272172] mmc2: sdhci: ============================================
> 
>> Since sdhci_acpi_slot_int_emmc sets SDHCI_QUIRK2_PRESET_VALUE_BROKEN
> 
> sdhci_acpi_slot_int_emmc()
> 
> 
>> I tried setting that for sdhci_acpi_slot_int_sd too and that does makes
> 
> sdhci_acpi_slot_int_sd()

These are not functions but structs .

Regards,

Hans


> 
>> things mostly work, but the above error still sometimes happen and
>> regularly access to the card simply freezes for seconds, which are
>> problems which do not happen with the non UHS SDR50 mode.
>>
>> Add a new DMI_QUIRK_SD_NO_1_8_V DMI quirk flag and set that for these
>> tablets to disable sdcard slot UHS modes by setting SDHCI_QUIRK2_NO_1_8_V
>> for the sdcard slot when this quirk is set.
> 


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

* Re: [PATCH 6/6] mmc: sdhci-acpi: Add quirk to enable pull-up on the card-detect GPIO on Asus T100TA
  2024-04-07 20:04 ` [PATCH 6/6] mmc: sdhci-acpi: Add quirk to enable pull-up on the card-detect GPIO on Asus T100TA Hans de Goede
@ 2024-04-08 15:22   ` Andy Shevchenko
  0 siblings, 0 replies; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-08 15:22 UTC (permalink / raw)
  To: Hans de Goede
  Cc: Adrian Hunter, Ulf Hansson, Mika Westerberg, linux-mmc,
	linux-gpio, Nuno Sá

On Sun, Apr 07, 2024 at 10:04:53PM +0200, Hans de Goede wrote:
> The card-detect GPIO for the microSD slot on Asus T100TA / T100TAM models
> stopped working under Linux after commit 6fd03f024828 ("gpiolib: acpi:
> support bias pull disable").
> 
> The GPIO in question is connected to a mechanical switch in the slot
> which shorts the pin to GND when a card is inserted.
> 
> The GPIO pin correctly gets configured with a 20K pull-up by the BIOS,
> but there is a bug in the DSDT where the GpioInt for the card-detect is
> configured with a NoPull setting:

PullNone
(and seems somewhere else, cover letter?, you used the former, non-ACPI terminology)

>                 GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x2710,
>                     "\\_SB.GPO0", 0x00, ResourceConsumer, ,
>                     )
>                     {   // Pin list
>                         0x0026
>                     }

You can decrease indentation for quite a bit.

> Linux now actually honors the PullNone setting and disables the 20K pull-up
> configured by the BIOS.
> 
> Add a new DMI_QUIRK_SD_CD_ENABLE_PULL_UP quirk which when set calls
> mmc_gpiod_set_cd_config() to re-enable the pull-up and set this for
> the Asus T100TA models to fix this.

...

> Cc: Nuno Sá <nuno.sa@analog.com>

This can be after ---

...

> -		}
> +		} else if (quirks & DMI_QUIRK_SD_CD_ENABLE_PULL_UP)
> +			mmc_gpiod_set_cd_config(host->mmc,
> +						PIN_CONF_PACKED(PIN_CONFIG_BIAS_PULL_UP, 20000));

With {} patch will conform the coding style along with being less noisy.

-- 
With Best Regards,
Andy Shevchenko



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

* Re: [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function
  2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
                   ` (5 preceding siblings ...)
  2024-04-08 15:16 ` [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Andy Shevchenko
@ 2024-04-08 15:23 ` Andy Shevchenko
  2024-04-08 15:27   ` Hans de Goede
  6 siblings, 1 reply; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-08 15:23 UTC (permalink / raw)
  To: Hans de Goede
  Cc: Adrian Hunter, Ulf Hansson, Mika Westerberg, linux-mmc,
	linux-gpio

On Sun, Apr 07, 2024 at 10:04:48PM +0200, Hans de Goede wrote:
> Some mmc host drivers may need to fixup a card-detection GPIO's config
> to e.g. enable the GPIO controllers builtin pull-up resistor on devices
> where the firmware description of the GPIO is broken (e.g. GpioInt with
> PullNone instead of PullUp in ACPI DSDT).
> 
> Since this is the exception rather then the rule adding a config
> parameter to mmc_gpiod_request_cd() seems undesirable, so instead
> add a new mmc_gpiod_set_cd_config() function. This is simply a wrapper
> to call gpiod_set_config() on the card-detect GPIO acquired through
> mmc_gpiod_request_cd().

FWIW,
Reviewed-by: Andy Shevchenko <andy@kernel.org>
assuming you considered addressing nit-picks.

-- 
With Best Regards,
Andy Shevchenko



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

* Re: [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot
  2024-04-08 15:22     ` Hans de Goede
@ 2024-04-08 15:26       ` Andy Shevchenko
  0 siblings, 0 replies; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-08 15:26 UTC (permalink / raw)
  To: Hans de Goede
  Cc: Andy Shevchenko, Adrian Hunter, Ulf Hansson, Mika Westerberg,
	linux-mmc, linux-gpio

On Mon, Apr 8, 2024 at 6:22 PM Hans de Goede <hdegoede@redhat.com> wrote:
> On 4/8/24 5:19 PM, Andy Shevchenko wrote:
> > On Sun, Apr 07, 2024 at 10:04:51PM +0200, Hans de Goede wrote:

> >> Since sdhci_acpi_slot_int_emmc sets SDHCI_QUIRK2_PRESET_VALUE_BROKEN
> >
> > sdhci_acpi_slot_int_emmc()
> >
> >
> >> I tried setting that for sdhci_acpi_slot_int_sd too and that does makes
> >
> > sdhci_acpi_slot_int_sd()
>
> These are not functions but structs .

Can it be spelled explicitly?
"Since the ... in struct foo is set ..." (or alike)

-- 
With Best Regards,
Andy Shevchenko

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

* Re: [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function
  2024-04-08 15:23 ` Andy Shevchenko
@ 2024-04-08 15:27   ` Hans de Goede
  2024-04-08 15:35     ` Andy Shevchenko
  0 siblings, 1 reply; 15+ messages in thread
From: Hans de Goede @ 2024-04-08 15:27 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: Adrian Hunter, Ulf Hansson, Mika Westerberg, linux-mmc,
	linux-gpio

Hi,

On 4/8/24 5:23 PM, Andy Shevchenko wrote:
> On Sun, Apr 07, 2024 at 10:04:48PM +0200, Hans de Goede wrote:
>> Some mmc host drivers may need to fixup a card-detection GPIO's config
>> to e.g. enable the GPIO controllers builtin pull-up resistor on devices
>> where the firmware description of the GPIO is broken (e.g. GpioInt with
>> PullNone instead of PullUp in ACPI DSDT).
>>
>> Since this is the exception rather then the rule adding a config
>> parameter to mmc_gpiod_request_cd() seems undesirable, so instead
>> add a new mmc_gpiod_set_cd_config() function. This is simply a wrapper
>> to call gpiod_set_config() on the card-detect GPIO acquired through
>> mmc_gpiod_request_cd().
> 
> FWIW,
> Reviewed-by: Andy Shevchenko <andy@kernel.org>

for just this patch or for the series ?

> assuming you considered addressing nit-picks.

Ack will do.

Regards,

Hans



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

* Re: [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function
  2024-04-08 15:27   ` Hans de Goede
@ 2024-04-08 15:35     ` Andy Shevchenko
  0 siblings, 0 replies; 15+ messages in thread
From: Andy Shevchenko @ 2024-04-08 15:35 UTC (permalink / raw)
  To: Hans de Goede
  Cc: Andy Shevchenko, Adrian Hunter, Ulf Hansson, Mika Westerberg,
	linux-mmc, linux-gpio

On Mon, Apr 8, 2024 at 6:27 PM Hans de Goede <hdegoede@redhat.com> wrote:
> On 4/8/24 5:23 PM, Andy Shevchenko wrote:
> > On Sun, Apr 07, 2024 at 10:04:48PM +0200, Hans de Goede wrote:
> >> Some mmc host drivers may need to fixup a card-detection GPIO's config
> >> to e.g. enable the GPIO controllers builtin pull-up resistor on devices
> >> where the firmware description of the GPIO is broken (e.g. GpioInt with
> >> PullNone instead of PullUp in ACPI DSDT).
> >>
> >> Since this is the exception rather then the rule adding a config
> >> parameter to mmc_gpiod_request_cd() seems undesirable, so instead
> >> add a new mmc_gpiod_set_cd_config() function. This is simply a wrapper
> >> to call gpiod_set_config() on the card-detect GPIO acquired through
> >> mmc_gpiod_request_cd().
> >
> > FWIW,
> > Reviewed-by: Andy Shevchenko <andy@kernel.org>
>
> for just this patch or for the series ?

You have no cover-letter, your choice :-)
(yes, for the series, but really it's better to have a even small
cover letter, `b4` can use it for good in a few ways, although dunno
what MMC maintainers use)

> > assuming you considered addressing nit-picks.
>
> Ack will do.


-- 
With Best Regards,
Andy Shevchenko

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

end of thread, other threads:[~2024-04-08 15:36 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-07 20:04 [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Hans de Goede
2024-04-07 20:04 ` [PATCH 2/6] mmc: sdhci-acpi: Sort DMI quirks alphabetically Hans de Goede
2024-04-07 20:04 ` [PATCH 3/6] mmc: sdhci-acpi: Fix Lenovo Yoga Tablet 2 Pro 1380 sdcard slot not working Hans de Goede
2024-04-07 20:04 ` [PATCH 4/6] mmc: sdhci-acpi: Disable UHS/1.8V modes on Lenovo Yoga Tablet 2 series sdcard slot Hans de Goede
2024-04-08 15:19   ` Andy Shevchenko
2024-04-08 15:22     ` Hans de Goede
2024-04-08 15:26       ` Andy Shevchenko
2024-04-07 20:04 ` [PATCH 5/6] mmc: sdhci-acpi: Disable write protect detection on Toshiba WT10-A Hans de Goede
2024-04-07 20:04 ` [PATCH 6/6] mmc: sdhci-acpi: Add quirk to enable pull-up on the card-detect GPIO on Asus T100TA Hans de Goede
2024-04-08 15:22   ` Andy Shevchenko
2024-04-08 15:16 ` [PATCH 1/6] mmc: core: Add mmc_gpiod_set_cd_config() function Andy Shevchenko
2024-04-08 15:21   ` Hans de Goede
2024-04-08 15:23 ` Andy Shevchenko
2024-04-08 15:27   ` Hans de Goede
2024-04-08 15:35     ` Andy Shevchenko

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).