span_entry 6441 drivers/net/ethernet/mellanox/mlxsw/spectrum.c struct mlxsw_sp_span_entry *span_entry; span_entry 6447 drivers/net/ethernet/mellanox/mlxsw/spectrum.c span_entry = mlxsw_sp_span_entry_find_by_port(mlxsw_sp, dev); span_entry 6448 drivers/net/ethernet/mellanox/mlxsw/spectrum.c if (span_entry) span_entry 6449 drivers/net/ethernet/mellanox/mlxsw/spectrum.c mlxsw_sp_span_entry_invalidate(mlxsw_sp, span_entry); span_entry 63 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_phys_configure(struct mlxsw_sp_span_entry *span_entry, span_entry 70 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c int pa_id = span_entry->id; span_entry 80 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure_common(struct mlxsw_sp_span_entry *span_entry, span_entry 83 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_port *dest_port = span_entry->parms.dest_port; span_entry 87 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c int pa_id = span_entry->id; span_entry 94 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_phys_deconfigure(struct mlxsw_sp_span_entry *span_entry) span_entry 96 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure_common(span_entry, span_entry 358 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_gretap4_configure(struct mlxsw_sp_span_entry *span_entry, span_entry 365 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c int pa_id = span_entry->id; span_entry 383 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_gretap4_deconfigure(struct mlxsw_sp_span_entry *span_entry) span_entry 385 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure_common(span_entry, span_entry 459 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_gretap6_configure(struct mlxsw_sp_span_entry *span_entry, span_entry 466 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c int pa_id = span_entry->id; span_entry 483 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_gretap6_deconfigure(struct mlxsw_sp_span_entry *span_entry) span_entry 485 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure_common(span_entry, span_entry 522 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_vlan_configure(struct mlxsw_sp_span_entry *span_entry, span_entry 529 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c int pa_id = span_entry->id; span_entry 539 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_vlan_deconfigure(struct mlxsw_sp_span_entry *span_entry) span_entry 541 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure_common(span_entry, span_entry 573 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_nop_configure(struct mlxsw_sp_span_entry *span_entry, span_entry 580 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_nop_deconfigure(struct mlxsw_sp_span_entry *span_entry) span_entry 592 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry, span_entry 597 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c netdev_err(span_entry->to_dev, "Cannot mirror to %s, which belongs to a different mlxsw instance", span_entry 600 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c } else if (span_entry->ops->configure(span_entry, sparms)) { span_entry 601 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c netdev_err(span_entry->to_dev, "Failed to offload mirror to %s", span_entry 607 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->parms = sparms; span_entry 611 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure(struct mlxsw_sp_span_entry *span_entry) span_entry 613 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c if (span_entry->parms.dest_port) span_entry 614 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->ops->deconfigure(span_entry); span_entry 623 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry = NULL; span_entry 629 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry = &mlxsw_sp->span.entries[i]; span_entry 633 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c if (!span_entry) span_entry 636 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->ops = ops; span_entry 637 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->ref_count = 1; span_entry 638 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->to_dev = to_dev; span_entry 639 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_configure(mlxsw_sp, span_entry, sparms); span_entry 641 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c return span_entry; span_entry 644 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c static void mlxsw_sp_span_entry_destroy(struct mlxsw_sp_span_entry *span_entry) span_entry 646 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure(span_entry); span_entry 665 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry) span_entry 667 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_deconfigure(span_entry); span_entry 668 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->ops = &mlxsw_sp_span_entry_ops_nop; span_entry 691 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry; span_entry 693 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry = mlxsw_sp_span_entry_find_by_port(mlxsw_sp, to_dev); span_entry 694 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c if (span_entry) { span_entry 696 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->ref_count++; span_entry 697 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c return span_entry; span_entry 704 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry) span_entry 706 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c WARN_ON(!span_entry->ref_count); span_entry 707 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c if (--span_entry->ref_count == 0) span_entry 708 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_destroy(span_entry); span_entry 760 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_bound_port_find(struct mlxsw_sp_span_entry *span_entry, span_entry 767 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c list_for_each_entry(p, &span_entry->bound_ports_list, list) span_entry 777 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry, span_entry 783 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c int pa_id = span_entry->id; span_entry 793 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry, span_entry 830 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c err = mlxsw_sp_span_inspected_port_bind(port, span_entry, type, span_entry 844 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c list_add_tail(&inspected_port->list, &span_entry->bound_ports_list); span_entry 850 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_inspected_port_bind(port, span_entry, type, span_entry 862 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry, span_entry 870 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c inspected_port = mlxsw_sp_span_entry_bound_port_find(span_entry, type, span_entry 876 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_inspected_port_bind(port, span_entry, type, span_entry 884 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_put(mlxsw_sp, span_entry); span_entry 911 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry; span_entry 924 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry = mlxsw_sp_span_entry_get(mlxsw_sp, to_dev, ops, sparms); span_entry 925 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c if (!span_entry) span_entry 929 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->id); span_entry 931 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c err = mlxsw_sp_span_inspected_port_add(from, span_entry, type, bind); span_entry 935 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c *p_span_id = span_entry->id; span_entry 939 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_entry_put(mlxsw_sp, span_entry); span_entry 946 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c struct mlxsw_sp_span_entry *span_entry; span_entry 948 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry = mlxsw_sp_span_entry_find_by_id(from->mlxsw_sp, span_id); span_entry 949 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c if (!span_entry) { span_entry 955 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c span_entry->id); span_entry 956 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.c mlxsw_sp_span_inspected_port_del(from, span_entry, type, bind); span_entry 54 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.h int (*configure)(struct mlxsw_sp_span_entry *span_entry, span_entry 56 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.h void (*deconfigure)(struct mlxsw_sp_span_entry *span_entry); span_entry 74 drivers/net/ethernet/mellanox/mlxsw/spectrum_span.h struct mlxsw_sp_span_entry *span_entry);