Commit b2c5c181 authored by Daniel Vetter's avatar Daniel Vetter

drm/i915: Use symbolic irqreturn for ->hpd_pulse

Self-explanatory code is better code.

Cc: Dave Airlie <airlied@redhat.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 5b48ca0f
...@@ -879,7 +879,7 @@ static void i915_digport_work_func(struct work_struct *work) ...@@ -879,7 +879,7 @@ static void i915_digport_work_func(struct work_struct *work)
container_of(work, struct drm_i915_private, dig_port_work); container_of(work, struct drm_i915_private, dig_port_work);
u32 long_port_mask, short_port_mask; u32 long_port_mask, short_port_mask;
struct intel_digital_port *intel_dig_port; struct intel_digital_port *intel_dig_port;
int i, ret; int i;
u32 old_bits = 0; u32 old_bits = 0;
spin_lock_irq(&dev_priv->irq_lock); spin_lock_irq(&dev_priv->irq_lock);
...@@ -903,9 +903,11 @@ static void i915_digport_work_func(struct work_struct *work) ...@@ -903,9 +903,11 @@ static void i915_digport_work_func(struct work_struct *work)
valid = true; valid = true;
if (valid) { if (valid) {
enum irqreturn ret;
ret = intel_dig_port->hpd_pulse(intel_dig_port, long_hpd); ret = intel_dig_port->hpd_pulse(intel_dig_port, long_hpd);
if (ret == true) { if (ret == IRQ_NONE) {
/* if we get true fallback to old school hpd */ /* fall back to old school hpd */
old_bits |= (1 << intel_dig_port->base.hpd_pin); old_bits |= (1 << intel_dig_port->base.hpd_pin);
} }
} }
......
...@@ -4421,7 +4421,7 @@ intel_dp_hot_plug(struct intel_encoder *intel_encoder) ...@@ -4421,7 +4421,7 @@ intel_dp_hot_plug(struct intel_encoder *intel_encoder)
return; return;
} }
bool enum irqreturn
intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd) intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd)
{ {
struct intel_dp *intel_dp = &intel_dig_port->dp; struct intel_dp *intel_dp = &intel_dig_port->dp;
...@@ -4429,7 +4429,7 @@ intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd) ...@@ -4429,7 +4429,7 @@ intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd)
struct drm_device *dev = intel_dig_port->base.base.dev; struct drm_device *dev = intel_dig_port->base.base.dev;
struct drm_i915_private *dev_priv = dev->dev_private; struct drm_i915_private *dev_priv = dev->dev_private;
enum intel_display_power_domain power_domain; enum intel_display_power_domain power_domain;
bool ret = true; enum irqreturn ret = IRQ_NONE;
if (intel_dig_port->base.type != INTEL_OUTPUT_EDP) if (intel_dig_port->base.type != INTEL_OUTPUT_EDP)
intel_dig_port->base.type = INTEL_OUTPUT_DISPLAYPORT; intel_dig_port->base.type = INTEL_OUTPUT_DISPLAYPORT;
...@@ -4488,7 +4488,9 @@ intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd) ...@@ -4488,7 +4488,9 @@ intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd)
drm_modeset_unlock(&dev->mode_config.connection_mutex); drm_modeset_unlock(&dev->mode_config.connection_mutex);
} }
} }
ret = false;
ret = IRQ_HANDLED;
goto put_power; goto put_power;
mst_fail: mst_fail:
/* if we were in MST mode, and device is not there get out of MST mode */ /* if we were in MST mode, and device is not there get out of MST mode */
......
...@@ -650,7 +650,7 @@ struct intel_digital_port { ...@@ -650,7 +650,7 @@ struct intel_digital_port {
u32 saved_port_bits; u32 saved_port_bits;
struct intel_dp dp; struct intel_dp dp;
struct intel_hdmi hdmi; struct intel_hdmi hdmi;
bool (*hpd_pulse)(struct intel_digital_port *, bool); enum irqreturn (*hpd_pulse)(struct intel_digital_port *, bool);
}; };
struct intel_dp_mst_encoder { struct intel_dp_mst_encoder {
...@@ -1008,8 +1008,8 @@ int intel_dp_sink_crc(struct intel_dp *intel_dp, u8 *crc); ...@@ -1008,8 +1008,8 @@ int intel_dp_sink_crc(struct intel_dp *intel_dp, u8 *crc);
bool intel_dp_compute_config(struct intel_encoder *encoder, bool intel_dp_compute_config(struct intel_encoder *encoder,
struct intel_crtc_state *pipe_config); struct intel_crtc_state *pipe_config);
bool intel_dp_is_edp(struct drm_device *dev, enum port port); bool intel_dp_is_edp(struct drm_device *dev, enum port port);
bool intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, enum irqreturn intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port,
bool long_hpd); bool long_hpd);
void intel_edp_backlight_on(struct intel_dp *intel_dp); void intel_edp_backlight_on(struct intel_dp *intel_dp);
void intel_edp_backlight_off(struct intel_dp *intel_dp); void intel_edp_backlight_off(struct intel_dp *intel_dp);
void intel_edp_panel_vdd_on(struct intel_dp *intel_dp); void intel_edp_panel_vdd_on(struct intel_dp *intel_dp);
......
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