aboutsummaryrefslogtreecommitdiffhomepage
path: root/targets/arm.ld
AgeCommit message (Collapse)Author
7 daysAdd RP2350 support (#4459)Patricio Whittingslow
machine/rp2350: add support * add linker scripts for rp2350 * add bootloader * begin melding rp2040 and rp2350 APIs * add UART * add rp2350 boot patching * Fix RP2350 memory layout (#4626) * Remove rp2040-style second stage bootloader. * Add 'minimum viable' IMAGE_DEF embedded block * Create a pico2 specific target * Implement rp2350 init, clock, and uart support * Merge rp2 reset code back together * Separate chip-specific clock definitions * Clear pad isolation bit on rp2350 * Init UART in rp2350 runtime * Correct usb/serial initialization order * Implement jump-to-bootloader * test: add pico2 to smoketests --------- Signed-off-by: deadprogram <[email protected]> Co-authored-by: Matthew Mets <[email protected]> Co-authored-by: Matt Mets <[email protected]> Co-authored-by: deadprogram <[email protected]>
2023-03-12arm: enable functions in RAM for go & cgoKenneth Bell
2023-02-27machine/stm32, nrf: flash API (#3472)Ron Evans
machine/stm32, nrf: implement machine.Flash Implements the machine.Flash interface using the same definition as the tinyfs BlockDevice. This implementation covers the stm32f4, stm32l4, stm32wlx, nrf51, nrf52, and nrf528xx processors.
2020-08-27arm: automatically determine stack sizesAyke van Laethem
This is a big change that will determine the stack size for many goroutines automatically. Functions that aren't recursive and don't call function pointers can in many cases have an automatically determined worst case stack size. This is useful, as the stack size is usually much lower than the previous hardcoded default of 1024 bytes: somewhere around 200-500 bytes is common. A side effect of this change is that the default stack sizes (including the stack size for other architectures such as AVR) can now be changed in the config JSON file, making it tunable per application.
2020-03-16arm: fix linker scriptAyke van Laethem
There were a few instances like `.text` and `.text*`. The first was redundant with the second, but the intention was to write `.text.*`. This doesn't change anything (tested with `make smoketest`) but should avoid propagating this error in the future.
2019-11-12targets: explicitly mark the stack as NOLOADAyke van Laethem
This prevents it from being of type PROGBITS in lld 9, it should always be NOBITS. It should fix the following error in lld 9: ROM segments are non-contiguous
2019-04-04arm: use the lld linkerAyke van Laethem
LLD version 8 has added support for armv6m: https://reviews.llvm.org/D55555 This means we can use LLD instead of arm-none-eabi-ld, eliminating our dependency on GNU binutils. There are small differences in code size, but never more than a few bytes.
2018-11-22all: compile and link using clang, where possibleAyke van Laethem
2018-11-18runtime: implement a simple mark/sweep garbage collectorAyke van Laethem
2018-10-06nrf: add micro:bit boardAyke van Laethem
2018-09-22all: move generic ARM bits into separate filesAyke van Laethem
2018-09-21targets: clean up and unify linker scriptsAyke van Laethem
Especially arm.ld needed some cleaning up. Other than that, I've made sure the two linker scripts look similar where possible.
2018-09-21all: generate interrupt vector from .svd fileAyke van Laethem
2018-09-13targets: move target-specific files to this directoryAyke van Laethem