diff options
author | Dave Airlie <airlied@redhat.com> | 2016-05-06 14:17:22 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2016-05-06 14:17:22 +1000 |
commit | a64424d722504926f3375bc4887976e3bfe3a01d (patch) | |
tree | abf5419151be98a8520e30b1ae7935127a678796 /drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | |
parent | 0552f7651bc233e5407ab06ba97a9d7c25e19580 (diff) | |
parent | 84fae133f0ccc974a425eee21101f5644bd8d14d (diff) | |
download | blackbird-op-linux-a64424d722504926f3375bc4887976e3bfe3a01d.tar.gz blackbird-op-linux-a64424d722504926f3375bc4887976e3bfe3a01d.zip |
Merge branch 'drm-next-4.7' of git://people.freedesktop.org/~agd5f/linux into drm-next
This is the first big radeon/amdgpu pull request for 4.7. Highlights:
- Polaris support in amdgpu
Current display stack on par with other asics, for advanced features DAL is required
Power management support
Support for GFX, Compute, SDMA, UVD, VCE
- VCE and UVD init/fini cleanup in radeon
- GPUVM improvements
- Scheduler improvements
- Clockgating improvements
- Powerplay improvements
- TTM changes to support driver specific LRU update mechanism
- Radeon support for new Mesa features
- ASYNC pageflip support for radeon
- Lots of bug fixes and code cleanups
* 'drm-next-4.7' of git://people.freedesktop.org/~agd5f/linux: (180 commits)
drm/amdgpu: Replace rcu_assign_pointer() with RCU_INIT_POINTER()
drm/amdgpu: use drm_mode_vrefresh() rather than mode->vrefresh
drm/amdgpu/uvd6: add bypass support for fiji (v3)
drm/amdgpu/fiji: set UVD CG state when enabling UVD DPM (v2)
drm/powerplay: add missing clockgating callback for tonga
drm/amdgpu: Constify some tables
drm/amd/powerplay: Delete dead struct declaration
drm/amd/powerplay/hwmgr: don't add invalid voltage
drm/amd/powerplay/hwmgr: prevent VDDC from exceeding 2V
MAINTAINERS: Remove unneded wildcard for the Radeon/AMDGPU drivers
drm/radeon: add cayman VM support for append packet.
drm/amd/amdgpu: Add debugfs entries for smc/didt/pcie
drm/amd/amdgpu: Drop print_status callbacks.
drm/amd/powerplay: revise reading/writing pptable on Polaris10
drm/amd/powerplay: revise reading/writing pptable on Tonga
drm/amd/powerplay: revise reading/writing pptable on Fiji
drm/amd/powerplay: revise caching the soft pptable and add it's size
drm/amd/powerplay: add dpm force multiple levels on cz/tonga/fiji/polaris (v2)
drm/amd/powerplay: fix fan speed percent setting error on Polaris10
drm/amd/powerplay: fix bug dpm can't work when resume back on Polaris
...
Diffstat (limited to 'drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c')
-rw-r--r-- | drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c index 5682490337e3..1f14c477d15d 100644 --- a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c @@ -915,7 +915,7 @@ static int cz_tf_update_low_mem_pstate(struct pp_hwmgr *hwmgr, return 0; } -static struct phm_master_table_item cz_set_power_state_list[] = { +static const struct phm_master_table_item cz_set_power_state_list[] = { {NULL, cz_tf_update_sclk_limit}, {NULL, cz_tf_set_deep_sleep_sclk_threshold}, {NULL, cz_tf_set_watermark_threshold}, @@ -925,13 +925,13 @@ static struct phm_master_table_item cz_set_power_state_list[] = { {NULL, NULL} }; -static struct phm_master_table_header cz_set_power_state_master = { +static const struct phm_master_table_header cz_set_power_state_master = { 0, PHM_MasterTableFlag_None, cz_set_power_state_list }; -static struct phm_master_table_item cz_setup_asic_list[] = { +static const struct phm_master_table_item cz_setup_asic_list[] = { {NULL, cz_tf_reset_active_process_mask}, {NULL, cz_tf_upload_pptable_to_smu}, {NULL, cz_tf_init_sclk_limit}, @@ -943,7 +943,7 @@ static struct phm_master_table_item cz_setup_asic_list[] = { {NULL, NULL} }; -static struct phm_master_table_header cz_setup_asic_master = { +static const struct phm_master_table_header cz_setup_asic_master = { 0, PHM_MasterTableFlag_None, cz_setup_asic_list @@ -984,14 +984,14 @@ static int cz_tf_reset_cc6_data(struct pp_hwmgr *hwmgr, return 0; } -static struct phm_master_table_item cz_power_down_asic_list[] = { +static const struct phm_master_table_item cz_power_down_asic_list[] = { {NULL, cz_tf_power_up_display_clock_sys_pll}, {NULL, cz_tf_clear_nb_dpm_flag}, {NULL, cz_tf_reset_cc6_data}, {NULL, NULL} }; -static struct phm_master_table_header cz_power_down_asic_master = { +static const struct phm_master_table_header cz_power_down_asic_master = { 0, PHM_MasterTableFlag_None, cz_power_down_asic_list @@ -1095,19 +1095,19 @@ static int cz_tf_check_for_dpm_enabled(struct pp_hwmgr *hwmgr, return 0; } -static struct phm_master_table_item cz_disable_dpm_list[] = { +static const struct phm_master_table_item cz_disable_dpm_list[] = { { NULL, cz_tf_check_for_dpm_enabled}, {NULL, NULL}, }; -static struct phm_master_table_header cz_disable_dpm_master = { +static const struct phm_master_table_header cz_disable_dpm_master = { 0, PHM_MasterTableFlag_None, cz_disable_dpm_list }; -static struct phm_master_table_item cz_enable_dpm_list[] = { +static const struct phm_master_table_item cz_enable_dpm_list[] = { { NULL, cz_tf_check_for_dpm_disabled }, { NULL, cz_tf_program_voting_clients }, { NULL, cz_tf_start_dpm}, @@ -1117,7 +1117,7 @@ static struct phm_master_table_item cz_enable_dpm_list[] = { {NULL, NULL}, }; -static struct phm_master_table_header cz_enable_dpm_master = { +static const struct phm_master_table_header cz_enable_dpm_master = { 0, PHM_MasterTableFlag_None, cz_enable_dpm_list @@ -1729,7 +1729,7 @@ static int cz_get_dal_power_level(struct pp_hwmgr *hwmgr, } static int cz_force_clock_level(struct pp_hwmgr *hwmgr, - enum pp_clock_type type, int level) + enum pp_clock_type type, uint32_t mask) { if (hwmgr->dpm_level != AMD_DPM_FORCED_LEVEL_MANUAL) return -EINVAL; @@ -1738,10 +1738,10 @@ static int cz_force_clock_level(struct pp_hwmgr *hwmgr, case PP_SCLK: smum_send_msg_to_smc_with_parameter(hwmgr->smumgr, PPSMC_MSG_SetSclkSoftMin, - (1 << level)); + mask); smum_send_msg_to_smc_with_parameter(hwmgr->smumgr, PPSMC_MSG_SetSclkSoftMax, - (1 << level)); + mask); break; default: break; |