diff mbox

[v2,2/2] dsa: mv88e6171: Fix tagging protocol/Kconfig

Message ID 1414187045-8326-3-git-send-email-andrew@lunn.ch
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Andrew Lunn Oct. 24, 2014, 9:44 p.m. UTC
The mv88e6171 can support two different tagging protocols, DSA and
EDSA. The switch driver structure only allows one protocol to be
enumerated, and DSA was chosen. However the Kconfig entry ensures the
EDSA tagging code is built. With a minimal configuration, we then end
up with a mismatch. The probe is successful, EDSA tagging is used, but
the switch is configured for DSA, resulting in mangled packets.

Change the switch driver structure to enumerate EDSA, fixing the
mismatch.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Fixes: 42f272539487 ("net: DSA: Marvell mv88e6171 switch driver")
---
 drivers/net/dsa/mv88e6171.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Florian Fainelli Oct. 24, 2014, 10:45 p.m. UTC | #1
On 10/24/2014 02:44 PM, Andrew Lunn wrote:
> The mv88e6171 can support two different tagging protocols, DSA and
> EDSA. The switch driver structure only allows one protocol to be
> enumerated, and DSA was chosen. However the Kconfig entry ensures the
> EDSA tagging code is built. With a minimal configuration, we then end
> up with a mismatch. The probe is successful, EDSA tagging is used, but
> the switch is configured for DSA, resulting in mangled packets.
> 
> Change the switch driver structure to enumerate EDSA, fixing the
> mismatch.
> 
> Signed-off-by: Andrew Lunn <andrew@lunn.ch>
> Fixes: 42f272539487 ("net: DSA: Marvell mv88e6171 switch driver")

Acked-by: Florian Fainelli <f.fainelli@gmail.com>

> ---
>  drivers/net/dsa/mv88e6171.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/dsa/mv88e6171.c b/drivers/net/dsa/mv88e6171.c
> index 1020a7af67cf..78d8e876f3aa 100644
> --- a/drivers/net/dsa/mv88e6171.c
> +++ b/drivers/net/dsa/mv88e6171.c
> @@ -395,7 +395,7 @@ static int mv88e6171_get_sset_count(struct dsa_switch *ds)
>  }
>  
>  struct dsa_switch_driver mv88e6171_switch_driver = {
> -	.tag_protocol		= DSA_TAG_PROTO_DSA,
> +	.tag_protocol		= DSA_TAG_PROTO_EDSA,
>  	.priv_size		= sizeof(struct mv88e6xxx_priv_state),
>  	.probe			= mv88e6171_probe,
>  	.setup			= mv88e6171_setup,
> 

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/dsa/mv88e6171.c b/drivers/net/dsa/mv88e6171.c
index 1020a7af67cf..78d8e876f3aa 100644
--- a/drivers/net/dsa/mv88e6171.c
+++ b/drivers/net/dsa/mv88e6171.c
@@ -395,7 +395,7 @@  static int mv88e6171_get_sset_count(struct dsa_switch *ds)
 }
 
 struct dsa_switch_driver mv88e6171_switch_driver = {
-	.tag_protocol		= DSA_TAG_PROTO_DSA,
+	.tag_protocol		= DSA_TAG_PROTO_EDSA,
 	.priv_size		= sizeof(struct mv88e6xxx_priv_state),
 	.probe			= mv88e6171_probe,
 	.setup			= mv88e6171_setup,