Re: [PATCH v2 1/3] usb: chipidea: core: refactor ci_usb_role_switch_set()
From: Peter Chen (CIX)
Date: Wed Apr 08 2026 - 01:24:32 EST
On 26-04-02 15:14:55, Xu Yang wrote:
> Current code is redundant, refactor the code, no function change.
>
> Signed-off-by: Xu Yang <xu.yang_2@xxxxxxx>
Acked-by: Peter Chen <peter.chen@xxxxxxxxxx>
Peter
>
> ---
> Changes in v2:
> - new patch
> ---
> drivers/usb/chipidea/core.c | 29 +++++++----------------------
> 1 file changed, 7 insertions(+), 22 deletions(-)
>
> diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c
> index fac11f20cf0a..87be716dff3e 100644
> --- a/drivers/usb/chipidea/core.c
> +++ b/drivers/usb/chipidea/core.c
> @@ -618,28 +618,13 @@ static int ci_usb_role_switch_set(struct usb_role_switch *sw,
> struct ci_hdrc *ci = usb_role_switch_get_drvdata(sw);
> struct ci_hdrc_cable *cable;
>
> - if (role == USB_ROLE_HOST) {
> - cable = &ci->platdata->id_extcon;
> - cable->changed = true;
> - cable->connected = true;
> - cable = &ci->platdata->vbus_extcon;
> - cable->changed = true;
> - cable->connected = false;
> - } else if (role == USB_ROLE_DEVICE) {
> - cable = &ci->platdata->id_extcon;
> - cable->changed = true;
> - cable->connected = false;
> - cable = &ci->platdata->vbus_extcon;
> - cable->changed = true;
> - cable->connected = true;
> - } else {
> - cable = &ci->platdata->id_extcon;
> - cable->changed = true;
> - cable->connected = false;
> - cable = &ci->platdata->vbus_extcon;
> - cable->changed = true;
> - cable->connected = false;
> - }
> + cable = &ci->platdata->id_extcon;
> + cable->changed = true;
> + cable->connected = (role == USB_ROLE_HOST);
> +
> + cable = &ci->platdata->vbus_extcon;
> + cable->changed = true;
> + cable->connected = (role == USB_ROLE_DEVICE);
>
> ci_irq(ci);
> return 0;
> --
> 2.34.1
>
--
Best regards,
Peter