From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: dri-devel@lists.freedesktop.org
Cc: Hans Verkuil <hansverk@cisco.com>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH v2 5/5] drm/edid: Make sure the CEA mode arrays have the correct amount of modes
Date: Thu, 11 Jul 2019 17:42:24 +0300 [thread overview]
Message-ID: <20190711144224.GZ5942@intel.com> (raw)
In-Reply-To: <20190711103234.6294-6-ville.syrjala@linux.intel.com>
On Thu, Jul 11, 2019 at 01:32:34PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> We depend on a specific relationship between the VIC number and the
> index in the CEA mode arrays. Assert that the arrays have the excpected
> size to make sure we've not accidentally left holes in them.
>
> Cc: Hans Verkuil <hansverk@cisco.com>
> Cc: Shashank Sharma <shashank.sharma@intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/drm_edid.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
> index e6b1e785d158..f0b449225727 100644
> --- a/drivers/gpu/drm/drm_edid.c
> +++ b/drivers/gpu/drm/drm_edid.c
> @@ -3209,6 +3209,9 @@ static u8 *drm_find_cea_extension(const struct edid *edid)
>
> static const struct drm_display_mode *cea_mode_for_vic(u8 vic)
> {
> + BUILD_BUG_ON(ARRAY_SIZE(edid_cea_modes_1) != 127);
> + BUILD_BUG_ON(ARRAY_SIZE(edid_cea_modes_193) != 27);
Maybe better to write these as something like
BUILD_BUG_ON(1 + ARRAY_SIZE(edid_cea_modes_1) - 1 != 127);
BUILD_BUG_ON(193 + ARRAY_SIZE(edid_cea_modes_193) - 1 != 219);
to make it super trivial to cross check against the VICs of the
first and last entry in the arrays.
> +
> 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))
> --
> 2.21.0
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2019-07-11 14:42 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-11 10:32 [PATCH v2 0/5] drm/edid: Add new modes from CTA-861-G Ville Syrjala
2019-07-11 10:32 ` [PATCH v2 1/5] drm/edid: Add CTA-861-G modes with VIC < 128 Ville Syrjala
2019-07-11 10:32 ` [PATCH v2 2/5] drm/edid: Abstract away cea_edid_modes[] Ville Syrjala
2019-07-19 8:45 ` Sharma, Shashank
2019-07-19 11:57 ` Ville Syrjälä
2019-07-19 12:13 ` Ville Syrjälä
2019-07-11 10:32 ` [PATCH v2 3/5] drm/edid: Add CTA-861-G modes with VIC >= 193 Ville Syrjala
2019-07-11 10:32 ` [PATCH v2 4/5] drm/edid: Throw away the dummy VIC 0 cea mode Ville Syrjala
2019-07-11 10:32 ` [PATCH v2 5/5] drm/edid: Make sure the CEA mode arrays have the correct amount of modes Ville Syrjala
2019-07-11 14:42 ` Ville Syrjälä [this message]
2019-07-11 12:49 ` ✗ Fi.CI.CHECKPATCH: warning for drm/edid: Add new modes from CTA-861-G Patchwork
2019-07-11 16:25 ` ✓ Fi.CI.BAT: success " Patchwork
2019-07-12 14:36 ` ✓ Fi.CI.IGT: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190711144224.GZ5942@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=hansverk@cisco.com \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.