diff --git a/firmware/target/arm/as3525/usb-drv-as3525v2.c b/firmware/target/arm/as3525/usb-drv-as3525v2.c
index 2c0ca70..6f41592 100644
--- a/firmware/target/arm/as3525/usb-drv-as3525v2.c
+++ b/firmware/target/arm/as3525/usb-drv-as3525v2.c
@@ -121,6 +121,7 @@ static void usb_delay(void)
static void as3525v2_connect(void)
{
logf("usb-drv: init as3525v2");
+ CCU_USB_THINGY = (CCU_USB_THINGY & ~0x3000000) | 0x1000000;
/* 1) enable usb core clock */
bitset32(&CGU_PERI, CGU_USB_CLOCK_ENABLE);
usb_delay();
@@ -156,8 +157,7 @@ static void as3525v2_connect(void)
GUSBCFG |= GUSBCFG_force_device_mode;
usb_delay();
/* 11) Do something that is probably CCU related but undocumented*/
- CCU_USB_THINGY &= ~0x1000;
- usb_delay();
+ CCU_USB_THINGY |= 0x1000;
CCU_USB_THINGY &= ~0x300000;
usb_delay();
/* 12) reset usb core parameters (dev addr, speed, ...) */