Ok, so what the HAL/BSP should offer is simply this? ```rust pub fn set_irq_handler(&self, handler: unsafe extern "C" fn()) { unsafe { interrupt::bind_interrupt(Interrupt::USB, handler); interrupt::enable(Interrupt::USB, interrupt::Priority::max()).unwrap(); } } ```