Commit graph

1052 commits

Author SHA1 Message Date
Graham Sanderson
2dd58bff9e
fix emulated asynchronous divisions started via hw_divider_divmod_s32_start and hw_divider_divmod_u32_start (#2299) 2025-02-18 12:18:25 -06:00
Graham Sanderson
186e715462
fix up access type of CHAN_ABORT register in RP2040.svd and RP2350.svd (#2270) 2025-02-18 12:17:34 -06:00
Graham Sanderson
a38da922e5
add cast (#2298) 2025-02-18 11:48:48 -06:00
Graham Sanderson
c757f36aac
add PICO_USE_FASTEST_SUPPORTED_CLOCK, and support vreg setting and SYS_CLOCK_MHZ=200 for rp2040 (#2285) 2025-02-18 09:51:51 -06:00
Andrew Scheller
7ce1ae8cdf
Comment typo (#2293) 2025-02-18 09:50:44 -06:00
graham sanderson
38776d8764 add missing define 2025-02-17 21:49:47 -06:00
David Dyck
66855314e0
Update README.md (#2289)
Fix Issue #2288
 Correct spelling of boardname
2025-02-17 16:12:07 -06:00
Graham Sanderson
0ed224cf59
Add irq_has_handler() and use it to fix GPIO IRQ assert (#2277) 2025-02-17 16:07:27 -06:00
Graham Sanderson
59c9211589
Add enable_interrupts() and disable_interrupts() (#2276) 2025-02-17 11:23:29 -06:00
Graham Sanderson
7b96a34513
add missing extern C (#2284) 2025-02-17 10:53:50 -06:00
Graham Sanderson
c691da85e5
update previous fix as 1.0 < clkdiv < 2.0 IS supported on RP2350 (#2255)
* update previous fix as 1.0 < clkdiv < 2.0 IS supported on RP2350
2025-02-17 10:53:15 -06:00
Enrico Zaghini
04525b802e
Fixed linker error for lwIP PPP support (#2272) (#2278)
- Added `sys_jiffies` with weak linking for NO_SYS configuration
2025-02-16 14:26:46 -06:00
Graham Sanderson
f9d65a06ca
remove reference to hardware_busctrl doxygen group that doesn't exit (#2275) 2025-02-16 12:28:50 -06:00
David Dyck
1ca386847c
Correct type in comment in CMakeLists.txt (#2274)
correct outdated comment after 2 lines were deleted, but comment was not

Fixes https://github.com/raspberrypi/pico-sdk/issues/2273
2025-02-16 12:13:30 -06:00
Petr Hosek
6989c893cc
Update Clang toolchain used by Bazel (#2269)
* This includes an FMA issue fix that broke several math functions.
2025-02-15 12:59:16 -06:00
Graham Sanderson
302fd9a811
Fix WAIT GPIO n for n > 32 and when using gpio_base = 16 (#2265)
- fix bug: pioasm was spilling bit 5 of arg2 into arg1
- make pio_add_program flip bit 5 of a WAIT GPIO instruction if gpio_base is 16

Note: pioasm will encode only the bits 4-0 of arg2 (the GPIO number), however it does indicate whether
0-15 means 0-15 or 32-47. This can only be fixed up when loading the program, and indeed once the GPIO
base is known. pio_can_add_program and friends already detected the cases where this was impossible
2025-02-14 09:26:22 -06:00
Graham Sanderson
e7f8e48b98
Add clang and host CI builds (#2259)
* ci: remove cmake from Windows choco_packages.config as there is already a version in the windows image
* multi-gcc: add GCC 14.2. On RP2040 build for Pico W
* multi_gcc: add host
* support cancellation

---------

Co-authored-by: Liam Fraser <liam@raspberrypi.com>
2025-02-13 11:13:03 -06:00
Graham Sanderson
0ca463a29f
Fix compilation of pico_double_test on llvm 15 - workaround compiler bug (#2258) 2025-02-12 12:46:32 -06:00
Graham Sanderson
7c023fa320
Increase default PICO_XOSC_STARTUP_DELAY_MULTIPLIER to 6 (ms) (#2245) 2025-02-12 11:40:56 -06:00
Andrew Scheller
de0416a079
Minor irq.h comment typos (#2257) 2025-02-12 10:56:57 -06:00
graham sanderson
564aa64904 minor irq.h comment tweaks 2025-02-12 09:34:48 -06:00
HugoTro
24c4480b82
Fix semicolon in makefsdata.py (#2238)
Simple semicolon that breaks the file otherwise
2025-02-11 16:39:14 -06:00
Dan Halbert
f407f5b8e8
boards/adafruit_feather_rp2350.h: add PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 (#2248) 2025-02-10 10:18:33 -06:00
Graham Sanderson
05dbc11b4a
update stdio_usb CDC constants to the defaults used by TinyUSB, and allow the user to override them (#2246) 2025-02-07 16:52:18 -06:00
will-v-pi
396aa06736
Fix Windows CI (#2241)
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
2025-02-07 12:08:56 -06:00
Steven Conaway
876c09cbfa
pico_flash: Support FreeRTOS Static Allocation (#2229) 2025-02-07 12:08:12 -06:00
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