Commit Graph

493 Commits

Author SHA1 Message Date
Will Eccles
38b26b5d65
pico_sdk_import: don't recurse git submodules (#772)
When cloning the pico-sdk repo manually, one normally would do `git
submodule update --init`, which is non-recursive. However, when cloning
automatically, CMake will recursively update submodules by default.
Updating all of tiny-usb's submodules takes an extremely long time.
Luckily, CMake 3.17 added an option we can specify for FetchContent to
tell it not to recursively update submodules. On older CMake versions,
the flag is not used. For those with a new enough version of CMake, this
will significantly speed up SDK cloning.

Fixes #771.
2022-04-04 15:29:33 -05:00
Brian Murphy
d54104a1e5
fix when PICO_NO_BINARY_INFO is set (#693)
Co-authored-by: Brian Murphy <brm@robotize.com>
2022-03-22 17:53:32 -05:00
Stefan Kerkmann
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
Andrew Scheller
b7e82b638a
Fix function-names reported by hardware_pwm_test (#736) 2022-03-22 17:49:17 -05:00
Andrew Scheller
bf9848eaf9
Updated DMA CTRL_TRIG.CHAIN_TO reset values (#743) 2022-03-04 16:47:41 -06:00
Akiyuki Okayasu
ae7ef546a6
Fix typo in Doxygen comment (#731) 2022-02-14 12:03:47 -06:00
Stephen Robinson
b3cf3e8f6f
Correct comment in time.h (#715)
There was `microseconds` written where there should have been `milliseconds`.

Co-authored-by: Stephen <stephen@drsudo.com>
2022-01-22 19:57:47 -06:00
bobsayshilol
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
Daniel KJ
96afce8ece
Add board definition for Adafruit Macropad (#684)
* added board header for adafruit macropad rp2040

Co-authored-by: Daniel Kenyon-Jones <mail@dlkj.co.uk>
2022-01-19 09:32:17 -06:00
Andrew Scheller
5bcf4ed83a
Clarify header-comments about pico_enable_stdio_ CMake-functions (#705) 2022-01-19 09:30:21 -06:00
arturo182
e379f6764b
Add board definition for RP2040 Stamp and Carrier (#696) 2022-01-19 09:26:54 -06:00
Jonathan Reichelt Gjertsen
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
Michael Olson
d831eff5a2
fix pioasm python output (#694) (#695)
Issue:
    irq wait 0
    irq 0
are translated as:
    irq(wait, 0)                          # 0
    irq(nowait, 0)                        # 1
wait/nowait are incorrect, should be block or ommited (alt: noblock).

After change:
    irq(block, 0)                         # 0
    irq(0)                                # 1
2022-01-08 13:55:23 -06:00
Thomas Fike
215f77b836
Moves the #if guards to before the comments (#690)
Fixes #683
2022-01-08 13:53:21 -06:00
David Shadoff
0f67a6c00c
Add board definition for Adafruit KB2040 (#676) 2021-12-13 09:45:29 -06:00
Graham Sanderson
add120e4f6
add missing change to dma.h from __force_inline fix (#680) 2021-12-08 12:32:09 -06:00
ZodiusInfuser
386e2a7bc6
Added Tiny2040 2MB (#672) 2021-12-08 12:06:53 -06:00
Graham Sanderson
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
Andrew Scheller
269332dc21
rename pybstick26_rp2040.h to garatronic_pybstick26_rp2040.h (#675) 2021-12-06 11:37:24 -06:00
Maarten Vanraes
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
Graham Sanderson
699838d153
Start SDK 1.3.1 development (#648) 2021-11-01 21:46:36 -05:00
Graham Sanderson
60c5a929cc
Remove <b> from mutex doxygen due to PDF generation bug 2021-11-01 14:16:20 -05:00
Graham Sanderson
d0af70bd77
fix __packed attribute for MSVC (#646) 2021-11-01 13:29:02 -05:00
Graham Sanderson
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
Graham Sanderson
d7358e4ed8
update generated struct headers to fix collision (#641)
* update generated struct headers to fix collision and include all headers in kitchen_sink test
2021-11-01 08:06:34 -05:00
Garatronic
ccccff8450
Add pybstick26_rp2040 support (#636) 2021-10-31 09:31:51 -05:00
Andrew Scheller
d0c7642369
Update ADC ENOB comment to match (measured) value in RP2040 datasheet (#643) 2021-10-30 08:29:58 -05:00
Andrew Scheller
cc1e2e8758
Small typo in kitchen_sink (#642) 2021-10-30 08:29:26 -05:00
Graham Sanderson
e4d6ff9ecd
Small PICO_PLATFORM=host fixes (#639) 2021-10-28 15:16:36 -05:00
Andrew Scheller
97eec951b1
Another .org -> .com fix (#638) 2021-10-27 22:26:27 -05:00
Graham Sanderson
fba9c8ce4d
change SDK version to 1.3.0 (#628) 2021-10-26 16:09:32 -05:00
Andrew Scheller
da7c39bc23
Fix some of the (simpler) errors reported by the doxygen command (#617) 2021-10-26 16:09:06 -05:00
Graham Sanderson
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
Graham Sanderson
5641cd0a4a
__aeabi_memset* were switching the wrong arguments (#634) 2021-10-26 13:47:46 -05:00
Engineer_Will
68555c9751
Added some waveshare boards definition (#619) 2021-10-26 13:47:01 -05:00
Graham Sanderson
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
Graham Sanderson
3604a6fa13
add CONTRIBUTING.md (#626)
Co-authored-by: Alasdair Allan <alasdair@raspberrypi.com>
2021-10-26 13:44:03 -05:00
Graham Sanderson
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
Graham Sanderson
723dfd04ff
add more/better documentation to pico/multicore (#620) 2021-10-25 12:23:41 -05:00
Graham Sanderson
05418b4e71
fix minor bug in add_repeating_timer_us, and add some comments (#621) 2021-10-25 09:32:02 -05:00
Graham Sanderson
83cd1da1ef
fix build if TinyUSB not present (#631) 2021-10-25 08:56:25 -05:00
Graham Sanderson
0ccd0db163
Update to TinyUSB 0.12.0 (#622)
Update kitchent_sink compilation test to include TinyUSB to catch warnings
Fix warnings in stdio_usb and stdio_semihosting caught by above
2021-10-25 08:33:42 -05:00
Andrew Scheller
22b0d5d2ed
Update links in Doxygen pages from .org to .com (#625) 2021-10-23 08:45:43 -05:00
Graham Sanderson
3c72e753b6
Split recursive mutex into their own functions (was Reduce performance hit of recursive mutex) (#495)
mutex_t and mutex_ are reverted to non recursive versions (pre SDK1.2.0) and new recursive_mutex_t and recursive_mutex_ functions have been added

PICO_MUTEX_ENABLE_SDK120_COMPATIBILITY flag has been added to allow old SDK1.2.0 compatibility (i.e. mutex_t can be used recursively or not) but this is slower (and is will be removed in a future version)
2021-10-20 18:27:59 -05:00
Graham Sanderson
9320d192c3
add watchdog_enable_caused_reboot (minor compatibility issue) (#594)
add watchdog_enable_caused_reboot. Note there is a small backwards incompatibility in so far as watchdog_enable sets scratch[4] to a magic value not 0 now, however this behavior was not documented before.
2021-10-20 17:30:24 -05:00
Graham Sanderson
68571ad33e
Hardware struct regeneration (#613)
* Use reg[0] description for hardware structs register arrays

* Update struct headers to match SVD and latest svd2struct
2021-10-14 15:35:28 -05:00
Andrew Scheller
a0450d0133
Updated reg_headers and SVD (#612) 2021-10-14 12:21:14 -05:00
Robert Pafford
3c94bc8137
Change _watchdog_enable to trigger immediate reboot when no delay set (#561) 2021-10-14 11:30:16 -05:00
Graham Sanderson
f808b5f2dc
Add DREQ methods for PWM/SPI/UART/I2C (#603) 2021-10-12 16:04:16 -05:00
Graham Sanderson
2f2e62968d
Use auto-generated hardware/structs/ headers (based off SVD) SVD errors fixed. 2021-10-12 09:15:19 -05:00