drm/amdgpu/vcn: implement ib tests with new message buffer interface
authorLeo Liu <leo.liu@amd.com>
Sun, 5 Feb 2017 17:40:30 +0000 (12:40 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 24 May 2017 21:41:33 +0000 (17:41 -0400)
Signed-off-by: Leo Liu <leo.liu@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c

index e1493c18f97b90f5a142abf1de473288202b97f3..14be7614c9b3d32b763027e7f06bd5e4108a2cc9 100644 (file)
@@ -373,19 +373,26 @@ static int amdgpu_vcn_dec_get_create_msg(struct amdgpu_ring *ring, uint32_t hand
                return r;
        }
 
-       /* stitch together an vcn create msg */
-       msg[0] = cpu_to_le32(0x00000de4);
-       msg[1] = cpu_to_le32(0x00000000);
-       msg[2] = cpu_to_le32(handle);
+       msg[0] = cpu_to_le32(0x00000028);
+       msg[1] = cpu_to_le32(0x0000004c);
+       msg[2] = cpu_to_le32(0x00000001);
        msg[3] = cpu_to_le32(0x00000000);
-       msg[4] = cpu_to_le32(0x00000000);
+       msg[4] = cpu_to_le32(handle);
        msg[5] = cpu_to_le32(0x00000000);
-       msg[6] = cpu_to_le32(0x00000000);
-       msg[7] = cpu_to_le32(0x00000780);
-       msg[8] = cpu_to_le32(0x00000440);
+       msg[6] = cpu_to_le32(0x00000001);
+       msg[7] = cpu_to_le32(0x00000028);
+       msg[8] = cpu_to_le32(0x00000024);
        msg[9] = cpu_to_le32(0x00000000);
-       msg[10] = cpu_to_le32(0x01b37000);
-       for (i = 11; i < 1024; ++i)
+       msg[10] = cpu_to_le32(0x00000007);
+       msg[11] = cpu_to_le32(0x00000000);
+       msg[12] = cpu_to_le32(0x00000000);
+       msg[13] = cpu_to_le32(0x00000780);
+       msg[14] = cpu_to_le32(0x00000440);
+       msg[15] = cpu_to_le32(0x00000000);
+       msg[16] = cpu_to_le32(0x01b37000);
+       msg[17] = cpu_to_le32(0x00000000);
+       msg[18] = cpu_to_le32(0x00000000);
+       for (i = 19; i < 1024; ++i)
                msg[i] = cpu_to_le32(0x0);
 
        amdgpu_bo_kunmap(bo);
@@ -423,12 +430,13 @@ static int amdgpu_vcn_dec_get_destroy_msg(struct amdgpu_ring *ring, uint32_t han
                return r;
        }
 
-       /* stitch together an vcn destroy msg */
-       msg[0] = cpu_to_le32(0x00000de4);
-       msg[1] = cpu_to_le32(0x00000002);
-       msg[2] = cpu_to_le32(handle);
-       msg[3] = cpu_to_le32(0x00000000);
-       for (i = 4; i < 1024; ++i)
+       msg[0] = cpu_to_le32(0x00000028);
+       msg[1] = cpu_to_le32(0x00000018);
+       msg[2] = cpu_to_le32(0x00000000);
+       msg[3] = cpu_to_le32(0x00000002);
+       msg[4] = cpu_to_le32(handle);
+       msg[5] = cpu_to_le32(0x00000000);
+       for (i = 6; i < 1024; ++i)
                msg[i] = cpu_to_le32(0x0);
 
        amdgpu_bo_kunmap(bo);