ld: improve documentation
This commit is contained in:
parent
8baacc1c06
commit
077335ff03
|
@ -1,5 +1,8 @@
|
||||||
/* linker script for application running on STM32F103x8 micro-controller
|
/* linker script for application running on STM32F103x8 micro-controller
|
||||||
|
* the STM32F103x8 has 64 KB of flash starting at 0x0800 0000, and 20 KB of RAM starting at 0x2000 0000
|
||||||
* the STM32F103xB has 128 KB of flash starting at 0x0800 0000, and 20 KB of RAM starting at 0x2000 0000
|
* the STM32F103xB has 128 KB of flash starting at 0x0800 0000, and 20 KB of RAM starting at 0x2000 0000
|
||||||
|
* STM32F103x8 most often have if fact 128 KB, instead of the specified and advertised 64 KB, like the STM32F103xB
|
||||||
|
* you can define the desired flash size here.
|
||||||
* the USB DFU bootloader will take the first 8 KB of flash, followed by the application
|
* the USB DFU bootloader will take the first 8 KB of flash, followed by the application
|
||||||
* the first 4 bytes of the RAM is reserved for the DFU magic word (DFU! to start DFU bootloader)
|
* the first 4 bytes of the RAM is reserved for the DFU magic word (DFU! to start DFU bootloader)
|
||||||
*/
|
*/
|
||||||
|
@ -11,13 +14,12 @@ MEMORY
|
||||||
ram (rwx) : ORIGIN = 0x20000000 + 4, LENGTH = 20K - 4
|
ram (rwx) : ORIGIN = 0x20000000 + 4, LENGTH = 20K - 4
|
||||||
}
|
}
|
||||||
PROVIDE(__application_beginning = ORIGIN(rom));
|
PROVIDE(__application_beginning = ORIGIN(rom));
|
||||||
/* only provide application_end and/or flash_end if you want to force a flash size
|
/* if you want the firmware to use the flash size advertised by the micro-controller itself, use the following:
|
||||||
i.e. STM32F103x8 most often have if fact 128 KB instead of the specified and advertised 64 KB
|
|
||||||
PROVIDE(__application_end = ORIGIN(rom) + LENGTH(rom));
|
|
||||||
PROVIDE(__flash_end = ORIGIN(rom) + LENGTH(rom));
|
|
||||||
else
|
|
||||||
PROVIDE(__application_end = 0);
|
PROVIDE(__application_end = 0);
|
||||||
PROVIDE(__flash_end = 0);
|
PROVIDE(__flash_end = 0);
|
||||||
|
if you want to enforce a flash size, because there is more flash than advertized by the micro-controller, use to following:
|
||||||
|
PROVIDE(__application_end = ORIGIN(rom) + LENGTH(rom));
|
||||||
|
PROVIDE(__flash_end = ORIGIN(rom) + LENGTH(rom));
|
||||||
*/
|
*/
|
||||||
PROVIDE(__application_end = 0);
|
PROVIDE(__application_end = 0);
|
||||||
PROVIDE(__flash_end = 0);
|
PROVIDE(__flash_end = 0);
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
/* linker script for application running on STM32F103x8 micro-controller
|
/* linker script for application running on STM32F103x8 micro-controller
|
||||||
|
* the STM32F103x8 has 64 KB of flash starting at 0x0800 0000, and 20 KB of RAM starting at 0x2000 0000
|
||||||
* the STM32F103xB has 128 KB of flash starting at 0x0800 0000, and 20 KB of RAM starting at 0x2000 0000
|
* the STM32F103xB has 128 KB of flash starting at 0x0800 0000, and 20 KB of RAM starting at 0x2000 0000
|
||||||
|
* STM32F103x8 most often have if fact 128 KB, instead of the specified and advertised 64 KB, like the STM32F103xB
|
||||||
|
* you can define the desired flash size here.
|
||||||
* the USB DFU bootloader will take the first 8 KB of flash, followed by the application
|
* the USB DFU bootloader will take the first 8 KB of flash, followed by the application
|
||||||
* the first 4 bytes of the RAM is reserved for the DFU magic word (DFU! to start DFU bootloader)
|
* the first 4 bytes of the RAM is reserved for the DFU magic word (DFU! to start DFU bootloader)
|
||||||
*/
|
*/
|
||||||
|
@ -11,13 +14,12 @@ MEMORY
|
||||||
ram (rwx) : ORIGIN = 0x20000000 + 4, LENGTH = 20K - 4
|
ram (rwx) : ORIGIN = 0x20000000 + 4, LENGTH = 20K - 4
|
||||||
}
|
}
|
||||||
PROVIDE(__application_beginning = ORIGIN(rom) + LENGTH(rom));
|
PROVIDE(__application_beginning = ORIGIN(rom) + LENGTH(rom));
|
||||||
/* only provide application_end and/or flash_end if you want to force a flash size
|
/* if you want the firmware to use the flash size advertised by the micro-controller itself, use the following:
|
||||||
i.e. STM32F103x8 most often have if fact 128 KB instead of the specified and advertised 64 KB
|
|
||||||
PROVIDE(__application_end = __application_beginning + 128K - 8K);
|
|
||||||
PROVIDE(__flash_end = __application_beginning + 128K - 8K);
|
|
||||||
else
|
|
||||||
PROVIDE(__application_end = 0);
|
PROVIDE(__application_end = 0);
|
||||||
PROVIDE(__flash_end = 0);
|
PROVIDE(__flash_end = 0);
|
||||||
|
if you want to enforce a flash size, because there is more flash than advertized by the micro-controller, use to following:
|
||||||
|
PROVIDE(__application_end = ORIGIN(rom) + LENGTH(rom));
|
||||||
|
PROVIDE(__flash_end = ORIGIN(rom) + LENGTH(rom));
|
||||||
*/
|
*/
|
||||||
PROVIDE(__application_end = 0);
|
PROVIDE(__application_end = 0);
|
||||||
PROVIDE(__flash_end = 0);
|
PROVIDE(__flash_end = 0);
|
||||||
|
|
Loading…
Reference in New Issue