mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
can: kvaser_pciefd: Add support for ethtool set_phys_id()
Add support for ethtool set_phys_id(), to physically locate devices by flashing a LED on the device. Reviewed-by: Axel Forsman <axfo@kvaser.com> Reviewed-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr> Signed-off-by: Jimmy Assarsson <extja@kvaser.com> Link: https://patch.msgid.link/20250725123230.8-3-extja@kvaser.com Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
This commit is contained in:
parent
44f0b630f6
commit
e74249a00b
|
|
@ -968,8 +968,32 @@ static const struct net_device_ops kvaser_pciefd_netdev_ops = {
|
|||
.ndo_change_mtu = can_change_mtu,
|
||||
};
|
||||
|
||||
static int kvaser_pciefd_set_phys_id(struct net_device *netdev,
|
||||
enum ethtool_phys_id_state state)
|
||||
{
|
||||
struct kvaser_pciefd_can *can = netdev_priv(netdev);
|
||||
|
||||
switch (state) {
|
||||
case ETHTOOL_ID_ACTIVE:
|
||||
return 3; /* 3 On/Off cycles per second */
|
||||
|
||||
case ETHTOOL_ID_ON:
|
||||
kvaser_pciefd_set_led(can, true);
|
||||
return 0;
|
||||
|
||||
case ETHTOOL_ID_OFF:
|
||||
case ETHTOOL_ID_INACTIVE:
|
||||
kvaser_pciefd_set_led(can, false);
|
||||
return 0;
|
||||
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
|
||||
static const struct ethtool_ops kvaser_pciefd_ethtool_ops = {
|
||||
.get_ts_info = can_ethtool_op_get_ts_info_hwts,
|
||||
.set_phys_id = kvaser_pciefd_set_phys_id,
|
||||
};
|
||||
|
||||
static int kvaser_pciefd_setup_can_ctrls(struct kvaser_pciefd *pcie)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user