view src/gpf2/inc/ind2str.h @ 673:62a5285e014a

Lorekeeping: allow tpudrv-leonardo.lib on Leonardo/Tango Back in 2015 the Mother's idea was to produce a FreeCalypso development board that would be a clone of TI Leonardo, including the original quadband RFFE; one major additional stipulation was that this board needed to be able to run original unmodified TCS211-20070608 firmware with all blobs intact, with only minimal binary patches to main.lib and tpudrv.lib. The necessary patched libs were produced at that time in the tcs211-patches repository. That plan was changed and we produced FCDEV3B instead, with Openmoko's triband RFFE instead of Leonardo quadband, but when FC Magnetite started in 2016, a TPUDRV_blob= provision was still made, allowing the possibility of patching OM's tpudrv.lib for a restored Leonardo RFFE. Now in 2020 we have FC Tango which is essentially a verbatim clone of Leonardo core, including the original quadband RFFE. We have also deblobbed our firmware so much that we have absolutely no real need for a blob version of tpudrv.lib - but I thought it would be neat to put the ancient TPUDRV_blob= mechanism (classic config) to its originally intended use, just for the heck of it.
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 29 May 2020 03:55:36 +0000
parents 864b8cc0cf63
children
line wrap: on
line source

/* 
+----------------------------------------------------------------------------- 
|  Project :  STR2IND
|  Modul   :  ind2str.h
+----------------------------------------------------------------------------- 
|  Copyright 2002 Texas Instruments Berlin, AG 
|                 All rights reserved. 
| 
|                 This file is confidential and a trade secret of Texas 
|                 Instruments Berlin, AG 
|                 The receipt of or possession of this file does not convey 
|                 any rights to reproduce or disclose its contents or to 
|                 manufacture, use, or sell anything it may describe, in 
|                 whole, or in part, without the specific written consent of 
|                 Texas Instruments Berlin, AG. 
+----------------------------------------------------------------------------- 
|  Purpose :  This Module defines interface of the ind2str library. The
|             main purpose of this library is the translation of an trace
|             index to a complete trace string.
+----------------------------------------------------------------------------- 
*/ 

#ifndef IND2STR_H
#define IND2STR_H


/*==== CONSTANTS ==================================================*/
#define IND2STR_OK                      0
#define IND2STR_FILE_NOT_FOUND         -1
#define IND2STR_WRONGFILEFORMAT        -2
#define IND2STR_INDEXOUTOFBOUNDS       -3
#define IND2STR_PARAMCOUNTOUTOFBOUNDS  -4
#define IND2STR_NOTINITIALISED         -5
#define IND2STR_ACCESSVIOLATION        -6
#define IND2STR_INTERNAL_ERROR         -7

#ifdef __cplusplus
extern "C" {
#endif



/*-----------------------------------------------------------------------------
|  Function    : ind2str_Init()
+------------------------------------------------------------------------------
|  Description : Initialises the library: opens the file containing the trace
|                mapping table, build the internal representation , closes the
|                the file after reading.
|
|  Parameters  : tableFile  - the mapping table file name
|                 
|  Return      : success or failure
+------------------------------------------------------------------------------
*/
signed char ind2str_Init(char * tableFile);


/*-----------------------------------------------------------------------------
|  Function    : ind2str_Exit()
+------------------------------------------------------------------------------
|  Description : De-initialises the library: closes the file containing the
|                trace mapping table, frees allocated memory.
|
|  Parameters  : 
|                 
|  Return      : 
+------------------------------------------------------------------------------
*/
void ind2str_Exit(void);


/*-----------------------------------------------------------------------------
|  Function    : ind2str_Version()
+------------------------------------------------------------------------------
|  Description : Returns the version (build date) of the table. The table must
|                be initialized before.
|
|  Parameters  : 
|                 
|  Return      : The version of the table or 0.
+------------------------------------------------------------------------------
*/
unsigned long ind2str_Version(void);


/*-----------------------------------------------------------------------------
|  Function    : ind2str_VersionNoInit()
+------------------------------------------------------------------------------
|  Description : Returns the version (build date) of the table. The table does
|                not need to be initialized before.
|
|  Parameters  : fileName - the name of the file, that contains a table
|                 
|  Return      : The version of the table or 0.
+------------------------------------------------------------------------------
*/
unsigned long ind2str_VersionNoInit(char * fileName);


/*-----------------------------------------------------------------------------
|  Function    : ind2str
+------------------------------------------------------------------------------
|  Description : Transforms a trace index string into a trace string, according
|                to the trace mapping table.
|
|  Parameters  : dst - destination string
|
|                src - source string
|                            
|
|  Return      : The number of characters printed to the destination string.
|                
+------------------------------------------------------------------------------
*/
int ind2str(char * dst, char * src);


#ifdef __cplusplus
}
#endif


#endif /* IND2STR_H */