Re: [PATCH v2 net-next v2 11/12] net: dsa: mv88e6xxx: add an SMI ops structure

From: Vivien Didelot
Date: Tue Jun 14 2016 - 18:26:53 EST


Hi Andrew,

Andrew Lunn <andrew@xxxxxxx> writes:

>> +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);
>> +};
>> +
>
> I think this API would be better if it used ps, not bus and sw_addr.
>
> The only problem is the very first read to get the switch ID. I would
> add one more layer in between, so that you can call the lowest level
> functions without having a ps structure.

That's why I keep it simple for the moment.

The low-level API using ps is now _mv88e6xxx_reg_{read,write}. I can
rename them to mv88e6xxx_smi_{read,write} in v3 or later.

Thanks,

Vivien