|
@@ -199,9 +199,29 @@ typedef int s32;
|
|
|
typedef s32 acpi_native_int;
|
|
|
|
|
|
typedef u32 acpi_size;
|
|
|
+
|
|
|
+#ifdef ACPI_32BIT_PHYSICAL_ADDRESS
|
|
|
+
|
|
|
+/*
|
|
|
+ * OSPMs can define this to shrink the size of the structures for 32-bit
|
|
|
+ * none PAE environment. ASL compiler may always define this to generate
|
|
|
+ * 32-bit OSPM compliant tables.
|
|
|
+ */
|
|
|
typedef u32 acpi_io_address;
|
|
|
typedef u32 acpi_physical_address;
|
|
|
|
|
|
+#else /* ACPI_32BIT_PHYSICAL_ADDRESS */
|
|
|
+
|
|
|
+/*
|
|
|
+ * It is reported that, after some calculations, the physical addresses can
|
|
|
+ * wrap over the 32-bit boundary on 32-bit PAE environment.
|
|
|
+ * https://bugzilla.kernel.org/show_bug.cgi?id=87971
|
|
|
+ */
|
|
|
+typedef u64 acpi_io_address;
|
|
|
+typedef u64 acpi_physical_address;
|
|
|
+
|
|
|
+#endif /* ACPI_32BIT_PHYSICAL_ADDRESS */
|
|
|
+
|
|
|
#define ACPI_MAX_PTR ACPI_UINT32_MAX
|
|
|
#define ACPI_SIZE_MAX ACPI_UINT32_MAX
|
|
|
|