view rvinterf/include/etm.h @ 90:8dc062c6359b

target-utils/libc: memcpy16 and memcpy32 optimized variants implemented
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 28 Oct 2016 23:02:44 +0000
parents e7502631a0f9
children c535e7438c25
line wrap: on
line source

/*
 * This header file contains various definitions for talking to ETM.
 */

#define	ETM_USE_ID	0x001E0004

/* ETM Module IDs */
enum {
    ETM_TM3        = 0x00, // Use of old TM3 protocol
    ETM_CORE       = 0x01,
    ETM_TMT        = 0x02, // Pseudo module
    ETM_SH         = 0x03, // Pseudo module
    ETM_TM3_MISC   = 0x04, // Pseudo module - Target side
    ETM_RF         = 0x05, 
    ETM_IMEI       = 0x06,
    ETM_FFS2       = 0x07,
    ETM_AUDIO      = 0x08,
    ETM_TPU        = 0x09, // Not official part ETM
    ETM_PWR        = 0x0A,
    ETM_BT         = 0x0B,
    ETM_L23        = 0x0C,
    ETM_RESERVED10 = 0x0D,
    ETM_RESERVED11 = 0x0E,
    ETM_RESERVED12 = 0x0F,

    ETM_CUST       = 0xC0, // Customize id
    ETM_CUST1      = 0xC1, // Customize id
    ETM_CUST2      = 0xC2, // Customize id
    ETM_CUST3      = 0xC3, // Customize id
    ETM_CUST4      = 0xC4, // Customize id
    ETM_CUST5      = 0xC5, // Customize id
    ETM_CUST6      = 0xC6, // Customize id
    ETM_CUST7      = 0xC7, // Customize id
    ETM_CUST8      = 0xC8, // Customize id

    ETM_TEST       = 0xAA, // used for test of dll's
    ETM_TASK       = 0xEE, // ETM TASK in Target

    ETM_FFS1       = 0x70
};

/* ETM_CORE opcodes */
#define	TMCORE_OPC_MEM		0x61
#define	TMCORE_OPC_ECHO		0x62
#define	TMCORE_OPC_RESET	0x63
#define	TMCORE_OPC_DEBUG	0x64
#define	TMCORE_OPC_VERSION	0x65
#define	TMCORE_OPC_CODEC_RD	0x66
#define	TMCORE_OPC_CODEC_WR	0x67
#define	TMCORE_OPC_DIEID	0x68

#define	MAX_MEMREAD_BYTES	238
#define	MAX_MEMREAD_16BIT	119