view src/cs/services/atp/atp_spp_api_i.h @ 263:b5e8dfd114a7

Switch_ON(): go into charging boot mode on either CHGSTS or CHGPRES If someone were to plug and then unplug a charger into a switched-off phone in an extremely brief "glitch" manner, we should do an automatic power-off on boot in this condition. When we were checking only CHGPRES in Switch_ON(), we would go into Misc boot state instead, which is undesirable. Now if we have a CHGSTS but not CHGPRES condition, we will go into charging boot mode, and FCBM will then do the automatic power-off upon detecting absence of the charger in its periodic polling.
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 14 May 2021 05:50:36 +0000
parents 4e78acac3d88
children
line wrap: on
line source

/*******************************************************************************
*
* File Name : atp_spp_api_i.h
*
* Internal Definitions for the interface between ATP and SPP SW entity
*
* (C) Texas Instruments, all rights reserved
*
* Version number	: 0.1      Date : 16-Marsh-2000
*
* History			: 0.1  - Created by E. Baissus
*
*
* Author			: Eric Baissus : e-baissus@ti.com
*
*   (C) Copyright 2000 by Texas Instruments Incorporated, All Rights Reserved
******************************************************************************/
#ifndef ATP_SPP_API_I_H
#define ATP_SPP_API_I_H


#include "rv/rv_general.h"
#include "rvf/rvf_api.h"
#include "spp_general.h"
#include "spp_up_interface.h"

// Structure used to store the 'open pending port' information


typedef struct 
{
	T_ATP_SW_ENTITY_ID initiator_id;
	T_ATP_PORT_NB port_nb;
	T_SPP_HANDLE handle;
} T_ATP_SPP_PENDING_PORT_INFO;


typedef enum
{
	ATP_SPP_IS_IND,
	ATP_SPP_IS_CFM
} T_ATP_SPP_IS_IND_OR_CFM;


void atp_spp_to_spp_if_ft(void * message_p);
T_RV_RET atp_spp_open_port_rqst(T_ATP_OPEN_PORT_IND * open_port_ind_p);
T_RV_RET atp_spp_open_port_rsp(void * spp_open_port_rsp_p,T_ATP_SPP_IS_IND_OR_CFM cfm_or_ind);
T_RV_RET atp_spp_port_closed_from_atp(T_ATP_PORT_CLOSED * close_port_p);
T_RV_RET atp_spp_send_to_spp_buffer_nc(T_ATP_NO_COPY_DATA_RDY * atp_no_copy_p);
void atp_spp_from_spp_if_ft(void * message_p);
T_RV_RET atp_spp_reg(void);
T_RV_RET atp_spp_set_atp_signals(T_SPP_LINE_STS * message_p);
T_RV_RET atp_spp_set_spp_signals(T_ATP_SIGNAL_CHANGED * message_p);


#endif