]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop drm amd patch from 5.10, 5.15, and 6.1 as it broke the build
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Sep 2024 07:23:45 +0000 (09:23 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Sep 2024 07:23:45 +0000 (09:23 +0200)
queue-5.10/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch [deleted file]
queue-5.10/series
queue-5.15/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch [deleted file]
queue-5.15/series
queue-6.1/drm-amd-amdgpu-apply-command-submission-parser-for-jpeg-v1.patch [deleted file]
queue-6.1/series

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 (file)
index a608093..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-From 8409fb50ce48d66cf9dc5391f03f05c56c430605 Mon Sep 17 00:00:00 2001
-From: "David (Ming Qiang) Wu" <David.Wu3@amd.com>
-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 <David.Wu3@amd.com>
-
-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 <alexander.deucher@amd.com>
-Signed-off-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-(cherry picked from commit 3d5adbdf1d01708777f2eda375227cbf7a98b9fe)
-Cc: stable@vger.kernel.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- 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__*/
index 6c52eb8934c13fde8a5da8cd7c370176733b7957..a8f93a2a90550b043710197451587e38553f24a3 100644 (file)
@@ -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 (file)
index dabb54c..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-From 8409fb50ce48d66cf9dc5391f03f05c56c430605 Mon Sep 17 00:00:00 2001
-From: "David (Ming Qiang) Wu" <David.Wu3@amd.com>
-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 <David.Wu3@amd.com>
-
-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 <alexander.deucher@amd.com>
-Signed-off-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-(cherry picked from commit 3d5adbdf1d01708777f2eda375227cbf7a98b9fe)
-Cc: stable@vger.kernel.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- 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__*/
index f8672e06a6278f30af9e7e09195e6c1a8ef592be..1508fa6111f319ab8a2f116aeb9000005db0b583 100644 (file)
@@ -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 (file)
index dabb54c..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-From 8409fb50ce48d66cf9dc5391f03f05c56c430605 Mon Sep 17 00:00:00 2001
-From: "David (Ming Qiang) Wu" <David.Wu3@amd.com>
-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 <David.Wu3@amd.com>
-
-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 <alexander.deucher@amd.com>
-Signed-off-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-(cherry picked from commit 3d5adbdf1d01708777f2eda375227cbf7a98b9fe)
-Cc: stable@vger.kernel.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- 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__*/
index 86c304edab803c182ca1454deb8d36e2739401b5..0f6e5b9a229614711a25ce8ee8e4bf825360a54b 100644 (file)
@@ -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