On 14/09/2016 12:39, John Crispin wrote:
> +static void
> +qca8k_fdb_add(struct dsa_switch *ds, int port,
> +           const struct switchdev_obj_port_fdb *fdb,
> +           struct switchdev_trans *trans)
> +{
> +     struct qca8k_priv *priv = qca8k_to_priv(ds);
> +     u16 port_mask = BIT(port);
> +     u16 vid = fdb->vid;
> +
> +     if (!vid)
> +             vid = 1;
> +
> +     qca8k_fdb_write(priv, vid, port_mask, fdb->addr,
> +                     QCA8K_ATU_STATUS_STATIC);
> +
> +     qca8k_fdb_access(priv, QCA8K_FDB_LOAD, -1);
> +}
> +
> +static int
> +qca8k_fdb_del(struct dsa_switch *ds, int port,
> +           const struct switchdev_obj_port_fdb *fdb)
> +{
> +     struct qca8k_priv *priv = qca8k_to_priv(ds);
> +     u16 port_mask = BIT(port);
> +
> +     qca8k_fdb_write(priv, fdb->vid, port_mask, fdb->addr, 0);
> +
> +     return qca8k_fdb_access(priv, QCA8K_FDB_PURGE, -1);
> +}
> +
while adding MDB support i noticed that

1) the code above is still not properly locked
2) i can unify the FDB and MDB code

i will send a V3 with those 2 changes tomorrow.

        John

Reply via email to