diff options
-rw-r--r-- | firmware/target/arm/as3525/usb-drv-as3525v2.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/firmware/target/arm/as3525/usb-drv-as3525v2.c b/firmware/target/arm/as3525/usb-drv-as3525v2.c index 67125ec4ea..fdc0b6c19e 100644 --- a/firmware/target/arm/as3525/usb-drv-as3525v2.c +++ b/firmware/target/arm/as3525/usb-drv-as3525v2.c | |||
@@ -247,13 +247,15 @@ void usb_drv_exit(void) | |||
247 | 247 | ||
248 | static void handle_ep_int(int ep, bool out) | 248 | static void handle_ep_int(int ep, bool out) |
249 | { | 249 | { |
250 | struct usb_endpoint *endpoint = &endpoints[ep][out ? DIR_OUT : DIR_IN]; | ||
251 | unsigned long sts = DEPINT(ep, out); | 250 | unsigned long sts = DEPINT(ep, out); |
252 | logf("%s(%d %s): sts = 0x%lx", __func__, ep, out?"OUT":"IN", sts); | 251 | logf("%s(%d %s): sts = 0x%lx", __func__, ep, out?"OUT":"IN", sts); |
252 | |||
253 | if(sts & DEPINT_ahberr) | 253 | if(sts & DEPINT_ahberr) |
254 | panicf("usb-drv: ahb error on EP%d %s", ep, out ? "OUT" : "IN"); | 254 | panicf("usb-drv: ahb error on EP%d %s", ep, out ? "OUT" : "IN"); |
255 | |||
255 | if(sts & DEPINT_xfercompl) | 256 | if(sts & DEPINT_xfercompl) |
256 | { | 257 | { |
258 | struct usb_endpoint *endpoint = &endpoints[ep][out ? DIR_OUT : DIR_IN]; | ||
257 | if(endpoint->busy) | 259 | if(endpoint->busy) |
258 | { | 260 | { |
259 | endpoint->busy = false; | 261 | endpoint->busy = false; |
@@ -311,11 +313,9 @@ static void handle_ep_int(int ep, bool out) | |||
311 | logf(" rt=%x r=%x", ep0_setup_pkt->bRequestType, ep0_setup_pkt->bRequest); | 313 | logf(" rt=%x r=%x", ep0_setup_pkt->bRequestType, ep0_setup_pkt->bRequest); |
312 | 314 | ||
313 | if(ep0_setup_pkt->bRequestType == USB_TYPE_STANDARD && | 315 | if(ep0_setup_pkt->bRequestType == USB_TYPE_STANDARD && |
314 | ep0_setup_pkt->bRequest == USB_REQ_SET_ADDRESS) | 316 | ep0_setup_pkt->bRequest == USB_REQ_SET_ADDRESS) |
315 | { | ||
316 | /* Set address */ | ||
317 | DCFG = (DCFG & ~bitm(DCFG, devadr)) | (ep0_setup_pkt->wValue << DCFG_devadr_bitp); | 317 | DCFG = (DCFG & ~bitm(DCFG, devadr)) | (ep0_setup_pkt->wValue << DCFG_devadr_bitp); |
318 | } | 318 | |
319 | usb_core_control_request(ep0_setup_pkt); | 319 | usb_core_control_request(ep0_setup_pkt); |
320 | } | 320 | } |
321 | } | 321 | } |