Hi, I was looking at usbnet_get_link_ksettings() and it seems in hindsight that the idea it rests upon makes an assumption about the hardware that was at the time it was introduced was often true, but today isn't. struct usbnet contains a member struct mii_if_info. Why? That makes a pretty strong assumption about the hardware. Inparticular I see no way to sanely implement mdio_read() and mdio_write() on hardware this assumption does not fit. On this hardware usbnet_get_link_ksettings() does not do its job. So what is to be done? Technically it is a layering violation. Yet it is obviously useful to many drivers? Suggestions? Regards Oliver