view src/cs/drivers/drv_app/fchg/fchg_convert_mA.c @ 274:fa22012c4a39

CST: remove AT%Nxxxx old AEC control This crude method of enabling and configuring AEC is not compatible with L1_NEW_AEC, and even for the old AEC it did not support every possible combination. It is time for this hack to go. The new and proper way of enabling and configuring AEC is via RiViera Audio Service audio mode facility, either audio mode files or full access write, most directly accessible via fc-tmsh auw 12 for free experimentation.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 29 Jul 2021 18:57:36 +0000
parents 09ea37852fd6
children
line wrap: on
line source

/*
 * This module implements the fchg_convert_ichg_to_mA() function,
 * converting charging current (Ichg) measurements from ADC units
 * to human-friendly mA numbers.  In the phone hardware this current
 * measurement is made with the aid of a current measurement resistor
 * placed in the charging current path (the Iota chip's MADC actually
 * measures the voltage across this resistor, between VCCS and VBATS
 * terminals), and it just so happens that different phone designers
 * have chosen different values for this current measurement resistor:
 * Pirelli DP-L10 uses 0.20R, following TI's canon, whereas Mot C1xx
 * phones use 0.15R.  Because of these different resistor values,
 * the formula for converting ADC units to mA becomes target-dependent.
 */

#include "fchg/fchg_api.h"
#include "fc-target.h"

UINT16 fchg_convert_ichg_to_mA(UINT16 ichg)
{
#ifdef CONFIG_TARGET_COMPAL
	/* formula for 0.15R */
	return (ichg * 875 / 768);
#else
	/* formula for 0.20R */
	return (ichg * 875 / 1024);
#endif
}