view src/cs/drivers/drv_app/fchg/fchg_common.h @ 198:bb5aba57ecfb

Condat backlight driver: actually allow switching levels We earlier made a change to this driver allowing different backlight levels to be set. However, the old backlight idle logic prevented switching from one backlight level to another without going through a fully-off state. Now that we have the beginnings of new backlight timer logic in BMI+MFW, the old idle logic in the Condat driver layer can be axed, and we fix that driver layer to allow free switching between different backlight levels.
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 29 Mar 2021 01:52:48 +0000
parents 75067af48bfd
children
line wrap: on
line source

/*
 * The definitions in this header file are used both in the external API
 * and in the internal structures.
 */

#ifndef __FCHG_COMMON_H
#define __FCHG_COMMON_H

enum fchg_state {
	FCHG_STATE_NO_EXT_PWR = 0,
	FCHG_STATE_PWR_PLUG_TIMER,
	FCHG_STATE_READY_TO_CHARGE,
	FCHG_STATE_READY_TO_RECHARGE,
	FCHG_STATE_I2V_CAL_1,
	FCHG_STATE_I2V_CAL_2,
	FCHG_STATE_CI_CHARGING,
	FCHG_STATE_CV_CHARGING,
	FCHG_STATE_RECHARGE_TIMER,
	FCHG_STATE_NO_CHARGING
};

/* from original PWR SWE */
typedef UINT8 T_PWR_PERCENT;

enum fchg_event {
	FCHG_EVENT_DISCHARGE,
	FCHG_EVENT_CHARGER_PLUG,
	FCHG_EVENT_CHARGER_UNPLUG,
	FCHG_EVENT_CHARGING_START,
	FCHG_EVENT_CHARGING_COMPLETE,
	FCHG_EVENT_CHARGING_STOPPED,
	FCHG_EVENT_CHARGING_TIMEOUT
};

typedef void (*T_FCHG_EVENT_HANDLER)(enum fchg_event);

#endif	/* include guard */