Edward O'Callaghan (firstname.lastname@example.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5872
commit aaa70505b027c4276a2feb7e98a52e1abb0fdb71 Author: Edward O'Callaghan email@example.com Date: Mon May 26 17:38:23 2014 +1000
Intel: Add common header file for CAR setup
When passing '-ffreestanding' the 'main' romstage.c may no longer necessarily be considered the entry point.
From the C specification in 188.8.131.52 Freestanding environment;
"In a freestanding environment (in which C program execution may take place without any benefit of an operating system), the name and type of the function called at program startup are implementation-defined."
Clang complains about these being missing as Clang is somewhat more strict about the spec than GNU/GCC is. An advantage here is that a different entry-point type-signature shall now be warned about at compile time.
Change-Id: I467001adabd47958c30c9a15e3248e42ed1151f3 Signed-off-by: Edward O'Callaghan firstname.lastname@example.org --- src/include/cpu/intel/car.h | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/src/include/cpu/intel/car.h b/src/include/cpu/intel/car.h new file mode 100644 index 0000000..dc89ffc --- /dev/null +++ b/src/include/cpu/intel/car.h @@ -0,0 +1,7 @@ +#ifndef _CPU_INTEL_CAR_H +#define _CPU_INTEL_CAR_H + +/* std signature of entry-point to romstage.c */ +void main(unsigned long bist); + +#endif /* _CPU_INTEL_CAR_H */