Re: [PATCH v3 1/4] usb: typec: Use Thunderbolt 3 cable discover mode VDO in Enter_USB message

From: Heikki Krogerus
Date: Fri Nov 20 2020 - 03:05:28 EST


On Wed, Nov 18, 2020 at 10:32:08PM -0800, Utkarsh Patel wrote:
> When Thunderbolt 3 cable is being used to create USB4 connection, use
> Thunderbolt 3 discover mode VDO to fill details such as active cable plug
> link training and cable rounded support.
> With USB4 cables, these VDO members need not be filled.
>
> Suggested-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> Signed-off-by: Utkarsh Patel <utkarsh.h.patel@xxxxxxxxx>
>
> --
> Changes in v3:
> - Changed the commit mesage to reflect why TBT3 VDO is being used.
> - Added more details in the header file about the usage of TBT3 VDO.
>
> Changes in v2:
> - No change.
> --
> ---
> include/linux/usb/typec.h | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/include/linux/usb/typec.h b/include/linux/usb/typec.h
> index 6be558045942..25731ed863fa 100644
> --- a/include/linux/usb/typec.h
> +++ b/include/linux/usb/typec.h
> @@ -75,6 +75,10 @@ enum typec_orientation {
> /*
> * struct enter_usb_data - Enter_USB Message details
> * @eudo: Enter_USB Data Object
> + * @tbt_cable_vdo: TBT3 Cable Discover Mode Response

This is fine..

> + * @tbt_cable_vdo needs to be filled with details of active cable plug link
> + * training and cable rounded support when thunderbolt 3 cable is being used to
> + * create USB4 connection. Do not fill this in case of USB4 cable.

But this is not. The description of the member tells what the member
contains, but it does not make sense to explain also how to use the
member in the same place. Instead you should explain how to use the
member in the description of the structure. So..

> * @active_link_training: Active Cable Plug Link Training
> *
> * @active_link_training is a flag that should be set with uni-directional SBRX

Put it here. That will make this much more readable.


thanks,

--
heikki