aboutsummaryrefslogtreecommitdiffstats
path: root/src/atsam/sam4_usb.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/atsam/sam4_usb.c')
-rw-r--r--src/atsam/sam4_usb.c40
1 files changed, 20 insertions, 20 deletions
diff --git a/src/atsam/sam4_usb.c b/src/atsam/sam4_usb.c
index 0ba85f4b..33e886c5 100644
--- a/src/atsam/sam4_usb.c
+++ b/src/atsam/sam4_usb.c
@@ -160,26 +160,6 @@ usb_set_configure(void)
UDP->UDP_GLB_STAT |= UDP_GLB_STAT_CONFG;
}
-DECL_CONSTANT_STR("RESERVE_PINS_USB", "PB10,PB11");
-
-void
-usbserial_init(void)
-{
- // Enable clocks
- enable_pclock(ID_UDP);
- PMC->PMC_USB = PMC_USB_USBDIV(5 - 1); // PLLA=240Mhz; divide by 5 for 48Mhz
- PMC->PMC_SCER = PMC_SCER_UDP;
-
- // Enable USB pullup
- UDP->UDP_TXVC = UDP_TXVC_PUON | UDP_TXVC_TXVDIS;
-
- // Enable interrupts
- UDP->UDP_ICR = 0xffffffff;
- NVIC_SetPriority(UDP_IRQn, 1);
- NVIC_EnableIRQ(UDP_IRQn);
-}
-DECL_INIT(usbserial_init);
-
// Configure endpoint 0 after usb reset completes
static void
handle_end_reset(void)
@@ -216,3 +196,23 @@ UDP_Handler(void)
if (s & (1<<USB_CDC_EP_BULK_IN))
usb_notify_bulk_in();
}
+
+DECL_CONSTANT_STR("RESERVE_PINS_USB", "PB10,PB11");
+
+void
+usbserial_init(void)
+{
+ // Enable clocks
+ enable_pclock(ID_UDP);
+ PMC->PMC_USB = PMC_USB_USBDIV(5 - 1); // PLLA=240Mhz; divide by 5 for 48Mhz
+ PMC->PMC_SCER = PMC_SCER_UDP;
+
+ // Enable USB pullup
+ UDP->UDP_TXVC = UDP_TXVC_PUON | UDP_TXVC_TXVDIS;
+
+ // Enable interrupts
+ UDP->UDP_ICR = 0xffffffff;
+ NVIC_SetPriority(UDP_IRQn, 1);
+ NVIC_EnableIRQ(UDP_IRQn);
+}
+DECL_INIT(usbserial_init);