Messages in this thread | | | From | Guenter Roeck <> | Date | Tue, 20 Dec 2022 07:09:40 -0800 | Subject | Re: [PATCH] platform/chrome: cros_ec_typec: deferred probe when typec count mismatch |
| |
On Mon, Dec 19, 2022 at 10:00 PM Ruihai Zhou <zhouruihai@huaqin.corp-partner.google.com> wrote: > > The kernel bootup is much faster with normal mode. In this case, > there is a chance that the cros-ec-typec module get the actual typec > port counts but not accurate from ec before ec is able to setup it. > It will block the HDMI mux function. > Hence, return -EPROBE_DEFER to put the device onto the deferred probe > list when the typec count mismatch between ec and node. > > Signed-off-by: Ruihai Zhou <zhouruihai@huaqin.corp-partner.google.com> > --- > drivers/platform/chrome/cros_ec_typec.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/platform/chrome/cros_ec_typec.c b/drivers/platform/chrome/cros_ec_typec.c > index 59de4ce01fab..d821501e875c 100644 > --- a/drivers/platform/chrome/cros_ec_typec.c > +++ b/drivers/platform/chrome/cros_ec_typec.c > @@ -382,7 +382,7 @@ static int cros_typec_init_ports(struct cros_typec_data *typec) > > if (nports > typec->num_ports) { > dev_err(dev, "More ports listed than can be supported.\n"); > - return -EINVAL; > + return -EPROBE_DEFER;
I think that is problematic. It might as well be that nports > EC_USB_PD_MAX_PORTS.
Is this really seen in the field ? The EC should never report a wrong (random) number of ports. If it is not ready, there should be _some_ indication that it isn't ready. Does it really report a more or less random number in this case ?
Guenter
> } > > /* DT uses "reg" to specify port number. */ > -- > 2.17.1 >
| |