From 37777f60a6510573c7f68be38476a2744731de44 Mon Sep 17 00:00:00 2001 From: Sebastian Reichel <sebastian.reichel@collabora.com> Date: Fri, 18 Apr 2025 18:39:45 +0200 Subject: [PATCH] usb: typec: class: Improve error printing during probe It's currently quite hard to understand why a USB-C controller probe might run into probe defer. Let's improve that by adding some error messages. Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com> --- drivers/usb/typec/class.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c index 9c76c3d0c6cff..0c3c03940d951 100644 --- a/drivers/usb/typec/class.c +++ b/drivers/usb/typec/class.c @@ -2646,6 +2646,7 @@ struct typec_port *typec_register_port(struct device *parent, port->sw = typec_switch_get(&port->dev); if (IS_ERR(port->sw)) { ret = PTR_ERR(port->sw); + dev_err_probe(parent, ret, "failed to get switch\n"); put_device(&port->dev); return ERR_PTR(ret); } @@ -2653,6 +2654,7 @@ struct typec_port *typec_register_port(struct device *parent, port->mux = typec_mux_get(&port->dev); if (IS_ERR(port->mux)) { ret = PTR_ERR(port->mux); + dev_err_probe(parent, ret, "failed to get mux\n"); put_device(&port->dev); return ERR_PTR(ret); } @@ -2660,6 +2662,7 @@ struct typec_port *typec_register_port(struct device *parent, port->retimer = typec_retimer_get(&port->dev); if (IS_ERR(port->retimer)) { ret = PTR_ERR(port->retimer); + dev_err_probe(parent, ret, "failed to get retimer\n"); put_device(&port->dev); return ERR_PTR(ret); } @@ -2675,7 +2678,7 @@ struct typec_port *typec_register_port(struct device *parent, ret = usb_power_delivery_link_device(port->pd, &port->dev); if (ret) { - dev_err(&port->dev, "failed to link pd\n"); + dev_err_probe(parent, ret, "failed to link pd\n"); device_unregister(&port->dev); return ERR_PTR(ret); } -- GitLab