ENUM DRM_CONNECTOR_TV_MODE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ enum drm_connector_tv_mode β€” Analog TV output mode ✨

Okay bestie, so this is a page about enum drm_connector_tv_mode from the Kernel API Manual, and it's genuinely one of the more chill ones β€” it's just a list of analog TV output modes. Retro vibes only, no cap. πŸ“Ί


🌸 SYNOPSIS 🌸

enum drm_connector_tv_mode {
    DRM_MODE_TV_MODE_NTSC ,
    DRM_MODE_TV_MODE_NTSC_443 ,
    DRM_MODE_TV_MODE_NTSC_J ,
    DRM_MODE_TV_MODE_PAL ,
    DRM_MODE_TV_MODE_PAL_M ,
    DRM_MODE_TV_MODE_PAL_N ,
    DRM_MODE_TV_MODE_SECAM ,
    DRM_MODE_TV_MODE_MONOCHROME ,
    DRM_MODE_TV_MODE_MAX

};

πŸŽ€ Constants πŸŽ€

So these are the constants, and honestly each one is a whole little lore drop. Let's go one by one, no skipping, periodt. πŸ’…

  • DRM_MODE_TV_MODE_NTSC β€” CCIR System M (aka the 525-lines one, iykyk) together with the NTSC Color Encoding. The classic. ✨
  • DRM_MODE_TV_MODE_NTSC_443 β€” a variant of DRM_MODE_TV_MODE_NTSC that uses a color subcarrier frequency of 4.43 MHz. Same energy, different frequency, she's quirky like that. πŸ¦‹
  • DRM_MODE_TV_MODE_NTSC_J β€” variant of DRM_MODE_TV_MODE_NTSC used in Japan, using a black level equals to the blanking level. Japan said "we're doing it slightly differently" and honestly? Slay. 🌸
  • DRM_MODE_TV_MODE_PAL β€” CCIR System B together with the PAL color system. The people's princess. πŸ‘‘
  • DRM_MODE_TV_MODE_PAL_M β€” CCIR System M (aka 525-lines, again bestie) together with the PAL color encoding. Note how the original line has no trailing period β€” I'm preserving that, don't come for me. πŸ’€
  • DRM_MODE_TV_MODE_PAL_N β€” CCIR System N together with the PAL color encoding. And okay, this one is the main character of the PAL variants because: it uses 625 lines, but has a color subcarrier frequency of 3.58MHz, the SECAM color space, and narrower channels compared to most of the other PAL variants. She contains multitudes. That's a lot of plot for one enum value, lowkey. 😭
  • DRM_MODE_TV_MODE_SECAM β€” CCIR System B together with the SECAM color system. πŸ“
  • DRM_MODE_TV_MODE_MONOCHROME β€” use timings appropriate to the DRM mode, including equalizing pulses for a 525-line or 625-line mode, with no pedestal or color encoding. She's minimalist. She's above color. Highkey iconic. πŸ–€
  • DRM_MODE_TV_MODE_MAX β€” number of analog TV output modes. That's literally all it is, she's just the counter at the end. 🧚
Also, tucked in right there: Internal implementation detail; this is not uABI. Noted, bestie, noted. πŸ™ˆ

πŸ¦‹ Description πŸ¦‹

So this enum is used to indicate the TV output mode used on an analog TV connector. That's the whole vibe, fr fr. πŸ’–

⚠️ WARNING: The values of this enum is uABI since they're exposed in the "TV mode" connector property. So like, don't go changing them, okay? They're public-facing. That's a hard no. πŸ”₯

🌈 SEE ALSO 🌈

Okay so the kernel file is ./include/drm/drm_connector.h (that's the main one), and then there's a whole friend group of related pages β€” all of these, every single one, no cuts:

enum drm_connector_status(9), enum drm_connector_registration_state(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_cmdline_mode(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).

Like, that's the whole group chat. Go read them, bestie, they're all worth it. 🫢


πŸ’– And that's the page! πŸ’–

Sign-off time: this one lives in ./include/drm, it's dated October 2026, and yes β€” the title on the tin is still enum drm_connector_tv_mode(9). Now go forth and configure your analog TV output, you absolute legend. β­πŸ¦‹πŸ’…

πŸ“¦ where this page comes from