view src/cs/drivers/drv_app/pwr/pwr_api.h @ 695:530f71d65c20

uartfax.c: pull from Tourmaline (GTM900 RI output) In addition to the primary intent of bringing in GTM900 RI output support, pulling uartfax.c wholesale from Tourmaline also changes the initial_time argument in the two NU_Create_Timer() calls from 0 to 1. This change is required for the new version of Nucleus used in Tourmaline and Selenite (and apparently also used by TI in LoCosto), and it is harmless (no effect) for the original TCS211 version of Nucleus used in Magnetite. The new philosophical model being adopted is that Tourmaline is our new development head firmware, whereas Magnetite will now be maintained similarly to how Linux maintainers treat stable kernels: changes will be backported from Tourmaline if they are deemed appropriate for stable modem firmware.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 24 Oct 2020 17:33:10 +0000
parents c93a236e0d50
children
line wrap: on
line source

/*******************************************************************************
 *
 * pwr_api.h
 *
 * Purpose: This file contains definitions that can be used by any SWE
 *          for power management services.
 *
 * Author    Candice Bazanegue (c-brille@ti.com)
 *
 * (C) Texas Instruments 2001
 *
 ******************************************************************************/

#ifndef __PWR_API_H__
#define __PWR_API_H__

#include "rv/rv_general.h"

typedef T_RV_RET T_POWER_RET;

typedef enum
{
    POWER_OK      =  0,    /* OK */
    POWER_ERROR   = -1     /* ERROR */
};


/* Define the different charging process states */
typedef enum
{
   CHARGE_STOPPED,
   TESTING_BATTERY,
   CI_CHARGE_STARTED,   /* constant current charge */
   CV_CHARGE_STARTED    /* constant voltage charge */
}T_PWR_CHARGING_STATE;


/* Define the different states for TIMER0 use */
typedef enum
{
   BATTERY_TYPE_TEST,
   BATTERY_SHORT_TEST,
   BATTERY_OPEN_TEST,
   BATTERY_50UA_TEMP_TEST,
   BATTERY_10UA_TEMP_TEST,
   BATTERY_CALIBRATION
}T_PWR_TIMER0_STATE;


typedef struct
{
   BOOLEAN        info_enable;
   T_RV_RETURN    return_path;
}T_POWER_INFO;

typedef UINT8 T_PWR_PERCENT;

typedef struct
{
   T_PWR_PERCENT  remain_capa_threshold;
   T_RV_RETURN    return_path;
}T_POWER_ALERT;

typedef enum
{
   BAT_TEMP_OUTSIDE_LIMITS,
   BAT_OPEN_TEST_FAILED,
   BAT_SHORT_TEST_FAILED,
   BAT_TYPE_UNKNOWN
} T_BAT_PROBLEM;




/* Prototypes */

T_POWER_RET power_info_register(BOOLEAN info_enable, T_RV_RETURN return_path);
T_POWER_RET power_alert_register(T_PWR_PERCENT remain_capa_threshold, T_RV_RETURN return_path);
T_POWER_RET power_emergency_register(T_RV_RETURN return_path);
T_POWER_RET power_battery_information(void);
void pwr_get_bat_info(void);

#endif /* __PWR_API_H__ */