[PATCH 12/14] common/cnxk: update mode param for link speed
Rahul Bhansali
rbhansali at marvell.com
Thu Sep 17 09:10:14 CEST 2026
From: Alok Mishra <almishra at marvell.com>
Populate mode for kernels that uses args.mode for link speed
update.
Signed-off-by: Alok Mishra <almishra at marvell.com>
---
drivers/common/cnxk/roc_nix_mac.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/common/cnxk/roc_nix_mac.c b/drivers/common/cnxk/roc_nix_mac.c
index 4f856677e0..2c8c9a6443 100644
--- a/drivers/common/cnxk/roc_nix_mac.c
+++ b/drivers/common/cnxk/roc_nix_mac.c
@@ -316,6 +316,7 @@ roc_nix_mac_link_info_set(struct roc_nix *roc_nix,
struct dev *dev = &nix->dev;
struct mbox *mbox = mbox_get(dev->mbox);
struct cgx_set_link_mode_req *req;
+ struct cgx_set_link_mode_rsp *rsp;
int rc;
req = mbox_alloc_msg_cgx_set_link_mode(mbox);
@@ -329,8 +330,14 @@ roc_nix_mac_link_info_set(struct roc_nix *roc_nix,
req->args.duplex = link_info->full_duplex;
req->args.an = link_info->autoneg;
+ /* Populate mode for kernels that select it from args.mode. */
+ if (link_info->advertising)
+ req->args.mode = plt_ctz64(link_info->advertising);
+
/* Link mode changes takes more time. */
- rc = mbox_process_tmo(mbox, mbox->rsp_tmo * 4);
+ rc = mbox_process_msg_tmo(mbox, (void **)&rsp, mbox->rsp_tmo * 4);
+ if (!rc)
+ rc = rsp->status;
exit:
mbox_put(mbox);
return rc;
--
2.34.1
More information about the dev
mailing list