On Wed, Apr 26, 2017 at 11:53:26AM -0400, Vivien Didelot wrote: > Even though every switch model has a different way to access the VTU > Data bits, the base implementation of the VTU GetNext operation remains > the same: wait, write the first VID to iterate from, start the > operation, and read the next VID. > > Move this generic implementation into global_vtu.c and abstract the
global1_vtu.c > +int mv88e6xxx_g1_vtu_getnext(struct mv88e6xxx_chip *chip, > + struct mv88e6xxx_vtu_entry *entry) > +{ > + int err; > + > + err = mv88e6xxx_g1_vtu_op_wait(chip); > + if (err) > + return err; > + > + /* Write the VID to iterate from only once */ > + if (!entry->valid) { > + err = mv88e6xxx_g1_vtu_vid_write(chip, entry); > + if (err) > + return err; > + } Please could you add a bigger comment. It is not clear why you write it, when it is invalid. That just seems wrong, and needs a good comment to explain why it is correct, more than what you currently have as a comment. Thanks Andrew