/* * SPDX-License-Identifier: MIT OR Apache-2.0 * * Copyright (c) 2021-2024 The rp-rs Developers * Copyright (c) 2021 rp-rs organization * Copyright (c) 2025 Raspberry Pi Ltd. */ MEMORY { FLASH : ORIGIN = 0x10000000, LENGTH = 2048K RAM : ORIGIN = 0x20000000, LENGTH = 512K SRAM4 : ORIGIN = 0x20080000, LENGTH = 4K SRAM5 : ORIGIN = 0x20081000, LENGTH = 4K } PROVIDE(_stext = ORIGIN(FLASH)); PROVIDE(_stack_start = ORIGIN(RAM) + LENGTH(RAM)); PROVIDE(_max_hart_id = 0); PROVIDE(_hart_stack_size = 2K); PROVIDE(_heap_size = 0); PROVIDE(InstructionMisaligned = ExceptionHandler); PROVIDE(InstructionFault = ExceptionHandler); PROVIDE(IllegalInstruction = ExceptionHandler); PROVIDE(Breakpoint = ExceptionHandler); PROVIDE(LoadMisaligned = ExceptionHandler); PROVIDE(LoadFault = ExceptionHandler); PROVIDE(StoreMisaligned = ExceptionHandler); PROVIDE(StoreFault = ExceptionHandler); PROVIDE(UserEnvCall = ExceptionHandler); PROVIDE(SupervisorEnvCall = ExceptionHandler); PROVIDE(MachineEnvCall = ExceptionHandler); PROVIDE(InstructionPageFault = ExceptionHandler); PROVIDE(LoadPageFault = ExceptionHandler); PROVIDE(StorePageFault = ExceptionHandler); PROVIDE(SupervisorSoft = DefaultHandler); PROVIDE(MachineSoft = DefaultHandler); PROVIDE(SupervisorTimer = DefaultHandler); PROVIDE(MachineTimer = DefaultHandler); PROVIDE(SupervisorExternal = DefaultHandler); PROVIDE(MachineExternal = DefaultHandler); PROVIDE(DefaultHandler = DefaultInterruptHandler); PROVIDE(ExceptionHandler = DefaultExceptionHandler); PROVIDE(__pre_init = default_pre_init); PROVIDE(_setup_interrupts = default_setup_interrupts); PROVIDE(_mp_hook = default_mp_hook); PROVIDE(_start_trap = default_start_trap); SECTIONS { .text.dummy (NOLOAD) : { . = ABSOLUTE(_stext); } > FLASH }