From 2f382c6d12f6166328061edcc0118af42036ae4a Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 28 Oct 2023 10:44:26 +0000 Subject: [PATCH] Revert "usb: typec: altmodes/displayport: Notify drm subsys of hotplug events" This reverts commit f25a13d318b8eb6fb48673376b585a990e605e93 which is commit 7f811394878535ed9a6849717de8c2959ae38899 upstream. It breaks the android ABI and if this is needed in the future, can be brought back in an abi-safe way. Bug: 161946584 Change-Id: Ia85b72b88d6a6a5c0258a26c67484f367d724360 Signed-off-by: Greg Kroah-Hartman --- drivers/usb/typec/altmodes/Kconfig | 1 - drivers/usb/typec/altmodes/displayport.c | 23 ----------------------- 2 files changed, 24 deletions(-) diff --git a/drivers/usb/typec/altmodes/Kconfig b/drivers/usb/typec/altmodes/Kconfig index 1a6b5e872b0d..60d375e9c3c7 100644 --- a/drivers/usb/typec/altmodes/Kconfig +++ b/drivers/usb/typec/altmodes/Kconfig @@ -4,7 +4,6 @@ menu "USB Type-C Alternate Mode drivers" config TYPEC_DP_ALTMODE tristate "DisplayPort Alternate Mode driver" - depends on DRM help DisplayPort USB Type-C Alternate Mode allows DisplayPort displays and adapters to be attached to the USB Type-C diff --git a/drivers/usb/typec/altmodes/displayport.c b/drivers/usb/typec/altmodes/displayport.c index 19d9965874cb..8f0c6da27dd1 100644 --- a/drivers/usb/typec/altmodes/displayport.c +++ b/drivers/usb/typec/altmodes/displayport.c @@ -11,10 +11,8 @@ #include #include #include -#include #include #include -#include #include "displayport.h" #define DP_HEADER(_dp, ver, cmd) (VDO((_dp)->alt->svid, 1, ver, cmd) \ @@ -59,13 +57,11 @@ struct dp_altmode { struct typec_displayport_data data; enum dp_state state; - bool hpd; struct mutex lock; /* device lock */ struct work_struct work; struct typec_altmode *alt; const struct typec_altmode *port; - struct fwnode_handle *connector_fwnode; }; static int dp_altmode_notify(struct dp_altmode *dp) @@ -126,7 +122,6 @@ static int dp_altmode_configure(struct dp_altmode *dp, u8 con) static int dp_altmode_status_update(struct dp_altmode *dp) { bool configured = !!DP_CONF_GET_PIN_ASSIGN(dp->data.conf); - bool hpd = !!(dp->data.status & DP_STATUS_HPD_STATE); u8 con = DP_STATUS_CONNECTION(dp->data.status); int ret = 0; @@ -139,11 +134,6 @@ static int dp_altmode_status_update(struct dp_altmode *dp) ret = dp_altmode_configure(dp, con); if (!ret) dp->state = DP_STATE_CONFIGURE; - } else { - if (dp->hpd != hpd) { - drm_connector_oob_hotplug_event(dp->connector_fwnode); - dp->hpd = hpd; - } } return ret; @@ -545,7 +535,6 @@ static const struct attribute_group dp_altmode_group = { int dp_altmode_probe(struct typec_altmode *alt) { const struct typec_altmode *port = typec_altmode_get_partner(alt); - struct fwnode_handle *fwnode; struct dp_altmode *dp; int ret; @@ -574,11 +563,6 @@ int dp_altmode_probe(struct typec_altmode *alt) alt->desc = "DisplayPort"; alt->ops = &dp_altmode_ops; - fwnode = dev_fwnode(alt->dev.parent->parent); /* typec_port fwnode */ - dp->connector_fwnode = fwnode_find_reference(fwnode, "displayport", 0); - if (IS_ERR(dp->connector_fwnode)) - dp->connector_fwnode = NULL; - typec_altmode_set_drvdata(alt, dp); dp->state = DP_STATE_ENTER; @@ -594,13 +578,6 @@ void dp_altmode_remove(struct typec_altmode *alt) sysfs_remove_group(&alt->dev.kobj, &dp_altmode_group); cancel_work_sync(&dp->work); - - if (dp->connector_fwnode) { - if (dp->hpd) - drm_connector_oob_hotplug_event(dp->connector_fwnode); - - fwnode_handle_put(dp->connector_fwnode); - } } EXPORT_SYMBOL_GPL(dp_altmode_remove);