]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
platform/x86/intel/speed_select_if: Convert PCIBIOS_* return codes to errnos
authorHaotian Zhang <vulab@iscas.ac.cn>
Mon, 17 Nov 2025 03:33:54 +0000 (11:33 +0800)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 18 Nov 2025 07:35:12 +0000 (09:35 +0200)
isst_if_probe() uses pci_read_config_dword() that returns PCIBIOS_*
codes. The return code is returned from the probe function as is but
probe functions should return normal errnos. A proper implementation
can be found in drivers/leds/leds-ss4200.c.

Convert PCIBIOS_* return codes using pcibios_err_to_errno() into
normal errno before returning.

Fixes: d3a23584294c ("platform/x86: ISST: Add Intel Speed Select mmio interface")
Signed-off-by: Haotian Zhang <vulab@iscas.ac.cn>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Link: https://patch.msgid.link/20251117033354.132-1-vulab@iscas.ac.cn
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/x86/intel/speed_select_if/isst_if_mmio.c

index 3f4343147dadb0e5d732761f216a36e7f64b2d5d..950ede5eab7694f222d1f5930c9d254279ca275a 100644 (file)
@@ -108,11 +108,11 @@ static int isst_if_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
        ret = pci_read_config_dword(pdev, 0xD0, &mmio_base);
        if (ret)
-               return ret;
+               return pcibios_err_to_errno(ret);
 
        ret = pci_read_config_dword(pdev, 0xFC, &pcu_base);
        if (ret)
-               return ret;
+               return pcibios_err_to_errno(ret);
 
        pcu_base &= GENMASK(10, 0);
        base_addr = (u64)mmio_base << 23 | (u64) pcu_base << 12;