1. 10 4月, 2021 1 次提交
  2. 24 3月, 2021 3 次提交
  3. 06 3月, 2021 1 次提交
  4. 27 2月, 2021 1 次提交
    • D
      amdgpu/pm: Powerplay API for smu , changes to clock and profile mode functions · 2ea092e5
      Darren Powell 提交于
      v3: updated to include new clocks vclk, dclk, od_vddgfx_offset, od_cclk
          Added forward declaration for function smu_force_smuclk_levels to resolve clash with other commits
          Resolved context clashes with other commits and v3 updates to patches 0003, 0004
      v2: fix errors flagged by checkpatch
      
      New Functions
        smu_bump_power_profile_mode() - changes profile mode assuming calling function already has mutex
        smu_force_ppclk_levels()      - accepts Powerplay enum pp_clock_type to specify clock to change
        smu_print_ppclk_levels()      - accepts Powerplay enum pp_clock_type to request clock levels
        amdgpu_get_pp_dpm_clock()     - accepts Powerplay enum pp_clock_type to request clock levels and allows
                                        all the amdgpu_get_pp_dpm_$CLK functions to have a single codepath
        amdgpu_set_pp_dpm_clock()     - accepts Powerplay enum pp_clock_type to set clock levels and allows
                                        all the amdgpu_set_pp_dpm_$CLK functions to have a single codepath
      
      Modified Functions
        smu_force_smuclk_levels        - changed function name to make clear difference to smu_force_ppclk_levels
        smu_force_ppclk_levels()       - modifed signature to implement Powerplay API force_clock_level
                                       - calls smu_force_smuclk_levels
        smu_print_smuclk_levels        - changed function name to make clear difference to smu_print_ppclk_levels
        smu_print_ppclk_levels()       - modifed signature to implement Powerplay API force_clock_level
                                       - calls smu_print_smuclk_levels
        smu_sys_get_gpu_metrics        - modifed arg0 to match Powerplay API get_gpu_metrics
        smu_get_power_profile_mode     - modifed arg0 to match Powerplay API get_power_profile_mode
        smu_set_power_profile_mode     - modifed arg0 to match Powerplay API set_power_profile_mode
                                       - removed arg lock_needed, mutex always locked, internal functions
                                         can call smu_bump if they already hold lock
        smu_switch_power_profile       - now calls smu_bump as already holds mutex lock
        smu_adjust_power_state_dynamic - now calls smu_bump as already holds mutex lock
        amdgpu_get_pp_od_clk_voltage   - uses smu_print_ppclk_levels
        amdgpu_{set,get}_pp_dpm_$CLK   - replace logic with call helper function amdgpu_{set,get}_pp_dpm_clock()
                                         CLK ={sclk, mclk, socclk, fclk, dcefclk, pci, vclkd, dclk}
      
      Other Changes
        added 5 smu Powerplay functions to swsmu_dpm_funcs
        removed special smu handling in pm functions and called through Powerplay API
      Signed-off-by: NDarren Powell <darren.powell@amd.com>
      Reviewed-by: NEvan Quan <evan.quan@amd.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      2ea092e5
  5. 14 1月, 2021 2 次提交
  6. 24 12月, 2020 1 次提交
    • E
      drm/amd/pm: support overdrive vddgfx offset setting(V2) · a2b6df4f
      Evan Quan 提交于
      This is supported by Sienna Cichlid, Navy Flounder and Dimgrey
      Cavefish. For these ASICs, the target voltage calculation can be
      illustrated by "voltage = voltage calculated from v/f curve +
      overdrive vddgfx offset".
      
      V2: limit the smu_version check for Sienna Cichlid only
      
      Here are some sample usages about this new OD setting:
      1. Check current vddgfx offset setting by
      cat /sys/class/drm/card0/device/pp_od_clk_voltage
      ...
      ...
      OD_VDDGFX_OFFSET:
      0mV
      ...
      ...
      
      2. Set new vddgfx offset by
      echo "vo 10" > /sys/class/drm/card0/device/pp_od_clk_voltage
      cat /sys/class/drm/card0/device/pp_od_clk_voltage
      ...
      ...
      OD_VDDGFX_OFFSET:
      10mV
      ...
      ...
      3. Commit the new setting by
      echo "c" > /sys/class/drm/card0/device/pp_od_clk_voltage
      Signed-off-by: NEvan Quan <evan.quan@amd.com>
      Acked-by: NAlex Deucher <alexander.deucher@amd.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      a2b6df4f
  7. 14 11月, 2020 1 次提交
  8. 30 9月, 2020 1 次提交
    • X
      drm/amd/powerplay: add one sysfs file to support the feature to modify gfx... · 12a6727d
      Xiaojian Du 提交于
      drm/amd/powerplay: add one sysfs file to support the feature to modify gfx clock on Raven/Raven2/Picasso APU.
      
      This patch is to add one sysfs file -- "pp_od_clk_voltage" for
      Raven/Raven2/Picasso APU, which is only used by dGPU like VEGA10.
      This sysfs file supports the feature to modify gfx engine clock(Mhz units), it can
      be used to configure the min value and the max value for gfx clock limited in the
      safe range.
      
      Command guide:
      echo "s level clock" > pp_od_clk_voltage
      	s - adjust teh sclk level
      	level - 0 or 1, "0" represents the min value, "1" represents the max value
      	clock - the clock value(Mhz units), like 400, 800 or 1200, the value must be within the
                      OD_RANGE limits.
      Example:
      $ cat pp_od_clk_voltage
      OD_SCLK:
      0:        200Mhz
      1:       1400Mhz
      OD_RANGE:
      SCLK:     200MHz       1400MHz
      
      $ echo "s 0 600" > pp_od_clk_voltage
      $ echo "s 1 1000" > pp_od_clk_voltage
      $ cat pp_od_clk_voltage
      OD_SCLK:
      0:        600Mhz
      1:       1000Mhz
      OD_RANGE:
      SCLK:     200MHz       1400MHz
      Signed-off-by: NXiaojian Du <Xiaojian.Du@amd.com>
      Reviewed-by: NKevin Wang <kevin1.wang@amd.com>
      Reviewed-by: NHuang Rui <ray.huang@amd.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      12a6727d
  9. 07 8月, 2020 2 次提交
  10. 07 11月, 2019 1 次提交
  11. 16 10月, 2019 1 次提交
  12. 27 8月, 2019 1 次提交
  13. 16 8月, 2019 1 次提交
  14. 31 7月, 2019 3 次提交
  15. 19 7月, 2019 1 次提交
  16. 25 5月, 2019 3 次提交
  17. 26 1月, 2019 4 次提交
  18. 15 1月, 2019 2 次提交
  19. 03 1月, 2019 1 次提交
  20. 08 12月, 2018 1 次提交
    • H
      drm/amd/powerplay: rv dal-pplib interface refactor powerplay part · 9ed9203c
      hersen wu 提交于
      [WHY] clarify dal input parameters to pplib interface, remove
      un-used parameters. dal knows exactly which parameters needed
      and their effects at pplib and smu sides.
      
      current dal sequence for dcn1_update_clock to pplib:
      
      1.smu10_display_clock_voltage_request for dcefclk
      2.smu10_display_clock_voltage_request for fclk
      3.phm_store_dal_configuration_data {
        set_min_deep_sleep_dcfclk
        set_active_display_count
        store_cc6_data --- this data never be referenced
      
      new sequence will be:
      
      1. set_display_count  --- need add new pplib interface
      2. set_min_deep_sleep_dcfclk -- new pplib interface
      3. set_hard_min_dcfclk_by_freq
      4. set_hard_min_fclk_by_freq
      
      after this code refactor, smu10_display_clock_voltage_request,
      phm_store_dal_configuration_data will not be needed for rv.
      
      [HOW] step 1: add new functions at pplib interface
            step 2: add new functions at amdgpu dm and dc
      Signed-off-by: Nhersen wu <hersenxs.wu@amd.com>
      Reviewed-by: NRex Zhu <Rex.Zhu@amd.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      9ed9203c
  21. 10 10月, 2018 3 次提交
  22. 27 9月, 2018 1 次提交
  23. 11 9月, 2018 1 次提交
  24. 06 7月, 2018 3 次提交