drm/amdgpu: remove unused display_vblank_wait interface
authorAlex Deucher <alexander.deucher@amd.com>
Fri, 2 Feb 2018 17:31:27 +0000 (12:31 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 19 Feb 2018 19:19:19 +0000 (14:19 -0500)
No longer used since we changed the MC programming sequence.

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu.h
drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h
drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
drivers/gpu/drm/amd/amdgpu/dce_virtual.c
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index 36ac07aee0eba50aaf28540b66e978ad4409718c..276c4ad1cb6e15826818596a4e060e92960cf14d 100644 (file)
@@ -1804,7 +1804,6 @@ amdgpu_get_sdma_instance(struct amdgpu_ring *ring)
 #define amdgpu_ih_decode_iv(adev, iv) (adev)->irq.ih_funcs->decode_iv((adev), (iv))
 #define amdgpu_ih_set_rptr(adev) (adev)->irq.ih_funcs->set_rptr((adev))
 #define amdgpu_display_vblank_get_counter(adev, crtc) (adev)->mode_info.funcs->vblank_get_counter((adev), (crtc))
-#define amdgpu_display_vblank_wait(adev, crtc) (adev)->mode_info.funcs->vblank_wait((adev), (crtc))
 #define amdgpu_display_backlight_set_level(adev, e, l) (adev)->mode_info.funcs->backlight_set_level((e), (l))
 #define amdgpu_display_backlight_get_level(adev, e) (adev)->mode_info.funcs->backlight_get_level((e))
 #define amdgpu_display_hpd_sense(adev, h) (adev)->mode_info.funcs->hpd_sense((adev), (h))
index ea1bd75bef35471193dd2f3e39bf8fc8674be4e2..d9533bbc467cca304a97d2d4595494bda77d457e 100644 (file)
@@ -267,8 +267,6 @@ struct amdgpu_display_funcs {
        void (*bandwidth_update)(struct amdgpu_device *adev);
        /* get frame count */
        u32 (*vblank_get_counter)(struct amdgpu_device *adev, int crtc);
-       /* wait for vblank */
-       void (*vblank_wait)(struct amdgpu_device *adev, int crtc);
        /* set backlight level */
        void (*backlight_set_level)(struct amdgpu_encoder *amdgpu_encoder,
                                    u8 level);
index 8161b6579715769587618658aaf63e9581889d2e..7ea900010702caaf43aa1b57ba0bb9ab263d8c06 100644 (file)
@@ -190,66 +190,6 @@ static void dce_v10_0_audio_endpt_wreg(struct amdgpu_device *adev,
        spin_unlock_irqrestore(&adev->audio_endpt_idx_lock, flags);
 }
 
-static bool dce_v10_0_is_in_vblank(struct amdgpu_device *adev, int crtc)
-{
-       if (RREG32(mmCRTC_STATUS + crtc_offsets[crtc]) &
-           CRTC_STATUS__CRTC_V_BLANK_MASK)
-               return true;
-       else
-               return false;
-}
-
-static bool dce_v10_0_is_counter_moving(struct amdgpu_device *adev, int crtc)
-{
-       u32 pos1, pos2;
-
-       pos1 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-       pos2 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-
-       if (pos1 != pos2)
-               return true;
-       else
-               return false;
-}
-
-/**
- * dce_v10_0_vblank_wait - vblank wait asic callback.
- *
- * @adev: amdgpu_device pointer
- * @crtc: crtc to wait for vblank on
- *
- * Wait for vblank on the requested crtc (evergreen+).
- */
-static void dce_v10_0_vblank_wait(struct amdgpu_device *adev, int crtc)
-{
-       unsigned i = 100;
-
-       if (crtc >= adev->mode_info.num_crtc)
-               return;
-
-       if (!(RREG32(mmCRTC_CONTROL + crtc_offsets[crtc]) & CRTC_CONTROL__CRTC_MASTER_EN_MASK))
-               return;
-
-       /* depending on when we hit vblank, we may be close to active; if so,
-        * wait for another frame.
-        */
-       while (dce_v10_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v10_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-
-       while (!dce_v10_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v10_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-}
-
 static u32 dce_v10_0_vblank_get_counter(struct amdgpu_device *adev, int crtc)
 {
        if (crtc >= adev->mode_info.num_crtc)
@@ -3602,7 +3542,6 @@ static void dce_v10_0_encoder_add(struct amdgpu_device *adev,
 static const struct amdgpu_display_funcs dce_v10_0_display_funcs = {
        .bandwidth_update = &dce_v10_0_bandwidth_update,
        .vblank_get_counter = &dce_v10_0_vblank_get_counter,
-       .vblank_wait = &dce_v10_0_vblank_wait,
        .backlight_set_level = &amdgpu_atombios_encoder_set_backlight_level,
        .backlight_get_level = &amdgpu_atombios_encoder_get_backlight_level,
        .hpd_sense = &dce_v10_0_hpd_sense,
index 00b3df2812073d8401096dea618c34d048c9360e..158b92ea435fd7d61330e7195011c752202128b7 100644 (file)
@@ -207,66 +207,6 @@ static void dce_v11_0_audio_endpt_wreg(struct amdgpu_device *adev,
        spin_unlock_irqrestore(&adev->audio_endpt_idx_lock, flags);
 }
 
-static bool dce_v11_0_is_in_vblank(struct amdgpu_device *adev, int crtc)
-{
-       if (RREG32(mmCRTC_STATUS + crtc_offsets[crtc]) &
-           CRTC_STATUS__CRTC_V_BLANK_MASK)
-               return true;
-       else
-               return false;
-}
-
-static bool dce_v11_0_is_counter_moving(struct amdgpu_device *adev, int crtc)
-{
-       u32 pos1, pos2;
-
-       pos1 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-       pos2 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-
-       if (pos1 != pos2)
-               return true;
-       else
-               return false;
-}
-
-/**
- * dce_v11_0_vblank_wait - vblank wait asic callback.
- *
- * @adev: amdgpu_device pointer
- * @crtc: crtc to wait for vblank on
- *
- * Wait for vblank on the requested crtc (evergreen+).
- */
-static void dce_v11_0_vblank_wait(struct amdgpu_device *adev, int crtc)
-{
-       unsigned i = 100;
-
-       if (crtc < 0 || crtc >= adev->mode_info.num_crtc)
-               return;
-
-       if (!(RREG32(mmCRTC_CONTROL + crtc_offsets[crtc]) & CRTC_CONTROL__CRTC_MASTER_EN_MASK))
-               return;
-
-       /* depending on when we hit vblank, we may be close to active; if so,
-        * wait for another frame.
-        */
-       while (dce_v11_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v11_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-
-       while (!dce_v11_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v11_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-}
-
 static u32 dce_v11_0_vblank_get_counter(struct amdgpu_device *adev, int crtc)
 {
        if (crtc < 0 || crtc >= adev->mode_info.num_crtc)
@@ -3727,7 +3667,6 @@ static void dce_v11_0_encoder_add(struct amdgpu_device *adev,
 static const struct amdgpu_display_funcs dce_v11_0_display_funcs = {
        .bandwidth_update = &dce_v11_0_bandwidth_update,
        .vblank_get_counter = &dce_v11_0_vblank_get_counter,
-       .vblank_wait = &dce_v11_0_vblank_wait,
        .backlight_set_level = &amdgpu_atombios_encoder_set_backlight_level,
        .backlight_get_level = &amdgpu_atombios_encoder_get_backlight_level,
        .hpd_sense = &dce_v11_0_hpd_sense,
index 24de4aaacf2eb478bbd2164430a50f06a3e13954..03f19363f8f664c253ab193b6c6a105c86ed8b0d 100644 (file)
@@ -142,64 +142,6 @@ static void dce_v6_0_audio_endpt_wreg(struct amdgpu_device *adev,
        spin_unlock_irqrestore(&adev->audio_endpt_idx_lock, flags);
 }
 
-static bool dce_v6_0_is_in_vblank(struct amdgpu_device *adev, int crtc)
-{
-       if (RREG32(mmCRTC_STATUS + crtc_offsets[crtc]) & CRTC_STATUS__CRTC_V_BLANK_MASK)
-               return true;
-       else
-               return false;
-}
-
-static bool dce_v6_0_is_counter_moving(struct amdgpu_device *adev, int crtc)
-{
-       u32 pos1, pos2;
-
-       pos1 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-       pos2 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-
-       if (pos1 != pos2)
-               return true;
-       else
-               return false;
-}
-
-/**
- * dce_v6_0_wait_for_vblank - vblank wait asic callback.
- *
- * @crtc: crtc to wait for vblank on
- *
- * Wait for vblank on the requested crtc (evergreen+).
- */
-static void dce_v6_0_vblank_wait(struct amdgpu_device *adev, int crtc)
-{
-       unsigned i = 100;
-
-       if (crtc >= adev->mode_info.num_crtc)
-               return;
-
-       if (!(RREG32(mmCRTC_CONTROL + crtc_offsets[crtc]) & CRTC_CONTROL__CRTC_MASTER_EN_MASK))
-               return;
-
-       /* depending on when we hit vblank, we may be close to active; if so,
-        * wait for another frame.
-        */
-       while (dce_v6_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v6_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-
-       while (!dce_v6_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v6_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-}
-
 static u32 dce_v6_0_vblank_get_counter(struct amdgpu_device *adev, int crtc)
 {
        if (crtc >= adev->mode_info.num_crtc)
@@ -3409,7 +3351,6 @@ static void dce_v6_0_encoder_add(struct amdgpu_device *adev,
 static const struct amdgpu_display_funcs dce_v6_0_display_funcs = {
        .bandwidth_update = &dce_v6_0_bandwidth_update,
        .vblank_get_counter = &dce_v6_0_vblank_get_counter,
-       .vblank_wait = &dce_v6_0_vblank_wait,
        .backlight_set_level = &amdgpu_atombios_encoder_set_backlight_level,
        .backlight_get_level = &amdgpu_atombios_encoder_get_backlight_level,
        .hpd_sense = &dce_v6_0_hpd_sense,
index 6fc3e05aadbccecca2ae25e9e2247debcdee2922..8dbe97dff58c658bce77d390596e661a0dc220f1 100644 (file)
@@ -140,66 +140,6 @@ static void dce_v8_0_audio_endpt_wreg(struct amdgpu_device *adev,
        spin_unlock_irqrestore(&adev->audio_endpt_idx_lock, flags);
 }
 
-static bool dce_v8_0_is_in_vblank(struct amdgpu_device *adev, int crtc)
-{
-       if (RREG32(mmCRTC_STATUS + crtc_offsets[crtc]) &
-           CRTC_STATUS__CRTC_V_BLANK_MASK)
-               return true;
-       else
-               return false;
-}
-
-static bool dce_v8_0_is_counter_moving(struct amdgpu_device *adev, int crtc)
-{
-       u32 pos1, pos2;
-
-       pos1 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-       pos2 = RREG32(mmCRTC_STATUS_POSITION + crtc_offsets[crtc]);
-
-       if (pos1 != pos2)
-               return true;
-       else
-               return false;
-}
-
-/**
- * dce_v8_0_vblank_wait - vblank wait asic callback.
- *
- * @adev: amdgpu_device pointer
- * @crtc: crtc to wait for vblank on
- *
- * Wait for vblank on the requested crtc (evergreen+).
- */
-static void dce_v8_0_vblank_wait(struct amdgpu_device *adev, int crtc)
-{
-       unsigned i = 100;
-
-       if (crtc >= adev->mode_info.num_crtc)
-               return;
-
-       if (!(RREG32(mmCRTC_CONTROL + crtc_offsets[crtc]) & CRTC_CONTROL__CRTC_MASTER_EN_MASK))
-               return;
-
-       /* depending on when we hit vblank, we may be close to active; if so,
-        * wait for another frame.
-        */
-       while (dce_v8_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v8_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-
-       while (!dce_v8_0_is_in_vblank(adev, crtc)) {
-               if (i++ == 100) {
-                       i = 0;
-                       if (!dce_v8_0_is_counter_moving(adev, crtc))
-                               break;
-               }
-       }
-}
-
 static u32 dce_v8_0_vblank_get_counter(struct amdgpu_device *adev, int crtc)
 {
        if (crtc >= adev->mode_info.num_crtc)
@@ -3493,7 +3433,6 @@ static void dce_v8_0_encoder_add(struct amdgpu_device *adev,
 static const struct amdgpu_display_funcs dce_v8_0_display_funcs = {
        .bandwidth_update = &dce_v8_0_bandwidth_update,
        .vblank_get_counter = &dce_v8_0_vblank_get_counter,
-       .vblank_wait = &dce_v8_0_vblank_wait,
        .backlight_set_level = &amdgpu_atombios_encoder_set_backlight_level,
        .backlight_get_level = &amdgpu_atombios_encoder_get_backlight_level,
        .hpd_sense = &dce_v8_0_hpd_sense,
index 3d6cb0cc2b1d63f236f990dc97b4376d94e5e949..8201a0929ca26ad9adaf7f6b6b2094b915a2fee3 100644 (file)
@@ -48,19 +48,6 @@ static void dce_virtual_set_crtc_vblank_interrupt_state(struct amdgpu_device *ad
                                                        int crtc,
                                                        enum amdgpu_interrupt_state state);
 
-/**
- * dce_virtual_vblank_wait - vblank wait asic callback.
- *
- * @adev: amdgpu_device pointer
- * @crtc: crtc to wait for vblank on
- *
- * Wait for vblank on the requested crtc (evergreen+).
- */
-static void dce_virtual_vblank_wait(struct amdgpu_device *adev, int crtc)
-{
-       return;
-}
-
 static u32 dce_virtual_vblank_get_counter(struct amdgpu_device *adev, int crtc)
 {
        return 0;
@@ -654,7 +641,6 @@ static int dce_virtual_connector_encoder_init(struct amdgpu_device *adev,
 static const struct amdgpu_display_funcs dce_virtual_display_funcs = {
        .bandwidth_update = &dce_virtual_bandwidth_update,
        .vblank_get_counter = &dce_virtual_vblank_get_counter,
-       .vblank_wait = &dce_virtual_vblank_wait,
        .backlight_set_level = NULL,
        .backlight_get_level = NULL,
        .hpd_sense = &dce_virtual_hpd_sense,
index ad49c335c8d9f9258ff83ca96b0756a0324a0b14..5928d9f0e4ef9556ec3143439eaa6ce76026e591 100644 (file)
@@ -1568,7 +1568,6 @@ static int amdgpu_notify_freesync(struct drm_device *dev, void *data,
 static const struct amdgpu_display_funcs dm_display_funcs = {
        .bandwidth_update = dm_bandwidth_update, /* called unconditionally */
        .vblank_get_counter = dm_vblank_get_counter,/* called unconditionally */
-       .vblank_wait = NULL,
        .backlight_set_level =
                dm_set_backlight_level,/* called unconditionally */
        .backlight_get_level =