[PATCH v2] PCI: s32g: Fix ports parsing

Frank Li Frank.li at nxp.com
Mon Feb 2 09:42:46 PST 2026


On Mon, Feb 02, 2026 at 04:10:50PM +0100, Vincent Guittot wrote:
> No error return is missing after the loop resulting in removing the
> ports from the list.
>
> Fixes: 5cbc7d3e316e ("PCI: s32g: Add NXP S32G PCIe controller driver (RC)")
> Signed-off-by: Vincent Guittot <vincent.guittot at linaro.org>
> ---
>
> Change since v1:
> - handle correctly the case when there is no child port
>
>  drivers/pci/controller/dwc/pcie-nxp-s32g.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pci/controller/dwc/pcie-nxp-s32g.c b/drivers/pci/controller/dwc/pcie-nxp-s32g.c
> index 47745749f75c..b3ec38099fa3 100644
> --- a/drivers/pci/controller/dwc/pcie-nxp-s32g.c
> +++ b/drivers/pci/controller/dwc/pcie-nxp-s32g.c
> @@ -282,12 +282,12 @@ static int s32g_pcie_parse_ports(struct device *dev, struct s32g_pcie *s32g_pp)
>
>  		ret = s32g_pcie_parse_port(s32g_pp, of_port);
>  		if (ret)
> -			goto err_port;
> +			break;
>  	}
>
> -err_port:
> -	list_for_each_entry_safe(port, tmp, &s32g_pp->ports, list)
> -		list_del(&port->list);

break and goto is logical equal here. So only need below if (ret).

Frank

> +	if (ret)
> +		list_for_each_entry_safe(port, tmp, &s32g_pp->ports, list)
> +			list_del(&port->list);
>
>  	return ret;
>  }
> --
> 2.43.0
>



More information about the linux-arm-kernel mailing list