mlxsw_core         26 drivers/net/ethernet/mellanox/mlxsw/cmd.h struct mlxsw_core;
mlxsw_core         28 drivers/net/ethernet/mellanox/mlxsw/cmd.h int mlxsw_cmd_exec(struct mlxsw_core *mlxsw_core, u16 opcode, u8 opcode_mod,
mlxsw_core         33 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_exec_in(struct mlxsw_core *mlxsw_core, u16 opcode,
mlxsw_core         37 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec(mlxsw_core, opcode, opcode_mod, in_mod, false,
mlxsw_core         41 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_exec_out(struct mlxsw_core *mlxsw_core, u16 opcode,
mlxsw_core         46 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec(mlxsw_core, opcode, opcode_mod, in_mod,
mlxsw_core         51 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_exec_none(struct mlxsw_core *mlxsw_core, u16 opcode,
mlxsw_core         54 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec(mlxsw_core, opcode, opcode_mod, in_mod, false,
mlxsw_core        199 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_query_fw(struct mlxsw_core *mlxsw_core,
mlxsw_core        202 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_out(mlxsw_core, MLXSW_CMD_OPCODE_QUERY_FW,
mlxsw_core        339 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_boardinfo(struct mlxsw_core *mlxsw_core,
mlxsw_core        342 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_out(mlxsw_core, MLXSW_CMD_OPCODE_QUERY_BOARDINFO,
mlxsw_core        383 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_query_aq_cap(struct mlxsw_core *mlxsw_core,
mlxsw_core        386 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_out(mlxsw_core, MLXSW_CMD_OPCODE_QUERY_AQ_CAP,
mlxsw_core        461 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_map_fa(struct mlxsw_core *mlxsw_core,
mlxsw_core        464 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_in(mlxsw_core, MLXSW_CMD_OPCODE_MAP_FA,
mlxsw_core        490 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_unmap_fa(struct mlxsw_core *mlxsw_core)
mlxsw_core        492 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_none(mlxsw_core, MLXSW_CMD_OPCODE_UNMAP_FA, 0, 0);
mlxsw_core        510 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_query_resources(struct mlxsw_core *mlxsw_core,
mlxsw_core        513 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_out(mlxsw_core, MLXSW_CMD_OPCODE_QUERY_RESOURCES,
mlxsw_core        544 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_config_profile_set(struct mlxsw_core *mlxsw_core,
mlxsw_core        547 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_in(mlxsw_core, MLXSW_CMD_OPCODE_CONFIG_PROFILE,
mlxsw_core        855 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_access_reg(struct mlxsw_core *mlxsw_core,
mlxsw_core        859 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec(mlxsw_core, MLXSW_CMD_OPCODE_ACCESS_REG,
mlxsw_core        875 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int __mlxsw_cmd_sw2hw_dq(struct mlxsw_core *mlxsw_core,
mlxsw_core        879 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_in(mlxsw_core, MLXSW_CMD_OPCODE_SW2HW_DQ,
mlxsw_core        889 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_sw2hw_sdq(struct mlxsw_core *mlxsw_core,
mlxsw_core        892 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_sw2hw_dq(mlxsw_core, in_mbox, dq_number,
mlxsw_core        896 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_sw2hw_rdq(struct mlxsw_core *mlxsw_core,
mlxsw_core        899 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_sw2hw_dq(mlxsw_core, in_mbox, dq_number,
mlxsw_core        934 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int __mlxsw_cmd_hw2sw_dq(struct mlxsw_core *mlxsw_core,
mlxsw_core        937 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_none(mlxsw_core, MLXSW_CMD_OPCODE_HW2SW_DQ,
mlxsw_core        941 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_hw2sw_sdq(struct mlxsw_core *mlxsw_core,
mlxsw_core        944 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_hw2sw_dq(mlxsw_core, dq_number,
mlxsw_core        948 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_hw2sw_rdq(struct mlxsw_core *mlxsw_core,
mlxsw_core        951 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_hw2sw_dq(mlxsw_core, dq_number,
mlxsw_core        969 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int __mlxsw_cmd_2err_dq(struct mlxsw_core *mlxsw_core,
mlxsw_core        972 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_none(mlxsw_core, MLXSW_CMD_OPCODE_2ERR_DQ,
mlxsw_core        976 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_2err_sdq(struct mlxsw_core *mlxsw_core,
mlxsw_core        979 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_2err_dq(mlxsw_core, dq_number,
mlxsw_core        983 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_2err_rdq(struct mlxsw_core *mlxsw_core,
mlxsw_core        986 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_2err_dq(mlxsw_core, dq_number,
mlxsw_core       1000 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int __mlxsw_cmd_query_dq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1004 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_out(mlxsw_core, MLXSW_CMD_OPCODE_2ERR_DQ,
mlxsw_core       1009 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_query_sdq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1012 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_query_dq(mlxsw_core, out_mbox, dq_number,
mlxsw_core       1016 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_query_rdq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1019 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return __mlxsw_cmd_query_dq(mlxsw_core, out_mbox, dq_number,
mlxsw_core       1033 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_sw2hw_cq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1036 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_in(mlxsw_core, MLXSW_CMD_OPCODE_SW2HW_CQ,
mlxsw_core       1087 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_hw2sw_cq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1090 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_none(mlxsw_core, MLXSW_CMD_OPCODE_HW2SW_CQ,
mlxsw_core       1106 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_query_cq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1109 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_out(mlxsw_core, MLXSW_CMD_OPCODE_QUERY_CQ,
mlxsw_core       1124 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_sw2hw_eq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1127 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_in(mlxsw_core, MLXSW_CMD_OPCODE_SW2HW_EQ,
mlxsw_core       1169 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_hw2sw_eq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1172 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_none(mlxsw_core, MLXSW_CMD_OPCODE_HW2SW_EQ,
mlxsw_core       1184 drivers/net/ethernet/mellanox/mlxsw/cmd.h static inline int mlxsw_cmd_query_eq(struct mlxsw_core *mlxsw_core,
mlxsw_core       1187 drivers/net/ethernet/mellanox/mlxsw/cmd.h 	return mlxsw_cmd_exec_out(mlxsw_core, MLXSW_CMD_OPCODE_QUERY_EQ,
mlxsw_core         90 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_ports_init(struct mlxsw_core *mlxsw_core)
mlxsw_core         93 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (MLXSW_CORE_RES_VALID(mlxsw_core, MAX_SYSTEM_PORT))
mlxsw_core         94 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->max_ports = MLXSW_CORE_RES_GET(mlxsw_core,
mlxsw_core         97 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->max_ports = MLXSW_PORT_MAX_PORTS_DEFAULT + 1;
mlxsw_core         99 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->ports = kcalloc(mlxsw_core->max_ports,
mlxsw_core        101 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!mlxsw_core->ports)
mlxsw_core        107 drivers/net/ethernet/mellanox/mlxsw/core.c static void mlxsw_ports_fini(struct mlxsw_core *mlxsw_core)
mlxsw_core        109 drivers/net/ethernet/mellanox/mlxsw/core.c 	kfree(mlxsw_core->ports);
mlxsw_core        112 drivers/net/ethernet/mellanox/mlxsw/core.c unsigned int mlxsw_core_max_ports(const struct mlxsw_core *mlxsw_core)
mlxsw_core        114 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->max_ports;
mlxsw_core        118 drivers/net/ethernet/mellanox/mlxsw/core.c void *mlxsw_core_driver_priv(struct mlxsw_core *mlxsw_core)
mlxsw_core        120 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->driver_priv;
mlxsw_core        124 drivers/net/ethernet/mellanox/mlxsw/core.c bool mlxsw_core_res_query_enabled(const struct mlxsw_core *mlxsw_core)
mlxsw_core        126 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->driver->res_query_enabled;
mlxsw_core        420 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *core;
mlxsw_core        450 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_emad_transmit(struct mlxsw_core *mlxsw_core,
mlxsw_core        460 drivers/net/ethernet/mellanox/mlxsw/core.c 	trace_devlink_hwmsg(priv_to_devlink(mlxsw_core), false, 0,
mlxsw_core        461 drivers/net/ethernet/mellanox/mlxsw/core.c 			    skb->data + mlxsw_core->driver->txhdr_len,
mlxsw_core        462 drivers/net/ethernet/mellanox/mlxsw/core.c 			    skb->len - mlxsw_core->driver->txhdr_len);
mlxsw_core        465 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_core_skb_transmit(mlxsw_core, skb, &trans->tx_info);
mlxsw_core        476 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = trans->core;
mlxsw_core        479 drivers/net/ethernet/mellanox/mlxsw/core.c 	spin_lock_bh(&mlxsw_core->emad.trans_list_lock);
mlxsw_core        481 drivers/net/ethernet/mellanox/mlxsw/core.c 	spin_unlock_bh(&mlxsw_core->emad.trans_list_lock);
mlxsw_core        486 drivers/net/ethernet/mellanox/mlxsw/core.c static void mlxsw_emad_transmit_retry(struct mlxsw_core *mlxsw_core,
mlxsw_core        514 drivers/net/ethernet/mellanox/mlxsw/core.c static void mlxsw_emad_process_response(struct mlxsw_core *mlxsw_core,
mlxsw_core        525 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_emad_transmit_retry(mlxsw_core, trans);
mlxsw_core        531 drivers/net/ethernet/mellanox/mlxsw/core.c 				trans->cb(mlxsw_core,
mlxsw_core        543 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = priv;
mlxsw_core        546 drivers/net/ethernet/mellanox/mlxsw/core.c 	trace_devlink_hwmsg(priv_to_devlink(mlxsw_core), true, 0,
mlxsw_core        552 drivers/net/ethernet/mellanox/mlxsw/core.c 	list_for_each_entry_rcu(trans, &mlxsw_core->emad.trans_list, list) {
mlxsw_core        554 drivers/net/ethernet/mellanox/mlxsw/core.c 			mlxsw_emad_process_response(mlxsw_core, trans, skb);
mlxsw_core        567 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_emad_init(struct mlxsw_core *mlxsw_core)
mlxsw_core        573 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!(mlxsw_core->bus->features & MLXSW_BUS_F_TXRX))
mlxsw_core        579 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->emad_wq = emad_wq;
mlxsw_core        587 drivers/net/ethernet/mellanox/mlxsw/core.c 	atomic64_set(&mlxsw_core->emad.tid, tid);
mlxsw_core        589 drivers/net/ethernet/mellanox/mlxsw/core.c 	INIT_LIST_HEAD(&mlxsw_core->emad.trans_list);
mlxsw_core        590 drivers/net/ethernet/mellanox/mlxsw/core.c 	spin_lock_init(&mlxsw_core->emad.trans_list_lock);
mlxsw_core        592 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_core_trap_register(mlxsw_core, &mlxsw_emad_rx_listener,
mlxsw_core        593 drivers/net/ethernet/mellanox/mlxsw/core.c 				       mlxsw_core);
mlxsw_core        597 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_core->driver->basic_trap_groups_set(mlxsw_core);
mlxsw_core        600 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->emad.use_emad = true;
mlxsw_core        605 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core_trap_unregister(mlxsw_core, &mlxsw_emad_rx_listener,
mlxsw_core        606 drivers/net/ethernet/mellanox/mlxsw/core.c 				   mlxsw_core);
mlxsw_core        607 drivers/net/ethernet/mellanox/mlxsw/core.c 	destroy_workqueue(mlxsw_core->emad_wq);
mlxsw_core        611 drivers/net/ethernet/mellanox/mlxsw/core.c static void mlxsw_emad_fini(struct mlxsw_core *mlxsw_core)
mlxsw_core        614 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!(mlxsw_core->bus->features & MLXSW_BUS_F_TXRX))
mlxsw_core        617 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->emad.use_emad = false;
mlxsw_core        618 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core_trap_unregister(mlxsw_core, &mlxsw_emad_rx_listener,
mlxsw_core        619 drivers/net/ethernet/mellanox/mlxsw/core.c 				   mlxsw_core);
mlxsw_core        620 drivers/net/ethernet/mellanox/mlxsw/core.c 	destroy_workqueue(mlxsw_core->emad_wq);
mlxsw_core        623 drivers/net/ethernet/mellanox/mlxsw/core.c static struct sk_buff *mlxsw_emad_alloc(const struct mlxsw_core *mlxsw_core,
mlxsw_core        631 drivers/net/ethernet/mellanox/mlxsw/core.c 		    sizeof(u32) + mlxsw_core->driver->txhdr_len);
mlxsw_core        644 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_emad_reg_access(struct mlxsw_core *mlxsw_core,
mlxsw_core        656 drivers/net/ethernet/mellanox/mlxsw/core.c 	dev_dbg(mlxsw_core->bus_info->dev, "EMAD reg access (tid=%llx,reg_id=%x(%s),type=%s)\n",
mlxsw_core        660 drivers/net/ethernet/mellanox/mlxsw/core.c 	skb = mlxsw_emad_alloc(mlxsw_core, reg->len);
mlxsw_core        665 drivers/net/ethernet/mellanox/mlxsw/core.c 	trans->core = mlxsw_core;
mlxsw_core        678 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->driver->txhdr_construct(skb, &trans->tx_info);
mlxsw_core        680 drivers/net/ethernet/mellanox/mlxsw/core.c 	spin_lock_bh(&mlxsw_core->emad.trans_list_lock);
mlxsw_core        681 drivers/net/ethernet/mellanox/mlxsw/core.c 	list_add_tail_rcu(&trans->list, &mlxsw_core->emad.trans_list);
mlxsw_core        682 drivers/net/ethernet/mellanox/mlxsw/core.c 	spin_unlock_bh(&mlxsw_core->emad.trans_list_lock);
mlxsw_core        683 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_emad_transmit(mlxsw_core, trans);
mlxsw_core        689 drivers/net/ethernet/mellanox/mlxsw/core.c 	spin_lock_bh(&mlxsw_core->emad.trans_list_lock);
mlxsw_core        691 drivers/net/ethernet/mellanox/mlxsw/core.c 	spin_unlock_bh(&mlxsw_core->emad.trans_list_lock);
mlxsw_core        744 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        746 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (port_index >= mlxsw_core->max_ports) {
mlxsw_core        750 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!mlxsw_core->driver->port_split)
mlxsw_core        752 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->driver->port_split(mlxsw_core, port_index, count,
mlxsw_core        760 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        762 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (port_index >= mlxsw_core->max_ports) {
mlxsw_core        766 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!mlxsw_core->driver->port_unsplit)
mlxsw_core        768 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->driver->port_unsplit(mlxsw_core, port_index,
mlxsw_core        777 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        778 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        782 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->sb_pool_get(mlxsw_core, sb_index,
mlxsw_core        792 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        793 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        797 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->sb_pool_set(mlxsw_core, sb_index,
mlxsw_core        810 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink_port->devlink);
mlxsw_core        811 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        817 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->port_type_set(mlxsw_core,
mlxsw_core        826 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink_port->devlink);
mlxsw_core        827 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        842 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink_port->devlink);
mlxsw_core        843 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        859 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink_port->devlink);
mlxsw_core        860 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        878 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink_port->devlink);
mlxsw_core        879 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        893 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        894 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        898 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->sb_occ_snapshot(mlxsw_core, sb_index);
mlxsw_core        904 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        905 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        909 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->sb_occ_max_clear(mlxsw_core, sb_index);
mlxsw_core        917 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink_port->devlink);
mlxsw_core        918 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        934 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink_port->devlink);
mlxsw_core        935 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core        950 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        958 drivers/net/ethernet/mellanox/mlxsw/core.c 					   mlxsw_core->bus_info->device_kind);
mlxsw_core        963 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_reg_query(mlxsw_core, MLXSW_REG(mgir), mgir_pl);
mlxsw_core        990 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core        992 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!(mlxsw_core->bus->features & MLXSW_BUS_F_RESET))
mlxsw_core        995 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core_bus_device_unregister(mlxsw_core, true);
mlxsw_core       1003 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       1005 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core_bus_device_register(mlxsw_core->bus_info,
mlxsw_core       1006 drivers/net/ethernet/mellanox/mlxsw/core.c 					      mlxsw_core->bus,
mlxsw_core       1007 drivers/net/ethernet/mellanox/mlxsw/core.c 					      mlxsw_core->bus_priv, true,
mlxsw_core       1016 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       1017 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core       1021 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->flash_update(mlxsw_core, file_name,
mlxsw_core       1029 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       1030 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core       1034 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->trap_init(mlxsw_core, trap, trap_ctx);
mlxsw_core       1041 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       1042 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core       1046 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_driver->trap_fini(mlxsw_core, trap, trap_ctx);
mlxsw_core       1053 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       1054 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core       1058 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->trap_action_set(mlxsw_core, trap, action);
mlxsw_core       1065 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       1066 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *mlxsw_driver = mlxsw_core->driver;
mlxsw_core       1070 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_driver->trap_group_init(mlxsw_core, group);
mlxsw_core       1104 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core;
mlxsw_core       1115 drivers/net/ethernet/mellanox/mlxsw/core.c 		alloc_size = sizeof(*mlxsw_core) + mlxsw_driver->priv_size;
mlxsw_core       1123 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core = devlink_priv(devlink);
mlxsw_core       1124 drivers/net/ethernet/mellanox/mlxsw/core.c 	INIT_LIST_HEAD(&mlxsw_core->rx_listener_list);
mlxsw_core       1125 drivers/net/ethernet/mellanox/mlxsw/core.c 	INIT_LIST_HEAD(&mlxsw_core->event_listener_list);
mlxsw_core       1126 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->driver = mlxsw_driver;
mlxsw_core       1127 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->bus = mlxsw_bus;
mlxsw_core       1128 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->bus_priv = bus_priv;
mlxsw_core       1129 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->bus_info = mlxsw_bus_info;
mlxsw_core       1131 drivers/net/ethernet/mellanox/mlxsw/core.c 	res = mlxsw_driver->res_query_enabled ? &mlxsw_core->res : NULL;
mlxsw_core       1132 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_bus->init(bus_priv, mlxsw_core, mlxsw_driver->profile, res);
mlxsw_core       1137 drivers/net/ethernet/mellanox/mlxsw/core.c 		err = mlxsw_driver->resources_register(mlxsw_core);
mlxsw_core       1142 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_ports_init(mlxsw_core);
mlxsw_core       1146 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (MLXSW_CORE_RES_VALID(mlxsw_core, MAX_LAG) &&
mlxsw_core       1147 drivers/net/ethernet/mellanox/mlxsw/core.c 	    MLXSW_CORE_RES_VALID(mlxsw_core, MAX_LAG_MEMBERS)) {
mlxsw_core       1149 drivers/net/ethernet/mellanox/mlxsw/core.c 			MLXSW_CORE_RES_GET(mlxsw_core, MAX_LAG) *
mlxsw_core       1150 drivers/net/ethernet/mellanox/mlxsw/core.c 			MLXSW_CORE_RES_GET(mlxsw_core, MAX_LAG_MEMBERS);
mlxsw_core       1151 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->lag.mapping = kzalloc(alloc_size, GFP_KERNEL);
mlxsw_core       1152 drivers/net/ethernet/mellanox/mlxsw/core.c 		if (!mlxsw_core->lag.mapping) {
mlxsw_core       1158 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_emad_init(mlxsw_core);
mlxsw_core       1169 drivers/net/ethernet/mellanox/mlxsw/core.c 		err = mlxsw_driver->params_register(mlxsw_core);
mlxsw_core       1175 drivers/net/ethernet/mellanox/mlxsw/core.c 		err = mlxsw_driver->init(mlxsw_core, mlxsw_bus_info);
mlxsw_core       1180 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_hwmon_init(mlxsw_core, mlxsw_bus_info, &mlxsw_core->hwmon);
mlxsw_core       1184 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_thermal_init(mlxsw_core, mlxsw_bus_info,
mlxsw_core       1185 drivers/net/ethernet/mellanox/mlxsw/core.c 				 &mlxsw_core->thermal);
mlxsw_core       1198 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_hwmon_fini(mlxsw_core->hwmon);
mlxsw_core       1200 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (mlxsw_core->driver->fini)
mlxsw_core       1201 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->driver->fini(mlxsw_core);
mlxsw_core       1204 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_driver->params_unregister(mlxsw_core);
mlxsw_core       1209 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_emad_fini(mlxsw_core);
mlxsw_core       1211 drivers/net/ethernet/mellanox/mlxsw/core.c 	kfree(mlxsw_core->lag.mapping);
mlxsw_core       1213 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_ports_fini(mlxsw_core);
mlxsw_core       1250 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_bus_device_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core       1253 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core       1267 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (mlxsw_core->driver->params_unregister)
mlxsw_core       1269 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_thermal_fini(mlxsw_core->thermal);
mlxsw_core       1270 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_hwmon_fini(mlxsw_core->hwmon);
mlxsw_core       1271 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (mlxsw_core->driver->fini)
mlxsw_core       1272 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->driver->fini(mlxsw_core);
mlxsw_core       1273 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (mlxsw_core->driver->params_unregister && !reload)
mlxsw_core       1274 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->driver->params_unregister(mlxsw_core);
mlxsw_core       1277 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_emad_fini(mlxsw_core);
mlxsw_core       1278 drivers/net/ethernet/mellanox/mlxsw/core.c 	kfree(mlxsw_core->lag.mapping);
mlxsw_core       1279 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_ports_fini(mlxsw_core);
mlxsw_core       1282 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->bus->fini(mlxsw_core->bus_priv);
mlxsw_core       1287 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (mlxsw_core->driver->params_unregister)
mlxsw_core       1288 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->driver->params_unregister(mlxsw_core);
mlxsw_core       1295 drivers/net/ethernet/mellanox/mlxsw/core.c bool mlxsw_core_skb_transmit_busy(struct mlxsw_core *mlxsw_core,
mlxsw_core       1298 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->bus->skb_transmit_busy(mlxsw_core->bus_priv,
mlxsw_core       1303 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_skb_transmit(struct mlxsw_core *mlxsw_core, struct sk_buff *skb,
mlxsw_core       1306 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->bus->skb_transmit(mlxsw_core->bus_priv, skb,
mlxsw_core       1311 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_ptp_transmitted(struct mlxsw_core *mlxsw_core,
mlxsw_core       1314 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (mlxsw_core->driver->ptp_transmitted)
mlxsw_core       1315 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core->driver->ptp_transmitted(mlxsw_core, skb,
mlxsw_core       1329 drivers/net/ethernet/mellanox/mlxsw/core.c __find_rx_listener_item(struct mlxsw_core *mlxsw_core,
mlxsw_core       1335 drivers/net/ethernet/mellanox/mlxsw/core.c 	list_for_each_entry(rxl_item, &mlxsw_core->rx_listener_list, list) {
mlxsw_core       1343 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_rx_listener_register(struct mlxsw_core *mlxsw_core,
mlxsw_core       1349 drivers/net/ethernet/mellanox/mlxsw/core.c 	rxl_item = __find_rx_listener_item(mlxsw_core, rxl, priv);
mlxsw_core       1358 drivers/net/ethernet/mellanox/mlxsw/core.c 	list_add_rcu(&rxl_item->list, &mlxsw_core->rx_listener_list);
mlxsw_core       1363 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_rx_listener_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core       1369 drivers/net/ethernet/mellanox/mlxsw/core.c 	rxl_item = __find_rx_listener_item(mlxsw_core, rxl, priv);
mlxsw_core       1402 drivers/net/ethernet/mellanox/mlxsw/core.c __find_event_listener_item(struct mlxsw_core *mlxsw_core,
mlxsw_core       1408 drivers/net/ethernet/mellanox/mlxsw/core.c 	list_for_each_entry(el_item, &mlxsw_core->event_listener_list, list) {
mlxsw_core       1416 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_event_listener_register(struct mlxsw_core *mlxsw_core,
mlxsw_core       1428 drivers/net/ethernet/mellanox/mlxsw/core.c 	el_item = __find_event_listener_item(mlxsw_core, el, priv);
mlxsw_core       1437 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_core_rx_listener_register(mlxsw_core, &rxl, el_item);
mlxsw_core       1444 drivers/net/ethernet/mellanox/mlxsw/core.c 	list_add_rcu(&el_item->list, &mlxsw_core->event_listener_list);
mlxsw_core       1454 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_event_listener_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core       1465 drivers/net/ethernet/mellanox/mlxsw/core.c 	el_item = __find_event_listener_item(mlxsw_core, el, priv);
mlxsw_core       1468 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core_rx_listener_unregister(mlxsw_core, &rxl, el_item);
mlxsw_core       1474 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_core_listener_register(struct mlxsw_core *mlxsw_core,
mlxsw_core       1479 drivers/net/ethernet/mellanox/mlxsw/core.c 		return mlxsw_core_event_listener_register(mlxsw_core,
mlxsw_core       1483 drivers/net/ethernet/mellanox/mlxsw/core.c 		return mlxsw_core_rx_listener_register(mlxsw_core,
mlxsw_core       1488 drivers/net/ethernet/mellanox/mlxsw/core.c static void mlxsw_core_listener_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core       1493 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core_event_listener_unregister(mlxsw_core,
mlxsw_core       1497 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core_rx_listener_unregister(mlxsw_core,
mlxsw_core       1502 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_trap_register(struct mlxsw_core *mlxsw_core,
mlxsw_core       1508 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_core_listener_register(mlxsw_core, listener, priv);
mlxsw_core       1514 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_reg_write(mlxsw_core,  MLXSW_REG(hpkt), hpkt_pl);
mlxsw_core       1521 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core_listener_unregister(mlxsw_core, listener, priv);
mlxsw_core       1526 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_trap_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core       1536 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_reg_write(mlxsw_core, MLXSW_REG(hpkt), hpkt_pl);
mlxsw_core       1539 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core_listener_unregister(mlxsw_core, listener, priv);
mlxsw_core       1543 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_trap_action_set(struct mlxsw_core *mlxsw_core,
mlxsw_core       1551 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_reg_write(mlxsw_core, MLXSW_REG(hpkt), hpkt_pl);
mlxsw_core       1555 drivers/net/ethernet/mellanox/mlxsw/core.c static u64 mlxsw_core_tid_get(struct mlxsw_core *mlxsw_core)
mlxsw_core       1557 drivers/net/ethernet/mellanox/mlxsw/core.c 	return atomic64_inc_return(&mlxsw_core->emad.tid);
mlxsw_core       1560 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_core_reg_access_emad(struct mlxsw_core *mlxsw_core,
mlxsw_core       1568 drivers/net/ethernet/mellanox/mlxsw/core.c 	u64 tid = mlxsw_core_tid_get(mlxsw_core);
mlxsw_core       1576 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_emad_reg_access(mlxsw_core, reg, payload, type, trans,
mlxsw_core       1585 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_reg_trans_query(struct mlxsw_core *mlxsw_core,
mlxsw_core       1590 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core_reg_access_emad(mlxsw_core, reg, payload,
mlxsw_core       1596 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_reg_trans_write(struct mlxsw_core *mlxsw_core,
mlxsw_core       1601 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core_reg_access_emad(mlxsw_core, reg, payload,
mlxsw_core       1609 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_core *mlxsw_core = trans->core;
mlxsw_core       1617 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_warn(mlxsw_core->bus_info->dev, "EMAD retries (%d/%d) (tid=%llx)\n",
mlxsw_core       1620 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_err(mlxsw_core->bus_info->dev, "EMAD reg access failed (tid=%llx,reg_id=%x(%s),type=%s,status=%x(%s))\n",
mlxsw_core       1626 drivers/net/ethernet/mellanox/mlxsw/core.c 		trace_devlink_hwerr(priv_to_devlink(mlxsw_core),
mlxsw_core       1652 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_core_reg_access_cmd(struct mlxsw_core *mlxsw_core,
mlxsw_core       1662 drivers/net/ethernet/mellanox/mlxsw/core.c 	dev_dbg(mlxsw_core->bus_info->dev, "Reg cmd access (reg_id=%x(%s),type=%s)\n",
mlxsw_core       1677 drivers/net/ethernet/mellanox/mlxsw/core.c 			       mlxsw_core_tid_get(mlxsw_core));
mlxsw_core       1690 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_cmd_access_reg(mlxsw_core, reset_ok, in_mbox, out_mbox);
mlxsw_core       1696 drivers/net/ethernet/mellanox/mlxsw/core.c 			dev_err(mlxsw_core->bus_info->dev, "Reg cmd access status failed (status=%x(%s))\n",
mlxsw_core       1709 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_err(mlxsw_core->bus_info->dev, "Reg cmd access failed (reg_id=%x(%s),type=%s)\n",
mlxsw_core       1715 drivers/net/ethernet/mellanox/mlxsw/core.c static void mlxsw_core_reg_access_cb(struct mlxsw_core *mlxsw_core,
mlxsw_core       1724 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_core_reg_access(struct mlxsw_core *mlxsw_core,
mlxsw_core       1736 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!mlxsw_core->emad.use_emad)
mlxsw_core       1737 drivers/net/ethernet/mellanox/mlxsw/core.c 		return mlxsw_core_reg_access_cmd(mlxsw_core, reg,
mlxsw_core       1740 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_core_reg_access_emad(mlxsw_core, reg,
mlxsw_core       1749 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_reg_query(struct mlxsw_core *mlxsw_core,
mlxsw_core       1752 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core_reg_access(mlxsw_core, reg, payload,
mlxsw_core       1757 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_reg_write(struct mlxsw_core *mlxsw_core,
mlxsw_core       1760 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core_reg_access(mlxsw_core, reg, payload,
mlxsw_core       1765 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_skb_receive(struct mlxsw_core *mlxsw_core, struct sk_buff *skb,
mlxsw_core       1774 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_dbg_ratelimited(mlxsw_core->bus_info->dev, "%s: lag_id = %d, lag_port_index = 0x%x\n",
mlxsw_core       1780 drivers/net/ethernet/mellanox/mlxsw/core.c 		local_port = mlxsw_core_lag_mapping_get(mlxsw_core,
mlxsw_core       1787 drivers/net/ethernet/mellanox/mlxsw/core.c 	dev_dbg_ratelimited(mlxsw_core->bus_info->dev, "%s: local_port = %d, trap_id = 0x%x\n",
mlxsw_core       1791 drivers/net/ethernet/mellanox/mlxsw/core.c 	    (local_port >= mlxsw_core->max_ports))
mlxsw_core       1795 drivers/net/ethernet/mellanox/mlxsw/core.c 	list_for_each_entry_rcu(rxl_item, &mlxsw_core->rx_listener_list, list) {
mlxsw_core       1816 drivers/net/ethernet/mellanox/mlxsw/core.c static int mlxsw_core_lag_mapping_index(struct mlxsw_core *mlxsw_core,
mlxsw_core       1819 drivers/net/ethernet/mellanox/mlxsw/core.c 	return MLXSW_CORE_RES_GET(mlxsw_core, MAX_LAG_MEMBERS) * lag_id +
mlxsw_core       1823 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_lag_mapping_set(struct mlxsw_core *mlxsw_core,
mlxsw_core       1826 drivers/net/ethernet/mellanox/mlxsw/core.c 	int index = mlxsw_core_lag_mapping_index(mlxsw_core,
mlxsw_core       1829 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->lag.mapping[index] = local_port;
mlxsw_core       1833 drivers/net/ethernet/mellanox/mlxsw/core.c u8 mlxsw_core_lag_mapping_get(struct mlxsw_core *mlxsw_core,
mlxsw_core       1836 drivers/net/ethernet/mellanox/mlxsw/core.c 	int index = mlxsw_core_lag_mapping_index(mlxsw_core,
mlxsw_core       1839 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->lag.mapping[index];
mlxsw_core       1843 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_lag_mapping_clear(struct mlxsw_core *mlxsw_core,
mlxsw_core       1848 drivers/net/ethernet/mellanox/mlxsw/core.c 	for (i = 0; i < MLXSW_CORE_RES_GET(mlxsw_core, MAX_LAG_MEMBERS); i++) {
mlxsw_core       1849 drivers/net/ethernet/mellanox/mlxsw/core.c 		int index = mlxsw_core_lag_mapping_index(mlxsw_core,
mlxsw_core       1852 drivers/net/ethernet/mellanox/mlxsw/core.c 		if (mlxsw_core->lag.mapping[index] == local_port)
mlxsw_core       1853 drivers/net/ethernet/mellanox/mlxsw/core.c 			mlxsw_core->lag.mapping[index] = 0;
mlxsw_core       1858 drivers/net/ethernet/mellanox/mlxsw/core.c bool mlxsw_core_res_valid(struct mlxsw_core *mlxsw_core,
mlxsw_core       1861 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_res_valid(&mlxsw_core->res, res_id);
mlxsw_core       1865 drivers/net/ethernet/mellanox/mlxsw/core.c u64 mlxsw_core_res_get(struct mlxsw_core *mlxsw_core,
mlxsw_core       1868 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_res_get(&mlxsw_core->res, res_id);
mlxsw_core       1872 drivers/net/ethernet/mellanox/mlxsw/core.c static int __mlxsw_core_port_init(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       1879 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core       1881 drivers/net/ethernet/mellanox/mlxsw/core.c 					&mlxsw_core->ports[local_port];
mlxsw_core       1895 drivers/net/ethernet/mellanox/mlxsw/core.c static void __mlxsw_core_port_fini(struct mlxsw_core *mlxsw_core, u8 local_port)
mlxsw_core       1898 drivers/net/ethernet/mellanox/mlxsw/core.c 					&mlxsw_core->ports[local_port];
mlxsw_core       1905 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_port_init(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       1911 drivers/net/ethernet/mellanox/mlxsw/core.c 	return __mlxsw_core_port_init(mlxsw_core, local_port,
mlxsw_core       1918 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_port_fini(struct mlxsw_core *mlxsw_core, u8 local_port)
mlxsw_core       1920 drivers/net/ethernet/mellanox/mlxsw/core.c 	__mlxsw_core_port_fini(mlxsw_core, local_port);
mlxsw_core       1924 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_cpu_port_init(struct mlxsw_core *mlxsw_core,
mlxsw_core       1930 drivers/net/ethernet/mellanox/mlxsw/core.c 				&mlxsw_core->ports[MLXSW_PORT_CPU_PORT];
mlxsw_core       1933 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = __mlxsw_core_port_init(mlxsw_core, MLXSW_PORT_CPU_PORT,
mlxsw_core       1945 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_cpu_port_fini(struct mlxsw_core *mlxsw_core)
mlxsw_core       1947 drivers/net/ethernet/mellanox/mlxsw/core.c 	__mlxsw_core_port_fini(mlxsw_core, MLXSW_PORT_CPU_PORT);
mlxsw_core       1951 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_port_eth_set(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       1955 drivers/net/ethernet/mellanox/mlxsw/core.c 					&mlxsw_core->ports[local_port];
mlxsw_core       1963 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_port_ib_set(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       1967 drivers/net/ethernet/mellanox/mlxsw/core.c 					&mlxsw_core->ports[local_port];
mlxsw_core       1975 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_port_clear(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       1979 drivers/net/ethernet/mellanox/mlxsw/core.c 					&mlxsw_core->ports[local_port];
mlxsw_core       1987 drivers/net/ethernet/mellanox/mlxsw/core.c enum devlink_port_type mlxsw_core_port_type_get(struct mlxsw_core *mlxsw_core,
mlxsw_core       1991 drivers/net/ethernet/mellanox/mlxsw/core.c 					&mlxsw_core->ports[local_port];
mlxsw_core       2000 drivers/net/ethernet/mellanox/mlxsw/core.c mlxsw_core_port_devlink_port_get(struct mlxsw_core *mlxsw_core,
mlxsw_core       2004 drivers/net/ethernet/mellanox/mlxsw/core.c 					&mlxsw_core->ports[local_port];
mlxsw_core       2011 drivers/net/ethernet/mellanox/mlxsw/core.c static void mlxsw_core_buf_dump_dbg(struct mlxsw_core *mlxsw_core,
mlxsw_core       2024 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_dbg(mlxsw_core->bus_info->dev, "%04x - %08x %08x %08x %08x\n",
mlxsw_core       2029 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_cmd_exec(struct mlxsw_core *mlxsw_core, u16 opcode, u8 opcode_mod,
mlxsw_core       2038 drivers/net/ethernet/mellanox/mlxsw/core.c 	if (!mlxsw_core->bus->cmd_exec)
mlxsw_core       2041 drivers/net/ethernet/mellanox/mlxsw/core.c 	dev_dbg(mlxsw_core->bus_info->dev, "Cmd exec (opcode=%x(%s),opcode_mod=%x,in_mod=%x)\n",
mlxsw_core       2044 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_dbg(mlxsw_core->bus_info->dev, "Input mailbox:\n");
mlxsw_core       2045 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core_buf_dump_dbg(mlxsw_core, in_mbox, in_mbox_size);
mlxsw_core       2048 drivers/net/ethernet/mellanox/mlxsw/core.c 	err = mlxsw_core->bus->cmd_exec(mlxsw_core->bus_priv, opcode,
mlxsw_core       2054 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_dbg(mlxsw_core->bus_info->dev, "Output mailbox:\n");
mlxsw_core       2055 drivers/net/ethernet/mellanox/mlxsw/core.c 		mlxsw_core_buf_dump_dbg(mlxsw_core, out_mbox, out_mbox_size);
mlxsw_core       2062 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_err(mlxsw_core->bus_info->dev, "Cmd exec failed (opcode=%x(%s),opcode_mod=%x,in_mod=%x,status=%x(%s))\n",
mlxsw_core       2066 drivers/net/ethernet/mellanox/mlxsw/core.c 		dev_err(mlxsw_core->bus_info->dev, "Cmd exec timed-out (opcode=%x(%s),opcode_mod=%x,in_mod=%x)\n",
mlxsw_core       2093 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_kvd_sizes_get(struct mlxsw_core *mlxsw_core,
mlxsw_core       2098 drivers/net/ethernet/mellanox/mlxsw/core.c 	struct mlxsw_driver *driver = mlxsw_core->driver;
mlxsw_core       2103 drivers/net/ethernet/mellanox/mlxsw/core.c 	return driver->kvd_sizes_get(mlxsw_core, profile,
mlxsw_core       2109 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_fw_flash_start(struct mlxsw_core *mlxsw_core)
mlxsw_core       2111 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->fw_flash_in_progress = true;
mlxsw_core       2115 drivers/net/ethernet/mellanox/mlxsw/core.c void mlxsw_core_fw_flash_end(struct mlxsw_core *mlxsw_core)
mlxsw_core       2117 drivers/net/ethernet/mellanox/mlxsw/core.c 	mlxsw_core->fw_flash_in_progress = false;
mlxsw_core       2121 drivers/net/ethernet/mellanox/mlxsw/core.c int mlxsw_core_resources_query(struct mlxsw_core *mlxsw_core, char *mbox,
mlxsw_core       2136 drivers/net/ethernet/mellanox/mlxsw/core.c 		err = mlxsw_cmd_query_resources(mlxsw_core, mbox, index);
mlxsw_core       2158 drivers/net/ethernet/mellanox/mlxsw/core.c u32 mlxsw_core_read_frc_h(struct mlxsw_core *mlxsw_core)
mlxsw_core       2160 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->bus->read_frc_h(mlxsw_core->bus_priv);
mlxsw_core       2164 drivers/net/ethernet/mellanox/mlxsw/core.c u32 mlxsw_core_read_frc_l(struct mlxsw_core *mlxsw_core)
mlxsw_core       2166 drivers/net/ethernet/mellanox/mlxsw/core.c 	return mlxsw_core->bus->read_frc_l(mlxsw_core->bus_priv);
mlxsw_core         21 drivers/net/ethernet/mellanox/mlxsw/core.h struct mlxsw_core;
mlxsw_core         27 drivers/net/ethernet/mellanox/mlxsw/core.h unsigned int mlxsw_core_max_ports(const struct mlxsw_core *mlxsw_core);
mlxsw_core         29 drivers/net/ethernet/mellanox/mlxsw/core.h void *mlxsw_core_driver_priv(struct mlxsw_core *mlxsw_core);
mlxsw_core         31 drivers/net/ethernet/mellanox/mlxsw/core.h bool mlxsw_core_res_query_enabled(const struct mlxsw_core *mlxsw_core);
mlxsw_core         40 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_bus_device_unregister(struct mlxsw_core *mlxsw_core, bool reload);
mlxsw_core         47 drivers/net/ethernet/mellanox/mlxsw/core.h bool mlxsw_core_skb_transmit_busy(struct mlxsw_core *mlxsw_core,
mlxsw_core         49 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_skb_transmit(struct mlxsw_core *mlxsw_core, struct sk_buff *skb,
mlxsw_core         51 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_ptp_transmitted(struct mlxsw_core *mlxsw_core,
mlxsw_core        111 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_rx_listener_register(struct mlxsw_core *mlxsw_core,
mlxsw_core        114 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_rx_listener_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core        118 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_event_listener_register(struct mlxsw_core *mlxsw_core,
mlxsw_core        121 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_event_listener_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core        125 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_trap_register(struct mlxsw_core *mlxsw_core,
mlxsw_core        128 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_trap_unregister(struct mlxsw_core *mlxsw_core,
mlxsw_core        131 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_trap_action_set(struct mlxsw_core *mlxsw_core,
mlxsw_core        135 drivers/net/ethernet/mellanox/mlxsw/core.h typedef void mlxsw_reg_trans_cb_t(struct mlxsw_core *mlxsw_core, char *payload,
mlxsw_core        138 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_reg_trans_query(struct mlxsw_core *mlxsw_core,
mlxsw_core        142 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_reg_trans_write(struct mlxsw_core *mlxsw_core,
mlxsw_core        148 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_reg_query(struct mlxsw_core *mlxsw_core,
mlxsw_core        150 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_reg_write(struct mlxsw_core *mlxsw_core,
mlxsw_core        163 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_skb_receive(struct mlxsw_core *mlxsw_core, struct sk_buff *skb,
mlxsw_core        166 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_lag_mapping_set(struct mlxsw_core *mlxsw_core,
mlxsw_core        168 drivers/net/ethernet/mellanox/mlxsw/core.h u8 mlxsw_core_lag_mapping_get(struct mlxsw_core *mlxsw_core,
mlxsw_core        170 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_lag_mapping_clear(struct mlxsw_core *mlxsw_core,
mlxsw_core        174 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_port_init(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core        179 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_port_fini(struct mlxsw_core *mlxsw_core, u8 local_port);
mlxsw_core        180 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_cpu_port_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        184 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_cpu_port_fini(struct mlxsw_core *mlxsw_core);
mlxsw_core        185 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_port_eth_set(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core        187 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_port_ib_set(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core        189 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_port_clear(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core        191 drivers/net/ethernet/mellanox/mlxsw/core.h enum devlink_port_type mlxsw_core_port_type_get(struct mlxsw_core *mlxsw_core,
mlxsw_core        194 drivers/net/ethernet/mellanox/mlxsw/core.h mlxsw_core_port_devlink_port_get(struct mlxsw_core *mlxsw_core,
mlxsw_core        200 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_resources_query(struct mlxsw_core *mlxsw_core, char *mbox,
mlxsw_core        254 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*init)(struct mlxsw_core *mlxsw_core,
mlxsw_core        256 drivers/net/ethernet/mellanox/mlxsw/core.h 	void (*fini)(struct mlxsw_core *mlxsw_core);
mlxsw_core        257 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*basic_trap_groups_set)(struct mlxsw_core *mlxsw_core);
mlxsw_core        258 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*port_type_set)(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core        260 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*port_split)(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core        262 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*port_unsplit)(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core        264 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*sb_pool_get)(struct mlxsw_core *mlxsw_core,
mlxsw_core        267 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*sb_pool_set)(struct mlxsw_core *mlxsw_core,
mlxsw_core        286 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*sb_occ_snapshot)(struct mlxsw_core *mlxsw_core,
mlxsw_core        288 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*sb_occ_max_clear)(struct mlxsw_core *mlxsw_core,
mlxsw_core        297 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*flash_update)(struct mlxsw_core *mlxsw_core,
mlxsw_core        300 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*trap_init)(struct mlxsw_core *mlxsw_core,
mlxsw_core        302 drivers/net/ethernet/mellanox/mlxsw/core.h 	void (*trap_fini)(struct mlxsw_core *mlxsw_core,
mlxsw_core        304 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*trap_action_set)(struct mlxsw_core *mlxsw_core,
mlxsw_core        307 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*trap_group_init)(struct mlxsw_core *mlxsw_core,
mlxsw_core        311 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*resources_register)(struct mlxsw_core *mlxsw_core);
mlxsw_core        312 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*kvd_sizes_get)(struct mlxsw_core *mlxsw_core,
mlxsw_core        316 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*params_register)(struct mlxsw_core *mlxsw_core);
mlxsw_core        317 drivers/net/ethernet/mellanox/mlxsw/core.h 	void (*params_unregister)(struct mlxsw_core *mlxsw_core);
mlxsw_core        322 drivers/net/ethernet/mellanox/mlxsw/core.h 	void (*ptp_transmitted)(struct mlxsw_core *mlxsw_core,
mlxsw_core        330 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_core_kvd_sizes_get(struct mlxsw_core *mlxsw_core,
mlxsw_core        335 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_fw_flash_start(struct mlxsw_core *mlxsw_core);
mlxsw_core        336 drivers/net/ethernet/mellanox/mlxsw/core.h void mlxsw_core_fw_flash_end(struct mlxsw_core *mlxsw_core);
mlxsw_core        338 drivers/net/ethernet/mellanox/mlxsw/core.h u32 mlxsw_core_read_frc_h(struct mlxsw_core *mlxsw_core);
mlxsw_core        339 drivers/net/ethernet/mellanox/mlxsw/core.h u32 mlxsw_core_read_frc_l(struct mlxsw_core *mlxsw_core);
mlxsw_core        341 drivers/net/ethernet/mellanox/mlxsw/core.h bool mlxsw_core_res_valid(struct mlxsw_core *mlxsw_core,
mlxsw_core        344 drivers/net/ethernet/mellanox/mlxsw/core.h #define MLXSW_CORE_RES_VALID(mlxsw_core, short_res_id)			\
mlxsw_core        345 drivers/net/ethernet/mellanox/mlxsw/core.h 	mlxsw_core_res_valid(mlxsw_core, MLXSW_RES_ID_##short_res_id)
mlxsw_core        347 drivers/net/ethernet/mellanox/mlxsw/core.h u64 mlxsw_core_res_get(struct mlxsw_core *mlxsw_core,
mlxsw_core        350 drivers/net/ethernet/mellanox/mlxsw/core.h #define MLXSW_CORE_RES_GET(mlxsw_core, short_res_id)			\
mlxsw_core        351 drivers/net/ethernet/mellanox/mlxsw/core.h 	mlxsw_core_res_get(mlxsw_core, MLXSW_RES_ID_##short_res_id)
mlxsw_core        358 drivers/net/ethernet/mellanox/mlxsw/core.h 	int (*init)(void *bus_priv, struct mlxsw_core *mlxsw_core,
mlxsw_core        398 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_hwmon_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        405 drivers/net/ethernet/mellanox/mlxsw/core.h static inline int mlxsw_hwmon_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        422 drivers/net/ethernet/mellanox/mlxsw/core.h int mlxsw_thermal_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        429 drivers/net/ethernet/mellanox/mlxsw/core.h static inline int mlxsw_thermal_init(struct mlxsw_core *mlxsw_core,
mlxsw_core         13 drivers/net/ethernet/mellanox/mlxsw/core_env.c static int mlxsw_env_validate_cable_ident(struct mlxsw_core *core, int id,
mlxsw_core         46 drivers/net/ethernet/mellanox/mlxsw/core_env.c mlxsw_env_query_module_eeprom(struct mlxsw_core *mlxsw_core, int module,
mlxsw_core         71 drivers/net/ethernet/mellanox/mlxsw/core_env.c 	err = mlxsw_reg_query(mlxsw_core, MLXSW_REG(mcia), mcia_pl);
mlxsw_core         86 drivers/net/ethernet/mellanox/mlxsw/core_env.c int mlxsw_env_module_temp_thresholds_get(struct mlxsw_core *core, int module,
mlxsw_core        148 drivers/net/ethernet/mellanox/mlxsw/core_env.c int mlxsw_env_get_module_info(struct mlxsw_core *mlxsw_core, int module,
mlxsw_core        157 drivers/net/ethernet/mellanox/mlxsw/core_env.c 	err = mlxsw_env_query_module_eeprom(mlxsw_core, module, 0, offset,
mlxsw_core        187 drivers/net/ethernet/mellanox/mlxsw/core_env.c 		err = mlxsw_env_query_module_eeprom(mlxsw_core, module,
mlxsw_core        211 drivers/net/ethernet/mellanox/mlxsw/core_env.c 				struct mlxsw_core *mlxsw_core, int module,
mlxsw_core        225 drivers/net/ethernet/mellanox/mlxsw/core_env.c 		err = mlxsw_env_query_module_eeprom(mlxsw_core, module, offset,
mlxsw_core          7 drivers/net/ethernet/mellanox/mlxsw/core_env.h int mlxsw_env_module_temp_thresholds_get(struct mlxsw_core *core, int module,
mlxsw_core         10 drivers/net/ethernet/mellanox/mlxsw/core_env.h int mlxsw_env_get_module_info(struct mlxsw_core *mlxsw_core, int module,
mlxsw_core         14 drivers/net/ethernet/mellanox/mlxsw/core_env.h 				struct mlxsw_core *mlxsw_core, int module,
mlxsw_core         35 drivers/net/ethernet/mellanox/mlxsw/core_hwmon.c 	struct mlxsw_core *core;
mlxsw_core        627 drivers/net/ethernet/mellanox/mlxsw/core_hwmon.c int mlxsw_hwmon_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        638 drivers/net/ethernet/mellanox/mlxsw/core_hwmon.c 	mlxsw_hwmon->core = mlxsw_core;
mlxsw_core        106 drivers/net/ethernet/mellanox/mlxsw/core_thermal.c 	struct mlxsw_core *core;
mlxsw_core        162 drivers/net/ethernet/mellanox/mlxsw/core_thermal.c mlxsw_thermal_module_trips_update(struct device *dev, struct mlxsw_core *core,
mlxsw_core        792 drivers/net/ethernet/mellanox/mlxsw/core_thermal.c mlxsw_thermal_module_init(struct device *dev, struct mlxsw_core *core,
mlxsw_core        834 drivers/net/ethernet/mellanox/mlxsw/core_thermal.c mlxsw_thermal_modules_init(struct device *dev, struct mlxsw_core *core,
mlxsw_core        915 drivers/net/ethernet/mellanox/mlxsw/core_thermal.c mlxsw_thermal_gearboxes_init(struct device *dev, struct mlxsw_core *core,
mlxsw_core        974 drivers/net/ethernet/mellanox/mlxsw/core_thermal.c int mlxsw_thermal_init(struct mlxsw_core *core,
mlxsw_core         75 drivers/net/ethernet/mellanox/mlxsw/i2c.c 	struct mlxsw_core *core;
mlxsw_core        509 drivers/net/ethernet/mellanox/mlxsw/i2c.c mlxsw_i2c_init(void *bus_priv, struct mlxsw_core *mlxsw_core,
mlxsw_core        517 drivers/net/ethernet/mellanox/mlxsw/i2c.c 	mlxsw_i2c->core = mlxsw_core;
mlxsw_core        523 drivers/net/ethernet/mellanox/mlxsw/i2c.c 	err = mlxsw_cmd_query_fw(mlxsw_core, mbox);
mlxsw_core        534 drivers/net/ethernet/mellanox/mlxsw/i2c.c 	err = mlxsw_core_resources_query(mlxsw_core, mbox, res);
mlxsw_core         24 drivers/net/ethernet/mellanox/mlxsw/minimal.c 	struct mlxsw_core *core;
mlxsw_core         91 drivers/net/ethernet/mellanox/mlxsw/minimal.c 	struct mlxsw_core *core = mlxsw_m_port->mlxsw_m->core;
mlxsw_core        101 drivers/net/ethernet/mellanox/mlxsw/minimal.c 	struct mlxsw_core *core = mlxsw_m_port->mlxsw_m->core;
mlxsw_core        328 drivers/net/ethernet/mellanox/mlxsw/minimal.c static int mlxsw_m_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        331 drivers/net/ethernet/mellanox/mlxsw/minimal.c 	struct mlxsw_m *mlxsw_m = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core        334 drivers/net/ethernet/mellanox/mlxsw/minimal.c 	mlxsw_m->core = mlxsw_core;
mlxsw_core        352 drivers/net/ethernet/mellanox/mlxsw/minimal.c static void mlxsw_m_fini(struct mlxsw_core *mlxsw_core)
mlxsw_core        354 drivers/net/ethernet/mellanox/mlxsw/minimal.c 	struct mlxsw_m *mlxsw_m = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core        108 drivers/net/ethernet/mellanox/mlxsw/pci.c 	struct mlxsw_core *core;
mlxsw_core       1394 drivers/net/ethernet/mellanox/mlxsw/pci.c static int mlxsw_pci_init(void *bus_priv, struct mlxsw_core *mlxsw_core,
mlxsw_core       1407 drivers/net/ethernet/mellanox/mlxsw/pci.c 	mlxsw_pci->core = mlxsw_core;
mlxsw_core       1431 drivers/net/ethernet/mellanox/mlxsw/pci.c 	err = mlxsw_cmd_query_fw(mlxsw_core, mbox);
mlxsw_core       1474 drivers/net/ethernet/mellanox/mlxsw/pci.c 	err = mlxsw_core_resources_query(mlxsw_core, mbox, res);
mlxsw_core       1478 drivers/net/ethernet/mellanox/mlxsw/pci.c 	if (MLXSW_CORE_RES_VALID(mlxsw_core, CQE_V2) &&
mlxsw_core       1479 drivers/net/ethernet/mellanox/mlxsw/pci.c 	    MLXSW_CORE_RES_GET(mlxsw_core, CQE_V2))
mlxsw_core       1481 drivers/net/ethernet/mellanox/mlxsw/pci.c 	else if (MLXSW_CORE_RES_VALID(mlxsw_core, CQE_V1) &&
mlxsw_core       1482 drivers/net/ethernet/mellanox/mlxsw/pci.c 		 MLXSW_CORE_RES_GET(mlxsw_core, CQE_V1))
mlxsw_core       1484 drivers/net/ethernet/mellanox/mlxsw/pci.c 	else if ((MLXSW_CORE_RES_VALID(mlxsw_core, CQE_V0) &&
mlxsw_core       1485 drivers/net/ethernet/mellanox/mlxsw/pci.c 		  MLXSW_CORE_RES_GET(mlxsw_core, CQE_V0)) ||
mlxsw_core       1486 drivers/net/ethernet/mellanox/mlxsw/pci.c 		 !MLXSW_CORE_RES_VALID(mlxsw_core, CQE_V0)) {
mlxsw_core        444 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_flash_update(struct mlxsw_core *mlxsw_core,
mlxsw_core        448 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       4053 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_port_split(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       4057 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       4064 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!MLXSW_CORE_RES_VALID(mlxsw_core, LOCAL_PORTS_IN_1X) ||
mlxsw_core       4065 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	    !MLXSW_CORE_RES_VALID(mlxsw_core, LOCAL_PORTS_IN_2X))
mlxsw_core       4068 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	local_ports_in_1x = MLXSW_CORE_RES_GET(mlxsw_core, LOCAL_PORTS_IN_1X);
mlxsw_core       4069 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	local_ports_in_2x = MLXSW_CORE_RES_GET(mlxsw_core, LOCAL_PORTS_IN_2X);
mlxsw_core       4132 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_port_unsplit(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       4135 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       4142 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!MLXSW_CORE_RES_VALID(mlxsw_core, LOCAL_PORTS_IN_1X) ||
mlxsw_core       4143 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	    !MLXSW_CORE_RES_VALID(mlxsw_core, LOCAL_PORTS_IN_2X))
mlxsw_core       4146 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	local_ports_in_1x = MLXSW_CORE_RES_GET(mlxsw_core, LOCAL_PORTS_IN_1X);
mlxsw_core       4147 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	local_ports_in_2x = MLXSW_CORE_RES_GET(mlxsw_core, LOCAL_PORTS_IN_2X);
mlxsw_core       4446 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_cpu_policers_set(struct mlxsw_core *mlxsw_core)
mlxsw_core       4456 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!MLXSW_CORE_RES_VALID(mlxsw_core, MAX_CPU_POLICERS))
mlxsw_core       4459 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	max_cpu_policers = MLXSW_CORE_RES_GET(mlxsw_core, MAX_CPU_POLICERS);
mlxsw_core       4513 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 		err = mlxsw_reg_write(mlxsw_core, MLXSW_REG(qpcr), qpcr_pl);
mlxsw_core       4521 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_trap_groups_set(struct mlxsw_core *mlxsw_core)
mlxsw_core       4531 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!MLXSW_CORE_RES_VALID(mlxsw_core, MAX_TRAP_GROUPS))
mlxsw_core       4534 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	max_trap_groups = MLXSW_CORE_RES_GET(mlxsw_core, MAX_TRAP_GROUPS);
mlxsw_core       4535 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	max_cpu_policers = MLXSW_CORE_RES_GET(mlxsw_core, MAX_CPU_POLICERS);
mlxsw_core       4590 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 		err = mlxsw_reg_write(mlxsw_core, MLXSW_REG(htgt), htgt_pl);
mlxsw_core       4716 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_basic_trap_groups_set(struct mlxsw_core *mlxsw_core)
mlxsw_core       4724 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	return mlxsw_reg_write(mlxsw_core, MLXSW_REG(htgt), htgt_pl);
mlxsw_core       4762 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_init(struct mlxsw_core *mlxsw_core,
mlxsw_core       4765 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       4768 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	mlxsw_sp->core = mlxsw_core;
mlxsw_core       4948 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp1_init(struct mlxsw_core *mlxsw_core,
mlxsw_core       4951 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       4969 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	return mlxsw_sp_init(mlxsw_core, mlxsw_bus_info);
mlxsw_core       4972 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp2_init(struct mlxsw_core *mlxsw_core,
mlxsw_core       4975 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       4989 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	return mlxsw_sp_init(mlxsw_core, mlxsw_bus_info);
mlxsw_core       4992 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static void mlxsw_sp_fini(struct mlxsw_core *mlxsw_core)
mlxsw_core       4994 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       5069 drivers/net/ethernet/mellanox/mlxsw/spectrum.c mlxsw_sp_resource_size_params_prepare(struct mlxsw_core *mlxsw_core,
mlxsw_core       5075 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	u32 single_size_min = MLXSW_CORE_RES_GET(mlxsw_core,
mlxsw_core       5077 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	u32 double_size_min = MLXSW_CORE_RES_GET(mlxsw_core,
mlxsw_core       5079 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	u32 kvd_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE);
mlxsw_core       5104 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp1_resources_kvd_register(struct mlxsw_core *mlxsw_core)
mlxsw_core       5106 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core       5116 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!MLXSW_CORE_RES_VALID(mlxsw_core, KVD_SIZE))
mlxsw_core       5119 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	mlxsw_sp_resource_size_params_prepare(mlxsw_core, &kvd_size_params,
mlxsw_core       5124 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	kvd_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE);
mlxsw_core       5141 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	err = mlxsw_sp1_kvdl_resources_register(mlxsw_core);
mlxsw_core       5170 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp2_resources_kvd_register(struct mlxsw_core *mlxsw_core)
mlxsw_core       5172 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core       5176 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!MLXSW_CORE_RES_VALID(mlxsw_core, KVD_SIZE))
mlxsw_core       5179 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	kvd_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE);
mlxsw_core       5190 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp1_resources_register(struct mlxsw_core *mlxsw_core)
mlxsw_core       5192 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	return mlxsw_sp1_resources_kvd_register(mlxsw_core);
mlxsw_core       5195 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp2_resources_register(struct mlxsw_core *mlxsw_core)
mlxsw_core       5197 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	return mlxsw_sp2_resources_kvd_register(mlxsw_core);
mlxsw_core       5200 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_kvd_sizes_get(struct mlxsw_core *mlxsw_core,
mlxsw_core       5205 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core       5209 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!MLXSW_CORE_RES_VALID(mlxsw_core, KVD_SINGLE_MIN_SIZE) ||
mlxsw_core       5210 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	    !MLXSW_CORE_RES_VALID(mlxsw_core, KVD_DOUBLE_MIN_SIZE))
mlxsw_core       5230 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 		double_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE) -
mlxsw_core       5243 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 		*p_single_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE) -
mlxsw_core       5247 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (*p_single_size < MLXSW_CORE_RES_GET(mlxsw_core, KVD_SINGLE_MIN_SIZE) ||
mlxsw_core       5248 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	    *p_double_size < MLXSW_CORE_RES_GET(mlxsw_core, KVD_DOUBLE_MIN_SIZE) ||
mlxsw_core       5249 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	    MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE) < *p_linear_size)
mlxsw_core       5276 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp_params_register(struct mlxsw_core *mlxsw_core)
mlxsw_core       5278 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core       5294 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static void mlxsw_sp_params_unregister(struct mlxsw_core *mlxsw_core)
mlxsw_core       5296 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	devlink_params_unregister(priv_to_devlink(mlxsw_core),
mlxsw_core       5305 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       5306 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       5316 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_core *mlxsw_core = devlink_priv(devlink);
mlxsw_core       5317 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       5332 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static int mlxsw_sp2_params_register(struct mlxsw_core *mlxsw_core)
mlxsw_core       5334 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core       5338 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	err = mlxsw_sp_params_register(mlxsw_core);
mlxsw_core       5354 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	mlxsw_sp_params_unregister(mlxsw_core);
mlxsw_core       5358 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static void mlxsw_sp2_params_unregister(struct mlxsw_core *mlxsw_core)
mlxsw_core       5360 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	devlink_params_unregister(priv_to_devlink(mlxsw_core),
mlxsw_core       5363 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	mlxsw_sp_params_unregister(mlxsw_core);
mlxsw_core       5366 drivers/net/ethernet/mellanox/mlxsw/spectrum.c static void mlxsw_sp_ptp_transmitted(struct mlxsw_core *mlxsw_core,
mlxsw_core       5369 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core        144 drivers/net/ethernet/mellanox/mlxsw/spectrum.h 	struct mlxsw_core *core;
mlxsw_core        394 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp_sb_pool_get(struct mlxsw_core *mlxsw_core,
mlxsw_core        397 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp_sb_pool_set(struct mlxsw_core *mlxsw_core,
mlxsw_core        416 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp_sb_occ_snapshot(struct mlxsw_core *mlxsw_core,
mlxsw_core        418 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp_sb_occ_max_clear(struct mlxsw_core *mlxsw_core,
mlxsw_core        628 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp1_kvdl_resources_register(struct mlxsw_core *mlxsw_core);
mlxsw_core        975 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp_trap_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        977 drivers/net/ethernet/mellanox/mlxsw/spectrum.h void mlxsw_sp_trap_fini(struct mlxsw_core *mlxsw_core,
mlxsw_core        979 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp_trap_action_set(struct mlxsw_core *mlxsw_core,
mlxsw_core        982 drivers/net/ethernet/mellanox/mlxsw/spectrum.h int mlxsw_sp_trap_group_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        386 drivers/net/ethernet/mellanox/mlxsw/spectrum1_kvdl.c int mlxsw_sp1_kvdl_resources_register(struct mlxsw_core *mlxsw_core)
mlxsw_core        388 drivers/net/ethernet/mellanox/mlxsw/spectrum1_kvdl.c 	struct devlink *devlink = priv_to_devlink(mlxsw_core);
mlxsw_core        393 drivers/net/ethernet/mellanox/mlxsw/spectrum1_kvdl.c 	kvdl_max_size = MLXSW_CORE_RES_GET(mlxsw_core, KVD_SIZE) -
mlxsw_core        394 drivers/net/ethernet/mellanox/mlxsw/spectrum1_kvdl.c 			MLXSW_CORE_RES_GET(mlxsw_core, KVD_SINGLE_MIN_SIZE) -
mlxsw_core        395 drivers/net/ethernet/mellanox/mlxsw/spectrum1_kvdl.c 			MLXSW_CORE_RES_GET(mlxsw_core, KVD_DOUBLE_MIN_SIZE);
mlxsw_core        263 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c static void mlxsw_sp_sb_pm_occ_query_cb(struct mlxsw_core *mlxsw_core,
mlxsw_core        986 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c int mlxsw_sp_sb_pool_get(struct mlxsw_core *mlxsw_core,
mlxsw_core        990 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       1003 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c int mlxsw_sp_sb_pool_set(struct mlxsw_core *mlxsw_core,
mlxsw_core       1008 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       1189 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c static void mlxsw_sp_sb_sr_occ_query_cb(struct mlxsw_core *mlxsw_core,
mlxsw_core       1193 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       1205 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	     local_port < mlxsw_core_max_ports(mlxsw_core); local_port++) {
mlxsw_core       1224 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	     local_port < mlxsw_core_max_ports(mlxsw_core); local_port++) {
mlxsw_core       1238 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c int mlxsw_sp_sb_occ_snapshot(struct mlxsw_core *mlxsw_core,
mlxsw_core       1241 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       1266 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	for (; local_port < mlxsw_core_max_ports(mlxsw_core); local_port++) {
mlxsw_core       1289 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	err = mlxsw_reg_trans_query(mlxsw_core, MLXSW_REG(sbsr), sbsr_pl,
mlxsw_core       1294 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	if (local_port < mlxsw_core_max_ports(mlxsw_core)) {
mlxsw_core       1307 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c int mlxsw_sp_sb_occ_max_clear(struct mlxsw_core *mlxsw_core,
mlxsw_core       1310 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       1331 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	for (; local_port < mlxsw_core_max_ports(mlxsw_core); local_port++) {
mlxsw_core       1351 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	err = mlxsw_reg_trans_query(mlxsw_core, MLXSW_REG(sbsr), sbsr_pl,
mlxsw_core       1355 drivers/net/ethernet/mellanox/mlxsw/spectrum_buffers.c 	if (local_port < mlxsw_core_max_ports(mlxsw_core)) {
mlxsw_core         62 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	struct mlxsw_core *core;
mlxsw_core         76 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	struct mlxsw_core *mlxsw_core = clock->core;
mlxsw_core         79 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	frc_h1 = mlxsw_core_read_frc_h(mlxsw_core);
mlxsw_core         81 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	frc_l = mlxsw_core_read_frc_l(mlxsw_core);
mlxsw_core         83 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	frc_h2 = mlxsw_core_read_frc_h(mlxsw_core);
mlxsw_core         88 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 		frc_l = mlxsw_core_read_frc_l(mlxsw_core);
mlxsw_core        106 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	struct mlxsw_core *mlxsw_core = clock->core;
mlxsw_core        111 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	return mlxsw_reg_write(mlxsw_core, MLXSW_REG(mtutc), mtutc_pl);
mlxsw_core        127 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	struct mlxsw_core *mlxsw_core = clock->core;
mlxsw_core        141 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	err = mlxsw_reg_write(mlxsw_core, MLXSW_REG(mtpps), mtpps_pl);
mlxsw_core        148 drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c 	return mlxsw_reg_write(mlxsw_core, MLXSW_REG(mtutc), mtutc_pl);
mlxsw_core        128 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c int mlxsw_sp_trap_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        141 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c 		err = mlxsw_core_trap_register(mlxsw_core, listener, trap_ctx);
mlxsw_core        149 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c void mlxsw_sp_trap_fini(struct mlxsw_core *mlxsw_core,
mlxsw_core        161 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c 		mlxsw_core_trap_unregister(mlxsw_core, listener, trap_ctx);
mlxsw_core        165 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c int mlxsw_sp_trap_action_set(struct mlxsw_core *mlxsw_core,
mlxsw_core        191 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c 		err = mlxsw_core_trap_action_set(mlxsw_core, listener,
mlxsw_core        253 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c int mlxsw_sp_trap_group_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        256 drivers/net/ethernet/mellanox/mlxsw/spectrum_trap.c 	struct mlxsw_sp *mlxsw_sp = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core         31 drivers/net/ethernet/mellanox/mlxsw/switchib.c 	struct mlxsw_core *core;
mlxsw_core        434 drivers/net/ethernet/mellanox/mlxsw/switchib.c static int mlxsw_sib_basic_trap_groups_set(struct mlxsw_core *mlxsw_core)
mlxsw_core        445 drivers/net/ethernet/mellanox/mlxsw/switchib.c 	return mlxsw_reg_write(mlxsw_core, MLXSW_REG(htgt), htgt_pl);
mlxsw_core        448 drivers/net/ethernet/mellanox/mlxsw/switchib.c static int mlxsw_sib_init(struct mlxsw_core *mlxsw_core,
mlxsw_core        451 drivers/net/ethernet/mellanox/mlxsw/switchib.c 	struct mlxsw_sib *mlxsw_sib = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core        454 drivers/net/ethernet/mellanox/mlxsw/switchib.c 	mlxsw_sib->core = mlxsw_core;
mlxsw_core        482 drivers/net/ethernet/mellanox/mlxsw/switchib.c static void mlxsw_sib_fini(struct mlxsw_core *mlxsw_core)
mlxsw_core        484 drivers/net/ethernet/mellanox/mlxsw/switchib.c 	struct mlxsw_sib *mlxsw_sib = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core         30 drivers/net/ethernet/mellanox/mlxsw/switchx2.c 	struct mlxsw_core *core;
mlxsw_core       1373 drivers/net/ethernet/mellanox/mlxsw/switchx2.c static int mlxsw_sx_port_type_set(struct mlxsw_core *mlxsw_core, u8 local_port,
mlxsw_core       1376 drivers/net/ethernet/mellanox/mlxsw/switchx2.c 	struct mlxsw_sx *mlxsw_sx = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       1554 drivers/net/ethernet/mellanox/mlxsw/switchx2.c static int mlxsw_sx_basic_trap_groups_set(struct mlxsw_core *mlxsw_core)
mlxsw_core       1565 drivers/net/ethernet/mellanox/mlxsw/switchx2.c 	return mlxsw_reg_write(mlxsw_core, MLXSW_REG(htgt), htgt_pl);
mlxsw_core       1568 drivers/net/ethernet/mellanox/mlxsw/switchx2.c static int mlxsw_sx_init(struct mlxsw_core *mlxsw_core,
mlxsw_core       1571 drivers/net/ethernet/mellanox/mlxsw/switchx2.c 	struct mlxsw_sx *mlxsw_sx = mlxsw_core_driver_priv(mlxsw_core);
mlxsw_core       1574 drivers/net/ethernet/mellanox/mlxsw/switchx2.c 	mlxsw_sx->core = mlxsw_core;
mlxsw_core       1610 drivers/net/ethernet/mellanox/mlxsw/switchx2.c static void mlxsw_sx_fini(struct mlxsw_core *mlxsw_core)
mlxsw_core       1612 drivers/net/ethernet/mellanox/mlxsw/switchx2.c 	struct mlxsw_sx *mlxsw_sx = mlxsw_core_driver_priv(mlxsw_core);