view src/g23m-aci/aci/aci_cphs.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 53929b40109c
children
line wrap: on
line source

/*
+--------------------------------------------------------------------+
| PROJECT: GSM-F&D (8411)               $Workfile:: aci_cphs.h      $|
| $Author:: $ CONDAT AG                 $Revision::                 $|
| CREATED:                              $Modtime::                  $|
| STATE  : code                                                      |
+--------------------------------------------------------------------+

   MODULE  : ACI_CPHS

   PURPOSE : Command handler interface definitions for CPHS

*/

#ifdef FF_CPHS

#ifndef ACI_CPHS_H
#define ACI_CPHS_H

/**************** CPHS Module *****************************************/
EXTERN T_ACI_RETURN sAT_PercentCPHS( T_ACI_CMD_SRC   srcId,
                                     T_ACI_CPHS_INIT init_cphs );

EXTERN T_ACI_RETURN qAT_PercentCPHS( T_ACI_CMD_SRC   srcId,
                                     T_ACI_CPHS_INIT *init_cphs);

EXTERN T_ACI_RETURN sAT_PercentCPNUMS( T_ACI_CMD_SRC srcId,
                                       UBYTE         element_id,
                                       UBYTE         mode );

EXTERN T_ACI_RETURN tAT_PercentCPNUMS( T_ACI_CMD_SRC srcId );

EXTERN T_ACI_RETURN qAT_PercentCPALS( T_ACI_CMD_SRC srcId,
                                      UBYTE         call_id,
                                      T_CPHS_LINES  *line,
                                      CHAR          *line_desc,
                                      UBYTE         *max_line_desc);

EXTERN T_ACI_RETURN sAT_PercentCPVWI( T_ACI_CMD_SRC srcId,
                                      UBYTE         flag_set, 
                                      USHORT        lines);

EXTERN T_ACI_RETURN qAT_PercentCPVWI( T_ACI_CMD_SRC srcId,
                                      UBYTE         *flag_set, 
                                      USHORT        line);

EXTERN T_ACI_RETURN qAT_PercentCPOPN( T_ACI_CMD_SRC srcId,
                                      CHAR         *longname, 
                                      UBYTE        *max_longname,
                                      CHAR         *shortname, 
                                      UBYTE        *max_shortname);

EXTERN T_ACI_RETURN sAT_PercentCPINF( T_ACI_CMD_SRC srcId,
                                      UBYTE         *csp,
                                      UBYTE         csp_len);

EXTERN T_ACI_RETURN qAT_PercentCPINF( T_ACI_CMD_SRC srcId,
                                      UBYTE        *phase,
                                      USHORT       *sst,
                                      CHAR         *csp,
                                      CHAR         *csp2,
                                      UBYTE        *max_csp_size,
                                      UBYTE        *max_csp2_size);

EXTERN T_ACI_RETURN qAT_PercentCPMB( T_ACI_CMD_SRC  srcId,
                                      UBYTE         rec_id,
                                      T_CPHS_LINES  *line,
                                      CHAR          *number,
                                      T_ACI_TOA_TON *ton,
                                      T_ACI_TOA_NPI *npi,
                                      CHAR          *alpha_id,
                                      UBYTE         *first);

EXTERN T_ACI_RETURN sAT_PercentCPMBW( T_ACI_CMD_SRC       srcId,
                                      SHORT               index,
                                      CHAR*               number,
                                      T_ACI_TOA*          type,
                                      T_CPHS_PB_TEXT* text);

GLOBAL T_ACI_RETURN tAT_PercentCPMBW ( T_ACI_CMD_SRC srcId,
                                       SHORT*        firstIdx,
                                       SHORT*        lastIdx,
                                       UBYTE*        nlength,
                                       UBYTE*        tlength );

EXTERN T_ACI_RETURN sAT_PercentCPCFU( T_ACI_CMD_SRC srcId, 
                                      UBYTE         cfu_set, 
                                      T_CPHS_LINES  lines );

EXTERN T_ACI_RETURN qAT_PercentCPCFU( T_ACI_CMD_SRC srcId,
                                      UBYTE *cfu_set, 
                                      T_CPHS_LINES line );


#ifdef CMH_F_C
EXTERN void rCI_PercentCPNUMS(void);
EXTERN void rAT_PercentCPNUMS(void);
EXTERN void rCI_PercentCPVWI (void);
EXTERN void rAT_PercentCPVWI (void);
EXTERN void rCI_PercentCPROAM (void);
EXTERN void rAT_PercentCPROAM (void);


#else
EXTERN void rCI_PercentCPNUMS(UBYTE element_index,
                              UBYTE index_level,
                              CHAR  *alpha_tag,
                              CHAR  *number,
                              BOOL  premium_flag,
                              BOOL  network_flag,
                              UBYTE type_of_address);
                              

EXTERN void rAT_PercentCPNUMS(UBYTE element_index,
                              UBYTE index_level,
                              CHAR  *alpha_tag,
                              CHAR  *number,
                              BOOL  premium_flag,
                              BOOL  network_flag,
                              UBYTE type_of_address);
                              

EXTERN void rCI_PercentCPVWI (UBYTE  flag_set, 
                              USHORT line);
EXTERN void rAT_PercentCPVWI (UBYTE  flag_set, 
                              USHORT line);

EXTERN void rCI_PercentCPROAM (UBYTE roam_status);
EXTERN void rAT_PercentCPROAM (UBYTE roam_status);

#endif /* CMH_F_C */



/**********************************************************************/


#endif /* ACI_CPHS_H */
#endif /* FF_CPHS */

/*==== EOF ========================================================*/