From 1e35511dad649e71a5aff82f1304ddd7f700dea5 Mon Sep 17 00:00:00 2001 From: Linyu Yuan Date: Wed, 4 Nov 2020 09:46:31 +0800 Subject: [PATCH] ucsi: ucsi_glink: add more flags for clients during notification Add partner_change and connect flags when notifying clients about the partner information.This would be useful for some clients to modify their state/configuration. Change-Id: I85b601b7ea60dda2ac630c51a499767f5fb70351 Signed-off-by: Linyu Yuan --- drivers/usb/typec/ucsi/ucsi_glink.c | 6 ++++++ include/linux/usb/ucsi_glink.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/drivers/usb/typec/ucsi/ucsi_glink.c b/drivers/usb/typec/ucsi/ucsi_glink.c index 3f49e9d69051..aa8aea7f05cb 100644 --- a/drivers/usb/typec/ucsi/ucsi_glink.c +++ b/drivers/usb/typec/ucsi/ucsi_glink.c @@ -375,6 +375,12 @@ static void ucsi_qti_notify(struct ucsi_dev *udev, unsigned int offset, udev->constat_info.partner_usb = false; udev->constat_info.partner_alternate_mode = false; + udev->constat_info.partner_change = + status->change & UCSI_CONSTAT_PARTNER_CHANGE; + + udev->constat_info.connect = + status->flags & UCSI_CONSTAT_CONNECTED; + conn_partner_type = UCSI_CONSTAT_PARTNER_TYPE(status->flags); switch (conn_partner_type) { diff --git a/include/linux/usb/ucsi_glink.h b/include/linux/usb/ucsi_glink.h index 891ba957bb7b..bdd9d1d86412 100644 --- a/include/linux/usb/ucsi_glink.h +++ b/include/linux/usb/ucsi_glink.h @@ -13,6 +13,8 @@ struct ucsi_glink_constat_info { enum typec_accessory acc; bool partner_usb; bool partner_alternate_mode; + bool partner_change; + bool connect; }; struct notifier_block;