mirror of https://github.com/ARMmbed/mbed-os.git
				
				
				
			NUCLEO_F767ZI: Add bootloader support
							parent
							
								
									6edcc1eba2
								
							
						
					
					
						commit
						4d0535a1bf
					
				| 
						 | 
				
			
			@ -30,6 +30,7 @@
 | 
			
		|||
**/
 | 
			
		||||
 | 
			
		||||
#include "stm32f7xx.h"
 | 
			
		||||
#include "nvic_addr.h"
 | 
			
		||||
#include "mbed_assert.h"
 | 
			
		||||
 | 
			
		||||
/*!< Uncomment the following line if you need to relocate your vector Table in
 | 
			
		||||
| 
						 | 
				
			
			@ -92,7 +93,7 @@ void SystemInit(void)
 | 
			
		|||
#ifdef VECT_TAB_SRAM
 | 
			
		||||
    SCB->VTOR = RAMDTCM_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM */
 | 
			
		||||
#else
 | 
			
		||||
    SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH */
 | 
			
		||||
    SCB->VTOR = NVIC_FLASH_VECTOR_ADDRESS; /* Vector Table Relocation in Internal FLASH */
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,4 @@
 | 
			
		|||
#! armcc -E
 | 
			
		||||
; Scatter-Loading Description File
 | 
			
		||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
			
		||||
; Copyright (c) 2016, STMicroelectronics
 | 
			
		||||
| 
						 | 
				
			
			@ -27,10 +28,18 @@
 | 
			
		|||
; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
			
		||||
 | 
			
		||||
; STM32F767ZI: 2048 KB FLASH (0x200000) + 512 KB SRAM (0x80000)
 | 
			
		||||
LR_IROM1 0x08000000 0x200000  {    ; load region size_region
 | 
			
		||||
#if !defined(MBED_APP_START)
 | 
			
		||||
  #define MBED_APP_START 0x08000000
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  ER_IROM1 0x08000000 0x200000  {  ; load address = execution address
 | 
			
		||||
#if !defined(MBED_APP_SIZE)
 | 
			
		||||
  #define MBED_APP_SIZE 0x200000
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
; STM32F767ZI: 2048 KB FLASH (0x200000) + 512 KB SRAM (0x80000)
 | 
			
		||||
LR_IROM1 MBED_APP_START MBED_APP_SIZE  {    ; load region size_region
 | 
			
		||||
 | 
			
		||||
  ER_IROM1 MBED_APP_START MBED_APP_SIZE  {  ; load address = execution address
 | 
			
		||||
   *.o (RESET, +First)
 | 
			
		||||
   *(InRoot$$Sections)
 | 
			
		||||
   .ANY (+RO)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,4 @@
 | 
			
		|||
#! armcc -E
 | 
			
		||||
; Scatter-Loading Description File
 | 
			
		||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
			
		||||
; Copyright (c) 2016, STMicroelectronics
 | 
			
		||||
| 
						 | 
				
			
			@ -27,10 +28,18 @@
 | 
			
		|||
; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 | 
			
		||||
 | 
			
		||||
; STM32F767ZI: 2048 KB FLASH (0x200000) + 512 KB SRAM (0x80000)
 | 
			
		||||
LR_IROM1 0x08000000 0x200000  {    ; load region size_region
 | 
			
		||||
#if !defined(MBED_APP_START)
 | 
			
		||||
  #define MBED_APP_START 0x08000000
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  ER_IROM1 0x08000000 0x200000  {  ; load address = execution address
 | 
			
		||||
#if !defined(MBED_APP_SIZE)
 | 
			
		||||
  #define MBED_APP_SIZE 0x200000
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
; STM32F767ZI: 2048 KB FLASH (0x200000) + 512 KB SRAM (0x80000)
 | 
			
		||||
LR_IROM1 MBED_APP_START MBED_APP_SIZE  {    ; load region size_region
 | 
			
		||||
 | 
			
		||||
  ER_IROM1 MBED_APP_START MBED_APP_SIZE  {  ; load address = execution address
 | 
			
		||||
   *.o (RESET, +First)
 | 
			
		||||
   *(InRoot$$Sections)
 | 
			
		||||
   .ANY (+RO)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,16 @@
 | 
			
		|||
/* Linker script to configure memory regions. */
 | 
			
		||||
 | 
			
		||||
#if !defined(MBED_APP_START)
 | 
			
		||||
  #define MBED_APP_START 0x08000000
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if !defined(MBED_APP_SIZE)
 | 
			
		||||
  #define MBED_APP_SIZE 2048K
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
MEMORY
 | 
			
		||||
{ 
 | 
			
		||||
  FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 2048K
 | 
			
		||||
  FLASH (rx) : ORIGIN = MBED_APP_START, LENGTH = MBED_APP_SIZE
 | 
			
		||||
  RAM (rwx)  : ORIGIN = 0x200001F8, LENGTH = 512K - 0x1F8
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,10 @@
 | 
			
		|||
if (!isdefinedsymbol(MBED_APP_START)) { define symbol MBED_APP_START = 0x08000000; }
 | 
			
		||||
if (!isdefinedsymbol(MBED_APP_SIZE)) { define symbol MBED_APP_SIZE = 0x200000; }
 | 
			
		||||
 | 
			
		||||
/* [ROM = 2048kb = 0x200000] */
 | 
			
		||||
define symbol __intvec_start__     = 0x08000000;
 | 
			
		||||
define symbol __region_ROM_start__ = 0x08000000;
 | 
			
		||||
define symbol __region_ROM_end__   = 0x081FFFFF;
 | 
			
		||||
define symbol __intvec_start__     = MBED_APP_START;
 | 
			
		||||
define symbol __region_ROM_start__ = MBED_APP_START;
 | 
			
		||||
define symbol __region_ROM_end__   = MBED_APP_START + MBED_APP_SIZE - 1;
 | 
			
		||||
 | 
			
		||||
/* [RAM = 512kb = 0x80000] Vector table dynamic copy: 126 vectors = 504 bytes (0x1F8) to be reserved in RAM */
 | 
			
		||||
define symbol __NVIC_start__          = 0x20000000;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1321,7 +1321,8 @@
 | 
			
		|||
        "device_has_add": ["ANALOGOUT", "CAN", "LOWPOWERTIMER", "SERIAL_ASYNCH", "TRNG", "FLASH"],
 | 
			
		||||
        "features": ["LWIP"],
 | 
			
		||||
        "release_versions": ["2", "5"],
 | 
			
		||||
        "device_name": "STM32F767ZI"
 | 
			
		||||
        "device_name": "STM32F767ZI",
 | 
			
		||||
        "bootloader_supported": true
 | 
			
		||||
    },
 | 
			
		||||
    "NUCLEO_L011K4": {
 | 
			
		||||
        "inherits": ["FAMILY_STM32"],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue