diff --git a/embassy-stm32/src/ucpd.rs b/embassy-stm32/src/ucpd.rs index d251b1c72..dcc4454d3 100644 --- a/embassy-stm32/src/ucpd.rs +++ b/embassy-stm32/src/ucpd.rs @@ -95,9 +95,13 @@ impl<'d, T: Instance> Ucpd<'d, T> { pub fn new( _peri: impl Peripheral
+ 'd,
_irq: impl interrupt::typelevel::Binding > + 'd,
- _cc2: impl Peripheral > + 'd,
+ cc1: impl Peripheral > + 'd,
+ cc2: impl Peripheral > + 'd,
) -> Self {
+ into_ref!(cc1, cc2);
+ cc1.set_as_analog();
+ cc2.set_as_analog();
+
T::enable_and_reset();
T::Interrupt::unpend();
unsafe { T::Interrupt::enable() };