From bcd674e4398c450d4d81a20d995325c14af3aec2 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 14 Sep 2024 09:23:45 +0200 Subject: [PATCH] drop drm amd patch from 5.10, 5.15, and 6.1 as it broke the build --- ...ommand-submission-parser-for-jpeg-v1.patch | 151 ------------------ queue-5.10/series | 1 - ...ommand-submission-parser-for-jpeg-v1.patch | 151 ------------------ queue-5.15/series | 1 - ...ommand-submission-parser-for-jpeg-v1.patch | 151 ------------------ queue-6.1/series | 1 - 6 files changed, 456 deletions(-) delete mode 100644 queue-5.10/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch delete mode 100644 queue-5.15/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch delete mode 100644 queue-6.1/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch diff --git a/queue-5.10/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch b/queue-5.10/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch deleted file mode 100644 index a608093535b..00000000000 --- a/queue-5.10/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch +++ /dev/null @@ -1,151 +0,0 @@ -From 8409fb50ce48d66cf9dc5391f03f05c56c430605 Mon Sep 17 00:00:00 2001 -From: "David (Ming Qiang) Wu" -Date: Thu, 5 Sep 2024 16:57:28 -0400 -Subject: drm/amd/amdgpu: apply command submission parser for JPEG v1 - -From: David (Ming Qiang) Wu - -commit 8409fb50ce48d66cf9dc5391f03f05c56c430605 upstream. - -Similar to jpeg_v2_dec_ring_parse_cs() but it has different -register ranges and a few other registers access. - -Acked-by: Alex Deucher -Signed-off-by: David (Ming Qiang) Wu -Signed-off-by: Alex Deucher -(cherry picked from commit 3d5adbdf1d01708777f2eda375227cbf7a98b9fe) -Cc: stable@vger.kernel.org -Signed-off-by: Greg Kroah-Hartman ---- - drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c | 76 ++++++++++++++++++++++++++++++++- - drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h | 11 ++++ - 2 files changed, 86 insertions(+), 1 deletion(-) - ---- a/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c -+++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c -@@ -23,6 +23,7 @@ - - #include "amdgpu.h" - #include "amdgpu_jpeg.h" -+#include "amdgpu_cs.h" - #include "soc15.h" - #include "soc15d.h" - #include "vcn_v1_0.h" -@@ -34,6 +35,9 @@ - static void jpeg_v1_0_set_dec_ring_funcs(struct amdgpu_device *adev); - static void jpeg_v1_0_set_irq_funcs(struct amdgpu_device *adev); - static void jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring); -+static int jpeg_v1_dec_ring_parse_cs(struct amdgpu_cs_parser *parser, -+ struct amdgpu_job *job, -+ struct amdgpu_ib *ib); - - static void jpeg_v1_0_decode_ring_patch_wreg(struct amdgpu_ring *ring, uint32_t *ptr, uint32_t reg_offset, uint32_t val) - { -@@ -296,7 +300,10 @@ static void jpeg_v1_0_decode_ring_emit_i - - amdgpu_ring_write(ring, - PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_LMI_JRBC_IB_VMID), 0, 0, PACKETJ_TYPE0)); -- amdgpu_ring_write(ring, (vmid | (vmid << 4))); -+ if (ring->funcs->parse_cs) -+ amdgpu_ring_write(ring, 0); -+ else -+ amdgpu_ring_write(ring, (vmid | (vmid << 4))); - - amdgpu_ring_write(ring, - PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_LMI_JPEG_VMID), 0, 0, PACKETJ_TYPE0)); -@@ -548,6 +555,7 @@ static const struct amdgpu_ring_funcs jp - .get_rptr = jpeg_v1_0_decode_ring_get_rptr, - .get_wptr = jpeg_v1_0_decode_ring_get_wptr, - .set_wptr = jpeg_v1_0_decode_ring_set_wptr, -+ .parse_cs = jpeg_v1_dec_ring_parse_cs, - .emit_frame_size = - 6 + 6 + /* hdp invalidate / flush */ - SOC15_FLUSH_GPU_TLB_NUM_WREG * 6 + -@@ -606,3 +614,69 @@ static void jpeg_v1_0_ring_begin_use(str - - vcn_v1_0_set_pg_for_begin_use(ring, set_clocks); - } -+ -+/** -+ * jpeg_v1_dec_ring_parse_cs - command submission parser -+ * -+ * @parser: Command submission parser context -+ * @job: the job to parse -+ * @ib: the IB to parse -+ * -+ * Parse the command stream, return -EINVAL for invalid packet, -+ * 0 otherwise -+ */ -+static int jpeg_v1_dec_ring_parse_cs(struct amdgpu_cs_parser *parser, -+ struct amdgpu_job *job, -+ struct amdgpu_ib *ib) -+{ -+ u32 i, reg, res, cond, type; -+ int ret = 0; -+ struct amdgpu_device *adev = parser->adev; -+ -+ for (i = 0; i < ib->length_dw ; i += 2) { -+ reg = CP_PACKETJ_GET_REG(ib->ptr[i]); -+ res = CP_PACKETJ_GET_RES(ib->ptr[i]); -+ cond = CP_PACKETJ_GET_COND(ib->ptr[i]); -+ type = CP_PACKETJ_GET_TYPE(ib->ptr[i]); -+ -+ if (res || cond != PACKETJ_CONDITION_CHECK0) /* only allow 0 for now */ -+ return -EINVAL; -+ -+ if (reg >= JPEG_V1_REG_RANGE_START && reg <= JPEG_V1_REG_RANGE_END) -+ continue; -+ -+ switch (type) { -+ case PACKETJ_TYPE0: -+ if (reg != JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_HIGH && -+ reg != JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_LOW && -+ reg != JPEG_V1_LMI_JPEG_READ_64BIT_BAR_HIGH && -+ reg != JPEG_V1_LMI_JPEG_READ_64BIT_BAR_LOW && -+ reg != JPEG_V1_REG_CTX_INDEX && -+ reg != JPEG_V1_REG_CTX_DATA) { -+ ret = -EINVAL; -+ } -+ break; -+ case PACKETJ_TYPE1: -+ if (reg != JPEG_V1_REG_CTX_DATA) -+ ret = -EINVAL; -+ break; -+ case PACKETJ_TYPE3: -+ if (reg != JPEG_V1_REG_SOFT_RESET) -+ ret = -EINVAL; -+ break; -+ case PACKETJ_TYPE6: -+ if (ib->ptr[i] != CP_PACKETJ_NOP) -+ ret = -EINVAL; -+ break; -+ default: -+ ret = -EINVAL; -+ } -+ -+ if (ret) { -+ dev_err(adev->dev, "Invalid packet [0x%08x]!\n", ib->ptr[i]); -+ break; -+ } -+ } -+ -+ return ret; -+} ---- a/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h -+++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h -@@ -29,4 +29,15 @@ int jpeg_v1_0_sw_init(void *handle); - void jpeg_v1_0_sw_fini(void *handle); - void jpeg_v1_0_start(struct amdgpu_device *adev, int mode); - -+#define JPEG_V1_REG_RANGE_START 0x8000 -+#define JPEG_V1_REG_RANGE_END 0x803f -+ -+#define JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_HIGH 0x8238 -+#define JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_LOW 0x8239 -+#define JPEG_V1_LMI_JPEG_READ_64BIT_BAR_HIGH 0x825a -+#define JPEG_V1_LMI_JPEG_READ_64BIT_BAR_LOW 0x825b -+#define JPEG_V1_REG_CTX_INDEX 0x8328 -+#define JPEG_V1_REG_CTX_DATA 0x8329 -+#define JPEG_V1_REG_SOFT_RESET 0x83a0 -+ - #endif /*__JPEG_V1_0_H__*/ diff --git a/queue-5.10/series b/queue-5.10/series index 6c52eb8934c..a8f93a2a905 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -24,4 +24,3 @@ net-ftgmac100-enable-tx-interrupt-to-avoid-tx-timeou.patch net-dpaa-pad-packets-to-eth_zlen.patch spi-nxp-fspi-fix-the-kasan-report-out-of-bounds-bug.patch soundwire-stream-revert-soundwire-stream-fix-programming-slave-ports-for-non-continous-port-maps.patch -drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch diff --git a/queue-5.15/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch b/queue-5.15/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch deleted file mode 100644 index dabb54c2db1..00000000000 --- a/queue-5.15/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch +++ /dev/null @@ -1,151 +0,0 @@ -From 8409fb50ce48d66cf9dc5391f03f05c56c430605 Mon Sep 17 00:00:00 2001 -From: "David (Ming Qiang) Wu" -Date: Thu, 5 Sep 2024 16:57:28 -0400 -Subject: drm/amd/amdgpu: apply command submission parser for JPEG v1 - -From: David (Ming Qiang) Wu - -commit 8409fb50ce48d66cf9dc5391f03f05c56c430605 upstream. - -Similar to jpeg_v2_dec_ring_parse_cs() but it has different -register ranges and a few other registers access. - -Acked-by: Alex Deucher -Signed-off-by: David (Ming Qiang) Wu -Signed-off-by: Alex Deucher -(cherry picked from commit 3d5adbdf1d01708777f2eda375227cbf7a98b9fe) -Cc: stable@vger.kernel.org -Signed-off-by: Greg Kroah-Hartman ---- - drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c | 76 ++++++++++++++++++++++++++++++++- - drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h | 11 ++++ - 2 files changed, 86 insertions(+), 1 deletion(-) - ---- a/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c -+++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c -@@ -23,6 +23,7 @@ - - #include "amdgpu.h" - #include "amdgpu_jpeg.h" -+#include "amdgpu_cs.h" - #include "soc15.h" - #include "soc15d.h" - #include "vcn_v1_0.h" -@@ -34,6 +35,9 @@ - static void jpeg_v1_0_set_dec_ring_funcs(struct amdgpu_device *adev); - static void jpeg_v1_0_set_irq_funcs(struct amdgpu_device *adev); - static void jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring); -+static int jpeg_v1_dec_ring_parse_cs(struct amdgpu_cs_parser *parser, -+ struct amdgpu_job *job, -+ struct amdgpu_ib *ib); - - static void jpeg_v1_0_decode_ring_patch_wreg(struct amdgpu_ring *ring, uint32_t *ptr, uint32_t reg_offset, uint32_t val) - { -@@ -300,7 +304,10 @@ static void jpeg_v1_0_decode_ring_emit_i - - amdgpu_ring_write(ring, - PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_LMI_JRBC_IB_VMID), 0, 0, PACKETJ_TYPE0)); -- amdgpu_ring_write(ring, (vmid | (vmid << 4))); -+ if (ring->funcs->parse_cs) -+ amdgpu_ring_write(ring, 0); -+ else -+ amdgpu_ring_write(ring, (vmid | (vmid << 4))); - - amdgpu_ring_write(ring, - PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_LMI_JPEG_VMID), 0, 0, PACKETJ_TYPE0)); -@@ -553,6 +560,7 @@ static const struct amdgpu_ring_funcs jp - .get_rptr = jpeg_v1_0_decode_ring_get_rptr, - .get_wptr = jpeg_v1_0_decode_ring_get_wptr, - .set_wptr = jpeg_v1_0_decode_ring_set_wptr, -+ .parse_cs = jpeg_v1_dec_ring_parse_cs, - .emit_frame_size = - 6 + 6 + /* hdp invalidate / flush */ - SOC15_FLUSH_GPU_TLB_NUM_WREG * 6 + -@@ -611,3 +619,69 @@ static void jpeg_v1_0_ring_begin_use(str - - vcn_v1_0_set_pg_for_begin_use(ring, set_clocks); - } -+ -+/** -+ * jpeg_v1_dec_ring_parse_cs - command submission parser -+ * -+ * @parser: Command submission parser context -+ * @job: the job to parse -+ * @ib: the IB to parse -+ * -+ * Parse the command stream, return -EINVAL for invalid packet, -+ * 0 otherwise -+ */ -+static int jpeg_v1_dec_ring_parse_cs(struct amdgpu_cs_parser *parser, -+ struct amdgpu_job *job, -+ struct amdgpu_ib *ib) -+{ -+ u32 i, reg, res, cond, type; -+ int ret = 0; -+ struct amdgpu_device *adev = parser->adev; -+ -+ for (i = 0; i < ib->length_dw ; i += 2) { -+ reg = CP_PACKETJ_GET_REG(ib->ptr[i]); -+ res = CP_PACKETJ_GET_RES(ib->ptr[i]); -+ cond = CP_PACKETJ_GET_COND(ib->ptr[i]); -+ type = CP_PACKETJ_GET_TYPE(ib->ptr[i]); -+ -+ if (res || cond != PACKETJ_CONDITION_CHECK0) /* only allow 0 for now */ -+ return -EINVAL; -+ -+ if (reg >= JPEG_V1_REG_RANGE_START && reg <= JPEG_V1_REG_RANGE_END) -+ continue; -+ -+ switch (type) { -+ case PACKETJ_TYPE0: -+ if (reg != JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_HIGH && -+ reg != JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_LOW && -+ reg != JPEG_V1_LMI_JPEG_READ_64BIT_BAR_HIGH && -+ reg != JPEG_V1_LMI_JPEG_READ_64BIT_BAR_LOW && -+ reg != JPEG_V1_REG_CTX_INDEX && -+ reg != JPEG_V1_REG_CTX_DATA) { -+ ret = -EINVAL; -+ } -+ break; -+ case PACKETJ_TYPE1: -+ if (reg != JPEG_V1_REG_CTX_DATA) -+ ret = -EINVAL; -+ break; -+ case PACKETJ_TYPE3: -+ if (reg != JPEG_V1_REG_SOFT_RESET) -+ ret = -EINVAL; -+ break; -+ case PACKETJ_TYPE6: -+ if (ib->ptr[i] != CP_PACKETJ_NOP) -+ ret = -EINVAL; -+ break; -+ default: -+ ret = -EINVAL; -+ } -+ -+ if (ret) { -+ dev_err(adev->dev, "Invalid packet [0x%08x]!\n", ib->ptr[i]); -+ break; -+ } -+ } -+ -+ return ret; -+} ---- a/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h -+++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h -@@ -29,4 +29,15 @@ int jpeg_v1_0_sw_init(void *handle); - void jpeg_v1_0_sw_fini(void *handle); - void jpeg_v1_0_start(struct amdgpu_device *adev, int mode); - -+#define JPEG_V1_REG_RANGE_START 0x8000 -+#define JPEG_V1_REG_RANGE_END 0x803f -+ -+#define JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_HIGH 0x8238 -+#define JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_LOW 0x8239 -+#define JPEG_V1_LMI_JPEG_READ_64BIT_BAR_HIGH 0x825a -+#define JPEG_V1_LMI_JPEG_READ_64BIT_BAR_LOW 0x825b -+#define JPEG_V1_REG_CTX_INDEX 0x8328 -+#define JPEG_V1_REG_CTX_DATA 0x8329 -+#define JPEG_V1_REG_SOFT_RESET 0x83a0 -+ - #endif /*__JPEG_V1_0_H__*/ diff --git a/queue-5.15/series b/queue-5.15/series index f8672e06a62..1508fa6111f 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -41,4 +41,3 @@ net-dpaa-pad-packets-to-eth_zlen.patch spi-nxp-fspi-fix-the-kasan-report-out-of-bounds-bug.patch soundwire-stream-revert-soundwire-stream-fix-programming-slave-ports-for-non-continous-port-maps.patch dma-buf-heaps-fix-off-by-one-in-cma-heap-fault-handler.patch -drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch diff --git a/queue-6.1/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch b/queue-6.1/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch deleted file mode 100644 index dabb54c2db1..00000000000 --- a/queue-6.1/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch +++ /dev/null @@ -1,151 +0,0 @@ -From 8409fb50ce48d66cf9dc5391f03f05c56c430605 Mon Sep 17 00:00:00 2001 -From: "David (Ming Qiang) Wu" -Date: Thu, 5 Sep 2024 16:57:28 -0400 -Subject: drm/amd/amdgpu: apply command submission parser for JPEG v1 - -From: David (Ming Qiang) Wu - -commit 8409fb50ce48d66cf9dc5391f03f05c56c430605 upstream. - -Similar to jpeg_v2_dec_ring_parse_cs() but it has different -register ranges and a few other registers access. - -Acked-by: Alex Deucher -Signed-off-by: David (Ming Qiang) Wu -Signed-off-by: Alex Deucher -(cherry picked from commit 3d5adbdf1d01708777f2eda375227cbf7a98b9fe) -Cc: stable@vger.kernel.org -Signed-off-by: Greg Kroah-Hartman ---- - drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c | 76 ++++++++++++++++++++++++++++++++- - drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h | 11 ++++ - 2 files changed, 86 insertions(+), 1 deletion(-) - ---- a/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c -+++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c -@@ -23,6 +23,7 @@ - - #include "amdgpu.h" - #include "amdgpu_jpeg.h" -+#include "amdgpu_cs.h" - #include "soc15.h" - #include "soc15d.h" - #include "vcn_v1_0.h" -@@ -34,6 +35,9 @@ - static void jpeg_v1_0_set_dec_ring_funcs(struct amdgpu_device *adev); - static void jpeg_v1_0_set_irq_funcs(struct amdgpu_device *adev); - static void jpeg_v1_0_ring_begin_use(struct amdgpu_ring *ring); -+static int jpeg_v1_dec_ring_parse_cs(struct amdgpu_cs_parser *parser, -+ struct amdgpu_job *job, -+ struct amdgpu_ib *ib); - - static void jpeg_v1_0_decode_ring_patch_wreg(struct amdgpu_ring *ring, uint32_t *ptr, uint32_t reg_offset, uint32_t val) - { -@@ -300,7 +304,10 @@ static void jpeg_v1_0_decode_ring_emit_i - - amdgpu_ring_write(ring, - PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_LMI_JRBC_IB_VMID), 0, 0, PACKETJ_TYPE0)); -- amdgpu_ring_write(ring, (vmid | (vmid << 4))); -+ if (ring->funcs->parse_cs) -+ amdgpu_ring_write(ring, 0); -+ else -+ amdgpu_ring_write(ring, (vmid | (vmid << 4))); - - amdgpu_ring_write(ring, - PACKETJ(SOC15_REG_OFFSET(JPEG, 0, mmUVD_LMI_JPEG_VMID), 0, 0, PACKETJ_TYPE0)); -@@ -553,6 +560,7 @@ static const struct amdgpu_ring_funcs jp - .get_rptr = jpeg_v1_0_decode_ring_get_rptr, - .get_wptr = jpeg_v1_0_decode_ring_get_wptr, - .set_wptr = jpeg_v1_0_decode_ring_set_wptr, -+ .parse_cs = jpeg_v1_dec_ring_parse_cs, - .emit_frame_size = - 6 + 6 + /* hdp invalidate / flush */ - SOC15_FLUSH_GPU_TLB_NUM_WREG * 6 + -@@ -611,3 +619,69 @@ static void jpeg_v1_0_ring_begin_use(str - - vcn_v1_0_set_pg_for_begin_use(ring, set_clocks); - } -+ -+/** -+ * jpeg_v1_dec_ring_parse_cs - command submission parser -+ * -+ * @parser: Command submission parser context -+ * @job: the job to parse -+ * @ib: the IB to parse -+ * -+ * Parse the command stream, return -EINVAL for invalid packet, -+ * 0 otherwise -+ */ -+static int jpeg_v1_dec_ring_parse_cs(struct amdgpu_cs_parser *parser, -+ struct amdgpu_job *job, -+ struct amdgpu_ib *ib) -+{ -+ u32 i, reg, res, cond, type; -+ int ret = 0; -+ struct amdgpu_device *adev = parser->adev; -+ -+ for (i = 0; i < ib->length_dw ; i += 2) { -+ reg = CP_PACKETJ_GET_REG(ib->ptr[i]); -+ res = CP_PACKETJ_GET_RES(ib->ptr[i]); -+ cond = CP_PACKETJ_GET_COND(ib->ptr[i]); -+ type = CP_PACKETJ_GET_TYPE(ib->ptr[i]); -+ -+ if (res || cond != PACKETJ_CONDITION_CHECK0) /* only allow 0 for now */ -+ return -EINVAL; -+ -+ if (reg >= JPEG_V1_REG_RANGE_START && reg <= JPEG_V1_REG_RANGE_END) -+ continue; -+ -+ switch (type) { -+ case PACKETJ_TYPE0: -+ if (reg != JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_HIGH && -+ reg != JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_LOW && -+ reg != JPEG_V1_LMI_JPEG_READ_64BIT_BAR_HIGH && -+ reg != JPEG_V1_LMI_JPEG_READ_64BIT_BAR_LOW && -+ reg != JPEG_V1_REG_CTX_INDEX && -+ reg != JPEG_V1_REG_CTX_DATA) { -+ ret = -EINVAL; -+ } -+ break; -+ case PACKETJ_TYPE1: -+ if (reg != JPEG_V1_REG_CTX_DATA) -+ ret = -EINVAL; -+ break; -+ case PACKETJ_TYPE3: -+ if (reg != JPEG_V1_REG_SOFT_RESET) -+ ret = -EINVAL; -+ break; -+ case PACKETJ_TYPE6: -+ if (ib->ptr[i] != CP_PACKETJ_NOP) -+ ret = -EINVAL; -+ break; -+ default: -+ ret = -EINVAL; -+ } -+ -+ if (ret) { -+ dev_err(adev->dev, "Invalid packet [0x%08x]!\n", ib->ptr[i]); -+ break; -+ } -+ } -+ -+ return ret; -+} ---- a/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h -+++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.h -@@ -29,4 +29,15 @@ int jpeg_v1_0_sw_init(void *handle); - void jpeg_v1_0_sw_fini(void *handle); - void jpeg_v1_0_start(struct amdgpu_device *adev, int mode); - -+#define JPEG_V1_REG_RANGE_START 0x8000 -+#define JPEG_V1_REG_RANGE_END 0x803f -+ -+#define JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_HIGH 0x8238 -+#define JPEG_V1_LMI_JPEG_WRITE_64BIT_BAR_LOW 0x8239 -+#define JPEG_V1_LMI_JPEG_READ_64BIT_BAR_HIGH 0x825a -+#define JPEG_V1_LMI_JPEG_READ_64BIT_BAR_LOW 0x825b -+#define JPEG_V1_REG_CTX_INDEX 0x8328 -+#define JPEG_V1_REG_CTX_DATA 0x8329 -+#define JPEG_V1_REG_SOFT_RESET 0x83a0 -+ - #endif /*__JPEG_V1_0_H__*/ diff --git a/queue-6.1/series b/queue-6.1/series index 86c304edab8..0f6e5b9a229 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -55,4 +55,3 @@ spi-nxp-fspi-fix-the-kasan-report-out-of-bounds-bug.patch soundwire-stream-revert-soundwire-stream-fix-programming-slave-ports-for-non-continous-port-maps.patch dma-buf-heaps-fix-off-by-one-in-cma-heap-fault-handler.patch drm-amdgpu-atomfirmware-silence-ubsan-warning.patch -drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch -- 2.47.3