aboutsummaryrefslogtreecommitdiffstats
path: root/Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2011-05-18 14:33:34 +0000
committerDean Camera <dean@fourwalledcubicle.com>2011-05-18 14:33:34 +0000
commit9d733d44b402ce33c3c41e45b497c2f92be393f5 (patch)
tree2ddf8b9b25e696ec4a2ab30c181f253005036be7 /Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c
parent41de1d1dab863c7b769f6e492c36c115994c403d (diff)
downloadlufa-9d733d44b402ce33c3c41e45b497c2f92be393f5.tar.gz
lufa-9d733d44b402ce33c3c41e45b497c2f92be393f5.tar.bz2
lufa-9d733d44b402ce33c3c41e45b497c2f92be393f5.zip
Add new RNDIS_Host_IsPacketReceived(), RNDIS_Device_ReadPacket() and RNDIS_Device_WritePacket() functions to the Device RNDIS Class Driver.
Modify RNDIS demos to suit the simplified Ethernet_Frame_Info_t structure.
Diffstat (limited to 'Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c')
-rw-r--r--Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c b/Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c
index cc5f9e302..9ad26dd2f 100644
--- a/Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c
+++ b/Demos/Device/LowLevel/RNDISEthernet/RNDISEthernet.c
@@ -204,7 +204,7 @@ void RNDIS_Task(void)
Endpoint_SelectEndpoint(CDC_RX_EPNUM);
/* Check if the data OUT endpoint contains data, and that the IN buffer is empty */
- if (Endpoint_IsOUTReceived() && !(FrameIN.FrameInBuffer))
+ if (Endpoint_IsOUTReceived() && !(FrameIN.FrameLength))
{
/* Read in the packet message header */
Endpoint_Read_Stream_LE(&RNDISPacketHeader, sizeof(RNDIS_Packet_Message_t), NULL);
@@ -224,16 +224,13 @@ void RNDIS_Task(void)
/* Store the size of the Ethernet frame */
FrameIN.FrameLength = RNDISPacketHeader.DataLength;
-
- /* Indicate Ethernet IN buffer full */
- FrameIN.FrameInBuffer = true;
}
/* Select the data IN endpoint */
Endpoint_SelectEndpoint(CDC_TX_EPNUM);
/* Check if the data IN endpoint is ready for more data, and that the IN buffer is full */
- if (Endpoint_IsINReady() && FrameOUT.FrameInBuffer)
+ if (Endpoint_IsINReady() && FrameOUT.FrameLength)
{
/* Clear the packet header with all 0s so that the relevant fields can be filled */
memset(&RNDISPacketHeader, 0, sizeof(RNDIS_Packet_Message_t));
@@ -254,7 +251,7 @@ void RNDIS_Task(void)
Endpoint_ClearIN();
/* Indicate Ethernet OUT buffer no longer full */
- FrameOUT.FrameInBuffer = false;
+ FrameOUT.FrameLength = 0;
}
}
}
@@ -273,7 +270,7 @@ void Ethernet_Task(void)
return;
/* Check if a frame has been written to the IN frame buffer */
- if (FrameIN.FrameInBuffer)
+ if (FrameIN.FrameLength)
{
/* Indicate packet processing started */
LEDs_SetAllLEDs(LEDMASK_USB_BUSY);