Message ID | 20240409081029.17843-2-tzimmermann@suse.de (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | drm/{i915,xe}: Convert fbdev to DRM client | expand |
On Tue, 2024-04-09 at 10:04 +0200, Thomas Zimmermann wrote: > Export drm_client_dev_unregister() for use by the i915 driver. The > driver does not use drm_dev_unregister(), so it has to clean up the > in-kernel DRM clients by itself. > > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Jouni Högander <jouni.hogander@intel.com> > --- > drivers/gpu/drm/drm_client.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/drivers/gpu/drm/drm_client.c > b/drivers/gpu/drm/drm_client.c > index 77fe217aeaf36..2803ac111bbd8 100644 > --- a/drivers/gpu/drm/drm_client.c > +++ b/drivers/gpu/drm/drm_client.c > @@ -172,6 +172,18 @@ void drm_client_release(struct drm_client_dev > *client) > } > EXPORT_SYMBOL(drm_client_release); > > +/** > + * drm_client_dev_unregister - Unregister clients > + * @dev: DRM device > + * > + * This function releases all clients by calling each client's > + * &drm_client_funcs.unregister callback. The callback function > + * is responsibe for releaseing all resources including the client > + * itself. > + * > + * The helper drm_dev_unregister() calls this function. Drivers > + * that use it don't need to call this function themselves. > + */ > void drm_client_dev_unregister(struct drm_device *dev) > { > struct drm_client_dev *client, *tmp; > @@ -191,6 +203,7 @@ void drm_client_dev_unregister(struct drm_device > *dev) > } > mutex_unlock(&dev->clientlist_mutex); > } > +EXPORT_SYMBOL(drm_client_dev_unregister); > > /** > * drm_client_dev_hotplug - Send hotplug event to clients
diff --git a/drivers/gpu/drm/drm_client.c b/drivers/gpu/drm/drm_client.c index 77fe217aeaf36..2803ac111bbd8 100644 --- a/drivers/gpu/drm/drm_client.c +++ b/drivers/gpu/drm/drm_client.c @@ -172,6 +172,18 @@ void drm_client_release(struct drm_client_dev *client) } EXPORT_SYMBOL(drm_client_release); +/** + * drm_client_dev_unregister - Unregister clients + * @dev: DRM device + * + * This function releases all clients by calling each client's + * &drm_client_funcs.unregister callback. The callback function + * is responsibe for releaseing all resources including the client + * itself. + * + * The helper drm_dev_unregister() calls this function. Drivers + * that use it don't need to call this function themselves. + */ void drm_client_dev_unregister(struct drm_device *dev) { struct drm_client_dev *client, *tmp; @@ -191,6 +203,7 @@ void drm_client_dev_unregister(struct drm_device *dev) } mutex_unlock(&dev->clientlist_mutex); } +EXPORT_SYMBOL(drm_client_dev_unregister); /** * drm_client_dev_hotplug - Send hotplug event to clients
Export drm_client_dev_unregister() for use by the i915 driver. The driver does not use drm_dev_unregister(), so it has to clean up the in-kernel DRM clients by itself. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> --- drivers/gpu/drm/drm_client.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)