include/gpio: skip everything but soc/gpio.h include in ASM & ACPI cases

When gpio.h gets directly or indirectly included in the DSDT ar an
assembly file, everything but the preprocessor defines for the GPIOs
shouldn't be included to keep IASL or the assembler happy.

Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: I046ed87d3947ba5b1fcd0bdd4cffcda57bc13404
Reviewed-on: https://review.coreboot.org/c/coreboot/+/70509
Reviewed-by: Fred Reitberger <reitbergerfred@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Felix Held 2022-12-08 20:42:02 +01:00
parent 3cd89a003b
commit acf96dfcdc
1 changed files with 5 additions and 0 deletions

View File

@ -4,6 +4,9 @@
#define __SRC_INCLUDE_GPIO_H__ #define __SRC_INCLUDE_GPIO_H__
#include <soc/gpio.h> /* IWYU pragma: export */ #include <soc/gpio.h> /* IWYU pragma: export */
#ifndef __ASSEMBLER__ /* __ASSEMBLER__ also covers __ACPI__ case */
#include <types.h> #include <types.h>
/* <soc/gpio.h> must typedef a gpio_t that fits in 32 bits. */ /* <soc/gpio.h> must typedef a gpio_t that fits in 32 bits. */
@ -96,4 +99,6 @@ static inline uint32_t gpio_binary_first_base3_value(const gpio_t gpio[],
return _gpio_base3_value(gpio, num_gpio, 1); return _gpio_base3_value(gpio, num_gpio, 1);
} }
#endif /* !__ASSEMBLER__ */
#endif /* __SRC_INCLUDE_GPIO_H__ */ #endif /* __SRC_INCLUDE_GPIO_H__ */