| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/net/ |
| D | ti,cpsw-switch.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/net/ti,cpsw-switch.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: TI SoC Ethernet Switch Controller (CPSW) Device Tree Bindings 10 - Grygorii Strashko <grygorii.strashko@ti.com> 11 - Sekhar Nori <nsekhar@ti.com> 14 The 3-port switch gigabit ethernet subsystem provides ethernet packet 15 communication and can be configured as an ethernet switch. It provides the 24 - const: ti,cpsw-switch [all …]
|
| D | cpsw.txt | 1 TI SoC Ethernet Switch Controller Device Tree Bindings 2 ------------------------------------------------------ 5 - compatible : Should be one of the below:- 6 "ti,cpsw" for backward compatible 7 "ti,am335x-cpsw" for AM335x controllers 8 "ti,am4372-cpsw" for AM437x controllers 9 "ti,dra7-cpsw" for DRA7x controllers 10 - reg : physical base address and size of the cpsw 12 - interrupts : property with a value describing the interrupt 14 - cpdma_channels : Specifies number of channels in CPDMA [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/net/ |
| D | ti,cpsw-switch.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/net/ti,cpsw-switch.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: TI SoC Ethernet Switch Controller (CPSW) 10 - Grygorii Strashko <grygorii.strashko@ti.com> 11 - Sekhar Nori <nsekhar@ti.com> 14 The 3-port switch gigabit ethernet subsystem provides ethernet packet 15 communication and can be configured as an ethernet switch. It provides the 24 - const: ti,cpsw-switch [all …]
|
| D | cpsw.txt | 1 TI SoC Ethernet Switch Controller Device Tree Bindings 2 ------------------------------------------------------ 5 - compatible : Should be one of the below:- 6 "ti,cpsw" for backward compatible 7 "ti,am335x-cpsw" for AM335x controllers 8 "ti,am4372-cpsw" for AM437x controllers 9 "ti,dra7-cpsw" for DRA7x controllers 10 - reg : physical base address and size of the cpsw 12 - interrupts : property with a value describing the interrupt 14 - cpdma_channels : Specifies number of channels in CPDMA [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/ti/ |
| D | cpsw_new.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver 37 #include "cpsw.h" 53 struct cpsw_common *cpsw; member 65 static int cpsw_slave_index_priv(struct cpsw_common *cpsw, in cpsw_slave_index_priv() argument 68 if (priv->emac_port == HOST_PORT_NUM) in cpsw_slave_index_priv() 69 return -1; in cpsw_slave_index_priv() 71 return priv->emac_port - 1; in cpsw_slave_index_priv() 74 static bool cpsw_is_switch_en(struct cpsw_common *cpsw) in cpsw_is_switch_en() argument 76 return !cpsw->data.dual_emac; in cpsw_is_switch_en() [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 44 bool "TI CPSW Phy mode Selection (DEPRECATED)" 48 the CPSW. DEPRECATED: use PHY_TI_GMII_SEL. 51 tristate "TI CPSW Switch Support" 60 This driver supports TI's CPSW Ethernet Switch. 63 will be called cpsw. 66 tristate "TI CPSW Switch Support with switchdev" 77 This driver supports TI's CPSW Ethernet Switch. 89 the CPSW Ethernet Switch and Keystone 2 1g/10g Switch Subsystem. 97 tristate "TI K3 AM654x/J721E CPSW Ethernet driver" [all …]
|
| D | cpsw_priv.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver 25 #include "cpsw.h" 34 int (*cpsw_slave_index)(struct cpsw_common *cpsw, struct cpsw_priv *priv); 36 void cpsw_intr_enable(struct cpsw_common *cpsw) in cpsw_intr_enable() argument 38 writel_relaxed(0xFF, &cpsw->wr_regs->tx_en); in cpsw_intr_enable() 39 writel_relaxed(0xFF, &cpsw->wr_regs->rx_en); in cpsw_intr_enable() 41 cpdma_ctlr_int_ctrl(cpsw->dma, true); in cpsw_intr_enable() 44 void cpsw_intr_disable(struct cpsw_common *cpsw) in cpsw_intr_disable() argument 46 writel_relaxed(0, &cpsw->wr_regs->tx_en); in cpsw_intr_disable() [all …]
|
| D | cpsw_switchdev.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include "cpsw.h" 29 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_stp_state_set() local 33 switch (state) { in cpsw_port_stp_state_set() 48 return -EOPNOTSUPP; in cpsw_port_stp_state_set() 51 ret = cpsw_ale_control_set(cpsw->ale, priv->emac_port, in cpsw_port_stp_state_set() 53 dev_dbg(priv->dev, "ale state: %u\n", cpsw_state); in cpsw_port_stp_state_set() 62 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_attr_br_flags_set() local 70 dev_dbg(priv->dev, "BR_MCAST_FLOOD: %d port %u\n", in cpsw_port_attr_br_flags_set() 71 unreg_mcast_add, priv->emac_port); in cpsw_port_attr_br_flags_set() [all …]
|
| D | am65-cpsw-switchdev.c | 1 /* SPDX-License-Identifier: GPL-2.0 */ 4 * Copyright (C) 2020 Texas Instruments Incorporated - https://www.ti.com/ 14 #include "am65-cpsw-nuss.h" 15 #include "am65-cpsw-switchdev.h" 27 struct am65_cpsw_common *cpsw = port->common; in am65_cpsw_port_stp_state_set() local 31 switch (state) { in am65_cpsw_port_stp_state_set() 46 return -EOPNOTSUPP; in am65_cpsw_port_stp_state_set() 49 ret = cpsw_ale_control_set(cpsw->ale, port->port_id, in am65_cpsw_port_stp_state_set() 51 netdev_dbg(port->ndev, "ale state: %u\n", cpsw_state); in am65_cpsw_port_stp_state_set() 60 struct am65_cpsw_common *cpsw = port->common; in am65_cpsw_port_attr_br_flags_set() local [all …]
|
| D | cpsw_ethtool.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver ethtool intf 18 #include "cpsw.h" 111 { "Rx + Tx 65-127 Octet Frames", CPSW_STAT(octetframes65t127) }, 112 { "Rx + Tx 128-255 Octet Frames", CPSW_STAT(octetframes128t255) }, 113 { "Rx + Tx 256-511 Octet Frames", CPSW_STAT(octetframes256t511) }, 114 { "Rx + Tx 512-1023 Octet Frames", CPSW_STAT(octetframes512t1023) }, 115 { "Rx + Tx 1024-Up Octet Frames", CPSW_STAT(octetframes1024tup) }, 145 return priv->msg_enable; in cpsw_get_msglevel() 152 priv->msg_enable = value; in cpsw_set_msglevel() [all …]
|
| D | cpsw-phy-sel.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Texas Instruments Ethernet Switch Driver 16 #include "cpsw.h" 47 reg = readl(priv->gmii_sel); in cpsw_gmii_sel_am3352() 49 switch (phy_mode) { in cpsw_gmii_sel_am3352() 66 dev_warn(priv->dev, in cpsw_gmii_sel_am3352() 79 if (priv->rmii_clock_external) { in cpsw_gmii_sel_am3352() 96 writel(reg, priv->gmii_sel); in cpsw_gmii_sel_am3352() 106 reg = readl(priv->gmii_sel); in cpsw_gmii_sel_dra7xx() 108 switch (phy_mode) { in cpsw_gmii_sel_dra7xx() [all …]
|
| D | cpsw.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver 41 #include "cpsw.h" 52 MODULE_PARM_DESC(debug_level, "cpsw debug level (NETIF_MSG bits)"); 56 MODULE_PARM_DESC(ale_ageout, "cpsw ale ageout interval (seconds)"); 69 struct cpsw_common *cpsw = (priv)->cpsw; \ 71 if (cpsw->data.dual_emac) \ 72 (func)((cpsw)->slaves + priv->emac_port, ##arg);\ 74 for (n = cpsw->data.slaves, \ 75 slave = cpsw->slaves; \ [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/ti/ |
| D | cpsw_new.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver 35 #include "cpsw.h" 51 struct cpsw_common *cpsw; member 63 static int cpsw_slave_index_priv(struct cpsw_common *cpsw, in cpsw_slave_index_priv() argument 66 if (priv->emac_port == HOST_PORT_NUM) in cpsw_slave_index_priv() 67 return -1; in cpsw_slave_index_priv() 69 return priv->emac_port - 1; in cpsw_slave_index_priv() 72 static bool cpsw_is_switch_en(struct cpsw_common *cpsw) in cpsw_is_switch_en() argument 74 return !cpsw->data.dual_emac; in cpsw_is_switch_en() [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 43 bool "TI CPSW Phy mode Selection (DEPRECATED)" 47 the CPSW. DEPRECATED: use PHY_TI_GMII_SEL. 50 tristate "TI CPSW Switch Support" 59 This driver supports TI's CPSW Ethernet Switch. 62 will be called cpsw. 65 tristate "TI CPSW Switch Support with switchdev" 76 This driver supports TI's CPSW Ethernet Switch. 88 the CPSW Ethernet Switch and Keystone 2 1g/10g Switch Subsystem. 93 tristate "TI K3 AM654x/J721E CPSW Ethernet driver" [all …]
|
| D | cpsw_switchdev.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include "cpsw.h" 30 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_stp_state_set() local 37 switch (state) { in cpsw_port_stp_state_set() 52 return -EOPNOTSUPP; in cpsw_port_stp_state_set() 55 ret = cpsw_ale_control_set(cpsw->ale, priv->emac_port, in cpsw_port_stp_state_set() 57 dev_dbg(priv->dev, "ale state: %u\n", cpsw_state); in cpsw_port_stp_state_set() 67 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_attr_br_flags_set() local 75 dev_dbg(priv->dev, "BR_MCAST_FLOOD: %d port %u\n", in cpsw_port_attr_br_flags_set() 76 unreg_mcast_add, priv->emac_port); in cpsw_port_attr_br_flags_set() [all …]
|
| D | cpsw_priv.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver 24 #include "cpsw.h" 33 int (*cpsw_slave_index)(struct cpsw_common *cpsw, struct cpsw_priv *priv); 35 void cpsw_intr_enable(struct cpsw_common *cpsw) in cpsw_intr_enable() argument 37 writel_relaxed(0xFF, &cpsw->wr_regs->tx_en); in cpsw_intr_enable() 38 writel_relaxed(0xFF, &cpsw->wr_regs->rx_en); in cpsw_intr_enable() 40 cpdma_ctlr_int_ctrl(cpsw->dma, true); in cpsw_intr_enable() 43 void cpsw_intr_disable(struct cpsw_common *cpsw) in cpsw_intr_disable() argument 45 writel_relaxed(0, &cpsw->wr_regs->tx_en); in cpsw_intr_disable() [all …]
|
| D | cpsw_ethtool.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver ethtool intf 18 #include "cpsw.h" 111 { "Rx + Tx 65-127 Octet Frames", CPSW_STAT(octetframes65t127) }, 112 { "Rx + Tx 128-255 Octet Frames", CPSW_STAT(octetframes128t255) }, 113 { "Rx + Tx 256-511 Octet Frames", CPSW_STAT(octetframes256t511) }, 114 { "Rx + Tx 512-1023 Octet Frames", CPSW_STAT(octetframes512t1023) }, 115 { "Rx + Tx 1024-Up Octet Frames", CPSW_STAT(octetframes1024tup) }, 145 return priv->msg_enable; in cpsw_get_msglevel() 152 priv->msg_enable = value; in cpsw_set_msglevel() [all …]
|
| D | cpsw-phy-sel.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Texas Instruments Ethernet Switch Driver 17 #include "cpsw.h" 48 reg = readl(priv->gmii_sel); in cpsw_gmii_sel_am3352() 50 switch (phy_mode) { in cpsw_gmii_sel_am3352() 67 dev_warn(priv->dev, in cpsw_gmii_sel_am3352() 80 if (priv->rmii_clock_external) { in cpsw_gmii_sel_am3352() 97 writel(reg, priv->gmii_sel); in cpsw_gmii_sel_am3352() 107 reg = readl(priv->gmii_sel); in cpsw_gmii_sel_dra7xx() 109 switch (phy_mode) { in cpsw_gmii_sel_dra7xx() [all …]
|
| D | cpsw.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments Ethernet Switch Driver 41 #include "cpsw.h" 52 MODULE_PARM_DESC(debug_level, "cpsw debug level (NETIF_MSG bits)"); 56 MODULE_PARM_DESC(ale_ageout, "cpsw ale ageout interval (seconds)"); 69 struct cpsw_common *cpsw = (priv)->cpsw; \ 71 if (cpsw->data.dual_emac) \ 72 (func)((cpsw)->slaves + priv->emac_port, ##arg);\ 74 for (n = cpsw->data.slaves, \ 75 slave = cpsw->slaves; \ [all …]
|
| /kernel/linux/linux-6.6/Documentation/networking/devlink/ |
| D | ti-cpsw-switch.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 ti-cpsw-switch devlink support 7 This document describes the devlink features implemented by the ``ti-cpsw-switch`` 13 The ``ti-cpsw-switch`` driver implements the following driver-specific 16 .. list-table:: Driver-specific parameters implemented 19 * - Name 20 - Type 21 - Mode 22 - Description 23 * - ``ale_bypass`` [all …]
|
| D | am65-nuss-cpsw-switch.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 am65-cpsw-nuss devlink support 7 This document describes the devlink features implemented by the ``am65-cpsw-nuss`` 13 The ``am65-cpsw-nuss`` driver implements the following driver-specific 16 .. list-table:: Driver-specific parameters implemented 19 * - Name 20 - Type 21 - Mode 22 - Description 23 * - ``switch_mode`` [all …]
|
| /kernel/linux/linux-5.10/Documentation/networking/devlink/ |
| D | ti-cpsw-switch.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 ti-cpsw-switch devlink support 7 This document describes the devlink features implemented by the ``ti-cpsw-switch`` 13 The ``ti-cpsw-switch`` driver implements the following driver-specific 16 .. list-table:: Driver-specific parameters implemented 19 * - Name 20 - Type 21 - Mode 22 - Description 23 * - ``ale_bypass`` [all …]
|
| /kernel/linux/linux-6.6/Documentation/networking/device_drivers/ethernet/ti/ |
| D | cpsw_switchdev.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Texas Instruments CPSW switchdev based ethernet driver 17 ip -d link show dev sw0p1 | grep switchid 26 - The new (cpsw_new.c) driver is operating in dual-emac mode by default, thus 27 working as 2 individual network interfaces. Main differences from legacy CPSW 30 - optimized promiscuous mode: The P0_UNI_FLOOD (both ports) is enabled in 34 to the same bridge, but without enabling "switch" mode, or to different 36 - learning disabled on ports as it make not too much sense for 37 segregated ports - no forwarding in HW. 38 - enabled basic support for devlink. [all …]
|
| D | am65_nuss_cpsw_switchdev.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Texas Instruments K3 AM65 CPSW NUSS switchdev based ethernet driver 14 ip -d link show dev sw0p1 | grep switchid 23 - The driver is operating in multi-mac mode by default, thus 29 See Documentation/networking/devlink/am65-nuss-cpsw-switch.rst 31 Enabling "switch" 34 The Switch mode can be enabled by configuring devlink driver parameter 40 This can be done regardless of the state of Port's netdev devices - UP/DOWN, but 42 overwriting of bridge configuration as CPSW switch driver completely reloads its 45 When the both interfaces joined the bridge - CPSW switch driver will enable [all …]
|
| /kernel/linux/linux-5.10/Documentation/networking/device_drivers/ethernet/ti/ |
| D | cpsw_switchdev.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Texas Instruments CPSW switchdev based ethernet driver 17 ip -d link show dev sw0p1 | grep switchid 26 - The new (cpsw_new.c) driver is operating in dual-emac mode by default, thus 27 working as 2 individual network interfaces. Main differences from legacy CPSW 30 - optimized promiscuous mode: The P0_UNI_FLOOD (both ports) is enabled in 34 to the same bridge, but without enabling "switch" mode, or to different 36 - learning disabled on ports as it make not too much sense for 37 segregated ports - no forwarding in HW. 38 - enabled basic support for devlink. [all …]
|