[PATCH V2] PCI: imx6: Change imx_pcie_deassert_core_reset() to return void

Hongxing Zhu hongxing.zhu at nxp.com
Thu Mar 5 19:09:08 PST 2026


> -----Original Message-----
> From: Sherry Sun <sherry.sun at nxp.com>
> Sent: 2026年3月6日 10:13
> To: Hongxing Zhu <hongxing.zhu at nxp.com>; l.stach at pengutronix.de; Frank
> Li <frank.li at nxp.com>; bhelgaas at google.com; lpieralisi at kernel.org;
> kwilczynski at kernel.org; mani at kernel.org; robh at kernel.org;
> krzk+dt at kernel.org; s.hauer at pengutronix.de; festevam at gmail.com
> Cc: imx at lists.linux.dev; kernel at pengutronix.de; linux-pci at vger.kernel.org;
> linux-arm-kernel at lists.infradead.org; linux-kernel at vger.kernel.org
> Subject: [PATCH V2] PCI: imx6: Change imx_pcie_deassert_core_reset() to
> return void
> 
> The function imx_pcie_deassert_core_reset() always returns 0 and the
> return value is not used meaningfully by its callers.
> 
> Change the return type from int to void to simplify the code and remove
> unnecessary error handling paths. No functional change intended.
> 
> Signed-off-by: Sherry Sun <sherry.sun at nxp.com>
> Reviewed-by: Frank Li <Frank.Li at nxp.com>
Reviewed-by: Richard Zhu <hongxing.zhu at nxp.com>

Best Regards
Richard Zhu

> ---
> Changes in V2:
> 1. Remove the Fixes tag.
> 2. Add Reviewed-by tag.
> ---
>  drivers/pci/controller/dwc/pci-imx6.c | 14 +++-----------
>  1 file changed, 3 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/pci/controller/dwc/pci-imx6.c
> b/drivers/pci/controller/dwc/pci-imx6.c
> index 81a7093494c8..ba6e7c7ee625 100644
> --- a/drivers/pci/controller/dwc/pci-imx6.c
> +++ b/drivers/pci/controller/dwc/pci-imx6.c
> @@ -906,7 +906,7 @@ static void imx_pcie_assert_core_reset(struct
> imx_pcie *imx_pcie)
>  	gpiod_set_value_cansleep(imx_pcie->reset_gpiod, 1);  }
> 
> -static int imx_pcie_deassert_core_reset(struct imx_pcie *imx_pcie)
> +static void imx_pcie_deassert_core_reset(struct imx_pcie *imx_pcie)
>  {
>  	reset_control_deassert(imx_pcie->pciephy_reset);
> 
> @@ -920,8 +920,6 @@ static int imx_pcie_deassert_core_reset(struct
> imx_pcie *imx_pcie)
>  		/* Wait for 100ms after PERST# deassertion (PCIe r5.0, 6.6.1) */
>  		msleep(100);
>  	}
> -
> -	return 0;
>  }
> 
>  static int imx_pcie_wait_for_speed_change(struct imx_pcie *imx_pcie) @@
> -1292,11 +1290,7 @@ static int imx_pcie_host_init(struct dw_pcie_rp *pp)
>  	/* Make sure that PCIe LTSSM is cleared */
>  	imx_pcie_ltssm_disable(dev);
> 
> -	ret = imx_pcie_deassert_core_reset(imx_pcie);
> -	if (ret < 0) {
> -		dev_err(dev, "pcie deassert core reset failed: %d\n", ret);
> -		goto err_phy_off;
> -	}
> +	imx_pcie_deassert_core_reset(imx_pcie);
> 
>  	if (imx_pcie->drvdata->wait_pll_lock) {
>  		ret = imx_pcie->drvdata->wait_pll_lock(imx_pcie);
> @@ -1613,9 +1607,7 @@ static int imx_pcie_resume_noirq(struct device
> *dev)
>  		ret = imx_pcie->drvdata->enable_ref_clk(imx_pcie, true);
>  		if (ret)
>  			return ret;
> -		ret = imx_pcie_deassert_core_reset(imx_pcie);
> -		if (ret)
> -			return ret;
> +		imx_pcie_deassert_core_reset(imx_pcie);
> 
>  		/*
>  		 * Using PCIE_TEST_PD seems to disable MSI and powers down the
> --
> 2.37.1



More information about the linux-arm-kernel mailing list