> +struct mv88e6xxx_smi_ops { > + int (*read)(struct mii_bus *bus, int sw_addr, > + int addr, int reg, u16 *val); > + int (*write)(struct mii_bus *bus, int sw_addr, > + int addr, int reg, u16 val); > +};
Hi Vivien I still think this API should be based on ps. With the way you have restructured probe, this now also works, there is no longer a read without PS in order to get the device ID. Also, think about the case of reading/writing registers via Ethernet frames. Such functions would need ps, bus and sw_addr is not useful. Andrew