On Mon, Mar 15, 2021 at 10:13:57PM +0100, Tobias Waldekranz wrote: > +static int mv88e6xxx_vtu_get(struct mv88e6xxx_chip *chip, u16 vid, > + struct mv88e6xxx_vtu_entry *entry) > { > + int err; > + > if (!chip->info->ops->vtu_getnext) > return -EOPNOTSUPP; > > - return chip->info->ops->vtu_getnext(chip, entry); > + entry->vid = vid - 1;
Should the vtu_get API not work with vid 0 as well? Shouldn't we initialize entry->vid to mv88e6xxx_max_vid(chip) in that case? > + entry->valid = false; > + > + err = chip->info->ops->vtu_getnext(chip, entry); > + > + if (entry->vid != vid) > + entry->valid = false; > + > + return err; > }