All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/5] drm/amdgpu: fix a vcn4 boot poll bug in emulation mode
@ 2022-07-21 17:27 Sonny Jiang
  2022-07-21 17:27 ` [PATCH 2/5] drm/amdgpu: add VCN function in NBIO v7.7 Sonny Jiang
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Sonny Jiang @ 2022-07-21 17:27 UTC (permalink / raw)
  To: amd-gfx; +Cc: Sonny Jiang, James Zhu

The return value should be set in vcn4 boot poll.

Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
index a91ffbf902d4..3a16588024d6 100644
--- a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
@@ -1041,6 +1041,7 @@ static int vcn_v4_0_start(struct amdgpu_device *adev)
 			}
 
 			if (amdgpu_emu_mode==1) {
+				r = -1;
 				if (status & 2) {
 					r = 0;
 					break;
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/5] drm/amdgpu: add VCN function in NBIO v7.7
  2022-07-21 17:27 [PATCH 1/5] drm/amdgpu: fix a vcn4 boot poll bug in emulation mode Sonny Jiang
@ 2022-07-21 17:27 ` Sonny Jiang
  2022-07-21 17:27 ` [PATCH 3/5] drm/amdgpu: add VCN_4_0_2 firmware support i Sonny Jiang
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Sonny Jiang @ 2022-07-21 17:27 UTC (permalink / raw)
  To: amd-gfx; +Cc: Sonny Jiang, James Zhu

Add function to support VCN_4_0_2 doorbell

Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/nbio_v7_7.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/nbio_v7_7.c b/drivers/gpu/drm/amd/amdgpu/nbio_v7_7.c
index e786b825cea9..01e8288d09a8 100644
--- a/drivers/gpu/drm/amd/amdgpu/nbio_v7_7.c
+++ b/drivers/gpu/drm/amd/amdgpu/nbio_v7_7.c
@@ -83,6 +83,26 @@ static void nbio_v7_7_sdma_doorbell_range(struct amdgpu_device *adev, int instan
 	WREG32_PCIE_PORT(reg, doorbell_range);
 }
 
+static void nbio_v7_7_vcn_doorbell_range(struct amdgpu_device *adev, bool use_doorbell,
+					int doorbell_index, int instance)
+{
+	u32 reg = SOC15_REG_OFFSET(NBIO, 0, regGDC0_BIF_VCN0_DOORBELL_RANGE);
+	u32 doorbell_range = RREG32_PCIE_PORT(reg);
+
+	if (use_doorbell) {
+		doorbell_range = REG_SET_FIELD(doorbell_range,
+					       GDC0_BIF_VCN0_DOORBELL_RANGE, OFFSET,
+					       doorbell_index);
+		doorbell_range = REG_SET_FIELD(doorbell_range,
+					       GDC0_BIF_VCN0_DOORBELL_RANGE, SIZE, 8);
+	} else {
+		doorbell_range = REG_SET_FIELD(doorbell_range,
+					       GDC0_BIF_VCN0_DOORBELL_RANGE, SIZE, 0);
+	}
+
+	WREG32_PCIE_PORT(reg, doorbell_range);
+}
+
 static void nbio_v7_7_enable_doorbell_aperture(struct amdgpu_device *adev,
 					       bool enable)
 {
@@ -238,6 +258,7 @@ const struct amdgpu_nbio_funcs nbio_v7_7_funcs = {
 	.mc_access_enable = nbio_v7_7_mc_access_enable,
 	.get_memsize = nbio_v7_7_get_memsize,
 	.sdma_doorbell_range = nbio_v7_7_sdma_doorbell_range,
+	.vcn_doorbell_range = nbio_v7_7_vcn_doorbell_range,
 	.enable_doorbell_aperture = nbio_v7_7_enable_doorbell_aperture,
 	.enable_doorbell_selfring_aperture = nbio_v7_7_enable_doorbell_selfring_aperture,
 	.ih_doorbell_range = nbio_v7_7_ih_doorbell_range,
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/5] drm/amdgpu: add VCN_4_0_2 firmware support i
  2022-07-21 17:27 [PATCH 1/5] drm/amdgpu: fix a vcn4 boot poll bug in emulation mode Sonny Jiang
  2022-07-21 17:27 ` [PATCH 2/5] drm/amdgpu: add VCN function in NBIO v7.7 Sonny Jiang
