[PATCH] hwmon: (gpd-fan) Fix compilation error in non-ACPI builds

Gopi Krishna Menon posted 1 patch 3 months, 2 weeks ago
drivers/hwmon/gpd-fan.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] hwmon: (gpd-fan) Fix compilation error in non-ACPI builds
Posted by Gopi Krishna Menon 3 months, 2 weeks ago
Building gpd-fan driver without CONFIG_ACPI results in the following
build errors:

drivers/hwmon/gpd-fan.c: In function ‘gpd_ecram_read’:
drivers/hwmon/gpd-fan.c:228:9: error: implicit declaration of function ‘outb’ [-Werror=implicit-function-declaration]
  228 |         outb(0x2E, addr_port);
      |         ^~~~
drivers/hwmon/gpd-fan.c:241:16: error: implicit declaration of function ‘inb’ [-Werror=implicit-function-declaration]
  241 |         *val = inb(data_port);

The definitions for inb() and outb() come from <linux/io.h>
(specifically through <asm/io.h>), which is implicitly included via
<acpi_io.h>. When CONFIG_ACPI is not set, <acpi_io.h> is not included
resulting in <linux/io.h> to be omitted as well.

Since the driver does not depend on ACPI, remove <linux/acpi.h> and add
<linux/io.h> directly to fix the compilation errors.

Signed-off-by: Gopi Krishna Menon <krishnagopi487@gmail.com>
---

Tested the changes by recompiling the kernel with and without
CONFIG_ACPI for x86_64 architecture verifying that no
compilation errors are generated.

 drivers/hwmon/gpd-fan.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/hwmon/gpd-fan.c b/drivers/hwmon/gpd-fan.c
index 138cff0beb4c..4c45c0154a45 100644
--- a/drivers/hwmon/gpd-fan.c
+++ b/drivers/hwmon/gpd-fan.c
@@ -12,9 +12,9 @@
  * Copyright (c) 2024 Cryolitia PukNgae
  */
 
-#include <linux/acpi.h>
 #include <linux/dmi.h>
 #include <linux/hwmon.h>
+#include <linux/io.h>
 #include <linux/ioport.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
-- 
2.43.0

Re: [PATCH] hwmon: (gpd-fan) Fix compilation error in non-ACPI builds
Posted by Guenter Roeck 3 months, 2 weeks ago
On Sat, Oct 25, 2025 at 01:50:40AM +0530, Gopi Krishna Menon wrote:
> Building gpd-fan driver without CONFIG_ACPI results in the following
> build errors:
> 
> drivers/hwmon/gpd-fan.c: In function ‘gpd_ecram_read’:
> drivers/hwmon/gpd-fan.c:228:9: error: implicit declaration of function ‘outb’ [-Werror=implicit-function-declaration]
>   228 |         outb(0x2E, addr_port);
>       |         ^~~~
> drivers/hwmon/gpd-fan.c:241:16: error: implicit declaration of function ‘inb’ [-Werror=implicit-function-declaration]
>   241 |         *val = inb(data_port);
> 
> The definitions for inb() and outb() come from <linux/io.h>
> (specifically through <asm/io.h>), which is implicitly included via
> <acpi_io.h>. When CONFIG_ACPI is not set, <acpi_io.h> is not included
> resulting in <linux/io.h> to be omitted as well.
> 
> Since the driver does not depend on ACPI, remove <linux/acpi.h> and add
> <linux/io.h> directly to fix the compilation errors.
> 
> Signed-off-by: Gopi Krishna Menon <krishnagopi487@gmail.com>

Applied.

Thanks,
Guenter