/openbmc/linux/Documentation/devicetree/bindings/net/ |
H A 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 …]
|
H A 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 …]
|
/openbmc/linux/drivers/net/ethernet/ti/ |
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A D | am65-cpsw-nuss.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Texas Instruments K3 AM65 Ethernet Switch SubSystem Driver 4 * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ 31 #include <linux/dma/ti-cppi5.h> 32 #include <linux/dma/k3-udma-glue.h> 37 #include "am65-cpsw-nuss.h" 38 #include "am65-cpsw-switchdev.h" 39 #include "k3-cppi-desc-pool.h" 40 #include "am65-cpts.h" 117 /* The PTP event messages - Sync, Delay_Req, Pdelay_Req, and Pdelay_Resp. */ [all …]
|
H A D | cpsw_switchdev.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Texas Instruments Ethernet Switch Driver 12 int cpsw_switchdev_register_notifiers(struct cpsw_common *cpsw); 13 void cpsw_switchdev_unregister_notifiers(struct cpsw_common *cpsw);
|
H A D | cpsw_priv.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Texas Instruments Ethernet Switch Driver 26 dev_info(priv->dev, format, ## __VA_ARGS__); \ 32 dev_err(priv->dev, format, ## __VA_ARGS__); \ 38 dev_dbg(priv->dev, format, ## __VA_ARGS__); \ 44 dev_notice(priv->dev, format, ## __VA_ARGS__); \ 127 #define CPSW_FIFO_SHAPERS_NUM (CPSW_TC_NUM - 1) 184 #define CPSW1_TX_PRI_MAP 0x10 /* Tx Header Priority to Switch Pri Mapping */ 195 #define CPSW2_TX_PRI_MAP 0x18 /* Tx Header Priority to Switch Pri Mapping */ 225 #define TS_TTL_NONZERO BIT(8) /* Time Sync Time To Live Non-zero enable */ [all …]
|
H A D | am65-cpsw-ethtool.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Texas Instruments K3 AM65 Ethernet Switch SubSystem Driver ethtool ops 4 * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ 13 #include "am65-cpsw-nuss.h" 15 #include "am65-cpts.h" 33 * struct am65_cpsw_regdump_hdr - regdump record header 35 * @module_id: CPSW module ID 36 * @len: CPSW module registers space length in u32 45 * struct am65_cpsw_regdump_item - regdump module description 47 * @hdr: CPSW module header [all …]
|
/openbmc/linux/Documentation/networking/devlink/ |
H A 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 …]
|
H A 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 …]
|
H A D | index.rst | 5 related to any device class, such as chip-wide/switch-ASIC-wide configuration. 8 ------- 13 in devlink core, but don't allow registration of most sub-objects once 22 ----------------------- 30 devlink-dpipe 31 devlink-health 32 devlink-info 33 devlink-flash 34 devlink-params 35 devlink-port [all …]
|
/openbmc/linux/Documentation/networking/device_drivers/ethernet/ti/ |
H A 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 …]
|
H A 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 …]
|
/openbmc/u-boot/board/bosch/shc/ |
H A D | README | 13 Enabling the D-Cache 15 Net: cpsw 40 $ make -s all 42 -> now you have the MLO and the u-boot.img file, you can put 51 ARM architecture ---> 52 enable different boot versions for the shc board (enable eMMC) ---> 58 enable different board versions for the shc board (C3 Sample board version) ---> 68 - see also doc/SPL/README.am335x-network 70 - set the jumper into netboot mode 71 - compile the U-boot sources with: [all …]
|
/openbmc/u-boot/include/ |
H A D | cpsw.h | 2 * CPSW Ethernet Switch Driver 4 * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com/ 44 u32 hw_stats_reg_ofs; /* cpsw hw stats counters */
|
/openbmc/u-boot/board/compulab/cm_t335/ |
H A D | cm_t335.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Board functions for Compulab CM-T335 board 5 * Copyright (C) 2013, Compulab Ltd - http://compulab.co.il/ 14 #include <cpsw.h> 30 gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100; in board_init() 90 mac_lo = readl(&cdev->macid0l); in get_efuse_mac_addr() 91 mac_hi = readl(&cdev->macid0h); in get_efuse_mac_addr() 102 * Description: prepare MAC address for on-board Ethernet. 118 return -1; in handle_mac_address() 138 writel(RGMII_MODE_ENABLE | RGMII_INT_DELAY, &cdev->miisel); in board_eth_init() [all …]
|
/openbmc/u-boot/board/gumstix/pepper/ |
H A D | board.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * Board functions for Gumstix Pepper and AM335x-based boards 5 * Copyright (C) 2014, Gumstix, Incorporated - http://www.gumstix.com/ 26 #include <cpsw.h> 65 const struct dpll_params dpll_ddr3 = {400, OSC-1, 1, -1, -1, -1, -1}; 98 const struct dpll_params dpll_ddr2 = {266, OSC-1, 1, -1, -1, -1, -1}; 111 return -ENODEV; in read_eeprom() 116 return -EIO; in read_eeprom() 132 switch (header.device_vendor) { in get_dpll_ddr_params() 152 if (dpll->m == 266) { in sdram_init() [all …]
|
/openbmc/u-boot/board/tcl/sl50/ |
H A D | board.c | 1 // SPDX-License-Identifier: GPL-2.0+ 7 * Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/ 27 #include <cpsw.h> 72 /* break into full u-boot on 'c' */ in spl_start_uboot() 89 400, OSC-1, 1, -1, -1, -1, -1}; 237 gd->bd->bi_boot_params = CONFIG_SYS_SDRAM_BASE + 0x100; in board_init() 296 * - SPL with either CPSW or USB ethernet support 297 * - Full U-Boot, with either CPSW or USB ethernet 299 * when we build an SPL that has neither option but full U-Boot will. 313 mac_lo = readl(&cdev->macid0l); in board_eth_init() [all …]
|
/openbmc/u-boot/board/ti/am335x/ |
H A D | board.c | 1 // SPDX-License-Identifier: GPL-2.0+ 7 * Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/ 33 #include <cpsw.h> 44 /* GPIO that controls power to DDR on EVM-SK */ 247 /* break into full u-boot on 'c' */ in spl_start_uboot() 303 switch (freq) { in get_dpll_mpu_params() 355 switch (freq) { in scale_vcores_bone() 428 * 1.10V. For MPU voltage we need to switch based on in scale_vcores_generic() 442 sil_rev = readl(&cdev->deviceid) >> 28; in scale_vcores_generic() 664 /* check for phy_id as well as phy-handle properties */ in ft_board_setup() [all …]
|