Don't install CMake, as it comes pre-installed on GitHub runners
This fixes the version incompatibilities that keep appearing with the Windows CI build
If you call rtc_get_datetime immediately after rtc_set_datetime you get
junk back. According to the datasheet "Writing to the RTC will take
2 clk_rtc clock periods to arrive". So add a delay after calling
rtc_set_datetime in aon_timer_set_time_calendar.
Fixes#2148
* on RP2350 _dcp variant now enables -msoft-float, since if you're using this at all it is likely because you don't want to use the VFP unit at all (to save stack space)
* implement all float_ and double_ conversion functions in all pico_float_pico_ variants and pico_double_pico on RP2040 and RP2350 (many were missing in some combinations)
* provide better granularity of what functions are wrapped in each case
also marked custom_xxx_funcs_test.c as not in bazel build yet
The platform.h headers for both RP2040 and RP2350 need 'extern "C"'
declarations when included from C++ code or 'rp2040_chip_version'
and 'rp2350_chip_version' won't be found by the linker.
* Release the lock in mbedtls_sha256_free if it was not released already. Requires making pico_sha256_unlock include-able. Fixes#2103.
* addres lock release API comment
* Fix description of pico_sha256_cleanup
---------
Co-authored-by: nils <nils@nils>
Co-authored-by: Peter Harper <peter.harper@raspberrypi.com>
We use a pio and dma to write to the cyw43 chip using spi. Normally you
write an address and then read the data from that address, so the pio
program does does a write then read.
If you just want to write data in the case of uploading firmware we
use the fdebug_tx_stall flag to work out if the pio has stalled waiting
to write more data.
The theory is that this flag will also get set if the bus is busy. So
we mistakenly think a write to cyw43 has completed.
Wait for the dma write to complete before waiting for the pio to stall.
Fixes#2206
* Remove deprecated uses of FetchContent_Populate
Cannot use MakeAvailable as the files shouldn't be added to the build, so instead uses the full signature for FetchContent_Populate
Fixes#2124
* Fix GIT_SUBMODULES_RECURSE for older CMake versions
* ta_set_timeout can fail to set an alarm
If alarm_pool_irq_handler takes <1us between handling an alarm and
calling ta_set_timeout then no alarms will be set as it will appear as
if an earlier alarm is already armedi before the target time.
Make sure ta_set_timeout always leaves with an alarm set by checking the
armed status.
Fixes#2118
* ta_disable_irq_handler should unarm its timer
* Move rom_data_lookup code into rom_data_lookup_inline
Allows ROM data lookup from FLASH/RAM sensitive code
* Use rom_data_lookup_inline in flash_devinfo_ptr
Fixes bug introduced by #2082 where flash_devinfo_get_cs_size would use rom_data_lookup from flash during a __no_inline_not_in_flash_func
pico-sdk/src/rp2_common/pico_flash/flash.c:155:33: warning: implicit declaration of function 'make_timeout_time_ms'
pico-sdk/src/rp2_common/pico_flash/flash.c:156:77: warning: implicit declaration of function 'time_reached'