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

From: Hongxing Zhu

Date: Thu Mar 05 2026 - 22:09:22 EST


> -----Original Message-----
> From: Sherry Sun <sherry.sun@xxxxxxx>
> Sent: 2026年3月6日 10:13
> To: Hongxing Zhu <hongxing.zhu@xxxxxxx>; l.stach@xxxxxxxxxxxxxx; Frank
> Li <frank.li@xxxxxxx>; bhelgaas@xxxxxxxxxx; lpieralisi@xxxxxxxxxx;
> kwilczynski@xxxxxxxxxx; mani@xxxxxxxxxx; robh@xxxxxxxxxx;
> krzk+dt@xxxxxxxxxx; s.hauer@xxxxxxxxxxxxxx; festevam@xxxxxxxxx
> Cc: imx@xxxxxxxxxxxxxxx; kernel@xxxxxxxxxxxxxx; linux-pci@xxxxxxxxxxxxxxx;
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> 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@xxxxxxx>
> Reviewed-by: Frank Li <Frank.Li@xxxxxxx>
Reviewed-by: Richard Zhu <hongxing.zhu@xxxxxxx>

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