view src/cs/drivers/drv_app/rtc/rtc_i.h @ 635:baa0a02bc676

niq32.c DTR handling restored for targets that have it TI's original TCS211 fw treated GPIO 3 as the DTR input (wired so on C-Sample and D-Sample boards, also compatible with Leonardo and FCDEV3B which have a fixed pull-down resistor on this GPIO line), and the code in niq32.c called UAF_DTRInterruptHandler() (implemented in uartfax.c) from the IQ_KeypadGPIOHandler() function. But on Openmoko's GTA02 with their official fw this GPIO is a floating input, all of the DTR handling code in uartfax.c including the interrupt logic is still there, but the hobbled TCS211-20070608 semi-src delivery which OM got from TI contained a change in niq32.c (which had been kept in FC until now) that removed the call to UAF_DTRInterruptHandler() as part of those not-quite-understood "CC test" hacks. The present change fixes this bug at a long last: if we are building fw for a target that has TI's "classic" DTR & DCD GPIO arrangement (dsample, fcmodem and gtm900), we bring back all of TI's original code in both uartfax.c and niq32.c, whereas if we are building fw for a target that does not use this classic GPIO arrangement, the code in niq32.c goes back to what we got from OM and all DTR & DCD code in uartfax.c is conditioned out. This change also removes the very last remaining bit of "CC test" bogosity from our FreeCalypso code base.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 19 Jan 2020 01:41:35 +0000
parents 945cf7f506b2
children
line wrap: on
line source

/********************************************************************************/
/*                                                                              */
/*      File Name:   rtc_i.h                                                    */
/*                                                                              */
/*      Purpose:   This file contains the structures, constants and prototypes  */
/*               dedicated to RTC.                                              */
/*                                                                              */
/*      Note:      None.                                                        */
/*                                                                              */
/*      Revision History:                                                       */
/*      03/20/01   Laurent Sollier      Create.                                 */
/*                                                                              */
/*   (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved  */
/*                                                                              */
/********************************************************************************/

#ifndef _RTC_I_H_
#define _RTC_I_H_

#include "rvm/rvm_gen.h"
#include "rvf/rvf_api.h"

/********************************************************************************/
/*                                                                              */
/*   Define a structure used to store all the informations related to RTC's task*/
/*   & MBs identifiers.                                                         */
/*                                                                              */
/********************************************************************************/

typedef struct
{
   T_RVF_MB_ID      prim_id;
   T_RVF_ADDR_ID   addr_id;
   void*            msg_alarm_event;      
} T_RTC_ENV_CTRL_BLK;

/*******************************************************************************
 *
 *                               RTC_Initialize
 * 
 * Purpose  : Initializes the RTC driver.
 *
 * Arguments: In : none
 *            Out: none
 *
 * Returns: RVF_OK if initialisation is ok
 *            RVF_INTERNAL_ERROR else
 *
 ******************************************************************************/

T_RVF_RET RTC_Initialize(void);


/*******************************************************************************
 *
 *                               RTC_ProcessAlarmEvent
 * 
 * Purpose  : Call MMI when SW RTC module receive alarm event
 *
 * Arguments: In : none
 *            Out: none
 *
 * Returns: none
 *
 *
 ******************************************************************************/

void RTC_ProcessAlarmEvent(void);

/*******************************************************************************
 *
 *                               RTC_ItTimerHandle
 * 
 * Purpose  : Compute an average value for compensation register
 *
 * Arguments: In : none
 *            Out: none
 *
 * Returns: none
 *
 *
 ******************************************************************************/

void RTC_ItTimerHandle(void);


/*******************************************************************************
 *
 *                               RTC_ItAlarmHandle
 * 
 * Purpose  : Activate HISR which will send a message in the RTC mailbox to
 *            inform that time alarm is reached
 *
 * Arguments: In : none
 *            Out: none
 *
 * Returns: none
 *
 *
 ******************************************************************************/

void RTC_ItAlarmHandle(void);


/*******************************************************************************
 *
 *                               RTC_GaugingHandler
 * 
 * Purpose  : This function is called when a gauging is finished (started by 
 *            layer1). It save clock counter for average value computation
 *            ( done by RTC_ItTimerHandle)
 *
 * Arguments: In : none
 *            Out: none
 *
 * Returns: none
 *
 *
 ******************************************************************************/

void RTC_GaugingHandler(void);


#endif /* #ifndef _RTC_I_H_ */