annotate target-utils/calversion/Makefile @ 497:74610c4f10f7

target-utils: added 10 ms delay at the end of abb_power_off() The deosmification of the ABB access code (replacement of osmo_delay_ms() bogus delays with correctly-timed ones, which are significantly shorter) had one annoying side effect: when executing the poweroff command from any of the programs, one last '=' prompt character was being sent (and received by the x86 host) as the Calypso board powers off. With delays being shorter now, the abb_power_off() function was returning and the standalone program's main loop was printing its prompt before the Iota chip fully executed the switch-off sequence! I thought about inserting an endless tight loop at the end of the abb_power_off() function, but the implemented solution of a 10 ms delay is a little nicer IMO because if the DEVOFF operation doesn't happen for some reason in a manual hacking scenario, there won't be an artificial blocker in the form of a tight loop keeping us from further poking around.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 25 May 2019 20:44:05 +0000
parents 58d3a0634272
children bfddfecc52b2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
441
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 CC= arm-elf-gcc
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 CFLAGS= -Os -fno-builtin
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 CPPFLAGS=-I../include
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 LD= arm-elf-ld
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 OBJCOPY=arm-elf-objcopy
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6
444
e75d866e3826 target-utils/calversion/Makefile: install added
Mychaela Falconia <falcon@freecalypso.org>
parents: 441
diff changeset
7 INSTDIR=/opt/freecalypso/target-bin
e75d866e3826 target-utils/calversion/Makefile: install added
Mychaela Falconia <falcon@freecalypso.org>
parents: 441
diff changeset
8
441
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 PROG= calversion
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 OBJS= crt0.o cmdtab.o dsp_bringup.o main.o mygetchar.o
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 LIBS= ../libcommon/libcommon.a ../libprintf/libprintf.a ../libbase/libbase.a \
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 ../libc/libc.a
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 LIBGCC= `${CC} -print-file-name=libgcc.a`
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 LDS= ../env/iram.lds
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 all: ${PROG}.srec
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17
477
58d3a0634272 target-utils/*/Makefile: better construct for crt0.S symlink
Mychaela Falconia <falcon@freecalypso.org>
parents: 444
diff changeset
18 crt0.S:
58d3a0634272 target-utils/*/Makefile: better construct for crt0.S symlink
Mychaela Falconia <falcon@freecalypso.org>
parents: 444
diff changeset
19 ln -s ../env/crt0.S .
441
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 ${PROG}.elf: ${OBJS} ${LIBS} ${LDS}
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 ${LD} -N --defsym Base_addr=0x800750 --defsym stack_bottom=0x83FFFC \
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 -T ${LDS} -o $@ ${OBJS} ${LIBS} ${LIBGCC}
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 ${PROG}.srec: ${PROG}.elf
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 ${OBJCOPY} -O srec --srec-forceS3 --srec-len=30 $< $@
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
444
e75d866e3826 target-utils/calversion/Makefile: install added
Mychaela Falconia <falcon@freecalypso.org>
parents: 441
diff changeset
28 install:
e75d866e3826 target-utils/calversion/Makefile: install added
Mychaela Falconia <falcon@freecalypso.org>
parents: 441
diff changeset
29 mkdir -p ${INSTDIR}
e75d866e3826 target-utils/calversion/Makefile: install added
Mychaela Falconia <falcon@freecalypso.org>
parents: 441
diff changeset
30 install -c -m 644 ${PROG}.srec ${INSTDIR}
e75d866e3826 target-utils/calversion/Makefile: install added
Mychaela Falconia <falcon@freecalypso.org>
parents: 441
diff changeset
31
441
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 clean:
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 rm -f *.o *errs *core *.elf *.bin *.srec crt0.S
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34
1dcc9e4b71fd target-utils/calversion: program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 FRC: