Add microcode blob processing
When microcode storage in CBFS is enabled, the make system is supposed to generate the microcode blob and place it into the generated ROM image as a CBFS component. The microcode source representation does not change: it is still an array of 32 bit constants. This new addition compiles the array into a separate object file and then strips all sections but data. The raw data section is then included into CBFS as a file named 'microcode_blob.bin' of type 0x53, which is assigned to microcode storage. Change-Id: I84ae040be52f520b106e3471c7e391e64d7847d9 Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Reviewed-on: http://review.coreboot.org/1295 Tested-by: build bot (Jenkins)
This commit is contained in:
committed by
Stefan Reinauer
parent
537b4e09e6
commit
39fea6e2a8
@@ -1 +1,15 @@
|
||||
ramstage-y += microcode.c
|
||||
|
||||
|
||||
ifeq ($(CONFIG_MICROCODE_IN_CBFS),y)
|
||||
|
||||
SRC_PATH = src/cpu/intel/microcode
|
||||
FLAGS = -I $(CONFIG_MICROCODE_INCLUDE_PATH) -include $(obj)/config.h
|
||||
$(obj)/microcode_blob.o: $(SRC_PATH)/microcode_blob.c
|
||||
$(CC) $(FLAGS) -MMD -c -o $@ $<
|
||||
|
||||
$(obj)/microcode_blob.bin: $(obj)/microcode_blob.o
|
||||
objcopy -j .data -O binary $< $@
|
||||
|
||||
-include $(obj)/microcode_blob.d
|
||||
endif
|
||||
|
Reference in New Issue
Block a user