STRUCT DMUB_DIAGNOSTIC_DATA(9)
π NAME π
okay so this is struct dmub_diagnostic_data(9) from the Kernel API Manual, and it's literally the diagnostic data retrieved from DMCUB for debugging purposes β logging, crash analysis, etc. β the whole βwhat happened, bestie?β toolkit ππ
β¨ SYNOPSIS β¨
here's the struct in all its exact, character-for-character glory β do not touch the spelling, fr fr:
struct dmub_diagnostic_data {
uint32_t dmcub_version;
uint32_t scratch[17];
uint32_t pc[DMUB_PC_SNAPSHOT_COUNT];
uint32_t undefined_address_fault_addr;
uint32_t inst_fetch_fault_addr;
uint32_t data_write_fault_addr;
uint32_t inbox1_rptr;
uint32_t inbox1_wptr;
uint32_t inbox1_size;
uint32_t inbox0_rptr;
uint32_t inbox0_wptr;
uint32_t inbox0_size;
uint32_t outbox1_rptr;
uint32_t outbox1_wptr;
uint32_t outbox1_size;
uint32_t gpint_datain0;
struct dmub_timeout_info timeout_info;
uint8_t is_dmcub_enabled : 1;
uint8_t is_dmcub_soft_reset : 1;
uint8_t is_dmcub_secure_reset : 1;
uint8_t is_traceport_en : 1;
uint8_t is_cw0_enabled : 1;
uint8_t is_cw6_enabled : 1;
uint8_t is_pwait : 1;
};
π«Ά MEMBERS π«Ά
the Members section is lowkey just a heading here β there's no separate member list under it, so the fields in the synopsis above are the whole squad. go look at those exact names up there, iykyk π
π SEE ALSO π
Kernel file ./drivers/gpu/drm/amd/display/dmub/dmub_srv.h β DMUB interface and operation(9) β plus this entire friend group:
struct dmub_region(9)struct dmub_window(9)struct dmub_fb(9)struct dmub_srv_region_params(9)struct dmub_srv_fw_meta_info_params(9)struct dmub_srv_region_info(9)struct dmub_srv_memory_params(9)struct dmub_srv_fb_info(9)struct dmub_soc_fb_info(9)struct dmub_preos_info(9)struct dmub_srv_base_funcs(9)struct dmub_srv_hw_funcs(9)struct dmub_srv_create_params(9)struct dmub_srv(9)struct dmub_notification(9)dmub_srv_create(9)dmub_srv_destroy(9)dmub_srv_calc_region_info(9)dmub_srv_has_hw_support(9)dmub_srv_is_hw_init(9)dmub_srv_hw_init(9)dmub_srv_hw_reset(9)dmub_srv_fb_cmd_queue(9)dmub_srv_fb_cmd_execute(9)dmub_srv_wait_for_hw_pwr_up(9)dmub_srv_wait_for_auto_load(9)dmub_srv_wait_for_phy_init(9)dmub_srv_wait_for_pending(9)dmub_srv_wait_for_idle(9)dmub_srv_send_gpint_command(9)dmub_srv_get_gpint_response(9)dmub_srv_get_gpint_dataout(9)dmub_srv_flush_buffer_mem(9)dmub_srv_get_fw_boot_status(9)dmub_srv_send_inbox0_cmd(9)dmub_srv_wait_for_inbox0_ack(9)dmub_srv_subvp_save_surf_addr(9)dmub_srv_set_power_state(9)dmub_srv_reg_cmd_execute(9)dmub_srv_cmd_get_response(9)dmub_srv_sync_inboxes(9)dmub_srv_wait_for_inbox_free(9)dmub_srv_update_inbox_status(9)dmub_srv_get_preos_info(9)dmub_srv_get_fw_meta_info_from_raw_fw(9)
cute sign-off: this page's footer vibe is source/version ./drivers/gpu/drm/amd/display/... and date October 2026, with struct dmub_diagnostic_data(9) hanging out on the right πβ¨
π¦ 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