view src/ui/mfw/mfw_band.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 67bfe9f274f6
children
line wrap: on
line source

#ifndef _MFW_BAND_H_
#define _MFW_BAND_H_

typedef enum
{	MFW_BAND_Busy= -2,
	MFW_BAND_Fail = -1,
	MFW_BAND_OK,
	MFW_BAND_InProgress
} T_MFW_BAND_RET;

typedef enum
{
	MFW_BAND_MODE_Auto	=  0,
	MFW_BAND_MODE_Manual	=  1
} T_MFW_BAND_MODE;

/* SPR919 - SH - Band is now a bit field*/
/*a0393213 compiler warnings removal - typedef removed*/
enum
{
	MFW_BAND_GSM_900		=	1,
	MFW_BAND_DCS_1800		=	2,
	MFW_BAND_PCS_1900		=	4,
	MFW_BAND_E_GSM			=	8,
	MFW_BAND_GSM_850		=	16
};

T_MFW_BAND_RET band_radio_mode_switch(T_MFW_BAND_MODE mode, UBYTE band);

T_MFW_BAND_RET band_get_radio_modes(T_MFW_BAND_MODE* maxMode, UBYTE *band);

T_MFW_BAND_RET band_get_current_radio_mode(T_MFW_BAND_MODE* mode, UBYTE *band);
#endif /* _MFW_BAND_H_*/