mmc: meson-gx: support platform interrupt as card detect interrupt

Use a new mmc core feature and support specifying the card detect
gpio interrupt in device tree.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Link: https://lore.kernel.org/r/2bb70611-5dea-1144-51bd-93c46b455392@gmail.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
Heiner Kallweit 2023-02-14 22:44:03 +01:00 committed by Ulf Hansson
parent 09b31a6103
commit a543f7024e
1 changed files with 4 additions and 1 deletions

View File

@ -1166,7 +1166,7 @@ static int meson_mmc_probe(struct platform_device *pdev)
struct resource *res; struct resource *res;
struct meson_host *host; struct meson_host *host;
struct mmc_host *mmc; struct mmc_host *mmc;
int ret; int cd_irq, ret;
mmc = devm_mmc_alloc_host(&pdev->dev, sizeof(struct meson_host)); mmc = devm_mmc_alloc_host(&pdev->dev, sizeof(struct meson_host));
if (!mmc) if (!mmc)
@ -1213,6 +1213,9 @@ static int meson_mmc_probe(struct platform_device *pdev)
if (host->irq <= 0) if (host->irq <= 0)
return -EINVAL; return -EINVAL;
cd_irq = platform_get_irq_optional(pdev, 1);
mmc_gpio_set_cd_irq(mmc, cd_irq);
host->pinctrl = devm_pinctrl_get(&pdev->dev); host->pinctrl = devm_pinctrl_get(&pdev->dev);
if (IS_ERR(host->pinctrl)) if (IS_ERR(host->pinctrl))
return PTR_ERR(host->pinctrl); return PTR_ERR(host->pinctrl);