Lines Matching refs:dev

95 	struct drm_device *dev = connector->dev;
128 drm_for_each_crtc(crtc, dev) {
171 mode = drm_mode_create_from_cmdline_mode(connector->dev,
229 * @dev: drm_device
242 void drm_kms_helper_poll_enable(struct drm_device *dev)
249 if (!dev->mode_config.poll_enabled || !drm_kms_helper_poll)
252 drm_connector_list_iter_begin(dev, &conn_iter);
260 if (dev->mode_config.delayed_event) {
276 schedule_delayed_work(&dev->mode_config.output_poll_work, delay);
290 ret = drm_modeset_lock(&connector->dev->mode_config.connection_mutex, &ctx);
333 struct drm_device *dev = connector->dev;
339 ret = drm_modeset_lock(&dev->mode_config.connection_mutex, ctx);
419 struct drm_device *dev = connector->dev;
429 WARN_ON(!mutex_is_locked(&dev->mode_config.mutex));
437 ret = drm_modeset_lock(&dev->mode_config.connection_mutex, &ctx);
489 dev->mode_config.delayed_event = true;
490 if (dev->mode_config.poll_enabled)
492 &dev->mode_config.output_poll_work,
497 if (drm_kms_helper_poll != dev->mode_config.poll_running)
498 drm_kms_helper_poll_enable(dev);
500 dev->mode_config.poll_running = drm_kms_helper_poll;
538 mode->status = drm_mode_validate_driver(dev, mode);
553 drm_dbg_kms(dev,
557 if (drm_WARN_ON_ONCE(dev, ret != -EDEADLK)) {
571 drm_mode_prune_invalid(dev, &connector->modes, verbose_prune);
594 * @dev: drm_device whose connector state changed
608 void drm_kms_helper_hotplug_event(struct drm_device *dev)
611 drm_sysfs_hotplug_event(dev);
612 if (dev->mode_config.funcs->output_poll_changed)
613 dev->mode_config.funcs->output_poll_changed(dev);
615 drm_client_dev_hotplug(dev);
622 struct drm_device *dev = container_of(delayed_work, struct drm_device, mode_config.output_poll_work);
629 if (!dev->mode_config.poll_enabled)
633 changed = dev->mode_config.delayed_event;
634 dev->mode_config.delayed_event = false;
639 if (!mutex_trylock(&dev->mode_config.mutex)) {
644 drm_connector_list_iter_begin(dev, &conn_iter);
704 mutex_unlock(&dev->mode_config.mutex);
708 drm_kms_helper_hotplug_event(dev);
736 * @dev: drm_device
748 void drm_kms_helper_poll_disable(struct drm_device *dev)
750 if (!dev->mode_config.poll_enabled)
752 cancel_delayed_work_sync(&dev->mode_config.output_poll_work);
758 * @dev: drm_device
761 * @dev. Drivers which do not have reliable hotplug support in hardware can use
775 void drm_kms_helper_poll_init(struct drm_device *dev)
777 INIT_DELAYED_WORK(&dev->mode_config.output_poll_work, output_poll_execute);
778 dev->mode_config.poll_enabled = true;
780 drm_kms_helper_poll_enable(dev);
786 * @dev: drm_device
788 void drm_kms_helper_poll_fini(struct drm_device *dev)
790 if (!dev->mode_config.poll_enabled)
793 dev->mode_config.poll_enabled = false;
794 cancel_delayed_work_sync(&dev->mode_config.output_poll_work);
800 * @dev: drm_device
821 bool drm_helper_hpd_irq_event(struct drm_device *dev)
829 if (!dev->mode_config.poll_enabled)
832 mutex_lock(&dev->mode_config.mutex);
833 drm_connector_list_iter_begin(dev, &conn_iter);
868 mutex_unlock(&dev->mode_config.mutex);
871 drm_kms_helper_hotplug_event(dev);