From: Matt Atwood <matthew.s.atwood@intel.com>
To: intel-xe@lists.freedesktop.org
Cc: Matt Roper <matthew.d.roper@intel.com>,
Matt Atwood <matthew.s.atwood@intel.com>
Subject: [PATCH 6/9] drm/xe/xe3lpm: Add new "instance0" steering table
Date: Fri, 6 Sep 2024 14:51:50 -0700 [thread overview]
Message-ID: <20240906215153.31210-7-matthew.s.atwood@intel.com> (raw)
In-Reply-To: <20240906215153.31210-1-matthew.s.atwood@intel.com>
From: Matt Roper <matthew.d.roper@intel.com>
MCR steering on Xe3 media IP is almost the same as it was on Xe2, except
for one new range (0x38D0D0 - 0x38D0FF) which has changed to an MCR
"MEDIAINF" range on Xe3. Since we can always steer to to grpid /
instanceid 0 for MEDIAINF ranges, define a new "INSTANCE0" steering
table for Xe3 media. Xe3 can continue to use the same OADDRM/GPMXMT
table as Xe2.
Bspec: 74298
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Matt Atwood <matthew.s.atwood@intel.com>
---
drivers/gpu/drm/xe/xe_gt_mcr.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/xe/xe_gt_mcr.c b/drivers/gpu/drm/xe/xe_gt_mcr.c
index 7d7bd0be6233..d0d84754c3f6 100644
--- a/drivers/gpu/drm/xe/xe_gt_mcr.c
+++ b/drivers/gpu/drm/xe/xe_gt_mcr.c
@@ -237,6 +237,18 @@ static const struct xe_mmio_range xe2lpm_instance0_steering_table[] = {
{},
};
+static const struct xe_mmio_range xe3lpm_instance0_steering_table[] = {
+ { 0x384000, 0x3847DF }, /* GAM, rsvd, GAM */
+ { 0x384900, 0x384AFF }, /* GAM */
+ { 0x389560, 0x3895FF }, /* MEDIAINF */
+ { 0x38B600, 0x38B8FF }, /* L3BANK */
+ { 0x38C800, 0x38D07F }, /* GAM, MEDIAINF */
+ { 0x38D0D0, 0x38D0FF }, /* MEDIAINF */
+ { 0x38F000, 0x38F0FF }, /* GAM */
+ { 0x393C00, 0x393C7F }, /* MEDIAINF */
+ {},
+};
+
static void init_steering_l3bank(struct xe_gt *gt)
{
if (GRAPHICS_VERx100(gt_to_xe(gt)) >= 1270) {
@@ -439,7 +451,10 @@ void xe_gt_mcr_init(struct xe_gt *gt)
if (gt->info.type == XE_GT_TYPE_MEDIA) {
drm_WARN_ON(&xe->drm, MEDIA_VER(xe) < 13);
- if (MEDIA_VER(xe) >= 20) {
+ if (MEDIA_VER(xe) >= 30) {
+ gt->steering[OADDRM].ranges = xe2lpm_gpmxmt_steering_table;
+ gt->steering[INSTANCE0].ranges = xe3lpm_instance0_steering_table;
+ } else if (MEDIA_VER(xe) >= 20) {
gt->steering[OADDRM].ranges = xe2lpm_gpmxmt_steering_table;
gt->steering[INSTANCE0].ranges = xe2lpm_instance0_steering_table;
} else {
--
2.44.0
next prev parent reply other threads:[~2024-09-06 21:52 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-06 21:51 [PATCH 0/9] Add Xe3 and Panther Lake support Matt Atwood
2024-09-06 21:51 ` [PATCH 1/9] drm/xe/xe3: Xe3 uses the same PAT settings as Xe2 Matt Atwood
2024-09-06 22:39 ` Rodrigo Vivi
2024-09-06 23:12 ` Lucas De Marchi
2024-09-06 21:51 ` [PATCH 2/9] drm/xe/xe3: Define Xe3 feature flags Matt Atwood
2024-09-06 23:34 ` Matt Roper
2024-09-06 21:51 ` [PATCH 3/9] drm/xe/xe3: Generate and store the L3 bank mask Matt Atwood
2024-09-06 23:43 ` Matt Roper
2024-09-09 12:15 ` Francois Dugast
2024-09-06 21:51 ` [PATCH 4/9] drm/xe/xe3: Add initial set of workarounds Matt Atwood
2024-09-11 18:03 ` Matt Roper
2024-09-06 21:51 ` [PATCH 5/9] drm/xe/xe3: Extend wa_15015404425 for xe3 Matt Atwood
2024-09-06 23:52 ` Matt Roper
2024-09-11 20:17 ` Matt Roper
2024-09-06 21:51 ` Matt Atwood [this message]
2024-09-06 21:51 ` [PATCH 7/9] drm/xe/ptl: PTL re-uses Xe2 MOCS table Matt Atwood
2024-09-10 6:16 ` Chauhan, Shekhar
2024-09-06 21:51 ` [PATCH 8/9] drm/xe/ptl: Add performance tuning settings for PTL Matt Atwood
2024-09-06 23:55 ` Matt Roper
2024-09-10 6:37 ` Chauhan, Shekhar
2024-09-06 21:51 ` [PATCH 9/9] drm/xe/ptl: Add PTL platform definition Matt Atwood
2024-09-06 23:56 ` Matt Roper
2024-09-12 16:56 ` Matt Roper
2024-09-06 23:31 ` ✗ CI.checkpatch: warning for Add Xe3 and Panther Lake support Patchwork
2024-09-06 23:32 ` ✓ CI.KUnit: success " Patchwork
2024-09-06 23:44 ` ✓ CI.Build: " Patchwork
2024-09-06 23:46 ` ✓ CI.Hooks: " Patchwork
2024-09-06 23:48 ` ✓ CI.checksparse: " Patchwork
2024-09-07 0:30 ` ✓ CI.BAT: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240906215153.31210-7-matthew.s.atwood@intel.com \
--to=matthew.s.atwood@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=matthew.d.roper@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox