From: Jimmy Assarsson <extja@kvaser.com>
To: linux-can@vger.kernel.org
Cc: Jimmy Assarsson <jimmyassarsson@gmail.com>,
Marc Kleine-Budde <mkl@pengutronix.de>,
Vincent Mailhol <mailhol.vincent@wanadoo.fr>,
Simon Horman <horms@kernel.org>,
netdev@vger.kernel.org
Subject: [PATCH v3 07/11] can: kvaser_usb: Store additional device information
Date: Fri, 25 Jul 2025 14:34:48 +0200 [thread overview]
Message-ID: <20250725123452.41-8-extja@kvaser.com> (raw)
In-Reply-To: <20250725123452.41-1-extja@kvaser.com>
Store additional device information; EAN (product number), serial_number
and hardware revision.
Reviewed-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Signed-off-by: Jimmy Assarsson <extja@kvaser.com>
---
Changes in v3:
- Add tag Reviewed-by Vincent Mailhol
drivers/net/can/usb/kvaser_usb/kvaser_usb.h | 3 +++
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 6 +++++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c | 6 +++++-
3 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/drivers/net/can/usb/kvaser_usb/kvaser_usb.h b/drivers/net/can/usb/kvaser_usb/kvaser_usb.h
index a36d86494113..35c2cf3d4486 100644
--- a/drivers/net/can/usb/kvaser_usb/kvaser_usb.h
+++ b/drivers/net/can/usb/kvaser_usb/kvaser_usb.h
@@ -111,7 +111,10 @@ struct kvaser_usb {
struct usb_endpoint_descriptor *bulk_in, *bulk_out;
struct usb_anchor rx_submitted;
+ u32 ean[2];
+ u32 serial_number;
struct kvaser_usb_fw_version fw_version;
+ u8 hw_revision;
unsigned int nchannels;
/* @max_tx_urbs: Firmware-reported maximum number of outstanding,
* not yet ACKed, transmissions on this device. This value is
diff --git a/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c b/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
index 388ebf2b1a5b..a59f20dad692 100644
--- a/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
+++ b/drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c
@@ -114,7 +114,7 @@ struct kvaser_cmd_card_info {
__le32 clock_res;
__le32 mfg_date;
__le32 ean[2];
- u8 hw_version;
+ u8 hw_revision;
u8 usb_mode;
u8 hw_type;
u8 reserved0;
@@ -1918,6 +1918,10 @@ static int kvaser_usb_hydra_get_card_info(struct kvaser_usb *dev)
err = kvaser_usb_hydra_wait_cmd(dev, CMD_GET_CARD_INFO_RESP, &cmd);
if (err)
return err;
+ dev->ean[1] = le32_to_cpu(cmd.card_info.ean[1]);
+ dev->ean[0] = le32_to_cpu(cmd.card_info.ean[0]);
+ dev->serial_number = le32_to_cpu(cmd.card_info.serial_number);
+ dev->hw_revision = cmd.card_info.hw_revision;
dev->nchannels = cmd.card_info.nchannels;
if (dev->nchannels > KVASER_USB_MAX_NET_DEVICES)
diff --git a/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c b/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c
index b4f5d4fba630..c29828a94ad0 100644
--- a/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c
+++ b/drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c
@@ -138,7 +138,7 @@ struct kvaser_cmd_cardinfo {
__le32 padding0;
__le32 clock_resolution;
__le32 mfgdate;
- u8 ean[8];
+ __le32 ean[2];
u8 hw_revision;
union {
struct {
@@ -854,6 +854,10 @@ static int kvaser_usb_leaf_get_card_info(struct kvaser_usb *dev)
(dev->driver_info->family == KVASER_USBCAN &&
dev->nchannels > MAX_USBCAN_NET_DEVICES))
return -EINVAL;
+ dev->ean[1] = le32_to_cpu(cmd.u.cardinfo.ean[1]);
+ dev->ean[0] = le32_to_cpu(cmd.u.cardinfo.ean[0]);
+ dev->serial_number = le32_to_cpu(cmd.u.cardinfo.serial_number);
+ dev->hw_revision = cmd.u.cardinfo.hw_revision;
return 0;
}
--
2.49.0
next prev parent reply other threads:[~2025-07-25 12:35 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-25 12:34 [PATCH v3 00/11] can: kvaser_usb: Simplify identification of physical CAN interfaces Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 01/11] can: kvaser_usb: Add support to control CAN LEDs on device Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 02/11] can: kvaser_usb: Add support for ethtool set_phys_id() Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 03/11] can: kvaser_usb: Assign netdev.dev_port based on device channel index Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 04/11] can: kvaser_usb: Add intermediate variables Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 05/11] can: kvaser_usb: Move comment regarding max_tx_urbs Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 06/11] can: kvaser_usb: Store the different firmware version components in a struct Jimmy Assarsson
2025-07-25 12:34 ` Jimmy Assarsson [this message]
2025-07-25 12:34 ` [PATCH v3 08/11] can: kvaser_usb: Add devlink support Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 09/11] can: kvaser_usb: Expose device information via devlink info_get() Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 10/11] can: kvaser_usb: Add devlink port support Jimmy Assarsson
2025-07-25 12:34 ` [PATCH v3 11/11] Documentation: devlink: add devlink documentation for the kvaser_usb driver Jimmy Assarsson
2025-07-25 16:14 ` [PATCH v3 00/11] can: kvaser_usb: Simplify identification of physical CAN interfaces Marc Kleine-Budde
2025-07-26 20:53 ` Simon Horman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250725123452.41-8-extja@kvaser.com \
--to=extja@kvaser.com \
--cc=horms@kernel.org \
--cc=jimmyassarsson@gmail.com \
--cc=linux-can@vger.kernel.org \
--cc=mailhol.vincent@wanadoo.fr \
--cc=mkl@pengutronix.de \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.