[v3,3/4] drm/edid: Throw away the dummy VIC 0 cea mode

Tom Anderson thomasanderson at google.com
Tue Dec 10 23:18:54 UTC 2019


On Wed, Sep 25, 2019 at 04:55:01PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> Now that the cea mode handling is not 100% tied to the single
> array the dummy VIC 0 mode is pretty much pointles. Throw it
> out.
> 
> Cc: Hans Verkuil <hansverk at cisco.com>
> Cc: Shashank Sharma <shashank.sharma at intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>  drivers/gpu/drm/drm_edid.c | 14 +++++---------
>  1 file changed, 5 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
> index 9f6996323efa..0007004d3221 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -709,11 +709,9 @@ static const struct minimode extra_modes[] = {
>  /*
>   * From CEA/CTA-861 spec.
>   *
> - * Index with VIC.
> + * Index with VIC-1.

Since we shouldn't be indexing into this array directly any more, this comment
should instead be changed to say which functions should be used.

>   */
> -static const struct drm_display_mode edid_cea_modes_0[] = {
> -	/* 0 - dummy, VICs start at 1 */
> -	{ },
> +static const struct drm_display_mode edid_cea_modes_1[] = {
>  	/* 1 - 640x480 at 60Hz 4:3 */
>  	{ DRM_MODE("640x480", DRM_MODE_TYPE_DRIVER, 25175, 640, 656,
>  		   752, 800, 0, 480, 490, 492, 525, 0,
> @@ -3211,10 +3209,8 @@ static u8 *drm_find_cea_extension(const struct edid *edid)
>  
>  static const struct drm_display_mode *cea_mode_for_vic(u8 vic)
>  {
> -	if (!vic)
> -		return NULL;
> -	if (vic < ARRAY_SIZE(edid_cea_modes_0))
> -		return &edid_cea_modes_0[vic];
> +	if (vic >= 1 && vic < 1 + ARRAY_SIZE(edid_cea_modes_1))
> +		return &edid_cea_modes_1[vic - 1];
>  	if (vic >= 193 && vic < 193 + ARRAY_SIZE(edid_cea_modes_193))
>  		return &edid_cea_modes_193[vic - 193];
>  	return NULL;
> @@ -3227,7 +3223,7 @@ static u8 cea_num_vics(void)
>  
>  static u8 cea_next_vic(u8 vic)
>  {
> -	if (++vic == ARRAY_SIZE(edid_cea_modes_0))
> +	if (++vic == 1 + ARRAY_SIZE(edid_cea_modes_1))
>  		vic = 193;
>  	return vic;
>  }


More information about the dri-devel mailing list