STRUCT DMUB_FW_META_INFO(9)
π struct dmub_fw_meta_info(9) π
okay so bestie, welcome to the <pink>Kernel API Manual</pink> β¨ β today we're looking at struct dmub_fw_meta_info, which is literally just the metadata that rides along with the fw binary. like, the firmware's little name tag at the party π no cap.
πΈ NAME πΈ
struct dmub_fw_meta_info β metadata associated with fw binary π«Ά
β¨ SYNOPSIS β¨
struct dmub_fw_meta_info {
uint32_t magic_value;
uint32_t fw_region_size;
uint32_t trace_buffer_size;
uint32_t fw_version;
uint8_t dal_fw;
uint8_t reserved[3];
uint32_t shared_state_size;
uint16_t shared_state_features;
uint16_t reserved2;
union dmub_fw_meta_feature_bits feature_bits;
};
like yes, it's giving struct. it's giving fields. we love a well-organized layout π
π¦ Members π¦
magic_valueβ the magic value that identifies the DMUB firmware meta info π it's the secret handshake, the vibe check, the "yes this is actually ours" βfw_region_sizeβ how big the firmware state region is πtrace_buffer_sizeβ how big the tracebuffer region is π₯fw_versionβ the firmware version information, aka the firmware's birth chart πdal_fwβ1if the firmware is DAL, no cap πshared_state_sizeβ size of the shared state region, measured in bytes πshared_state_featuresβ the number of shared state features β¨
π NOTE π
This should be considered a stable API. Fields should not be repurposed or reordered. New fields should be added instead to extend the structure.
fr fr bestie, this is the one thing you cannot fumble π do not rearrange these fields, do not steal a field's job and give it to something else. if you need more, you add. periodt. π
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h union dmub_addr(9)struct dmub_cursor_offload_pipe_data_dcn30_v1(9)struct dmub_cursor_offload_pipe_data_dcn401_v1(9)struct dmub_cursor_offload_pipe_data_dcn60_v1(9)struct dmub_cursor_offload_pipe_data_v1(9)struct dmub_cursor_offload_payload_data_v1(9)struct dmub_cursor_offload_stream_v1(9)struct dmub_cursor_offload_v1(9)union dmub_fw_meta_feature_bits(9)union dmub_fw_meta(9)struct dmcub_trace_buf_entry(9)union dmub_fw_boot_status(9)enum dmub_fw_boot_status_bit(9)enum dmub_cursor_offload_comand_type(9)union dmub_fw_boot_options(9)enum dmub_shared_state_feature_id(9)struct dmub_shared_state_ips_fw(9)struct dmub_shared_state_ips_driver(9)struct dmub_shared_state_cursor_offload_v1(9)struct dmub_shared_state_feature_block(9)union dmub_gpint_data_register(9)enum dmub_out_cmd_type(9)struct dmub_cmd_header(9)struct dmub_rb_cmd_common(9)struct dmub_cmd_PLAT_54186_wa(9)struct dmub_rb_cmd_PLAT_54186_wa(9)enum dmub_cmd_mall_type(9)struct dmub_rb_cmd_mall(9)enum dmub_cmd_cab_type(9)struct dmub_rb_cmd_cab_for_ss(9)enum dmub_fams2_allow_delay_check_mode(9)enum dmub_cmd_idle_opt_type(9)struct dmub_rb_cmd_idle_opt_dcn_restore(9)struct dmub_dcn_notify_idle_cntl_data(9)struct dmub_rb_cmd_idle_opt_dcn_notify_idle(9)enum dmub_idle_opt_dc_power_state(9)struct dmub_idle_opt_set_dc_power_state_data(9)struct dmub_rb_cmd_idle_opt_set_dc_power_state(9)struct dmub_clocks(9)enum dmub_cmd_clk_mgr_type(9)struct dmub_rb_cmd_clk_mgr_notify_clocks(9)struct dmub_cmd_digx_encoder_control_data(9)struct dmub_rb_cmd_digx_encoder_control(9)struct dmub_cmd_set_pixel_clock_data(9)struct dmub_cmd_enable_disp_power_gating_data(9)struct dmub_rb_cmd_enable_disp_power_gating(9)struct dmub_dig_transmitter_control_data_v1_7(9)union dmub_cmd_dig1_transmitter_control_data(9)struct dmub_rb_cmd_dig1_transmitter_control(9)struct dmub_rb_cmd_domain_control_data(9)struct dmub_rb_cmd_domain_control(9)struct dmub_rb_cmd_dpphy_init(9)enum dp_aux_request_action(9)enum aux_return_code_type(9)enum aux_channel_type(9)struct aux_transaction_parameters(9)struct dmub_rb_cmd_hpd_sense_notify(9)enum dmub_phy_fsm_state(9)enum dmub_abm_ace_curve_type(9)enum dmub_abm_histogram_type(9)enum dmub_cmd_panel_cntl_type(9)struct dmub_cmd_panel_cntl_data(9)struct dmub_rb_cmd_panel_cntl(9)struct dmub_cmd_cable_id_input(9)struct dmub_cmd_cursor_offload_init_data(9)struct dmub_rb_cmd_cursor_offload_init(9)struct dmub_cmd_cursor_offload_stream_data(9)struct dmub_rb_cmd_cursor_offload_stream_cntl(9)union dmub_rb_cmd(9)union dmub_rb_out_cmd(9)struct dmub_rb_init_params(9)struct dmub_rb(9)
like that's a whole friend group, iykyk π
and that's the page!! π live from ./drivers/gpu/drm/amd/display/..., dated October 2026, it's struct dmub_fw_meta_info(9) signing off β stay stable, stay un-reordered, and don't touch the field order bestie π§π
π¦ 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