diff --git a/.gitignore b/.gitignore index c6127b3..3157a3a 100644 --- a/.gitignore +++ b/.gitignore @@ -42,6 +42,10 @@ *.idb *.pdb +# Output Folders +sdcard/* +firmware-rpi/* + # Kernel Module Compile Results *.mod* *.cmd diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..7a27253 --- /dev/null +++ b/Makefile @@ -0,0 +1,7 @@ +SHELL:=/bin/bash + +all: platform + +include platform.mk + +.PHONY: all diff --git a/platform.mk b/platform.mk new file mode 100644 index 0000000..58d59d3 --- /dev/null +++ b/platform.mk @@ -0,0 +1,43 @@ + +ARCH:=aarch64 + +curPath:=$(abspath .) +srcPath:=$(curPath)/src +imgPath:=$(curPath)/sdcard + +firmware_repo:=https://github.com/raspberrypi/firmware.git +firmware_version:=1.20210201 +firmware_images:=$(curPath)/firmware-rpi + +atf_src:=$(srcPath)/arm-trusted-firmware +atf_dest_image:=$(imgPath)/bl31.bin +atf_plat:=rpi4 + +uboot_src:=$(srcPath)/u-boot +uboot_defconfig:=rpi_4_defconfig +uboot_dest_image:=$(imgPath)/u-boot.bin + +atf $(atf_dest_image): $(atf_src) + $(MAKE) -C $(atf_src) bl31 PLAT=$(atf_plat) + cp $(atf_src)/build/$(atf_plat)/release/bl31.bin $(atf_dest_image) + + +u-boot $(uboot_dest_image): $(uboot_src) + $(MAKE) -C $(uboot_src) $(uboot_defconfig) + $(MAKE) -C $(uboot_src) -j$(nproc) + cp $(uboot_src)/u-boot.bin $(uboot_dest_image) + +$(firmware_images): + git clone --depth 1 --branch $(firmware_version) $(firmware_repo) $(firmware_images) + +sdcardDir: + @mkdir -p $(imgPath) + +#instuctions:=$(bao_demos)/platforms/$(PLATFORM)/README.md + +platform: sdcardDir $(uboot_dest_image) $(atf_dest_image) $(firmware_images) +# $(call print-instructions, $(instuctions), 1, false) +# $(call print-instructions, $(instuctions), 2, false) +# $(call print-instructions, $(instuctions), 3, true) + +.PHONY: sdcardDir \ No newline at end of file