[PATCH] PCI: brcmstb: Fix control flow issue

From: Qianqiang Liu
Date: Tue Sep 10 2024 - 22:52:01 EST


The type of "num_inbound_wins" is "u8", so the less-than-zero
comparison of an unsigned value is never true.

Signed-off-by: Qianqiang Liu <qianqiang.liu@xxxxxxx>
---
drivers/pci/controller/pcie-brcmstb.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c
index 55311dc47615..3e4572c3eeb1 100644
--- a/drivers/pci/controller/pcie-brcmstb.c
+++ b/drivers/pci/controller/pcie-brcmstb.c
@@ -1090,9 +1090,11 @@ static int brcm_pcie_setup(struct brcm_pcie *pcie)
u32p_replace_bits(&tmp, 1, PCIE_MISC_MISC_CTRL_PCIE_RCB_64B_MODE_MASK);
writel(tmp, base + PCIE_MISC_MISC_CTRL);

- num_inbound_wins = brcm_pcie_get_inbound_wins(pcie, inbound_wins);
- if (num_inbound_wins < 0)
- return num_inbound_wins;
+ ret = brcm_pcie_get_inbound_wins(pcie, inbound_wins);
+ if (ret < 0)
+ return ret;
+
+ num_inbound_wins = (u8)ret;

set_inbound_win_registers(pcie, inbound_wins, num_inbound_wins);

--
2.39.2