[Intel-gfx] [PATCH] drm/i915: Don't cast away const from infoframe buffer

Damien Lespiau damien.lespiau at intel.com
Tue Dec 10 13:25:26 CET 2013


On Tue, Dec 10, 2013 at 02:06:30PM +0200, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> We don't modify the packed infoframe data, so we should keep the
> const qualifier in place. Just pass the buffer as 'const void *'
> instead of 'const uint8_t *' and we can drop the cast entirely.
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

Reviewed-by: Damien Lespiau <damien.lespiau at intel.com>

(I guess the data argument of intel_sdvo_write_infoframe() could be
constified as well)

-- 
Damien

> ---
>  drivers/gpu/drm/i915/intel_drv.h  |  2 +-
>  drivers/gpu/drm/i915/intel_hdmi.c | 20 ++++++++++----------
>  2 files changed, 11 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
> index ea62673..852ed41 100644
> --- a/drivers/gpu/drm/i915/intel_drv.h
> +++ b/drivers/gpu/drm/i915/intel_drv.h
> @@ -454,7 +454,7 @@ struct intel_hdmi {
>  	bool rgb_quant_range_selectable;
>  	void (*write_infoframe)(struct drm_encoder *encoder,
>  				enum hdmi_infoframe_type type,
> -				const uint8_t *frame, ssize_t len);
> +				const void *frame, ssize_t len);
>  	void (*set_infoframes)(struct drm_encoder *encoder,
>  			       struct drm_display_mode *adjusted_mode);
>  };
> diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c
> index 6a6ad0c..6db0d9d 100644
> --- a/drivers/gpu/drm/i915/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/intel_hdmi.c
> @@ -130,9 +130,9 @@ static u32 hsw_infoframe_data_reg(enum hdmi_infoframe_type type,
>  
>  static void g4x_write_infoframe(struct drm_encoder *encoder,
>  				enum hdmi_infoframe_type type,
> -				const uint8_t *frame, ssize_t len)
> +				const void *frame, ssize_t len)
>  {
> -	uint32_t *data = (uint32_t *)frame;
> +	const uint32_t *data = frame;
>  	struct drm_device *dev = encoder->dev;
>  	struct drm_i915_private *dev_priv = dev->dev_private;
>  	u32 val = I915_READ(VIDEO_DIP_CTL);
> @@ -167,9 +167,9 @@ static void g4x_write_infoframe(struct drm_encoder *encoder,
>  
>  static void ibx_write_infoframe(struct drm_encoder *encoder,
>  				enum hdmi_infoframe_type type,
> -				const uint8_t *frame, ssize_t len)
> +				const void *frame, ssize_t len)
>  {
> -	uint32_t *data = (uint32_t *)frame;
> +	const uint32_t *data = frame;
>  	struct drm_device *dev = encoder->dev;
>  	struct drm_i915_private *dev_priv = dev->dev_private;
>  	struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc);
> @@ -205,9 +205,9 @@ static void ibx_write_infoframe(struct drm_encoder *encoder,
>  
>  static void cpt_write_infoframe(struct drm_encoder *encoder,
>  				enum hdmi_infoframe_type type,
> -				const uint8_t *frame, ssize_t len)
> +				const void *frame, ssize_t len)
>  {
> -	uint32_t *data = (uint32_t *)frame;
> +	const uint32_t *data = frame;
>  	struct drm_device *dev = encoder->dev;
>  	struct drm_i915_private *dev_priv = dev->dev_private;
>  	struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc);
> @@ -246,9 +246,9 @@ static void cpt_write_infoframe(struct drm_encoder *encoder,
>  
>  static void vlv_write_infoframe(struct drm_encoder *encoder,
>  				enum hdmi_infoframe_type type,
> -				const uint8_t *frame, ssize_t len)
> +				const void *frame, ssize_t len)
>  {
> -	uint32_t *data = (uint32_t *)frame;
> +	const uint32_t *data = frame;
>  	struct drm_device *dev = encoder->dev;
>  	struct drm_i915_private *dev_priv = dev->dev_private;
>  	struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc);
> @@ -284,9 +284,9 @@ static void vlv_write_infoframe(struct drm_encoder *encoder,
>  
>  static void hsw_write_infoframe(struct drm_encoder *encoder,
>  				enum hdmi_infoframe_type type,
> -				const uint8_t *frame, ssize_t len)
> +				const void *frame, ssize_t len)
>  {
> -	uint32_t *data = (uint32_t *)frame;
> +	const uint32_t *data = frame;
>  	struct drm_device *dev = encoder->dev;
>  	struct drm_i915_private *dev_priv = dev->dev_private;
>  	struct intel_crtc *intel_crtc = to_intel_crtc(encoder->crtc);
> -- 
> 1.8.3.2
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx



More information about the Intel-gfx mailing list