Commit graph

1226 commits

Author SHA1 Message Date
Graham Sanderson
1ee91e1039
Add license to pico_sdk_import.cmake (#2239) 2025-02-07 12:07:46 -06:00
Peter Harper
7dfbb3c958
Add a delay after rtc_set_datetime (#2156)
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
2025-02-06 09:24:30 -06:00
Graham Sanderson
111fa7de2d
small pioasm improvements (#2224)
- fix disassembly of `wait jmppin`
- fix incorrect error message
- make python output emit `word(x)` for all unsupported instructions
2025-02-05 10:55:24 -06:00
Graham Sanderson
eb5c2c3ff0
Clang related fixes (#2231)
* workaround change in llvm picked up by llvm ETA 19

* fix clang compilation not including floating point instructions in build output
2025-02-05 10:55:10 -06:00
Graham Sanderson
e85c3e5515
rationalize pico_float/pico_double libraries (#2208)
* 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
2025-02-04 16:19:17 -06:00
Graham Sanderson
7d450bf097
add a bunch of verbosity around shared vtables (#2230) 2025-02-04 16:17:52 -06:00
Luke Wren
b51fa1b747
Mark flash_devinfo_ptr() as RAM code to avoid flash call during flash_range_erase() (#2235) 2025-02-04 16:06:56 -06:00
Graham Sanderson
0d909920f1
clarify clock_configure and make it return the correct value achieved for bad clock inputs (#2225) 2025-02-04 11:17:07 -06:00
Graham Sanderson
5288585257
add multicore_lockout_victim_deinit. clear lockedout_flag for core1 during core1 reset (#2223) 2025-02-03 12:21:09 -06:00
Graham Sanderson
ccbd07c758
add extra assertions to pio.h (#2211)
* add extra assertions to pio.h

* add another assert

* minor clarifications
2025-02-03 11:25:03 -06:00
Graham Sanderson
0c2de5dc0c
Eat PATH argument to pico_generate_pio_header which was ignored before supporting multi-target on pico_generate_pio_header (#2221) 2025-02-03 11:23:56 -06:00
Richard Hulme
d7f6582459
Declare platform.h functions with C linkage (#2218)
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.
2025-02-02 11:44:17 -06:00
nilswiersma
6c06f90bfe
Release the lock in mbedtls_sha256_free if it was not released already (#2105)
* 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>
2025-01-31 11:41:07 -06:00
Dryw Wade
3d746b3fa7
Add SparkFun IoT Node LoRaWAN board (#2143) 2025-01-29 09:35:47 -06:00
Matthias Ringwald
25069f5472
btstack: configure incoming pre-buffer for cyw43 driver (#2165) 2025-01-29 09:35:20 -06:00
Wu Haotian
d1a1c9f9fc
Support multiple .pio file in pico_generate_pio_header (#2188) 2025-01-29 09:31:06 -06:00
Peter Harper
700f861eac
Update btstack 1.6.2 (#2202)
* Update btstack

v1.6.2 plus one commit

* Update bazel for btstack

* Build changes for btstack v1.6.2
2025-01-29 09:20:42 -06:00
Peter Harper
524716f1b9
Fix unreliable writes to cyw43. (#2209)
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
2025-01-29 09:17:50 -06:00
Hardy Griech
3ba9534c03
update tinyusb to 0.18 (#2215)
* update tinyusb to 0.18

* update tinyusb also for bazel
2025-01-29 09:15:36 -06:00
Graham Sanderson
9f95a46e31
fix pico_time_test.c compile on native (#2207) 2025-01-29 09:13:51 -06:00
graham sanderson
f20663cb7f Fix pico_divider_nesting_test.c on RP2350 - was broken due to running faster and hence further on RP2350, breaking a check which was wrong for larger inputs 2025-01-26 13:31:51 -06:00
graham sanderson
a62d17cb42 Add PASSED/FAILED output to cmsis_test.c 2025-01-26 13:30:56 -06:00
will-v-pi
c54475da6f
Remove deprecated uses of FetchContent_Populate (#2169)
* 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
2025-01-20 13:45:51 -06:00
Peter Harper
73d007f1a4
Update cyw43 driver. (#2199)
* Update cyw43 driver.

Fixes #2153

* Update cyw43 in bazel
2025-01-20 13:45:06 -06:00
gazzyt
09482ed7a0
Disable irq before removing handler in cyw43_irq_deinit (#2185) 2025-01-20 13:42:46 -06:00
Gregory Neverov
863f5446e1
Follow-up to #1795 (#2177)
Address the review comment to fix conditional compilation syntax:
https://github.com/raspberrypi/pico-sdk/pull/1795#pullrequestreview-2444179188
2025-01-20 11:01:03 -06:00
Arkin Solomon
5022582ec7
Fix brief #2196 (#2197) 2025-01-20 10:56:58 -06:00
Peter Harper
b8dc8c488d
Fix ta_wakes_up_on_or_before (#2190)
* Fix ta_wakes_up_on_or_before

Handle target in the past and running for > 2^32 us.

Fixes #2186

* Add test for ta_wakes_up_on_or_before fix
2025-01-20 10:56:23 -06:00
waveshare
61e2712057
Added some weveshare board support (#2145)
Signed-off-by: eng33 <eng33@waveshare.com>
Co-authored-by: eng33 <eng33@waveshare.com>
2025-01-18 13:48:26 -06:00
Petr Hosek
4b6e647590
Update Clang toolchain used by Bazel (#2151)
* Update Clang toolchain used by Bazel

* <time.h> include

* Sort includes

* Use libc timeval definition

* Disable unwinder linking for now

* Link libm
2025-01-13 15:59:03 -06:00
Lesords
306c461cd3
Fix: solve the problem that micropython could not be used (#2098) 2025-01-11 14:07:59 -06:00
Peter Harper
5202c272cb
Initialise stack in async_context_execute_sync call (#2106)
We need to do this to avoid work_pending being set twice.

Fixes #2101
2025-01-11 14:06:12 -06:00
Osman Karaketir
fc37bede32
Fix Doxygen comment (#2175)
remove incorrect pool parameter
2025-01-11 14:04:10 -06:00
Andrew Scheller
1b80db289d
Restore the "API Documentation" link in sidebar when building with Doxygen >= 1.9.8 (#2135) 2025-01-11 14:02:40 -06:00
Andrew Scheller
7bd430d7d6
Fix RP02040 typos (#2168) 2025-01-11 13:53:45 -06:00
Jean Jonethal
e7a0e61165
convert windows path delimiter to posix (#2149) (#2150)
* convert windows path delimiter to posix (#2149)

* add explicite variable assignment for intermediate resource name conversion result (#2149)
2025-01-07 11:05:13 -06:00
Peter Harper
969f5895aa
ta_set_timeout can fail to set an alarm (#2127)
* 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
2024-12-06 10:39:04 -06:00
Andrew Scheller
ba7aa3f075
Fix mis-matched backticks in doxygen (#2104) 2024-12-04 14:51:48 -06:00
will-v-pi
54784f884b
Add rom_data_lookup_inline function (#2116)
* 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
2024-12-02 11:19:55 -06:00
Peter Harper
fe81780508
Update btstack license. (#2115) 2024-12-01 11:17:13 -06:00
Graham Sanderson
f0a1ff3c03
Fixes for/found by documentation generation (#2099)
* fix errors breaking extra_[cmake_]configs.py
* remove trailing whitespace which is confusing asciidoctor
* fix rp2xxx-specific -> rp2xxx_specific
* add missing xip_cache funcs to the combined docs
* Revert "fix errors breaking extra_[cmake_]configs.py"
* Fix typo in #define name
* Allow optional whitespace at the start of "commented out" config lines

Co-authored-by: Andrew Scheller <andrew.scheller@raspberrypi.com>
2024-11-25 12:30:55 -06:00
graham sanderson
bb916f4704 start 2.1.1-develop 2024-11-25 00:44:24 -06:00
graham sanderson
95ea6acad1 SDK 2.1.0 release 2024-11-24 23:44:29 -06:00
graham sanderson
beb2449622 Update picotool dependency to 2.1.0 (not strictly required, but we prefer people to be on the latest) 2024-11-24 23:43:46 -06:00
graham sanderson
2a1e1af6af Add missing CYW43_DEFAULT_PIN_WL_CS to pimoroni_pico_plus2_w_rp2350.h 2024-11-24 20:33:51 -06:00
Gonzalo Larralde
b7e255d18d
Add board file for Pimoroni Pico Plus 2 W (#2092)
* Add board pimoroni_pico_plus2_w_rp2350.
2024-11-24 20:04:39 -06:00
yh-sb
58e253ce04
Fix implicit declaration warning (#2093)
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'
2024-11-24 19:44:36 -06:00
Graham Sanderson
5f607a9829
Comment out CMake cyw43 vars which aren't really that useful in general i don't think (#2090) 2024-11-24 11:27:10 -06:00
Graham Sanderson
a6ae2e6e4a
Fix compilation warnings (#2089) 2024-11-23 13:41:51 -06:00
yh-sb
3c39eecea3
Fix CMake build. (#2088)
hardware_watchdog depends from pico_bootrom due to header pico/bootrom.h

BUILD.bazel also has this dependency.
2024-11-23 13:02:57 -06:00