UNION DMUB_GPINT_DATA_REGISTER(9)
π union dmub_gpint_data_register(9) β Kernel API Manual
okay so you opened the manpage for union dmub_gpint_data_register(9) and it's giving very "kernel API manual" energy β that's the manual name bestie, we're in the kernel docs section 9, hold my iced coffee π§
β¨ NAME β¨
union dmub_gpint_data_register β literally the format for sending a command via the GPINT. that's it. that's the whole name section. slay π
π¦ SYNOPSIS π¦
okay here's the actual shape of it, and yes you have to read it carefully, no skimming π
union dmub_gpint_data_register {
struct {
uint32_t param : 16;
uint32_t command_code : 12;
uint32_t status : 4;
} bits;
uint32_t all;
};
so it's a union (iykyk β everyone in the union shares the same storage) and it's got exactly two things in it:
bitsβ astructholding the three bitfields:paramis: 16,command_codeis: 12, andstatusis: 4. those colons are bitfield widths, not vibes. πΈallβ a plainuint32_tthat overlays the whole thing, so you can poke at the packed bits all at once. main character energy fr fr π
no cap, that's the entire union. iconic of it honestly.
π Members π
this is the Members section, and bestieβ¦ it's empty. like, the heading is there, the section is there, and there is nothing listed under it in the original. so if you came here looking for individual member write-ups, this page is not the one. it's giving minimalist. π
(the members you actually care about β param, command_code, status, all β are all up in the SYNOPSIS. go look there. π)
π SEE ALSO π
this part is a whole situation β the list goes on and on and honestly? iconic. first up the kernel file, then the references, all of them, in the order the manpage gives them:
- Kernel file
./drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.hβ this is the one, the source file where this union lives π§ 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)struct dmub_fw_meta_info(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)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 I said. a lot. all of them are real, all of them are (9), and yes you're gonna want to actually read a few of these if you're doing DMUB stuff. obsessed with the dedication honestly π₯
quick vibe check bestie: this page gives you the format and the pointers to everything else. it does not hand you a tutorial. that's what SEE ALSO is for. π«Ά
and that's the page! π it comes from ./drivers/gpu/drm/amd/display/... and it's dated October 2026 β so like, future-dated, very mysterious of it π β and the whole thing is filed under union dmub_g...ata_register(9), which is the shortened name you'll see stamped at the top and bottom. periodt. π
β¨
π¦ 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