view src/cs/drivers/drv_app/fchg/fchg_default_batt.c @ 78:95ef11e76c5b

src/cs/system/main/gcc: asm code pieced from Citrine
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 20 Jul 2018 06:46:56 +0000
parents b6a5e36de839
children
line wrap: on
line source

/*
 * This module provides the default table of battery State-of-Charge
 * thresholds in the absence of a customized table in FFS.
 *
 * The present default table has been taken from Pirelli's firmware.
 */

#include "fchg/fchg_env.h"
#include "fchg/fchg_func_i.h"
#include "rv/rv_general.h"
#include <string.h>

static const T_PWR_THRESHOLDS default_batt_table[] = {
	{4170, 100},
	{4120, 95},
	{4070, 90},
	{4030, 85},
	{3964, 80},
	{3930, 75},
	{3900, 70},
	{3882, 65},
	{3847, 60},
	{3805, 55},
	{3786, 50},
	{3771, 45},
	{3759, 40},
	{3750, 35},
	{3745, 30},
	{3737, 25},
	{3719, 20},
	{3688, 15},
	{3663, 10},
	{3539, 5},
	{3370, 0}
};

void pwr_set_default_batt_table(void)
{
	memcpy(pwr_ctrl->batt_thresholds, default_batt_table,
		sizeof default_batt_table);
	pwr_ctrl->nb_thresholds = sizeof(default_batt_table) /
				  sizeof(T_PWR_THRESHOLDS);
}