[PATCH 1/3] ACPI: introduce macros for using the ACPI specification version

al.stone at linaro.org al.stone at linaro.org
Thu Jun 11 12:45:09 PDT 2015

From: Al Stone <al.stone at linaro.org>

Add the ACPI_SPEC_VERSION() macro to build a proper version number from
a major and minor revision number.  Add also the ACPI_FADT_SPEC_VERSION
that constructs a proper version number from the entries in the current

These macros are added in order to simplify retrieving and comparing ACPI
specification version numbers, since this is becoming a more frequent need.
In particular, there are some architectures that require at least a certain
version of the spec, and there are differences in some structure sizes that
have changed with recent versions but can only be tracked by spec version

Signed-off-by: Al Stone <al.stone at linaro.org>
Reviewed-by: Hanjun Guo <hanjun.guo at linaro.org>
Reviewed-by: Graeme Gregory <graeme.gregory at linaro.org>

CC: Rafael J. Wysocki <rjw at rjwysocki.net>
CC: Len Brown <lenb at kernel.org>

 include/linux/acpi.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/linux/acpi.h b/include/linux/acpi.h
index a4acb55..33ed313 100644
--- a/include/linux/acpi.h
+++ b/include/linux/acpi.h
@@ -48,6 +48,11 @@
 #include <acpi/acpi_io.h>
 #include <asm/acpi.h>
+#define ACPI_SPEC_VERSION(major, minor)	((major<<8)|minor)
+	ACPI_SPEC_VERSION(acpi_gbl_FADT.header.revision, \
+			  acpi_gbl_FADT.minor_revision)
 static inline acpi_handle acpi_device_handle(struct acpi_device *adev)
 	return adev ? adev->handle : NULL;

More information about the linux-arm-kernel mailing list