| /linux/drivers/net/ethernet/ti/ |
| H A D | cpsw_new.c | 53 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 …]
|
| H A D | cpsw_ethtool.c | 159 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 …]
|
| H A D | cpsw.c | 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() 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 …]
|
| H A D | cpsw_priv.c | 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() 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 …]
|
| H A D | cpsw_switchdev.c | 29 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 …]
|
| H A D | Makefile | 9 obj-$(CONFIG_TI_CPSW) += cpsw-common.o 10 obj-$(CONFIG_TI_DAVINCI_EMAC) += cpsw-common.o 11 obj-$(CONFIG_TI_CPSW_SWITCHDEV) += cpsw-common.o 17 obj-$(CONFIG_TI_CPSW_PHY_SEL) += cpsw-phy-sel.o 20 ti_cpsw-y := cpsw.o davinci_cpdma.o cpsw_ale.o cpsw_priv.o cpsw_sl.o cpsw_ethtool.o 31 obj-$(CONFIG_TI_K3_AM65_CPSW_NUSS) += ti-am65-cpsw-nuss.o 32 ti-am65-cpsw-nuss-y := am65-cpsw-nuss.o cpsw_sl.o am65-cpsw-ethtool.o cpsw_ale.o 33 ti-am65-cpsw-nuss-$(CONFIG_TI_AM65_CPSW_QOS) += am65-cpsw-qos.o 34 ti-am65-cpsw-nuss-$(CONFIG_TI_K3_AM65_CPSW_SWITCHDEV) += am65-cpsw-switchdev.o
|
| H A D | am65-cpsw-switchdev.c | 27 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 …]
|
| H A D | am65-cpsw-switchdev.h | 16 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
|
| H A D | cpsw_priv.h | 389 struct cpsw_common *cpsw; member 397 #define ndev_to_cpsw(ndev) (((struct cpsw_priv *)netdev_priv(ndev))->cpsw) 400 extern int (*cpsw_slave_index)(struct cpsw_common *cpsw, 438 int cpsw_init_common(struct cpsw_common *cpsw, void __iomem *ss_regs, 441 void cpsw_split_res(struct cpsw_common *cpsw); 443 void cpsw_intr_enable(struct cpsw_common *cpsw); 444 void cpsw_intr_disable(struct cpsw_common *cpsw); 446 int cpsw_create_xdp_rxqs(struct cpsw_common *cpsw); 447 void cpsw_destroy_xdp_rxqs(struct cpsw_common *cpsw); 464 int cpsw_need_resplit(struct cpsw_common *cpsw);
|
| H A D | cpsw_switchdev.h | 12 int cpsw_switchdev_register_notifiers(struct cpsw_common *cpsw); 13 void cpsw_switchdev_unregister_notifiers(struct cpsw_common *cpsw);
|
| H A D | am65-cpsw-nuss.c | 3006 static int am65_cpsw_register_notifiers(struct am65_cpsw_common *cpsw) in am65_cpsw_register_notifiers() argument 3010 if (AM65_CPSW_IS_CPSW2G(cpsw) || in am65_cpsw_register_notifiers() 3014 cpsw->am65_cpsw_netdevice_nb.notifier_call = &am65_cpsw_netdevice_event; in am65_cpsw_register_notifiers() 3015 ret = register_netdevice_notifier(&cpsw->am65_cpsw_netdevice_nb); in am65_cpsw_register_notifiers() 3017 dev_err(cpsw->dev, "can't register netdevice notifier\n"); in am65_cpsw_register_notifiers() 3021 ret = am65_cpsw_switchdev_register_notifiers(cpsw); in am65_cpsw_register_notifiers() 3023 unregister_netdevice_notifier(&cpsw->am65_cpsw_netdevice_nb); in am65_cpsw_register_notifiers() 3028 static void am65_cpsw_unregister_notifiers(struct am65_cpsw_common *cpsw) in am65_cpsw_unregister_notifiers() argument 3030 if (AM65_CPSW_IS_CPSW2G(cpsw) || in am65_cpsw_unregister_notifiers() 3034 am65_cpsw_switchdev_unregister_notifiers(cpsw); in am65_cpsw_unregister_notifiers() [all …]
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A D | cpsw-phy-sel.txt | 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";
|
| H A D | cpsw.txt | 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 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/Documentation/networking/devlink/ |
| H A D | am65-nuss-cpsw-switch.rst | 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
|
| H A D | ti-cpsw-switch.rst | 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
|
| H A D | index.rst | 81 am65-nuss-cpsw-switch 103 ti-cpsw-switch
|
| /linux/arch/arm/boot/dts/ti/omap/ |
| H A D | am335x-sancloud-bbe-common.dtsi | 7 cpsw_default: cpsw-default-pins { 25 cpsw_sleep: cpsw-sleep-pins {
|
| H A D | am335x-bonegreen-eco.dts | 130 cpsw_b_default: cpsw-b-default-pins { 147 cpsw_b_sleep: cpsw-b-sleep-pins {
|
| H A D | am335x-chiliboard.dts | 46 cpsw_default: cpsw-default-pins { 60 cpsw_sleep: cpsw-sleep-pins {
|
| H A D | am335x-moxa-uc-2101.dts | 31 cpsw_default: cpsw-default-pins {
|
| H A D | am335x-lxm.dts | 62 cpsw_default: cpsw-default-pins { 88 cpsw_sleep: cpsw-sleep-pins {
|
| /linux/Documentation/networking/device_drivers/ethernet/ |
| H A D | index.rst | 57 ti/cpsw
|
| /linux/arch/arm64/boot/dts/ti/ |
| H A D | k3-am64-phycore-som.dtsi | 82 cpsw_mdio_pins_default: cpsw-mdio-default-pins { 91 cpsw_rgmii1_pins_default: cpsw-rgmii1-default-pins {
|
| H A D | k3-j721s2-evm-gesi-exp-board.dtso | 25 main_cpsw_mdio_default_pins: main-cpsw-mdio-default-pins {
|
| /linux/Documentation/networking/device_drivers/ethernet/ti/ |
| H A D | cpsw.rst | 11 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)
|