Messages in this thread | | | Date | Mon, 7 Nov 2022 15:51:55 +0100 | Subject | Re: [PATCH] extcon: usbc-tusb320: Call the Type-C IRQ handler only if a port is registered | From | Marek Vasut <> |
| |
On 11/7/22 15:48, Yassine Oudjana wrote: > From: Yassine Oudjana <y.oudjana@protonmail.com> > > Commit bf7571c00dca ("extcon: usbc-tusb320: Add USB TYPE-C support") > added an optional Type-C interface to the driver but missed to check > if it is in use when calling the IRQ handler. This causes an oops on > devices currently using the old extcon interface. Check if a Type-C > port is registered before calling the Type-C IRQ handler. > > Fixes: bf7571c00dca ("extcon: usbc-tusb320: Add USB TYPE-C support") > Signed-off-by: Yassine Oudjana <y.oudjana@protonmail.com> > --- > drivers/extcon/extcon-usbc-tusb320.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/drivers/extcon/extcon-usbc-tusb320.c b/drivers/extcon/extcon-usbc-tusb320.c > index 41041ff0fadb..037bc11b2a48 100644 > --- a/drivers/extcon/extcon-usbc-tusb320.c > +++ b/drivers/extcon/extcon-usbc-tusb320.c > @@ -327,7 +327,14 @@ static irqreturn_t tusb320_irq_handler(int irq, void *dev_id) > return IRQ_NONE; > > tusb320_extcon_irq_handler(priv, reg); > - tusb320_typec_irq_handler(priv, reg); > + > + /* > + * Type-C support is optional for backward compatibility.
It's the other way around, extcon is the legacy, type-c is the new, right ?
> + * Only call the Type-C handler if a port had been registered > + * previously. > + */ > + if (priv->port) > + tusb320_typec_irq_handler(priv, reg); > > regmap_write(priv->regmap, TUSB320_REG9, reg);
Reviewed-by: Marek Vasut <marex@denx.de>
Thanks!
| |