FreeCalypso > hg > freecalypso-tools
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 |
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: |