* [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5
@ 2024-04-15 21:24 Sonny Jiang
2024-04-15 21:25 ` [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5 Sonny Jiang
2024-04-17 13:17 ` [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5 Liu, Leo
0 siblings, 2 replies; 5+ messages in thread
From: Sonny Jiang @ 2024-04-15 21:24 UTC (permalink / raw)
To: amd-gfx; +Cc: Sonny Jiang, Sonny Jiang
From: Sonny Jiang <sonjiang@amd.com>
VCN5 IB size alignment adjusted.
Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 2 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
index 5d1b084eb631..94ae14e0989c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
@@ -509,7 +509,7 @@ static int amdgpu_hw_ip_info(struct amdgpu_device *adev,
++num_rings;
}
ib_start_alignment = 256;
- ib_size_alignment = 4;
+ ib_size_alignment = 64;
break;
case AMDGPU_HW_IP_VCN_JPEG:
type = (amdgpu_device_ip_get_ip_block(adev, AMD_IP_BLOCK_TYPE_JPEG)) ?
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
index bb85772b1374..7d176046498f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
@@ -731,7 +731,7 @@ static int amdgpu_vcn_dec_sw_send_msg(struct amdgpu_ring *ring,
int i, r;
if (sq)
- ib_size_dw += 8;
+ ib_size_dw += 16;
r = amdgpu_job_alloc_with_ib(ring->adev, NULL, NULL,
ib_size_dw * 4, AMDGPU_IB_POOL_DIRECT,
@@ -861,7 +861,7 @@ static int amdgpu_vcn_enc_get_create_msg(struct amdgpu_ring *ring, uint32_t hand
int i, r;
if (sq)
- ib_size_dw += 8;
+ ib_size_dw += 16;
r = amdgpu_job_alloc_with_ib(ring->adev, NULL, NULL,
ib_size_dw * 4, AMDGPU_IB_POOL_DIRECT,
@@ -928,7 +928,7 @@ static int amdgpu_vcn_enc_get_destroy_msg(struct amdgpu_ring *ring, uint32_t han
int i, r;
if (sq)
- ib_size_dw += 8;
+ ib_size_dw += 16;
r = amdgpu_job_alloc_with_ib(ring->adev, NULL, NULL,
ib_size_dw * 4, AMDGPU_IB_POOL_DIRECT,
--
2.43.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5
2024-04-15 21:24 [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5 Sonny Jiang
@ 2024-04-15 21:25 ` Sonny Jiang
2024-04-15 21:32 ` Alex Deucher
2024-04-17 13:17 ` [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5 Liu, Leo
1 sibling, 1 reply; 5+ messages in thread
From: Sonny Jiang @ 2024-04-15 21:25 UTC (permalink / raw)
To: amd-gfx; +Cc: Sonny Jiang, Sonny Jiang
From: Sonny Jiang <sonjiang@amd.com>
VCN5 session info package interface changed
Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
index 7d176046498f..e08aacacc43e 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
@@ -882,7 +882,7 @@ static int amdgpu_vcn_enc_get_create_msg(struct amdgpu_ring *ring, uint32_t hand
ib->ptr[ib->length_dw++] = handle;
ib->ptr[ib->length_dw++] = upper_32_bits(addr);
ib->ptr[ib->length_dw++] = addr;
- ib->ptr[ib->length_dw++] = 0x0000000b;
+ ib->ptr[ib->length_dw++] = 0x00000000;
ib->ptr[ib->length_dw++] = 0x00000014;
ib->ptr[ib->length_dw++] = 0x00000002; /* task info */
@@ -949,7 +949,7 @@ static int amdgpu_vcn_enc_get_destroy_msg(struct amdgpu_ring *ring, uint32_t han
ib->ptr[ib->length_dw++] = handle;
ib->ptr[ib->length_dw++] = upper_32_bits(addr);
ib->ptr[ib->length_dw++] = addr;
- ib->ptr[ib->length_dw++] = 0x0000000b;
+ ib->ptr[ib->length_dw++] = 0x00000000;
ib->ptr[ib->length_dw++] = 0x00000014;
ib->ptr[ib->length_dw++] = 0x00000002;
--
2.43.2
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5
2024-04-15 21:25 ` [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5 Sonny Jiang
@ 2024-04-15 21:32 ` Alex Deucher
2024-04-16 14:18 ` Jiang, Sonny
0 siblings, 1 reply; 5+ messages in thread
From: Alex Deucher @ 2024-04-15 21:32 UTC (permalink / raw)
To: Sonny Jiang; +Cc: amd-gfx, Sonny Jiang
On Mon, Apr 15, 2024 at 5:25 PM Sonny Jiang <sonny.jiang@amd.com> wrote:
>
> From: Sonny Jiang <sonjiang@amd.com>
>
> VCN5 session info package interface changed
>
> Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> index 7d176046498f..e08aacacc43e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> @@ -882,7 +882,7 @@ static int amdgpu_vcn_enc_get_create_msg(struct amdgpu_ring *ring, uint32_t hand
> ib->ptr[ib->length_dw++] = handle;
> ib->ptr[ib->length_dw++] = upper_32_bits(addr);
> ib->ptr[ib->length_dw++] = addr;
> - ib->ptr[ib->length_dw++] = 0x0000000b;
> + ib->ptr[ib->length_dw++] = 0x00000000;
>
> ib->ptr[ib->length_dw++] = 0x00000014;
> ib->ptr[ib->length_dw++] = 0x00000002; /* task info */
> @@ -949,7 +949,7 @@ static int amdgpu_vcn_enc_get_destroy_msg(struct amdgpu_ring *ring, uint32_t han
> ib->ptr[ib->length_dw++] = handle;
> ib->ptr[ib->length_dw++] = upper_32_bits(addr);
> ib->ptr[ib->length_dw++] = addr;
> - ib->ptr[ib->length_dw++] = 0x0000000b;
> + ib->ptr[ib->length_dw++] = 0x00000000;
These patches are touching common files, are these changes safe on pre-VCN5 IPs?
Alex
>
> ib->ptr[ib->length_dw++] = 0x00000014;
> ib->ptr[ib->length_dw++] = 0x00000002;
> --
> 2.43.2
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5
2024-04-15 21:32 ` Alex Deucher
@ 2024-04-16 14:18 ` Jiang, Sonny
0 siblings, 0 replies; 5+ messages in thread
From: Jiang, Sonny @ 2024-04-16 14:18 UTC (permalink / raw)
To: Alex Deucher; +Cc: amd-gfx
[-- Attachment #1: Type: text/plain, Size: 2946 bytes --]
[AMD Official Use Only - General]
These changes are for vcn_unified_ring_test_ib which only used on VCN4 and VCN5. The only exception is ib_size_alignment of hw_ip_info.
The VCN5 adds address_patch_enabled in session_info. VCN4 doesn't have it, so it should just ignore the extra 0.
typedef struct uve_session_info_s
{
unsigned int interface_version; ///< The version of the firmware interface on which the host was built
unsigned int sw_context_address_hi; ///< High address of software context buffer
unsigned int sw_context_address_lo; ///< Low address of software context buffer
unsigned int address_patch_enabled; ///< address patching enabled in UMD
} uve_session_info_t;
By my tests, I didn't find error. I may need more tests on mi300 asic.
Thanks,
Sonny
________________________________
From: Alex Deucher <alexdeucher@gmail.com>
Sent: Monday, April 15, 2024 5:32 PM
To: Jiang, Sonny <Sonny.Jiang@amd.com>
Cc: amd-gfx@lists.freedesktop.org <amd-gfx@lists.freedesktop.org>; Jiang, Sonny <Sonny.Jiang@amd.com>
Subject: Re: [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5
On Mon, Apr 15, 2024 at 5:25 PM Sonny Jiang <sonny.jiang@amd.com> wrote:
>
> From: Sonny Jiang <sonjiang@amd.com>
>
> VCN5 session info package interface changed
>
> Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> index 7d176046498f..e08aacacc43e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> @@ -882,7 +882,7 @@ static int amdgpu_vcn_enc_get_create_msg(struct amdgpu_ring *ring, uint32_t hand
> ib->ptr[ib->length_dw++] = handle;
> ib->ptr[ib->length_dw++] = upper_32_bits(addr);
> ib->ptr[ib->length_dw++] = addr;
> - ib->ptr[ib->length_dw++] = 0x0000000b;
> + ib->ptr[ib->length_dw++] = 0x00000000;
>
> ib->ptr[ib->length_dw++] = 0x00000014;
> ib->ptr[ib->length_dw++] = 0x00000002; /* task info */
> @@ -949,7 +949,7 @@ static int amdgpu_vcn_enc_get_destroy_msg(struct amdgpu_ring *ring, uint32_t han
> ib->ptr[ib->length_dw++] = handle;
> ib->ptr[ib->length_dw++] = upper_32_bits(addr);
> ib->ptr[ib->length_dw++] = addr;
> - ib->ptr[ib->length_dw++] = 0x0000000b;
> + ib->ptr[ib->length_dw++] = 0x00000000;
These patches are touching common files, are these changes safe on pre-VCN5 IPs?
Alex
>
> ib->ptr[ib->length_dw++] = 0x00000014;
> ib->ptr[ib->length_dw++] = 0x00000002;
> --
> 2.43.2
>
[-- Attachment #2: Type: text/html, Size: 8128 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5
2024-04-15 21:24 [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5 Sonny Jiang
2024-04-15 21:25 ` [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5 Sonny Jiang
@ 2024-04-17 13:17 ` Liu, Leo
1 sibling, 0 replies; 5+ messages in thread
From: Liu, Leo @ 2024-04-17 13:17 UTC (permalink / raw)
To: Jiang, Sonny, amd-gfx; +Cc: Jiang, Sonny, Jiang, Sonny
[AMD Official Use Only - General]
> -----Original Message-----
> From: amd-gfx <amd-gfx-bounces@lists.freedesktop.org> On Behalf Of
> Sonny Jiang
> Sent: Monday, April 15, 2024 5:25 PM
> To: amd-gfx@lists.freedesktop.org
> Cc: Jiang, Sonny <Sonny.Jiang@amd.com>; Jiang, Sonny
> <Sonny.Jiang@amd.com>
> Subject: [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5
>
> From: Sonny Jiang <sonjiang@amd.com>
>
> VCN5 IB size alignment adjusted.
>
> Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 6 +++---
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> index 5d1b084eb631..94ae14e0989c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> @@ -509,7 +509,7 @@ static int amdgpu_hw_ip_info(struct amdgpu_device
> *adev,
> ++num_rings;
> }
> ib_start_alignment = 256;
> - ib_size_alignment = 4;
> + ib_size_alignment = 64;
We don't want these impact on previous HW if that is really required.
Regards,
Leo
> break;
> case AMDGPU_HW_IP_VCN_JPEG:
> type = (amdgpu_device_ip_get_ip_block(adev,
> AMD_IP_BLOCK_TYPE_JPEG)) ?
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> index bb85772b1374..7d176046498f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
> @@ -731,7 +731,7 @@ static int amdgpu_vcn_dec_sw_send_msg(struct
> amdgpu_ring *ring,
> int i, r;
>
> if (sq)
> - ib_size_dw += 8;
> + ib_size_dw += 16;
>
> r = amdgpu_job_alloc_with_ib(ring->adev, NULL, NULL,
> ib_size_dw * 4,
> AMDGPU_IB_POOL_DIRECT, @@ -861,7 +861,7 @@ static int
> amdgpu_vcn_enc_get_create_msg(struct amdgpu_ring *ring, uint32_t hand
> int i, r;
>
> if (sq)
> - ib_size_dw += 8;
> + ib_size_dw += 16;
>
> r = amdgpu_job_alloc_with_ib(ring->adev, NULL, NULL,
> ib_size_dw * 4,
> AMDGPU_IB_POOL_DIRECT, @@ -928,7 +928,7 @@ static int
> amdgpu_vcn_enc_get_destroy_msg(struct amdgpu_ring *ring, uint32_t han
> int i, r;
>
> if (sq)
> - ib_size_dw += 8;
> + ib_size_dw += 16;
>
> r = amdgpu_job_alloc_with_ib(ring->adev, NULL, NULL,
> ib_size_dw * 4,
> AMDGPU_IB_POOL_DIRECT,
> --
> 2.43.2
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-04-17 13:17 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-15 21:24 [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5 Sonny Jiang
2024-04-15 21:25 ` [PATCH 2/2] drm/amdgpu: IB test encode test package change for VCN5 Sonny Jiang
2024-04-15 21:32 ` Alex Deucher
2024-04-16 14:18 ` Jiang, Sonny
2024-04-17 13:17 ` [PATCH 1/2] drm/amdgpu: IB size alignment on VCN5 Liu, Leo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).