FreeCalypso > hg > fc-magnetite
view src/cs/services/atp/Bti_at.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 : bti_at.h * * Common definition used by GSM PS and BT PS * * (C) Texas Instruments, all rights reserved * * Version number : 0.1 Date : 02-Jan-2001 * ******************************************************************************/ #ifndef BTI_AT_H #define BTI_AT_H /* Acknowledgment */ typedef enum { BTI_NAK = 0, /* failure */ BTI_ACK = 1 /* success */ }T_BTI_ACK; /* Port Number */ typedef unsigned char T_BTI_PORT_NB; /* Custom information provided by GSM when opening a port */ typedef struct { unsigned long optimal_gsm_max_packet_size; // GSM indicates in this parameter the best maximum packet size that should be used by BT // 0 means do not care } T_BTI_GSM_PORT_INFO; // Information provided by GSM related to the port /* Custom information provided by BT when opening a port */ typedef struct { unsigned long optimal_bt_max_packet_size; // BT indicates in this parameter the best maximum packet size that should be used by GSM // 0 means do not care } T_BTI_BT_PORT_INFO; // Information provided by BT related to the port /* Ring type */ typedef enum { BTI_AT_RING_NotPresent, /* no bearer cap available */ BTI_AT_RING_Async, /* transparent data */ BTI_AT_RING_Sync, /* currently not used */ BTI_AT_RING_RelAsync, /* non transparent data */ BTI_AT_RING_RelSync, /* currently not used */ BTI_AT_RING_Fax, BTI_AT_RING_Voice, BTI_AT_RING_AuxVoice, BTI_AT_RING_GPRS }T_BTI_AT_RING_TYPE; /* Line status information from DCE (ie GSM) */ typedef unsigned char T_BTI_AT_DCE_SIGNAL; #define BTI_AT_RING_OFF (0) #define BTI_AT_RING_ON (1) #define BTI_AT_RING_MASK (1) #define BTI_AT_DCD_OFF (0) #define BTI_AT_DCD_ON (2) #define BTI_AT_DCD_MASK (2) #endif