Commit b8206d39 authored by Marc-André Lureau's avatar Marc-André Lureau Committed by Dave Airlie

drm: return if changed in drm_helper_hpd_irq_event()

The caller may want to know whether the configuration was changed, and
if an hotplug event was sent.
Signed-off-by: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 74afee7d
...@@ -1131,14 +1131,14 @@ void drm_kms_helper_poll_fini(struct drm_device *dev) ...@@ -1131,14 +1131,14 @@ void drm_kms_helper_poll_fini(struct drm_device *dev)
} }
EXPORT_SYMBOL(drm_kms_helper_poll_fini); EXPORT_SYMBOL(drm_kms_helper_poll_fini);
void drm_helper_hpd_irq_event(struct drm_device *dev) bool drm_helper_hpd_irq_event(struct drm_device *dev)
{ {
struct drm_connector *connector; struct drm_connector *connector;
enum drm_connector_status old_status; enum drm_connector_status old_status;
bool changed = false; bool changed = false;
if (!dev->mode_config.poll_enabled) if (!dev->mode_config.poll_enabled)
return; return false;
mutex_lock(&dev->mode_config.mutex); mutex_lock(&dev->mode_config.mutex);
list_for_each_entry(connector, &dev->mode_config.connector_list, head) { list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
...@@ -1163,5 +1163,7 @@ void drm_helper_hpd_irq_event(struct drm_device *dev) ...@@ -1163,5 +1163,7 @@ void drm_helper_hpd_irq_event(struct drm_device *dev)
if (changed) if (changed)
drm_kms_helper_hotplug_event(dev); drm_kms_helper_hotplug_event(dev);
return changed;
} }
EXPORT_SYMBOL(drm_helper_hpd_irq_event); EXPORT_SYMBOL(drm_helper_hpd_irq_event);
...@@ -163,7 +163,7 @@ static inline void drm_connector_helper_add(struct drm_connector *connector, ...@@ -163,7 +163,7 @@ static inline void drm_connector_helper_add(struct drm_connector *connector,
extern int drm_helper_resume_force_mode(struct drm_device *dev); extern int drm_helper_resume_force_mode(struct drm_device *dev);
extern void drm_kms_helper_poll_init(struct drm_device *dev); extern void drm_kms_helper_poll_init(struct drm_device *dev);
extern void drm_kms_helper_poll_fini(struct drm_device *dev); extern void drm_kms_helper_poll_fini(struct drm_device *dev);
extern void drm_helper_hpd_irq_event(struct drm_device *dev); extern bool drm_helper_hpd_irq_event(struct drm_device *dev);
extern void drm_kms_helper_hotplug_event(struct drm_device *dev); extern void drm_kms_helper_hotplug_event(struct drm_device *dev);
extern void drm_kms_helper_poll_disable(struct drm_device *dev); extern void drm_kms_helper_poll_disable(struct drm_device *dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment