Commit Graph

456 Commits

Author SHA1 Message Date
graham sanderson
73751b89d1 Add support for resetting RP2040 via the USB connection when using pico_stdio_usb
- setting baud rate to magic value (default=1200) will cause a reset to BOOTSEL mode
	- a VENDOR interface along side the CDC interface can be used to reset via refular flash boot, or into
	  BOOTSEL mode with control for the reset_usb_boot parameters for the latter
either method can be configured/enabled/disabled via #define
2021-03-01 08:36:29 -06:00
graham sanderson
642b312fec Add binary info 'feature' for pico_bootsel_via_double_reset 2021-03-01 08:36:09 -06:00
graham sanderson
0b1de0a62e hardware_rtc: make rtc_enable_alarm public 2021-03-01 08:36:09 -06:00
Graham Sanderson
fa34820fb9
remove broken and fairly pointless deep sleep API (#198)
* remove broken and fairly pointless deep sleep API, use multicore_reset_core1 instead

* strict-prototype for multicore_fifo_drain() in host header

* Also for multicore_lockout_victim_init()

Co-authored-by: Luke Wren <wren6991@gmail.com>
2021-03-01 14:10:45 +00:00
Andrew Scheller
265485c773 Fixup PICO_FLASH_SIZE_BYTES PICO_CONFIG entry (no default) 2021-02-27 12:09:02 -06:00
Andrew Scheller
37dbe8862e extract_configs: Do better matching-up of default values (regex was too strict)
also error if PICO_CONFIG says there's a default but no matching #define is found
2021-02-27 12:09:02 -06:00
foopub
a0481b2e02 Added ".syntax unified"
Otherwise gcc complains. I've tested this to work with the normal CMakeLists.txt provided in a few examples.
2021-02-27 12:07:57 -06:00
foopub
be7a655824 Replace unavailable flag-preserving instruction
It seems sub requires thumb2 instructions which are unavailable. This is in line with the rest of the sdk code base which uses subs.
2021-02-27 12:07:57 -06:00
graham sanderson
f8015f266a remove useless PICO_ALLOW_SLEED_IN_EXCEPTION 2021-02-26 08:52:14 -06:00
graham sanderson
9fdf87f729 panic in debug mode if sleep methods are called in an exception handler (unless PICO_ALLOW_SLEEP_IN_EXCEPTION is set) 2021-02-26 08:52:14 -06:00
Andrew Scheller
fb5a847026 Also check enum params and doxygenise pio_mov_status_type 2021-02-25 16:21:06 -06:00
Andrew Scheller
3fb6a489f6 Extra param-checking for hardware_pio library (switch asserts to valid_params_if, and add additional checks) 2021-02-25 16:21:06 -06:00
Andrew Scheller
5a245d549a Add some "\ingroup timestamp" doxy-comments so that they actually appear in the output! 2021-02-25 16:20:20 -06:00
Andrew Scheller
1281fbe9fa Remove duplicate PARAM_ASSERTIONS_ENABLED_SYNC PICO_CONFIG entry 2021-02-25 16:19:38 -06:00
Graham Sanderson
3110843159
Pico flash size bytes (#159)
* Move PICO_FLASH_SIZE_BYTES out of platform_defs.h since it precedes board config; also default to -1 for unknown

* make default for PICO_FLASH_SIZE_BYTES undefined - i.e. no value
2021-02-25 11:01:01 -06:00
graham sanderson
693311a74d fix compiler warning 2021-02-25 10:43:28 -06:00
graham sanderson
75422bbd68 host mode fixups 2021-02-25 10:16:40 -06:00
graham sanderson
72307e99dc pio: improve (slightly) error message for claim failure on PIO 1 2021-02-25 10:16:40 -06:00
graham sanderson
24e6668b35 move test cases after PICO_SDK_POST_LIDR_DIRS inclusion, so pico-host-sdl can be used 2021-02-25 10:16:40 -06:00
graham sanderson
760cb59c97 cmake: change warning message for unititialized TinyUSB 2021-02-25 10:16:40 -06:00
Graham Sanderson
cf3182021a
%g should not print 0 as infe-308 (#185) 2021-02-25 10:00:05 -06:00
Andrew Scheller
036d90d8cf
Default PARAM_ASSERTIONS_ENABLED_LOCK_CORE to 0 (#184)
so that it matches all the other PARAM_ASSERTIONS_* default values
2021-02-25 09:52:21 -06:00
Zachary Kohnen
cf383d484f
Add 'hardware/structs/sio.h' header to the 'pico/multicore.h' header\n\nThe pico/multicore.h header uses the sio_hw struct, but does not include the header that defines it. This normally is not a problem since other headers include the structure as well, but since this structure is used in the header, we should not rely on other headers bringing it in and instead include it directly (#176) 2021-02-25 08:41:51 -06:00
Graham Sanderson
d3aa6f7f98
No malloc for default alarm pool an pheap docs/cleanup (#143)
* Statically allocate the default timer pool (to avoid pulling in malloc); doxygen for pheap (and some function name changes)

* fix comments
2021-02-25 08:40:03 -06:00
graham sanderson
d7ed2aeaa3 re-arrange pico/types.h to avoid duplicate doxygen 2021-02-25 08:28:17 -06:00
graham sanderson
096b65d8db fix comment 2021-02-25 08:28:17 -06:00
graham sanderson
db6cc12027 fix the represntation of at_the_end_of_time to be 63 one bits rather than 32 2021-02-25 08:28:17 -06:00
graham sanderson
8ebe036665 Change _U to _u as _U exists in ctype.h 2021-02-25 08:26:16 -06:00
graham sanderson
41c0e9f3b9 Fixup another level of compiler warnings, add _U() definition 2021-02-25 08:26:16 -06:00
Andrew Scheller
be13f591d0 Explicitly mark constants in autogenerated headers as unsigned values 2021-02-25 08:26:16 -06:00
graham sanderson
45b39d067b b0 sincos shim was incorrect, causing crash 2021-02-24 17:15:40 -06:00
Peter Lawrence
63ff3483d5 elf2uf2: fix address range bug 2021-02-22 18:52:43 -06:00
graham sanderson
e3925f5864 elf2uf2: fix breakage for no_flash builds; removep 0xFFFFFFFF constantds and error messsage 2021-02-19 14:23:24 -06:00
Peter Lawrence
eae2006f79 elf2uf2: determine entry address selected by Boot ROM (Plan B) 2021-02-19 14:05:11 -06:00
Peter Lawrence
07e3387458 elf2uf2: determine entry address selected by Boot ROM 2021-02-19 14:05:11 -06:00
Graham Sanderson
1478c6b89f
Bunch of small fixes (#154)
* use valid_params_if macro for lock assertion

* fixup param checking in pwm.h

* Fix range of fractional divider parameter check in pwm.h

Co-authored-by: Luke Wren <wren6991@gmail.com>
2021-02-19 14:15:29 +00:00
Graham Sanderson
3f0529a25c
Add more memory barriers to avoid code re-ordering issues with DMA (#155)
* Add more memory barriers to avoid code re-ordering issues with DMA

* Comment typos

* Fix Wstrict-prototype on __compiler_memory_barrier

* Remove now-redundant __compiler_barrier macro from hardware_flash

Co-authored-by: Luke Wren <wren6991@gmail.com>
2021-02-19 13:11:56 +00:00
graham sanderson
e349dbbf4f add boot2 info to binary info 2021-02-19 12:32:38 +00:00
Jeremy Grosser
a498b888b2 pioasm: Ada output format 2021-02-18 18:42:19 -06:00
Andrew Scheller
9fbfa1fcbc REAMDE.md improvements
Fix the order of the steps (fixes #133) and make it clearer that step 2 is choose-just-one-option
2021-02-18 11:39:11 -06:00
Luke Wren
2fa84c7743 Missing comma in pioasm python wait output 2021-02-18 11:38:21 -06:00
Luke Wren
4c1fac58d3
Add pico_bootsel_via_double_reset library, fix #87 (#137)
* Add pico_bootsel_via_double_reset library, fix #87

* pico_bootsel_via_double_reset: remove unnecessary library guard, fix subdirectory ordering

* Fix C type used as PICO_CONFIG type
2021-02-18 16:12:22 +00:00
Graham Sanderson
6b0f736d3b
fixup not/reverse for pioasm python output (#146) 2021-02-18 16:04:06 +00:00
graham sanderson
01c8e2a8dc remove always true assertions (fix #83) 2021-02-18 15:47:07 +00:00
graham sanderson
ffc7f19f46 move two hardware_timer methods to the right doxygen group (fix #131) 2021-02-18 15:47:07 +00:00
graham sanderson
a28217be4b missing pico/malloc.h fixes #136 2021-02-18 15:47:07 +00:00
Graham Sanderson
8b9907e7f2
Add -Wuninitialized -Wunused -Wcast-align to warnings checked by kitchen_sink (and fixup warnings) (#125) 2021-02-15 16:06:12 +00:00
Luke Wren
81c3d3fae6 Reword some confusing terms in pio.h doxygen 2021-02-12 13:57:54 +00:00
Luke Wren
07aadbb658 Update info strings in PIO register header for clarity (matching changes in datasheet) 2021-02-12 13:57:54 +00:00
Luke Wren
a2d82431e6 oops 2021-02-11 12:16:07 -06:00