Skip to contentSkip to conversation

FAILED: patch "[PATCH] iio: adc: aspeed: propagate reset deassert errors" failed to apply to 5.15-stable tree

PATCH New [email protected] 2 participants 2 messages Oct 6 – Oct 7

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 5.15-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

To reproduce the conflict and resubmit, you may use the following commands:

git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-5.15.y
git checkout FETCH_HEAD
git cherry-pick -x 95e4eb426b4bd666fa2f37886c0ddf74a0cc6167
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2026100601-fanning-thursday-e3d4@gregkh' --subject-prefix 'PATCH 5.15.y' 'HEAD^..'

Possible dependencies:

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From 95e4eb426b4bd666fa2f37886c0ddf74a0cc6167 Mon Sep 17 00:00:00 2001
From: Pengpeng Hou <[email protected]>
Date: Sun, 30 Aug 2026 21:42:27 +0800
Subject: [PATCH] iio: adc: aspeed: propagate reset deassert errors

aspeed_adc_probe() continues to register ADC resources after deasserting the shared reset, even if the reset controller reports a failure.

A failed deassertion leaves the hardware unavailable, so stop probing before installing the cleanup action and enabling the ADC.

Fixes edf7550a1f93 ("iio: adc: aspeed: Deassert reset in probe")
drivers/iio/adc/aspeed_adc.c +3 -1
index 6169ce28261e..452c30cf04f2 100644
@@ -585,7 +585,9 @@ static int aspeed_adc_probe(struct platform_device *pdev)
 		return dev_err_probe(dev, PTR_ERR(data->rst),
 				     "invalid or missing reset controller device tree entry");
 
-	reset_control_deassert(data->rst);
+	ret = reset_control_deassert(data->rst);
+	if (ret)
+		return ret;
 
 	ret = devm_add_action_or_reset(dev, aspeed_adc_reset_assert, data->rst);
 	if (ret)
maintainer
#1 lore raw

PATCH 1/1 iio: adc: aspeed: propagate reset deassert errors

From: Pengpeng Hou <[email protected]>

[ Upstream commit 95e4eb426b4bd666fa2f37886c0ddf74a0cc6167 ]

aspeed_adc_probe() continues to register ADC resources after deasserting the shared reset, even if the reset controller reports a failure.

A failed deassertion leaves the hardware unavailable, so stop probing before installing the cleanup action and enabling the ADC.

Fixes edf7550a1f93 ("iio: adc: aspeed: Deassert reset in probe")
[ sashal: Replaced `return ret` with `goto reset_error` to accommodate manual clock cleanup. ]
---
 drivers/iio/adc/aspeed_adc.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/iio/adc/aspeed_adc.c +3 -1
index 34ec0c28b2dff..012cc9291bef3 100644
@@ -221,7 +221,9 @@ static int aspeed_adc_probe(struct platform_device *pdev)
 		ret = PTR_ERR(data->rst);
 		goto reset_error;
 	}
-	reset_control_deassert(data->rst);
+	ret = reset_control_deassert(data->rst);
+	if (ret)
+		goto reset_error;
 
 	model_data = of_device_get_match_data(&pdev->dev);
 
Signature · 1 line
2.53.0