STRUCT AMDGPU_DM_BACKLIGHT_CAPS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

struct amdgpu_dm_backlight_caps β€” literally all the info about backlight, bestie ✨

Okay so we're in the Kernel API Manual today (struct amdg...cklight_caps(9), iykyk) and this struct is the main character. It holds everything about how your display does brightness. Let's get into it πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

struct amdgpu_dm_backlight_caps {
    union dpcd_sink_ext_caps *ext_caps;
    u32 aux_min_input_signal;
    u32 aux_max_input_signal;
    int min_input_signal;
    int max_input_signal;
    bool caps_valid;
    bool aux_support;
    u32 brightness_mask;
    u8 ac_level;
    u8 dc_level;
    u8 data_points;
    struct amdgpu_dm_luminance_data luminance_data[MAX_LUMINANCE_DATA_POINTS];
};

No cap, that's the whole shape of it 🫢


πŸŽ€ Members πŸŽ€

Okay, member-by-member, let's go β€” every single one, because we do not skip πŸ’–

  • ext_caps β€” keeps the data struct that has all the info about the display's support for HDR ✨
  • aux_min_input_signal β€” the min brightness value supported by the display
  • aux_max_input_signal β€” the max brightness value supported by the display, in nits πŸ”₯
  • min_input_signal β€” the minimum possible input, in the range 0-255
  • max_input_signal β€” the maximum possible input, in the range 0-255
  • caps_valid β€” true if these values came from the ACPI interface πŸ‘‘
  • aux_support β€” tells you whether the display supports AUX backlight
  • brightness_mask β€” after deriving brightness, OR it with this mask. It's a workaround for panels that have issues with certain brightness values, so yeah, it's doing the lord's work πŸ™ˆ
  • ac_level β€” the default brightness if you booted on AC ⚑
  • dc_level β€” the default brightness if you booted on DC πŸ”‹
  • data_points β€” the number of custom luminance data points
  • luminance_data β€” the custom luminance data itself πŸ’œ

🌈 Description 🌈

It describes the backlight support for ACPI or eDP AUX. That's the whole vibe check, fr fr.


⭐ SEE ALSO ⭐

Kernel file ./drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h, plus these iconic structs you should also go read:

  • struct dm_compressor_info(9)
  • struct dm_boot_time_crc_info(9)
  • struct dmub_hpd_work(9)
  • struct vblank_control_work(9)
  • struct idle_workqueue(9)
  • struct vupdate_offload_work(9)
  • struct amdgpu_dm_luminance_data(9)
  • struct dal_allocation(9)
  • struct hpd_rx_irq_offload_work_queue(9)
  • struct hpd_rx_irq_offload_work(9)
  • struct amdgpu_display_manager(9)
  • struct amdgpu_hdmi_vsdb_info(9)

Bestie moment: all of these live over in ./drivers/gpu/drm/amd/display/... if you wanna go snooping πŸ’€

And that's the page! Brought to you by the gang over in ./drivers/gpu/drm/amd/display/..., dated October 2026 β€” go off, calendar πŸ“…πŸ’– Slay, and see you in the next struct πŸ§šβ€β™€οΈβœ¨πŸŽ€

πŸ“¦ where this page comes from