Home
last modified time | relevance | path

Searched full:dsa (Results 1 – 25 of 283) sorted by relevance

12345678910>>...12

/linux-6.14.4/Documentation/ABI/stable/
Dsysfs-driver-dma-idxd1 What: /sys/bus/dsa/devices/dsa<m>/version
7 What: /sys/bus/dsa/devices/dsa<m>/cdev_major
14 What: /sys/bus/dsa/devices/dsa<m>/errors
20 What: /sys/bus/dsa/devices/dsa<m>/max_batch_size
27 What: /sys/bus/dsa/devices/dsa<m>/max_work_queues_size
33 What: /sys/bus/dsa/devices/dsa<m>/max_engines
39 What: /sys/bus/dsa/devices/dsa<m>/max_groups
45 What: /sys/bus/dsa/devices/dsa<m>/max_read_buffers
50 The read buffers represent resources within the DSA
52 support operations. See DSA spec v1.2 9.2.4 Total Read Buffers.
[all …]
/linux-6.14.4/Documentation/networking/dsa/
Ddsa.rst5 This document describes the **Distributed Switch Architecture (DSA)** subsystem
23 or more CPU or management ports. The DSA subsystem currently relies on the
28 be later referred to as "conduit" and "cpu" in DSA terminology and code.
30 The D in DSA stands for Distributed, because the subsystem has been designed
33 ports are referred to as "dsa" ports in DSA terminology and code. A collection
36 For each front-panel port, DSA creates specialized network devices which are
39 interfaces in DSA terminology and code.
41 The ideal case for using DSA is when an Ethernet switch supports a "switch tag"
54 Note that DSA does not currently create network interfaces for the "cpu" and
55 "dsa" ports because:
[all …]
Dconfiguration.rst4 DSA switch configuration from userspace
7 The DSA switch configuration is not integrated into the main userspace
15 To configure a DSA switch a couple of commands need to be executed. In this
32 Through DSA every port of a switch is handled like a normal linux Ethernet
42 - when a DSA user interface is brought up, the conduit interface is
44 - when the conduit interface is brought down, all DSA user interfaces are
88 DSA switches. These switches are capable to tag incoming and outgoing traffic
302 The existing DSA switches do not have the necessary hardware support to keep
308 Up until kernel v4.14, DSA only supported user space management of bridge FDB
319 Due to a bug, the bridge bypass FDB implementation provided by DSA did not
[all …]
Dbcm_sf2.rst41 The driver is located in ``drivers/net/dsa/bcm_sf2.c`` and is implemented as a DSA
42 driver; see ``Documentation/networking/dsa/dsa.rst`` for details on the subsystem
49 ``net/dsa/tag_brcm.c``.
51 Overall, the SF2 driver is a fairly regular DSA driver; there are a few
57 The DSA platform device driver is probed using a specific compatible string
58 provided in ``net/dsa/dsa.c``. The reason for that is because the DSA subsystem gets
59 registered as a platform device driver currently. DSA will provide the needed
70 Broadcom switches connected to a SF2 require the use of the DSA user MDIO bus
74 "double" programming. Using DSA, and setting ``ds->phys_mii_mask`` accordingly, we
Db53.rst16 The driver is located in ``drivers/net/dsa/b53/`` and is implemented as a
17 DSA driver; see ``Documentation/networking/dsa/dsa.rst`` for details on the
24 ``net/dsa/tag_brcm.c``.
30 configuration described in the :ref:`dsa-config-showcases`.
36 DSA driver and will work like all DSA drivers which supports tagging.
38 See :ref:`dsa-tagged-configuration`.
48 The configuration slightly differ from the :ref:`dsa-vlan-configuration`.
54 In difference to the configuration described in :ref:`dsa-vlan-configuration`
Dlan9303.rst13 The driver is implemented as a DSA driver, see ``Documentation/networking/dsa/dsa.rst``.
15 See ``Documentation/devicetree/bindings/net/dsa/lan9303.txt`` for device tree
21 interfaces (which is the default state of a DSA device). Due to HW limitations,
/linux-6.14.4/Documentation/devicetree/bindings/net/
Dbrcm,bcm7445-switch-v4.0.txt3 See dsa/brcm,bcm7445-switch-v4.0.yaml for the documentation.
7 - dsa,mii-bus: phandle to the MDIO bus controller, see dsa/dsa.txt
8 - dsa,ethernet: phandle to the CPU network interface controller, see dsa/dsa.txt
9 - #address-cells: must be 2, see dsa/dsa.txt
11 Example using the old DSA DeviceTree binding:
/linux-6.14.4/drivers/net/ethernet/marvell/prestera/
Dprestera_dsa.c34 int prestera_dsa_parse(struct prestera_dsa *dsa, const u8 *dsa_buf) in prestera_dsa_parse() argument
62 dsa->vlan.is_tagged = FIELD_GET(PRESTERA_DSA_W0_IS_TAGGED, words[0]); in prestera_dsa_parse()
63 dsa->vlan.cfi_bit = FIELD_GET(PRESTERA_DSA_W1_CFI_BIT, words[1]); in prestera_dsa_parse()
64 dsa->vlan.vpt = FIELD_GET(PRESTERA_DSA_W0_VPT, words[0]); in prestera_dsa_parse()
65 dsa->vlan.vid = FIELD_GET(PRESTERA_DSA_W0_VID, words[0]); in prestera_dsa_parse()
66 dsa->vlan.vid &= ~PRESTERA_DSA_VID; in prestera_dsa_parse()
67 dsa->vlan.vid |= FIELD_PREP(PRESTERA_DSA_VID, field); in prestera_dsa_parse()
71 dsa->hw_dev_num = FIELD_GET(PRESTERA_DSA_W0_DEV_NUM, words[0]); in prestera_dsa_parse()
72 dsa->hw_dev_num |= FIELD_PREP(PRESTERA_DSA_DEV_NUM, field); in prestera_dsa_parse()
74 dsa->port_num = (FIELD_GET(PRESTERA_DSA_W0_PORT_NUM, words[0]) << 0) | in prestera_dsa_parse()
[all …]
Dprestera_dsa.h12 /* DSA command is "To CPU" */
15 /* DSA command is "From CPU" */
33 int prestera_dsa_parse(struct prestera_dsa *dsa, const u8 *dsa_buf);
34 int prestera_dsa_build(const struct prestera_dsa *dsa, u8 *dsa_buf);
Dprestera_rxtx.c216 struct prestera_dsa dsa; in prestera_rxtx_process_skb() local
223 /* ethertype field is part of the dsa header */ in prestera_rxtx_process_skb()
224 err = prestera_dsa_parse(&dsa, skb->data - ETH_TLEN); in prestera_rxtx_process_skb()
228 dev_id = dsa.hw_dev_num; in prestera_rxtx_process_skb()
229 hw_port = dsa.port_num; in prestera_rxtx_process_skb()
241 /* remove DSA tag and update checksum */ in prestera_rxtx_process_skb()
251 if (dsa.vlan.is_tagged) { in prestera_rxtx_process_skb()
252 u16 tci = dsa.vlan.vid & VLAN_VID_MASK; in prestera_rxtx_process_skb()
254 tci |= dsa.vlan.vpt << VLAN_PRIO_SHIFT; in prestera_rxtx_process_skb()
255 if (dsa.vlan.cfi_bit) in prestera_rxtx_process_skb()
[all …]
/linux-6.14.4/Documentation/devicetree/bindings/iio/frequency/
Dadi,admfm2000.yaml16 It consists of a LNA, mixer, IF filter, DSA, and IF amplifier for each down
67 DSA-V4 DSA-V3 DSA-V2 DSA-V1 DSA-V0
77 - description: DSA-V0 GPIO
78 - description: DSA-V1 GPIO
79 - description: DSA-V2 GPIO
80 - description: DSA-V3 GPIO
81 - description: DSA-V4 GPIO
/linux-6.14.4/drivers/net/dsa/
DKconfig5 source "drivers/net/dsa/b53/Kconfig"
20 tristate "DSA mock-up Ethernet switch chip support"
25 exercises the DSA APIs.
27 source "drivers/net/dsa/hirschmann/Kconfig"
78 source "drivers/net/dsa/microchip/Kconfig"
80 source "drivers/net/dsa/mv88e6xxx/Kconfig"
82 source "drivers/net/dsa/ocelot/Kconfig"
84 source "drivers/net/dsa/qca/Kconfig"
86 source "drivers/net/dsa/sja1105/Kconfig"
88 source "drivers/net/dsa/xrs700x/Kconfig"
[all …]
Ddsa_loop_bdinfo.c5 #include <net/dsa.h>
17 .name = "DSA mockup driver",
24 .modalias = "dsa-loop",
35 MODULE_DESCRIPTION("DSA mock-up switch driver");
/linux-6.14.4/Documentation/devicetree/bindings/net/dsa/
Ddsa-port.yaml4 $id: http://devicetree.org/schemas/net/dsa/dsa-port.yaml#
7 title: Generic DSA Switch Port
15 A DSA switch port is a component of a switch that manages one MAC, and can
17 DSA-specific functionality.
34 Should be a list of phandles to other switch's DSA port. This
48 dsa-tag-protocol:
54 - dsa
62 # CPU and DSA ports must have phylink-compatible link descriptions
Ddsa.yaml4 $id: http://devicetree.org/schemas/net/dsa/dsa.yaml#
24 dsa,member:
28 A two element list indicates which DSA cluster, and position within the
38 description: A DSA switch without any extra port properties
46 $ref: dsa-port.yaml#
Dmarvell,mv88e6060.yaml4 $id: http://devicetree.org/schemas/net/dsa/marvell,mv88e6060.yaml#
7 title: Marvell MV88E6060 DSA switch
18 from many other DSA switches this switch does not have an internal
25 The MV88E6060 is the oldest Marvell DSA switch product, and
37 - $ref: dsa.yaml#/$defs/ethernet-ports
/linux-6.14.4/net/dsa/
Dtag_dsa.c3 * Regular and Ethertype DSA tagging
6 * Regular DSA
12 * converted to a DSA tag. It expects the same layout when receiving
26 * Pd: | DA | SA | DSA | ET | Payload ...
36 * Ethertype DSA
38 * Uses the exact same tag format as regular DSA, but also includes a
43 * | DA | SA | 0xdada | 0x0000 | DSA | ET | Payload ...
48 #include <linux/dsa/mv88e6xxx.h>
55 #define DSA_NAME "dsa"
61 * enum dsa_cmd - DSA Command
[all …]
Dtag.h9 #include <net/dsa.h>
87 * should NOT be committed to hardware). DSA needs a method for this private
101 * API shall be introduced to communicate to DSA what this VID is, which needs
123 /* The sad part about attempting to untag from DSA is that we in dsa_software_untag_vlan_unaware_bridge()
128 * from the bridge's data path. This is a configuration that DSA in dsa_software_untag_vlan_unaware_bridge()
138 * dsa_software_vlan_untag: Software VLAN untagging in DSA receive path
187 /* For switches without hardware support for DSA tagging to be able
244 /* Helper for removing DSA header tags from packets in the RX path.
251 * | Destination MAC | Source MAC | DSA header | EType |
270 /* Helper for creating space for DSA header tags in TX path packets.
[all …]
Ddsa.c3 * DSA topology and switch handling
24 #include "dsa.h"
78 * driver can then return -EOPNOTSUPP back to DSA, which will in dsa_lag_map()
390 pr_err("DSA: tree %d has no CPU port\n", dst->index); in dsa_tree_setup_default_cpu()
423 /* Perform initial assignment of CPU ports to user ports and DSA links in the
507 "skipping link registration for DSA port %d\n", in dsa_port_setup()
881 pr_err("DSA: tree %d already setup! Disjoint trees?\n", in dsa_tree_setup()
912 pr_info("DSA: tree %d setup\n", dst->index); in dsa_tree_setup()
947 pr_info("DSA: tree %d torn down\n", dst->index); in dsa_tree_teardown()
983 /* Since the dsa/tagging sysfs device attribute is per conduit, the assumption
[all …]
Dtag_ocelot_8021q.c11 #include <linux/dsa/8021q.h>
12 #include <linux/dsa/ocelot.h>
40 * NETIF_F_HW_CSUM from the DSA conduit, but these packets are not sent in ocelot_defer_xmit()
41 * through the DSA conduit, so calculate the checksum here. in ocelot_defer_xmit()
136 MODULE_DESCRIPTION("DSA tag driver for Ocelot family of switches, using VLAN");
/linux-6.14.4/Documentation/ABI/testing/
Dsysfs-bus-event_source-devices-dsa1 What: /sys/bus/event_source/devices/dsa*/format
7 perf_event_attr.config1 for the IDXD DSA pmu. (See also
13 IDXD DSA Spec for possible attribute values)::
24 What: /sys/bus/event_source/devices/dsa*/cpumask
29 IDXD DSA pmu is bound for access to all dsa pmu
Dsysfs-class-net-dsa1 What: /sys/class/net/<iface>/dsa/tagging
7 tagging protocol used by the DSA network devices that are
10 attached DSA switches, if this operation is supported by the
11 driver. Changing the tagging protocol must be done with the DSA
/linux-6.14.4/Documentation/driver-api/crypto/iaa/
Diaa-crypto.rst226 /sys/bus/dsa/drivers/crypto/
240 echo 0 > /sys/bus/dsa/drivers/crypto/verify_compress
272 echo async_irq > /sys/bus/dsa/drivers/crypto/sync_mode
277 echo async > /sys/bus/dsa/drivers/crypto/sync_mode
282 echo sync > /sys/bus/dsa/drivers/crypto/sync_mode
289 '/sys/bus/dsa/drivers/crypto/sync_mode' will internally enable the
463 # cat /sys/bus/dsa/devices/iax1/state
465 # cat /sys/bus/dsa/devices/iax1/wq1.0/state
801 The 'IAA config path' is /sys/bus/dsa/devices and contains
805 odd-numbered devices; the even-numbered devices are DSA devices and
[all …]
/linux-6.14.4/include/linux/dsa/
Dsja1105.h5 /* Included by drivers/net/dsa/sja1105/sja1105.h and net/dsa/tag_sja1105.c */
12 #include <linux/dsa/8021q.h>
13 #include <net/dsa.h>
31 * in the DSA conduit port's multicast MAC filter.
/linux-6.14.4/drivers/net/ethernet/hisilicon/hns/
Dhns_dsaf_main.c210 * @dsaf_dev: dsa fabric id
219 * @dsaf_dev: dsa fabric id
231 * @dsaf_dev: dsa fabric id
288 * @dsaf_dev: dsa fabric id
306 * @dsaf_dev: dsa fabric id
326 * @dsaf_dev: dsa fabric id
345 * @dsaf_dev: dsa fabric id
390 * @dsaf_dev: dsa fabric id
559 * @dsaf_dev: dsa fabric id
602 * @dsaf_dev: dsa fabric id
[all …]

12345678910>>...12