Skip to content
Snippets Groups Projects
Commit ea743970 authored by Dean Camera's avatar Dean Camera
Browse files

Fixed RNDISEthernet not working under Linux due to Linux requiring an...

Fixed RNDISEthernet not working under Linux due to Linux requiring an "optional" request which was unhandled.
parent e0985b99
No related branches found
No related tags found
No related merge requests found
...@@ -50,6 +50,7 @@ static char PROGMEM AdapterVendorDescription[] = "LUFA RNDIS Adapter"; ...@@ -50,6 +50,7 @@ static char PROGMEM AdapterVendorDescription[] = "LUFA RNDIS Adapter";
static const uint32_t PROGMEM AdapterSupportedOIDList[] = static const uint32_t PROGMEM AdapterSupportedOIDList[] =
{ {
OID_GEN_SUPPORTED_LIST, OID_GEN_SUPPORTED_LIST,
OID_GEN_PHYSICAL_MEDIUM,
OID_GEN_HARDWARE_STATUS, OID_GEN_HARDWARE_STATUS,
OID_GEN_MEDIA_SUPPORTED, OID_GEN_MEDIA_SUPPORTED,
OID_GEN_MEDIA_IN_USE, OID_GEN_MEDIA_IN_USE,
...@@ -252,6 +253,13 @@ static bool ProcessNDISQuery(uint32_t OId, void* QueryData, uint16_t QuerySize, ...@@ -252,6 +253,13 @@ static bool ProcessNDISQuery(uint32_t OId, void* QueryData, uint16_t QuerySize,
/* Copy the list of supported NDIS OID tokens to the response buffer */ /* Copy the list of supported NDIS OID tokens to the response buffer */
memcpy_P(ResponseData, AdapterSupportedOIDList, sizeof(AdapterSupportedOIDList)); memcpy_P(ResponseData, AdapterSupportedOIDList, sizeof(AdapterSupportedOIDList));
return true;
case OID_GEN_PHYSICAL_MEDIUM:
*ResponseSize = sizeof(uint32_t);
/* Indicate that the device is a true ethernet link */
*((uint32_t*)ResponseData) = 0;
return true; return true;
case OID_GEN_HARDWARE_STATUS: case OID_GEN_HARDWARE_STATUS:
*ResponseSize = sizeof(uint32_t); *ResponseSize = sizeof(uint32_t);
......
...@@ -82,6 +82,7 @@ ...@@ -82,6 +82,7 @@
#define OID_GEN_CURRENT_PACKET_FILTER 0x0001010EUL #define OID_GEN_CURRENT_PACKET_FILTER 0x0001010EUL
#define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111UL #define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111UL
#define OID_GEN_MEDIA_CONNECT_STATUS 0x00010114UL #define OID_GEN_MEDIA_CONNECT_STATUS 0x00010114UL
#define OID_GEN_PHYSICAL_MEDIUM 0x00010202UL
#define OID_GEN_XMIT_OK 0x00020101UL #define OID_GEN_XMIT_OK 0x00020101UL
#define OID_GEN_RCV_OK 0x00020102UL #define OID_GEN_RCV_OK 0x00020102UL
#define OID_GEN_XMIT_ERROR 0x00020103UL #define OID_GEN_XMIT_ERROR 0x00020103UL
......
...@@ -10,6 +10,8 @@ ...@@ -10,6 +10,8 @@
* *
* - Fixed bug in RNDISEthernet and DualCDC demos not using the correct USB_ControlRequest structure for control request data * - Fixed bug in RNDISEthernet and DualCDC demos not using the correct USB_ControlRequest structure for control request data
* - Fixed documentation showing incorrect USB mode support on the supported AVRs list * - Fixed documentation showing incorrect USB mode support on the supported AVRs list
* - Fixed RNDISEthernet not working under Linux due to Linux requiring an "optional" request which was unhandled
*
* *
* \section Sec_ChangeLog090510 Version 090510 * \section Sec_ChangeLog090510 Version 090510
* *
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment