dsa.h (98817a84ff1c755c347ac633ff017a623a631fad) dsa.h (efd7fe68f0c6c9649757bf80cbc382fd21e764c9)
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * include/net/dsa.h - Driver for Distributed Switch Architecture switch chips
4 * Copyright (c) 2008-2009 Marvell Semiconductor
5 */
6
7#ifndef __LINUX_NET_DSA_H
8#define __LINUX_NET_DSA_H

--- 30 unchanged lines hidden (view full) ---

39#define DSA_TAG_PROTO_MTK_VALUE 9
40#define DSA_TAG_PROTO_QCA_VALUE 10
41#define DSA_TAG_PROTO_TRAILER_VALUE 11
42#define DSA_TAG_PROTO_8021Q_VALUE 12
43#define DSA_TAG_PROTO_SJA1105_VALUE 13
44#define DSA_TAG_PROTO_KSZ8795_VALUE 14
45#define DSA_TAG_PROTO_OCELOT_VALUE 15
46#define DSA_TAG_PROTO_AR9331_VALUE 16
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * include/net/dsa.h - Driver for Distributed Switch Architecture switch chips
4 * Copyright (c) 2008-2009 Marvell Semiconductor
5 */
6
7#ifndef __LINUX_NET_DSA_H
8#define __LINUX_NET_DSA_H

--- 30 unchanged lines hidden (view full) ---

