aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/Core/USBMode.h
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2012-08-28 20:09:14 +0000
committerDean Camera <dean@fourwalledcubicle.com>2012-08-28 20:09:14 +0000
commit44aea22949c40e76b8be6cb56acbd2b155043e6b (patch)
treece9537d7baf57caeb8c871b7d91abd0fa7693f6b /LUFA/Drivers/USB/Core/USBMode.h
parente225de8a8372fa2cc5dc1d2d782cf7af0f3c0f08 (diff)
downloadlufa-44aea22949c40e76b8be6cb56acbd2b155043e6b.tar.gz
lufa-44aea22949c40e76b8be6cb56acbd2b155043e6b.tar.bz2
lufa-44aea22949c40e76b8be6cb56acbd2b155043e6b.zip
Fixed logic hole breaking USB operations on a USB controller with only one supported USB mode and no USB_DEVICE_ONLY or USB_HOST_ONLY configuration token set.
Diffstat (limited to 'LUFA/Drivers/USB/Core/USBMode.h')
-rw-r--r--LUFA/Drivers/USB/Core/USBMode.h20
1 files changed, 7 insertions, 13 deletions
diff --git a/LUFA/Drivers/USB/Core/USBMode.h b/LUFA/Drivers/USB/Core/USBMode.h
index 7ae30bbcd..5de57ffb8 100644
--- a/LUFA/Drivers/USB/Core/USBMode.h
+++ b/LUFA/Drivers/USB/Core/USBMode.h
@@ -244,34 +244,28 @@
#define USB_CAN_BE_DEVICE
#endif
- #if (defined(USB_CAN_BE_DEVICE) && defined(USB_CAN_BE_HOST))
- #define USB_CAN_BE_BOTH
- #endif
-
- #if defined(USB_HOST_ONLY)
+ #if (defined(USB_HOST_ONLY) && defined(USB_DEVICE_ONLY))
+ #error USB_HOST_ONLY and USB_DEVICE_ONLY are mutually exclusive.
+ #elif defined(USB_HOST_ONLY)
#if !defined(USB_CAN_BE_HOST)
#error USB_HOST_ONLY is not available for the currently selected microcontroller model.
#else
#undef USB_CAN_BE_DEVICE
- #undef USB_CAN_BE_BOTH
#endif
- #endif
-
- #if defined(USB_DEVICE_ONLY)
+ #elif defined(USB_DEVICE_ONLY)
#if !defined(USB_CAN_BE_DEVICE)
#error USB_DEVICE_ONLY is not available for the currently selected microcontroller model.
#else
#undef USB_CAN_BE_HOST
- #undef USB_CAN_BE_BOTH
#endif
#endif
- #if (defined(USB_HOST_ONLY) && defined(USB_DEVICE_ONLY))
- #error USB_HOST_ONLY and USB_DEVICE_ONLY are mutually exclusive.
+ #if (defined(USB_CAN_BE_DEVICE) && defined(USB_CAN_BE_HOST))
+ #define USB_CAN_BE_BOTH
#endif
#if (!defined(USB_CAN_BE_DEVICE) && !defined(USB_CAN_BE_HOST))
- #error The currently selected device or architecture is not supported under the USB component of the library.
+ #error The currently selected device, USB mode or architecture is not supported.
#endif
#endif