FreeCalypso > hg > freecalypso-tools
annotate target-utils/dspdump/leadapi.h @ 921:74d284add54d
fc-fsio: guard against bogus readdir results from the target
If the FFS being operated on contains SE K2x0 extended filenames,
readdir will return strings that are bad for printing. We need to
guard against this possibility, and also against possible other
bogosity that could be sent by other alien firmwares.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Sat, 31 Dec 2022 22:55:23 +0000 |
| parents | 27b5526ba1a8 |
| children |
| rev | line source |
|---|---|
|
540
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * Definitions for the DSP boot and patch download mechanism, |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * taken from leadapi.h in TCS211. This version has been |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * further modified for the DSP dump application. |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 */ |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 #define APIF_ADDR 0xFFD00000L |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 #define APIRAM_FIRST_WORD *((volatile u16 *) APIF_ADDR) |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 #define DOWNLOAD_EXT_PAGE *((volatile u16 *) (APIF_ADDR + 0x0FF8)) |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 #define DOWNLOAD_SIZE *((volatile u16 *) (APIF_ADDR + 0x0FFA)) |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 #define DOWNLOAD_ADDR *((volatile u16 *) (APIF_ADDR + 0x0FFC)) |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 #define DOWNLOAD_STATUS *((volatile u16 *) (APIF_ADDR + 0x0FFE)) |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 /* Maximum size of a block which can be copied into the API RAM */ |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 #define MAX_BLOCK_SIZE 0x7F0 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 /* Possible values for the download status */ |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 #define LEAD_READY 1 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 #define BLOCK_READY 2 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #define PROGRAM_DONE 3 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 #define PAGE_SELECTION 4 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 /* DSP reset control register definitions */ |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 #define MEM_CLKM_ADDR 0xfffffd00 /* CLKM registers addr. */ |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 #define CLKM_CNTL_RST *((volatile u16 *) (MEM_CLKM_ADDR + 4)) |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 #define CLKM_LEAD_RST 0x0002 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 #define CLKM_EXT_RST 0x0004 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 /* extensions provided by OsmocomBB's DSP dump agent */ |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 #define BL_MODE_PROG_WRITE 0 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 #define BL_MODE_DATA_WRITE 1 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 #define BL_MODE_PROG_READ 2 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 #define BL_MODE_DATA_READ 3 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 #define BL_MODE_PROM_READ 4 |
|
27b5526ba1a8
dspdump target program written, compiles
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 #define BL_MODE_DROM_READ 5 |
