diff --git a/embassy-nrf/src/time_driver.rs b/embassy-nrf/src/time_driver.rs index 7815427ee..f3d07e98d 100644 --- a/embassy-nrf/src/time_driver.rs +++ b/embassy-nrf/src/time_driver.rs @@ -208,10 +208,7 @@ impl State { critical_section::with(|cs| { let alarm = self.get_alarm(cs, alarm); - // safety: it's OK to transmute a fn pointer into a raw pointer - let callback_ptr: *const () = unsafe { mem::transmute(callback) }; - - alarm.callback.set(callback_ptr); + alarm.callback.set(callback as *const ()); alarm.ctx.set(ctx); }) } diff --git a/embassy-stm32/src/time_driver.rs b/embassy-stm32/src/time_driver.rs index 226e5e39c..3ae4b1c4d 100644 --- a/embassy-stm32/src/time_driver.rs +++ b/embassy-stm32/src/time_driver.rs @@ -232,10 +232,7 @@ impl State { critical_section::with(|cs| { let alarm = self.get_alarm(cs, alarm); - // safety: it's OK to transmute a fn pointer into a raw pointer - let callback_ptr: *const () = unsafe { mem::transmute(callback) }; - - alarm.callback.set(callback_ptr); + alarm.callback.set(callback as *const ()); alarm.ctx.set(ctx); }) }