view src/ui3/mfw/mfw_utils.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 e8ddbb0837ed
children
line wrap: on
line source

/*
+--------------------------------------------------------------------+
| PROJECT: MMI-Framework (8417) 	$Workfile:: mfw_utils.h			$|
| $Author:: NDH						$Revision:: 1					$|
| CREATED: 6.1.2003		       		$Modtime:: 10.04.00 14:58		$|
| STATE  : code														$|
+--------------------------------------------------------------------+

   MODULE  : MFW_UTILS

   PURPOSE : This modul contains General Functional Utilities.

   HISTORY:
   Jun 05, 2004	REF: CRR 18262  NISHIKANT KULKARNI 
   Description: The sample sends a STOP DTMF message without release of the key by the user
   Solution: Instead of sending DTMF commands in "VTS_MOD_Auto" mode, on key press DTMF tone is started
  		   using VTS_MOD_ManStart and on key release DTMF tone is stopped using VTS_MOD_ManStop mode.

*/

/*
** Limiting Macros
*/
#define MAX_CBUF_QUEUES 3

/*
** Return Value Macros
*/
#define MFW_CBUF_OK					1
#define MFW_CBUF_OK_DATA_LOSS		2

#define MFW_CBUF_INVALID_BUF_ID			(-1)
#define MFW_CBUF_NO_BUFS_AVAILABLE		(-2)
#define MFW_CBUF_MEM_ALLOC_FAILURE		(-3)
#define MFW_CBUF_INVALID_ITEM_SIZE		(-4)
#define MFW_CBUF_INVALID_MAX_ITEMS		(-5)
#define MFW_CBUF_INVALID_BUF_PTR		(-6)
#define MFW_CBUF_INVALID_STATIC_BUF	 (-7)
#define MFW_CBUF_PUT_FAILED_Q_FULL		(-8)
#define MFW_CBUF_BUFFER_EMPTY			(-9)

/*
** Function Prototypes
    xnkulkar SPR-18262: Added the prototypes for  mfw_cbuf_put_mode() and  mfw_cbuf_get_mode()
*/
SHORT mfw_cbuf_create (USHORT max_num_items, USHORT item_size,
						 UBYTE overwrite, UBYTE null_char,
						 UBYTE static_buf, void *buffer_ptr);
SHORT mfw_cbuf_delete (SHORT bufId);
SHORT mfw_cbuf_reset (SHORT bufId);
SHORT mfw_cbuf_put (SHORT bufId, void *data_ptr);
SHORT mfw_cbuf_get (SHORT bufId, void *data_ptr);
SHORT  mfw_cbuf_put_mode (SHORT bufId,UBYTE vts_mode); //xnkulkar SPR-18262
SHORT  mfw_cbuf_get_mode  (SHORT bufId); //xnkulkar SPR-18262
USHORT mfw_cbuf_num_elements (SHORT bufId);