view target-utils/dspdump/leadapi.h @ 926:6a0aa8d36d06

rvinterf backslash escape: introduce libprint The new helper function library named libprint is meant to replace the badly misnamed libg23, and will soon contain functions for printing all of the same kinds of GPF TST packets that are now handled in libg23. However, we are also moving safe_print_trace() from libasync to this new library, and changing it to emit our new backslash escape format.
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 23 May 2023 03:47:46 +0000
parents 27b5526ba1a8
children
line wrap: on
line source

/*
 * Definitions for the DSP boot and patch download mechanism,
 * taken from leadapi.h in TCS211.  This version has been
 * further modified for the DSP dump application.
 */

#define APIF_ADDR     0xFFD00000L

#define APIRAM_FIRST_WORD   *((volatile u16 *) APIF_ADDR)

#define DOWNLOAD_EXT_PAGE   *((volatile u16 *) (APIF_ADDR + 0x0FF8))
#define DOWNLOAD_SIZE       *((volatile u16 *) (APIF_ADDR + 0x0FFA))
#define DOWNLOAD_ADDR       *((volatile u16 *) (APIF_ADDR + 0x0FFC))
#define DOWNLOAD_STATUS     *((volatile u16 *) (APIF_ADDR + 0x0FFE))

/* Maximum size of a block which can be copied into the API RAM */

#define MAX_BLOCK_SIZE 0x7F0       

/* Possible values for the download status */

#define LEAD_READY      1
#define BLOCK_READY     2
#define PROGRAM_DONE    3
#define PAGE_SELECTION  4

/* DSP reset control register definitions */

#define MEM_CLKM_ADDR   0xfffffd00              /* CLKM registers addr. */
#define CLKM_CNTL_RST   *((volatile u16 *) (MEM_CLKM_ADDR + 4))

#define CLKM_LEAD_RST 	0x0002
#define CLKM_EXT_RST 	0x0004

/* extensions provided by OsmocomBB's DSP dump agent */

#define BL_MODE_PROG_WRITE	0
#define BL_MODE_DATA_WRITE	1
#define BL_MODE_PROG_READ	2
#define BL_MODE_DATA_READ	3
#define BL_MODE_PROM_READ	4
#define BL_MODE_DROM_READ	5