The existing OD interface `pp_od_clk_voltage` is unable to meet the growing demands for more OD functionalities. Since the buf used within it comes with size limit as one page. With more OD functionalities added, we will hit that limit soon. To better meet the growing demainds, a new set of OD interfaces are designed. With this new design, there will be multiple interfaces exposed with each representing a single OD functionality. And all those interfaces will be arranged in a tree liked hierarchy as below. Meanwhile all functionalities for the same component will be arranged under the same directory. gpu_od/ ├── fan_ctrl │ ├── acoustic_limit_rpm_threshold │ ├── acoustic_target_rpm_threshold │ ├── fan_curve │ ├── fan_minimum_pwm │ ├── fan_target_temperature Evan Quan (7): drm/amd/pm: introduce a new set of OD interfaces drm/amdgpu: revise the device initialization sequences drm/amd/pm: add fan temperature/pwm curve OD setting support for SMU13 drm/amd/pm: add fan acoustic limit OD setting support for SMU13 drm/amd/pm: add fan acoustic target OD setting support for SMU13 drm/amd/pm: add fan target temperature OD setting support for SMU13 drm/amd/pm: add fan minimum pwm OD setting support for SMU13 Documentation/gpu/amdgpu/thermal.rst | 30 + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 39 +- .../gpu/drm/amd/include/kgd_pp_interface.h | 12 +- drivers/gpu/drm/amd/pm/amdgpu_pm.c | 730 +++++++++++++++++- drivers/gpu/drm/amd/pm/inc/amdgpu_dpm.h | 14 + drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 10 + drivers/gpu/drm/amd/pm/swsmu/inc/smu_types.h | 5 + .../drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c | 298 ++++++- .../drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c | 298 ++++++- 9 files changed, 1411 insertions(+), 25 deletions(-) -- 2.34.1