@ 2022-07-21 17:27 ` Sonny Jiang
  2022-07-21 17:27 ` [PATCH 4/5] drm/amdgpu: vcn_4_0_2 video codec query Sonny Jiang
  2022-07-21 17:27 ` [PATCH 5/5] drm/amdgpu: enable VCN cg and JPEG cg/pg i Sonny Jiang
  3 siblings, 0 replies; 6+ messages in thread
From: Sonny Jiang @ 2022-07-21 17:27 UTC (permalink / raw)
  To: amd-gfx; +Cc: Sonny Jiang, James Zhu

Add VCN_4_0_2 firmware support

Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
index 1bfdfb9207ac..f36e4f08db6d 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
@@ -54,6 +54,7 @@
 #define FIRMWARE_YELLOW_CARP	"amdgpu/yellow_carp_vcn.bin"
 #define FIRMWARE_VCN_3_1_2	"amdgpu/vcn_3_1_2.bin"
 #define FIRMWARE_VCN4_0_0	"amdgpu/vcn_4_0_0.bin"
+#define FIRMWARE_VCN4_0_2	"amdgpu/vcn_4_0_2.bin"
 #define FIRMWARE_VCN4_0_4      "amdgpu/vcn_4_0_4.bin"
 
 MODULE_FIRMWARE(FIRMWARE_RAVEN);
@@ -74,6 +75,7 @@ MODULE_FIRMWARE(FIRMWARE_BEIGE_GOBY);
 MODULE_FIRMWARE(FIRMWARE_YELLOW_CARP);
 MODULE_FIRMWARE(FIRMWARE_VCN_3_1_2);
 MODULE_FIRMWARE(FIRMWARE_VCN4_0_0);
+MODULE_FIRMWARE(FIRMWARE_VCN4_0_2);
 MODULE_FIRMWARE(FIRMWARE_VCN4_0_4);
 
 static void amdgpu_vcn_idle_work_handler(struct work_struct *work);
@@ -185,6 +187,12 @@ int amdgpu_vcn_sw_init(struct amdgpu_device *adev)
 			(adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG))
 			adev->vcn.indirect_sram = true;
 		break;
+	case IP_VERSION(4, 0, 2):
+		fw_name = FIRMWARE_VCN4_0_2;
+		if ((adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) &&
+			(adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG))
+			adev->vcn.indirect_sram = false;
+		break;
 	case IP_VERSION(4, 0, 4):
 		fw_name = FIRMWARE_VCN4_0_4;
 		if ((adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) &&
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 4/5] drm/amdgpu: vcn_4_0_2 video codec query
  2022-07-21 17:27 [PATCH 1/5] drm/amdgpu: fix a vcn4 boot poll bug in emulation mode Sonny Jiang
  2022-07-21 17:27 ` [PATCH 2/5] drm/amdgpu: add VCN function in NBIO v7.7 Sonny Jiang
  2022-07-21 17:27 ` [PATCH 3/5] drm/amdgpu: add VCN_4_0_2 firmware support i Sonny Jiang
@ 2022-07-21 17:27 ` Sonny Jiang
  2022-07-21 17:27 ` [PATCH 5/5] drm/amdgpu: enable VCN cg and JPEG cg/pg i Sonny Jiang
  3 siblings, 0 replies; 6+ messages in thread
From: Sonny Jiang @ 2022-07-21 17:27 UTC (permalink / raw)
  To: amd-gfx; +Cc: Sonny Jiang, James Zhu

Enable support for vcn_4_0_2 video codec

Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/soc21.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/soc21.c b/drivers/gpu/drm/amd/amdgpu/soc21.c
index 00e9b7089feb..68e78983f956 100644
--- a/drivers/gpu/drm/amd/amdgpu/soc21.c
+++ b/drivers/gpu/drm/amd/amdgpu/soc21.c
@@ -80,6 +80,7 @@ static int soc21_query_video_codecs(struct amdgpu_device *adev, bool encode,
 	switch (adev->ip_versions[UVD_HWIP][0]) {
 
 	case IP_VERSION(4, 0, 0):
+	case IP_VERSION(4, 0, 2):
 		if (encode)
 			*codecs = &vcn_4_0_0_video_codecs_encode;
 		else
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 5/5] drm/amdgpu: enable VCN cg and JPEG cg/pg i
  2022-07-21 17:27 [PATCH 1/5] drm/amdgpu: fix a vcn4 boot poll bug in emulation mode Sonny Jiang
                   ` (2 preceding siblings ...)
  2022-07-21 17:27 ` [PATCH 4/5] drm/amdgpu: vcn_4_0_2 video codec query Sonny Jiang
@ 2022-07-21 17:27 ` Sonny Jiang
  2022-07-28  2:08   ` Zhang, Yifan
  3 siblings, 1 reply; 6+ messages in thread
From: Sonny Jiang @ 2022-07-21 17:27 UTC (permalink / raw)
  To: amd-gfx; +Cc: Sonny Jiang, James Zhu

Not enable VCN pg because encode issue

Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/soc21.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/soc21.c b/drivers/gpu/drm/amd/amdgpu/soc21.c
index 68e78983f956..52816de5e17b 100644
--- a/drivers/gpu/drm/amd/amdgpu/soc21.c
+++ b/drivers/gpu/drm/amd/amdgpu/soc21.c
@@ -585,8 +585,11 @@ static int soc21_common_early_init(void *handle)
 		adev->external_rev_id = adev->rev_id + 0x10;
 		break;
 	case IP_VERSION(11, 0, 1):
-		adev->cg_flags = 0;
-		adev->pg_flags = 0;
+		adev->cg_flags =
+			AMD_CG_SUPPORT_VCN_MGCG |
+			AMD_CG_SUPPORT_JPEG_MGCG;
+		adev->pg_flags =
+			AMD_PG_SUPPORT_JPEG;
 		adev->external_rev_id = adev->rev_id + 0x1;
 		break;
 	default:
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* RE: [PATCH 5/5] drm/amdgpu: enable VCN cg and JPEG cg/pg i
  2022-07-21 17:27 ` [PATCH 5/5] drm/amdgpu: enable VCN cg and JPEG cg/pg i Sonny Jiang
