diff options
author | Chunyan Zhang <chunyan.zhang@unisoc.com> | 2020-12-09 08:51:06 +0300 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2020-12-09 11:41:49 +0300 |
commit | 263ade7166a2e589c5b605272690c155c0637dcb (patch) | |
tree | 956cd786390a72718d09d59d0a7518fd15f67e1e /drivers/gpio/gpio-eic-sprd.c | |
parent | 77c12bf3839479c3963433043e2051d738f3ab63 (diff) | |
download | linux-263ade7166a2e589c5b605272690c155c0637dcb.tar.xz |
gpio: eic-sprd: break loop when getting NULL device resource
EIC controller have unfixed numbers of banks on different Spreadtrum SoCs,
and each bank has its own base address, the loop of getting there base
address in driver should break if the resource gotten via
platform_get_resource() is NULL already. The later ones would be all NULL
even if the loop continues.
Fixes: 25518e024e3a ("gpio: Add Spreadtrum EIC driver support")
Signed-off-by: Chunyan Zhang <chunyan.zhang@unisoc.com>
Link: https://lore.kernel.org/r/20201209055106.840100-1-zhang.lyra@gmail.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-eic-sprd.c')
-rw-r--r-- | drivers/gpio/gpio-eic-sprd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-eic-sprd.c b/drivers/gpio/gpio-eic-sprd.c index ad61daf6c212..865ab2b34fdd 100644 --- a/drivers/gpio/gpio-eic-sprd.c +++ b/drivers/gpio/gpio-eic-sprd.c @@ -598,7 +598,7 @@ static int sprd_eic_probe(struct platform_device *pdev) */ res = platform_get_resource(pdev, IORESOURCE_MEM, i); if (!res) - continue; + break; sprd_eic->base[i] = devm_ioremap_resource(&pdev->dev, res); if (IS_ERR(sprd_eic->base[i])) |