Explorar el Código

get pass set address

hathach hace 13 años
padre
commit
d55f9ecef1
Se han modificado 2 ficheros con 3 adiciones y 2 borrados
  1. 2 1
      tinyusb/device/dcd_lpc175x_6x.c
  2. 1 1
      tinyusb/device/usbd.c

+ 2 - 1
tinyusb/device/dcd_lpc175x_6x.c

@@ -126,7 +126,8 @@ void endpoint_control_isr(uint8_t coreid)
       usbd_isr(0, TUSB_EVENT_SETUP_RECEIVED);
     }else
     {
-      //ASSERT(false, (void) 0); // not current supported
+       // RxPLen should be zero for zero-length status phase. Current not support any out control with data yet
+      ASSERT(LPC_USB->USBRxPLen == 0, (void) 0);
     }
     sie_command_write(SIE_CMDCODE_ENDPOINT_SELECT+0, 0, 0);
     sie_command_write(SIE_CMDCODE_BUFFER_CLEAR, 0, 0);

+ 1 - 1
tinyusb/device/usbd.c

@@ -109,13 +109,13 @@ void usbd_setup_received(uint8_t coreid)
     case TUSB_REQUEST_SET_ADDRESS:
       p_device->address = (uint8_t) p_device->setup_packet.wValue;
       dcd_device_set_address(coreid, p_device->address);
+      dcd_pipe_control_write_zero_length(coreid);
     break;
 
     default:
     return;
   }
 
-//  dcd_pipe_control_write_zero_length(coreid);
 }
 
 //--------------------------------------------------------------------+