FreeCalypso > hg > freecalypso-tools
comparison target-utils/dspdump/dumpops.c @ 544:451d8b545b11
dspdump: fulldump command implemented
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Mon, 28 Oct 2019 21:00:40 +0000 |
| parents | 947c6a443a9c |
| children |
comparison
equal
deleted
inserted
replaced
| 543:947c6a443a9c | 544:451d8b545b11 |
|---|---|
| 93 rc = boot_dsp_dump_agent(); | 93 rc = boot_dsp_dump_agent(); |
| 94 if (rc < 0) | 94 if (rc < 0) |
| 95 return; /* error msg already printed */ | 95 return; /* error msg already printed */ |
| 96 dump_large_section((u16)mode, (u32)addr, (u32)len); | 96 dump_large_section((u16)mode, (u32)addr, (u32)len); |
| 97 } | 97 } |
| 98 | |
| 99 static struct rom_section { | |
| 100 char *name; | |
| 101 u32 addr; | |
| 102 u32 size; | |
| 103 int mode; | |
| 104 } rom_sections[] = { | |
| 105 { "Registers", 0x00000, 0x0060, BL_MODE_DATA_READ }, | |
| 106 { "DROM", 0x09000, 0x5000, BL_MODE_DROM_READ }, | |
| 107 { "PDROM", 0x0e000, 0x2000, BL_MODE_PROM_READ }, | |
| 108 { "PROM0", 0x07000, 0x7000, BL_MODE_PROM_READ }, | |
| 109 { "PROM1", 0x18000, 0x8000, BL_MODE_PROM_READ }, | |
| 110 { "PROM2", 0x28000, 0x8000, BL_MODE_PROM_READ }, | |
| 111 { "PROM3", 0x38000, 0x2000, BL_MODE_PROM_READ }, | |
| 112 { 0, 0, 0, -1 } | |
| 113 }; | |
| 114 | |
| 115 void | |
| 116 cmd_fulldump() | |
| 117 { | |
| 118 struct rom_section *tp; | |
| 119 int rc; | |
| 120 | |
| 121 rc = boot_dsp_dump_agent(); | |
| 122 if (rc < 0) | |
| 123 return; /* error msg already printed */ | |
| 124 for (tp = rom_sections; tp->name; tp++) { | |
| 125 printf("DSP dump: %s [%05x-%05x]\n", tp->name, tp->addr, | |
| 126 tp->addr + tp->size - 1); | |
| 127 rc = dump_large_section(tp->mode, tp->addr, tp->size); | |
| 128 if (rc < 0) | |
| 129 return; /* error msg already printed */ | |
| 130 } | |
| 131 } |
