PCI: meson: Propagate devm_add_action_or_reset() failure

meson_pcie_probe_clock() enables a clock and then registers a devres
action to disable it during teardown. If devm_add_action_or_reset()
fails, it runs the action immediately, disabling the clock.

The return value is currently ignored, so on that failure path,
meson_pcie_probe_clock() returns the disabled clock and probe continues.
Return the error so the existing probe error path unwinds normally.

Fixes: 9c0ef6d34f ("PCI: amlogic: Add the Amlogic Meson PCIe controller driver")
Signed-off-by: Shuvam Pandey <shuvampandey1@gmail.com>
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patch.msgid.link/177909148011.9588.6639767953842842291@gmail.com
This commit is contained in:
Shuvam Pandey 2026-05-18 13:49:40 +05:45 committed by Manivannan Sadhasivam
parent 254f49634e
commit b12341b98d

View File

@ -204,7 +204,9 @@ static inline struct clk *meson_pcie_probe_clock(struct device *dev,
return ERR_PTR(ret);
}
devm_add_action_or_reset(dev, meson_pcie_disable_clock, clk);
ret = devm_add_action_or_reset(dev, meson_pcie_disable_clock, clk);
if (ret)
return ERR_PTR(ret);
return clk;
}