1 # RISCV environment variable must be set
3 CC
=$(RISCV
)/bin
/riscv64-unknown-elf-gcc
4 OBJCOPY
=$(RISCV
)/bin
/riscv64-unknown-elf-objcopy
5 CFLAGS
=-march
=rv32imac
-mabi
=ilp32
-O2
-std
=gnu11
-Wall
-I.
-nostartfiles
-fno-common
-g
6 LFLAGS
=-static
-nostdlib
8 dtb
:= $(BUILD_DIR
)/$(CONFIG
).dtb
9 $(dtb
): $(BUILD_DIR
)/$(CONFIG
).dts
10 dtc
-I dts
-O dtb
-o
$@
$<
15 elf
:= $(BUILD_DIR
)/xip.elf
17 $(CC
) $(CFLAGS
) -DXIP_TARGET_ADDR
=0x20400000 -DDEVICE_TREE
='"$(dtb)"' $(LFLAGS
) -o
$@
$<
22 bin
:= $(BUILD_DIR
)/xip.bin
24 $(OBJCOPY
) -O binary
$< $@
29 hex
:= $(BUILD_DIR
)/xip.hex
31 od
-t x4
-An
-w4
-v
$< > $@
36 romgen
:= $(BUILD_DIR
)/rom.v
38 $(rocketchip_dir
)/scripts
/vlsi_rom_gen
$(ROMCONF
) $< > $@