altos: Move from newlib-nano to picolibc
authorKeith Packard <keithp@keithp.com>
Mon, 16 Sep 2019 00:05:17 +0000 (17:05 -0700)
committerKeith Packard <keithp@keithp.com>
Fri, 22 May 2020 05:04:46 +0000 (22:04 -0700)
commit2108da105ed9c915fc09d1251dc655bf11203d79
tree4de0c28c488786fe4be4b2c0b3ab31704d630d61
parent74d5dfd1801da8efbb7693a607fd25e35ad1158d
altos: Move from newlib-nano to picolibc

Use picolibc.ld, which involved some .ld file hacking, including:

 1) Defining ao_boot RAM address in the .ld file and declaring it 'extern'
 2) Changing how m0 interrupt vector got moved to ram
 3) Using -Taltos.ld instead of -Wl,-Taltos.ld so picolibc.specs wouldn't add picolibc.ld
 4) Placing romconfig vars in '.init.1' and '.init.2' sections instead of '.romconfig'
 5) Place code needing to run out of RAM in section .srodata instead of .ramtext

Signed-off-by: Keith Packard <keithp@keithp.com>
36 files changed:
src/Makefile.defs
src/kernel/ao_product.c
src/lpc/Makefile-flash.defs
src/lpc/Makefile-lpc.defs
src/lpc/Makefile.defs
src/lpc/altos-loader.ld
src/lpc/altos.ld
src/lpc/ao_arch.h
src/lpc/ao_boot_chain.c
src/lpc/ao_interrupt.c
src/micropeak-v2.0/Makefile
src/micropeak-v2.0/micropeak.ld
src/pnpservo-v1/lambda.ld
src/stm/Makefile-flash.defs
src/stm/Makefile-stm.defs
src/stm/Makefile.defs
src/stm/altos-loader.ld
src/stm/altos.ld
src/stm/ao_arch.h
src/stm/ao_boot_chain.c
src/stm/ao_flash_stm.c
src/stm/ao_interrupt.c
src/stm32f4/altos-loader.ld
src/stmf0/Makefile-flash.defs
src/stmf0/Makefile-stmf0.defs
src/stmf0/Makefile.defs
src/stmf0/altos-loader.ld
src/stmf0/altos.ld
src/stmf0/ao_arch.h
src/stmf0/ao_boot_chain.c
src/stmf0/ao_flash_stm.c
src/stmf0/ao_interrupt.c
src/stmf0/ao_storage_stm.c
src/telegps-v1.0/Makefile
src/telegps-v2.0/Makefile
src/telemetrum-v2.0/Makefile