view components/bootloader @ 263:b5e8dfd114a7

Switch_ON(): go into charging boot mode on either CHGSTS or CHGPRES If someone were to plug and then unplug a charger into a switched-off phone in an extremely brief "glitch" manner, we should do an automatic power-off on boot in this condition. When we were checking only CHGPRES in Switch_ON(), we would go into Misc boot state instead, which is undesirable. Now if we have a CHGSTS but not CHGPRES condition, we will go into charging boot mode, and FCBM will then do the automatic power-off upon detecting absence of the charger in its periodic polling.
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 14 May 2021 05:50:36 +0000
parents 598958aec071
children
line wrap: on
line source

# Building bootloader.lib

SRCDIR=$SRC/cs/system/bootloader/src

# Assembly modules

ASMFLAGS=-me
ASMFLAGS="$ASMFLAGS -dBOARD=41"
ASMFLAGS="$ASMFLAGS -dCHIPSET=$CHIPSET"
ASMFLAGS="$ASMFLAGS -dLONG_JUMP=3"
ASMFLAGS="$ASMFLAGS -dTOOL_CHOICE=0"
ASMFLAGS="$ASMFLAGS -dR2D_ASM=0"
ASMFLAGS="$ASMFLAGS -dR2D_LCD_TEST=0"
ASMFLAGS="$ASMFLAGS -dTI_PROFILER=$TI_PROFILER"
ASMFLAGS="$ASMFLAGS -dTI_NUC_MONITOR=0"
ASMFLAGS="$ASMFLAGS -dL1_GPRS=$GPRS"
ASMFLAGS="$ASMFLAGS -dOP_WCP=0"
ASMFLAGS="$ASMFLAGS -dWCP_PROF=0"

if [ "$RF" = 12 ]
then
	ASMFLAGS="$ASMFLAGS -dVCXO_26MHZ=1"
else
	ASMFLAGS="$ASMFLAGS -dVCXO_26MHZ=0"
fi

asm_file $SRCDIR/bootloader.s

ASMFLAGS="-mt -me"
ASMFLAGS="$ASMFLAGS -dBOARD=41"
ASMFLAGS="$ASMFLAGS -dCHIPSET=$CHIPSET"
ASMFLAGS="$ASMFLAGS -dLONG_JUMP=3"
ASMFLAGS="$ASMFLAGS -dTOOL_CHOICE=0"
ASMFLAGS="$ASMFLAGS -dR2D_ASM=0"
ASMFLAGS="$ASMFLAGS -dR2D_LCD_TEST=0"
ASMFLAGS="$ASMFLAGS -dTI_PROFILER=$TI_PROFILER"
ASMFLAGS="$ASMFLAGS -dTI_NUC_MONITOR=0"
ASMFLAGS="$ASMFLAGS -dL1_GPRS=$GPRS"
ASMFLAGS="$ASMFLAGS -dOP_WCP=0"
ASMFLAGS="$ASMFLAGS -dWCP_PROF=0"

asm_file $SRCDIR/branch_in_RAM.s

# C modules

CFLAGS="-mn -mt -mw -me -pw2"
CPPFLAGS="-DTOOL_CHOICE=0 -D_TMS470"

# Includes

CPPFLAGS="$CPPFLAGS -I$SRC/nucleus"
CPPFLAGS="$CPPFLAGS -I.."
CPPFLAGS="$CPPFLAGS -I../config"
CPPFLAGS="$CPPFLAGS -I$SRC/gpf/inc"
CPPFLAGS="$CPPFLAGS -I$SRC/gpf/frame/cust_os"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/system"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/riviera"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/riviera/rv"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/abb"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/armio"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/clkm"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/conf"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/dma"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/dsp_dwnld"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/inth"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/memif"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/rhea"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/security"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/spi"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/timer"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/uart"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_core/ulpd"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/drivers/drv_app"
CPPFLAGS="$CPPFLAGS -I$SRC/cs/services"

cfile_plain $SRCDIR/cmdboot.c
cfile_plain $SRCDIR/command.c
cfile_plain $SRCDIR/convert.c
cfile_plain $SRCDIR/optboot.c
cfile_plain $SRCDIR/serial.c
cfile_plain $SRCDIR/start.c
cfile_plain $SRCDIR/boot.c