drm/xe: Move HW GGTT definitions to dedicated file
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Tue, 26 Mar 2024 13:10:42 +0000 (14:10 +0100)
committerMichal Wajdeczko <michal.wajdeczko@intel.com>
Wed, 27 Mar 2024 10:31:11 +0000 (11:31 +0100)
It's better to keep all hardware GGTT definitions separated from
the driver code. It also helps to avoid duplicated definitions.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240326131042.319-1-michal.wajdeczko@intel.com
drivers/gpu/drm/xe/regs/xe_gtt_defs.h [new file with mode: 0644]
drivers/gpu/drm/xe/xe_ggtt.c
drivers/gpu/drm/xe/xe_guc.c

diff --git a/drivers/gpu/drm/xe/regs/xe_gtt_defs.h b/drivers/gpu/drm/xe/regs/xe_gtt_defs.h
new file mode 100644 (file)
index 0000000..9196d71
--- /dev/null
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2024 Intel Corporation
+ */
+
+#ifndef _XE_GTT_DEFS_H_
+#define _XE_GTT_DEFS_H_
+
+#define XELPG_GGTT_PTE_PAT0    BIT_ULL(52)
+#define XELPG_GGTT_PTE_PAT1    BIT_ULL(53)
+
+#define GUC_GGTT_TOP           0xFEE00000
+
+#endif
index f54523d7d03c9b34afb0e4d7c1b92f8681c938d6..f659af221bd82b3b192f3292dc7650cfc5651a88 100644 (file)
@@ -12,6 +12,7 @@
 #include <drm/i915_drm.h>
 
 #include "regs/xe_gt_regs.h"
+#include "regs/xe_gtt_defs.h"
 #include "regs/xe_regs.h"
 #include "xe_assert.h"
 #include "xe_bo.h"
 #include "xe_sriov.h"
 #include "xe_wopcm.h"
 
-#define XELPG_GGTT_PTE_PAT0    BIT_ULL(52)
-#define XELPG_GGTT_PTE_PAT1    BIT_ULL(53)
-
-/* GuC addresses above GUC_GGTT_TOP also don't map through the GTT */
-#define GUC_GGTT_TOP   0xFEE00000
-
 static u64 xelp_ggtt_pte_encode_bo(struct xe_bo *bo, u64 bo_offset,
                                   u16 pat_index)
 {
index c558d978462ae030076df7fb7c3242699001d388..77be3bc2d7c06d3a246f3fbe2892d69dbf57751b 100644 (file)
@@ -12,6 +12,7 @@
 #include "abi/guc_actions_abi.h"
 #include "abi/guc_errors_abi.h"
 #include "regs/xe_gt_regs.h"
+#include "regs/xe_gtt_defs.h"
 #include "regs/xe_guc_regs.h"
 #include "xe_bo.h"
 #include "xe_device.h"
 #include "xe_wa.h"
 #include "xe_wopcm.h"
 
-/* GuC addresses above GUC_GGTT_TOP also don't map through the GTT */
-#define GUC_GGTT_TOP    0xFEE00000
 static u32 guc_bo_ggtt_addr(struct xe_guc *guc,
                            struct xe_bo *bo)
 {
        struct xe_device *xe = guc_to_xe(guc);
        u32 addr = xe_bo_ggtt_addr(bo);
 
+       /* GuC addresses above GUC_GGTT_TOP don't map through the GTT */
        xe_assert(xe, addr >= xe_wopcm_size(guc_to_xe(guc)));
        xe_assert(xe, addr < GUC_GGTT_TOP);
        xe_assert(xe, bo->size <= GUC_GGTT_TOP - addr);