amd-drm-fixes-6.14-2025-01-29:
amdgpu: - GC 12 fix - Aldebaran fix - DCN 3.5 fix - Freesync fix amdkfd: - Per queue reset fix - MES fix -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQQgO5Idg2tXNTSZAr293/aFa7yZ2AUCZ5qcgwAKCRC93/aFa7yZ 2GHEAP4qGRwRRm/XzGsT7t4IC6l1ALia3IycCpm8BusDpLIVlAD9HSSpKswHtNou Zjz7N/t791BIeS/cz36ICNqYCmgQ2wY= =1Q5i -----END PGP SIGNATURE----- Merge tag 'amd-drm-fixes-6.14-2025-01-29' of https://gitlab.freedesktop.org/agd5f/linux into drm-next amd-drm-fixes-6.14-2025-01-29: amdgpu: - GC 12 fix - Aldebaran fix - DCN 3.5 fix - Freesync fix amdkfd: - Per queue reset fix - MES fix Signed-off-by: Dave Airlie <airlied@redhat.com> From: Alex Deucher <alexander.deucher@amd.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250129213037.3966625-1-alexander.deucher@amd.com
This commit is contained in:
commit
8dcb26b493
|
@ -4021,17 +4021,6 @@ static void gfx_v12_0_update_coarse_grain_clock_gating(struct amdgpu_device *ade
|
|||
|
||||
if (def != data)
|
||||
WREG32_SOC15(GC, 0, regRLC_CGCG_CGLS_CTRL_3D, data);
|
||||
|
||||
data = RREG32_SOC15(GC, 0, regSDMA0_RLC_CGCG_CTRL);
|
||||
data &= ~SDMA0_RLC_CGCG_CTRL__CGCG_INT_ENABLE_MASK;
|
||||
WREG32_SOC15(GC, 0, regSDMA0_RLC_CGCG_CTRL, data);
|
||||
|
||||
/* Some ASICs only have one SDMA instance, not need to configure SDMA1 */
|
||||
if (adev->sdma.num_instances > 1) {
|
||||
data = RREG32_SOC15(GC, 0, regSDMA1_RLC_CGCG_CTRL);
|
||||
data &= ~SDMA1_RLC_CGCG_CTRL__CGCG_INT_ENABLE_MASK;
|
||||
WREG32_SOC15(GC, 0, regSDMA1_RLC_CGCG_CTRL, data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -2325,9 +2325,9 @@ static int unmap_queues_cpsch(struct device_queue_manager *dqm,
|
|||
*/
|
||||
mqd_mgr = dqm->mqd_mgrs[KFD_MQD_TYPE_HIQ];
|
||||
if (mqd_mgr->check_preemption_failed(mqd_mgr, dqm->packet_mgr.priv_queue->queue->mqd)) {
|
||||
while (halt_if_hws_hang)
|
||||
schedule();
|
||||
if (reset_queues_on_hws_hang(dqm)) {
|
||||
while (halt_if_hws_hang)
|
||||
schedule();
|
||||
dqm->is_hws_hang = true;
|
||||
kfd_hws_hang(dqm);
|
||||
retval = -ETIME;
|
||||
|
|
|
@ -86,9 +86,12 @@ void kfd_process_dequeue_from_device(struct kfd_process_device *pdd)
|
|||
|
||||
if (pdd->already_dequeued)
|
||||
return;
|
||||
|
||||
/* The MES context flush needs to filter out the case which the
|
||||
* KFD process is created without setting up the MES context and
|
||||
* queue for creating a compute queue.
|
||||
*/
|
||||
dev->dqm->ops.process_termination(dev->dqm, &pdd->qpd);
|
||||
if (dev->kfd->shared_resources.enable_mes &&
|
||||
if (dev->kfd->shared_resources.enable_mes && !!pdd->proc_ctx_gpu_addr &&
|
||||
down_read_trylock(&dev->adev->reset_domain->sem)) {
|
||||
amdgpu_mes_flush_shader_debugger(dev->adev,
|
||||
pdd->proc_ctx_gpu_addr);
|
||||
|
|
|
@ -12326,10 +12326,14 @@ void amdgpu_dm_update_freesync_caps(struct drm_connector *connector,
|
|||
|
||||
if (edid && (sink->sink_signal == SIGNAL_TYPE_DISPLAY_PORT ||
|
||||
sink->sink_signal == SIGNAL_TYPE_EDP)) {
|
||||
amdgpu_dm_connector->min_vfreq = connector->display_info.monitor_range.min_vfreq;
|
||||
amdgpu_dm_connector->max_vfreq = connector->display_info.monitor_range.max_vfreq;
|
||||
if (amdgpu_dm_connector->max_vfreq - amdgpu_dm_connector->min_vfreq > 10)
|
||||
freesync_capable = true;
|
||||
if (amdgpu_dm_connector->dc_link &&
|
||||
amdgpu_dm_connector->dc_link->dpcd_caps.allow_invalid_MSA_timing_param) {
|
||||
amdgpu_dm_connector->min_vfreq = connector->display_info.monitor_range.min_vfreq;
|
||||
amdgpu_dm_connector->max_vfreq = connector->display_info.monitor_range.max_vfreq;
|
||||
if (amdgpu_dm_connector->max_vfreq - amdgpu_dm_connector->min_vfreq > 10)
|
||||
freesync_capable = true;
|
||||
}
|
||||
|
||||
parse_amd_vsdb(amdgpu_dm_connector, edid, &vsdb_info);
|
||||
|
||||
if (vsdb_info.replay_mode) {
|
||||
|
|
|
@ -89,7 +89,7 @@
|
|||
#define mmCLK1_CLK4_ALLOW_DS 0x16EA8
|
||||
#define mmCLK1_CLK5_ALLOW_DS 0x16EB1
|
||||
|
||||
#define mmCLK5_spll_field_8 0x1B04B
|
||||
#define mmCLK5_spll_field_8 0x1B24B
|
||||
#define mmDENTIST_DISPCLK_CNTL 0x0124
|
||||
#define regDENTIST_DISPCLK_CNTL 0x0064
|
||||
#define regDENTIST_DISPCLK_CNTL_BASE_IDX 1
|
||||
|
|
|
@ -1732,7 +1732,6 @@ static ssize_t aldebaran_get_gpu_metrics(struct smu_context *smu,
|
|||
|
||||
gpu_metrics->average_gfx_activity = metrics.AverageGfxActivity;
|
||||
gpu_metrics->average_umc_activity = metrics.AverageUclkActivity;
|
||||
gpu_metrics->average_mm_activity = 0;
|
||||
|
||||
/* Valid power data is available only from primary die */
|
||||
if (aldebaran_is_primary(smu)) {
|
||||
|
|
Loading…
Reference in New Issue