Hi Maxime, Thanks for your patch! On Fri, Jul 29, 2022 at 6:35 PM Maxime Ripard <maxime@xxxxxxxxxx> wrote: > Multiple drivers (meson, vc4) define the analog TV 525-lines and 625-lines > modes in the drivers. Nit: strictly speaking these are not analog modes, but the digital variants (ITU-R BT.656 and DVD-Video D1) of NTSC and PAL, using a 13.5 MHz sampling frequency for pixels. In analog modes, the only discrete values are the number of lines, and the frame/field rate (fixing the horizontal sync rate when combined). The number of (in)visible pixels per line depends on the available bandwidth. In a digital variant (which is anything generated by a digital computer system), the latter depends on the pixel clock, which can wildly differ from the 13.5 MHz used in the BT.656 standard. (e.g. Amiga uses 7.09/14.19/28.38 MHz (PAL) or 7.16/14.32/28.64 MHz (NTSC)). So I think we probably need some way to generate a PAL/NTSC-compatible mode based not only on resolution, but also on pixel clock. > > Since those modes are fairly standards, and that we'll need to use them in > more places in the future, let's move the meson definition into the > framework. > > The meson one was chosen because vc4's isn't accurate and doesn't amount to > 525 and 625 lines. > > Signed-off-by: Maxime Ripard <maxime@xxxxxxxxxx> > --- a/drivers/gpu/drm/drm_modes.c > +++ b/drivers/gpu/drm/drm_modes.c > @@ -48,6 +48,24 @@ > > #include "drm_crtc_internal.h" > > +const struct drm_display_mode drm_mode_480i = { > + DRM_MODE("720x480i", DRM_MODE_TYPE_DRIVER, 13500, > + 720, 739, 801, 858, 0, > + 480, 488, 494, 525, 0, > + DRM_MODE_FLAG_INTERLACE), > + .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, > +}; > +EXPORT_SYMBOL_GPL(drm_mode_480i); > + > +const struct drm_display_mode drm_mode_576i = { > + DRM_MODE("720x576i", DRM_MODE_TYPE_DRIVER, 13500, > + 720, 732, 795, 864, 0, > + 576, 580, 586, 625, 0, > + DRM_MODE_FLAG_INTERLACE), > + .picture_aspect_ratio = HDMI_PICTURE_ASPECT_4_3, > +}; > +EXPORT_SYMBOL_GPL(drm_mode_576i); > + > /** Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds