summaryrefslogtreecommitdiff
path: root/src/portable/microchip
diff options
context:
space:
mode:
authorhathach <[email protected]>2020-04-17 13:38:22 +0700
committerhathach <[email protected]>2020-04-17 13:38:22 +0700
commit05476d9ad72321aa6e57ff5acbc4b25e1366fead (patch)
tree10a12e71a679243ad5775ed7e0088242b8e763c8 /src/portable/microchip
parentf4df82939955d86f6c2e826e1bc9f4b5bb713df8 (diff)
parent85f0894fff89baaaa91a6dc3554a3149fc2fc062 (diff)
Merge branch 'master' into remove-dcd-set-config
Diffstat (limited to 'src/portable/microchip')
-rw-r--r--src/portable/microchip/samd/dcd_samd.c2
-rw-r--r--src/portable/microchip/samg/dcd_samg.c22
2 files changed, 19 insertions, 5 deletions
diff --git a/src/portable/microchip/samd/dcd_samd.c b/src/portable/microchip/samd/dcd_samd.c
index 2c01f8017..bd61df86a 100644
--- a/src/portable/microchip/samd/dcd_samd.c
+++ b/src/portable/microchip/samd/dcd_samd.c
@@ -331,7 +331,7 @@ void maybe_transfer_complete(void) {
}
-void dcd_irq_handler (uint8_t rhport)
+void dcd_int_handler (uint8_t rhport)
{
(void) rhport;
diff --git a/src/portable/microchip/samg/dcd_samg.c b/src/portable/microchip/samg/dcd_samg.c
index 93d9029d6..7703ee0dc 100644
--- a/src/portable/microchip/samg/dcd_samg.c
+++ b/src/portable/microchip/samg/dcd_samg.c
@@ -138,9 +138,6 @@ void dcd_init (uint8_t rhport)
(void) rhport;
tu_memclr(_dcd_xfer, sizeof(_dcd_xfer));
-
- // Enable pull-up, disable transceiver
- UDP->UDP_TXVC = UDP_TXVC_PUON | UDP_TXVC_TXVDIS_Msk;
}
// Enable device interrupt
@@ -186,6 +183,23 @@ void dcd_remote_wakeup (uint8_t rhport)
(void) rhport;
}
+void dcd_connect(uint8_t rhport)
+{
+ (void) rhport;
+
+ // Enable pull-up, disable transceiver
+ UDP->UDP_TXVC = UDP_TXVC_PUON | UDP_TXVC_TXVDIS_Msk;
+}
+
+void dcd_disconnect(uint8_t rhport)
+{
+ (void) rhport;
+
+ // disable both pullup and transceiver
+ UDP->UDP_TXVC = UDP_TXVC_TXVDIS_Msk;
+}
+
+
//--------------------------------------------------------------------+
// Endpoint API
//--------------------------------------------------------------------+
@@ -333,7 +347,7 @@ void dcd_edpt_clear_stall (uint8_t rhport, uint8_t ep_addr)
//--------------------------------------------------------------------+
// ISR
//--------------------------------------------------------------------+
-void dcd_irq_handler(uint8_t rhport)
+void dcd_int_handler(uint8_t rhport)
{
uint32_t const intr_mask = UDP->UDP_IMR;
uint32_t const intr_status = UDP->UDP_ISR & intr_mask;