cpu/cortexm_common: extend flashpage API
This commit is contained in:
parent
72d47013dd
commit
d38f6c68b5
@ -207,6 +207,10 @@ SECTIONS
|
|||||||
_sram = ORIGIN(ram);
|
_sram = ORIGIN(ram);
|
||||||
_eram = ORIGIN(ram) + LENGTH(ram);
|
_eram = ORIGIN(ram) + LENGTH(ram);
|
||||||
|
|
||||||
|
/* Populate information about rom size */
|
||||||
|
_srom = ORIGIN(rom);
|
||||||
|
_erom = ORIGIN(rom) + LENGTH(rom);
|
||||||
|
|
||||||
_sbackup_data_load = LOADADDR(.backup.data);
|
_sbackup_data_load = LOADADDR(.backup.data);
|
||||||
.backup.data : ALIGN(4) {
|
.backup.data : ALIGN(4) {
|
||||||
_sbackup_data = .;
|
_sbackup_data = .;
|
||||||
@ -228,4 +232,8 @@ SECTIONS
|
|||||||
_sheap1 = . ;
|
_sheap1 = . ;
|
||||||
_eheap1 = ORIGIN(bkup_ram) + LENGTH(bkup_ram);
|
_eheap1 = ORIGIN(bkup_ram) + LENGTH(bkup_ram);
|
||||||
} > bkup_ram
|
} > bkup_ram
|
||||||
|
|
||||||
|
.end_fw (NOLOAD) : ALIGN(4) {
|
||||||
|
_end_fw = . ;
|
||||||
|
} > rom
|
||||||
}
|
}
|
||||||
|
|||||||
37
cpu/cortexm_common/periph/flashpage.c
Normal file
37
cpu/cortexm_common/periph/flashpage.c
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2021 Freie Universität Berlin
|
||||||
|
*
|
||||||
|
* This file is subject to the terms and conditions of the GNU Lesser
|
||||||
|
* General Public License v2.1. See the file LICENSE in the top level
|
||||||
|
* directory for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ingroup cpu_cortexm_common
|
||||||
|
* @ingroup drivers_periph_pm
|
||||||
|
* @{
|
||||||
|
* @file
|
||||||
|
* @brief common periph/flashpage functions
|
||||||
|
*
|
||||||
|
* @author Nils Ollrogge <nils.ollrogge@fu-berlin.de>
|
||||||
|
* @}
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "periph/flashpage.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Memory markers, defined in the linker script
|
||||||
|
* @{
|
||||||
|
*/
|
||||||
|
extern uint32_t _end_fw;
|
||||||
|
extern uint32_t _erom;
|
||||||
|
|
||||||
|
unsigned flashpage_first_free(void)
|
||||||
|
{
|
||||||
|
return flashpage_page(&_end_fw) + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
unsigned flashpage_last_free(void)
|
||||||
|
{
|
||||||
|
return flashpage_page(&_erom) - 1;
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user