diff --git a/headers/os/drivers/ACPI.h b/headers/os/drivers/ACPI.h index 1706806e8e..2c25fb3fca 100644 --- a/headers/os/drivers/ACPI.h +++ b/headers/os/drivers/ACPI.h @@ -15,10 +15,15 @@ typedef struct acpi_object_type acpi_object_type; #define B_ACPI_MODULE_NAME "bus_managers/acpi/v1" -/* This must be uint64 for 64 bit! */ +#ifdef B_HAIKU_64_BIT +typedef uint64 acpi_physical_address; +typedef uint64 acpi_io_address; +typedef uint64 acpi_size; +#else typedef uint32 acpi_physical_address; typedef uint32 acpi_io_address; typedef uint32 acpi_size; +#endif /* Actually a ptr to a NS Node */ typedef void * acpi_handle; diff --git a/src/add-ons/kernel/bus_managers/acpi/include/platform/achaiku.h b/src/add-ons/kernel/bus_managers/acpi/include/platform/achaiku.h index f1c15d1882..82bbdc550d 100644 --- a/src/add-ons/kernel/bus_managers/acpi/include/platform/achaiku.h +++ b/src/add-ons/kernel/bus_managers/acpi/include/platform/achaiku.h @@ -144,8 +144,12 @@ #define COMPILER_DEPENDENT_INT64 int64 #define COMPILER_DEPENDENT_UINT64 uint64 -/* TODO: Add 64 bit when Haiku goes 64 bit */ + +#ifdef B_HAIKU_64_BIT +#define ACPI_MACHINE_WIDTH 64 +#else #define ACPI_MACHINE_WIDTH 32 +#endif #ifdef _KERNEL_MODE