[PATCH] usb: typec: tipd: Don't block probing of consumer of "connector" nodes

From: Martin Kepplinger
Date: Tue Jul 13 2021 - 03:40:29 EST


Similar as with tcpm this patch lets fw_devlink know not to wait on the
fwnode to be populated as a struct device.

Without this patch, USB functionality can be broken on some previously
supported boards.

Fixes: 28ec344bb891 ("usb: typec: tcpm: Don't block probing of consumers of "connector" nodes")
Signed-off-by: Martin Kepplinger <martin.kepplinger@xxxxxxx>
---
hi,

at least the boards based on imx8mq-librem5.dtsi suffer from this, possibly
more.

thanks,
martin


drivers/usb/typec/tipd/core.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/usb/typec/tipd/core.c b/drivers/usb/typec/tipd/core.c
index 938219bc1b4b..b31aaf57eb3b 100644
--- a/drivers/usb/typec/tipd/core.c
+++ b/drivers/usb/typec/tipd/core.c
@@ -629,6 +629,8 @@ static int tps6598x_probe(struct i2c_client *client)
if (!fwnode)
return -ENODEV;

+ fw_devlink_purge_absent_suppliers(fwnode);
+
tps->role_sw = fwnode_usb_role_switch_get(fwnode);
if (IS_ERR(tps->role_sw)) {
ret = PTR_ERR(tps->role_sw);
--
2.30.2