When compiling a driver which includes both include/linux/acpi.h and
include/acpi/acpi_bus.h for when CONFIG_ACPI=n for i386, I get this:

/include/acpi/acpi_bus.h:53:20: error: conflicting types for ‘acpi_evaluate_dsm’
 union acpi_object *acpi_evaluate_dsm(acpi_handle handle, const guid_t *guid,
                    ^~~~~~~~~~~~~~~~~
In file included from drivers/scsi/hisi_sas/hisi_sas.h:10:0,
                 from drivers/scsi/hisi_sas/hisi_sas_main.c:7:
./include/linux/acpi.h:866:34: note: previous definition of ‘acpi_evaluate_dsm’ 
was here
 static inline union acpi_object *acpi_evaluate_dsm(acpi_handle handle,
                                  ^~~~~~~~~~~~~~~~~
Fix by making prototype in include/linux/acpi.h consistent.

Signed-off-by: John Garry <[email protected]>

diff --git a/include/linux/acpi.h b/include/linux/acpi.h
index 3eb4cb88e8a6..72a696ceba8d 100644
--- a/include/linux/acpi.h
+++ b/include/linux/acpi.h
@@ -866,7 +866,7 @@ static inline bool acpi_driver_match_device(struct device 
*dev,
 
 static inline union acpi_object *acpi_evaluate_dsm(acpi_handle handle,
                                                   const guid_t *guid,
-                                                  int rev, int func,
+                                                  u64 rev, u64 func,
                                                   union acpi_object *argv4)
 {
        return NULL;
-- 
2.26.2


Reply via email to