diff options
| author | David S. Miller <davem@davemloft.net> | 2017-10-15 04:30:07 +0300 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2017-10-15 04:30:07 +0300 |
| commit | 7f4e568dd13e094bb951753bbad23704198ecac3 (patch) | |
| tree | 15cf27ce252e47bef6d1ec6da67fceeeee4c48e9 /include | |
| parent | ec0d0987f084cdaf7b7ff8bd8f9f946e29fb8d94 (diff) | |
| parent | 841f4f24053acad69240c6ab7427a1d24bc29491 (diff) | |
| download | linux-7f4e568dd13e094bb951753bbad23704198ecac3.tar.xz | |
Merge branch 'dsa-remove-set_addr'
Vivien Didelot says:
====================
net: dsa: remove .set_addr
An Ethernet switch may support having a MAC address, which can be used
as the switch's source address in transmitted full-duplex Pause frames.
If a DSA switch supports the related .set_addr operation, the DSA core
sets the master's MAC address on the switch.
This won't make sense anymore in a multi-CPU ports system, because there
won't be a unique master device assigned to a switch tree.
Moreover this operation is confusing because it makes the user think
that it could be used to program the switch with the MAC address of the
CPU/management port such that MAC address learning can be disabled on
said port, but in fact, that's not how it is currently used.
To fix this, assign a random MAC address at setup time in the mv88e6060
and mv88e6xxx drivers before removing .set_addr completely from DSA.
Changes in v3:
- include fix for mv88e6060 switch MAC address setter.
Changes in v2:
- remove .set_addr implementation from drivers and use a random MAC.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
| -rw-r--r-- | include/net/dsa.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h index ce1d622734d7..2746741f74cf 100644 --- a/include/net/dsa.h +++ b/include/net/dsa.h @@ -291,7 +291,6 @@ struct dsa_switch_ops { enum dsa_tag_protocol (*get_tag_protocol)(struct dsa_switch *ds); int (*setup)(struct dsa_switch *ds); - int (*set_addr)(struct dsa_switch *ds, u8 *addr); u32 (*get_phy_flags)(struct dsa_switch *ds, int port); /* |
