This patch moves commonlib/stdlib.h -> commonlib/bsd/stdlib.h, since all code is BSD licensed anyway. It also moves some code from libpayloads stdlib.h to commonlib/bsd/stdlib.h so that it can be shared with coreboot. This is useful for a subsequent commit that adds devicetree.c into commonlib. Also we don't support DMA on arm platforms in coreboot (only libpayload) therefore `dma_malloc()` has been removed and `dma_coherent()` has been moved to architecture specific functions. Any architecture that tries to use `dma_coherent()` now will get a compile time error. In order to not break current platforms like mb/google/herobrine which make use of the commonlib/storage/sdhci.c controller which in turn uses `dma_coherent` a stub has been added to arch/arm64/dma.c. Signed-off-by: Maximilian Brune <maximilian.brune@9elements.com> Change-Id: I3a7ab0d1ddcc7ce9af121a61b4d4eafc9e563a8a Reviewed-on: https://review.coreboot.org/c/coreboot/+/77969 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org>
42 lines
1.1 KiB
Makefile
42 lines
1.1 KiB
Makefile
project_git_repo=https://gitlab.com/bztsrc/bootboot.git
|
|
project_dir=bootboot
|
|
ifeq ($(CONFIG_ARCH_ARM64),y)
|
|
loader_dir=$(project_dir)/aarch64-cb
|
|
else
|
|
loader_dir=$(project_dir)/x86_64-cb
|
|
endif
|
|
|
|
unexport KCONFIG_AUTOHEADER
|
|
unexport KCONFIG_AUTOCONFIG
|
|
unexport KCONFIG_DEPENDENCIES
|
|
unexport KCONFIG_SPLITCONFIG
|
|
unexport KCONFIG_TRISTATE
|
|
unexport KCONFIG_NEGATIVES
|
|
|
|
all: bootboot
|
|
|
|
checkout:
|
|
echo " GIT BOOTBOOT $(loader_dir)"
|
|
test -L $(project_dir) || test -d $(project_dir) || \
|
|
git clone $(project_git_repo) $(project_dir)
|
|
|
|
bootboot: libpayload
|
|
echo " MAKE $(loader_dir)"
|
|
$(MAKE) -C $(loader_dir) LIBCONFIG_PATH=../../../libpayload
|
|
|
|
libpayload: checkout
|
|
cp $(loader_dir)/lib.config ../../libpayload/.config
|
|
cd ../../libpayload && $(MAKE) oldconfig && \
|
|
$(MAKE) && $(MAKE) DESTDIR=../external/BOOTBOOT/$(loader_dir) install
|
|
|
|
clean:
|
|
test -d $(loader_dir) && $(MAKE) -C $(loader_dir) clean || exit 0
|
|
|
|
distclean:
|
|
rm -rf $(project_dir)
|
|
|
|
print-repo-info:
|
|
echo "$(project_git_repo) $(project_dir)"
|
|
|
|
.PHONY: checkout bootboot libpayload clean distclean print-repo-info
|