[Intel-gfx] [PATCH 1/7] drm/i915/sdvo: Fix AVI infoframe TX rate readout
chris at chris-wilson.co.uk
Tue Apr 9 21:16:04 UTC 2019
Quoting Ville Syrjala (2019-04-09 15:40:48)
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> The AVI infoframe readout code currently issues a
> SDVO_CMD_GET_HBUF_TXRATE before SDVO_CMD_SET_HBUF_INDEX, which is
> not the correct order for these two operations. So far this wasn't
> a problem since we left the index pointing at the AVI infoframe
> buffer at the end of the modeset. However once we start to write
> to other buffers (namely ELD) that is no longer going to be true.
> Fix up the order so that we always read out the TX rate for the
> correct buffer.
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> drivers/gpu/drm/i915/intel_sdvo.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
> diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c
> index 0e3d91d9ef13..61db07244296 100644
> --- a/drivers/gpu/drm/i915/intel_sdvo.c
> +++ b/drivers/gpu/drm/i915/intel_sdvo.c
> @@ -1001,6 +1001,11 @@ static ssize_t intel_sdvo_read_infoframe(struct intel_sdvo *intel_sdvo,
> if (av_split < if_index)
> return 0;
> + if (!intel_sdvo_set_value(intel_sdvo,
> + SDVO_CMD_SET_HBUF_INDEX,
> + set_buf_index, 2))
> + return -ENXIO;
That is consistent with write_infoframe and makes a modicum of sense.
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
Why is the av_split separate from the if_index? What does that mean, at
some point I might have to read the docs!
More information about the Intel-gfx