From 048928c678b34792e07cfa4c0917eca3338fd9e8 Mon Sep 17 00:00:00 2001 From: Jay Cornwall Date: Thu, 6 Oct 2016 20:10:12 -0500 Subject: [PATCH 1198/4131] drm/amdkfd: Use software scheduler on Tonga ASIC The CP scheduling path depends on the context save/restore feature for timely runlist dequeue. Tonga ASICs do not support this feature. Instead use the software scheduling path on Tonga. This does not support HQD/VMID oversubscription or SR-IOV virtualization but is otherwise equal in functionality. Signed-off-by: Jay Cornwall --- drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c index d77c1ad..3bc831f 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c @@ -1483,8 +1483,15 @@ struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev) if (!dqm) return NULL; - dqm->sched_policy = (dev->device_info->asic_family == CHIP_HAWAII) ? - KFD_SCHED_POLICY_NO_HWS : sched_policy; + switch (dev->device_info->asic_family) { + case CHIP_HAWAII: + case CHIP_TONGA: + dqm->sched_policy = KFD_SCHED_POLICY_NO_HWS; + break; + default: + dqm->sched_policy = sched_policy; + break; + } dqm->dev = dev; switch (dqm->sched_policy) { -- 2.7.4