aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28>2009-08-27 11:43:37 +0000
committerDean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28>2009-08-27 11:43:37 +0000
commita7b55da7475e76c961284e0054e4d7f0c2f8fc27 (patch)
treef67fdc47fb1a251574cee37eef5979754670c95b
parent840349af24afdc9a606d4adfe0b994777d349d7d (diff)
Add check to Pipe_IsEndpointBound() in the Mass Storage Host mode Class driver to ensure that multiple instances of the driver can be used on a single device with multiple Mass Storage interfaces.
git-svn-id: http://lufa-lib.googlecode.com/svn/trunk@786 d5102386-fcda-11dd-9fdb-3debd5008f28
-rw-r--r--LUFA/Drivers/USB/Class/Host/MassStorage.c7
-rw-r--r--LUFA/ManPages/FutureChanges.txt1
2 files changed, 6 insertions, 2 deletions
diff --git a/LUFA/Drivers/USB/Class/Host/MassStorage.c b/LUFA/Drivers/USB/Class/Host/MassStorage.c
index 1f66aa86..ba281cfa 100644
--- a/LUFA/Drivers/USB/Class/Host/MassStorage.c
+++ b/LUFA/Drivers/USB/Class/Host/MassStorage.c
@@ -113,8 +113,11 @@ static uint8_t DComp_NextInterfaceBulkDataEndpoint(void* CurrentDescriptor)
uint8_t EndpointType = (DESCRIPTOR_CAST(CurrentDescriptor,
USB_Descriptor_Endpoint_t).Attributes & EP_TYPE_MASK);
- if (EndpointType == EP_TYPE_BULK)
- return DESCRIPTOR_SEARCH_Found;
+ if ((EndpointType == EP_TYPE_BULK) &&
+ (!(Pipe_IsEndpointBound(CurrentEndpoint->EndpointAddress))))
+ {
+ return DESCRIPTOR_SEARCH_Found;
+ }
}
else if (DESCRIPTOR_TYPE(CurrentDescriptor) == DTYPE_Interface)
{
diff --git a/LUFA/ManPages/FutureChanges.txt b/LUFA/ManPages/FutureChanges.txt
index 639e4eee..ae592fde 100644
--- a/LUFA/ManPages/FutureChanges.txt
+++ b/LUFA/ManPages/FutureChanges.txt
@@ -12,6 +12,7 @@
* or post your suggestion as an enhancement request to the project bug tracker.
*
* <b>Targeted for This Release:</b>
+ * - Simplify Mass Storage Host LowLevel SCSI demo
* - Finish Host Mode Class Drivers
* ( ) Audio
* (C) CDC