mirror of https://github.com/wolfSSL/wolfBoot.git
make: Add PPC arch and refactor some of Makefile
parent
aef86aa7c0
commit
08e9796822
20
Makefile
20
Makefile
|
@ -47,19 +47,15 @@ all: $(MAIN_TARGET)
|
|||
|
||||
wolfboot.bin: wolfboot.elf
|
||||
@echo "\t[BIN] $@"
|
||||
$(Q)$(OBJCOPY) -O binary $^ $@
|
||||
$(Q)$(OBJCOPY) -O binary --gap-fill=255 $^ $@
|
||||
|
||||
align: wolfboot-align.bin
|
||||
|
||||
.bootloader-partition-size:
|
||||
$(Q)printf "%d" $(WOLFBOOT_PARTITION_BOOT_ADDRESS) > .wolfboot-offset
|
||||
$(Q)printf "%d" $(ARCH_FLASH_OFFSET) > .wolfboot-arch-offset
|
||||
$(Q)expr `cat .wolfboot-offset` - `cat .wolfboot-arch-offset` > .bootloader-partition-size
|
||||
$(Q)rm -f .wolfboot-offset .wolfboot-arch-offset
|
||||
BOOTLOADER_PARTITION_SIZE=$$(( $(WOLFBOOT_PARTITION_BOOT_ADDRESS) - $(ARCH_FLASH_OFFSET)))
|
||||
|
||||
wolfboot-align.bin: .bootloader-partition-size wolfboot.bin
|
||||
$(Q)dd if=/dev/zero bs=`cat .bootloader-partition-size` count=1 2>/dev/null | tr "\000" "\377" > $(@)
|
||||
$(Q)dd if=wolfboot.bin of=$(@) conv=notrunc 2>/dev/null
|
||||
wolfboot-align.bin: wolfboot.elf
|
||||
$(Q)$(OBJCOPY) -O binary --gap-fill=255 --pad-to= wolfboot.elf $@
|
||||
echo $(BOOTLOADER_PARTITION_SIZE)
|
||||
@echo
|
||||
@echo "\t[SIZE]"
|
||||
$(Q)$(SIZE) wolfboot.elf
|
||||
|
@ -106,9 +102,9 @@ wolfboot.elf: include/target.h $(OBJS) $(LSCRIPT) FORCE
|
|||
@echo "\t[LD] $@"
|
||||
$(Q)$(LD) $(LDFLAGS) -Wl,--start-group $(OBJS) -Wl,--end-group -o $@
|
||||
|
||||
$(LSCRIPT): hal/$(TARGET).ld .bootloader-partition-size FORCE
|
||||
$(LSCRIPT): hal/$(TARGET).ld FORCE
|
||||
@cat hal/$(TARGET).ld | \
|
||||
sed -e "s/##WOLFBOOT_PARTITION_BOOT_ADDRESS##/`cat .bootloader-partition-size`/g" | \
|
||||
sed -e "s/##WOLFBOOT_PARTITION_BOOT_ADDRESS##/$(BOOTLOADER_PARTITION_SIZE)/g" | \
|
||||
sed -e "s/##WOLFBOOT_ORIGIN##/$(WOLFBOOT_ORIGIN)/g" \
|
||||
> $@
|
||||
|
||||
|
@ -130,7 +126,7 @@ keys: $(PRIVATE_KEY)
|
|||
|
||||
clean:
|
||||
@find . -type f -name "*.o" | xargs rm -f
|
||||
@rm -f *.bin *.elf wolfboot.map *.bin *.hex config/target.ld .bootloader-partition-size
|
||||
@rm -f *.bin *.elf wolfboot.map *.bin *.hex config/target.ld
|
||||
@make -C test-app clean
|
||||
@make -C tools/check_config clean
|
||||
|
||||
|
|
16
arch.mk
16
arch.mk
|
@ -10,7 +10,7 @@ else
|
|||
endif
|
||||
|
||||
# Default flash offset
|
||||
ARCH_FLASH_OFFSET=0x0
|
||||
ARCH_FLASH_OFFSET?=0x0
|
||||
|
||||
# Default SPI driver name
|
||||
SPI_TARGET=$(TARGET)
|
||||
|
@ -126,6 +126,20 @@ ifeq ($(ARCH),RISCV)
|
|||
ARCH_FLASH_OFFSET=0x20010000
|
||||
endif
|
||||
|
||||
# powerpc
|
||||
ifeq ($(ARCH),PPC)
|
||||
CROSS_COMPILE:=powerpc-linux-gnu-
|
||||
CFLAGS+=-fno-builtin-printf -DUSE_M_TIME -g -nostartfiles
|
||||
LDFLAGS+=-Wl,--build-id=none
|
||||
#MATH_OBJS += ./lib/wolfssl/wolfcrypt/src/sp_c32.o
|
||||
|
||||
# Prune unused functions and data
|
||||
CFLAGS +=-ffunction-sections -fdata-sections
|
||||
LDFLAGS+=-Wl,--gc-sections
|
||||
|
||||
OBJS+=src/boot_ppc_start.o src/boot_ppc.o
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET),kinetis)
|
||||
CFLAGS+= -I$(MCUXPRESSO_DRIVERS)/drivers -I$(MCUXPRESSO_DRIVERS) -DCPU_$(MCUXPRESSO_CPU) -I$(MCUXPRESSO_CMSIS)/Include -DDEBUG_CONSOLE_ASSERT_DISABLE=1
|
||||
OBJS+= $(MCUXPRESSO_DRIVERS)/drivers/fsl_clock.o $(MCUXPRESSO_DRIVERS)/drivers/fsl_ftfx_flash.o $(MCUXPRESSO_DRIVERS)/drivers/fsl_ftfx_cache.o $(MCUXPRESSO_DRIVERS)/drivers/fsl_ftfx_controller.o
|
||||
|
|
Loading…
Reference in New Issue