Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cbc7e221 authored by Dave Airlie's avatar Dave Airlie
Browse files

drm/modeset: add helper to unplug all connectors from sysfs



In order to get correct ordering at hot-unplug for userspace,
we need to tear down all the sysfs bits at the correct time.

This adds a helper to allow drivers to remove the sysfs nodes
for all connectors.

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 1828fe6c
Loading
Loading
Loading
Loading
+14 −3
Original line number Diff line number Diff line
@@ -540,6 +540,17 @@ void drm_connector_cleanup(struct drm_connector *connector)
}
EXPORT_SYMBOL(drm_connector_cleanup);

void drm_connector_unplug_all(struct drm_device *dev)
{
	struct drm_connector *connector;

	/* taking the mode config mutex ends up in a clash with sysfs */
	list_for_each_entry(connector, &dev->mode_config.connector_list, head)
		drm_sysfs_connector_remove(connector);

}
EXPORT_SYMBOL(drm_connector_unplug_all);

int drm_encoder_init(struct drm_device *dev,
		      struct drm_encoder *encoder,
		      const struct drm_encoder_funcs *funcs,
+2 −0
Original line number Diff line number Diff line
@@ -826,6 +826,8 @@ extern int drm_connector_init(struct drm_device *dev,
			      int connector_type);

extern void drm_connector_cleanup(struct drm_connector *connector);
/* helper to unplug all connectors from sysfs for device */
extern void drm_connector_unplug_all(struct drm_device *dev);

extern int drm_encoder_init(struct drm_device *dev,
			    struct drm_encoder *encoder,