@ 2022-07-28  2:08   ` Zhang, Yifan
  0 siblings, 0 replies; 6+ messages in thread
From: Zhang, Yifan @ 2022-07-28  2:08 UTC (permalink / raw)
  To: Jiang, Sonny, amd-gfx; +Cc: Jiang, Sonny, Zhu, James

Ping

Best Regards,
Yifan

-----Original Message-----
From: amd-gfx <amd-gfx-bounces@lists.freedesktop.org> On Behalf Of Sonny Jiang
Sent: Friday, July 22, 2022 1:27 AM
To: amd-gfx@lists.freedesktop.org
Cc: Jiang, Sonny <Sonny.Jiang@amd.com>; Zhu, James <James.Zhu@amd.com>
Subject: [PATCH 5/5] drm/amdgpu: enable VCN cg and JPEG cg/pg i

Not enable VCN pg because encode issue

Signed-off-by: Sonny Jiang <sonny.jiang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/soc21.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/soc21.c b/drivers/gpu/drm/amd/amdgpu/soc21.c
index 68e78983f956..52816de5e17b 100644
--- a/drivers/gpu/drm/amd/amdgpu/soc21.c
+++ b/drivers/gpu/drm/amd/amdgpu/soc21.c
@@ -585,8 +585,11 @@ static int soc21_common_early_init(void *handle)
 		adev->external_rev_id = adev->rev_id + 0x10;
 		break;
 	case IP_VERSION(11, 0, 1):
-		adev->cg_flags = 0;
-		adev->pg_flags = 0;
+		adev->cg_flags =
+			AMD_CG_SUPPORT_VCN_MGCG |
+			AMD_CG_SUPPORT_JPEG_MGCG;
+		adev->pg_flags =
+			AMD_PG_SUPPORT_JPEG;
 		adev->external_rev_id = adev->rev_id + 0x1;
 		break;
 	default:
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-07-28  2:09 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-21 17:27 [PATCH 1/5] drm/amdgpu: fix a vcn4 boot poll bug in emulation mode Sonny Jiang
2022-07-21 17:27 ` [PATCH 2/5] drm/amdgpu: add VCN function in NBIO v7.7 Sonny Jiang
2022-07-21 17:27 ` [PATCH 3/5] drm/amdgpu: add VCN_4_0_2 firmware support i Sonny Jiang
2022-07-21 17:27 ` [PATCH 4/5] drm/amdgpu: vcn_4_0_2 video codec query Sonny Jiang
2022-07-21 17:27 ` [PATCH 5/5] drm/amdgpu: enable VCN cg and JPEG cg/pg i Sonny Jiang
2022-07-28  2:08   ` Zhang, Yifan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.