39#define DSA_TAG_PROTO_MTK_VALUE 9
40#define DSA_TAG_PROTO_QCA_VALUE 10
41#define DSA_TAG_PROTO_TRAILER_VALUE 11
42#define DSA_TAG_PROTO_8021Q_VALUE 12
43#define DSA_TAG_PROTO_SJA1105_VALUE 13
44#define DSA_TAG_PROTO_KSZ8795_VALUE 14
45#define DSA_TAG_PROTO_OCELOT_VALUE 15
46#define DSA_TAG_PROTO_AR9331_VALUE 16
47#define DSA_TAG_PROTO_RTL4_A_VALUE 17
47
48enum dsa_tag_protocol {
49 DSA_TAG_PROTO_NONE = DSA_TAG_PROTO_NONE_VALUE,
50 DSA_TAG_PROTO_BRCM = DSA_TAG_PROTO_BRCM_VALUE,
51 DSA_TAG_PROTO_BRCM_PREPEND = DSA_TAG_PROTO_BRCM_PREPEND_VALUE,
52 DSA_TAG_PROTO_DSA = DSA_TAG_PROTO_DSA_VALUE,
53 DSA_TAG_PROTO_EDSA = DSA_TAG_PROTO_EDSA_VALUE,
54 DSA_TAG_PROTO_GSWIP = DSA_TAG_PROTO_GSWIP_VALUE,
55 DSA_TAG_PROTO_KSZ9477 = DSA_TAG_PROTO_KSZ9477_VALUE,
56 DSA_TAG_PROTO_KSZ9893 = DSA_TAG_PROTO_KSZ9893_VALUE,
57 DSA_TAG_PROTO_LAN9303 = DSA_TAG_PROTO_LAN9303_VALUE,
58 DSA_TAG_PROTO_MTK = DSA_TAG_PROTO_MTK_VALUE,
59 DSA_TAG_PROTO_QCA = DSA_TAG_PROTO_QCA_VALUE,
60 DSA_TAG_PROTO_TRAILER = DSA_TAG_PROTO_TRAILER_VALUE,
61 DSA_TAG_PROTO_8021Q = DSA_TAG_PROTO_8021Q_VALUE,
62 DSA_TAG_PROTO_SJA1105 = DSA_TAG_PROTO_SJA1105_VALUE,
63 DSA_TAG_PROTO_KSZ8795 = DSA_TAG_PROTO_KSZ8795_VALUE,
64 DSA_TAG_PROTO_OCELOT = DSA_TAG_PROTO_OCELOT_VALUE,
65 DSA_TAG_PROTO_AR9331 = DSA_TAG_PROTO_AR9331_VALUE,
48
49enum dsa_tag_protocol {
50 DSA_TAG_PROTO_NONE = DSA_TAG_PROTO_NONE_VALUE,
51 DSA_TAG_PROTO_BRCM = DSA_TAG_PROTO_BRCM_VALUE,
52 DSA_TAG_PROTO_BRCM_PREPEND = DSA_TAG_PROTO_BRCM_PREPEND_VALUE,
53 DSA_TAG_PROTO_DSA = DSA_TAG_PROTO_DSA_VALUE,
54 DSA_TAG_PROTO_EDSA = DSA_TAG_PROTO_EDSA_VALUE,
55 DSA_TAG_PROTO_GSWIP = DSA_TAG_PROTO_GSWIP_VALUE,
56 DSA_TAG_PROTO_KSZ9477 = DSA_TAG_PROTO_KSZ9477_VALUE,
57 DSA_TAG_PROTO_KSZ9893 = DSA_TAG_PROTO_KSZ9893_VALUE,
58 DSA_TAG_PROTO_LAN9303 = DSA_TAG_PROTO_LAN9303_VALUE,
59 DSA_TAG_PROTO_MTK = DSA_TAG_PROTO_MTK_VALUE,
60 DSA_TAG_PROTO_QCA = DSA_TAG_PROTO_QCA_VALUE,
61 DSA_TAG_PROTO_TRAILER = DSA_TAG_PROTO_TRAILER_VALUE,
62 DSA_TAG_PROTO_8021Q = DSA_TAG_PROTO_8021Q_VALUE,
63 DSA_TAG_PROTO_SJA1105 = DSA_TAG_PROTO_SJA1105_VALUE,
64 DSA_TAG_PROTO_KSZ8795 = DSA_TAG_PROTO_KSZ8795_VALUE,
65 DSA_TAG_PROTO_OCELOT = DSA_TAG_PROTO_OCELOT_VALUE,
66 DSA_TAG_PROTO_AR9331 = DSA_TAG_PROTO_AR9331_VALUE,
67 DSA_TAG_PROTO_RTL4_A = DSA_TAG_PROTO_RTL4_A_VALUE,
66};
67
68struct packet_type;
69struct dsa_switch;
70
71struct dsa_device_ops {
72 struct sk_buff *(*xmit)(struct sk_buff *skb, struct net_device *dev);
73 struct sk_buff *(*rcv)(struct sk_buff *skb, struct net_device *dev,

--- 65 unchanged lines hidden (view full) ---

139/* TC mirroring entry */
140struct dsa_mall_mirror_tc_entry {
141 u8 to_local_port;
142 bool ingress;
143};
144
145/* TC port policer entry */
146struct dsa_mall_policer_tc_entry {
68};
69
70struct packet_type;
71struct dsa_switch;
72
73struct dsa_device_ops {
74 struct sk_buff *(*xmit)(struct sk_buff *skb, struct net_device *dev);
75 struct sk_buff *(*rcv)(struct sk_buff *skb, struct net_device *dev,

--- 65 unchanged lines hidden (view full) ---

141/* TC mirroring entry */
142struct dsa_mall_mirror_tc_entry {
143 u8 to_local_port;
144 bool ingress;
145};
146
147/* TC port policer entry */
148struct dsa_mall_policer_tc_entry {
147 s64 burst;
149 u32 burst;
148 u64 rate_bytes_per_sec;
149};
150
151/* TC matchall entry */
152struct dsa_mall_tc_entry {
153 struct list_head list;
154 unsigned long cookie;
155 enum dsa_port_mall_action_type type;

--- 665 unchanged lines hidden ---
150 u64 rate_bytes_per_sec;
151};
152
153/* TC matchall entry */
154struct dsa_mall_tc_entry {
155 struct list_head list;
156 unsigned long cookie;
157 enum dsa_port_mall_action_type type;

--- 665 unchanged lines hidden ---