[PATCH v3 11/32] staging: wfx: relax the PDS existence constraint

Jerome Pouiller Jerome.Pouiller at silabs.com
Mon Sep 13 13:01:42 UTC 2021

From: Jérôme Pouiller <jerome.pouiller at silabs.com>

The PDS file contains antenna parameters. The file is specific to each
hardware design. Normally, the board designer should add a line in the
of_device_id table with his own antenna parameters.

Until, now the absence of PDS file is a hard fatal error. However,
during the development, in most of the cases, an empty PDS file is
sufficient to start WiFi communication.

This patch keep an error, but allow the user to play with the device.

Signed-off-by: Jérôme Pouiller <jerome.pouiller at silabs.com>
 drivers/staging/wfx/main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/wfx/main.c b/drivers/staging/wfx/main.c
index 0a9d02d1af2f..2a759f3554c9 100644
--- a/drivers/staging/wfx/main.c
+++ b/drivers/staging/wfx/main.c
@@ -220,7 +220,7 @@ static int wfx_send_pdata_pds(struct wfx_dev *wdev)
 	ret = request_firmware(&pds, wdev->pdata.file_pds, wdev->dev);
 	if (ret) {
-		dev_err(wdev->dev, "can't load PDS file %s\n",
+		dev_err(wdev->dev, "can't load antenna parameters (PDS file %s). The device may be unstable.\n",
 		goto err1;
@@ -396,7 +396,7 @@ int wfx_probe(struct wfx_dev *wdev)
 	dev_dbg(wdev->dev, "sending configuration file %s\n",
 	err = wfx_send_pdata_pds(wdev);
-	if (err < 0)
+	if (err < 0 && err != -ENOENT)
 		goto err0;
 	wdev->poll_irq = false;

More information about the devel mailing list