Hi, Andy IMO: 1. sfi_acpi.h should include both <linux/acpi.h> and <linux/sfi.h> and it should include <acpi/acpi.h> for !CONFIG_ACPI builds. 2. then we should include sfi_acpi.h instead of <linux/acpi.h>, <linux/sfi.h> and <acpi/acpi.h> for all of its users. I think the patch in the linux-pm/bleeding-edge queue can fix the issue you've reported: https://git.kernel.org/cgit/linux/kernel/git/rafael/linux-pm.git/commit/?h=bleeding-edge&id=c099eacbcaec4475936fbf73e499507728ce47e1 I made it a part of my header cleanup series. The story can be found in this mailing list thread: http://www.spinics.net/lists/linux-acpi/msg47510.html Thanks and best regards -Lv > -----Original Message----- > From: Andy Shevchenko [mailto:andriy.shevchenko@xxxxxxxxxxxxxxx] > Sent: Monday, December 09, 2013 5:09 PM > To: Wysocki, Rafael J; linux-acpi @ vger . kernel . org; LKML; Zheng, Lv > Cc: Andy Shevchenko > Subject: [PATCH v2] SFI: fix compilation warnings > > When build kernel with make W=1 we get the following compiler error. > > In file included from drivers/sfi/sfi_acpi.c:66:0: > include/linux/sfi_acpi.h: In function ‘acpi_sfi_table_parse’: > include/linux/sfi_acpi.h:72:2: error: implicit declaration of function ‘acpi_table_parse’ [-Werror=implicit-function-declaration] > if (!acpi_table_parse(signature, handler)) > ^ > cc1: some warnings being treated as errors > > The patch add linux/acpi.h to the top of file. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > --- > Changes to v2: > - fix for build when ACPI=n, SFI=y > drivers/sfi/sfi_acpi.c | 2 +- > include/linux/sfi_acpi.h | 4 +++- > 2 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/sfi/sfi_acpi.c b/drivers/sfi/sfi_acpi.c > index 5e753d7..5589ec5 100644 > --- a/drivers/sfi/sfi_acpi.c > +++ b/drivers/sfi/sfi_acpi.c > @@ -60,7 +60,7 @@ > #define pr_fmt(fmt) KMSG_COMPONENT ": " fmt > > #include <linux/kernel.h> > -#include <acpi/acpi.h> /* FIXME: inclusion should be removed */ > +#include <linux/acpi.h> > > #include <linux/sfi.h> > #include "sfi_core.h" > diff --git a/include/linux/sfi_acpi.h b/include/linux/sfi_acpi.h > index 2cfcb79..ecc2344 100644 > --- a/include/linux/sfi_acpi.h > +++ b/include/linux/sfi_acpi.h > @@ -60,7 +60,9 @@ > #define _LINUX_SFI_ACPI_H > > #ifdef CONFIG_SFI > -#include <acpi/acpi.h> /* FIXME: inclusion should be removed */ > + > +#include <acpi/acpi.h> > +#include <linux/acpi.h> > > extern int sfi_acpi_table_parse(char *signature, char *oem_id, > char *oem_table_id, > -- > 1.8.4.4 ��.n��������+%������w��{.n�����{�����ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f