diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2010-08-09 10:20:10 +0000 |
---|---|---|
committer | Dean Camera <dean@fourwalledcubicle.com> | 2010-08-09 10:20:10 +0000 |
commit | 508e905d8d39c3968927aa2c1a45350f49452df1 (patch) | |
tree | 5778bfd686fd5acdc1b60f483005f824bbe81688 /Projects/AVRISP-MKII | |
parent | be520aed52239bd6091df4b3cdd816df8f0d4750 (diff) | |
download | lufa-508e905d8d39c3968927aa2c1a45350f49452df1.tar.gz lufa-508e905d8d39c3968927aa2c1a45350f49452df1.tar.bz2 lufa-508e905d8d39c3968927aa2c1a45350f49452df1.zip |
Removed complicated logic for the Endpoint_ConfigureEndpoint() function to use inlined or function called versions depending of if the given bank size is a compile time constant, as the compiler does a better job of optimizing with basic code.
Changed over all device demos to use a clearer algorithm for the configuring of the application's endpoints.
Diffstat (limited to 'Projects/AVRISP-MKII')
-rw-r--r-- | Projects/AVRISP-MKII/AVRISP-MKII.c | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/Projects/AVRISP-MKII/AVRISP-MKII.c b/Projects/AVRISP-MKII/AVRISP-MKII.c index 83b39ef43..8f27a9b22 100644 --- a/Projects/AVRISP-MKII/AVRISP-MKII.c +++ b/Projects/AVRISP-MKII/AVRISP-MKII.c @@ -90,25 +90,19 @@ void EVENT_USB_Device_Disconnect(void) /** Event handler for the library USB Configuration Changed event. */ void EVENT_USB_Device_ConfigurationChanged(void) { - /* Indicate USB connected and ready */ - LEDs_SetAllLEDs(LEDMASK_USB_READY); + bool ConfigSuccess = true; - /* Setup AVRISP data Endpoints */ - if (!(Endpoint_ConfigureEndpoint(AVRISP_DATA_OUT_EPNUM, EP_TYPE_BULK, - ENDPOINT_DIR_OUT, AVRISP_DATA_EPSIZE, - ENDPOINT_BANK_SINGLE))) - { - LEDs_SetAllLEDs(LEDMASK_USB_ERROR); - } + /* Setup AVRISP Data Endpoint(s) */ + ConfigSuccess &= Endpoint_ConfigureEndpoint(AVRISP_DATA_OUT_EPNUM, EP_TYPE_BULK, ENDPOINT_DIR_OUT, + AVRISP_DATA_EPSIZE, ENDPOINT_BANK_SINGLE); #if defined(LIBUSB_DRIVER_COMPAT) - if (!(Endpoint_ConfigureEndpoint(AVRISP_DATA_IN_EPNUM, EP_TYPE_BULK, - ENDPOINT_DIR_IN, AVRISP_DATA_EPSIZE, - ENDPOINT_BANK_SINGLE))) - { - LEDs_SetAllLEDs(LEDMASK_USB_ERROR); - } + ConfigSuccess &= Endpoint_ConfigureEndpoint(AVRISP_DATA_IN_EPNUM, EP_TYPE_BULK, ENDPOINT_DIR_IN, + AVRISP_DATA_EPSIZE, ENDPOINT_BANK_SINGLE); #endif + + /* Indicate endpoint configuration success or failure */ + LEDs_SetAllLEDs(ConfigSuccess ? LEDMASK_USB_READY : LEDMASK_USB_ERROR); } /** Processes incoming V2 Protocol commands from the host, returning a response when required. */ |