diff --git a/os/hal/src/serial_usb.c b/os/hal/src/serial_usb.c index 9b36be413..9cef45524 100644 --- a/os/hal/src/serial_usb.c +++ b/os/hal/src/serial_usb.c @@ -260,6 +260,11 @@ void sduConfigureHookI(USBDriver *usbp) { chIQResetI(&sdup->iqueue); chOQResetI(&sdup->oqueue); chnAddFlagsI(sdup, CHN_CONNECTED); + + /* Starts the first OUT transaction immediately.*/ + usbPrepareQueuedReceive(usbp, USB_CDC_DATA_AVAILABLE_EP, &sdup->iqueue, + usbp->epc[USB_CDC_DATA_AVAILABLE_EP]->out_maxsize); + usbStartReceiveI(usbp, USB_CDC_DATA_AVAILABLE_EP); } /** diff --git a/readme.txt b/readme.txt index 69b11ab14..c465f4acf 100644 --- a/readme.txt +++ b/readme.txt @@ -83,6 +83,8 @@ ***************************************************************************** *** 2.5.1 *** +- FIX: Fixed Data available event not generated in serial_usb driver (bug + 3567992). - NEW: Added VLE support to the Power Architecture GCC port. - NEW: Reorganized the Power Architecture GCC port along the lines of the ARMCMx port, now it can support multiple core types.