Commit 2d02893f authored by shaoyunl's avatar shaoyunl Committed by Alex Deucher
Browse files

drm/amdgpu: Enable light SBR in XGMI+passthrough configuration



This is to fix the case where it only enable the light SMU
on normal device init. This feature actually need to be enabled after ASIC
been reset as well.

Signed-off-by: default avatarshaoyunl <shaoyun.liu@amd.com>
Reviewed-by: default avatarHawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 51ba6912
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -2470,6 +2470,11 @@ static int amdgpu_device_ip_late_init(struct amdgpu_device *adev)
	if (r)
		DRM_ERROR("enable mgpu fan boost failed (%d).\n", r);

	/* For XGMI + passthrough configuration on arcturus, enable light SBR */
	if (adev->asic_type == CHIP_ARCTURUS &&
	    amdgpu_passthrough(adev) &&
	    adev->gmc.xgmi.num_physical_nodes > 1)
		smu_set_light_sbr(&adev->smu, true);

	if (adev->gmc.xgmi.num_physical_nodes > 1) {
		mutex_lock(&mgpu_info.mutex);
@@ -3560,10 +3565,6 @@ int amdgpu_device_init(struct amdgpu_device *adev,
	if (amdgpu_device_cache_pci_state(adev->pdev))
		pci_restore_state(pdev);

	/* Enable lightSBR on SMU in passthrough + xgmi configuration */
	if (amdgpu_passthrough(adev) && adev->gmc.xgmi.num_physical_nodes > 1)
		smu_set_light_sbr(&adev->smu, true);

	if (adev->gmc.xgmi.pending_reset)
		queue_delayed_work(system_wq, &mgpu_info.delayed_reset_work,
				   msecs_to_jiffies(AMDGPU_RESUME_MS));