From: John Harrison <john.c.harri...@intel.com>

GuC v57 unified the 'DPC' and 'ISR' buffers into a single buffer with
the option for it to be larger.

Signed-off-by: Matthew Brost <matthew.br...@intel.com>
Signed-off-by: John Harrison <john.c.harri...@intel.com>
Cc: Alan Previn <alan.previn.teres.ale...@intel.com>
---
 drivers/gpu/drm/i915/gt/uc/intel_guc.c      | 15 ++++-------
 drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h |  9 +++----
 drivers/gpu/drm/i915/gt/uc/intel_guc_log.c  | 29 +++++++--------------
 drivers/gpu/drm/i915/gt/uc/intel_guc_log.h  |  6 ++---
 4 files changed, 20 insertions(+), 39 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.c 
b/drivers/gpu/drm/i915/gt/uc/intel_guc.c
index b773567cb080..6661dcb02239 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.c
@@ -219,24 +219,19 @@ static u32 guc_ctl_log_params_flags(struct intel_guc *guc)
 
        BUILD_BUG_ON(!CRASH_BUFFER_SIZE);
        BUILD_BUG_ON(!IS_ALIGNED(CRASH_BUFFER_SIZE, UNIT));
-       BUILD_BUG_ON(!DPC_BUFFER_SIZE);
-       BUILD_BUG_ON(!IS_ALIGNED(DPC_BUFFER_SIZE, UNIT));
-       BUILD_BUG_ON(!ISR_BUFFER_SIZE);
-       BUILD_BUG_ON(!IS_ALIGNED(ISR_BUFFER_SIZE, UNIT));
+       BUILD_BUG_ON(!DEBUG_BUFFER_SIZE);
+       BUILD_BUG_ON(!IS_ALIGNED(DEBUG_BUFFER_SIZE, UNIT));
 
        BUILD_BUG_ON((CRASH_BUFFER_SIZE / UNIT - 1) >
                        (GUC_LOG_CRASH_MASK >> GUC_LOG_CRASH_SHIFT));
-       BUILD_BUG_ON((DPC_BUFFER_SIZE / UNIT - 1) >
-                       (GUC_LOG_DPC_MASK >> GUC_LOG_DPC_SHIFT));
-       BUILD_BUG_ON((ISR_BUFFER_SIZE / UNIT - 1) >
-                       (GUC_LOG_ISR_MASK >> GUC_LOG_ISR_SHIFT));
+       BUILD_BUG_ON((DEBUG_BUFFER_SIZE / UNIT - 1) >
+                       (GUC_LOG_DEBUG_MASK >> GUC_LOG_DEBUG_SHIFT));
 
        flags = GUC_LOG_VALID |
                GUC_LOG_NOTIFY_ON_HALF_FULL |
                FLAG |
                ((CRASH_BUFFER_SIZE / UNIT - 1) << GUC_LOG_CRASH_SHIFT) |
-               ((DPC_BUFFER_SIZE / UNIT - 1) << GUC_LOG_DPC_SHIFT) |
-               ((ISR_BUFFER_SIZE / UNIT - 1) << GUC_LOG_ISR_SHIFT) |
+               ((DEBUG_BUFFER_SIZE / UNIT - 1) << GUC_LOG_DEBUG_SHIFT) |
                (offset << GUC_LOG_BUF_ADDR_SHIFT);
 
        #undef UNIT
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h 
b/drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
index f2df5c11c11d..617ec601648d 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
@@ -81,10 +81,8 @@
 #define   GUC_LOG_ALLOC_IN_MEGABYTE    (1 << 3)
 #define   GUC_LOG_CRASH_SHIFT          4
 #define   GUC_LOG_CRASH_MASK           (0x3 << GUC_LOG_CRASH_SHIFT)
-#define   GUC_LOG_DPC_SHIFT            6
-#define   GUC_LOG_DPC_MASK             (0x7 << GUC_LOG_DPC_SHIFT)
-#define   GUC_LOG_ISR_SHIFT            9
-#define   GUC_LOG_ISR_MASK             (0x7 << GUC_LOG_ISR_SHIFT)
+#define   GUC_LOG_DEBUG_SHIFT          6
+#define   GUC_LOG_DEBUG_MASK           (0xF << GUC_LOG_DEBUG_SHIFT)
 #define   GUC_LOG_BUF_ADDR_SHIFT       12
 
 #define GUC_CTL_WA                     1
