usb: typec: ucsi: Enable UCSI v2.0 notifications

UCSI version 2.0 and above define new PPM notifications. Update the
logic to determine which notifications to enable taking into account
these changes.

Signed-off-by: Diogo Ivo <diogo.ivo@tecnico.ulisboa.pt>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20240524105837.15342-3-diogo.ivo@tecnico.ulisboa.pt
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Diogo Ivo 2024-05-24 11:58:21 +01:00 committed by Greg Kroah-Hartman
parent 4207df37dd
commit 5821bf2dff

View File

@ -1672,7 +1672,7 @@ out_unlock:
static u64 ucsi_get_supported_notifications(struct ucsi *ucsi)
{
u8 features = ucsi->cap.features;
u16 features = ucsi->cap.features;
u64 ntfy = UCSI_ENABLE_NTFY_ALL;
if (!(features & UCSI_CAP_ALT_MODE_DETAILS))
@ -1688,6 +1688,23 @@ static u64 ucsi_get_supported_notifications(struct ucsi *ucsi)
if (!(features & UCSI_CAP_PD_RESET))
ntfy &= ~UCSI_ENABLE_NTFY_PD_RESET_COMPLETE;
if (ucsi->version <= UCSI_VERSION_1_2)
return ntfy;
ntfy |= UCSI_ENABLE_NTFY_SINK_PATH_STS_CHANGE;
if (features & UCSI_CAP_GET_ATTENTION_VDO)
ntfy |= UCSI_ENABLE_NTFY_ATTENTION;
if (features & UCSI_CAP_FW_UPDATE_REQUEST)
ntfy |= UCSI_ENABLE_NTFY_LPM_FW_UPDATE_REQ;
if (features & UCSI_CAP_SECURITY_REQUEST)
ntfy |= UCSI_ENABLE_NTFY_SECURITY_REQ_PARTNER;
if (features & UCSI_CAP_SET_RETIMER_MODE)
ntfy |= UCSI_ENABLE_NTFY_SET_RETIMER_MODE;
return ntfy;
}