Home
last modified time | relevance | path

Searched refs:cpsw (Results 1 – 25 of 72) sorted by relevance

123

/Linux-v6.6/drivers/net/ethernet/ti/
Dcpsw_new.c53 struct cpsw_common *cpsw; member
65 static int cpsw_slave_index_priv(struct cpsw_common *cpsw, in cpsw_slave_index_priv() argument
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()
81 struct cpsw_common *cpsw = ndev_to_cpsw(ndev); in cpsw_set_promiscious() local
85 if (cpsw_is_switch_en(cpsw)) in cpsw_set_promiscious()
92 for (i = 0; i < cpsw->data.slaves; i++) in cpsw_set_promiscious()
93 if (cpsw->slaves[i].ndev && in cpsw_set_promiscious()
94 (cpsw->slaves[i].ndev->flags & IFF_PROMISC)) in cpsw_set_promiscious()
99 …dev_dbg(cpsw->dev, "promiscuity not disabled as the other interface is still in promiscuity mode\n… in cpsw_set_promiscious()
[all …]
Dcpsw_ethtool.c159 struct cpsw_common *cpsw = ndev_to_cpsw(ndev); in cpsw_get_coalesce() local
161 coal->rx_coalesce_usecs = cpsw->coal_intvl; in cpsw_get_coalesce()
175 struct cpsw_common *cpsw = priv->cpsw; in cpsw_set_coalesce() local
179 int_ctrl = readl(&cpsw->wr_regs->int_control); in cpsw_set_coalesce()
180 prescale = cpsw->bus_freq_mhz * 4; in cpsw_set_coalesce()
208 writel(num_interrupts, &cpsw->wr_regs->rx_imax); in cpsw_set_coalesce()
209 writel(num_interrupts, &cpsw->wr_regs->tx_imax); in cpsw_set_coalesce()
216 writel(int_ctrl, &cpsw->wr_regs->int_control); in cpsw_set_coalesce()
219 cpsw->coal_intvl = coal_intvl; in cpsw_set_coalesce()
226 struct cpsw_common *cpsw = ndev_to_cpsw(ndev); in cpsw_get_sset_count() local
[all …]
Dcpsw.c69 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()
96 struct cpsw_common *cpsw = ndev_to_cpsw(ndev); in cpsw_set_promiscious() local
97 struct cpsw_ale *ale = cpsw->ale; in cpsw_set_promiscious()
100 if (cpsw->data.dual_emac) { in cpsw_set_promiscious()
[all …]
Dcpsw_priv.c34 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()
47 writel_relaxed(0, &cpsw->wr_regs->rx_en); in cpsw_intr_disable()
49 cpdma_ctlr_int_ctrl(cpsw->dma, false); in cpsw_intr_disable()
88 struct cpsw_common *cpsw = dev_id; in cpsw_tx_interrupt() local
[all …]
Dcpsw_switchdev.c29 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_stp_state_set() local
51 ret = cpsw_ale_control_set(cpsw->ale, priv->emac_port, in cpsw_port_stp_state_set()
62 struct cpsw_common *cpsw = priv->cpsw; in cpsw_port_attr_br_flags_set() local
73 cpsw_ale_set_unreg_mcast(cpsw->ale, BIT(priv->emac_port), in cpsw_port_attr_br_flags_set()
121 struct cpsw_common *cpsw = priv->cpsw; in cpsw_get_pvid() local
128 if (cpsw->version == CPSW_VERSION_1) in cpsw_get_pvid()
130 pvid = slave_read(cpsw->slaves + (priv->emac_port - 1), reg); in cpsw_get_pvid()
132 port_vlan_reg = &cpsw->host_port_regs->port_vlan; in cpsw_get_pvid()
143 struct cpsw_common *cpsw = priv->cpsw; in cpsw_set_pvid() local
154 if (cpsw->version == CPSW_VERSION_1) in cpsw_set_pvid()
[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
29 obj-$(CONFIG_TI_K3_AM65_CPSW_NUSS) += ti-am65-cpsw-nuss.o
30 ti-am65-cpsw-nuss-y := am65-cpsw-nuss.o cpsw_sl.o am65-cpsw-ethtool.o cpsw_ale.o am65-cpsw-qos.o
31 ti-am65-cpsw-nuss-$(CONFIG_TI_K3_AM65_CPSW_SWITCHDEV) += am65-cpsw-switchdev.o
Dam65-cpsw-switchdev.c27 struct am65_cpsw_common *cpsw = port->common; in am65_cpsw_port_stp_state_set() local
49 ret = cpsw_ale_control_set(cpsw->ale, port->port_id, in am65_cpsw_port_stp_state_set()
60 struct am65_cpsw_common *cpsw = port->common; in am65_cpsw_port_attr_br_flags_set() local
71 cpsw_ale_set_unreg_mcast(cpsw->ale, BIT(port->port_id), in am65_cpsw_port_attr_br_flags_set()
119 struct am65_cpsw_common *cpsw = port->common; in am65_cpsw_get_pvid() local
120 struct am65_cpsw_host *host_p = am65_common_get_host(cpsw); in am65_cpsw_get_pvid()
135 struct am65_cpsw_common *cpsw = port->common; in am65_cpsw_set_pvid() local
136 struct am65_cpsw_host *host_p = am65_common_get_host(cpsw); in am65_cpsw_set_pvid()
153 struct am65_cpsw_common *cpsw = port->common; in am65_cpsw_port_vlan_add() local
176 ret = cpsw_ale_vlan_add_modify(cpsw->ale, vid, port_mask, untag_mask, in am65_cpsw_port_vlan_add()
[all …]
Dam65-cpsw-switchdev.h16 int am65_cpsw_switchdev_register_notifiers(struct am65_cpsw_common *cpsw);
17 void am65_cpsw_switchdev_unregister_notifiers(struct am65_cpsw_common *cpsw);
19 static inline int am65_cpsw_switchdev_register_notifiers(struct am65_cpsw_common *cpsw) in am65_cpsw_switchdev_register_notifiers() argument
24 static inline void am65_cpsw_switchdev_unregister_notifiers(struct am65_cpsw_common *cpsw) in am65_cpsw_switchdev_unregister_notifiers() argument
Dcpsw_priv.h389 struct cpsw_common *cpsw; member
396 #define ndev_to_cpsw(ndev) (((struct cpsw_priv *)netdev_priv(ndev))->cpsw)
399 extern int (*cpsw_slave_index)(struct cpsw_common *cpsw,
437 int cpsw_init_common(struct cpsw_common *cpsw, void __iomem *ss_regs,
440 void cpsw_split_res(struct cpsw_common *cpsw);
442 void cpsw_intr_enable(struct cpsw_common *cpsw);
443 void cpsw_intr_disable(struct cpsw_common *cpsw);
445 int cpsw_create_xdp_rxqs(struct cpsw_common *cpsw);
446 void cpsw_destroy_xdp_rxqs(struct cpsw_common *cpsw);
463 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-nuss.c2382 static int am65_cpsw_register_notifiers(struct am65_cpsw_common *cpsw) in am65_cpsw_register_notifiers() argument
2386 if (AM65_CPSW_IS_CPSW2G(cpsw) || in am65_cpsw_register_notifiers()
2390 cpsw->am65_cpsw_netdevice_nb.notifier_call = &am65_cpsw_netdevice_event; in am65_cpsw_register_notifiers()
2391 ret = register_netdevice_notifier(&cpsw->am65_cpsw_netdevice_nb); in am65_cpsw_register_notifiers()
2393 dev_err(cpsw->dev, "can't register netdevice notifier\n"); in am65_cpsw_register_notifiers()
2397 ret = am65_cpsw_switchdev_register_notifiers(cpsw); in am65_cpsw_register_notifiers()
2399 unregister_netdevice_notifier(&cpsw->am65_cpsw_netdevice_nb); in am65_cpsw_register_notifiers()
2404 static void am65_cpsw_unregister_notifiers(struct am65_cpsw_common *cpsw) in am65_cpsw_unregister_notifiers() argument
2406 if (AM65_CPSW_IS_CPSW2G(cpsw) || in am65_cpsw_unregister_notifiers()
2410 am65_cpsw_switchdev_unregister_notifiers(cpsw); in am65_cpsw_unregister_notifiers()
[all …]
DKconfig63 will be called cpsw.
113 will be called ti-am65-cpsw-nuss.
/Linux-v6.6/Documentation/devicetree/bindings/net/
Dcpsw-phy-sel.txt5 - 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 its 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 …]
/Linux-v6.6/Documentation/networking/devlink/
Dam65-nuss-cpsw-switch.rst4 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
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.rst64 ti-cpsw-switch
65 am65-nuss-cpsw-switch
/Linux-v6.6/arch/arm/boot/dts/ti/omap/
Dam335x-sancloud-bbe-common.dtsi7 cpsw_default: cpsw-default-pins {
25 cpsw_sleep: cpsw-sleep-pins {
Dam335x-chiliboard.dts46 cpsw_default: cpsw-default-pins {
60 cpsw_sleep: cpsw-sleep-pins {
Dam335x-moxa-uc-2101.dts31 cpsw_default: cpsw-default-pins {
Dam335x-lxm.dts62 cpsw_default: cpsw-default-pins {
88 cpsw_sleep: cpsw-sleep-pins {
/Linux-v6.6/Documentation/networking/device_drivers/ethernet/
Dindex.rst51 ti/cpsw
/Linux-v6.6/arch/arm64/boot/dts/ti/
Dk3-am64-phycore-som.dtsi69 cpsw_mdio_pins_default: cpsw-mdio-default-pins {
77 cpsw_rgmii1_pins_default: cpsw-rgmii1-default-pins {
Dk3-j721s2-evm-gesi-exp-board.dtso25 main_cpsw_mdio_default_pins: main-cpsw-mdio-default-pins {
/Linux-v6.6/Documentation/networking/device_drivers/ethernet/ti/
Dcpsw.rst11 The cpsw has 3 CBS shapers for each external ports. This document
12 describes MQPRIO and CBS Qdisc offload configuration for cpsw driver
21 Under consideration two examples with AM572x EVM running cpsw driver
76 - f - fifo (cpsw fifo)

123