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;
> }