Linux USB
 help / color / mirror / Atom feed
* [PATCH] usb: typec: ucsi: treat get_pdos not supported condition as info instead of error
@ 2024-06-04 19:40 Mark Pearson
  2024-06-04 23:45 ` Dmitry Baryshkov
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Mark Pearson @ 2024-06-04 19:40 UTC (permalink / raw)
  To: mpearson-lenovo; +Cc: heikki.krogerus, gregkh, linux-usb, linux-kernel

On systems where the UCSI PDOs are not supported, the UCSI driver is
giving an error message. This can cause users to believe there is a HW
issue with their system when in fact it is working as designed.

Downgrade message to dev_info for EOPNOTSUPP condition.

Tested on Lenovo L14 G5 AMD and confirmed with Lenovo FW team that PDOs
are not supported on this platform.

Signed-off-by: Mark Pearson <mpearson-lenovo@squebb.ca>
---
 drivers/usb/typec/ucsi/ucsi.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/typec/ucsi/ucsi.c b/drivers/usb/typec/ucsi/ucsi.c
index cb52e7b0a2c5..090be87d5485 100644
--- a/drivers/usb/typec/ucsi/ucsi.c
+++ b/drivers/usb/typec/ucsi/ucsi.c
@@ -632,8 +632,12 @@ static int ucsi_read_pdos(struct ucsi_connector *con,
 	command |= is_source(role) ? UCSI_GET_PDOS_SRC_PDOS : 0;
 	ret = ucsi_send_command(ucsi, command, pdos + offset,
 				num_pdos * sizeof(u32));
-	if (ret < 0 && ret != -ETIMEDOUT)
-		dev_err(ucsi->dev, "UCSI_GET_PDOS failed (%d)\n", ret);
+	if (ret < 0 && ret != -ETIMEDOUT) {
+		if (ret == -EOPNOTSUPP)
+			dev_info(ucsi->dev, "UCSI_GET_PDOS not supported on this hardware\n");
+		else
+			dev_err(ucsi->dev, "UCSI_GET_PDOS failed (%d)\n", ret);
+	}
 
 	return ret;
 }
-- 
2.45.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-06-06 15:47 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-04 19:40 [PATCH] usb: typec: ucsi: treat get_pdos not supported condition as info instead of error Mark Pearson
2024-06-04 23:45 ` Dmitry Baryshkov
2024-06-05 17:09   ` Mark Pearson
2024-06-05 23:26     ` Dmitry Baryshkov
2024-06-06  2:12       ` Mark Pearson
2024-06-06 15:47     ` Diogo Ivo
2024-06-05 10:10 ` Diogo Ivo
2024-06-05 15:29 ` Diogo Ivo
2024-06-05 16:24   ` Mark Pearson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox