From 36812d6e32868a179d4bfea29a841d5fbff616ab Mon Sep 17 00:00:00 2001 From: Uwe Bonnes Date: Wed, 12 Oct 2011 13:36:13 +0200 Subject: [PATCH] Explain source of CHIP ID and add new devices Modified by karlp to merge the two 0x416 devices Modified to add F1 to the F1 devices and sort by device id Signed-off-by: Karl Palsson --- gdbserver/gdb-server.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/gdbserver/gdb-server.c b/gdbserver/gdb-server.c index 77d7562..a5b1036 100644 --- a/gdbserver/gdb-server.c +++ b/gdbserver/gdb-server.c @@ -28,6 +28,10 @@ static const char hex[] = "0123456789abcdef"; static const char* current_memory_map = NULL; +/* + * Chip IDs are explained in the appropriate programming manual for the + * DBGMCU_IDCODE register (0xE0042000) + */ struct chip_params { uint32_t chip_id; char* description; @@ -35,23 +39,27 @@ struct chip_params { uint32_t sram_size; uint32_t bootrom_base, bootrom_size; } const devices[] = { - { 0x412, "Low-density device", - 0x8000, 0x400, 0x2800, 0x1ffff000, 0x800 }, // table 1, pm0063 - { 0x410, "Medium-density device", + { 0x410, "F1 Medium-density device", 0x20000, 0x400, 0x5000, 0x1ffff000, 0x800 }, // table 2, pm0063 - { 0x414, "High-density device", + { 0x411, "F2 device", + 0x100000, 0x20000, 0x20000, 0x1ff00000, 0x7800 }, // table 1, pm0059 + { 0x412, "F1 Low-density device", + 0x8000, 0x400, 0x2800, 0x1ffff000, 0x800 }, // table 1, pm0063 + { 0x413, "F4 device", + 0x100000, 0x20000, 0x20000, 0x1ff00000, 0x7800 }, // table 1, pm0081 + { 0x414, "F1 High-density device", 0x80000, 0x800, 0x10000, 0x1ffff000, 0x800 }, // table 3 pm0063 // This ignores the EEPROM! (and uses the page erase size, // not the sector write protection...) - { 0x416, "EnergyLite device", - 0x2000, 0x100, 0x4000, 0x1ff00000, 0x1000 }, - { 0x418, "Connectivity line device", + { 0x416, "L1 Med-density device", // table 1, pm0062 + 0x20000, 0x100, 0x4000, 0x1ff00000, 0x1000 }, + { 0x418, "F1 Connectivity line device", 0x40000, 0x800, 0x10000, 0x1fffb000, 0x4800 }, - { 0x420, "Medium-density value line device", + { 0x420, "F1 Medium-density value line device", 0x20000, 0x400, 0x2000, 0x1ffff000, 0x800 }, - { 0x428, "High-density value line device", + { 0x428, "F1 High-density value line device", 0x80000, 0x800, 0x8000, 0x1ffff000, 0x800 }, - { 0x430, "XL-density device", // pm0068 + { 0x430, "F1 XL-density device", // pm0068 0x100000, 0x800, 0x18000, 0x1fffe000, 0x1800 }, { 0 } }; -- 2.47.2