Lines Matching refs:hotplug
146 struct intel_hotplug *hpd = &dev_priv->display.hotplug; in intel_hpd_irq_storm_detect()
154 (!long_hpd && !dev_priv->display.hotplug.hpd_short_storm_enabled)) in intel_hpd_irq_storm_detect()
196 dev_priv->display.hotplug.stats[pin].state != HPD_MARK_DISABLED) in intel_hpd_irq_storm_switch_to_polling()
204 dev_priv->display.hotplug.stats[pin].state = HPD_DISABLED; in intel_hpd_irq_storm_switch_to_polling()
214 mod_delayed_work(system_wq, &dev_priv->display.hotplug.reenable_work, in intel_hpd_irq_storm_switch_to_polling()
223 display.hotplug.reenable_work.work); in intel_hpd_irq_storm_reenable_work()
237 dev_priv->display.hotplug.stats[pin].state != HPD_DISABLED) in intel_hpd_irq_storm_reenable_work()
249 if (dev_priv->display.hotplug.stats[pin].state == HPD_DISABLED) in intel_hpd_irq_storm_reenable_work()
250 dev_priv->display.hotplug.stats[pin].state = HPD_ENABLED; in intel_hpd_irq_storm_reenable_work()
301 container_of(work, struct drm_i915_private, display.hotplug.dig_port_work); in i915_digport_work_func()
307 long_port_mask = dev_priv->display.hotplug.long_port_mask; in i915_digport_work_func()
308 dev_priv->display.hotplug.long_port_mask = 0; in i915_digport_work_func()
309 short_port_mask = dev_priv->display.hotplug.short_port_mask; in i915_digport_work_func()
310 dev_priv->display.hotplug.short_port_mask = 0; in i915_digport_work_func()
339 dev_priv->display.hotplug.event_bits |= old_bits; in i915_digport_work_func()
341 queue_delayed_work(system_wq, &dev_priv->display.hotplug.hotplug_work, 0); in i915_digport_work_func()
357 i915->display.hotplug.short_port_mask |= BIT(dig_port->base.port); in intel_hpd_trigger_irq()
360 queue_work(i915->display.hotplug.dp_wq, &i915->display.hotplug.dig_port_work); in intel_hpd_trigger_irq()
370 display.hotplug.hotplug_work.work); in i915_hotplug_work_func()
382 hpd_event_bits = dev_priv->display.hotplug.event_bits; in i915_hotplug_work_func()
383 dev_priv->display.hotplug.event_bits = 0; in i915_hotplug_work_func()
384 hpd_retry_bits = dev_priv->display.hotplug.retry_bits; in i915_hotplug_work_func()
385 dev_priv->display.hotplug.retry_bits = 0; in i915_hotplug_work_func()
416 switch (encoder->hotplug(encoder, connector)) { in i915_hotplug_work_func()
438 dev_priv->display.hotplug.retry_bits |= retry; in i915_hotplug_work_func()
441 mod_delayed_work(system_wq, &dev_priv->display.hotplug.hotplug_work, in i915_hotplug_work_func()
505 dev_priv->display.hotplug.long_port_mask |= BIT(port); in intel_hpd_irq_handler()
508 dev_priv->display.hotplug.short_port_mask |= BIT(port); in intel_hpd_irq_handler()
519 if (dev_priv->display.hotplug.stats[pin].state == HPD_DISABLED) { in intel_hpd_irq_handler()
532 if (dev_priv->display.hotplug.stats[pin].state != HPD_ENABLED) in intel_hpd_irq_handler()
543 dev_priv->display.hotplug.event_bits |= BIT(pin); in intel_hpd_irq_handler()
549 dev_priv->display.hotplug.event_bits &= ~BIT(pin); in intel_hpd_irq_handler()
570 queue_work(dev_priv->display.hotplug.dp_wq, &dev_priv->display.hotplug.dig_port_work); in intel_hpd_irq_handler()
572 queue_delayed_work(system_wq, &dev_priv->display.hotplug.hotplug_work, 0); in intel_hpd_irq_handler()
597 dev_priv->display.hotplug.stats[i].count = 0; in intel_hpd_init()
598 dev_priv->display.hotplug.stats[i].state = HPD_ENABLED; in intel_hpd_init()
614 display.hotplug.poll_init_work); in i915_hpd_poll_init_work()
621 enabled = READ_ONCE(dev_priv->display.hotplug.poll_enabled); in i915_hpd_poll_init_work()
674 WRITE_ONCE(dev_priv->display.hotplug.poll_enabled, true); in intel_hpd_poll_enable()
682 schedule_work(&dev_priv->display.hotplug.poll_init_work); in intel_hpd_poll_enable()
709 WRITE_ONCE(dev_priv->display.hotplug.poll_enabled, false); in intel_hpd_poll_disable()
710 schedule_work(&dev_priv->display.hotplug.poll_init_work); in intel_hpd_poll_disable()
715 INIT_DELAYED_WORK(&i915->display.hotplug.hotplug_work, in intel_hpd_init_early()
717 INIT_WORK(&i915->display.hotplug.dig_port_work, i915_digport_work_func); in intel_hpd_init_early()
718 INIT_WORK(&i915->display.hotplug.poll_init_work, i915_hpd_poll_init_work); in intel_hpd_init_early()
719 INIT_DELAYED_WORK(&i915->display.hotplug.reenable_work, in intel_hpd_init_early()
722 i915->display.hotplug.hpd_storm_threshold = HPD_STORM_DEFAULT_THRESHOLD; in intel_hpd_init_early()
729 i915->display.hotplug.hpd_short_storm_enabled = !HAS_DP_MST(i915); in intel_hpd_init_early()
739 dev_priv->display.hotplug.long_port_mask = 0; in intel_hpd_cancel_work()
740 dev_priv->display.hotplug.short_port_mask = 0; in intel_hpd_cancel_work()
741 dev_priv->display.hotplug.event_bits = 0; in intel_hpd_cancel_work()
742 dev_priv->display.hotplug.retry_bits = 0; in intel_hpd_cancel_work()
746 cancel_work_sync(&dev_priv->display.hotplug.dig_port_work); in intel_hpd_cancel_work()
747 cancel_delayed_work_sync(&dev_priv->display.hotplug.hotplug_work); in intel_hpd_cancel_work()
748 cancel_work_sync(&dev_priv->display.hotplug.poll_init_work); in intel_hpd_cancel_work()
749 cancel_delayed_work_sync(&dev_priv->display.hotplug.reenable_work); in intel_hpd_cancel_work()
760 if (dev_priv->display.hotplug.stats[pin].state == HPD_ENABLED) { in intel_hpd_disable()
761 dev_priv->display.hotplug.stats[pin].state = HPD_DISABLED; in intel_hpd_disable()
775 dev_priv->display.hotplug.stats[pin].state = HPD_ENABLED; in intel_hpd_enable()
782 struct intel_hotplug *hotplug = &dev_priv->display.hotplug; in i915_hpd_storm_ctl_show() local
788 flush_work(&dev_priv->display.hotplug.dig_port_work); in i915_hpd_storm_ctl_show()
789 flush_delayed_work(&dev_priv->display.hotplug.hotplug_work); in i915_hpd_storm_ctl_show()
791 seq_printf(m, "Threshold: %d\n", hotplug->hpd_storm_threshold); in i915_hpd_storm_ctl_show()
793 str_yes_no(delayed_work_pending(&hotplug->reenable_work))); in i915_hpd_storm_ctl_show()
804 struct intel_hotplug *hotplug = &dev_priv->display.hotplug; in i915_hpd_storm_ctl_write() local
836 hotplug->hpd_storm_threshold = new_threshold; in i915_hpd_storm_ctl_write()
839 hotplug->stats[i].count = 0; in i915_hpd_storm_ctl_write()
843 flush_delayed_work(&dev_priv->display.hotplug.reenable_work); in i915_hpd_storm_ctl_write()
867 str_yes_no(dev_priv->display.hotplug.hpd_short_storm_enabled)); in i915_hpd_short_storm_ctl_show()
885 struct intel_hotplug *hotplug = &dev_priv->display.hotplug; in i915_hpd_short_storm_ctl_write() local
914 hotplug->hpd_short_storm_enabled = new_state; in i915_hpd_short_storm_ctl_write()
917 hotplug->stats[i].count = 0; in i915_hpd_short_storm_ctl_write()
921 flush_delayed_work(&dev_priv->display.hotplug.reenable_work); in i915_hpd_short_storm_ctl_write()