view components/nucleus_intram @ 244:96784b8974eb

Switch_ON(): detect charging mode by CHGPRES bit Consider the following scenario: the phone is on, the user plugs in the charger, and then executes the power-off operation. In the Iota VRPC this sequence translates to a switch-off immediately followed by another switch-on - but the CHGSTS bit doesn't get set on the second switch-on cycle! Disassembly of Pirelli's fw shows that they check the CHGPRES bit, and furthermore, if both CHGPRES and ONBSTS are set, the code they pass to their modified Power_ON_Button() function is the one for charging - so let's adopt the same CHGPRES check and the same priority order for switch-on causes.
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 03 May 2021 06:51:29 +0000
parents 572c3ee87676
children
line wrap: on
line source

# New Tourmaline component: compiling Nucleus from source (internal RAM)

CFLAGS="-mn -me -mt -o -mw"
CPPFLAGS=

SRCDIR=$SRC/nucleus

cfile_plain $SRCDIR/csc.c
cfile_plain $SRCDIR/pmc.c
cfile_plain $SRCDIR/pmce.c
cfile_plain $SRCDIR/pmd.c
cfile_plain $SRCDIR/smc.c
cfile_plain $SRCDIR/smce.c
cfile_plain $SRCDIR/smd.c
cfile_plain $SRCDIR/tcc.c
cfile_plain $SRCDIR/tcce.c
cfile_plain $SRCDIR/tcd.c
cfile_plain $SRCDIR/tmc.c
cfile_plain $SRCDIR/tmd.c
cfile_plain $SRCDIR/tms.c
cfile_plain $SRCDIR/tmse.c

# assembly modules

ASMFLAGS=-me
ASMFLAGS="$ASMFLAGS -dOP_L1_STANDALONE=0"
ASMFLAGS="$ASMFLAGS -dTI_NUC_MONITOR=0"

SRCDIR=$SRC/cs/os/nucleus
asm_file $SRCDIR/tct.s

SRCDIR=$SRC/nucleus/tms470
asm_file $SRCDIR/tmt.s