Patrick Rudolph has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/46820 )
Change subject: cpu/x86: Use class for sipi module ......................................................................
cpu/x86: Use class for sipi module
This removes the hardcoded single assembly file and allows to add more source files to the SIPI rmodule.
This can be used to link C code for reusing existing code.
Change-Id: I701eb340688e43591dfca77f55106c5b2f1a7735 Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Makefile.inc M src/cpu/x86/Makefile.inc 2 files changed, 8 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/20/46820/1
diff --git a/Makefile.inc b/Makefile.inc index bf33f8b..6b015f7 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -93,7 +93,7 @@
####################################################################### # Add source classes and their build options -classes-y := ramstage romstage bootblock decompressor postcar smm smmstub cpu_microcode verstage +classes-y := ramstage romstage bootblock decompressor postcar sipi_vec smm smmstub cpu_microcode verstage
# Add a special 'all' class to add sources to all stages $(call add-special-class,all) diff --git a/src/cpu/x86/Makefile.inc b/src/cpu/x86/Makefile.inc index 2f789f7..66b1a68 100644 --- a/src/cpu/x86/Makefile.inc +++ b/src/cpu/x86/Makefile.inc @@ -23,10 +23,14 @@ ifeq ($(CONFIG_PARALLEL_MP),y) $(TARGET_STAGE)-srcs += $(SIPI_BIN).manual endif -rmodules_$(ARCH-$(TARGET_STAGE)-y)-$(CONFIG_PARALLEL_MP) += sipi_vector.S
-$(SIPI_DOTO): $(call src-to-obj,rmodules_$(ARCH-$(TARGET_STAGE)-y),src/cpu/x86/sipi_vector.S) - $(LD_rmodules_$(ARCH-$(TARGET_STAGE)-y)) -nostdlib -r -o $@ $^ +$(eval $(call create_class_compiler,sipi_vec,$(ARCH-$(TARGET_STAGE)-y))) +sipi_vec-generic-ccopts = $(rmodule_$(ARCH-$(TARGET_STAGE)-y)-generic-ccopts) + +sipi_vec-$(CONFIG_PARALLEL_MP) += sipi_vector.S + +$(SIPI_DOTO): $$(sipi_vec-objs) $(COMPILER_RT_sipi_vec) + $(LD_sipi_vec) -nostdlib -r -o $@ $(COMPILER_RT_FLAGS_sipi_vec) --whole-archive --start-group $(sipi_vec-objs) --no-whole-archive $(COMPILER_RT_sipi_vec) --end-group
$(eval $(call rmodule_link,$(SIPI_ELF), $(SIPI_DOTO), 0,$(ARCH-$(TARGET_STAGE)-y)))
Paul Menzel has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/46820 )
Change subject: cpu/x86: Use class for sipi module ......................................................................
Patch Set 1:
(1 comment)
https://review.coreboot.org/c/coreboot/+/46820/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/46820/1//COMMIT_MSG@7 PS1, Line 7: class Just reading the commit message summary, I didn’t know, what it’s about. Maybe *Makefile class*?
Tim Wawrzynczak has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/46820 )
Change subject: cpu/x86: Use class for sipi module ......................................................................
Patch Set 1:
(1 comment)
https://review.coreboot.org/c/coreboot/+/46820/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/46820/1//COMMIT_MSG@7 PS1, Line 7: class
Just reading the commit message summary, I didn’t know, what it’s about. […]
"Add sipi vector module to x86 Makefile 'classes' target" ?
Hello build bot (Jenkins), Patrick Georgi, Martin Roth,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/46820
to look at the new patch set (#2).
Change subject: cpu/x86: Add sipi vector module to x86 Makefile 'classes' target ......................................................................
cpu/x86: Add sipi vector module to x86 Makefile 'classes' target
This removes the hardcoded single assembly file and allows to add more source files to the SIPI rmodule.
This can be used to link C code for reusing existing code.
Instead of using "call rmodule_link" use a custom Makefile rule to link the rmodule and do not use an intermediate object file any more. This is required to resolve an issue with gc-sections not removing unused code when using an intermediate object.
Tested on Supermicro X11SSH. Still boots.
Change-Id: I701eb340688e43591dfca77f55106c5b2f1a7735 Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Makefile.inc M src/cpu/x86/Makefile.inc 2 files changed, 8 insertions(+), 5 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/20/46820/2
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/46820 )
Change subject: cpu/x86: Add sipi vector module to x86 Makefile 'classes' target ......................................................................
Patch Set 2:
(1 comment)
https://review.coreboot.org/c/coreboot/+/46820/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/46820/1//COMMIT_MSG@7 PS1, Line 7: class
"Add sipi vector module to x86 Makefile 'classes' target" ?
Done
Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/46820 )
Change subject: cpu/x86: Add sipi vector module to x86 Makefile 'classes' target ......................................................................
Patch Set 3:
(1 comment)
https://review.coreboot.org/c/coreboot/+/46820/3//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/46820/3//COMMIT_MSG@16 PS3, Line 16: unused move to next line
Christian Walter has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/46820 )
Change subject: cpu/x86: Add sipi vector module to x86 Makefile 'classes' target ......................................................................
Patch Set 3: Code-Review+1
Patrick Rudolph has abandoned this change. ( https://review.coreboot.org/c/coreboot/+/46820 )
Change subject: cpu/x86: Add sipi vector module to x86 Makefile 'classes' target ......................................................................
Abandoned
patch series replaced by CB:49303