/linux-6.3-rc2/drivers/net/ethernet/mscc/ |
A D | ocelot.c | 46 static void ocelot_mact_select(struct ocelot *ocelot, in ocelot_mact_select() argument 114 int ocelot_mact_forget(struct ocelot *ocelot, in ocelot_mact_forget() argument 796 ocelot->ops->cut_through_fwd(ocelot); in ocelot_phylink_mac_link_down() 911 ocelot->ops->cut_through_fwd(ocelot); in ocelot_phylink_mac_link_up() 1495 ocelot->ops->cut_through_fwd(ocelot); in ocelot_apply_bridge_fwd_mask() 1544 ocelot->ops->cut_through_fwd(ocelot); in ocelot_apply_bridge_fwd_mask() 2731 int ocelot_reset(struct ocelot *ocelot) in ocelot_reset() argument 2760 int ocelot_init(struct ocelot *ocelot) in ocelot_init() argument 2766 ret = ocelot->ops->reset(ocelot); in ocelot_init() 2799 ocelot->ops->psfp_init(ocelot); in ocelot_init() [all …]
|
A D | ocelot_vsc7514.c | 29 static void ocelot_pll5_init(struct ocelot *ocelot) in ocelot_pll5_init() argument 80 struct ocelot *ocelot = arg; in ocelot_xtr_irq_handler() local 106 struct ocelot *ocelot = arg; in ocelot_ptp_rdy_irq_handler() local 153 static void mscc_ocelot_release_ports(struct ocelot *ocelot) in mscc_ocelot_release_ports() argument 172 struct ocelot *ocelot = platform_get_drvdata(pdev); in mscc_ocelot_init_ports() local 178 ocelot->ports = devm_kcalloc(ocelot->dev, ocelot->num_phys_ports, in mscc_ocelot_init_ports() 183 ocelot->devlink_ports = devm_kcalloc(ocelot->dev, in mscc_ocelot_init_ports() 265 struct ocelot *ocelot; in mscc_ocelot_probe() local 295 ocelot->devlink = priv_to_devlink(ocelot); in mscc_ocelot_probe() 352 ocelot); in mscc_ocelot_probe() [all …]
|
A D | ocelot_devlink.c | 221 static u32 ocelot_wm_read(struct ocelot *ocelot, int index) in ocelot_wm_read() argument 349 static void ocelot_setup_sharing_watermarks(struct ocelot *ocelot) in ocelot_setup_sharing_watermarks() argument 382 static int ocelot_watermark_validate(struct ocelot *ocelot, in ocelot_watermark_validate() argument 476 static void ocelot_watermark_init(struct ocelot *ocelot) in ocelot_watermark_init() argument 601 int ocelot_sb_port_pool_get(struct ocelot *ocelot, int port, in ocelot_sb_port_pool_get() argument 632 int ocelot_sb_port_pool_set(struct ocelot *ocelot, int port, in ocelot_sb_port_pool_set() argument 675 int ocelot_sb_tc_pool_bind_get(struct ocelot *ocelot, int port, in ocelot_sb_tc_pool_bind_get() argument 712 int ocelot_sb_tc_pool_bind_set(struct ocelot *ocelot, int port, in ocelot_sb_tc_pool_bind_set() argument 818 int ocelot_sb_occ_port_pool_get(struct ocelot *ocelot, int port, in ocelot_sb_occ_port_pool_get() argument 882 int ocelot_devlink_sb_register(struct ocelot *ocelot) in ocelot_devlink_sb_register() argument [all …]
|
A D | ocelot_ptp.c | 19 struct ocelot *ocelot = container_of(ptp, struct ocelot, ptp_info); in ocelot_ptp_gettime64() local 54 struct ocelot *ocelot = container_of(ptp, struct ocelot, ptp_info); in ocelot_ptp_settime64() local 81 ocelot->ops->tas_clock_adjust(ocelot); in ocelot_ptp_settime64() 90 struct ocelot *ocelot = container_of(ptp, struct ocelot, in ocelot_ptp_adjtime() local 118 ocelot->ops->tas_clock_adjust(ocelot); in ocelot_ptp_adjtime() 138 struct ocelot *ocelot = container_of(ptp, struct ocelot, ptp_info); in ocelot_ptp_adjfine() local 200 struct ocelot *ocelot = container_of(ptp, struct ocelot, ptp_info); in ocelot_ptp_enable() local 723 void ocelot_get_txtstamp(struct ocelot *ocelot) in ocelot_get_txtstamp() argument 794 int ocelot_init_timestamp(struct ocelot *ocelot, in ocelot_init_timestamp() argument 810 ocelot->ptp_info.pin_config = &ocelot->ptp_pins[0]; in ocelot_init_timestamp() [all …]
|
A D | ocelot_fdma.c | 28 static u32 ocelot_fdma_readl(struct ocelot *ocelot, u32 reg) in ocelot_fdma_readl() argument 97 static u32 ocelot_fdma_read_ch_safe(struct ocelot *ocelot) in ocelot_fdma_read_ch_safe() argument 123 static bool ocelot_fdma_rx_alloc_page(struct ocelot *ocelot, in ocelot_fdma_rx_alloc_page() argument 209 static bool ocelot_fdma_check_stop_rx(struct ocelot *ocelot) in ocelot_fdma_check_stop_rx() argument 235 static void ocelot_fdma_rx_restart(struct ocelot *ocelot) in ocelot_fdma_rx_restart() argument 554 struct ocelot *ocelot = fdma->ocelot; in ocelot_fdma_napi_poll() local 580 struct ocelot *ocelot = dev_id; in ocelot_fdma_interrupt() local 607 static void ocelot_fdma_send_skb(struct ocelot *ocelot, in ocelot_fdma_send_skb() argument 830 fdma->ocelot = ocelot; in ocelot_fdma_init() 853 void ocelot_fdma_start(struct ocelot *ocelot) in ocelot_fdma_start() argument [all …]
|
A D | ocelot_mrp.c | 18 static int ocelot_mrp_find_partner_port(struct ocelot *ocelot, in ocelot_mrp_find_partner_port() argument 36 static int ocelot_mrp_del_vcap(struct ocelot *ocelot, int id) in ocelot_mrp_del_vcap() argument 91 static int ocelot_mrp_trap_add(struct ocelot *ocelot, int port) in ocelot_mrp_trap_add() argument 99 static int ocelot_mrp_trap_del(struct ocelot *ocelot, int port) in ocelot_mrp_trap_del() argument 106 static void ocelot_mrp_save_mac(struct ocelot *ocelot, in ocelot_mrp_save_mac() argument 115 static void ocelot_mrp_del_mac(struct ocelot *ocelot, in ocelot_mrp_del_mac() argument 122 int ocelot_mrp_add(struct ocelot *ocelot, int port, in ocelot_mrp_add() argument 144 int ocelot_mrp_del(struct ocelot *ocelot, int port, in ocelot_mrp_del() argument 161 int ocelot_mrp_add_ring_role(struct ocelot *ocelot, int port, in ocelot_mrp_add_ring_role() argument 201 int ocelot_mrp_del_ring_role(struct ocelot *ocelot, int port, in ocelot_mrp_del_ring_role() argument [all …]
|
A D | ocelot_net.c | 201 struct ocelot *ocelot = priv->port.ocelot; in ocelot_setup_tc_cls_flower() local 225 struct ocelot *ocelot = priv->port.ocelot; in ocelot_setup_tc_cls_matchall_police() local 266 struct ocelot *ocelot = priv->port.ocelot; in ocelot_setup_tc_cls_matchall_mirred() local 306 struct ocelot *ocelot = priv->port.ocelot; in ocelot_del_tc_cls_matchall_police() local 327 struct ocelot *ocelot = priv->port.ocelot; in ocelot_del_tc_cls_matchall_mirred() local 515 struct ocelot *ocelot = priv->port.ocelot; in ocelot_vlan_vid_del() local 623 struct ocelot *ocelot = w->ocelot; in ocelot_mact_work() local 688 struct ocelot *ocelot = priv->port.ocelot; in ocelot_set_rx_mode() local 724 struct ocelot *ocelot = priv->port.ocelot; in ocelot_get_stats64() local 806 struct ocelot *ocelot = priv->port.ocelot; in ocelot_port_fdb_dump() local [all …]
|
A D | ocelot.h | 77 int ocelot_bridge_num_find(struct ocelot *ocelot, 80 int ocelot_mact_learn(struct ocelot *ocelot, int port, 83 int ocelot_mact_forget(struct ocelot *ocelot, 94 int ocelot_devlink_init(struct ocelot *ocelot); 95 void ocelot_devlink_teardown(struct ocelot *ocelot); 96 int ocelot_port_devlink_init(struct ocelot *ocelot, int port, 100 int ocelot_trap_add(struct ocelot *ocelot, int port, 107 void ocelot_mirror_put(struct ocelot *ocelot); 109 int ocelot_stats_init(struct ocelot *ocelot); 110 void ocelot_stats_deinit(struct ocelot *ocelot); [all …]
|
A D | ocelot_stats.c | 310 ocelot_get_stats_layout(struct ocelot *ocelot) in ocelot_get_stats_layout() argument 366 struct ocelot *ocelot = container_of(del_work, struct ocelot, in ocelot_check_stats_work() local 383 ocelot->ops->update_stats(ocelot); in ocelot_check_stats_work() 416 void (*cb)(struct ocelot *ocelot, int port, in ocelot_port_stats_run() argument 534 dev = ocelot->ops->port_to_netdev(ocelot, port); in ocelot_port_get_pause_stats() 636 dev = ocelot->ops->port_to_netdev(ocelot, port); in ocelot_port_get_rmon_stats() 676 dev = ocelot->ops->port_to_netdev(ocelot, port); in ocelot_port_get_eth_ctrl_stats() 775 dev = ocelot->ops->port_to_netdev(ocelot, port); in ocelot_port_get_eth_mac_stats() 934 int ocelot_stats_init(struct ocelot *ocelot) in ocelot_stats_init() argument 939 ocelot->stats = devm_kcalloc(ocelot->dev, in ocelot_stats_init() [all …]
|
A D | ocelot_io.c | 13 int __ocelot_bulk_read_ix(struct ocelot *ocelot, u32 reg, u32 offset, void *buf, in __ocelot_bulk_read_ix() argument 26 u32 __ocelot_read_ix(struct ocelot *ocelot, u32 reg, u32 offset) in __ocelot_read_ix() argument 39 void __ocelot_write_ix(struct ocelot *ocelot, u32 val, u32 reg, u32 offset) in __ocelot_write_ix() argument 50 void __ocelot_rmw_ix(struct ocelot *ocelot, u32 val, u32 mask, u32 reg, in __ocelot_rmw_ix() argument 65 struct ocelot *ocelot = port->ocelot; in ocelot_port_readl() local 78 struct ocelot *ocelot = port->ocelot; in ocelot_port_writel() local 95 u32 __ocelot_target_read_ix(struct ocelot *ocelot, enum ocelot_target target, in __ocelot_target_read_ix() argument 105 void __ocelot_target_write_ix(struct ocelot *ocelot, enum ocelot_target target, in __ocelot_target_write_ix() argument 112 int ocelot_regfields_init(struct ocelot *ocelot, in ocelot_regfields_init() argument 133 ocelot->regfields[i] = in ocelot_regfields_init() [all …]
|
A D | ocelot_mm.c | 52 void ocelot_port_mm_irq(struct ocelot *ocelot, int port) in ocelot_port_mm_irq() argument 65 dev_dbg(ocelot->dev, in ocelot_port_mm_irq() 79 dev_err(ocelot->dev, in ocelot_port_mm_irq() 85 dev_err(ocelot->dev, in ocelot_port_mm_irq() 96 int ocelot_port_set_mm(struct ocelot *ocelot, int port, in ocelot_port_set_mm() argument 108 mm = &ocelot->mm[port]; in ocelot_port_set_mm() 137 ocelot_rmw_rix(ocelot, in ocelot_port_set_mm() 149 int ocelot_port_get_mm(struct ocelot *ocelot, int port, in ocelot_port_get_mm() argument 186 int ocelot_mm_init(struct ocelot *ocelot) in ocelot_mm_init() argument 195 ocelot->mm = devm_kcalloc(ocelot->dev, ocelot->num_phys_ports, in ocelot_mm_init() [all …]
|
A D | ocelot_vcap.c | 49 static u32 vcap_read_update_ctrl(struct ocelot *ocelot, in vcap_read_update_ctrl() argument 88 static void vcap_entry2cache(struct ocelot *ocelot, in vcap_entry2cache() argument 105 static void vcap_cache2entry(struct ocelot *ocelot, in vcap_cache2entry() argument 123 static void vcap_action2cache(struct ocelot *ocelot, in vcap_action2cache() argument 148 static void vcap_cache2action(struct ocelot *ocelot, in vcap_cache2action() argument 345 static void is2_entry_set(struct ocelot *ocelot, int ix, in is2_entry_set() argument 669 static void is1_entry_set(struct ocelot *ocelot, int ix, in is1_entry_set() argument 1183 int ocelot_vcap_filter_add(struct ocelot *ocelot, in ocelot_vcap_filter_add() argument 1239 int ocelot_vcap_filter_del(struct ocelot *ocelot, in ocelot_vcap_filter_del() argument 1277 int ocelot_vcap_filter_replace(struct ocelot *ocelot, in ocelot_vcap_filter_replace() argument [all …]
|
A D | ocelot_flower.c | 145 ocelot_find_vcap_filter_that_points_at(struct ocelot *ocelot, int chain) in ocelot_find_vcap_filter_that_points_at() argument 231 static int ocelot_flower_parse_action(struct ocelot *ocelot, int port, in ocelot_flower_parse_action() argument 542 dev = ocelot->ops->port_to_netdev(ocelot, port); in ocelot_flower_parse_indev() 816 static int ocelot_vcap_dummy_filter_add(struct ocelot *ocelot, in ocelot_vcap_dummy_filter_add() argument 824 static int ocelot_vcap_dummy_filter_del(struct ocelot *ocelot, in ocelot_vcap_dummy_filter_del() argument 858 int ocelot_cls_flower_replace(struct ocelot *ocelot, int port, in ocelot_cls_flower_replace() argument 917 return ocelot->ops->psfp_filter_add(ocelot, port, f); in ocelot_cls_flower_replace() 927 int ocelot_cls_flower_destroy(struct ocelot *ocelot, int port, in ocelot_cls_flower_destroy() argument 940 return ocelot->ops->psfp_filter_del(ocelot, f); in ocelot_cls_flower_destroy() 964 int ocelot_cls_flower_stats(struct ocelot *ocelot, int port, in ocelot_cls_flower_stats() argument [all …]
|
A D | ocelot_police.c | 23 int qos_policer_conf_set(struct ocelot *ocelot, u32 pol_ix, in qos_policer_conf_set() argument 105 dev_err(ocelot->dev, in qos_policer_conf_set() 112 dev_err(ocelot->dev, in qos_policer_conf_set() 119 dev_err(ocelot->dev, in qos_policer_conf_set() 126 dev_err(ocelot->dev, in qos_policer_conf_set() 140 ocelot_write_gix(ocelot, in qos_policer_conf_set() 145 ocelot_write_gix(ocelot, in qos_policer_conf_set() 202 int ocelot_port_policer_add(struct ocelot *ocelot, int port, in ocelot_port_policer_add() argument 222 ocelot_rmw_gix(ocelot, in ocelot_port_policer_add() 233 int ocelot_port_policer_del(struct ocelot *ocelot, int port) in ocelot_port_policer_del() argument [all …]
|
A D | ocelot_fdma.h | 154 struct ocelot *ocelot; member 157 void ocelot_fdma_init(struct platform_device *pdev, struct ocelot *ocelot); 158 void ocelot_fdma_start(struct ocelot *ocelot); 159 void ocelot_fdma_deinit(struct ocelot *ocelot); 160 int ocelot_fdma_inject_frame(struct ocelot *fdma, int port, u32 rew_op, 162 void ocelot_fdma_netdev_init(struct ocelot *ocelot, struct net_device *dev); 163 void ocelot_fdma_netdev_deinit(struct ocelot *ocelot,
|
A D | ocelot_vcap.h | 15 int ocelot_vcap_filter_stats_update(struct ocelot *ocelot, 18 void ocelot_detect_vcap_constants(struct ocelot *ocelot); 19 int ocelot_vcap_init(struct ocelot *ocelot);
|
/linux-6.3-rc2/include/soc/mscc/ |
A D | ocelot.h | 651 int (*reset)(struct ocelot *ocelot); 655 void (*psfp_init)(struct ocelot *ocelot); 661 void (*cut_through_fwd)(struct ocelot *ocelot); 662 void (*tas_clock_adjust)(struct ocelot *ocelot); 663 void (*update_stats)(struct ocelot *ocelot); 754 struct ocelot *ocelot; member 967 int ocelot_regfields_init(struct ocelot *ocelot, 970 int ocelot_reset(struct ocelot *ocelot); 971 int ocelot_init(struct ocelot *ocelot); 972 void ocelot_deinit(struct ocelot *ocelot); [all …]
|
A D | ocelot_vcap.h | 15 #define OCELOT_VCAP_IS1_TAG_8021Q_TXVLAN(ocelot, port) (port) argument 17 #define OCELOT_VCAP_IS2_MRP_REDIRECT(ocelot, port) ((ocelot)->num_phys_ports + (port)) argument 18 #define OCELOT_VCAP_IS2_MRP_TRAP(ocelot) ((ocelot)->num_phys_ports * 2) argument 19 #define OCELOT_VCAP_IS2_L2_PTP_TRAP(ocelot) ((ocelot)->num_phys_ports * 2 + 1) argument 20 #define OCELOT_VCAP_IS2_IPV4_GEN_PTP_TRAP(ocelot) ((ocelot)->num_phys_ports * 2 + 2) argument 21 #define OCELOT_VCAP_IS2_IPV4_EV_PTP_TRAP(ocelot) ((ocelot)->num_phys_ports * 2 + 3) argument 22 #define OCELOT_VCAP_IS2_IPV6_GEN_PTP_TRAP(ocelot) ((ocelot)->num_phys_ports * 2 + 4) argument 23 #define OCELOT_VCAP_IS2_IPV6_EV_PTP_TRAP(ocelot) ((ocelot)->num_phys_ports * 2 + 5) argument 720 int ocelot_vcap_filter_add(struct ocelot *ocelot, 723 int ocelot_vcap_filter_del(struct ocelot *ocelot, [all …]
|
/linux-6.3-rc2/drivers/net/dsa/ocelot/ |
A D | felix.c | 48 struct ocelot *ocelot = ds->priv; in felix_cpu_port_for_master() local 71 struct ocelot *ocelot = ds->priv; in felix_tag_8021q_vlan_add_rx() local 112 struct ocelot *ocelot = ds->priv; in felix_tag_8021q_vlan_del_rx() local 134 struct ocelot *ocelot = ds->priv; in felix_tag_8021q_vlan_add_tx() local 201 struct ocelot *ocelot = ds->priv; in felix_tag_8021q_vlan_del_tx() local 308 struct ocelot *ocelot = ds->priv; in felix_update_trapping_destinations() local 411 struct ocelot *ocelot = ds->priv; in felix_tag_npi_setup() local 432 struct ocelot *ocelot = ds->priv; in felix_tag_npi_teardown() local 1319 struct ocelot *ocelot = &felix->ocelot; in felix_request_regmap_by_name() local 1369 struct ocelot *ocelot = &felix->ocelot; in felix_init_structs() local [all …]
|
A D | felix_vsc9959.c | 895 static int vsc9959_reset(struct ocelot *ocelot) in vsc9959_reset() argument 955 static int vsc9959_mdio_bus_alloc(struct ocelot *ocelot) in vsc9959_mdio_bus_alloc() argument 1337 ocelot->ops->cut_through_fwd(ocelot); in vsc9959_tas_guard_bands_update() 1569 struct ocelot *ocelot = ds->priv; in vsc9959_qos_port_cbs_set() local 1631 struct ocelot *ocelot = ds->priv; in vsc9959_port_setup_tc() local 1854 static int vsc9959_psfp_sfi_set(struct ocelot *ocelot, in vsc9959_psfp_sfi_set() argument 2067 static int vsc9959_psfp_sgi_set(struct ocelot *ocelot, in vsc9959_psfp_sgi_set() argument 2472 static void vsc9959_psfp_init(struct ocelot *ocelot) in vsc9959_psfp_init() argument 2612 struct ocelot *ocelot = (struct ocelot *)data; in felix_irq_handler() local 2627 struct ocelot *ocelot; in felix_pci_probe() local [all …]
|
A D | felix.h | 7 #define ocelot_to_felix(o) container_of((o), struct felix, ocelot) 54 int (*mdio_bus_alloc)(struct ocelot *ocelot); 55 void (*mdio_bus_free)(struct ocelot *ocelot); 58 void (*tas_guard_bands_update)(struct ocelot *ocelot, int port); 59 void (*port_sched_speed_set)(struct ocelot *ocelot, int port, 85 struct ocelot ocelot; member 96 struct net_device *felix_port_to_netdev(struct ocelot *ocelot, int port);
|
A D | seville_vsc9953.c | 784 static int vsc9953_gcb_soft_rst_status(struct ocelot *ocelot) in vsc9953_gcb_soft_rst_status() argument 793 static int vsc9953_sys_ram_init_status(struct ocelot *ocelot) in vsc9953_sys_ram_init_status() argument 807 static int vsc9953_reset(struct ocelot *ocelot) in vsc9953_reset() argument 878 static int vsc9953_mdio_bus_alloc(struct ocelot *ocelot) in vsc9953_mdio_bus_alloc() argument 895 ocelot->targets[GCB], in vsc9953_mdio_bus_alloc() 942 static void vsc9953_mdio_bus_free(struct ocelot *ocelot) in vsc9953_mdio_bus_free() argument 986 struct ocelot *ocelot; in seville_probe() local 1000 ocelot = &felix->ocelot; in seville_probe() 1001 ocelot->dev = &pdev->dev; in seville_probe() 1002 ocelot->num_flooding_pgids = 1; in seville_probe() [all …]
|
A D | ocelot_ext.c | 68 struct ocelot *ocelot; in ocelot_ext_probe() local 78 ocelot = &felix->ocelot; in ocelot_ext_probe() 79 ocelot->dev = dev; in ocelot_ext_probe() 81 ocelot->num_flooding_pgids = 1; in ocelot_ext_probe() 97 ds->priv = ocelot; in ocelot_ext_probe()
|
/linux-6.3-rc2/Documentation/devicetree/bindings/mips/ |
A D | mscc.txt | 7 - compatible: "mscc,ocelot", "mscc,luton", "mscc,serval" or "mscc,jr2" 19 - compatible: Should be "mscc,ocelot-chip-regs", "simple-mfd", "syscon" 24 compatible = "mscc,ocelot-chip-regs", "simple-mfd", "syscon"; 36 - compatible: Should be "mscc,ocelot-cpu-syscon", "syscon" 41 compatible = "mscc,ocelot-cpu-syscon", "syscon"; 52 - compatible: Should be "mscc,ocelot-hsio", "syscon", "simple-mfd" 57 compatible = "mscc,ocelot-hsio", "syscon", "simple-mfd";
|
/linux-6.3-rc2/Documentation/devicetree/bindings/mfd/ |
A D | mscc,ocelot.yaml | 4 $id: http://devicetree.org/schemas/mfd/mscc,ocelot.yaml# 42 $ref: /schemas/pinctrl/mscc,ocelot-pinctrl.yaml 50 - mscc,ocelot-sgpio 58 - mscc,ocelot-miim 79 ocelot_clock: ocelot-clock { 97 compatible = "mscc,ocelot-miim"; 108 compatible = "mscc,ocelot-miim"; 121 compatible = "mscc,ocelot-pinctrl"; 139 compatible = "mscc,ocelot-sgpio";
|