STRUCT AMDXDNA_DRM_SET_POWER_MODE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct amdxdna_drm_set_power_mode(9) β€” from the Kernel API Manual, section 9, bestie

okay so picture this: you're deep in the kernel API manual, section 9, and you've stumbled onto this little icon. it's a struct. it's giving "small but powerful." and honestly? it's the one that tells the AIE hardware what power mode to vibe in. no cap.


✨ NAME ✨

struct amdxdna_drm_set_power_mode β€” Set the power mode of the AIE hardware πŸŽ€

like, that's literally its whole job and it does it slayfully.


🌸 SYNOPSIS 🌸

struct amdxdna_drm_set_power_mode {
    __u8 power_mode;
    __u8 pad[7];
 };

look at her. two members. absolutely zero filler (well, except the padding, but we'll get to that πŸ’€).


πŸ‘‘ Members πŸ‘‘

  • power_mode β€” the sensor type, taken from enum amdxdna_power_mode_type. yes bestie, it's an enum value living its best life inside a __u8. iconic.
  • pad β€” MBZ. that's "must be zero," so don't be cute and put random stuff in there, okay? 🫢 it's padding, it's decorative, it's not the main character. leave it be.

πŸ¦‹ SEE ALSO πŸ¦‹

the kernel file itself lives at ./include/uapi/drm/amdxdna_accel.h β€” that's where the struct actually hangs out, iykyk.

and because this struct does not exist in a vacuum, here's the whole friend group, fr fr β€” every single one of them:

  • struct amdxdna_drm_create_hwctx(9)
  • struct amdxdna_drm_destroy_hwctx(9)
  • struct amdxdna_cu_config(9)
  • struct amdxdna_hwctx_param_config_cu(9)
  • struct amdxdna_drm_config_hwctx(9)
  • struct amdxdna_drm_va_entry(9)
  • struct amdxdna_drm_va_tbl(9)
  • struct amdxdna_drm_create_bo(9)
  • struct amdxdna_drm_get_bo_info(9)
  • struct amdxdna_drm_sync_bo(9)
  • struct amdxdna_drm_exec_cmd(9)
  • struct amdxdna_drm_wait_cmd(9)
  • struct amdxdna_drm_query_aie_status(9)
  • struct amdxdna_drm_query_aie_version(9)
  • struct amdxdna_drm_query_aie_tile_metadata(9)
  • struct amdxdna_drm_query_aie_metadata(9)
  • struct amdxdna_drm_query_clock(9)
  • struct amdxdna_drm_query_clock_metadata(9)
  • struct amdxdna_drm_query_sensor(9)
  • struct amdxdna_drm_query_hwctx(9)
  • struct amdxdna_drm_get_power_mode(9)
  • struct amdxdna_drm_query_firmware_version(9)
  • struct amdxdna_drm_get_resource_info(9)
  • struct amdxdna_drm_attribute_state(9)
  • struct amdxdna_drm_query_telemetry_header(9)
  • struct amdxdna_drm_get_info(9)
  • struct amdxdna_drm_hwctx_entry(9)
  • struct amdxdna_async_error(9)
  • struct amdxdna_drm_bo_usage(9)
  • struct amdxdna_drm_get_array(9)
  • struct amdxdna_drm_set_state(9)

note how struct amdxdna_drm_get_power_mode(9) is right there in the mix πŸ‘€ β€” the getter and the setter, a matched set, the way that they're literally siblings. obsessed.


πŸ’– quick vibe check: power_mode is one __u8 and pad is seven. that's eight bytes total and she is perfectly aware of it.

✨ that's the whole page, bestie ✨ this little gem comes from the path ./include/uapi/drm, dated October 2026, and yeah β€” the header on the sheet says struct amdx...t_power_mode(9) which is just the title getting cut off mid-yawn πŸ’€ but you knew that. mwah. πŸ’‹

πŸ“¦ where this page comes from