user app can invoke kernel syscall!!!!
This commit is contained in:
@@ -1,22 +1,10 @@
|
||||
MEMORY {
|
||||
/*
|
||||
* The RP2350 has either external or internal flash.
|
||||
*
|
||||
* 2 MiB is a safe default here, although a Pico 2 has 4 MiB.
|
||||
*/
|
||||
FLASH : ORIGIN = 0x10000000, LENGTH = 4096K
|
||||
/*
|
||||
* RAM consists of 8 banks, SRAM0-SRAM7, with a striped mapping.
|
||||
* This is usually good for performance, as it distributes load on
|
||||
* those banks evenly.
|
||||
*/
|
||||
RAM : ORIGIN = 0x20000000, LENGTH = 512K
|
||||
/*
|
||||
* RAM banks 8 and 9 use a direct mapping. They can be used to have
|
||||
* memory areas dedicated for some specific job, improving predictability
|
||||
* of access times.
|
||||
* Example: Separate stacks for core0 and core1.
|
||||
*/
|
||||
|
||||
/* Reserve a block of RAM for the user app */
|
||||
USERAPP : ORIGIN = 0x20010000, LENGTH = 192K
|
||||
|
||||
SRAM4 : ORIGIN = 0x20080000, LENGTH = 4K
|
||||
SRAM5 : ORIGIN = 0x20081000, LENGTH = 4K
|
||||
}
|
||||
@@ -73,3 +61,11 @@ SECTIONS {
|
||||
|
||||
PROVIDE(start_to_end = __end_block_addr - __start_block_addr);
|
||||
PROVIDE(end_to_start = __start_block_addr - __end_block_addr);
|
||||
|
||||
SECTIONS {
|
||||
.userapp (NOLOAD) :
|
||||
{
|
||||
__userapp_start__ = ORIGIN(USERAPP);
|
||||
__userapp_end__ = ORIGIN(USERAPP) + LENGTH(USERAPP);
|
||||
} > USERAPP
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user