view src/cs/drivers/drv_app/fchg/fchg_default_batt.c @ 605:07d0dc4431f4

bootloader.s: same MEMIF fix as in int.s plus DPLL BYPASS fix Both MEMIF and DPLL settings are now the same between int.s and bootloader.s assembly code paths. Previously bootloader.s was setting DPLL BYPASS /2 mode, which persisted until _INT_Initialize code with the bootloader body omitted, or was changed to /1 in the hardware init function in the bootloader.lib:start.obj module.
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 17 Jun 2019 18:40:32 +0000
parents 919b44c991fc
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);
}