drm/amdgpu: Fix none-powerplay issue when load driver on emulation mode
authorShaoyun Liu <Shaoyun.Liu@amd.com>
Mon, 5 Feb 2018 21:41:33 +0000 (16:41 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 19 Feb 2018 19:19:47 +0000 (14:19 -0500)
On emulation mode , driver will be loaded with powerplay disabled

Signed-off-by: Shaoyun Liu <Shaoyun.Liu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

index dced1d0b73e702be95af2b98f02d606d77268c67..450426dbed92104ad7296d26274e59166e7eb1b9 100644 (file)
@@ -298,6 +298,11 @@ void get_local_mem_info(struct kgd_dev *kgd,
                        mem_info->local_mem_size_public,
                        mem_info->local_mem_size_private);
 
+       if (amdgpu_emu_mode == 1) {
+               mem_info->mem_clk_max = 100;
+               return;
+       }
+
        if (amdgpu_sriov_vf(adev))
                mem_info->mem_clk_max = adev->clock.default_mclk / 100;
        else
@@ -318,6 +323,9 @@ uint32_t get_max_engine_clock_in_mhz(struct kgd_dev *kgd)
        struct amdgpu_device *adev = (struct amdgpu_device *)kgd;
 
        /* the sclk is in quantas of 10kHz */
+       if (amdgpu_emu_mode == 1)
+               return 100;
+
        if (amdgpu_sriov_vf(adev))
                return adev->clock.default_sclk / 100;
 
index 3c0299bad59cb8ae2bedc559526111c25270db57..2aa80672c12ce7a4997b310dba2526eda0621059 100644 (file)
@@ -1391,6 +1391,9 @@ static int amdgpu_device_ip_late_set_cg_state(struct amdgpu_device *adev)
 {
        int i = 0, r;
 
+       if (amdgpu_emu_mode == 1)
+               return 0;
+
        for (i = 0; i < adev->num_ip_blocks; i++) {
                if (!adev->ip_blocks[i].status.valid)
                        continue;