Jan Niehusmann
5ae1f90939
Merge pull request #488 from ptpaterson/eh1_0_alpha-spi
...
implement embedded-hal aplha SPI traits
2022-10-30 13:47:11 +01:00
9names
9bc48de974
Merge pull request #486 from 9names/error_add_debug_traits
...
Add derive(Debug) and derive(defmt::Format) to error types.
pll and xosc Error types didn't implement Debug, which made them annoying to work with.
And only a few of our Error types implemented derive(defmt::Format).
I added both to all the errors I could find to make things a little more consistent.
2022-10-29 08:31:02 +11:00
Jan Niehusmann
f2d9fff0e2
Specify required feature critical-section-impl for some examples ( #487 )
2022-10-28 22:15:32 +01:00
Paul Paterson
98daa7a25d
implement embedded-hal aplha SPI traits
2022-10-28 13:21:55 -04:00
Jan Niehusmann
e60a979eda
Merge pull request #483 from zachs18/patch-1
...
Remove unnecessary `mut` from `static mut LOCK_OWNER: AtomicU8` in critical section impl.
2022-10-28 18:27:24 +02:00
9names
219d393085
Add derive(Debug) and derive(defmt::Format) to error types
2022-10-27 19:17:03 +11:00
Jan Niehusmann
8e79f438ba
Merge pull request #467 from jannic/fix-466
...
Use InstalledProgram::share() in examples/pio_synchronized.rs
2022-10-25 23:34:36 +02:00
zachs18
2b8dda74aa
Remove unnecessary mut
from static mut LOCK_OWNER: AtomicU8
in critical section impl.
...
`LOCK_OWNER` is only accessed using the atomic APIs, which take `&self`, so it does not need to be `static mut`, `static` is fine.
(I haven't seen any miscompilations of this, but I'm unsure if Rust is allowed to assume `static mut`s are not aliased and apply optimizations based on that. If so, this would prevent that.)
2022-10-25 13:16:03 -05:00
Jan Niehusmann
018965d015
Update dependency on rp2040-pac to 0.4.0
2022-10-18 20:11:24 +00:00
Derek Hageman
04e245813a
Add CHANGELOG entry for UART error field
...
Add a changelog entry documenting the change to the UART error field
name.
2022-10-16 20:22:17 -06:00
Derek Hageman
c461d21136
Fix UART read error discard data
...
Limit the discarded data reference to the data that has actually been
read so far, instead of the whole input buffer. Also fix a spelling
error in the field name.
2022-10-16 10:59:26 -06:00
Jan Niehusmann
d8a0c64618
Make UartConfig::new(...) const
2022-10-15 17:34:13 +00:00
Jan Niehusmann
e9428c3f57
Add CHANGELOG entries
2022-10-15 17:14:43 +00:00
Jan Niehusmann
fb7fba03ad
Add deprecation attribute to common_configs
2022-10-15 17:14:43 +00:00
Jan Niehusmann
b81ad6f599
Use UartConfig::new constructor instead of common_configs in examples
2022-10-15 17:14:43 +00:00
Jan Niehusmann
0a86dad34c
Implement UartConfig::new constructor method
2022-10-15 17:02:30 +00:00
Jan Niehusmann
84b92edd30
Check watchdog load value max value before multiplying by 2, to avoid integer overflow
2022-10-12 22:39:57 +00:00
Jan Niehusmann
e9923cbcd2
Use InstalledProgram::share() in examples/pio_synchronized.rs
2022-10-11 21:04:04 +00:00
Derek Hageman
39190c357f
Fix watchdog counter load ( #464 )
...
Fix the watchdog load to reflect the 1us tick rate. This was changed
in #361 , which presumably used the field name (delay_ms) and assumed
it was in milliseconds. So this also fixes the name to reflect that
it's microseconds.
2022-10-10 12:15:24 +01:00
Wilfried Chauveau
eac51cdd16
remove unused future dependency ( #463 )
2022-10-06 21:39:48 +01:00
Wilfried Chauveau
305dfc9d1f
Add rtic-monotonic support for timer & alarms (feature gated) ( #459 )
...
* Add rtic-monotonic support for timer & alarms
* Force Alarm interrupt if timer is set too soon
* timer: Remove non_exhaustive attribute from ScheduleAlarmError
* timer: TooSoon is no longer emitted so it can be removed
2022-10-06 18:31:31 +01:00
9names
fc110f07c3
Add comments for HAL features
2022-10-03 11:43:09 +11:00
Jan Niehusmann
d5bfb0ca8d
Fix typo in changelog
2022-09-30 16:53:37 +00:00
Jan Niehusmann
819f051cc2
Update changelog
2022-09-28 21:59:09 +00:00
Jan Niehusmann
fcd6f7c19d
Remove unnecessary custom Infallible types
2022-09-28 21:59:09 +00:00
Jan Niehusmann
e4deaabb51
Upgraded embedded-hal alpha dependency to 1.0.0-alpha.9
...
For now, disabled non-blocking implementations.
2022-09-28 21:59:09 +00:00
Jan Niehusmann
8d9b4538c9
Merge pull request #453 from jannic/update-jmp-offset
...
simplify jump offset calculation when loading PIO programs
2022-09-27 22:25:22 +02:00
Olivier
69c047136c
added SPI is_busy function
2022-09-19 15:27:46 +02:00
Jan Niehusmann
6a5747b213
Use u8 instead of usize for pio address calculation
2022-09-18 10:48:09 +00:00
Jan Niehusmann
7cca9a71d7
simplify jump offset calculation when loading PIO programs
2022-09-17 17:22:34 +00:00
Jan Niehusmann
fa83510277
Provide rp2040_hal::gpio::pin::Pin::into_push_pull_output_in_state
2022-09-17 13:31:11 +00:00
Jan Niehusmann
cbed25944a
Merge pull request #449 from papyDoctor/main
...
Added set_fifos/set_rx_watermark/set_tx_watermark
2022-09-17 10:25:52 +02:00
Wilfried Chauveau
4ddad4e74c
fix concurrent accesses to sm_execctrl and sm_instr when sideset isn't optional ( #448 )
...
* fix concurrent accesses to sm_execctrl and sm_instr when sideset isn't optional
* review & document unsafe blocks
2022-09-16 17:19:54 +01:00
Wilfried Chauveau
322bba2cc0
pio: Move interrupt related (en|dis)abling/forcing methods to the statemachine ( #447 )
...
* pio: Move interrupt related (en|dis)abling/forcing methods to the statemachine
The SM knows its id using the type system so there's no need for checking it.
This commit also adds a `PioIRQ` enum to select the output IRQ.
* Move the interrupt control to Rx & Tx and make all accesses to inte atomic
* Adjust the ergonomics of IRQ handling.
* Elide lifetimes where they can be (clippy's advice)
2022-09-14 21:07:03 +01:00
Wilfried Chauveau
42fc266e67
timer: Mark Timer & Alarm* Send and Sync ( #451 )
2022-09-14 21:06:08 +01:00
Olivier
b29cc2630c
Added set_fifos/set_rx_watermark/set_tx_watermark
...
that permit to enable/disable the Rx/Tx FIFOs and to set
the watermarks for the DMA/interrupts triggering
2022-09-12 17:06:27 +02:00
Jan Niehusmann
e681b67d9c
Merge pull request #444 from jannic/critical-section-default
...
Enable critical-section-impl by default only from board crates, not from hal
2022-09-02 12:12:45 +02:00
Wilfried Chauveau
39ffe70dab
Use rp2040_boot2::BOOT_LOADER_GENERIC_03H in the vector-table example ( #445 )
2022-09-02 08:02:34 +01:00
A. Gavin
993487443a
examples: clarify usage of boot2 section ( #443 )
2022-09-02 06:38:58 +01:00
Wilfried Chauveau
5ce10ff94e
timer: Use a fixed type in Alarm::schedule ( #442 )
2022-08-31 21:45:08 +01:00
Wilfried Chauveau
0e2b4cf7be
Add a method to allow setting the PIO's clock divisor without floats ( #440 )
...
* pio: Changes `PIOBuilder::clock_divisor` from f32 to fixed point)
* pio: mark clock_divisor as deprecated
2022-08-31 21:44:53 +01:00
Wilfried Chauveau
6d75cd8291
usb: Use the dedicated write_bitmask_* functions ( #441 )
2022-08-31 13:41:35 +01:00
Wilfried Chauveau
4dbd5667a6
Use TimerInstant in Timer::GetCounter & add Alarm::schedule_at ( #439 )
2022-08-31 06:54:57 +01:00
Wilfried Chauveau
f30df4a0c7
doc: Fix the link under the logo in rp2040-hal's readme ( #438 )
2022-08-26 12:15:24 +01:00
Wilfried Chauveau
8d52f37dd1
Prepare for HAL 0.6.0 release ( #430 )
...
* Prep for HAL 0.6.0 release
* Update changelog, readme and version number for HAL 0.5.0 release
* Bump HAL version in BSP deps
* Add the missing boards to the main README.md
2022-08-26 10:05:56 +01:00
Wilfried Chauveau
dbc691fb09
Temporary disable sticky-bit in set_pins too ( #433 )
2022-08-25 18:19:01 +01:00
Kasil
31469c232f
Add support for the Interpolator ( #371 )
...
* Implementation of the interpolator.
* corrected formatting
* fixed documentation code
* add clamp flag to LaneCtrl
* addition of an example for the interpolator
* put documentation behind ///
* rewording comment for clarity
* using more idiomatic fn new
2022-08-25 18:02:56 +01:00
Jan Niehusmann
00f5e8d184
Merge pull request #432 from jannic/fix-set_pindirs
...
Temporarily disable out_sticky in set_pindirs
2022-08-25 12:02:55 +02:00
Jan Niehusmann
6b0ea14ec1
Temporarily disable out_sticky in set_pindirs
...
Otherwise, it will change unrelated pindirs as well, if sticky is set
2022-08-25 07:49:59 +00:00
Wilfried Chauveau
47d8f4fc21
Add Debug and defmt::Format to the public types of rp2040_hal::gpio::dynpin ( #431 )
2022-08-25 05:54:26 +01:00