STRUCT DRM_CMDLINE_MODE(9)
π struct drm_cmdline_mode(9) π
okay so bestie, we're in the Kernel API Manual and this page is literally all about struct drm_cmdline_mode(9) β the little struct that carries a DRM mode straight through from the kernel command-line. no cap, it's giving "display setup but make it boot-time" energy π
π NAME π
struct drm_cmdline_mode β DRM Mode passed through the kernel command-line β¨
π¦ SYNOPSIS π¦
struct drm_cmdline_mode {
char name[DRM_DISPLAY_MODE_LEN];
bool specified;
bool refresh_specified;
bool bpp_specified;
unsigned int pixel_clock;
int xres;
int yres;
int bpp;
int refresh;
bool rb;
bool interlace;
bool cvt;
bool margins;
enum drm_connector_force force;
unsigned int rotation_reflection;
enum drm_panel_orientation panel_orientation;
struct drm_connector_tv_margins tv_margins;
enum drm_connector_tv_mode tv_mode;
bool tv_mode_specified;
};
π§ Members π§
nameβ Name of the mode. iconic little label vibes πspecifiedβ Has a mode been read from the command-line? πrefresh_specifiedβ Did the mode have a preferred refresh rate?bpp_specifiedβ Did the mode have a preferred BPP?pixel_clockβ Pixel Clock in kHz. Optional. (yes bestie, kHz β keep it exact π«Ά)xresβ Active resolution on the X axis, in pixels.yresβ Active resolution on the Y axis, in pixels.bppβ Bits per pixels for the mode.refreshβ Refresh rate, in Hertz.rbβ Do we need to use reduced blanking?interlaceβ The mode is interlaced.cvtβ The timings will be calculated using the VESA Coordinated Video Timings instead of looking up the mode from a table.marginsβ Add margins to the mode calculation (1.8% of xres rounded down to 8 pixels and 1.8% of yres).forceβ Ignore the hotplug state of the connector, and force its state to one of theDRM_FORCE_*values.rotation_reflectionβ Initial rotation and reflection of the mode setup from the command line. SeeDRM_MODE_ROTATE_*andDRM_MODE_REFLECT_*. The only rotations supported areDRM_MODE_ROTATE_0andDRM_MODE_ROTATE_180.panel_orientationβ drm-connector "panel orientation" property override value,DRM_MODE_PANEL_ORIENTATION_UNKNOWNif not set.tv_marginsβ TV margins to apply to the mode.tv_modeβ TV mode standard. SeeDRM_MODE_TV_MODE_*.tv_mode_specifiedβ Did the mode have a preferred TV mode?
β¨ Description β¨
Each connector can have an initial mode with additional options passed through the kernel command line. This structure allows to express those parameters and will be filled by the command-line parser. fr fr, it's the struct that catches all your boot-time display wishes and passes them along π
π SEE ALSO π
Kernel file ./include/drm/drm_connector.h β and bestie, the whole friend group is here:
enum drm_connector_status(9)enum drm_connector_registration_state(9)enum drm_connector_tv_mode(9)struct drm_scrambling(9)struct drm_hdmi_dsc_cap(9)struct drm_hdmi_info(9)enum drm_link_status(9)enum drm_panel_orientation(9)enum drm_hdmi_broadcast_rgb(9)struct drm_monitor_range_info(9)struct drm_luminance_range_info(9)enum drm_privacy_screen_status(9)enum drm_colorspace(9)enum drm_output_color_format(9)enum drm_connector_color_format(9)enum drm_bus_flags(9)struct drm_amd_vsdb_info(9)struct drm_display_info(9)struct drm_connector_tv_margins(9)struct drm_tv_connector_state(9)struct drm_connector_hdmi_infoframe(9)struct drm_connector_state(9)struct drm_connector_cec_funcs(9)struct drm_connector_infoframe_funcs(9)struct drm_connector_hdmi_funcs(9)struct drm_connector_funcs(9)struct drm_connector_hdmi_audio(9)struct drm_connector_cec(9)struct drm_connector(9)drm_connector_lookup(9)drm_connector_get(9)drm_connector_put(9)drm_connector_is_unregistered(9)struct drm_tile_group(9)struct drm_connector_list_iter(9)drm_for_each_connector_iter(9)drm_connector_for_each_possible_encoder(9)
okay that's the whole page, bestie β you ate that π β¨
xoxo, your kernel bestie π«Ά source: ./include/drm, date: October 2026 β struct drm_cmdline_mode(9) forever π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms