mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-07 23:11:27 +00:00
net: dsa: change tag_protocol to an enum
Now that we introduced an additional multiplexing/demultiplexing layer
with commit 3e8a72d1da
("net: dsa: reduce number of protocol hooks")
that lives within the DSA code, we no longer need to have a given switch
driver tag_protocol be an actual ethertype value, instead, we can
replace it with an enum: dsa_tag_protocol.
Do this replacement in the drivers, which allows us to get rid of the
cpu_to_be16()/htons() dance, and remove ETH_P_BRCMTAG since we do not
need it anymore.
Suggested-by: Alexander Duyck <alexander.duyck@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c55542983e
commit
ac7a04c33d
7 changed files with 19 additions and 17 deletions
|
@ -19,10 +19,13 @@
|
|||
#include <linux/phy.h>
|
||||
#include <linux/phy_fixed.h>
|
||||
|
||||
/* Not an official ethertype value, used only internally for DSA
|
||||
* demultiplexing
|
||||
*/
|
||||
#define ETH_P_BRCMTAG (ETH_P_XDSA + 1)
|
||||
enum dsa_tag_protocol {
|
||||
DSA_TAG_PROTO_NONE = 0,
|
||||
DSA_TAG_PROTO_DSA,
|
||||
DSA_TAG_PROTO_TRAILER,
|
||||
DSA_TAG_PROTO_EDSA,
|
||||
DSA_TAG_PROTO_BRCM,
|
||||
};
|
||||
|
||||
#define DSA_MAX_SWITCHES 4
|
||||
#define DSA_MAX_PORTS 12
|
||||
|
@ -89,7 +92,7 @@ struct dsa_switch_tree {
|
|||
*/
|
||||
struct net_device *master_netdev;
|
||||
const struct dsa_device_ops *ops;
|
||||
__be16 tag_protocol;
|
||||
enum dsa_tag_protocol tag_protocol;
|
||||
|
||||
/*
|
||||
* The switch and port to which the CPU is attached.
|
||||
|
@ -166,7 +169,7 @@ static inline u8 dsa_upstream_port(struct dsa_switch *ds)
|
|||
struct dsa_switch_driver {
|
||||
struct list_head list;
|
||||
|
||||
__be16 tag_protocol;
|
||||
enum dsa_tag_protocol tag_protocol;
|
||||
int priv_size;
|
||||
|
||||
/*
|
||||
|
@ -215,7 +218,7 @@ static inline void *ds_to_priv(struct dsa_switch *ds)
|
|||
|
||||
static inline bool dsa_uses_tagged_protocol(struct dsa_switch_tree *dst)
|
||||
{
|
||||
return dst->tag_protocol != 0;
|
||||
return dst->tag_protocol != DSA_TAG_PROTO_NONE;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue