diff options
author | Sean Paul <seanpaul@chromium.org> | 2017-08-18 10:52:44 -0400 |
---|---|---|
committer | Sean Paul <seanpaul@chromium.org> | 2017-08-18 10:52:44 -0400 |
commit | 0e8841ec7ee5b1ffe416c3be7743985b1896ec00 (patch) | |
tree | 9e502f1f39c740ff7417e5078cbda6eedac1c572 /net/dsa/dsa2.c | |
parent | 36436f4e933b42616c8e9ba4907dccf1329cb318 (diff) | |
parent | 8824c751eb61ebffb053c291199932845bac88b4 (diff) | |
download | linux-0e8841ec7ee5b1ffe416c3be7743985b1896ec00.tar.bz2 |
Merge airlied/drm-next into drm-misc-next
Archit requested this backmerge to facilitate merging some patches
depending on changes between -rc2 & -rc5
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Diffstat (limited to 'net/dsa/dsa2.c')
-rw-r--r-- | net/dsa/dsa2.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c index 56e46090526b..c442051d5a55 100644 --- a/net/dsa/dsa2.c +++ b/net/dsa/dsa2.c @@ -509,21 +509,22 @@ static int dsa_cpu_parse(struct dsa_port *port, u32 index, dst->cpu_dp->netdev = ethernet_dev; } + /* Initialize cpu_port_mask now for drv->setup() + * to have access to a correct value, just like what + * net/dsa/dsa.c::dsa_switch_setup_one does. + */ + ds->cpu_port_mask |= BIT(index); + tag_protocol = ds->ops->get_tag_protocol(ds); dst->tag_ops = dsa_resolve_tag_protocol(tag_protocol); if (IS_ERR(dst->tag_ops)) { dev_warn(ds->dev, "No tagger for this switch\n"); + ds->cpu_port_mask &= ~BIT(index); return PTR_ERR(dst->tag_ops); } dst->rcv = dst->tag_ops->rcv; - /* Initialize cpu_port_mask now for drv->setup() - * to have access to a correct value, just like what - * net/dsa/dsa.c::dsa_switch_setup_one does. - */ - ds->cpu_port_mask |= BIT(index); - return 0; } |