On Fr, 2026-03-13 at 13:27 +0800, Ryan Chen wrote:
quoted hunk ↗ jump to hunk
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.c b/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(struct platform_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(struct platform_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().
regards
Philipp