Re: [PATCH 1/2] platform/chrome: cros_ec_typec: Configure Retimer cable type

From: Prashant Malani
Date: Fri Jun 16 2023 - 18:05:28 EST


Hi Utkarsh,

On Fri, Jun 16, 2023 at 2:57 PM Patel, Utkarsh H
<utkarsh.h.patel@xxxxxxxxx> wrote:
>
> Hi Prashant,
>
> Thank you for the review and feedback.
>
> > > Connector class driver only configure cable type active or passive.
> > > With this change it will also configure if the cable type is retimer
> > > or redriver if required by AP. This details will be provided by Chrome
> > > EC as a part of cable discover mode VDO.
> > >
> > > This change also brings in corresponding EC header updates from the EC
> > > code base [1].
> >
> > Please separate this into another patch.
>
> I can do that but since it's just one line change and related, kept it together.

It's fine to have a 1 line patch. That said (see below)...

>
> > > a/include/linux/platform_data/cros_ec_commands.h
> > > b/include/linux/platform_data/cros_ec_commands.h
> > > index ab721cf13a98..c9aa5495c666 100644
> > > --- a/include/linux/platform_data/cros_ec_commands.h
> > > +++ b/include/linux/platform_data/cros_ec_commands.h
> > > @@ -4963,6 +4963,8 @@ struct ec_response_usb_pd_control_v1 { #define
> > > USB_PD_CTRL_TBT_LEGACY_ADAPTER BIT(2)
> > > /* Active Link Uni-Direction */
> > > #define USB_PD_CTRL_ACTIVE_LINK_UNIDIR BIT(3)
> > > +/* Retimer/Redriver cable */
> > > +#define USB_PD_CTRL_RETIMER_CABLE BIT(4)
> >
> > Why are we adding this to this host commands interface? Is this information
> > not available from the Cable (plug)'s Identity information? We register all of
> > that in the port driver already [1], so we should just use that, instead of
> > changing the host command interface.
>
> All the cable details used to configure Alternate mode and USB4 mode in this driver are provided from EC host command.
> To stay consistent with the existing implementation, it was added to the existing host command.

I think it's fine to use the cable VDO from the registered port plug
for this. It's
less disruptive than introducing another (superfluous) host command
modification.
It is also more clear; right now we don't know what information populates the
USB_PD_CTRL_RETIMER_CABLE. Please use the existing cable VDO from the
cable struct for this purpose.

Thanks,