>> The only clue would seem to be those comments you made about the >> host only supporting a single CDC Ethernet implementation, with >> specific endpoint assignments. That's sloppy and stupid coding, >> but you should be able to hack the Linux code so it makes the same >> assignments ... purely as a workaround for the host bug, whereby >> it's ignoring the descriptors provided by the peripheral. > > I have the Linux Host-side driver for this very chip with me (given > by the vendor)...will that help in debugging the problem further?? > > Like, can it help explain how the host might be interpreting the EP > descriptors > that the ether gadget driver is sending while enumerating? I also noted that the gadget driver was responding to a get_config request, from the host, by advertising bNumInterfaces as 2 in the ether config ("eth_config"). Since the data-sheet of the chip mentions the device supports only 1 interface, I thought I'll force the driver to do the same by making it behave as a CDC subset (that supports only 1 interface). But that sadly did not help! :/ Here's the usb requests logged during enumeration...i'd put my own debugs in the eth_setup() path. The number in brackets is the value in HEX. [32275.703125] __________USB control req___________ [32275.703125] bRequest(06) - Get descriptor [32275.703125] bRequestType(80) - IN Standard [32275.703125] wValue(0100) - Device [32275.703125] wLength(0008) [32275.703125] ____________________________________ [32275.703125] [32275.703125] __________USB control req___________ [32275.703125] bRequest(06) - Get descriptor [32275.703125] bRequestType(80) - IN Standard [32275.703125] wValue(0100) - Device [32275.703125] wLength(0012) [32275.703125] ____________________________________ [32275.703125] [32275.703125] __________USB control req___________ [32275.703125] bRequest(06) - Get descriptor [32275.703125] bRequestType(80) - IN Standard [32275.703125] wValue(0200) - Configuration [32275.703125] wLength(0009) [32275.703125] ____________________________________ [32275.703125] [32275.703125] [32275.703125] __________USB control req___________ [32275.703125] bRequest(06) - Get descriptor [32275.703125] bRequestType(80) - IN Standard [32275.703125] wValue(0200) - Configuration [32275.703125] wLength(0009) [32275.703125] ____________________________________ [32275.703125] [32275.703125] [32275.710937] __________USB control req___________ [32275.710937] bRequest(06) - Get descriptor [32275.710937] bRequestType(80) - IN Standard [32275.710937] wValue(0300) - String [32275.710937] wLength(0002) [32275.710937] ____________________________________ [32275.710937] [32275.710937] __________USB control req___________ [32275.710937] bRequest(06) - Get descriptor [32275.710937] bRequestType(80) - IN Standard [32275.710937] wValue(0300) - String [32275.710937] wLength(0004) [32275.710937] ____________________________________ [32275.710937] [32275.710937] __________USB control req___________ [32275.710937] bRequest(06) - Get descriptor [32275.710937] bRequestType(80) - IN Standard [32275.710937] wValue(0301) - String [32275.710937] wLength(0002) [32275.710937] ____________________________________ [32275.710937] [32275.710937] __________USB control req___________ [32275.710937] bRequest(06) - Get descriptor [32275.710937] bRequestType(80) - IN Standard [32275.710937] wValue(0301) - String [32275.710937] wLength(003a) [32275.710937] ____________________________________ [32275.710937] [32275.710937] __________USB control req___________ [32275.710937] bRequest(06) - Get descriptor [32275.710937] bRequestType(80) - IN Standard [32275.710937] wValue(0302) - String [32275.710937] wLength(0002) [32275.710937] ____________________________________ [32275.710937] [32275.710937] __________USB control req___________ [32275.710937] bRequest(06) - Get descriptor [32275.710937] bRequestType(80) - IN Standard [32275.710937] wValue(0302) - String [32275.710937] wLength(0020) [32275.710937] ____________________________________ [32275.710937] [32275.710937] __________USB control req___________ [32275.710937] bRequest(09) - Set configuration [32275.710937] bRequestType(00) - OUT Standard [32275.710937] wValue(0001) [32275.710937] wLength(0000) [32275.710937] ____________________________________ Does this show a problem? Thanks for your time. Regards, -mandeep > > Thanks again, > -mandeep > >> >> - Dave >> > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html