On occasion, the Chrome Embedded Controller (EC) can send a mux
configuration which doesn't map to a particular data mode. For instance,
dedicated Type C chargers, when connected, may cause only
USB_PD_MUX_POLARITY_INVERTED to be set. This is a valid flag combination
and should not lead to a driver abort.

Modify the mux configuration handling to not return an error when an
unrecognized mux flag combination is encountered. Concordantly, make the
ensuing print a debug level print so as to not pollute the kernel logs.

Cc: Keith Short <keithsh...@chromium.org>
Signed-off-by: Prashant Malani <pmal...@chromium.org>
---
 drivers/platform/chrome/cros_ec_typec.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/platform/chrome/cros_ec_typec.c 
b/drivers/platform/chrome/cros_ec_typec.c
index ce031a10eb1b..5b8db02ab84a 100644
--- a/drivers/platform/chrome/cros_ec_typec.c
+++ b/drivers/platform/chrome/cros_ec_typec.c
@@ -537,10 +537,9 @@ static int cros_typec_configure_mux(struct cros_typec_data 
*typec, int port_num,
                port->state.mode = TYPEC_STATE_USB;
                ret = typec_mux_set(port->mux, &port->state);
        } else {
-               dev_info(typec->dev,
-                        "Unsupported mode requested, mux flags: %x\n",
-                        mux_flags);
-               ret = -ENOTSUPP;
+               dev_dbg(typec->dev,
+                       "Unrecognized mode requested, mux flags: %x\n",
+                       mux_flags);
        }
 
        return ret;
-- 
2.29.1.341.ge80a0c044ae-goog

Reply via email to