RE: [PATCH 2/2] mmc: sdhci-of-aspeed: Add ast2700 support
From: Ryan Chen <ryan_chen@aspeedtech.com>
Date: 2026-03-14 01:21:11
Also in:
linux-aspeed, linux-devicetree, linux-mmc, lkml, openbmc
Subject: RE: [PATCH 2/2] mmc: sdhci-of-aspeed: Add ast2700 supportquoted
Subject: Re: [PATCH 2/2] mmc: sdhci-of-aspeed: Add ast2700 support On Fr, 2026-03-13 at 13:27 +0800, Ryan Chen wrote:quoted
Add support for the AST2700 SOC in the sd controller driver. AST2700 sd controller requires an reset line, so hook up the optional reset control and deassert it during probe. Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com> --- drivers/mmc/host/sdhci-of-aspeed.c | 11 +++++++++++ 1 file changed, 11 insertions(+)diff --git a/drivers/mmc/host/sdhci-of-aspeed.cb/drivers/mmc/host/sdhci-of-aspeed.c index ca97b01996b1..91c36245e506 100644--- a/drivers/mmc/host/sdhci-of-aspeed.c +++ b/drivers/mmc/host/sdhci-of-aspeed.c@@ -520,6 +520,7 @@ static int aspeed_sdc_probe(structplatform_device *pdev) { struct device_node *parent, *child; + struct reset_control *reset; struct aspeed_sdc *sdc; int ret;@@ -529,6 +530,15 @@ static int aspeed_sdc_probe(structplatform_device *pdev) spin_lock_init(&sdc->lock); + reset = reset_control_get_optional_exclusive(&pdev->dev, NULL);This is missing a reset_control_put() in aspeed_sdc_remove(). Or use devm_reset_control_get_optional_exclusive(). Is it ok to assert this reset control in _remove()? If so, you could use devm_reset_control_get_optional_exclusive_deasserted().Thanks the guidance. I will update use sdc->rst = devm_reset_control_get_optional_exclusive(&pdev->dev, NULL); if (IS_ERR(sdc->rst)) return dev_err_probe(&pdev->dev, PTR_ERR(sdc->rst), "unable to acquire reset\n");
Sorry, I review the devm_reset_control_get_optional_exclusive_deasserted I will modify with following in probe. sdc->rst = devm_reset_control_get_optional_exclusive_deasserted(&pdev->dev, NULL); if (IS_ERR(sdc->rst)) return dev_err_probe(&pdev->dev, PTR_ERR(sdc->rst), "unable to acquire reset\n"); And add reset_control_assert(sdc->rst); in remove.