gpio: amd8111: Convert PCIBIOS_* return codes to errnos
authorIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Mon, 27 May 2024 13:23:44 +0000 (16:23 +0300)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 30 May 2024 09:20:53 +0000 (11:20 +0200)
amd_gpio_init() uses pci_read_config_dword() that returns PCIBIOS_*
codes. The return code is then returned as is but amd_gpio_init() is
a module init function that should return normal errnos.

Convert PCIBIOS_* returns code using pcibios_err_to_errno() into normal
errno before returning it from amd_gpio_init().

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Link: https://lore.kernel.org/r/20240527132345.13956-1-ilpo.jarvinen@linux.intel.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpio-amd8111.c

index 6f3ded619c8b2a83310907c3be69773f420955eb..3377667a28de7c2794b0892502d2181300d4f1cc 100644 (file)
@@ -195,8 +195,10 @@ static int __init amd_gpio_init(void)
 
 found:
        err = pci_read_config_dword(pdev, 0x58, &gp.pmbase);
-       if (err)
+       if (err) {
+               err = pcibios_err_to_errno(err);
                goto out;
+       }
        err = -EIO;
        gp.pmbase &= 0x0000FF00;
        if (gp.pmbase == 0)