Home
last modified time | relevance | path

Searched refs:linecard (Results 1 – 11 of 11) sorted by relevance

/linux-6.1.9/drivers/net/ethernet/mellanox/mlxsw/
Dcore_linecards.c42 mlxsw_linecard_status_event_to_schedule(struct mlxsw_linecard *linecard, in mlxsw_linecard_status_event_to_schedule() argument
45 cancel_delayed_work_sync(&linecard->status_event_to_dw); in mlxsw_linecard_status_event_to_schedule()
46 linecard->status_event_type_to = status_event_type; in mlxsw_linecard_status_event_to_schedule()
47 mlxsw_core_schedule_dw(&linecard->status_event_to_dw, in mlxsw_linecard_status_event_to_schedule()
52 mlxsw_linecard_status_event_done(struct mlxsw_linecard *linecard, in mlxsw_linecard_status_event_done() argument
55 if (linecard->status_event_type_to == status_event_type) in mlxsw_linecard_status_event_done()
56 cancel_delayed_work_sync(&linecard->status_event_to_dw); in mlxsw_linecard_status_event_done()
77 static const char *mlxsw_linecard_type_name(struct mlxsw_linecard *linecard) in mlxsw_linecard_type_name() argument
79 struct mlxsw_core *mlxsw_core = linecard->linecards->mlxsw_core; in mlxsw_linecard_type_name()
83 mlxsw_reg_mddq_slot_name_pack(mddq_pl, linecard->slot_index); in mlxsw_linecard_type_name()
[all …]
Dcore_linecard_dev.c18 struct mlxsw_linecard *linecard; member
23 struct mlxsw_linecard *linecard; member
50 int mlxsw_linecard_bdev_add(struct mlxsw_linecard *linecard) in mlxsw_linecard_bdev_add() argument
68 linecard_bdev->adev.dev.parent = linecard->linecards->bus_info->dev; in mlxsw_linecard_bdev_add()
69 linecard_bdev->linecard = linecard; in mlxsw_linecard_bdev_add()
84 linecard->bdev = linecard_bdev; in mlxsw_linecard_bdev_add()
88 void mlxsw_linecard_bdev_del(struct mlxsw_linecard *linecard) in mlxsw_linecard_bdev_del() argument
90 struct mlxsw_linecard_bdev *linecard_bdev = linecard->bdev; in mlxsw_linecard_bdev_del()
97 linecard->bdev = NULL; in mlxsw_linecard_bdev_del()
105 struct mlxsw_linecard *linecard = linecard_dev->linecard; in mlxsw_linecard_dev_devlink_info_get() local
[all …]
Dcore_hwmon.c791 struct mlxsw_hwmon_dev *linecard; in mlxsw_hwmon_got_active() local
796 linecard = &hwmon->line_cards[slot_index]; in mlxsw_hwmon_got_active()
797 if (linecard->active) in mlxsw_hwmon_got_active()
802 linecard->sensor_count = 1; in mlxsw_hwmon_got_active()
803 linecard->slot_index = slot_index; in mlxsw_hwmon_got_active()
804 linecard->hwmon = hwmon; in mlxsw_hwmon_got_active()
805 err = mlxsw_hwmon_module_init(linecard); in mlxsw_hwmon_got_active()
812 err = mlxsw_hwmon_gearbox_init(linecard); in mlxsw_hwmon_got_active()
819 linecard->groups[0] = &linecard->group; in mlxsw_hwmon_got_active()
820 linecard->group.attrs = linecard->attrs; in mlxsw_hwmon_got_active()
[all …]
Dminimal.c563 struct mlxsw_m_line_card *linecard; in mlxsw_m_ports_remove_selected() local
565 linecard = mlxsw_m->line_cards[linecard_priv->slot_index]; in mlxsw_m_ports_remove_selected()
567 if (WARN_ON(!linecard->active)) in mlxsw_m_ports_remove_selected()
571 linecard->active = false; in mlxsw_m_ports_remove_selected()
595 struct mlxsw_m_line_card *linecard; in mlxsw_m_got_active() local
599 linecard = mlxsw_m->line_cards[slot_index]; in mlxsw_m_got_active()
601 if (linecard->active) in mlxsw_m_got_active()
617 linecard->active = true; in mlxsw_m_got_active()
629 struct mlxsw_m_line_card *linecard; in mlxsw_m_got_inactive() local
632 linecard = mlxsw_m->line_cards[slot_index]; in mlxsw_m_got_inactive()
[all …]
Dcore_thermal.c849 struct mlxsw_thermal_area *linecard; in mlxsw_thermal_got_active() local
852 linecard = &thermal->line_cards[slot_index]; in mlxsw_thermal_got_active()
854 if (linecard->active) in mlxsw_thermal_got_active()
857 linecard->slot_index = slot_index; in mlxsw_thermal_got_active()
859 thermal, linecard); in mlxsw_thermal_got_active()
867 thermal->core, thermal, linecard); in mlxsw_thermal_got_active()
874 linecard->active = true; in mlxsw_thermal_got_active()
879 mlxsw_thermal_modules_fini(thermal, linecard); in mlxsw_thermal_got_active()
887 struct mlxsw_thermal_area *linecard; in mlxsw_thermal_got_inactive() local
889 linecard = &thermal->line_cards[slot_index]; in mlxsw_thermal_got_inactive()
[all …]
Dcore.h45 struct mlxsw_linecards *linecard);
641 int mlxsw_linecard_devlink_info_get(struct mlxsw_linecard *linecard,
645 struct mlxsw_linecard *linecard,
668 int mlxsw_linecard_bdev_add(struct mlxsw_linecard *linecard);
669 void mlxsw_linecard_bdev_del(struct mlxsw_linecard *linecard);
Dcore.c51 struct mlxsw_linecard *linecard; member
3094 struct mlxsw_linecard *linecard; in __mlxsw_core_port_init() local
3096 linecard = mlxsw_linecard_get(mlxsw_core->linecards, in __mlxsw_core_port_init()
3098 mlxsw_core_port->linecard = linecard; in __mlxsw_core_port_init()
3100 linecard->devlink_linecard); in __mlxsw_core_port_init()
3218 return mlxsw_core_port->linecard; in mlxsw_core_port_linecard_get()
/linux-6.1.9/net/core/
Ddevlink.c518 struct devlink_linecard *linecard; in devlink_linecard_get_from_attrs() local
521 linecard = devlink_linecard_get_by_index(devlink, linecard_index); in devlink_linecard_get_from_attrs()
522 if (linecard) in devlink_linecard_get_from_attrs()
523 refcount_inc(&linecard->refcount); in devlink_linecard_get_from_attrs()
525 if (!linecard) in devlink_linecard_get_from_attrs()
527 return linecard; in devlink_linecard_get_from_attrs()
538 static void devlink_linecard_put(struct devlink_linecard *linecard) in devlink_linecard_put() argument
540 if (refcount_dec_and_test(&linecard->refcount)) { in devlink_linecard_put()
541 mutex_destroy(&linecard->state_lock); in devlink_linecard_put()
542 kfree(linecard); in devlink_linecard_put()
[all …]
/linux-6.1.9/include/net/
Ddevlink.h140 struct devlink_linecard *linecard; member
174 int (*provision)(struct devlink_linecard *linecard, void *priv,
177 int (*unprovision)(struct devlink_linecard *linecard, void *priv,
179 bool (*same_provision)(struct devlink_linecard *linecard, void *priv,
181 unsigned int (*types_count)(struct devlink_linecard *linecard,
183 void (*types_get)(struct devlink_linecard *linecard,
1596 struct devlink_linecard *linecard);
1600 void devlink_linecard_destroy(struct devlink_linecard *linecard);
1601 void devlink_linecard_provision_set(struct devlink_linecard *linecard,
1603 void devlink_linecard_provision_clear(struct devlink_linecard *linecard);
[all …]
/linux-6.1.9/Documentation/networking/devlink/
Ddevlink-linecard.rst10 The ``devlink-linecard`` mechanism is targeted for manipulation of
61 The ``devlink-linecard`` mechanism supports the following line card states:
71 The following diagram provides a general overview of ``devlink-linecard``
Dindex.rst41 devlink-linecard