RE: [PATCH v1] usb: typec: ucsi: Pass full DP config payload in SET_NEW_CAM for DP alt mode

From: M, Madhu

Date: Fri Jun 19 2026 - 10:52:19 EST


You're right, it should. The bug was introduced in af8622f6a585, which has
been around since v5.2, so I'll add:

Fixes: af8622f6a585 ("usb: typec: ucsi: Support for DisplayPort alt mode")
Cc: stable@xxxxxxxxxxxxxxx

I'll send a v2 with these tags added.

Thanks,
Madhu M

-----Original Message-----
From: Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx>
Sent: 19 June 2026 20:10
To: M, Madhu <madhu.m@xxxxxxxxx>
Cc: heikki.krogerus@xxxxxxxxxxxxxxx; Katiyar, Pooja <pooja.katiyar@xxxxxxxxx>; akuchynski@xxxxxxxxxxxx; jthies@xxxxxxxxxx; johan@xxxxxxxxxx; linux-usb@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
Subject: Re: [PATCH v1] usb: typec: ucsi: Pass full DP config payload in SET_NEW_CAM for DP alt mode

On Fri, Jun 19, 2026 at 08:33:29PM +0530, madhu.m@xxxxxxxxx wrote:
> From: Madhu M <madhu.m@xxxxxxxxx>
>
> In the UCSI Specification Revision 3.1 RC1, bits 32-63 of the
> SET_NEW_CAM command hold the 32-bit Alternate Mode Specific (AMSpecific) field.
>
> For DisplayPort Alternate Mode, this field must contain the full
> 32-bit DisplayPort configuration VDO payload that the OPM wants the
> connector to operate in, rather than just the pin assignment value.
> This AMSpecific value follows the DisplayPort Configurations defined
> in the DisplayPort Alt Mode on USB Type-C Specification v2.1a, Table
> 5-13: SOP DisplayPort Configurations.
>
> Signed-off-by: Madhu M <madhu.m@xxxxxxxxx>
> Reviewed-by: Jameson Thies <jthies@xxxxxxxxxx>
> Reviewed-by: Andrei Kuchynski <akuchynski@xxxxxxxxxxxx>
> Reviewed-by: Heikki Krogerus <heikki.krogerus@xxxxxxxxxxxxxxx>
> ---
> drivers/usb/typec/ucsi/displayport.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/usb/typec/ucsi/displayport.c
> b/drivers/usb/typec/ucsi/displayport.c
> index 67a0991a7b76..2e3d7c734d9f 100644
> --- a/drivers/usb/typec/ucsi/displayport.c
> +++ b/drivers/usb/typec/ucsi/displayport.c
> @@ -185,13 +185,12 @@ static int ucsi_displayport_status_update(struct
> ucsi_dp *dp)
>
> static int ucsi_displayport_configure(struct ucsi_dp *dp) {
> - u32 pins = DP_CONF_GET_PIN_ASSIGN(dp->data.conf);
> u64 command;
>
> if (!dp->override)
> return 0;
>
> - command = UCSI_CMD_SET_NEW_CAM(dp->con->num, 1, dp->offset, pins);
> + command = UCSI_CMD_SET_NEW_CAM(dp->con->num, 1, dp->offset,
> +dp->data.conf);
>
> return ucsi_send_command(dp->con->ucsi, command, NULL, 0); }
> --
> 2.34.1
>
>

SHouldn't this have a Fixes: and cc: stable tag?

thanks,

greg k-h