blob: 2b06477b67cb2d2d83eee9817851920153afaedc [file] [log] [blame]
lowRISC Contributors802543a2019-08-31 12:12:56 +01001CUR_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
2PRJ_DIR := $(realpath ${CUR_DIR}/../)
3export PRJ_DIR
4
5IPS ?= uart \
6 gpio \
7 rv_plic \
8 flash_ctrl \
9 spi_device \
10 rv_timer \
11 hmac \
12 usbuart
13
14ips_reg = $(addsuffix _reg, $(IPS))
15
16
17all: $(ips_reg)
18
19regs: $(ips_reg)
20
21$(ips_reg):
22 if [ -f ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/doc/$(subst _reg,,$@).hjson ]; then \
23 ${PRJ_DIR}/util/regtool.py -r ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/doc/$(subst _reg,,$@).hjson; \
24 ${PRJ_DIR}/util/regtool.py -D -o ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/sw/$(subst _reg,_regs,$@).h\
25 ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/doc/$(subst _reg,,$@).hjson; \
26 ${PRJ_DIR}/util/regtool.py -s -t ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/dv/env \
27 ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)//doc/$(subst _reg,,$@).hjson; \
28 else if [ -f ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/doc/$@.hjson ]; then \
29 ${PRJ_DIR}/util/regtool.py -r ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/doc/$@.hjson; \
30 ${PRJ_DIR}/util/regtool.py -D -o ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/sw/$(subst _reg,_regs,$@).h \
31 ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/doc/$@.hjson; \
32 ${PRJ_DIR}/util/regtool.py -s -t ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)/dv/env \
33 ${PRJ_DIR}/hw/ip/$(subst _reg,,$@)//doc/$@.hjson; \
34 fi \
35 fi
36
37.PHONY: all $(ips_reg) top_earlgrey