summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2020-04-09 01:57:37 +0300
committerBin Meng <bmeng.cn@gmail.com>2020-04-16 09:36:28 +0300
commit89c2798f1f2f690cdd269e38ef386ff720435816 (patch)
tree788472aaf2503f56d42dddbe5a9e0470dce5a4c3
parent776cc2019467567b9a834f80cc5b03128efa372a (diff)
downloadu-boot-89c2798f1f2f690cdd269e38ef386ff720435816.tar.xz
acpi: Add an __ACPI__ preprocessor symbol
The ASL compiler cannot handle C structures and the like so needs some sort of header guard around these. We already have an __ASSEMBLY__ #define but it seems best to create a new one for ACPI since the rules may be different. Add the check to a few files that ACPI always includes. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com>
-rw-r--r--include/acpi/acpi_table.h4
-rw-r--r--include/dm/acpi.h4
-rw-r--r--scripts/Makefile.lib4
3 files changed, 10 insertions, 2 deletions
diff --git a/include/acpi/acpi_table.h b/include/acpi/acpi_table.h
index b4404a632c..dd74895813 100644
--- a/include/acpi/acpi_table.h
+++ b/include/acpi/acpi_table.h
@@ -21,6 +21,8 @@
#define ACPI_RSDP_REV_ACPI_1_0 0
#define ACPI_RSDP_REV_ACPI_2_0 2
+#if !defined(__ACPI__)
+
/*
* RSDP (Root System Description Pointer)
* Note: ACPI 1.0 didn't have length, xsdt_address, and ext_checksum
@@ -389,6 +391,8 @@ struct __packed acpi_spcr {
u32 reserved2;
};
+#endif /* !__ACPI__*/
+
#include <asm/acpi_table.h>
#endif /* __ACPI_TABLE_H__ */
diff --git a/include/dm/acpi.h b/include/dm/acpi.h
index ba0813fa21..49257914ff 100644
--- a/include/dm/acpi.h
+++ b/include/dm/acpi.h
@@ -22,6 +22,8 @@
/* Length of an ACPI name string including nul terminator */
#define ACPI_NAME_MAX (ACPI_NAME_LEN + 1)
+#if !defined(__ACPI__)
+
/**
* struct acpi_ops - ACPI operations supported by driver model
*/
@@ -70,4 +72,6 @@ int acpi_get_name(const struct udevice *dev, char *out_name);
*/
int acpi_copy_name(char *out_name, const char *name);
+#endif /* __ACPI__ */
+
#endif
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 8decb0e451..1c8cb7488f 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -437,8 +437,8 @@ ASL_TMP = $(patsubst %.c,%.asl.tmp,$@)
quiet_cmd_acpi_c_asl= ASL $<
cmd_acpi_c_asl= \
- $(CPP) -x assembler-with-cpp -D__ASSEMBLY__ -P $(UBOOTINCLUDE) \
- -o $(ASL_TMP) $< && \
+ $(CPP) -x assembler-with-cpp -D__ASSEMBLY__ -D__ACPI__ \
+ -P $(UBOOTINCLUDE) -o $(ASL_TMP) $< && \
iasl -p $@ -tc $(ASL_TMP) $(if $(KBUILD_VERBOSE:1=), >/dev/null) && \
mv $(patsubst %.c,%.hex,$@) $@