Re: [PATCHv3 1/2] usb: USB Type-C connector class

From: Guenter Roeck
Date: Wed Jun 22 2016 - 17:54:50 EST


Hi,

On Tue, Jun 21, 2016 at 05:51:50PM +0300, Heikki Krogerus wrote:
> The purpose of USB Type-C connector class is to provide
> unified interface for the user space to get the status and
> basic information about USB Type-C connectors on a system,
> control over data role swapping, and when USB PD is
> available, also control over power role swapping and
> Alternate Modes.
>
> Signed-off-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> ---
[ ... ]

> +
> +static void typec_remove_partner(struct typec_port *port)
> +{
> + WARN_ON(port->partner->alt_modes);

You are setting partner->alt_modes in typec_register_altmodes(),
but you don't clear it in typec_unregister_altmodes().

Does this work for you ? I always get the warning when I remove a cable.

Thanks,
Guenter