5ada0023d1
Add the IntelFirmwareInterfaceTable-tool to modify the FIT. As cbfstool is overloaded with arguments, introduce a new tool to only modify FIT, which brings it's own command line syntax. Provide clean interface to: * Clear FIT * Add entry to CBFS file * Add entry to REGION * Delete entries * Add support for types other than 1 * Add support to dump current table * Add support for top-swap * Sort entries by type Most code is reused from existing cbfstool and functionality of cbfstool is kept. It will be removed once the make system uses only ifittool. Based on "Intel Trusted Execution Technology (Intel TXT) LAB Handout" and https://github.com/slimbootloader/slimbootloader . Change-Id: I0fe8cd70611d58823aca1147d5b830722ed72bd5 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/31493 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
62 lines
1.8 KiB
Makefile
62 lines
1.8 KiB
Makefile
top ?= $(abspath ../..)
|
|
objutil ?= $(top)/util
|
|
|
|
CONFIG_FMD_GENPARSER ?= n
|
|
|
|
HOSTCC ?= $(CC)
|
|
PREFIX ?= /usr/local
|
|
BINDIR ?= $(PREFIX)/bin
|
|
INSTALL ?= /usr/bin/env install
|
|
OBJCOPY ?= objcopy
|
|
|
|
VBOOT_SOURCE ?= $(top)/3rdparty/vboot
|
|
|
|
.PHONY: all
|
|
all: cbfstool ifittool fmaptool rmodtool ifwitool cbfs-compression-tool
|
|
|
|
cbfstool: $(objutil)/cbfstool/cbfstool
|
|
|
|
fmaptool: $(objutil)/cbfstool/fmaptool
|
|
|
|
rmodtool: $(objutil)/cbfstool/rmodtool
|
|
|
|
ifwitool: $(objutil)/cbfstool/ifwitool
|
|
|
|
ifittool: $(objutil)/cbfstool/ifittool
|
|
|
|
cbfs-compression-tool: $(objutil)/cbfstool/cbfs-compression-tool
|
|
|
|
.PHONY: clean cbfstool ifittool fmaptool rmodtool ifwitool cbfs-compression-tool
|
|
clean:
|
|
$(RM) fmd_parser.c fmd_parser.h fmd_scanner.c fmd_scanner.h
|
|
$(RM) $(objutil)/cbfstool/cbfstool $(cbfsobj)
|
|
$(RM) $(objutil)/cbfstool/fmaptool $(fmapobj)
|
|
$(RM) $(objutil)/cbfstool/rmodtool $(rmodobj)
|
|
$(RM) $(objutil)/cbfstool/ifwitool $(ifwiobj)
|
|
$(RM) $(objutil)/cbfstool/ifittool $(ifitobj)
|
|
$(RM) $(objutil)/cbfstool/cbfs-compression-tool $(cbfscompobj)
|
|
|
|
linux_trampoline.c: linux_trampoline.S
|
|
rm -f linux_trampoline.c
|
|
$(CC) -m32 -o linux_trampoline linux_trampoline.S -ffreestanding -nostdlib -nostdinc -Wl,--defsym=_start=0
|
|
$(OBJCOPY) -Obinary -j .data linux_trampoline trampoline
|
|
echo "/* This file is automatically generated. Do not manually change */" > trampoline.c
|
|
xxd -c 16 -i trampoline >> trampoline.c
|
|
mv trampoline.c linux_trampoline.c
|
|
rm linux_trampoline trampoline
|
|
|
|
.PHONY: install
|
|
install: all
|
|
mkdir -p $(DESTDIR)$(BINDIR)
|
|
$(INSTALL) cbfstool $(DESTDIR)$(BINDIR)
|
|
$(INSTALL) fmaptool $(DESTDIR)$(BINDIR)
|
|
$(INSTALL) rmodtool $(DESTDIR)$(BINDIR)
|
|
$(INSTALL) ifwitool $(DESTDIR)$(BINDIR)
|
|
$(INSTALL) ifittool $(DESTDIR)$(BINDIR)
|
|
$(INSTALL) cbfs-compression-tool $(DESTDIR)$(BINDIR)
|
|
|
|
ifneq ($(V),1)
|
|
.SILENT:
|
|
endif
|
|
|
|
include Makefile.inc
|