• Alex Deucher's avatar
    drm/amdgpu/UAPI: add new CTX OP to get/set stable pstates · 8cda7a4f
    Alex Deucher authored
    Add a new CTX ioctl operation to set stable pstates for profiling.
    When creating traces for tools like RGP or using SPM or doing
    performance profiling, it's required to enable a special
    stable profiling power state on the GPU.  These profiling
    states set fixed clocks and disable certain other power
    features like powergating which may impact the results.
    
    Historically, these profiling pstates were enabled via sysfs,
    but this adds an interface to enable it via the CTX ioctl
    from the application.  Since the power state is global
    only one application can set it at a time, so if multiple
    applications try and use it only the first will get it,
    the ioctl will return -EBUSY for others.  The sysfs interface
    will override whatever has been set by this interface.
    
    Mesa MR: https://gitlab.freedesktop.org/mesa/drm/-/merge_requests/207
    
    v2: don't default r = 0;
    v3: rebase on Evan's PM cleanup
    Reviewed-by: default avatarEvan Quan <evan.quan@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    8cda7a4f
amdgpu_dpm.h 17.5 KB