diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2015-10-07 23:46:49 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-10-14 16:16:34 -0400 |
commit | a2df42da61109653782949789ffe6c358e5d2685 (patch) | |
tree | 69da5b7c4b42abd536dc9513256f9fc521e174a8 /drivers/gpu/drm/amd | |
parent | 72b400675a900e80a75cad57db6aa726c68ffb3f (diff) |
drm/amdgpu/dce8: Fold set_cursor() into show_cursor()
Port of radeon commit:
8991668ab4e26f985a8485719bce5d6d0623a644
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c index aebfe3cd6c2d..0d2c50d41f54 100644 --- a/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c +++ b/drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | |||
@@ -2411,6 +2411,11 @@ static void dce_v8_0_show_cursor(struct drm_crtc *crtc) | |||
2411 | struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); | 2411 | struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); |
2412 | struct amdgpu_device *adev = crtc->dev->dev_private; | 2412 | struct amdgpu_device *adev = crtc->dev->dev_private; |
2413 | 2413 | ||
2414 | WREG32(mmCUR_SURFACE_ADDRESS_HIGH + amdgpu_crtc->crtc_offset, | ||
2415 | upper_32_bits(amdgpu_crtc->cursor_addr)); | ||
2416 | WREG32(mmCUR_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset, | ||
2417 | lower_32_bits(amdgpu_crtc->cursor_addr)); | ||
2418 | |||
2414 | WREG32_IDX(mmCUR_CONTROL + amdgpu_crtc->crtc_offset, | 2419 | WREG32_IDX(mmCUR_CONTROL + amdgpu_crtc->crtc_offset, |
2415 | CUR_CONTROL__CURSOR_EN_MASK | | 2420 | CUR_CONTROL__CURSOR_EN_MASK | |
2416 | (CURSOR_24_8_PRE_MULT << CUR_CONTROL__CURSOR_MODE__SHIFT) | | 2421 | (CURSOR_24_8_PRE_MULT << CUR_CONTROL__CURSOR_MODE__SHIFT) | |
@@ -2449,17 +2454,6 @@ static int dce_v8_0_cursor_move_locked(struct drm_crtc *crtc, | |||
2449 | return 0; | 2454 | return 0; |
2450 | } | 2455 | } |
2451 | 2456 | ||
2452 | static void dce_v8_0_set_cursor(struct drm_crtc *crtc) | ||
2453 | { | ||
2454 | struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); | ||
2455 | struct amdgpu_device *adev = crtc->dev->dev_private; | ||
2456 | |||
2457 | WREG32(mmCUR_SURFACE_ADDRESS_HIGH + amdgpu_crtc->crtc_offset, | ||
2458 | upper_32_bits(amdgpu_crtc->cursor_addr)); | ||
2459 | WREG32(mmCUR_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset, | ||
2460 | lower_32_bits(amdgpu_crtc->cursor_addr)); | ||
2461 | } | ||
2462 | |||
2463 | static int dce_v8_0_crtc_cursor_move(struct drm_crtc *crtc, | 2457 | static int dce_v8_0_crtc_cursor_move(struct drm_crtc *crtc, |
2464 | int x, int y) | 2458 | int x, int y) |
2465 | { | 2459 | { |
@@ -2537,7 +2531,6 @@ static int dce_v8_0_crtc_cursor_set2(struct drm_crtc *crtc, | |||
2537 | amdgpu_crtc->cursor_hot_y = hot_y; | 2531 | amdgpu_crtc->cursor_hot_y = hot_y; |
2538 | } | 2532 | } |
2539 | 2533 | ||
2540 | dce_v8_0_set_cursor(crtc); | ||
2541 | dce_v8_0_show_cursor(crtc); | 2534 | dce_v8_0_show_cursor(crtc); |
2542 | dce_v8_0_lock_cursor(crtc, false); | 2535 | dce_v8_0_lock_cursor(crtc, false); |
2543 | 2536 | ||
@@ -2566,7 +2559,6 @@ static void dce_v8_0_cursor_reset(struct drm_crtc *crtc) | |||
2566 | dce_v8_0_cursor_move_locked(crtc, amdgpu_crtc->cursor_x, | 2559 | dce_v8_0_cursor_move_locked(crtc, amdgpu_crtc->cursor_x, |
2567 | amdgpu_crtc->cursor_y); | 2560 | amdgpu_crtc->cursor_y); |
2568 | 2561 | ||
2569 | dce_v8_0_set_cursor(crtc); | ||
2570 | dce_v8_0_show_cursor(crtc); | 2562 | dce_v8_0_show_cursor(crtc); |
2571 | 2563 | ||
2572 | dce_v8_0_lock_cursor(crtc, false); | 2564 | dce_v8_0_lock_cursor(crtc, false); |