aboutsummaryrefslogtreecommitdiff
path: root/embassy-rp/src/lib.rs
Commit message (Collapse)AuthorAgeFilesLines
* time: split driver into a separate embassy-time-driver crate.Dario Nieuwenhuis2024-01-111-2/+2
|
* [embassy-rp] auto-documented feature flagsBarnaby Walters2023-12-221-0/+3
|
* ci: use beta, add secondary nightly ci.Dario Nieuwenhuis2023-12-211-1/+0
|
* docs: document all embassy-rp public apisUlf Lilleengen2023-12-191-0/+1
| | | | Enable missing doc warnings.
* docs: embassy-rp rustdoc and refactoringUlf Lilleengen2023-12-191-2/+10
|
* Document how to bind multiple interrupts and handlers in `bind_interrupts!`.Dario Nieuwenhuis2023-12-081-0/+11
|
* Remove nightly and unstable-traits features in preparation for 1.75.Dario Nieuwenhuis2023-11-291-3/+1
|
* Re-add impl_trait_projectionsDániel Buga2023-10-301-1/+2
|
* rp/bootsel: change it to a method on the peripheral.Dario Nieuwenhuis2023-10-071-0/+1
|
* rp2040: implement BOOTSEL button supportScott Mansell2023-10-071-0/+1
|
* Remove impl_trait_projections.Dario Nieuwenhuis2023-10-021-1/+1
|
* Make irq token Copy+CloneDario Nieuwenhuis2023-09-251-1/+2
|
* I2c slave take 2Caleb Jamison2023-09-101-0/+1
| | | | | | refactored to split modules renamed to match upstream docs slight improvement to slave error handling
* rp: generalize adc inputs from pins to channelspennae2023-08-011-0/+1
| | | | | | this lets us treat pins and the temperature sensor uniformly using the same interface. uniformity in turn lets us add more adc features without combinatorial explosion of methods and types needed to handle them all.
* rp: relocate programs implicitly during loadpennae2023-07-281-1/+1
| | | | | | | | | | | this removed the RelocatedProgram construction step from pio uses. there's not all that much to be said for the extra step because the origin can be set on the input program itself, and the remaining information exposed by RelocatedProgram can be exposed from LoadedProgram instead (even though it's already available on the pio_asm programs, albeit perhaps less convenient). we do lose access to the relocated instruction iterator, but we also cannot think of anything this iterator would actually be useful for outside of program loading.
* Rename embassy-hal-common to embassy-hal-internal, document it's for ↵Dario Nieuwenhuis2023-07-281-4/+4
| | | | internal use only. (#1700)
* rp: allow for MPU-based stack guards on core 0 as wellpennae2023-07-211-0/+68
| | | | | | | using these will require some linker script intervention. setting the core0 stack needs linker intervention anyway (to provide _stack_start), having it also provide _stack_end for the guard to use is not that much of a stretch.
* rp/pio: use bind_interrupts for irqspennae2023-07-071-1/+0
| | | | closes #1338
* rp: update rp-pac.Dario Nieuwenhuis2023-06-161-12/+18
|
* Remove embassy-cortex-m crate, move stuff to embassy-hal-common.Dario Nieuwenhuis2023-06-091-2/+2
|
* Remove executor dep+reexports from HALs.Dario Nieuwenhuis2023-06-091-1/+0
| | | | Closes #1547
* Add `rt` feature to HALs, cfg out interrupt handling when not set.Dario Nieuwenhuis2023-06-081-0/+1
|
* Reexport NVIC_PRIO_BITS at HAL root.Dario Nieuwenhuis2023-06-081-0/+2
| | | | This allows using RTIC with `#[rtic::app(device = embassy_nrf, ...)]`
* Make interrupt module more standard.Dario Nieuwenhuis2023-06-081-2/+62
| | | | | | | | | | | | - Move typelevel interrupts to a special-purpose mod: `embassy_xx::interrupt::typelevel`. - Reexport the PAC interrupt enum in `embassy_xx::interrupt`. This has a few advantages: - The `embassy_xx::interrupt` module is now more "standard". - It works with `cortex-m` functions for manipulating interrupts, for example. - It works with RTIC. - the interrupt enum allows holding value that can be "any interrupt at runtime", this can't be done with typelevel irqs. - When "const-generics on enums" is stable, we can remove the typelevel interrupts without disruptive changes to `embassy_xx::interrupt`.
* Update Rust nightly.Dario Nieuwenhuis2023-05-191-1/+0
|
* Merge branch 'master' into masterCaleb Jamison2023-05-091-3/+26
|\
| * rp: use rp2040-boot2 to provide the boot2 blobpennae2023-05-091-3/+26
| | | | | | | | | | | | | | we're currently shipping an old boot2 that runs the flash at half speed. use the more recent version instead, and allow user to choose between the different supported boot2 versions for different flash chips if they need that.
* | rp clock configurationCaleb Jamison2023-05-081-4/+16
|/
* rp/gpio: set up gpio interrupts only oncepennae2023-05-021-0/+1
| | | | | | doing this setup work repeatedly, on every wait, is unnecessary. with nothing ever disabling the interrupt it is sufficient to enable it once during device init and never touch it again.
* rp/pio: enable pio interrupts only oncepennae2023-05-011-0/+1
| | | | | | | | | since we never actually *disable* these interrupts for any length of time we can simply enable them globally. we also initialize all pio interrupt flags to not cause system interrupts since state machine irqa are not necessarily meant to cause a system interrupt when set. the fifo interrupts are sticky and can likewise only be cleared inside the handler by disabling them.
* rp: remove pio Cargo feature.Dario Nieuwenhuis2023-04-261-14/+10
| | | | We shouldn't have Cargo features if their only purpose is reduce cold build time a bit.
* rp: add PWM apipennae2023-04-231-0/+10
|
* rp: hook up softfloat rom intrinsicspennae2023-04-191-0/+1
| | | | | | rp-hal has done this very well already, so we'll just copy their entire impl again. only div.rs needed some massaging because our sio access works a little differently, everything else worked as is.
* rp: switch to released rp-pac v1.0Dario Nieuwenhuis2023-04-161-2/+2
|
* embassy-rp: Add Watchdogkalkyl2022-12-241-0/+3
|
* fmtkalkyl2022-12-131-1/+1
|
* Merge branch 'master' into multicoreHenrik Alsér2022-12-131-0/+11
|\
| * Added RelocateProgram class for adjusting PIO-programs for different origins.Simon Berg2022-12-091-0/+2
| |
| * PIO support for RPi PicoSimon Berg2022-12-091-0/+9
| |
* | Refactor after reviewkalkyl2022-12-131-0/+2
| |
* | Feature gate critical-section-implkalkyl2022-12-101-0/+2
| |
* | embassy-rp: Add multicore supportkalkyl2022-12-101-0/+2
|/
* rp: Add an RngCore impl based on ROSC.RANDOMBITGabriel Smith2022-11-301-1/+1
| | | | | This has the potential to not be random, but it should not be an issue if default clock settings are used.
* Switch to async-fn-in-traitDario Nieuwenhuis2022-11-251-1/+2
|
* embassy-rp: Add basic ADC moduleHenrik Alsér2022-11-151-0/+3
|
* Add flash example & flash HIL testMathias2022-10-261-0/+2
|
* Rebase on masterMathias2022-09-291-0/+4
|\
| * Add preliminary I2C implementation for RP2040Mathias2022-09-271-0/+4
| |
| * Add RP2040 ROM functions and intrinsics aliasesMathias2022-09-231-0/+3
| |
| * Update Rust nightly.Dario Nieuwenhuis2022-09-221-1/+1
| | | | | | | | Removes feature(generic_associated_types)