The regulator framework can return negative error codes via regulator_get_current_limit() for regulators that don't provide current information. The subsequent check for postive values isn't very useful, if the variable is unsigned. Let's just match the signedness of the return value. Prevents error messages like this, seen on Samsung Chromebook Plus: [ 1.069372] rockchip-pcie f8000000.pcie: invalid power supply Fixes: 4816c4c7b82b ("PCI: rockchip: Provide captured slot power limit and scale") Signed-off-by: Brian Norris <briannorris@xxxxxxxxxxxx> Acked-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx> --- v2: add Shawn's ack --- drivers/pci/host/pcie-rockchip.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/pci/host/pcie-rockchip.c b/drivers/pci/host/pcie-rockchip.c index 26ddd3535272..d785f64ec03b 100644 --- a/drivers/pci/host/pcie-rockchip.c +++ b/drivers/pci/host/pcie-rockchip.c @@ -425,7 +425,8 @@ static struct pci_ops rockchip_pcie_ops = { static void rockchip_pcie_set_power_limit(struct rockchip_pcie *rockchip) { - u32 status, curr, scale, power; + int curr; + u32 status, scale, power; if (IS_ERR(rockchip->vpcie3v3)) return; -- 2.12.0.246.ga2ecc84866-goog