Commit c0e463d3 authored by Harry Wentland's avatar Harry Wentland Committed by Alex Deucher

drm/amd/display: Return success when enabling interrupt

Signed-off-by: default avatarHarry Wentland <harry.wentland@amd.com>
Reviewed-by: default avatarRoman Li <Roman.Li@amd.com>
Acked-by: default avatarHarry Wentland <harry.wentland@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent c0ec5644
...@@ -2507,8 +2507,7 @@ static inline int dm_set_vblank(struct drm_crtc *crtc, bool enable) ...@@ -2507,8 +2507,7 @@ static inline int dm_set_vblank(struct drm_crtc *crtc, bool enable)
struct amdgpu_device *adev = crtc->dev->dev_private; struct amdgpu_device *adev = crtc->dev->dev_private;
irq_source = IRQ_TYPE_VBLANK + acrtc->otg_inst; irq_source = IRQ_TYPE_VBLANK + acrtc->otg_inst;
dc_interrupt_set(adev->dm.dc, irq_source, enable); return dc_interrupt_set(adev->dm.dc, irq_source, enable) ? 0 : -EBUSY;
return 0;
} }
static int dm_enable_vblank(struct drm_crtc *crtc) static int dm_enable_vblank(struct drm_crtc *crtc)
......
...@@ -1358,13 +1358,13 @@ enum dc_irq_source dc_interrupt_to_irq_source( ...@@ -1358,13 +1358,13 @@ enum dc_irq_source dc_interrupt_to_irq_source(
return dal_irq_service_to_irq_source(dc->res_pool->irqs, src_id, ext_id); return dal_irq_service_to_irq_source(dc->res_pool->irqs, src_id, ext_id);
} }
void dc_interrupt_set(struct dc *dc, enum dc_irq_source src, bool enable) bool dc_interrupt_set(struct dc *dc, enum dc_irq_source src, bool enable)
{ {
if (dc == NULL) if (dc == NULL)
return; return false;
dal_irq_service_set(dc->res_pool->irqs, src, enable); return dal_irq_service_set(dc->res_pool->irqs, src, enable);
} }
void dc_interrupt_ack(struct dc *dc, enum dc_irq_source src) void dc_interrupt_ack(struct dc *dc, enum dc_irq_source src)
......
...@@ -673,7 +673,7 @@ enum dc_irq_source dc_interrupt_to_irq_source( ...@@ -673,7 +673,7 @@ enum dc_irq_source dc_interrupt_to_irq_source(
struct dc *dc, struct dc *dc,
uint32_t src_id, uint32_t src_id,
uint32_t ext_id); uint32_t ext_id);
void dc_interrupt_set(struct dc *dc, enum dc_irq_source src, bool enable); bool dc_interrupt_set(struct dc *dc, enum dc_irq_source src, bool enable);
void dc_interrupt_ack(struct dc *dc, enum dc_irq_source src); void dc_interrupt_ack(struct dc *dc, enum dc_irq_source src);
enum dc_irq_source dc_get_hpd_irq_source_at_index( enum dc_irq_source dc_get_hpd_irq_source_at_index(
struct dc *dc, uint32_t link_index); struct dc *dc, uint32_t link_index);
......
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