drm/connector: Add pixel clock to cmdline mode
We'll need to get the pixel clock to generate proper display modes for all the current named modes. Let's add it to struct drm_cmdline_mode and fill it when parsing the named mode. Reviewed-by: Noralf Trønnes <noralf@tronnes.org> Tested-by: Mateusz Kwiatkowski <kfyatek+publicgit@gmail.com> Link: https://lore.kernel.org/r/20220728-rpi-analog-tv-properties-v9-12-24b168e5bcd5@cerno.tech Signed-off-by: Maxime Ripard <maxime@cerno.tech>
This commit is contained in:
parent
00dcc4a2d5
commit
0e308efe23
|
@ -1752,22 +1752,24 @@ static int drm_mode_parse_cmdline_options(const char *str,
|
|||
|
||||
struct drm_named_mode {
|
||||
const char *name;
|
||||
unsigned int pixel_clock_khz;
|
||||
unsigned int xres;
|
||||
unsigned int yres;
|
||||
unsigned int flags;
|
||||
};
|
||||
|
||||
#define NAMED_MODE(_name, _x, _y, _flags) \
|
||||
#define NAMED_MODE(_name, _pclk, _x, _y, _flags) \
|
||||
{ \
|
||||
.name = _name, \
|
||||
.pixel_clock_khz = _pclk, \
|
||||
.xres = _x, \
|
||||
.yres = _y, \
|
||||
.flags = _flags, \
|
||||
}
|
||||
|
||||
static const struct drm_named_mode drm_named_modes[] = {
|
||||
NAMED_MODE("NTSC", 720, 480, DRM_MODE_FLAG_INTERLACE),
|
||||
NAMED_MODE("PAL", 720, 576, DRM_MODE_FLAG_INTERLACE),
|
||||
NAMED_MODE("NTSC", 13500, 720, 480, DRM_MODE_FLAG_INTERLACE),
|
||||
NAMED_MODE("PAL", 13500, 720, 576, DRM_MODE_FLAG_INTERLACE),
|
||||
};
|
||||
|
||||
static int drm_mode_parse_cmdline_named_mode(const char *name,
|
||||
|
@ -1808,6 +1810,7 @@ static int drm_mode_parse_cmdline_named_mode(const char *name,
|
|||
continue;
|
||||
|
||||
strcpy(cmdline_mode->name, mode->name);
|
||||
cmdline_mode->pixel_clock = mode->pixel_clock_khz;
|
||||
cmdline_mode->xres = mode->xres;
|
||||
cmdline_mode->yres = mode->yres;
|
||||
cmdline_mode->interlace = !!(mode->flags & DRM_MODE_FLAG_INTERLACE);
|
||||
|
|
|
@ -1212,6 +1212,13 @@ struct drm_cmdline_mode {
|
|||
*/
|
||||
bool bpp_specified;
|
||||
|
||||
/**
|
||||
* @pixel_clock:
|
||||
*
|
||||
* Pixel Clock in kHz. Optional.
|
||||
*/
|
||||
unsigned int pixel_clock;
|
||||
|
||||
/**
|
||||
* @xres:
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue