From c331c07b1623388e4d7afe9bd77d50053fe94698 Mon Sep 17 00:00:00 2001 From: Yuri D'Elia Date: Tue, 8 Jun 2021 17:53:06 +0200 Subject: [PATCH] xfdump: reuse standard definitions for SRAM size/offset --- Firmware/Dcodes.cpp | 2 +- Firmware/bootapp.h | 3 ++- Firmware/xflash_dump.cpp | 5 ++--- Firmware/xflash_layout.h | 8 +++----- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/Firmware/Dcodes.cpp b/Firmware/Dcodes.cpp index bbe39775..48f67cb3 100644 --- a/Firmware/Dcodes.cpp +++ b/Firmware/Dcodes.cpp @@ -278,7 +278,7 @@ void dcode_1() */ void dcode_2() { - dcode_core(SRAM_START, SRAM_START + SRAM_SIZE, dcode_mem_t::sram, 2, _N("SRAM")); + dcode_core(RAMSTART, RAMEND, dcode_mem_t::sram, 2, _N("SRAM")); } #endif diff --git a/Firmware/bootapp.h b/Firmware/bootapp.h index 6ff086f4..44e1d16d 100644 --- a/Firmware/bootapp.h +++ b/Firmware/bootapp.h @@ -3,10 +3,11 @@ #define BOOTAPP_H #include "config.h" +#include #include -#define RAMSIZE 0x2000 +#define RAMSIZE (RAMEND-RAMSTART) #define boot_src_addr (*((uint32_t*)(RAMSIZE - 16))) #define boot_dst_addr (*((uint32_t*)(RAMSIZE - 12))) #define boot_copy_size (*((uint16_t*)(RAMSIZE - 8))) diff --git a/Firmware/xflash_dump.cpp b/Firmware/xflash_dump.cpp index f1ff9ded..65722b1c 100644 --- a/Firmware/xflash_dump.cpp +++ b/Firmware/xflash_dump.cpp @@ -83,7 +83,7 @@ void xfdump_dump() // write sram only xfdump_dump_core(buf, DUMP_OFFSET + offsetof(dump_t, data.sram), - (uint8_t*)SRAM_START, SRAM_SIZE); + (uint8_t*)RAMSTART, RAMSIZE); } @@ -98,8 +98,7 @@ void xfdump_full_dump_and_reset(bool crash) cli(); // write all addressable ranges (this will trash bidirectional registers) - xfdump_dump_core(buf, DUMP_OFFSET + offsetof(dump_t, data), - 0, SRAM_START + SRAM_SIZE); + xfdump_dump_core(buf, DUMP_OFFSET + offsetof(dump_t, data), 0, RAMEND); // force a reset soon wdt_enable(0); diff --git a/Firmware/xflash_layout.h b/Firmware/xflash_layout.h index a5e5559c..f44b9c80 100644 --- a/Firmware/xflash_layout.h +++ b/Firmware/xflash_layout.h @@ -1,12 +1,10 @@ // XFLASH memory layout #pragma once #include +#include "bootapp.h" #include "config.h" #define XFLASH_SIZE 0x40000ul // size of XFLASH -#define SRAM_SIZE 0x2000u // size of SRAM -#define SRAM_START 0x200u // start of SRAM - #define LANG_OFFSET 0x0 // offset for language data #ifndef XFLASH_DUMP @@ -28,8 +26,8 @@ struct dump_header_t struct dump_data_t { // contiguous region containing all addressable ranges - uint8_t regs[SRAM_START]; - uint8_t sram[SRAM_SIZE]; + uint8_t regs[RAMSTART]; + uint8_t sram[RAMSIZE]; }; struct dump_t