platform/chrome: cros_usbpd_notify: Listen to EC_HOST_EVENT_USB_MUX host event
authorPi-Hsun Shih <pihsun@chromium.org>
Wed, 14 Apr 2021 06:45:24 +0000 (14:45 +0800)
committerEnric Balletbo i Serra <enric.balletbo@collabora.com>
Wed, 21 Apr 2021 07:40:37 +0000 (09:40 +0200)
On system that use ACPI, cros_usbpd_notify gets notifications of USB MUX
host event same as PD host events [1]. But currently on system that use
DT, the driver only listen on EC_HOST_EVENT_PD_MCU.

Add EC_HOST_EVENT_USB_MUX to the list of host events, so we have same
behavior on all platforms.

[1]: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/refs/heads/chromeos-2016.05/src/ec/google/chromeec/acpi/ec.asl#382

Signed-off-by: Pi-Hsun Shih <pihsun@chromium.org>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Link: https://lore.kernel.org/r/20210414064524.2450908-1-pihsun@chromium.org
drivers/platform/chrome/cros_usbpd_notify.c

index 7f36142ab12a8d1c729bfb6da038d74934168f36..48a6617aa12f3a738a17aa25c1c27763a2ee116a 100644 (file)
@@ -220,7 +220,8 @@ static int cros_usbpd_notify_plat(struct notifier_block *nb,
        if (!host_event)
                return NOTIFY_DONE;
 
-       if (host_event & EC_HOST_EVENT_MASK(EC_HOST_EVENT_PD_MCU)) {
+       if (host_event & (EC_HOST_EVENT_MASK(EC_HOST_EVENT_PD_MCU) |
+                         EC_HOST_EVENT_MASK(EC_HOST_EVENT_USB_MUX))) {
                cros_usbpd_get_event_and_notify(pdnotify->dev, ec_dev);
                return NOTIFY_OK;
        }