diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu.h | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/cik.c | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 8 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gmc_v7_0.h | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 8 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gmc_v8_0.h | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/vi.c | 1 |
7 files changed, 8 insertions, 19 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h index 80d9932d86fb..dcda843468e3 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h | |||
@@ -1827,8 +1827,6 @@ struct amdgpu_asic_funcs { | |||
1827 | u32 sh_num, u32 reg_offset, u32 *value); | 1827 | u32 sh_num, u32 reg_offset, u32 *value); |
1828 | void (*set_vga_state)(struct amdgpu_device *adev, bool state); | 1828 | void (*set_vga_state)(struct amdgpu_device *adev, bool state); |
1829 | int (*reset)(struct amdgpu_device *adev); | 1829 | int (*reset)(struct amdgpu_device *adev); |
1830 | /* wait for mc_idle */ | ||
1831 | int (*wait_for_mc_idle)(struct amdgpu_device *adev); | ||
1832 | /* get the reference clock */ | 1830 | /* get the reference clock */ |
1833 | u32 (*get_xclk)(struct amdgpu_device *adev); | 1831 | u32 (*get_xclk)(struct amdgpu_device *adev); |
1834 | /* get the gpu clock counter */ | 1832 | /* get the gpu clock counter */ |
@@ -2223,7 +2221,6 @@ amdgpu_get_sdma_instance(struct amdgpu_ring *ring) | |||
2223 | */ | 2221 | */ |
2224 | #define amdgpu_asic_set_vga_state(adev, state) (adev)->asic_funcs->set_vga_state((adev), (state)) | 2222 | #define amdgpu_asic_set_vga_state(adev, state) (adev)->asic_funcs->set_vga_state((adev), (state)) |
2225 | #define amdgpu_asic_reset(adev) (adev)->asic_funcs->reset((adev)) | 2223 | #define amdgpu_asic_reset(adev) (adev)->asic_funcs->reset((adev)) |
2226 | #define amdgpu_asic_wait_for_mc_idle(adev) (adev)->asic_funcs->wait_for_mc_idle((adev)) | ||
2227 | #define amdgpu_asic_get_xclk(adev) (adev)->asic_funcs->get_xclk((adev)) | 2224 | #define amdgpu_asic_get_xclk(adev) (adev)->asic_funcs->get_xclk((adev)) |
2228 | #define amdgpu_asic_set_uvd_clocks(adev, v, d) (adev)->asic_funcs->set_uvd_clocks((adev), (v), (d)) | 2225 | #define amdgpu_asic_set_uvd_clocks(adev, v, d) (adev)->asic_funcs->set_uvd_clocks((adev), (v), (d)) |
2229 | #define amdgpu_asic_set_vce_clocks(adev, ev, ec) (adev)->asic_funcs->set_vce_clocks((adev), (ev), (ec)) | 2226 | #define amdgpu_asic_set_vce_clocks(adev, ev, ec) (adev)->asic_funcs->set_vce_clocks((adev), (ev), (ec)) |
diff --git a/drivers/gpu/drm/amd/amdgpu/cik.c b/drivers/gpu/drm/amd/amdgpu/cik.c index 4c80338992ad..c90bfeec3048 100644 --- a/drivers/gpu/drm/amd/amdgpu/cik.c +++ b/drivers/gpu/drm/amd/amdgpu/cik.c | |||
@@ -2024,7 +2024,6 @@ static const struct amdgpu_asic_funcs cik_asic_funcs = | |||
2024 | .get_virtual_caps = &cik_get_virtual_caps, | 2024 | .get_virtual_caps = &cik_get_virtual_caps, |
2025 | /* these should be moved to their own ip modules */ | 2025 | /* these should be moved to their own ip modules */ |
2026 | .get_gpu_clock_counter = &gfx_v7_0_get_gpu_clock_counter, | 2026 | .get_gpu_clock_counter = &gfx_v7_0_get_gpu_clock_counter, |
2027 | .wait_for_mc_idle = &gmc_v7_0_mc_wait_for_idle, | ||
2028 | }; | 2027 | }; |
2029 | 2028 | ||
2030 | static int cik_common_early_init(void *handle) | 2029 | static int cik_common_early_init(void *handle) |
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c index 3b32c08faec9..eb4a7b8f3742 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | |||
@@ -82,7 +82,7 @@ static void gmc_v7_0_init_golden_registers(struct amdgpu_device *adev) | |||
82 | * (evergreen+). | 82 | * (evergreen+). |
83 | * Returns 0 if the MC is idle, -1 if not. | 83 | * Returns 0 if the MC is idle, -1 if not. |
84 | */ | 84 | */ |
85 | int gmc_v7_0_mc_wait_for_idle(struct amdgpu_device *adev) | 85 | static int gmc_v7_0_mc_wait_for_idle(struct amdgpu_device *adev) |
86 | { | 86 | { |
87 | unsigned i; | 87 | unsigned i; |
88 | u32 tmp; | 88 | u32 tmp; |
@@ -105,7 +105,7 @@ static void gmc_v7_0_mc_stop(struct amdgpu_device *adev, | |||
105 | if (adev->mode_info.num_crtc) | 105 | if (adev->mode_info.num_crtc) |
106 | amdgpu_display_stop_mc_access(adev, save); | 106 | amdgpu_display_stop_mc_access(adev, save); |
107 | 107 | ||
108 | amdgpu_asic_wait_for_mc_idle(adev); | 108 | gmc_v7_0_mc_wait_for_idle(adev); |
109 | 109 | ||
110 | blackout = RREG32(mmMC_SHARED_BLACKOUT_CNTL); | 110 | blackout = RREG32(mmMC_SHARED_BLACKOUT_CNTL); |
111 | if (REG_GET_FIELD(blackout, MC_SHARED_BLACKOUT_CNTL, BLACKOUT_MODE) != 1) { | 111 | if (REG_GET_FIELD(blackout, MC_SHARED_BLACKOUT_CNTL, BLACKOUT_MODE) != 1) { |
@@ -311,7 +311,7 @@ static void gmc_v7_0_mc_program(struct amdgpu_device *adev) | |||
311 | amdgpu_display_set_vga_render_state(adev, false); | 311 | amdgpu_display_set_vga_render_state(adev, false); |
312 | 312 | ||
313 | gmc_v7_0_mc_stop(adev, &save); | 313 | gmc_v7_0_mc_stop(adev, &save); |
314 | if (amdgpu_asic_wait_for_mc_idle(adev)) { | 314 | if (gmc_v7_0_mc_wait_for_idle(adev)) { |
315 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); | 315 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); |
316 | } | 316 | } |
317 | /* Update configuration */ | 317 | /* Update configuration */ |
@@ -331,7 +331,7 @@ static void gmc_v7_0_mc_program(struct amdgpu_device *adev) | |||
331 | WREG32(mmMC_VM_AGP_BASE, 0); | 331 | WREG32(mmMC_VM_AGP_BASE, 0); |
332 | WREG32(mmMC_VM_AGP_TOP, 0x0FFFFFFF); | 332 | WREG32(mmMC_VM_AGP_TOP, 0x0FFFFFFF); |
333 | WREG32(mmMC_VM_AGP_BOT, 0x0FFFFFFF); | 333 | WREG32(mmMC_VM_AGP_BOT, 0x0FFFFFFF); |
334 | if (amdgpu_asic_wait_for_mc_idle(adev)) { | 334 | if (gmc_v7_0_mc_wait_for_idle(adev)) { |
335 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); | 335 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); |
336 | } | 336 | } |
337 | gmc_v7_0_mc_resume(adev, &save); | 337 | gmc_v7_0_mc_resume(adev, &save); |
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.h b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.h index 998fb021fb76..0b386b5d2f7a 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.h +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.h | |||
@@ -26,7 +26,4 @@ | |||
26 | 26 | ||
27 | extern const struct amd_ip_funcs gmc_v7_0_ip_funcs; | 27 | extern const struct amd_ip_funcs gmc_v7_0_ip_funcs; |
28 | 28 | ||
29 | /* XXX these shouldn't be exported */ | ||
30 | int gmc_v7_0_mc_wait_for_idle(struct amdgpu_device *adev); | ||
31 | |||
32 | #endif | 29 | #endif |
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c index ba51e18f04b0..e243e3a784e5 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | |||
@@ -156,7 +156,7 @@ static void gmc_v8_0_init_golden_registers(struct amdgpu_device *adev) | |||
156 | * (evergreen+). | 156 | * (evergreen+). |
157 | * Returns 0 if the MC is idle, -1 if not. | 157 | * Returns 0 if the MC is idle, -1 if not. |
158 | */ | 158 | */ |
159 | int gmc_v8_0_mc_wait_for_idle(struct amdgpu_device *adev) | 159 | static int gmc_v8_0_mc_wait_for_idle(struct amdgpu_device *adev) |
160 | { | 160 | { |
161 | unsigned i; | 161 | unsigned i; |
162 | u32 tmp; | 162 | u32 tmp; |
@@ -184,7 +184,7 @@ static void gmc_v8_0_mc_stop(struct amdgpu_device *adev, | |||
184 | if (adev->mode_info.num_crtc) | 184 | if (adev->mode_info.num_crtc) |
185 | amdgpu_display_stop_mc_access(adev, save); | 185 | amdgpu_display_stop_mc_access(adev, save); |
186 | 186 | ||
187 | amdgpu_asic_wait_for_mc_idle(adev); | 187 | gmc_v8_0_mc_wait_for_idle(adev); |
188 | 188 | ||
189 | blackout = RREG32(mmMC_SHARED_BLACKOUT_CNTL); | 189 | blackout = RREG32(mmMC_SHARED_BLACKOUT_CNTL); |
190 | if (REG_GET_FIELD(blackout, MC_SHARED_BLACKOUT_CNTL, BLACKOUT_MODE) != 1) { | 190 | if (REG_GET_FIELD(blackout, MC_SHARED_BLACKOUT_CNTL, BLACKOUT_MODE) != 1) { |
@@ -393,7 +393,7 @@ static void gmc_v8_0_mc_program(struct amdgpu_device *adev) | |||
393 | amdgpu_display_set_vga_render_state(adev, false); | 393 | amdgpu_display_set_vga_render_state(adev, false); |
394 | 394 | ||
395 | gmc_v8_0_mc_stop(adev, &save); | 395 | gmc_v8_0_mc_stop(adev, &save); |
396 | if (amdgpu_asic_wait_for_mc_idle(adev)) { | 396 | if (gmc_v8_0_mc_wait_for_idle(adev)) { |
397 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); | 397 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); |
398 | } | 398 | } |
399 | /* Update configuration */ | 399 | /* Update configuration */ |
@@ -413,7 +413,7 @@ static void gmc_v8_0_mc_program(struct amdgpu_device *adev) | |||
413 | WREG32(mmMC_VM_AGP_BASE, 0); | 413 | WREG32(mmMC_VM_AGP_BASE, 0); |
414 | WREG32(mmMC_VM_AGP_TOP, 0x0FFFFFFF); | 414 | WREG32(mmMC_VM_AGP_TOP, 0x0FFFFFFF); |
415 | WREG32(mmMC_VM_AGP_BOT, 0x0FFFFFFF); | 415 | WREG32(mmMC_VM_AGP_BOT, 0x0FFFFFFF); |
416 | if (amdgpu_asic_wait_for_mc_idle(adev)) { | 416 | if (gmc_v8_0_mc_wait_for_idle(adev)) { |
417 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); | 417 | dev_warn(adev->dev, "Wait for MC idle timedout !\n"); |
418 | } | 418 | } |
419 | gmc_v8_0_mc_resume(adev, &save); | 419 | gmc_v8_0_mc_resume(adev, &save); |
diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.h b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.h index 94fdaeb382d4..fc5001a8119d 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.h +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.h | |||
@@ -26,7 +26,4 @@ | |||
26 | 26 | ||
27 | extern const struct amd_ip_funcs gmc_v8_0_ip_funcs; | 27 | extern const struct amd_ip_funcs gmc_v8_0_ip_funcs; |
28 | 28 | ||
29 | /* XXX these shouldn't be exported */ | ||
30 | int gmc_v8_0_mc_wait_for_idle(struct amdgpu_device *adev); | ||
31 | |||
32 | #endif | 29 | #endif |
diff --git a/drivers/gpu/drm/amd/amdgpu/vi.c b/drivers/gpu/drm/amd/amdgpu/vi.c index e05e722ef6c7..168780b381a3 100644 --- a/drivers/gpu/drm/amd/amdgpu/vi.c +++ b/drivers/gpu/drm/amd/amdgpu/vi.c | |||
@@ -1140,7 +1140,6 @@ static const struct amdgpu_asic_funcs vi_asic_funcs = | |||
1140 | .get_virtual_caps = &vi_get_virtual_caps, | 1140 | .get_virtual_caps = &vi_get_virtual_caps, |
1141 | /* these should be moved to their own ip modules */ | 1141 | /* these should be moved to their own ip modules */ |
1142 | .get_gpu_clock_counter = &gfx_v8_0_get_gpu_clock_counter, | 1142 | .get_gpu_clock_counter = &gfx_v8_0_get_gpu_clock_counter, |
1143 | .wait_for_mc_idle = &gmc_v8_0_mc_wait_for_idle, | ||
1144 | }; | 1143 | }; |
1145 | 1144 | ||
1146 | static int vi_common_early_init(void *handle) | 1145 | static int vi_common_early_init(void *handle) |