aboutsummaryrefslogtreecommitdiffstats
path: root/Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2010-01-25 11:50:41 +0000
committerDean Camera <dean@fourwalledcubicle.com>2010-01-25 11:50:41 +0000
commit431db89b00408197976d653d89d15eeef8172e1b (patch)
tree8900ab7368cdd124b725a65da47407f96fd46053 /Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c
parent74b6993d66d70c323beb4d7eccf5b8f45bf6d31f (diff)
downloadlufa-431db89b00408197976d653d89d15eeef8172e1b.tar.gz
lufa-431db89b00408197976d653d89d15eeef8172e1b.tar.bz2
lufa-431db89b00408197976d653d89d15eeef8172e1b.zip
Fixed CDC and RNDIS host demos and class drivers - bidirectional endpoints should use two seperate pipes, not one half-duplex pipe.
Diffstat (limited to 'Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c')
-rw-r--r--Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c b/Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c
index 7078f5e51..5a173d6f4 100644
--- a/Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c
+++ b/Demos/Host/LowLevel/RNDISEthernetHost/ConfigDescriptor.c
@@ -145,10 +145,6 @@ uint8_t ProcessConfigurationDescriptor(void)
/* Check if the endpoint is a bulk IN or bulk OUT endpoint */
if (EndpointData->EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
{
- /* Kill the configured OUT pipe if the data endpoints are bidirectional */
- if (Pipe_IsEndpointBound(EndpointData->EndpointAddress))
- Pipe_DisablePipe();
-
/* Configure the data IN pipe */
Pipe_ConfigurePipe(RNDIS_DATAPIPE_IN, EP_TYPE_BULK, PIPE_TOKEN_IN,
EndpointData->EndpointAddress, EndpointData->EndpointSize, PIPE_BANK_SINGLE);
@@ -158,13 +154,9 @@ uint8_t ProcessConfigurationDescriptor(void)
}
else
{
- /* Only configure the OUT data pipe if the data endpoints have not shown to be bidirectional */
- if (!(Pipe_IsEndpointBound(EndpointData->EndpointAddress)))
- {
- /* Configure the data OUT pipe */
- Pipe_ConfigurePipe(RNDIS_DATAPIPE_OUT, EP_TYPE_BULK, PIPE_TOKEN_OUT,
- EndpointData->EndpointAddress, EndpointData->EndpointSize, PIPE_BANK_SINGLE);
- }
+ /* Configure the data OUT pipe */
+ Pipe_ConfigurePipe(RNDIS_DATAPIPE_OUT, EP_TYPE_BULK, PIPE_TOKEN_OUT,
+ EndpointData->EndpointAddress, EndpointData->EndpointSize, PIPE_BANK_SINGLE);
/* Set the flag indicating that the data OUT pipe has been found */
FoundEndpoints |= (1 << RNDIS_DATAPIPE_OUT);