[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190129231217.GH13334@lunn.ch>
Date: Wed, 30 Jan 2019 00:12:17 +0100
From: Andrew Lunn <andrew@...n.ch>
To: Pavel Machek <pavel@....cz>
Cc: netdev@...r.kernel.org, f.fainelli@...il.com, buytenh@...vell.com,
buytenh@...tstofly.org, nico@...vell.com
Subject: Re: mv88e6xxx -- DSA support for Marvell 88e6065 switch (and maybe
88e6060?)
> Is someone is interested in getting 6060 to work with mv88e6xxx?
Vivien is.
I also have a set of patches which modernize the driver. That might be
a step towards merging it in.
> @@ -2126,6 +2146,7 @@ static int mv88e6xxx_setup_egress_floods(struct mv88e6xxx_chip *chip, int port)
>
> /* Upstream ports flood frames with unknown unicast or multicast DA */
> flood = dsa_is_cpu_port(ds, port) || dsa_is_dsa_port(ds, port);
> + flood = 1; /* This is strange, but original driver also sets flood everywhere */
This might be because the driver did not support hardware offload.
What happens if you don't have this?
> +static const struct mv88e6xxx_ops mv88e6065_ops = {
> + /* MV88E6XXX_FAMILY_6095 */ /* Here */
> + //.ieee_pri_map = mv88e6085_g1_ieee_pri_map, /* FIXME */
> + // .ip_pri_map = mv88e6085_g1_ip_pri_map, /* FIXME */
> + // .set_switch_mac = mv88e6xxx_g1_set_switch_mac, /* FIXME */
What you should do is see if the hardware supports these functions. If
it does not, simply leave it out of mv88e6065_ops. If it does have the
functionality, but needs a new implementation, add a mv88e6065_
version. In theory, nearly everything is optional. So you can start
simple and then add features.
Andrew
Powered by blists - more mailing lists