view target-utils/loadagent/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
line wrap: on
line source

CC=	arm-elf-gcc
CFLAGS=	-Os -fno-builtin
CPPFLAGS=-I../include
LD=	arm-elf-ld
OBJCOPY=arm-elf-objcopy

INSTDIR=/opt/freecalypso/target-bin

PROG=	loadagent
OBJS=	crt0.o cmdtab.o main.o mygetchar.o
LIBS=	../libload/libload.a ../libcommon/libcommon.a ../libprintf/libprintf.a \
	../libbase/libbase.a ../libc/libc.a
LIBGCC=	`${CC} -print-file-name=libgcc.a`
LDS=	../env/iram.lds

all:	${PROG}.srec

crt0.S:
	ln -s ../env/crt0.S .

${PROG}.elf:	${OBJS} ${LIBS} ${LDS}
	${LD} -N --defsym Base_addr=0x838000 --defsym stack_bottom=0x83FFFC \
		-T ${LDS} -o $@ ${OBJS} ${LIBS} ${LIBGCC}

${PROG}.srec:	${PROG}.elf
	${OBJCOPY} -O srec --srec-forceS3 --srec-len=30 $< $@

install:
	mkdir -p ${INSTDIR}
	install -c -m 644 ${PROG}.srec ${INSTDIR}

clean:
	rm -f *.o *errs *core *.elf *.bin *.srec crt0.S

FRC: