33818dd0bd
Increase PLL min VCO from 400MHz to 750MHz for improved stability across operating conditions ( #869 )
...
Co-authored-by: graham sanderson <graham.sanderson@raspberrypi.com >
2022-06-20 10:28:03 -05:00
9644399993
Suppress new GCC 12 warning ( #842 )
2022-06-20 09:52:25 -05:00
b3c56e7169
Add stderr support and remove 1us timeout for timeouts of 0us ( #858 )
2022-06-20 09:52:06 -05:00
7858601a58
stdio_usb improvements ( #871 )
...
Use shared IRQ if available to avoid 1ms timer. Allow use of stdio_usb with user's tinyusb setup if it has CDC
2022-06-20 09:51:51 -05:00
705b5cedcd
Wrap realloc() call with malloc_mutex in multicore ( #864 )
...
Protect against heap corruption by mutex-protecting the realloc() call
(like malloc/free are already).
Fixes #863
Fixes https://github.com/maxgerhardt/platform-raspberrypi/issues/7
Fixes https://github.com/earlephilhower/arduino-pico/issues/614
2022-06-17 09:50:53 -05:00
bdd9746635
Don't copy .data for NO_FLASH binaries, as it's loaded in-place ( #859 )
2022-06-17 09:50:12 -05:00
ef47dfeeaf
Add new GPIO APIs for adding shared GPIO handlers, and improve docs ( #850 )
...
Co-authored-by: Adam Nielsen <malvineous@shikadi.net >
2022-06-08 13:03:11 -05:00
d3dcbb8292
Add new user_irq claim APIs to make it easier for independent code using them to interoperate ( #854 )
2022-06-07 14:27:38 -05:00
f3c446ae14
move get_core_num() into platform.h ( #852 )
2022-06-06 08:20:00 -05:00
7880405292
Doxygen typo ( #835 )
2022-05-17 19:26:00 -05:00
530204ec0c
Small tweak to busy_wait_at_least_cycles doxygen ( #834 )
2022-05-17 19:24:52 -05:00
b2ad632c24
Minor additions to PIO documentation ( #831 )
2022-05-17 13:04:38 -05:00
658a21b946
Update rtc_set_datetime docs to point out that the written value may not be immediately visible ( #832 )
2022-05-17 12:59:00 -05:00
e44d2c0010
Add busy_wait_at_least_cycles method ( #830 )
2022-05-16 16:45:39 -05:00
159d552150
Fix bug in irq_remove_shared_handler and add test #823 ( #825 )
...
* Fix bug in irq_remove_shared_handler and add test #823
* Add comments to irq_handler_chain.S
Co-authored-by: Luke Wren <wren6991@gmail.com >
2022-05-16 13:44:15 -05:00
3a3d5fe6c4
Small IRQ doxygen tweaks ( #824 )
2022-05-15 15:02:13 -05:00
5e22c09660
convert unlikely panic to hard_assert to not waste space for string ( #826 )
2022-05-15 15:01:44 -05:00
4e62c26a2c
Add documentation to dma_channel_abort regarding errata RP2040-E13 ( #816 )
...
Co-authored-by: Luke Wren <wren6991@gmail.com >
2022-05-11 19:24:42 -05:00
5a927792ef
Suppress false GCC 11 warning on TinyUSB ( #819 )
2022-05-11 14:49:57 -05:00
60a6fea534
Fix list management in stdio_set_driver_enabled so drivers can be freely added and removed ( #822 )
2022-05-11 10:44:41 -05:00
f260477802
Adapt assembler syntax to eliminate Clang errors. (LLVM 14.0.0) ( #798 )
...
Co-authored-by: jeremyd <>
2022-05-09 15:11:59 -05:00
e1c5fd34e4
PLL setup check bug ( #796 ) ( #806 )
2022-05-09 14:52:38 -05:00
259da19660
Include structs/iobank0.h from hardware/gpio.h ( #733 ) ( #807 )
2022-05-04 16:34:11 -05:00
510ca47c92
Additional PWM validation and small tidy-up ( #801 )
...
See #768 for discussion / inspiration
2022-05-04 15:29:26 -05:00
3c450011da
Additional param-validation for PIO ( #805 )
...
The RP2040 datasheet says "If INT is 0, FRAC must also be 0."
2022-05-04 15:25:43 -05:00
01290c4cb3
Added int_frac function for configuring PWM ( #768 )
2022-05-03 11:54:46 -05:00
8d43364cfb
Small typos ( #776 )
2022-05-03 11:47:48 -05:00
76c1830aeb
Add gpio_deinit ( #793 )
2022-05-03 11:46:27 -05:00
c66a2c1c3b
Remove implicit grouping for PIO defines ( #779 )
2022-05-03 11:46:10 -05:00
fc86203f49
comment typo ( #794 )
2022-05-03 11:41:10 -05:00
6619a2d329
Typo ( #799 )
...
Remove superfluous apostrophes in Doxygen comments
2022-05-03 11:34:46 -05:00
5a427fbf1f
irq_add_shared_handler assertion fix #724 ( #747 )
2022-04-29 14:34:20 -05:00
541f93541c
improve comment ( #658 )
2022-04-04 16:08:12 -05:00
17d53af105
Allow 252-byte binaries to be checksummed ( #764 )
...
Fixes #740
2022-04-04 15:46:34 -05:00
1896b1491b
fix __ctzdi2 for values with non-zero low 32 bits ( fixes #765 ) ( #766 )
2022-04-04 15:45:01 -05:00
bc3484e793
Mark __aeabi_lmul section as allocatable and executable ( #722 )
...
When using a linker script which does not provide a .time_critical.
section that is marked "ax" and wrongly define
PICO_INT64_OPS_IN_RAM=1 this would generate a malformed
executable with strange runtime bugs in the worst case.
2022-03-22 17:51:24 -05:00
ae7ef546a6
Fix typo in Doxygen comment ( #731 )
2022-02-14 12:03:47 -06:00
25a3b36793
Fix assert in adc_set_round_robin() ( #698 )
...
The mask passed in shouldn't already be shifted by ADC_CS_RROBIN_LSB
(16) otherwise the shift in the call to hw_write_masked() would shift
all of the bits off the end of the mask, hence we should be asserting
not against ADC_CS_RROBIN_BITS (0x1f0000) but against the number of ADC
channels available.
2022-01-19 09:34:18 -06:00
5bcf4ed83a
Clarify header-comments about pico_enable_stdio_ CMake-functions ( #705 )
2022-01-19 09:30:21 -06:00
91462e430a
Add __attribute__((noreturn))
to _exit
( #707 )
...
Fixes the following compiler warning
```
.../vendor/pico-sdk/src/rp2_common/pico_runtime/runtime.c: In function 'panic':
.../pico-sdk/src/rp2_common/pico_runtime/runtime.c:284:1: warning: 'noreturn' function does return
284 | }
| ^
```
2022-01-19 09:25:40 -06:00
0562089fab
fixup __forceinline for cpp code and add kitchen_sink cpp test ( #670 )
...
* fix __force_inline for different GCC versions in cpp mode (the affected versions are different from c mode), and build kitchsink.c as a cpp file too for testing
* silly bug in host platform.h
2021-12-08 12:05:49 -06:00
a8fa19a74d
pio_set_irqn_source_mask_enabled() sets wrong irq ( #655 )
...
if irq_index == 0, irq_index evaluates to false; which uses pio_set_irq1_source_mask_enabled() ; and vice versa
2021-11-12 07:51:29 -06:00
da476610e2
allow override of XOSC_MHZ ( #644 )
...
* And increased assertion limit to 50 as 15 was the limit for the oscillator but not for XIN
2021-11-01 08:11:21 -05:00
d0c7642369
Update ADC ENOB comment to match (measured) value in RP2040 datasheet ( #643 )
2021-10-30 08:29:58 -05:00
da7c39bc23
Fix some of the (simpler) errors reported by the doxygen command ( #617 )
2021-10-26 16:09:06 -05:00
b04a09110f
revert additional assertion check which breaks used of hw_alias macro outside of functions ( #635 )
...
* revert additional assertion check which breaks used of hw_alias macros outside of functions
2021-10-26 16:07:21 -05:00
5641cd0a4a
__aeabi_memset* were switching the wrong arguments ( #634 )
2021-10-26 13:47:46 -05:00
e5110dfce1
add docs for pio_instructions.h ( #624 )
...
Co-authored-by: Andrew Scheller <andrew.scheller@raspberrypi.com >
2021-10-26 13:45:32 -05:00
e850214938
Platform updates ( #611 )
...
* Platform updates
- Add PICO_RP2040=1 to rp2040 builds
- Add new PICO_RP2040_B0/1/2_SUPPORTED macros and retailer chip specific code to use
- Add doxygen to platform.h
- Make pico.h includable from assembly (because header order is important and tricky) - split out platform_asm.h
- Switch to using PICO_RP2040_B0_SUPPORTED in board headers
2021-10-25 12:26:06 -05:00
723dfd04ff
add more/better documentation to pico/multicore ( #620 )
2021-10-25 12:23:41 -05:00