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 v4 04/10] can: kvaser_pciefd: Store the different firmware version components in a struct
Date: Fri, 25 Jul 2025 14:32:24 +0200 [thread overview]
Message-ID: <20250725123230.8-5-extja@kvaser.com> (raw)
In-Reply-To: <20250725123230.8-1-extja@kvaser.com>
Store firmware version in kvaser_pciefd_fw_version struct, specifying the
different components of the version number.
And drop debug prinout of firmware version, since later patches will expose
it via the devlink interface.
Reviewed-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Signed-off-by: Jimmy Assarsson <extja@kvaser.com>
---
Changes in v4:
- Add tag Reviewed-by Vincent Mailhol
Changes in v2:
- Drop debug prinout, since it will be exposed via devlink.
Suggested by Vincent Mailhol [1]
[1] https://lore.kernel.org/linux-can/20250723083236.9-1-extja@kvaser.com/T/#m2003548deedfeafee5c57ee2e2f610d364220fae
drivers/net/can/kvaser_pciefd.c | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/drivers/net/can/kvaser_pciefd.c b/drivers/net/can/kvaser_pciefd.c
index 4bdb1132ecf9..7153b9ea0d3d 100644
--- a/drivers/net/can/kvaser_pciefd.c
+++ b/drivers/net/can/kvaser_pciefd.c
@@ -325,6 +325,12 @@ struct kvaser_pciefd_driver_data {
const struct kvaser_pciefd_dev_ops *ops;
};
+struct kvaser_pciefd_fw_version {
+ u8 major;
+ u8 minor;
+ u16 build;
+};
+
static const struct kvaser_pciefd_address_offset kvaser_pciefd_altera_address_offset = {
.serdes = 0x1000,
.pci_ien = 0x50,
@@ -437,6 +443,7 @@ struct kvaser_pciefd {
u32 bus_freq;
u32 freq;
u32 freq_to_ticks_div;
+ struct kvaser_pciefd_fw_version fw_version;
};
struct kvaser_pciefd_rx_packet {
@@ -1205,14 +1212,12 @@ static int kvaser_pciefd_setup_board(struct kvaser_pciefd *pcie)
u32 version, srb_status, build;
version = ioread32(KVASER_PCIEFD_SYSID_ADDR(pcie) + KVASER_PCIEFD_SYSID_VERSION_REG);
+ build = ioread32(KVASER_PCIEFD_SYSID_ADDR(pcie) + KVASER_PCIEFD_SYSID_BUILD_REG);
pcie->nr_channels = min(KVASER_PCIEFD_MAX_CAN_CHANNELS,
FIELD_GET(KVASER_PCIEFD_SYSID_VERSION_NR_CHAN_MASK, version));
-
- build = ioread32(KVASER_PCIEFD_SYSID_ADDR(pcie) + KVASER_PCIEFD_SYSID_BUILD_REG);
- dev_dbg(&pcie->pci->dev, "Version %lu.%lu.%lu\n",
- FIELD_GET(KVASER_PCIEFD_SYSID_VERSION_MAJOR_MASK, version),
- FIELD_GET(KVASER_PCIEFD_SYSID_VERSION_MINOR_MASK, version),
- FIELD_GET(KVASER_PCIEFD_SYSID_BUILD_SEQ_MASK, build));
+ pcie->fw_version.major = FIELD_GET(KVASER_PCIEFD_SYSID_VERSION_MAJOR_MASK, version);
+ pcie->fw_version.minor = FIELD_GET(KVASER_PCIEFD_SYSID_VERSION_MINOR_MASK, version);
+ pcie->fw_version.build = FIELD_GET(KVASER_PCIEFD_SYSID_BUILD_SEQ_MASK, build);
srb_status = ioread32(KVASER_PCIEFD_SRB_ADDR(pcie) + KVASER_PCIEFD_SRB_STAT_REG);
if (!(srb_status & KVASER_PCIEFD_SRB_STAT_DMA)) {
--
2.49.0
next prev parent reply other threads:[~2025-07-25 12:32 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-25 12:32 [PATCH v4 00/10] can: kvaser_pciefd: Simplify identification of physical CAN interfaces Jimmy Assarsson
2025-07-25 12:32 ` [PATCH v4 01/10] can: kvaser_pciefd: Add support to control CAN LEDs on device Jimmy Assarsson
2025-07-25 12:32 ` [PATCH v4 02/10] can: kvaser_pciefd: Add support for ethtool set_phys_id() Jimmy Assarsson
2025-07-25 12:32 ` [PATCH v4 03/10] can: kvaser_pciefd: Add intermediate variable for device struct in probe() Jimmy Assarsson
2025-07-25 12:32 ` Jimmy Assarsson [this message]
2025-07-25 12:32 ` [PATCH v4 05/10] can: kvaser_pciefd: Store device channel index Jimmy Assarsson
2025-07-25 12:32 ` [PATCH v4 06/10] can: kvaser_pciefd: Split driver into C-file and header-file Jimmy Assarsson
2025-07-25 12:32 ` [PATCH v4 07/10] can: kvaser_pciefd: Add devlink support Jimmy Assarsson
2025-07-25 12:47 ` Marc Kleine-Budde
2025-07-25 13:50 ` Jimmy Assarsson
2025-07-25 16:16 ` Marc Kleine-Budde
2025-07-25 12:32 ` [PATCH v4 08/10] can: kvaser_pciefd: Expose device firmware version via devlink info_get() Jimmy Assarsson
2025-07-25 12:32 ` [PATCH v4 09/10] can: kvaser_pciefd: Add devlink port support Jimmy Assarsson
2025-07-25 12:32 ` [PATCH v4 10/10] Documentation: devlink: add devlink documentation for the kvaser_pciefd driver Jimmy Assarsson
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=20250725123230.8-5-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.