Home
last modified time | relevance | path

Searched full:cpsw (Results 1 – 25 of 57) sorted by relevance

123

/Linux-v5.10/drivers/net/ethernet/ti/
Dcpsw_new.c35 #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
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()
79 struct cpsw_common *cpsw = ndev_to_cpsw(ndev); in cpsw_set_promiscious() local
83 if (cpsw_is_switch_en(cpsw)) in cpsw_set_promiscious()
90 for (i = 0; i < cpsw->data.slaves; i++) in cpsw_set_promiscious()
91 if (cpsw->slaves[i].ndev && in cpsw_set_promiscious()
92 (cpsw->slaves[i].ndev->flags & IFF_PROMISC)) in cpsw_set_promiscious()
[all …]
Dcpsw_priv.c24 #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()
46 writel_relaxed(0, &cpsw->wr_regs->rx_en); in cpsw_intr_disable()
48 cpdma_ctlr_int_ctrl(cpsw->dma, false); in cpsw_intr_disable()
[all …]
Dcpsw_ethtool.c18 #include "cpsw.h"
157 struct cpsw_common *cpsw = ndev_to_cpsw(ndev); in cpsw_get_coalesce() local
159 coal->rx_coalesce_usecs = cpsw->coal_intvl; in cpsw_get_coalesce()
171 struct cpsw_common *cpsw = priv->cpsw; in cpsw_set_coalesce() local
175 int_ctrl = readl(&cpsw->wr_regs->int_control); in cpsw_set_coalesce()
176 prescale = cpsw->bus_freq_mhz * 4; in cpsw_set_coalesce()
204 writel(num_interrupts, &cpsw->wr_regs->rx_imax); in cpsw_set_coalesce()
205 writel(num_interrupts, &cpsw->wr_regs->tx_imax); in cpsw_set_coalesce()
212 writel(int_ctrl, &cpsw->wr_regs->int_control); in cpsw_set_coalesce()
215 cpsw->coal_intvl = coal_intvl; in cpsw_set_coalesce()
[all …]
Dcpsw.c41 #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; \
80 static int cpsw_slave_index_priv(struct cpsw_common *cpsw, in cpsw_slave_index_priv() argument
83 return cpsw->data.dual_emac ? priv->emac_port : cpsw->data.active_slave; in cpsw_slave_index_priv()
[all …]
Dcpsw_switchdev.c15 #include "cpsw.h"
30 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_stp_state_set() local
55 ret = cpsw_ale_control_set(cpsw->ale, priv->emac_port, in cpsw_port_stp_state_set()
67 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_attr_br_flags_set() local
78 cpsw_ale_set_unreg_mcast(cpsw->ale, BIT(priv->emac_port), in cpsw_port_attr_br_flags_set()
126 struct cpsw_common *cpsw = priv->cpsw; in cpsw_get_pvid() local
133 if (cpsw->version == CPSW_VERSION_1) in cpsw_get_pvid()
135 pvid = slave_read(cpsw->slaves + (priv->emac_port - 1), reg); in cpsw_get_pvid()
137 port_vlan_reg = &cpsw->host_port_regs->port_vlan; in cpsw_get_pvid()
148 struct cpsw_common *cpsw = priv->cpsw; in cpsw_set_pvid() local
[all …]
DMakefile6 obj-$(CONFIG_TI_CPSW) += cpsw-common.o
7 obj-$(CONFIG_TI_DAVINCI_EMAC) += cpsw-common.o
8 obj-$(CONFIG_TI_CPSW_SWITCHDEV) += cpsw-common.o
15 obj-$(CONFIG_TI_CPSW_PHY_SEL) += cpsw-phy-sel.o
18 ti_cpsw-y := cpsw.o davinci_cpdma.o cpsw_ale.o cpsw_priv.o cpsw_sl.o cpsw_ethtool.o
27 obj-$(CONFIG_TI_K3_AM65_CPSW_NUSS) += ti-am65-cpsw-nuss.o
28 ti-am65-cpsw-nuss-y := am65-cpsw-nuss.o cpsw_sl.o am65-cpsw-ethtool.o cpsw_ale.o k3-cppi-desc-pool.…
DKconfig43 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"
106 will be called ti-am65-cpsw-nuss.
[all …]
Dcpsw-phy-sel.c17 #include "cpsw.h"
166 node = of_parse_phandle(dev->of_node, "cpsw-phy-sel", 0); in cpsw_phy_sel()
168 node = of_get_child_by_name(dev->of_node, "cpsw-phy-sel"); in cpsw_phy_sel()
193 .compatible = "ti,am3352-cpsw-phy-sel",
197 .compatible = "ti,dra7xx-cpsw-phy-sel",
201 .compatible = "ti,am43xx-cpsw-phy-sel",
219 dev_err(&pdev->dev, "unable to alloc memory for cpsw phy sel\n"); in cpsw_phy_sel_probe()
242 .name = "cpsw-phy-sel",
Dcpsw_priv.h381 struct cpsw_common *cpsw; member
385 #define ndev_to_cpsw(ndev) (((struct cpsw_priv *)netdev_priv(ndev))->cpsw)
388 extern int (*cpsw_slave_index)(struct cpsw_common *cpsw,
427 int cpsw_init_common(struct cpsw_common *cpsw, void __iomem *ss_regs,
430 void cpsw_split_res(struct cpsw_common *cpsw);
432 void cpsw_intr_enable(struct cpsw_common *cpsw);
433 void cpsw_intr_disable(struct cpsw_common *cpsw);
435 int cpsw_create_xdp_rxqs(struct cpsw_common *cpsw);
436 void cpsw_destroy_xdp_rxqs(struct cpsw_common *cpsw);
453 int cpsw_need_resplit(struct cpsw_common *cpsw);
Dcpsw_switchdev.h12 int cpsw_switchdev_register_notifiers(struct cpsw_common *cpsw);
13 void cpsw_switchdev_unregister_notifiers(struct cpsw_common *cpsw);
Dam65-cpsw-ethtool.c13 #include "am65-cpsw-nuss.h"
35 * @module_id: CPSW module ID
36 * @len: CPSW module registers space length in u32
47 * @hdr: CPSW module header
48 * @start_ofs: CPSW module registers start addr
49 * @end_ofs: CPSW module registers end addr
598 /* update CPSW IP version */ in am65_cpsw_get_regs()
Dam65-cpsw-nuss.h14 #include "am65-cpsw-qos.h"
143 #define AM65_CPSW_DRV_NAME "am65-cpsw-nuss"
/Linux-v5.10/Documentation/devicetree/bindings/net/
Dti,cpsw-switch.yaml4 $id: http://devicetree.org/schemas/net/ti,cpsw-switch.yaml#
7 title: TI SoC Ethernet Switch Controller (CPSW) Device Tree Bindings
24 - const: ti,cpsw-switch
26 - const: ti,am335x-cpsw-switch
27 - const: ti,cpsw-switch
29 - const: ti,am4372-cpsw-switch
30 - const: ti,cpsw-switch
32 - const: ti,dra7-cpsw-switch
33 - const: ti,cpsw-switch
38 The physical base address and size of full the CPSW module IO range
[all …]
Dcpsw-phy-sel.txt1 TI CPSW Phy mode Selection Device Tree Bindings (DEPRECATED)
5 - compatible : Should be "ti,am3352-cpsw-phy-sel" for am335x platform and
6 "ti,dra7xx-cpsw-phy-sel" for dra7xx platform
7 "ti,am43xx-cpsw-phy-sel" for am43xx platform
8 - reg : physical base address and size of the cpsw
18 phy_sel: cpsw-phy-sel@44e10650 {
19 compatible = "ti,am3352-cpsw-phy-sel";
25 phy_sel: cpsw-phy-sel@44e10650 {
26 compatible = "ti,am3352-cpsw-phy-sel";
Dcpsw.txt6 "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
22 - cpsw-phy-sel : Specifies the phandle to the CPSW phy mode selection
23 device. See also cpsw-phy-sel.txt for it's binding.
24 Note that in legacy cases cpsw-phy-sel may be
34 required to be driven so that cpsw data lines
37 driven low so that cpsw slave 0 and phy data
[all …]
Dti,k3-am654-cpsw-nuss.yaml4 $id: http://devicetree.org/schemas/net/ti,k3-am654-cpsw-nuss.yaml#
52 - const: ti,am654-cpsw-nuss
53 - const: ti,j721e-cpsw-nuss
112 description: CPSW port number
144 CPSW MDIO bus.
150 CPSW Common Platform Time Sync (CPTS) module.
180 compatible = "ti,am654-cpsw-nuss";
222 compatible = "ti,cpsw-mdio","ti,davinci_mdio";
Dti,davinci-mdio.yaml26 - const: ti,cpsw-mdio
30 - const: ti,cpsw-mdio
Dti,k3-am654-cpts.yaml35 - MCU CPSW CPTS with IEEE 1588-2008 support
39 another module (MCU CPSW for example) "compatible" and "reg" can
/Linux-v5.10/Documentation/devicetree/bindings/phy/
Dti,phy-gmii-sel.yaml8 title: CPSW Port's Interface Mode Selection PHY Tree Bindings
22 | CPSW | | +---------+ |
41 CPSW Port's Interface Mode Selection PHY describes MII interface mode between
42 CPSW Port and Ethernet PHY which depends on Eth PHY and board configuration.
44 CPSW Port's Interface Mode Selection PHY device should defined as child device
45 of SCM node (scm_conf) and can be attached to each CPSW port node using standard
75 description: CPSW port number (starting from 1)
88 - CPSW port number (starting from 1)
/Linux-v5.10/Documentation/networking/devlink/
Dti-cpsw-switch.rst4 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
Dindex.rst46 ti-cpsw-switch
/Linux-v5.10/Documentation/networking/device_drivers/ethernet/ti/
Dcpsw_switchdev.rst4 Texas Instruments CPSW switchdev based ethernet driver
27 working as 2 individual network interfaces. Main differences from legacy CPSW
57 See Documentation/networking/devlink/ti-cpsw-switch.rst
63 which, by default, equal CPSW Port numbers. As result, bridge has to be
92 overwriting of bridge configuration as CPSW switch driver copletly reloads its
95 When the both interfaces joined the bridge - CPSW switch driver will enable
/Linux-v5.10/drivers/phy/ti/
DKconfig112 This driver supports configuring of the TI CPSW Port mode depending on
113 the Ethernet PHY connected to the CPSW Port.
Dphy-gmii-sel.c3 * Texas Instruments CPSW Port's PHY Interface Mode selection Driver
7 * Based on cpsw-phy-sel.c driver created by Mugunthan V N <mugunthanvnm@ti.com>
401 MODULE_DESCRIPTION("TI CPSW Port's PHY Interface Mode selection Driver");
/Linux-v5.10/Documentation/networking/device_drivers/ethernet/
Dindex.rst50 ti/cpsw

123