pub struct Ucpd<'d, T: Instance> { /* private fields */ }Expand description
UCPD driver.
Implementations§
Source§impl<'d, T: Instance> Ucpd<'d, T>
impl<'d, T: Instance> Ucpd<'d, T>
Sourcepub fn new(
_peri: Peri<'d, T>,
_irq: impl Binding<T::Interrupt, InterruptHandler<T>> + 'd,
cc1: Peri<'d, impl Cc1Pin<T>>,
cc2: Peri<'d, impl Cc2Pin<T>>,
config: Config,
) -> Self
pub fn new( _peri: Peri<'d, T>, _irq: impl Binding<T::Interrupt, InterruptHandler<T>> + 'd, cc1: Peri<'d, impl Cc1Pin<T>>, cc2: Peri<'d, impl Cc2Pin<T>>, config: Config, ) -> Self
Creates a new UCPD driver instance.
Sourcepub fn split_pd_phy<RX, TX>(
self,
rx_dma: Peri<'d, RX>,
tx_dma: Peri<'d, TX>,
irqs: impl Binding<RX::Interrupt, InterruptHandler<RX>> + Binding<TX::Interrupt, InterruptHandler<TX>> + 'd,
cc_sel: CcSel,
) -> (CcPhy<'d, T>, PdPhy<'d, T>)
pub fn split_pd_phy<RX, TX>( self, rx_dma: Peri<'d, RX>, tx_dma: Peri<'d, TX>, irqs: impl Binding<RX::Interrupt, InterruptHandler<RX>> + Binding<TX::Interrupt, InterruptHandler<TX>> + 'd, cc_sel: CcSel, ) -> (CcPhy<'d, T>, PdPhy<'d, T>)
Splits the UCPD driver into a TypeC PHY to control and monitor CC voltage and a Power Delivery (PD) PHY with receiver and transmitter.
Auto Trait Implementations§
impl<'d, T> Freeze for Ucpd<'d, T>
impl<'d, T> RefUnwindSafe for Ucpd<'d, T>where
T: RefUnwindSafe,
impl<'d, T> Send for Ucpd<'d, T>where
T: Send,
impl<'d, T> Sync for Ucpd<'d, T>where
T: Sync,
impl<'d, T> Unpin for Ucpd<'d, T>
impl<'d, T> !UnwindSafe for Ucpd<'d, T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more