- add xpi flash support for hpmicro devices Change-Id: I3531fdf20a34561c6f3fe6ac0b9af988d483aae7 Signed-off-by: Ryan QIAN <jianghao.qian@hpmicro.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8695 Tested-by: jenkins Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
52 lines
1.0 KiB
Makefile
52 lines
1.0 KiB
Makefile
# SPDX-License-Identifier: BSD-3-Clause
|
|
# Copyright (c) 2023 HPMicro
|
|
#
|
|
BIN2C = ../../../../src/helper/bin2char.sh
|
|
|
|
|
|
PROJECT=hpm_xpi_flash
|
|
CROSS_COMPILE ?= riscv32-unknown-elf-
|
|
CC=$(CROSS_COMPILE)gcc
|
|
AS=$(CROSS_COMPILE)gcc
|
|
OBJCOPY=$(CROSS_COMPILE)objcopy
|
|
OBJDUMP=$(CROSS_COMPILE)objdump
|
|
LD=$(CROSS_COMPILE)ld
|
|
LDSCRIPT=linker.ld
|
|
|
|
OPT=-O3
|
|
|
|
ASFLAGS=
|
|
CFLAGS=$(OPT) -fomit-frame-pointer -Wall
|
|
LDFLAGS=-nostartfiles -T$(LDSCRIPT) -Wl,-Map=$(PROJECT).map -static -Wl,--gc-sections
|
|
OBJS=$(ASRC:.S=.o) $(SRC:.c=.o)
|
|
|
|
SRC=openocd_flash_algo.c
|
|
ASRC=func_table.S
|
|
|
|
all: $(OBJS) $(PROJECT).elf $(PROJECT).bin $(PROJECT).lst $(PROJECT).inc
|
|
|
|
%o: %c
|
|
@$(CC) -c $(CFLAGS) -I . $< -o $@
|
|
|
|
%o: %S
|
|
@$(AS) -c $(ASFLAGS) -I . $< -o $@
|
|
|
|
%elf: $(OBJS)
|
|
@$(CC) $(OBJS) $(LDFLAGS) -o $@
|
|
|
|
%lst: %elf
|
|
@$(OBJDUMP) -h -S $< > $@
|
|
|
|
%bin: %elf
|
|
@$(OBJCOPY) -Obinary $< $@
|
|
|
|
%inc: %bin
|
|
$(BIN2C) < $< > $@
|
|
|
|
clean:
|
|
@-rm -f *.o *.elf *.lst *.bin *.inc
|
|
|
|
.PHONY: all clean
|
|
|
|
.INTERMEDIATE: $(patsubst %.S,%.o,$(SRCS)) $(patsubst %.S,%.elf,$(SRCS)) $(patsubst %.S,%.bin,$(SRCS))
|