FreeCalypso > hg > fc-tourmaline
view src/cs/layer1/p_include/l1p_vare.h @ 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 | 4e78acac3d88 |
children |
line wrap: on
line source
/************* Revision Controle System Header ************* * GSM Layer 1 software * L1P_VAREX.H * * Filename l1p_vare.h * Copyright 2003 (C) Texas Instruments * ************* Revision Controle System Header *************/ #ifdef L1P_ASYN_C #if (LONG_JUMP == 3) #ifdef __GNUC__ #define SECTION_ATTR __attribute__ ((section (".l1s_global"))) #else #define SECTION_ATTR #pragma DATA_SECTION(l1ps,".l1s_global") #pragma DATA_SECTION(l1pa_l1ps_com,".l1s_global") #pragma DATA_SECTION(l1ps_macs_com,".l1s_global") #pragma DATA_SECTION(l1ps_dsp_com,".l1s_global") #endif #else #define SECTION_ATTR #endif // Global Packet L1A structure T_L1PA_GLOBAL l1pa; // Global Packet L1S structure T_L1PS_GLOBAL l1ps SECTION_ATTR; // Common structure between L1A and L1S in packet mode T_L1PA_L1PS_COM l1pa_l1ps_com SECTION_ATTR; // Communication between L1S and MAC-S in packet mode T_L1PS_MACS_COM l1ps_macs_com SECTION_ATTR; // MCU / DSP interface T_L1PS_DSP_COM l1ps_dsp_com SECTION_ATTR; #undef SECTION_ATTR #else extern T_L1PA_GLOBAL l1pa; extern T_L1PS_GLOBAL l1ps; extern T_L1PA_L1PS_COM l1pa_l1ps_com; extern T_L1PS_DSP_COM l1ps_dsp_com; extern T_L1PS_MACS_COM l1ps_macs_com; #endif