> > to preserve the legacy behavior rather than changing the behavior of > > every usbnet driver all at once? Like make a new > > usbnet_get_link_ksettings_nonmdio and update only cdc_ncm to use it? > > Then I would have to touch them all. The problem is that the MDIO > stuff really is pretty much a layering violation. It should never > have been default. But now it is. I don't understand this. Your 0001 patch changes the behavior of usbnet_get_link_ksettings() and you have to touch all of the 8 drivers that use it if you don't want to change their behavior. If you keep the old usbnet_get_link_ksettings() and add usbnet_get_link_ksettings_nonmdio() then you can just update cdc_ncm to start with, and then gradually migrate other drivers. And eventually fix the layering violation and get rid of the legacy function when the whole transition is done. - R.