503 Commits

Author SHA1 Message Date
Agustín Mista
f81537d9e0
Add board definition for Cytron Maker Pi RP2040 (#1473) 2024-05-19 19:49:27 -05:00
Mr. Jake
3f41d7d2ee
Added comments referencing spin-lock lock/unlock read/writes (#1501) 2024-05-19 17:03:32 -05:00
Peter Harper
0d56f52b7b
Add some missing i2c function documentation (#1650)
Add i2c_get_index for consistency - just calls i2c_hw_index
2024-05-19 16:36:27 -05:00
Mr. Jake
f1f3bd6bf6
Disable FIFO IRQ when doing reset of core1 (same as with launching) (#1447)
* fifo irq disabled during core1 reset

* silence warning about unused variable in multicore.c
2024-05-18 19:53:37 -05:00
Joseph Bellahcen
5941969380
Improved const correctness of rtc functions (#1460) 2024-05-18 19:42:51 -05:00
Peter Harper
ac8f277e5a
Fix stdio_set_chars_available_callback for usb (#1649)
When you get a callback to tell you a character is available, you should
be able to call getchar_timeout_us, but it's not working for USB

Fixes #1603

Co-authored-by: Andrew Gordon <arg@gordondesign.ltd.uk>
2024-05-18 18:59:47 -05:00
Siarhei Volkau
fcd5333f6b
remove dead code in __aeabi_dcmpun (#1703)
two tail instructions were unreachable
2024-05-18 18:33:03 -05:00
Nellie McKesson
b27f13b83b
reformatting doxygen comment markup (#1660) 2024-03-22 09:09:44 -05:00
J. Neuschäfer
0c65e1d755
pico/mutex.h: Fix typo in comment (#1637) 2024-02-15 08:45:35 -06:00
rppicomidi
f1c6fc8b6d
Fix #1442: Allow adding alternative .gatt file import paths (#1445)
* fix feature request #1442

* Do not require -I before each addtional path

* Fix pico_btstack_make_gatt_header warning

gatt header files are always made into the "generated" folder so you get
a warning if you have more than one target generating a gatt header with
the same name.

Also, simplify the expansion of ARGN

* Improve pico_btstack_make_gatt_header description

---------

Co-authored-by: Peter Harper <peter.harper@raspberrypi.com>
2024-01-16 09:43:57 -06:00
Peter Harper
62bb486f2a
Add tool for lwip httpd server (#1600)
It would be helpful to be able to use the lwip httpd server, but it
generates the content using a tool written in C. This is problematic as
it requires a native compiler to build the tools.

Add a python tool to generate the httpd content and a cmake function to
make use of it.
2024-01-16 09:20:17 -06:00
hubiscode
8353cb61e3
Fix spelling mistake, add documentation (#1444)
* USB descriptor string length.

Implement a mechanism to set the maximum string length used in
tud_descriptor_string_cb() by defining USBD_DESC_STR_MAX. If
USBD_DESC_STR_MAX is not defined, the behavior remains unchanged and the
previous default value of 20 is used. A compile time error is produced
if USBD_DESC_STR_MAX is higher than 127 since the length of the string
plus header is returned in a single byte as (2 * len + 2). Similarly, a
compile time error is generated if the length is defined as less than 17
in order to ensure that there is enough room for the 16-character serial
number plus header.

* Fix spelling mistake.

Renamed irq_hander_chain_free_slot_head to irq_handler_chain_free_slot_head
(added missing l).

* Add documentation for gpio_add_raw_irq_handler functions.

Added a note that irq_add_shared_handler() is used internally and that
the function will assert if the maximum number of shared handlers would
be exceeded.
2024-01-12 20:41:22 -06:00
Maarten van der Schrieck
4d19007607
rp2_common/pico_standard_link: linker script fixes (#1539)
The resulting elf binaries contained an unusual section that leads to an error
when objcopy attempts to update a section (e.g. when using the picowota
combined build mechanism).

This seemed to be due to the order of sections, where two RAM-only sections
were split by a RAM/FLASH section. By moving the RAM-only sections together,
this issue disappeared.
2024-01-12 16:18:42 -06:00
Andrew Scheller
73dce4e540
Doxygen comment typo (#1463) 2024-01-12 15:59:57 -06:00
Brandon Ros
6bb38a87fa
fix cybt_mem_read debug log typo (#1480) 2024-01-12 15:59:29 -06:00
Andre Zeps
ff2e2028ea
Fixes #1468 (#1497)
* Fixes shadowing of a global declaration

Required for GCC 12.2.1

* Change other function pointers to be _func to be consistent

---------

Co-authored-by: Andre Zeps <andre.zeps@googlemail.com>
Co-authored-by: Graham Sanderson <graham.sanderson@gmail.com>
2024-01-12 15:55:43 -06:00
Graham Sanderson
46bddd6b54
save about 100 bytes of code (release) size for simple UART usage (#1431) 2024-01-12 09:41:37 -06:00
Peter Harper
d7bbadb291
Add a cmake function for configuring IP addresses (#1424)
The fix for the following issue adds some macros to configure default
ip addresses. These are expressed in hex which is a bit non-obvious to
set. So add a macro to convert from a string to the hex representation.

https://github.com/georgerobotics/cyw43-driver/issues/41
2024-01-05 09:33:41 -06:00
Peter Harper
9f45e3c905
Freertos background asserts if IPv6 is enabled (#1591)
If LWIP_IPV6=1 a request to update the multicast list occurs in a
callback in the low priority interrupt.

This makes an ioctl call into the driver, at the end of which is a call
to cyw43_await_background_or_timeout_us (see CYW43_DO_IOCTL_WAIT).
It is attempting to delay until there's "some work to do".

For Freertos this fails an assertion as an attempt is made to acquire a
semaphore in interrupt context.

Fixes #1590
2023-12-21 07:51:21 -06:00
Paul Grayson
9ff8a98df6
Add board definition for upcoming Pololu Zumo 2040 Robot (#1475) 2023-12-15 13:49:19 +00:00
Andrew Scheller
538b901290
Add watchdog parameter-validation, and fix up misleading comments (#1567) 2023-12-15 13:48:02 +00:00
Joshua H
01804acb0a
added weact studio board variants (#1437) 2023-12-15 13:40:43 +00:00
Stanislav Rubint
4e3951df26
added Xerxes RP2040 board to includes (#1459) 2023-12-15 13:39:16 +00:00
Alynx Zhou
7dcb984214
Fix waveshare_rp2040_zero USB unrecognize after unplug and replug (#1421)
Some RP2040-Zero boards from WaveShare can only be recognized via USB
after flashing UF2 into it, and if you unplug and replug it, nothing
happens on both USB host and device, RP2040-Zero seems just not booting.

According to @ArkBrj, it seems that setting `PICO_FLASH_SPI_CLKDIV` to
`2` makes the clock chip exceed the spec, setting it to `4` fixes this
bug.

I tested it with the blink program in pico-examples, this does fix the
bug for me.

Fixes <https://github.com/raspberrypi/pico-sdk/issues/1304>.
2023-12-15 13:38:14 +00:00
Andrew Scheller
7ed83dd2d3
Add calls to tight_loop_contents in a few more places. (#1401)
Fixes #1290
2023-12-15 13:36:51 +00:00
Earle F. Philhower, III
d92e26afca
Remove unused warning in async_context_freertos (#1574)
Fixes #1573
2023-12-14 12:01:14 +00:00
Mr. Jake
21cf892b77
Added stdio.h include to pico malloc when debug enabled (#1503) 2023-12-14 11:45:25 +00:00
Graham Sanderson
8262a08af3
rom_hword_as_ptr should use __force_inline (#1494) 2023-09-05 10:34:02 -05:00
Graham Sanderson
8e169346a9
remove incorrect repeating_timer assertion, which fails if the timer fires during creation (#1488) 2023-08-29 11:29:12 -05:00
Paul Mucur
81b3200df4
Fix documentation for gpio_set_irq_enabled (#1470)
Add missing column separator for the table of gpio_irq_level values.

Fixes https://github.com/raspberrypi/pico-sdk/issues/1469
2023-08-14 08:28:17 -05:00
Earle F. Philhower, III
fbb0783eb5
Fix boot2_is25lp080.S section naming (#1430)
When the BOOT2.S files were updated, the section name in the IS25LP080 code was set to "text" and not ".text".

The missing "." causes the actual boot code to be thrown out since the rest of the infrastructure expects "section .text" and not "section text"

Re-add the missing period.
2023-06-15 09:53:25 -05:00
graham sanderson
6a7db34ff6 revert changes to when -nostartfiles is specified in link for 1.5.1 as it can cause link errors with C++; see #1368 2023-06-13 17:27:33 -05:00
Graham Sanderson
f316272a80
Move multicore_lockout victim initialzied tracking to pico_multicore (#1427)
* Move multicore_lockout victim initialzied tracking to pico_multicore via new  multicore_lockout_victim_is_initialzied method, so user initialization of the multicore_lockout independent of pico_flash will work
2023-06-13 10:52:37 -05:00
Andrew Scheller
bb460d076f
Add missing "default defines" (#1426)
To match the documented PICO_CONFIG default values
2023-06-13 10:49:51 -05:00
Andrew Scheller
0be7fb8045
Add missing doxygen ingroup tags (#1425)
So that the doxygen-descriptions end up in the right place
2023-06-13 08:56:00 -05:00
Graham Sanderson
3352ccf5de
split asm volatile back out (#1420) 2023-06-10 11:15:08 -05:00
Liam Fraser
7119978e92
Update svd using latest version of generation tools (#1417) 2023-06-09 09:39:17 -05:00
Peter Harper
c0a615e99c
Improve the comments around VSYS/VBUS config. (#1414) 2023-06-07 11:52:07 -05:00
Peter Harper
ab766096e5
WIP: Add btstack files missing from build (#1380) 2023-06-07 11:28:30 -05:00
Peter Harper
f3ebd62d51
Flash bank customisation (#1293)
* Support dynamic location for flash bank offset

Allow the pico_flash_bank_get_offset function to be changed by
defining pico_flash_bank_get_storage_offset_func
2023-06-06 12:48:09 -05:00
andygpz11
d315a04661
Correct writes to the UART LCR register (#1347)
Co-authored-by: Luke Wren <wren6991@gmail.com>
2023-06-06 12:08:53 -05:00
Graham Sanderson
f28bbfd4ec
Add new pico_flash library with flash_safe_execute(func) (#1412)
* Add new pico_flash library, with flash_safe_execute(func) method to help with preventing IRQs and other core accessing flash with pico_multicore or FreeRTOS SMP
2023-06-06 11:19:27 -05:00
Peter Harper
6a221e023d
Add dma_channel_cleanup method and use it to cleanup after pico_cyw43_driver is closed (#1372) 2023-06-02 12:52:39 -05:00
Graham Sanderson
3b44b0d177
update cmake vars which come from environment with FORCE so they can be updated (#1405) 2023-06-02 12:49:54 -05:00
Peter Harper
8e89e955fc
Fix PICO_CYW43_ARCH_POLL header guard (#1407)
Fixes #1268
2023-06-02 12:49:20 -05:00
Graham Sanderson
c026314e17
subs requires a lo register (#1402) 2023-05-29 11:10:11 -05:00
hubiscode
b0a6f244f3
USB descriptor string length. (#1341)
Implement a mechanism to set the maximum string length used in
tud_descriptor_string_cb() by defining USBD_DESC_STR_MAX. If
USBD_DESC_STR_MAX is not defined, the behavior remains unchanged and the
previous default value of 20 is used. A compile time error is produced
if USBD_DESC_STR_MAX is higher than 127 since the length of the string
plus header is returned in a single byte as (2 * len + 2). Similarly, a
compile time error is generated if the length is defined as less than 17
in order to ensure that there is enough room for the 16-character serial
number plus header.
2023-05-29 10:10:19 -05:00
Malte Thiesen
c7211db2b3
Fixed assert when calling cancel_alarm(0) (#1173) 2023-05-26 12:22:09 -05:00
Peter Harper
826efbc524
pico_lwip_arch build fix (#1389)
It should use pico_mirrored_target_link_libraries.

Fixes #1387
2023-05-26 08:46:45 -05:00
Peter Harper
5ee4c1c3ee
Add cyw43_arch_disable_sta_mode (#1383)
We have a function to "enable" STA mode, so add a "disable" version to
match AP mode.

Fixes #1371
2023-05-26 08:45:30 -05:00