Browse Source

ACPI / IBFT: Fix incorrect <acpi/acpi.h> inclusion in iSCSI boot firmware module

To avoid build problems and breaking dependencies between ACPI header
files, <acpi/acpi.h> should not be included directly by code outside
of the ACPI core subsystem, but this is done by the ACPI iSCSI
Boot Firmware code.

The iBFT specification doesn't mention whether or not it can appear
on a non-ACPI platform, but is says that ACPI 3.0b defines the
mechanism.  The current CONFIG_ISCSI_IBFT_FIND code doesn't use the
ACPI tables API to locate the table, so it doesn't rely on CONFIG_ACPI
directly.

However, since iBFT is is an ACPI-based mechanism (please refer to
the documentation link below for more information), it should be
correct to make CONFIG_ISCSI_IBFT_FIND depend on CONFIG_ACPI (even
though the table location can be implemented without using ACPI
tables API).

After that change, include/linux/iscsi_ibft.h can be modified to
include <linux/acpi.h> instead of <acpi/acpi.h> as appropriate.

References: http://www.microsoft.com/whdc/system/platform/firmware/ibft.mspx
Cc: Konrad Rzeszutek Wilk <konrad@kernel.org>
Cc: Peter Jones <pjones@redhat.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
[rjw: Subject and changelog]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Lv Zheng 11 years ago
parent
commit
9d24622ced
2 changed files with 2 additions and 2 deletions
  1. 1 1
      drivers/firmware/Kconfig
  2. 1 1
      include/linux/iscsi_ibft.h

+ 1 - 1
drivers/firmware/Kconfig

@@ -110,7 +110,7 @@ config DMI_SYSFS
 
 
 config ISCSI_IBFT_FIND
 config ISCSI_IBFT_FIND
 	bool "iSCSI Boot Firmware Table Attributes"
 	bool "iSCSI Boot Firmware Table Attributes"
-	depends on X86
+	depends on X86 && ACPI
 	default n
 	default n
 	help
 	help
 	  This option enables the kernel to find the region of memory
 	  This option enables the kernel to find the region of memory

+ 1 - 1
include/linux/iscsi_ibft.h

@@ -21,7 +21,7 @@
 #ifndef ISCSI_IBFT_H
 #ifndef ISCSI_IBFT_H
 #define ISCSI_IBFT_H
 #define ISCSI_IBFT_H
 
 
-#include <acpi/acpi.h>	/* FIXME: inclusion should be removed */
+#include <linux/acpi.h>
 
 
 /*
 /*
  * Logical location of iSCSI Boot Format Table.
  * Logical location of iSCSI Boot Format Table.