@@ -311,8 +309,7 @@ struct guc_ads {
 /* GuC logging structures */
 
 enum guc_log_buffer_type {
-       GUC_ISR_LOG_BUFFER,
-       GUC_DPC_LOG_BUFFER,
+       GUC_DEBUG_LOG_BUFFER,
        GUC_CRASH_DUMP_LOG_BUFFER,
        GUC_MAX_LOG_BUFFER
 };
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c 
b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
index c36d5eb5bbb9..ac0931f0374b 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
@@ -197,10 +197,8 @@ static bool guc_check_log_buf_overflow(struct 
intel_guc_log *log,
 static unsigned int guc_get_log_buffer_size(enum guc_log_buffer_type type)
 {
        switch (type) {
-       case GUC_ISR_LOG_BUFFER:
-               return ISR_BUFFER_SIZE;
-       case GUC_DPC_LOG_BUFFER:
-               return DPC_BUFFER_SIZE;
+       case GUC_DEBUG_LOG_BUFFER:
+               return DEBUG_BUFFER_SIZE;
        case GUC_CRASH_DUMP_LOG_BUFFER:
                return CRASH_BUFFER_SIZE;
        default:
@@ -245,7 +243,7 @@ static void guc_read_update_log_buffer(struct intel_guc_log 
*log)
        src_data += PAGE_SIZE;
        dst_data += PAGE_SIZE;
 
-       for (type = GUC_ISR_LOG_BUFFER; type < GUC_MAX_LOG_BUFFER; type++) {
+       for (type = GUC_DEBUG_LOG_BUFFER; type < GUC_MAX_LOG_BUFFER; type++) {
                /*
                 * Make a copy of the state structure, inside GuC log buffer
                 * (which is uncached mapped), on the stack to avoid reading
@@ -463,21 +461,16 @@ int intel_guc_log_create(struct intel_guc_log *log)
         *  +===============================+ 00B
         *  |    Crash dump state header    |
         *  +-------------------------------+ 32B
-        *  |       DPC state header        |
+        *  |      Debug state header       |
         *  +-------------------------------+ 64B
-        *  |       ISR state header        |
-        *  +-------------------------------+ 96B
         *  |                               |
         *  +===============================+ PAGE_SIZE (4KB)
         *  |        Crash Dump logs        |
         *  +===============================+ + CRASH_SIZE
-        *  |           DPC logs            |
-        *  +===============================+ + DPC_SIZE
-        *  |           ISR logs            |
-        *  +===============================+ + ISR_SIZE
+        *  |          Debug logs           |
+        *  +===============================+ + DEBUG_SIZE
         */
-       guc_log_size = PAGE_SIZE + CRASH_BUFFER_SIZE + DPC_BUFFER_SIZE +
-                       ISR_BUFFER_SIZE;
+       guc_log_size = PAGE_SIZE + CRASH_BUFFER_SIZE + DEBUG_BUFFER_SIZE;
 
        vma = intel_guc_allocate_vma(guc, guc_log_size);
        if (IS_ERR(vma)) {
@@ -675,10 +668,8 @@ static const char *
 stringify_guc_log_type(enum guc_log_buffer_type type)
 {
        switch (type) {
-       case GUC_ISR_LOG_BUFFER:
-               return "ISR";
-       case GUC_DPC_LOG_BUFFER:
-               return "DPC";
+       case GUC_DEBUG_LOG_BUFFER:
+               return "DEBUG";
        case GUC_CRASH_DUMP_LOG_BUFFER:
                return "CRASH";
        default:
@@ -708,7 +699,7 @@ void intel_guc_log_info(struct intel_guc_log *log, struct 
drm_printer *p)
 
        drm_printf(p, "\tRelay full count: %u\n", log->relay.full_count);
 
-       for (type = GUC_ISR_LOG_BUFFER; type < GUC_MAX_LOG_BUFFER; type++) {
+       for (type = GUC_DEBUG_LOG_BUFFER; type < GUC_MAX_LOG_BUFFER; type++) {
                drm_printf(p, "\t%s:\tflush count %10u, overflow count %10u\n",
                           stringify_guc_log_type(type),
                           log->stats[type].flush,
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.h 
b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.h
index 11fccd0b2294..ac1ee1d5ce10 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.h
@@ -17,12 +17,10 @@ struct intel_guc;
 
 #ifdef CONFIG_DRM_I915_DEBUG_GUC
 #define CRASH_BUFFER_SIZE      SZ_2M
-#define DPC_BUFFER_SIZE                SZ_8M
-#define ISR_BUFFER_SIZE                SZ_8M
+#define DEBUG_BUFFER_SIZE      SZ_16M
 #else
 #define CRASH_BUFFER_SIZE      SZ_8K
-#define DPC_BUFFER_SIZE                SZ_32K
-#define ISR_BUFFER_SIZE                SZ_32K
+#define DEBUG_BUFFER_SIZE      SZ_64K
 #endif
 
 /*
-- 
2.28.0

Reply via email to