| /linux-6.15/drivers/net/ethernet/ti/icssg/ |
| H A D | icssg_prueth.c | 56 struct prueth *prueth = emac->prueth; in emac_get_tx_ts() local 320 struct prueth *prueth = emac->prueth; in emac_adjust_link() local 394 struct prueth *prueth = emac->prueth; in emac_phy_connect() local 427 struct prueth *prueth = emac->prueth; in prueth_iep_gettime() local 736 struct prueth *prueth = emac->prueth; in emac_ndo_open() local 875 struct prueth *prueth = emac->prueth; in emac_ndo_stop() local 1025 struct prueth *prueth = emac->prueth; in emac_ndo_vlan_rx_add_vid() local 1046 struct prueth *prueth = emac->prueth; in emac_ndo_vlan_rx_del_vid() local 1439 struct prueth *prueth = emac->prueth; in prueth_netdevice_port_link() local 1479 struct prueth *prueth = emac->prueth; in prueth_netdevice_port_unlink() local [all …]
|
| H A D | icssg_prueth_sr1.c | 156 struct prueth *prueth = emac->prueth; in icssg_config_set_speed_sr1() local 177 struct prueth *prueth = emac->prueth; in emac_adjust_link_sr1() local 235 struct prueth *prueth = emac->prueth; in emac_phy_connect() local 451 struct prueth *prueth = emac->prueth; in prueth_emac_stop() local 484 struct prueth *prueth = emac->prueth; in emac_ndo_open() local 654 struct prueth *prueth = emac->prueth; in emac_ndo_stop() local 722 struct prueth *prueth = emac->prueth; in emac_ndo_set_rx_mode_sr1() local 781 emac->prueth = prueth; in prueth_netdev_init() 902 struct prueth *prueth; in prueth_probe() local 1070 prueth->emac[PRUETH_MAC0]->iep = prueth->iep0; in prueth_probe() [all …]
|
| H A D | icssg_config.c | 112 struct prueth *prueth = emac->prueth; in icssg_config_mii_init_fw_offload() local 139 struct prueth *prueth = emac->prueth; in icssg_config_mii_init() local 225 struct prueth *prueth = emac->prueth; in icssg_config_ipg() local 285 struct prueth *prueth = emac->prueth; in prueth_fw_offload_buffer_setup() local 345 struct prueth *prueth = emac->prueth; in prueth_emac_buffer_setup() local 400 void icssg_init_emac_mode(struct prueth *prueth) in icssg_init_emac_mode() argument 425 void icssg_init_fw_offload_mode(struct prueth *prueth) in icssg_init_fw_offload_mode() argument 474 pruss_cfg_gpimode(prueth->pruss, prueth->pru_id[slice], in icssg_config() 606 struct prueth *prueth = emac->prueth; in icssg_send_fdb_msg() local 724 struct prueth *prueth = emac->prueth; in icssg_vtbl_modify() local [all …]
|
| H A D | icssg_queues.c | 16 int icssg_queue_pop(struct prueth *prueth, u8 queue) in icssg_queue_pop() argument 23 regmap_read(prueth->miig_rt, ICSSG_QUEUE_CNT_OFFSET + 4 * queue, &cnt); in icssg_queue_pop() 27 regmap_read(prueth->miig_rt, ICSSG_QUEUE_OFFSET + 4 * queue, &val); in icssg_queue_pop() 33 void icssg_queue_push(struct prueth *prueth, int queue, u16 addr) in icssg_queue_push() argument 38 regmap_write(prueth->miig_rt, ICSSG_QUEUE_OFFSET + 4 * queue, addr); in icssg_queue_push() 42 u32 icssg_queue_level(struct prueth *prueth, int queue) in icssg_queue_level() argument 49 regmap_read(prueth->miig_rt, ICSSG_QUEUE_CNT_OFFSET + 4 * queue, ®); in icssg_queue_level()
|
| H A D | icssg_prueth.h | 179 struct prueth *prueth; member 304 struct prueth { struct 403 int icssg_config(struct prueth *prueth, struct prueth_emac *emac, 409 void icssg_init_emac_mode(struct prueth *prueth); 410 void icssg_init_fw_offload_mode(struct prueth *prueth); 413 int icssg_queue_pop(struct prueth *prueth, u8 queue); 414 void icssg_queue_push(struct prueth *prueth, int queue, u16 addr); 415 u32 icssg_queue_level(struct prueth *prueth, int queue); 426 void icssg_set_pvid(struct prueth *prueth, u8 vid, u8 port); 476 void prueth_netdev_exit(struct prueth *prueth, [all …]
|
| H A D | icssg_stats.c | 22 struct prueth *prueth = emac->prueth; in emac_update_hardware_stats() local 29 spin_lock(&prueth->stats_lock); in emac_update_hardware_stats() 32 regmap_read(prueth->miig_rt, in emac_update_hardware_stats() 35 regmap_write(prueth->miig_rt, in emac_update_hardware_stats() 47 if (prueth->pa_stats) { in emac_update_hardware_stats() 52 regmap_read(prueth->pa_stats, reg, &val); in emac_update_hardware_stats() 57 spin_unlock(&prueth->stats_lock); in emac_update_hardware_stats() 80 if (emac->prueth->pa_stats) { in emac_get_stat_by_name()
|
| H A D | icssg_ethtool.c | 15 struct prueth *prueth = emac->prueth; in emac_get_drvinfo() local 17 strscpy(info->driver, dev_driver_string(prueth->dev), in emac_get_drvinfo() 19 strscpy(info->bus_info, dev_name(prueth->dev), sizeof(info->bus_info)); in emac_get_drvinfo() 74 if (emac->prueth->pa_stats) in emac_get_sset_count() 94 if (emac->prueth->pa_stats) in emac_get_strings() 115 if (emac->prueth->pa_stats) in emac_get_ethtool_stats() 248 struct prueth *prueth = emac->prueth; in emac_set_coalesce() local 255 dev_info(prueth->dev, "defaulting to min value of %dus for rx-usecs\n", in emac_set_coalesce() 262 dev_info(prueth->dev, "defaulting to min value of %dus for tx-usecs\n", in emac_set_coalesce() 277 struct prueth *prueth = emac->prueth; in emac_set_per_queue_coalesce() local [all …]
|
| H A D | icssg_common.c | 267 struct prueth *prueth = emac->prueth; in prueth_ndev_add_tx_napi() local 871 struct prueth *prueth = emac->prueth; in icssg_ndo_start_xmit() local 1391 void prueth_netdev_exit(struct prueth *prueth, in prueth_netdev_exit() argument 1401 emac = prueth->emac[mac]; in prueth_netdev_exit() 1413 prueth->emac[mac] = NULL; in prueth_netdev_exit() 1417 int prueth_get_cores(struct prueth *prueth, int slice, bool is_sr1) in prueth_get_cores() argument 1468 void prueth_put_cores(struct prueth *prueth, int slice) in prueth_put_cores() argument 1473 if (prueth->rtu[slice]) in prueth_put_cores() 1476 if (prueth->pru[slice]) in prueth_put_cores() 1484 struct prueth *prueth = dev_get_drvdata(dev); in prueth_suspend() local [all …]
|
| H A D | icssg_switchdev.h | 9 int prueth_switchdev_register_notifiers(struct prueth *prueth); 10 void prueth_switchdev_unregister_notifiers(struct prueth *prueth);
|
| H A D | icssg_switchdev.c | 254 icssg_set_pvid(emac->prueth, vid, emac->port_id); in prueth_switchdev_vlan_add() 278 icssg_set_pvid(emac->prueth, 0, emac->port_id); in prueth_switchdev_vlan_del() 450 int prueth_switchdev_register_notifiers(struct prueth *prueth) in prueth_switchdev_register_notifiers() argument 454 prueth->prueth_switchdev_nb.notifier_call = &prueth_switchdev_event; in prueth_switchdev_register_notifiers() 455 ret = register_switchdev_notifier(&prueth->prueth_switchdev_nb); in prueth_switchdev_register_notifiers() 457 dev_err(prueth->dev, "register switchdev notifier fail ret:%d\n", in prueth_switchdev_register_notifiers() 465 dev_err(prueth->dev, "register switchdev blocking notifier ret:%d\n", in prueth_switchdev_register_notifiers() 467 unregister_switchdev_notifier(&prueth->prueth_switchdev_nb); in prueth_switchdev_register_notifiers() 473 void prueth_switchdev_unregister_notifiers(struct prueth *prueth) in prueth_switchdev_unregister_notifiers() argument 475 unregister_switchdev_blocking_notifier(&prueth->prueth_switchdev_bl_nb); in prueth_switchdev_unregister_notifiers() [all …]
|
| /linux-6.15/Documentation/devicetree/bindings/net/ |
| H A D | ti,icssg-prueth.yaml | 4 $id: http://devicetree.org/schemas/net/ti,icssg-prueth.yaml# 19 - ti,am642-icssg-prueth # for AM64x SoC family 20 - ti,am654-icssg-prueth # for AM65x SoC family 21 - ti,am654-sr1-icssg-prueth # for AM65x SoC family, SR1.0 152 const: ti,am654-sr1-icssg-prueth 172 compatible = "ti,am654-icssg-prueth"; 179 firmware-name = "ti-pruss/am65x-pru0-prueth-fw.elf", 180 "ti-pruss/am65x-rtu0-prueth-fw.elf", 181 "ti-pruss/am65x-txpru0-prueth-fw.elf", 182 "ti-pruss/am65x-pru1-prueth-fw.elf", [all …]
|
| /linux-6.15/arch/arm64/boot/dts/ti/ |
| H A D | k3-am65-iot2050-common-pg1.dtsi | 46 compatible = "ti,am654-sr1-icssg-prueth"; 49 firmware-name = "ti-pruss/am65x-pru0-prueth-fw.elf", 50 "ti-pruss/am65x-rtu0-prueth-fw.elf", 51 "ti-pruss/am65x-pru1-prueth-fw.elf", 52 "ti-pruss/am65x-rtu1-prueth-fw.elf";
|
| H A D | k3-am654-idk.dtso | 25 compatible = "ti,am654-icssg-prueth"; 31 "ti-pruss/am65x-sr2-rtu0-prueth-fw.elf", 32 "ti-pruss/am65x-sr2-txpru0-prueth-fw.elf", 33 "ti-pruss/am65x-sr2-pru1-prueth-fw.elf", 34 "ti-pruss/am65x-sr2-rtu1-prueth-fw.elf", 35 "ti-pruss/am65x-sr2-txpru1-prueth-fw.elf"; 92 compatible = "ti,am654-icssg-prueth"; 98 "ti-pruss/am65x-sr2-rtu0-prueth-fw.elf", 99 "ti-pruss/am65x-sr2-txpru0-prueth-fw.elf", 100 "ti-pruss/am65x-sr2-pru1-prueth-fw.elf", [all …]
|
| H A D | k3-am654-icssg2.dtso | 22 compatible = "ti,am654-icssg-prueth"; 28 firmware-name = "ti-pruss/am65x-sr2-pru0-prueth-fw.elf", 29 "ti-pruss/am65x-sr2-rtu0-prueth-fw.elf", 30 "ti-pruss/am65x-sr2-txpru0-prueth-fw.elf", 31 "ti-pruss/am65x-sr2-pru1-prueth-fw.elf", 32 "ti-pruss/am65x-sr2-rtu1-prueth-fw.elf", 33 "ti-pruss/am65x-sr2-txpru1-prueth-fw.elf";
|
| H A D | k3-am642-phyboard-electra-rdk.dts | 62 compatible = "ti,am642-icssg-prueth"; 71 firmware-name = "ti-pruss/am65x-sr2-pru0-prueth-fw.elf", 72 "ti-pruss/am65x-sr2-rtu0-prueth-fw.elf", 73 "ti-pruss/am65x-sr2-txpru0-prueth-fw.elf", 74 "ti-pruss/am65x-sr2-pru1-prueth-fw.elf", 75 "ti-pruss/am65x-sr2-rtu1-prueth-fw.elf", 76 "ti-pruss/am65x-sr2-txpru1-prueth-fw.elf";
|
| H A D | k3-am65-iot2050-common.dtsi | 144 compatible = "ti,am654-icssg-prueth"; 151 firmware-name = "ti-pruss/am65x-sr2-pru0-prueth-fw.elf", 152 "ti-pruss/am65x-sr2-rtu0-prueth-fw.elf", 153 "ti-pruss/am65x-sr2-txpru0-prueth-fw.elf", 154 "ti-pruss/am65x-sr2-pru1-prueth-fw.elf", 155 "ti-pruss/am65x-sr2-rtu1-prueth-fw.elf", 156 "ti-pruss/am65x-sr2-txpru1-prueth-fw.elf";
|
| H A D | k3-am642-sr-som.dtsi | 29 compatible = "ti,am642-icssg-prueth"; 35 firmware-name = "ti-pruss/am65x-sr2-pru0-prueth-fw.elf", 36 "ti-pruss/am65x-sr2-rtu0-prueth-fw.elf", 37 "ti-pruss/am65x-sr2-txpru0-prueth-fw.elf", 38 "ti-pruss/am65x-sr2-pru1-prueth-fw.elf", 39 "ti-pruss/am65x-sr2-rtu1-prueth-fw.elf", 40 "ti-pruss/am65x-sr2-txpru1-prueth-fw.elf";
|
| H A D | k3-am642-tqma64xxl-mbax4xxl.dts | 77 compatible = "ti,am642-icssg-prueth"; 97 firmware-name = "ti-pruss/am64x-sr2-pru0-prueth-fw.elf", 98 "ti-pruss/am64x-sr2-rtu0-prueth-fw.elf", 99 "ti-pruss/am64x-sr2-txpru0-prueth-fw.elf", 100 "ti-pruss/am64x-sr2-pru1-prueth-fw.elf", 101 "ti-pruss/am64x-sr2-rtu1-prueth-fw.elf", 102 "ti-pruss/am64x-sr2-txpru1-prueth-fw.elf"; 220 /* phy-mode is fixed up to rgmii-rxid by prueth driver to account for
|
| H A D | k3-am642-evm.dts | 247 compatible = "ti,am642-icssg-prueth"; 252 firmware-name = "ti-pruss/am64x-sr2-pru0-prueth-fw.elf", 253 "ti-pruss/am64x-sr2-rtu0-prueth-fw.elf", 254 "ti-pruss/am64x-sr2-txpru0-prueth-fw.elf", 255 "ti-pruss/am64x-sr2-pru1-prueth-fw.elf", 256 "ti-pruss/am64x-sr2-rtu1-prueth-fw.elf", 257 "ti-pruss/am64x-sr2-txpru1-prueth-fw.elf";
|
| /linux-6.15/drivers/net/ethernet/ti/ |
| H A D | Makefile | 34 obj-$(CONFIG_TI_ICSSG_PRUETH) += icssg-prueth.o icssg.o 35 icssg-prueth-y := icssg/icssg_prueth.o icssg/icssg_switchdev.o 37 obj-$(CONFIG_TI_ICSSG_PRUETH_SR1) += icssg-prueth-sr1.o icssg.o 38 icssg-prueth-sr1-y := icssg/icssg_prueth_sr1.o
|