> What is less clear to me is what do we do about uAPI / core changes. I would differentiate between core change and core additions. If there is very limited firmware on this device, i assume Linux is managing the SFP cage, and to some extend the PCS. Extending the core to handle these at higher speeds than currently supported would be one such core addition. I've no problem with this. And i doubt it will be a single NIC using such additions for too long. It looks like ClearFog CX LX2 could make use of such extensions as well, and there are probably other boards and devices, maybe the Zynq 7000? > Is my reading correct? Does anyone have an opinion on whether we should > try to dig more into this question prior to merging the driver, and > set some ground rules? Or proceed and learn by doing? I'm not too keen on keeping potentially shareable code in the driver just because of UEFI. It has long been the norm that you should not have wrappers so you can reuse code in different OSes. And UEFI is just another OS. So i really would like to see a Linux I2C bus master driver, a linux GPIO driver if appropriate, and using phylink, just as i've pushed wangxun to do that, and to some extend nvidia with their GPIO controller embedded in their NIC. The nice thing is, the developers for wangxun has mostly solved all this for a PCIe device, so their code can be copied. Do we need to set some ground rules? No. I can give similar feedback as i gave the wangxun developers, if Linux subsystems are not used appropriately. Andrew