Re: [PATCH v6 11/13] PCI: brcmstb: Check return value of all reset_control_xxx calls
From: Manivannan Sadhasivam
Date: Fri Aug 16 2024 - 03:15:01 EST
On Thu, Aug 15, 2024 at 06:57:24PM -0400, Jim Quinlan wrote:
> Always check the return value for invocations of reset_control_xxx() and
> propagate the error to the next level. Although the current functions
> in reset-brcmstb.c cannot fail, this may someday change.
>
> Signed-off-by: Jim Quinlan <james.quinlan@xxxxxxxxxxxx>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
But one comment below.
> Reviewed-by: Stanimir Varbanov <svarbanov@xxxxxxx>
> Reviewed-by: Florian Fainelli <florian.fainelli@xxxxxxxxxxxx>
> ---
> drivers/pci/controller/pcie-brcmstb.c | 102 ++++++++++++++++++--------
> 1 file changed, 73 insertions(+), 29 deletions(-)
>
> diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c
> index c5d3a5e9e0fc..d19eeeed623b 100644
> --- a/drivers/pci/controller/pcie-brcmstb.c
> +++ b/drivers/pci/controller/pcie-brcmstb.c
[...]
> static int pci_dev_may_wakeup(struct pci_dev *dev, void *data)
> @@ -1479,9 +1515,12 @@ static int brcm_pcie_suspend_noirq(struct device *dev)
> {
> struct brcm_pcie *pcie = dev_get_drvdata(dev);
> struct pci_host_bridge *bridge = pci_host_bridge_from_priv(pcie);
> - int ret;
> + int ret, rret;
> +
> + ret = brcm_pcie_turn_off(pcie);
> + if (ret)
> + return ret;
>
> - brcm_pcie_turn_off(pcie);
> /*
> * If brcm_phy_stop() returns an error, just dev_err(). If we
> * return the error it will cause the suspend to fail and this is a
> @@ -1510,7 +1549,10 @@ static int brcm_pcie_suspend_noirq(struct device *dev)
> pcie->sr->supplies);
> if (ret) {
> dev_err(dev, "Could not turn off regulators\n");
> - reset_control_reset(pcie->rescal);
> + rret = reset_control_reset(pcie->rescal);
> + if (rret)
> + dev_err(dev, "failed to reset 'rascal' controller ret=%d\n",
Do you really mean to say 'rascal'? ;)
- Mani
--
மணிவண்ணன் சதாசிவம்