Re: [PATCH] fbdev: modedb: Fix misaligned fields in the 1920x1080-60 mode
Helge Deller <[email protected]>
| Newsgroups | org.kernel.vger.linux-fbdev,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
On 6/12/26 18:40, Steffen Persvold wrote:
> The 1920x1080@60 modedb entry has one too many initializers before
> its sync field: a stray "0" occupies the sync slot, which shifts the
> remaining values by one field. The entry therefore decodes as
> sync = 0, vmode = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT (0x3,
> i.e. FB_VMODE_INTERLACED | FB_VMODE_DOUBLE), and flag =
> FB_VMODE_NONINTERLACED, instead of the intended sync = positive H/V,
> vmode = non-interlaced.
>
> fb_find_mode() then returns a 1920x1080 mode flagged as interlaced +
> doublescan with active-low syncs. Drivers that honour var->vmode and
> var->sync when programming display timing enable doublescan and the
> wrong sync polarity, corrupting the output.
>
> Drop the stray initializer so sync and vmode hold their intended
> values (positive H/V sync, non-interlaced), matching the adjacent
> 1920x1200 entry.
>
> Fixes: c8902258b2b8 ("fbdev: modedb: Add 1920x1080 at 60 Hz video mode")
> Cc: [email protected]
> Signed-off-by: Steffen Persvold <[email protected]>
> ---
> drivers/video/fbdev/core/modedb.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Steffen, thanks for fixing the bug which was actually introduced by me!
This patch is now applied to the fbdev git tree.
Thanks!
Helge