Revert "drm/amdgpu: Delete user queue doorbell variables"
authorYong Zhao <Yong.Zhao@amd.com>
Tue, 19 Feb 2019 16:21:41 +0000 (11:21 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 19 Feb 2019 20:58:26 +0000 (15:58 -0500)
This reverts commit 9006c6bd9059cb9807fa863bafc1d776222cb61b.

Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell.h
drivers/gpu/drm/amd/amdgpu/vega10_reg_init.c
drivers/gpu/drm/amd/amdgpu/vega20_reg_init.c

index 5587fac..68959b9 100644 (file)
@@ -48,6 +48,8 @@ struct amdgpu_doorbell_index {
        uint32_t mec_ring5;
        uint32_t mec_ring6;
        uint32_t mec_ring7;
+       uint32_t userqueue_start;
+       uint32_t userqueue_end;
        uint32_t gfx_ring0;
        uint32_t sdma_engine[8];
        uint32_t ih;
@@ -111,6 +113,8 @@ typedef enum _AMDGPU_VEGA20_DOORBELL_ASSIGNMENT
        AMDGPU_VEGA20_DOORBELL_MEC_RING5               = 0x008,
        AMDGPU_VEGA20_DOORBELL_MEC_RING6               = 0x009,
        AMDGPU_VEGA20_DOORBELL_MEC_RING7               = 0x00A,
+       AMDGPU_VEGA20_DOORBELL_USERQUEUE_START         = 0x00B,
+       AMDGPU_VEGA20_DOORBELL_USERQUEUE_END           = 0x08A,
        AMDGPU_VEGA20_DOORBELL_GFX_RING0               = 0x08B,
        /* SDMA:256~335*/
        AMDGPU_VEGA20_DOORBELL_sDMA_ENGINE0            = 0x100,
@@ -178,6 +182,10 @@ typedef enum _AMDGPU_DOORBELL64_ASSIGNMENT
        AMDGPU_DOORBELL64_MEC_RING6               = 0x09,
        AMDGPU_DOORBELL64_MEC_RING7               = 0x0a,
 
+       /* User queue doorbell range (128 doorbells) */
+       AMDGPU_DOORBELL64_USERQUEUE_START         = 0x0b,
+       AMDGPU_DOORBELL64_USERQUEUE_END           = 0x8a,
+
        /* Graphics engine */
        AMDGPU_DOORBELL64_GFX_RING0               = 0x8b,
 
index 5e9e531..a8e9263 100644 (file)
@@ -67,6 +67,8 @@ void vega10_doorbell_index_init(struct amdgpu_device *adev)
        adev->doorbell_index.mec_ring5 = AMDGPU_DOORBELL64_MEC_RING5;
        adev->doorbell_index.mec_ring6 = AMDGPU_DOORBELL64_MEC_RING6;
        adev->doorbell_index.mec_ring7 = AMDGPU_DOORBELL64_MEC_RING7;
+       adev->doorbell_index.userqueue_start = AMDGPU_DOORBELL64_USERQUEUE_START;
+       adev->doorbell_index.userqueue_end = AMDGPU_DOORBELL64_USERQUEUE_END;
        adev->doorbell_index.gfx_ring0 = AMDGPU_DOORBELL64_GFX_RING0;
        adev->doorbell_index.sdma_engine[0] = AMDGPU_DOORBELL64_sDMA_ENGINE0;
        adev->doorbell_index.sdma_engine[1] = AMDGPU_DOORBELL64_sDMA_ENGINE1;
index fb6398e..0db8438 100644 (file)
@@ -65,6 +65,8 @@ void vega20_doorbell_index_init(struct amdgpu_device *adev)
        adev->doorbell_index.mec_ring5 = AMDGPU_VEGA20_DOORBELL_MEC_RING5;
        adev->doorbell_index.mec_ring6 = AMDGPU_VEGA20_DOORBELL_MEC_RING6;
        adev->doorbell_index.mec_ring7 = AMDGPU_VEGA20_DOORBELL_MEC_RING7;
+       adev->doorbell_index.userqueue_start = AMDGPU_VEGA20_DOORBELL_USERQUEUE_START;
+       adev->doorbell_index.userqueue_end = AMDGPU_VEGA20_DOORBELL_USERQUEUE_END;
        adev->doorbell_index.gfx_ring0 = AMDGPU_VEGA20_DOORBELL_GFX_RING0;
        adev->doorbell_index.sdma_engine[0] = AMDGPU_VEGA20_DOORBELL_sDMA_ENGINE0;
        adev->doorbell_index.sdma_engine[1] = AMDGPU_VEGA20_DOORBELL_sDMA_ENGINE1;