Messages in this thread | | | Date | Mon, 7 Nov 2022 16:25:47 +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 16:02, Yassine Oudjana wrote: > > On Mon, Nov 7 2022 at 15:51:55 +01:00:00, Marek Vasut <marex@denx.de> > wrote: >> 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 ? > > Type-C is the new one, yes. This comment is somewhat similar to the one > in tusb320_typec_probe(): > > /* The Type-C connector is optional, for backward compatibility. */
Ahhh, The Type-C connector support is indeed optional to avoid breaking any of the older systems which only use/provide extcon.
> Perhaps a better way to say this in both comments would be "to maintain" > instead of "for".
I think best just drop the "for backward compatibility" altogether, like so:
/* * Type-C support is optional. Only call the Type-C handler if a * port had been registered previously. */
| |