summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorJames <james.mckenzie@citrix.com>2013-10-12 11:31:04 +0100
committerJames <james.mckenzie@citrix.com>2013-10-12 11:31:04 +0100
commitd5553117c38966e51b52b7fb26ee433db5d664c9 (patch)
tree23bd1764e160b1d5237a493e09e2f61b0e359f4a /Makefile
parent4eac4fac1d9cbe51176bb1071cc35eb9456a74f0 (diff)
downloadpong-d5553117c38966e51b52b7fb26ee433db5d664c9.tar.gz
pong-d5553117c38966e51b52b7fb26ee433db5d664c9.tar.bz2
pong-d5553117c38966e51b52b7fb26ee433db5d664c9.zip
Main_makefile
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile88
1 files changed, 88 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..980969e
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,88 @@
+PROJ=pong3
+
+SRCS=$(wildcard *.vhd *.v *.qsf *.qpf )
+SRCS += $(shell find DM9000A -type f -print )
+SRCS += $(shell find GPU -type f -print )
+
+#CSRC=${SRC:src/%=%}
+#CSDIRS=${SDIRS:src/%=%}
+
+#ELFDIR=../software/pong3
+BSPDIR=../software/pong3_bsp
+
+
+sta.stamp:asm.stamp
+ tools/wrap quartus_sta pong3 -c pong3
+ touch $@
+
+asm.stamp:fit.stamp
+ tools/wrap quartus_asm --read_settings_files=off --write_settings_files=off pong3 -c pong3
+ touch $@
+
+fit.stamp: ans.stamp
+ tools/wrap quartus_fit --read_settings_files=off --write_settings_files=off pong3 -c pong3
+ touch $@
+
+ans.stamp: source.stamp
+ tools/wrap quartus_map --read_settings_files=on --write_settings_files=off ${PROJ} -c ${PROJ}
+ touch $@
+
+source.stamp:${SRC}
+ touch source.stamp
+
+
+ELF=pong3.elf
+
+SOPCINFO=../my_sys.sopcinfo
+SOF=../pong3.sof
+
+run: load_elf.stamp
+ ./wrap.sh nios2-terminal
+
+flash: load_sof.stamp sof.flash elf.flash ${BSPDIR}/system.h
+ BASE=` grep EPCS_FLASH_CONTROLLER_0_BASE ${BSPDIR}/system.h | awk '{print $$3}' ` && \
+ ./wrap.sh nios2-flash-programmer sof.flash --base=$${BASE} --epcs --accept-bad-sysid --device=1 --instance=0 --program --verbose && \
+ ./wrap.sh nios2-flash-programmer elf.flash --base=$${BASE} --epcs --accept-bad-sysid --device=1 --instance=0 --program --verbose -g
+
+sof.flash: ${SOF}
+ ./wrap.sh sof2flash --input=$< --output=$@ --epcs --verbose
+
+elf.flash: ${ELFDIR}/${ELF} sof.flash
+ ./wrap.sh elf2flash --input=${ELFDIR}/${ELF} --output=$@ --epcs --after=sof.flash --verbose
+
+
+
+
+
+
+
+load_elf.stamp:${ELFDIR}/${ELF} load_sof.stamp
+ ./wrap.sh nios2-download ${ELFDIR}/${ELF} -g
+
+load_sof.stamp: ${SOF}
+ ./wrap.sh quartus_pgm -m JTAG -o 'p;../pong3.sof'
+
+${ELFDIR}/${ELF}: ${BSPDIR}/libhal_bsp.a $(wildcard ${ELFDIR}/*.[chHC])
+ ./wrap.sh ${MAKE} -C ${ELFDIR}
+
+
+${BSPDIR}/libhal_bsp.a:${BSPDIR}/system.h
+ ./wrap.sh ${MAKE} -C ${BSPDIR}
+
+${BSPDIR}/system.h:${SOPCINFO}
+ rm -f $@
+ (cd ${BSPDIR} && ${PWD}/wrap.sh ./create-this-bsp )
+
+
+clean:
+ ./wrap.sh ${MAKE} -C ${BSPDIR} clean
+ ./wrap.sh ${MAKE} -C ${ELFDIR} clean
+ /bin/rm -f sof.flash elf.flash
+ /bin/rm -rf ${BSPDIR}/drivers ${BSPDIR}/HAL ${BSPDIR}/linker.h ${BSPDIR}/linker.x ${BSPDIR}/system.h ${BSPDIR}/summary.html ${BSPDIR}/public.mk ${BSPDIR}/mem_init.mk ${BSPDIR}/memory.gdb ${BSPDIR}/alt_sys_init.c
+
+
+
+
+
+
+