X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/33a018474913701fa9ef8e962acf58accd1184d2..f1076ac4d6e56bff7fb6d2126746af1108211370:/Demos/Device/LowLevel/MassStorage/MassStorage.c?ds=sidebyside diff --git a/Demos/Device/LowLevel/MassStorage/MassStorage.c b/Demos/Device/LowLevel/MassStorage/MassStorage.c index 62c7f21da..f0984a2b3 100644 --- a/Demos/Device/LowLevel/MassStorage/MassStorage.c +++ b/Demos/Device/LowLevel/MassStorage/MassStorage.c @@ -106,17 +106,23 @@ void EVENT_USB_Disconnect(void) */ void EVENT_USB_ConfigurationChanged(void) { - /* Setup Mass Storage In and Out Endpoints */ - Endpoint_ConfigureEndpoint(MASS_STORAGE_IN_EPNUM, EP_TYPE_BULK, - ENDPOINT_DIR_IN, MASS_STORAGE_IO_EPSIZE, - ENDPOINT_BANK_DOUBLE); - - Endpoint_ConfigureEndpoint(MASS_STORAGE_OUT_EPNUM, EP_TYPE_BULK, - ENDPOINT_DIR_OUT, MASS_STORAGE_IO_EPSIZE, - ENDPOINT_BANK_DOUBLE); - /* Indicate USB connected and ready */ LEDs_SetAllLEDs(LEDMASK_USB_READY); + + /* Setup Mass Storage In and Out Endpoints */ + if (!(Endpoint_ConfigureEndpoint(MASS_STORAGE_IN_EPNUM, EP_TYPE_BULK, + ENDPOINT_DIR_IN, MASS_STORAGE_IO_EPSIZE, + ENDPOINT_BANK_DOUBLE))) + { + LEDs_SetAllLEDs(LEDMASK_USB_ERROR); + } + + if (!(Endpoint_ConfigureEndpoint(MASS_STORAGE_OUT_EPNUM, EP_TYPE_BULK, + ENDPOINT_DIR_OUT, MASS_STORAGE_IO_EPSIZE, + ENDPOINT_BANK_DOUBLE))) + { + LEDs_SetAllLEDs(LEDMASK_USB_ERROR); + } } /** Event handler for the USB_UnhandledControlPacket event. This is used to catch standard and class specific @@ -212,9 +218,6 @@ void MassStorage_Task(void) Endpoint_ClearStall(); Endpoint_SelectEndpoint(MASS_STORAGE_IN_EPNUM); Endpoint_ClearStall(); - - /* Clear the abort transfer flag */ - IsMassStoreReset = false; } /* Indicate ready */ @@ -226,6 +229,9 @@ void MassStorage_Task(void) LEDs_SetAllLEDs(LEDMASK_USB_ERROR); } } + + /* Clear the abort transfer flag */ + IsMassStoreReset = false; } }