X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fcommon%2Fusb_serial.rs;h=3f9e48f7faff8a81e244e477744dad5e0fce5c68;hb=695e71b6274cf4387a1f2f39dbcfc56b5ae7f561;hp=c9de0d4b69dc06fff78f3b65889612138b1e2c39;hpb=cec0c36c6bade2106fba5e4bb1ea0180b1aef6a6;p=gps-watch.git diff --git a/src/common/usb_serial.rs b/src/common/usb_serial.rs index c9de0d4..3f9e48f 100644 --- a/src/common/usb_serial.rs +++ b/src/common/usb_serial.rs @@ -25,11 +25,16 @@ use nvic; use clock; extern { - fn USB_VcomInit(); + fn USB_VcomInit(vid: u16, pid: u16); + fn USB_VcomDeinit(); } -pub unsafe fn init() { - USB_VcomInit(); +pub unsafe fn init(vid: u16, pid: u16) { + USB_VcomInit(vid, pid); +} + +pub unsafe fn shutdown() { + USB_VcomDeinit(); } #[no_mangle] @@ -43,6 +48,15 @@ pub unsafe extern fn USB_DeviceIsrEnable() nvic::enable_irq(irq_number); } +#[no_mangle] +#[allow(non_snake_case)] +pub unsafe extern fn USB_DeviceIsrDisable() +{ + let irq_number = 24; // USB0 + + nvic::disable_irq(irq_number); +} + #[no_mangle] #[allow(non_snake_case)] pub unsafe extern fn USB_DeviceClockInit()