Runtime Infrastructure

Libraries that are used to provide efficient implementation of certain language level and C library functions, as well as CMake INTERFACE libraries abstracting the compilation and link steps in the SDK. More...

Modules

 boot_stage2
 Second stage boot loaders responsible for setting up external flash.
 
 pico_base
 Core types and macros for the Raspberry Pi Pico SDK.
 
 pico_binary_info
 Binary info is intended for embedding machine readable information with the binary in FLASH.
 
 pico_bit_ops
 Optimized bit manipulation functions.
 
 pico_bootrom
 Access to functions and data in the RP2040 bootrom.
 
 pico_bootsel_via_double_reset
 When the 'pico_bootsel_via_double_reset' library is linked, a function is injected before main() which will detect when the system has been reset twice in quick succession, and enter the USB ROM bootloader (BOOTSEL mode) when this happens.
 
 pico_cxx_options
 non-code library controlling C++ related compile options
 
 pico_divider
 Optimized 32 and 64 bit division functions accelerated by the RP2040 hardware divider.
 
 pico_double
 Optimized double-precision floating point functions.
 
 pico_float
 Optimized single-precision floating point functions.
 
 pico_int64_ops
 Optimized replacement implementations of the compiler built-in 64 bit multiplication.
 
 pico_malloc
 Multi-core safety for malloc, calloc and free.
 
 pico_mem_ops
 Provides optimized replacement implementations of the compiler built-in memcpy, memset and related functions:
 
 pico_platform
 Macros and definitions (and functions when included by non assembly code) for the RP2 family device / architecture to provide a common abstraction over low level compiler / platform specifics.
 
 pico_printf
 Compact replacement for printf by Marco Paland (info@.nosp@m.pala.nosp@m.nd.co.nosp@m.m)
 
 pico_runtime
 Aggregate runtime support including pico_bit_ops, pico_divider, pico_double, pico_int64_ops, pico_float, pico_malloc, pico_mem_ops and pico_standard_link.
 
 pico_stdio
 Customized stdio support allowing for input and output from UART, USB, semi-hosting etc.
 
 

Detailed Description

Libraries that are used to provide efficient implementation of certain language level and C library functions, as well as CMake INTERFACE libraries abstracting the compilation and link steps in the SDK.