Commit Graph

423 Commits

Author SHA1 Message Date
Graham Sanderson
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
Graham Sanderson
6389927cf9
Add some optional header includes, to make per-target changes to config easier (#851) 2022-06-08 12:59:45 -05:00
Graham Sanderson
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
Graham Sanderson
f3c446ae14
move get_core_num() into platform.h (#852) 2022-06-06 08:20:00 -05:00
Graham Sanderson
1e6c122fc9
gate inclusion of pico.h in binary info, so as not to break picotool builds (#836) 2022-05-18 10:39:17 -05:00
Andrew Scheller
7880405292
Doxygen typo (#835) 2022-05-17 19:26:00 -05:00
Andrew Scheller
530204ec0c
Small tweak to busy_wait_at_least_cycles doxygen (#834) 2022-05-17 19:24:52 -05:00
Graham Sanderson
b2ad632c24
Minor additions to PIO documentation (#831) 2022-05-17 13:04:38 -05:00
Graham Sanderson
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
Graham Sanderson
e44d2c0010
Add busy_wait_at_least_cycles method (#830) 2022-05-16 16:45:39 -05:00
Graham Sanderson
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
Andrew Scheller
3a3d5fe6c4
Small IRQ doxygen tweaks (#824) 2022-05-15 15:02:13 -05:00
Graham Sanderson
5e22c09660
convert unlikely panic to hard_assert to not waste space for string (#826) 2022-05-15 15:01:44 -05:00
Graham Sanderson
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
Graham Sanderson
5a927792ef
Suppress false GCC 11 warning on TinyUSB (#819) 2022-05-11 14:49:57 -05:00
Graham Sanderson
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
eskimo-software
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
Graham Sanderson
e1c5fd34e4
PLL setup check bug (#796) (#806) 2022-05-09 14:52:38 -05:00
Eunkyoung Kim
0c501c246a
Add wiznet_w5100s_evb_pico support (#666) 2022-05-04 16:35:06 -05:00
Graham Sanderson
259da19660
Include structs/iobank0.h from hardware/gpio.h (#733) (#807) 2022-05-04 16:34:11 -05:00
ZodiusInfuser
5325008956
Added board definition for upcoming Pimoroni motor driver (#795) 2022-05-04 16:21:30 -05:00
Andrew Scheller
510ca47c92
Additional PWM validation and small tidy-up (#801)
See #768 for discussion / inspiration
2022-05-04 15:29:26 -05:00
ZodiusInfuser
d5121dc880
Removed unnecessary ifdefs from Pimoroni boards (#802)
* Removed unnecessary ifdefs from Pim boards
* Re-ordered some pins
2022-05-04 15:26:55 -05:00
Andrew Scheller
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
Ryan Hartlage
6149b9e4ec
Add board definition for Seeed Xiao RP2040 (#691)
* Add board definition for Seeed Xiao RP2040

https://www.seeedstudio.com/XIAO-RP2040-v1-0-p-5026.html
https://wiki.seeedstudio.com/XIAO-RP2040/
2022-05-03 12:40:40 -05:00
bruelltuete
8554fc4ea1
Add is_at_the_end_of_time() method (#784) 2022-05-03 11:55:01 -05:00
ZodiusInfuser
01290c4cb3
Added int_frac function for configuring PWM (#768) 2022-05-03 11:54:46 -05:00
Andrew Scheller
8d43364cfb
Small typos (#776) 2022-05-03 11:47:48 -05:00
bruelltuete
76c1830aeb
Add gpio_deinit (#793) 2022-05-03 11:46:27 -05:00
Andrew Scheller
c66a2c1c3b
Remove implicit grouping for PIO defines (#779) 2022-05-03 11:46:10 -05:00
Akiyuki Okayasu
e4a2aa7262
Fix typo in binary_info description (#788) 2022-05-03 11:43:42 -05:00
Andrew Scheller
fc86203f49
comment typo (#794) 2022-05-03 11:41:10 -05:00
Andrew Scheller
6619a2d329
Typo (#799)
Remove superfluous apostrophes in Doxygen comments
2022-05-03 11:34:46 -05:00
Graham Sanderson
5a427fbf1f
irq_add_shared_handler assertion fix #724 (#747) 2022-04-29 14:34:20 -05:00
ZodiusInfuser
bb5a2a3906
Added definition for Badger RP2040 board (#735) 2022-04-04 16:10:32 -05:00
Graham Sanderson
8291f1013a
add #ifdef guards to vgaboard.h to allow user overrides (#746) 2022-04-04 16:08:53 -05:00
Kai
e90f831756
add board definition of eetree gamekit rp2040 (#732) 2022-04-04 16:08:30 -05:00
Graham Sanderson
541f93541c
improve comment (#658) 2022-04-04 16:08:12 -05:00
Andrew Scheller
17d53af105
Allow 252-byte binaries to be checksummed (#764)
Fixes #740
2022-04-04 15:46:34 -05:00
Doug Rabson
1896b1491b
fix __ctzdi2 for values with non-zero low 32 bits (fixes #765) (#766) 2022-04-04 15:45:01 -05:00
ZodiusInfuser
3d45276423
Added board definition for upcoming Pimoroni servo driver (#769) 2022-04-04 15:31:52 -05:00
Andrew Scheller
d35083b3f7
Fix typo in SIO register description (#770) 2022-04-04 15:30:13 -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
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
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
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
Graham Sanderson
e4d6ff9ecd
Small PICO_PLATFORM=host fixes (#639) 2021-10-28 15:16:36 -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
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
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
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
Graham Sanderson
ec4036181f
tweak info message for TinyUSB support (#590) 2021-10-12 09:09:09 -05:00
Graham Sanderson
db47fba48d
respect OUTPUT_NAME target property when generating supplemental files (#592) 2021-10-12 09:08:44 -05:00
Graham Sanderson
a0d4bdf731
fix pico_set_printf_implementation(TARGET compiler) (#593) 2021-10-12 09:08:15 -05:00
Graham Sanderson
d50e743e0e
make type punning of floating point/int in float_math and double_math use union to avoid warnings (#600) 2021-10-12 09:07:36 -05:00
Graham Sanderson
30673fb6d0
move inline assembly constant out into C code so it doesn't get out of range in a large function (#602) 2021-10-12 09:07:06 -05:00
Graham Sanderson
e76d5a9008
add dma_timer related methods (#604) 2021-10-12 09:04:59 -05:00
Graham Sanderson
9f1c37318b
add irq_get_priority method - improve efficiency of irq_init_priorities (#609) 2021-10-12 09:04:04 -05:00
Liam Fraser
4c9ba3e8ad
USB: Fix description of Length 0 in dpram_regs. Fixes #541 (#608) 2021-10-11 13:21:31 -05:00
Andrew Scheller
ace97f3387
More accurate register access-types and reset-values (#601)
* More accurate register access-types and reset-values

* I2C configuration constants are now included in the autogenerated header
2021-10-08 15:19:41 -05:00
Graham Sanderson
0fa58ed219
Adding/propage macros/signature typedefs for ROM functions. Make rom_func_lookup non-flash safe for flash functions (#586)
* add typedef signatures and ROM code defines for bootrom functions. Propogate uses thru SDK code. Add _inline version of rom_func_lookup
2021-10-08 09:02:19 -05:00
Graham Sanderson
13be546dc3
pico_stdio improvements (#598)
* add stdio_usb_connected() method
* add PICO_STDIO_USB_CONNECT_WAIT_TIMEOUT_MS to allow waiting for CDC connection during init(* 
* add puts_raw and putchar_raw to skip any CR/LF translation
2021-10-08 09:01:30 -05:00
Andrew Scheller
12017a07ab
SPINLOCK regs are RW. (#599) 2021-10-07 18:51:28 -05:00
Graham Sanderson
9319ab11d9
Add xip window alias macros (#566) (#585) 2021-10-07 08:18:02 -05:00
Graham Sanderson
62854f5eff
shrink max-page-size for linker to more sensible 4096 by default (#587) 2021-10-07 08:17:32 -05:00
Graham Sanderson
13ed99df0d
split out usb_reset_interface header into its own library for consumption by picotool or others (#589) 2021-10-07 08:17:13 -05:00
Graham Sanderson
0fdf543126
Missing extern C in datetime.h #581 (#584) 2021-10-04 15:17:00 -05:00
Matias Silva
3c53029c24
Fix some typos (#517) 2021-10-04 13:29:22 -05:00
Manuel Wick
ce0db40223
adafruit_feather_rp2040: Fix default I2C instance (#526)
Use i2c1 as default, because the default pins can't be muxed to i2c0.
2021-10-04 13:28:21 -05:00
Brian Starkey
a119b5bd9f
Fix semihosting_putc (#530)
Per the Arm semihosting protocol documentation[1], the SYS_WRITEC command
expects *a pointer to* the character to be printed in r1, not the
character itself.

[1] https://developer.arm.com/documentation/dui0471/g/Semihosting/SYS-WRITEC--0x03-?lang=en
2021-10-04 13:24:50 -05:00
ZodiusInfuser
eb42ecfaa5
Added definitions for some upcoming Pimoroni LED driver boards (#535)
* Added definitions for Plasma and Interstate boards

* Tweak to interstate pinout
2021-10-04 13:24:31 -05:00
Martino Facchin
cd4e53a202
Use W25Q080 second stage loader for Nano RP2040 Connect (#537)
Due to the well known electronic market situation, we were forced to mount an alternative part number in a batch of Arduino Nano RP2040 Connect.
These flash chips, from ISSI, need yet another way to configure the QE sticky bit :|
At the moment, the safest way to handle the dual sourcing is to fallback using W25Q080 loader, and requiring that the sticky bit has already been programmed during production.
2021-10-04 13:23:18 -05:00
Andrew Scheller
f63a14e9ee
Change PWM_CH1_DIV_INT_LSB to PWM_CH0_DIV_INT_LSB (#560)
For consistency with all the other PWM_...._LSB constants
2021-10-04 13:21:55 -05:00
Mike Causer
2214468b51
Add Adafruit Trinkey QT2040 board (#525) 2021-10-04 13:11:45 -05:00
Andrew Scheller
e6b8c7b64e
bugfix: "WO" registers should be listed in the SVD as write-only, not read-write (#544) 2021-10-04 13:10:42 -05:00
Brian Starkey
1d0dcc8177
pico_time: Fix alarm_pool_dump_key format string (#557)
Add requred "%" before PRIu64.

pico-sdk/src/common/pico_time/time.c:282:20: warning: data argument not used by format string [-Wformat-extra-args]
2021-10-04 13:09:59 -05:00
Brian Starkey
46d8597d35
Add hardware_divider to pico_divider dependencies (#571)
Fixes build when pico_stdlib isn't included in the target libraries:
  pico-sdk/src/rp2_common/pico_divider/divider.S:8:10: fatal error: hardware/divider_helper.S: No such file or directory

Also fixes the same error in pico_double, though I'm not sure how/why:
  pico-sdk/src/rp2_common/pico_double/double_aeabi.S:9:10: fatal error: hardware/divider_helper.S: No such file or directory
2021-10-04 13:09:43 -05:00
Mahyar Koshkouei
d7feac1495
Fix syntax error in cmake when using custom stage2 (#580)
Signed-off-by: Mahyar Koshkouei <mk@deltabeard.com>
2021-10-04 13:09:23 -05:00
Leonardo La Rocca
ca232e9404
Add Melopero Shake RP2040 Board header file (#565)
* added melopero shake definition
2021-10-04 13:07:16 -05:00
dp111
c08136b696
Move ret_dzero to the same section as it get used (#513) 2021-08-11 09:24:23 -05:00
Andrew Scheller
672d18a6f0
Fix default PICO_BOARD value (#536) 2021-08-06 12:21:59 -05:00
Luke Wren
2622e9bc29 Enable UART RX timeout IRQ, as well as RX IRQ, so that individual characters can be received. 2021-07-22 14:46:29 +01:00
Luke Wren
9a586371db
Add doxygen clarifying PWM behaviour when enabled/disabled, and advice for controlling the pin state when disabled (#521) 2021-07-19 10:21:12 -05:00
Matias Silva
7e90980118
Add explanatory note on 7-bit I2C addresses (#520) 2021-07-19 12:02:19 +01:00
Matias Silva
ae6e574f53
Improve wording of comments in irq.h (#509) 2021-07-15 09:32:45 +01:00
Graham Sanderson
5e05469373
bug in sleep_until on host mode for macOS (#502) 2021-07-06 12:19:39 -05:00
Liam Fraser
dc4342f0f6 Update usb regs to fix https://github.com/raspberrypi/pico-feedback/issues/172 2021-07-06 17:02:33 +01:00
Graham Sanderson
35b4965054
make sure PICO_DEFAULT_BOOT_STAGE2_FILE is defined in parent CMake file (#491) 2021-07-06 16:56:17 +01:00
graham sanderson
e02c6b327d Allow one of float/double to have 'none' impl but not the other - previously caused a link error 2021-07-06 16:24:46 +01:00
graham sanderson
f4ab723eb5 compile failure with PICO_STDOUT_MUTEX=0 2021-07-06 16:06:52 +01:00
Graham Sanderson
cefe5c5b2a
Better support for PICO_DISABLE_SHARED_IRQ_HANDLERS (#496)
* use PICO_DISABLE_SHARED_IRQ_HANDLERS exclusively as config for no shared handler support (rather than also PICO_MAX_SHARED_IRQ_HANDLERS == 0)
additionally make irq_add_shared_irq_handler() call irq_set_exclusive_handler() so that single usage of an IRQ still works

* Comment typo

Co-authored-by: Luke Wren <wren6991@gmail.com>
2021-06-29 11:55:35 -05:00
Luke Wren
edcb65c916
Enable I2C FIFO full hold in slave mode (stretch clock when RX full), fixes #456 (#494) 2021-06-29 11:55:01 -05:00
Andrew Scheller
f16ccfa1ff Small comment typos 2021-06-29 10:57:21 +01:00
graham sanderson
44feae4caf set DIVISOR for each use of h/w divider 2021-06-29 10:55:14 +01:00
Zapta
61b7cbdc54
Using ' inline __always_inline' also for GNUC 7. (#484)
Per the discussion at https://www.raspberrypi.org/forums/viewtopic.php?f=145&t=313961
2021-06-28 16:07:48 -05:00
Luke Wren
1f1c6162cd
Header info string updates for PIO DBG_PADx and XOSC STARTUP (#478) 2021-06-04 10:39:00 -05:00
graham sanderson
979045dc12 removed CMSIS from SDK doxygen 2021-06-03 16:46:19 -05:00
Brian Cooke
d42e6a9d10
include pico.h so that uint is defined (#475) 2021-06-03 15:22:28 -05:00
graham sanderson
fdf695b8d8 remove incorrect default from PICO_PANIC_FUNCTION PICO_CONFIG entry 2021-06-03 10:42:31 -05:00
graham sanderson
45a1e08265 fix sem_acquire_block_until function name 2021-06-03 10:36:48 -05:00
ZodiusInfuser
c44e62defd
Added board definition (#471) 2021-06-03 10:24:12 -05:00
Luke Wren
bba0420c76
Add gpio_set_irqover to match inover/outover/oeover (fixes #265) (#470) 2021-06-03 08:37:06 -05:00
Ha Thach
eeb6b501ff
fix qtpy rp2040 uart rx rev B (#466)
also add static check for USB DPRAM
2021-06-02 14:00:29 -05:00
Graham Sanderson
5afa3636d6
Small API additions and minor fixes (#406)
* Add missing DREQ_s

* store actual clock frequency in clock_configure (fixes #368)

* use dma DREQ values defined in dreqs/dma.h

* Fix hw_is_claimed, and add xxx_is_claimed APIs

* Add some PIO irq helper methods

* Add DMA channel IRQ status getter and clear methods

* Implement the correct PIO IRQ status/clear methods (good to have methods here as the h/w interrupt registers are super confusing)

* fix pico_multicore dependencies

* add missing wrapper func __aeabi_f2d

* Further DMA/PIO IRQ API cleanup (and review fixes)

* add PICO_INT64_OPS_IN_RAM flag
2021-06-02 13:12:27 -05:00
Graham Sanderson
91e9327ff1
Add PICO_PANIC_FUNCTION define to allow replacement of the default panic function (#463) 2021-06-02 13:04:38 -05:00
Liam Fraser
b3e1d2d8b8
Add usb device dpram to svd file. Fixes #351 (#465) 2021-06-02 13:04:27 -05:00
Graham Sanderson
561502c2da
Move to Tinyusb 0.10.0 (still with RP patches) (#462)
Most build related items have moved into <tinyusb>/hw/bsp/rp2040/family.cmake which is now the source of truth

force merging as same code save submodule was already reviewed
2021-06-02 13:04:08 -05:00
graham sanderson
496ff66d19 Make PICO_CONFIG descriptions unique 2021-06-02 16:14:11 +01:00
graham sanderson
66c54d807b fix PICO_CONFIG entry 2021-06-02 16:14:11 +01:00
graham sanderson
27c1a89b3d review fixes 2021-06-02 16:14:11 +01:00
graham sanderson
895bad790e Add some spin lock related doxygen 2021-06-02 16:14:11 +01:00
Luke Wren
30041d8513
Add hardware_gpio accessors for Schmitt, slew rate, drive strength (fixes #290) (#464) 2021-06-01 14:25:11 -05:00
Dan Halbert
d026118499
Allow lengthening xosc startup delay with a compile option (#457) 2021-06-01 14:24:40 -05:00
Rene
42cbdcb13a
added spi_get_baudrate() + some consistency changes (#395)
* added spi_get_baudrate()
2021-06-01 11:12:15 -05:00
geurtv
1996a21e3a
dma_channel_transfer_[from/to]_buffer_now: added const volatile to read_addr and volatile to write_addr (#449) 2021-05-27 12:12:39 -05:00
Brendan
e0872a32cc
Add missing board detection macros (#448)
* add board detection macros for Sparkfun & RPi Pico / VGA Board
2021-05-27 11:55:38 -05:00
Jonathan Reichelt Gjertsen
5ad072af5b
Add function to get the currently selected channel (#451)
This is most useful in combination with round-robin sampling to avoid
having to track it manually.
2021-05-27 07:25:40 -05:00
Rene
6994a3858d
-some typo fixes (#408)
-small consistency changes
2021-05-24 16:56:56 -05:00
Rene
2eb76bb058
- interp_ fixes (#428)
* - fix interp_claim_lane (in case of interp1 and lane==1 bit was 0b11 instead of 0b1000)
- added missing function interp_unclaim_lane_mask

* - interp_hw_save_t are not I/O registers
2021-05-24 16:56:11 -05:00