From: "Jérôme Pouiller" <jerome.pouiller@silabs.com>
To: linux-wireless@vger.kernel.org,
Johannes Berg <johannes@sipsolutions.net>
Cc: linux-kernel@vger.kernel.org, linux-devel@silabs.com,
"Alexander Sverdlin" <alexander.sverdlin@siemens.com>,
"Lukas Stockmann" <lukas.stockmann@siemens.com>,
"Gerard Salvatella" <gerard.salvatella@siemens.com>,
"Jérôme Pouiller" <jerome.pouiller@silabs.com>
Subject: [PATCH wireless-next 2/2] wifi: wfx: fix error code on unsupported firmware
Date: Sun, 6 Sep 2026 22:47:29 +0200 [thread overview]
Message-ID: <20260906204831.949692-3-jerome.pouiller@silabs.com> (raw)
In-Reply-To: <20260906204831.949692-1-jerome.pouiller@silabs.com>
The 'secure link' feature is not supported by upstream (the reference
code relies on mbedTLS to implement it, which is not an option for the
Linux kernel).
If the firmware enforce the 'secure link' feature, wfx_probe() exits
early. However, err still holds the value returned by the previous call
to wait_for_completion_timeout(), which is the number of jiffies left
before the timeout, hence strictly positive (the zero case is handled
just above).
wfx_probe() therefore returns a positive value. The bus probe functions
forward it as-is and the driver core negates it (see really_probe()).
The device does not get bound, which is the expected outcome, but the
reported error code is a meaningless negative jiffies count instead of
an errno.
Return -EOPNOTSUPP, as already done a few lines above when the firmware
API version is not supported.
Copilot reviewed the code and wrote some parts of the log.
Reported-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
Closes: https://lore.kernel.org/all/cc4de4e40e3ca50e7288be2b9067802576567c25.camel@siemens.com/
Assisted-by: Copilot:claude-opus-5
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
---
drivers/net/wireless/silabs/wfx/main.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/wireless/silabs/wfx/main.c b/drivers/net/wireless/silabs/wfx/main.c
index b6fd9d4c1f5fc..16d5b51f6f03a 100644
--- a/drivers/net/wireless/silabs/wfx/main.c
+++ b/drivers/net/wireless/silabs/wfx/main.c
@@ -411,6 +411,7 @@ int wfx_probe(struct wfx_dev *wdev)
if (wdev->hw_caps.link_mode == SEC_LINK_ENFORCED) {
dev_err(wdev->dev, "chip require secure_link, but can't negotiate it\n");
+ err = -EOPNOTSUPP;
goto irq_unsubscribe;
}
--
2.47.3
next prev parent reply other threads:[~2026-09-06 20:49 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-06 20:47 [PATCH wireless-next 0/2] wifi: wfx: fix two minor issues in error paths Jérôme Pouiller
2026-09-06 20:47 ` [PATCH wireless-next 1/2] wifi: wfx: fix use-after-free of the cooling work on device removal Jérôme Pouiller
2026-09-07 9:11 ` Sverdlin, Alexander
2026-09-06 20:47 ` Jérôme Pouiller [this message]
2026-09-07 6:20 ` [PATCH wireless-next 2/2] wifi: wfx: fix error code on unsupported firmware Sverdlin, Alexander
2026-09-07 6:59 ` Jérôme Pouiller
2026-09-07 7:05 ` Sverdlin, Alexander
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=20260906204831.949692-3-jerome.pouiller@silabs.com \
--to=jerome.pouiller@silabs.com \
--cc=alexander.sverdlin@siemens.com \
--cc=gerard.salvatella@siemens.com \
--cc=johannes@sipsolutions.net \
--cc=linux-devel@silabs.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=lukas.stockmann@siemens.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®