All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 0/2] lib/igt_draw: Change MOCS settings for MTL
@ 2023-01-13  6:22 Jeevan B
  2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 1/2] lib/igt_draw: Use intel_get_uc_mocs to get MOCS value Jeevan B
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Jeevan B @ 2023-01-13  6:22 UTC (permalink / raw)
  To: igt-dev; +Cc: lucas.demarchi

On MTL, we want the table entry labelled "UC (GO:Mem)"
which has index 5.  This means that the MOCS value is 10.

v2: Add define for MOCS settings. (Lucas)
v3: Extending get_mocs_index and using get_mocs_index
    to get mocs val. (Zbigniew)
v4: Spliting the patches as Fix and MTL changes.

Jeevan B (2):
  lib/igt_draw: Use intel_get_uc_mocs to get MOCS value
  lib/igt_draw: Add MOCS values for MTL

 lib/i915/intel_mocs.c | 12 ++++++++----
 lib/igt_draw.c        |  2 +-
 2 files changed, 9 insertions(+), 5 deletions(-)

-- 
2.19.1

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [igt-dev] [PATCH i-g-t 1/2] lib/igt_draw: Use intel_get_uc_mocs to get MOCS value
  2023-01-13  6:22 [igt-dev] [PATCH i-g-t 0/2] lib/igt_draw: Change MOCS settings for MTL Jeevan B
@ 2023-01-13  6:22 ` Jeevan B
  2023-01-13 16:24   ` Lucas De Marchi
  2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 2/2] lib/igt_draw: Add MOCS values for MTL Jeevan B
  2023-01-13  6:33 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_draw: Change MOCS settings for MTL (rev8) Patchwork
  2 siblings, 1 reply; 6+ messages in thread
From: Jeevan B @ 2023-01-13  6:22 UTC (permalink / raw)
  To: igt-dev; +Cc: lucas.demarchi

Use intel_get_uc_mocs instead of hardcoding to get table entry.

Signed-off-by: Jeevan B <jeevan.b@intel.com>
---
 lib/igt_draw.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/igt_draw.c b/lib/igt_draw.c
index 975d65cd..d8f4596a 100644
--- a/lib/igt_draw.c
+++ b/lib/igt_draw.c
@@ -703,7 +703,7 @@ static void draw_rect_blt(int fd, struct cmd_data *cmd_data,
 
 		intel_bb_out(ibb, XY_FAST_COLOR_BLT | blt_cmd_depth);
 		/* DG2 MOCS entry 2 is "UC - Non-Coherent; GO:Memory" */
-		intel_bb_out(ibb, blt_cmd_tiling | 2 << 21 | (pitch-1));
+		intel_bb_out(ibb, blt_cmd_tiling | intel_get_uc_mocs(fd) << 21 | (pitch-1));
 		intel_bb_out(ibb, (rect->y << 16) | rect->x);
 		intel_bb_out(ibb, ((rect->y + rect->h) << 16) | (rect->x + rect->w));
 		intel_bb_emit_reloc_fenced(ibb, dst->handle, 0,
-- 
2.19.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [igt-dev] [PATCH i-g-t 2/2] lib/igt_draw: Add MOCS values for MTL
  2023-01-13  6:22 [igt-dev] [PATCH i-g-t 0/2] lib/igt_draw: Change MOCS settings for MTL Jeevan B
  2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 1/2] lib/igt_draw: Use intel_get_uc_mocs to get MOCS value Jeevan B
@ 2023-01-13  6:22 ` Jeevan B
  2023-01-13 16:25   ` Lucas De Marchi
  2023-01-13  6:33 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_draw: Change MOCS settings for MTL (rev8) Patchwork
  2 siblings, 1 reply; 6+ messages in thread
From: Jeevan B @ 2023-01-13  6:22 UTC (permalink / raw)
  To: igt-dev; +Cc: lucas.demarchi

On MTL, we want the table entry labelled "UC (GO:Mem)"
which has index 5.  This means that the MOCS value is 10.

Signed-off-by: Jeevan B <jeevan.b@intel.com>
---
 lib/i915/intel_mocs.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/lib/i915/intel_mocs.c b/lib/i915/intel_mocs.c
index df541ab0..95f0fbde 100644
--- a/lib/i915/intel_mocs.c
+++ b/lib/i915/intel_mocs.c
@@ -11,6 +11,8 @@
 #define DG1_MOCS_WB_IDX				5
 #define DG2_MOCS_UC_IDX				1
 #define DG2_MOCS_WB_IDX				3
+#define MTL_MOCS_UC_IDX				5
+#define MTL_MOCS_WB_IDX				10
 #define GEN12_MOCS_UC_IDX			3
 #define GEN12_MOCS_WB_IDX			2
 #define XY_BLOCK_COPY_BLT_MOCS_SHIFT		21
@@ -32,13 +34,15 @@ static void get_mocs_index(int fd, struct drm_i915_mocs_index *mocs)
 	 * This helper function is providing current UC as well
 	 * as WB MOCS index based on platform.
 	 */
-	if (IS_DG1(devid)) {
-		mocs->uc_index = DG1_MOCS_UC_IDX;
-		mocs->wb_index = DG1_MOCS_WB_IDX;
+	if (IS_METEORLAKE(devid)) {
+		mocs->uc_index = MTL_MOCS_UC_IDX;
+		mocs->wb_index = MTL_MOCS_WB_IDX;
 	} else if (IS_DG2(devid)) {
 		mocs->uc_index = DG2_MOCS_UC_IDX;
 		mocs->wb_index = DG2_MOCS_WB_IDX;
-
+	} else if (IS_DG1(devid)) {
+		mocs->uc_index = DG1_MOCS_UC_IDX;
+		mocs->wb_index = DG1_MOCS_WB_IDX;
 	} else if (IS_GEN12(devid)) {
 		mocs->uc_index = GEN12_MOCS_UC_IDX;
 		mocs->wb_index = GEN12_MOCS_WB_IDX;
-- 
2.19.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_draw: Change MOCS settings for MTL (rev8)
  2023-01-13  6:22 [igt-dev] [PATCH i-g-t 0/2] lib/igt_draw: Change MOCS settings for MTL Jeevan B
  2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 1/2] lib/igt_draw: Use intel_get_uc_mocs to get MOCS value Jeevan B
  2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 2/2] lib/igt_draw: Add MOCS values for MTL Jeevan B
@ 2023-01-13  6:33 ` Patchwork
  2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-01-13  6:33 UTC (permalink / raw)
  To: Jeevan B; +Cc: igt-dev

== Series Details ==

Series: lib/igt_draw: Change MOCS settings for MTL (rev8)
URL   : https://patchwork.freedesktop.org/series/111958/
State : failure

== Summary ==

IGT patchset build failed on latest successful build
1e6d24e6dfa42b22f950f7d5e436b8f9acf8747f Update NEWS, bump version to 1.27

ninja: Entering directory `/opt/igt/build'
[1/788] Generating version.h with a custom command.
[2/785] Linking static target lib/libigt-i915_intel_decode_c.a.
[3/785] Linking static target lib/libigt-igt_device_scan_c.a.
[4/785] Linking static target lib/libigt-intel_batchbuffer_c.a.
[5/785] Linking static target lib/libigt-intel_bufops_c.a.
[6/785] Linking static target lib/libigt-rendercopy_gen6_c.a.
[7/785] Linking static target lib/libigt-rendercopy_gen7_c.a.
[8/785] Linking static target lib/libigt-rendercopy_gen8_c.a.
[9/785] Linking static target lib/libigt-rendercopy_gen9_c.a.
[10/785] Compiling C object 'lib/76b5a35@@igt-igt_draw_c@sta/igt_draw.c.o'.
FAILED: lib/76b5a35@@igt-igt_draw_c@sta/igt_draw.c.o 
cc -Ilib/76b5a35@@igt-igt_draw_c@sta -Ilib -I../../../usr/src/igt-gpu-tools/lib -I../../../usr/src/igt-gpu-tools/include/drm-uapi -I../../../usr/src/igt-gpu-tools/include/linux-uapi -I../../../usr/src/igt-gpu-tools/lib/stubs/syscalls -I. -I../../../usr/src/igt-gpu-tools/ -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/x86_64-linux-gnu -I/usr/include/valgrind -I/usr/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=gnu11 -O2 -g -D_GNU_SOURCE -include config.h -D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement -Wformat=2 -Wimplicit-fallthrough=0 -Wlogical-op -Wmissing-declarations -Wmissing-format-attribute -Wmissing-noreturn -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wuninitialized -Wunused -Wno-clobbered -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-pointer-arith -Wno-address-of-packed-member -Wno-sign-compare -Wno-type-limits -Wno-unused-parameter -Wno-unused-result -Werror=address -Werror=array-bounds -Werror=implicit -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=nonnull -Werror=pointer-to-int-cast -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=write-strings -fno-builtin-malloc -fno-builtin-calloc -fcommon -fPIC -pthread '-DIGT_DATADIR="/opt/igt/share/igt-gpu-tools"' '-DIGT_SRCDIR="/usr/src/igt-gpu-tools/tests"' '-DIGT_LOG_DOMAIN="igt_draw"' -MD -MQ 'lib/76b5a35@@igt-igt_draw_c@sta/igt_draw.c.o' -MF 'lib/76b5a35@@igt-igt_draw_c@sta/igt_draw.c.o.d' -o 'lib/76b5a35@@igt-igt_draw_c@sta/igt_draw.c.o' -c ../../../usr/src/igt-gpu-tools/lib/igt_draw.c
../../../usr/src/igt-gpu-tools/lib/igt_draw.c: In function ‘draw_rect_blt’:
../../../usr/src/igt-gpu-tools/lib/igt_draw.c:706:38: error: implicit declaration of function ‘intel_get_uc_mocs’; did you mean ‘intel_get_pci_device’? [-Werror=implicit-function-declaration]
  706 |   intel_bb_out(ibb, blt_cmd_tiling | intel_get_uc_mocs(fd) << 21 | (pitch-1));
      |                                      ^~~~~~~~~~~~~~~~~
      |                                      intel_get_pci_device
../../../usr/src/igt-gpu-tools/lib/igt_draw.c:706:38: warning: nested extern declaration of ‘intel_get_uc_mocs’ [-Wnested-externs]
cc1: some warnings being treated as errors
ninja: build stopped: subcommand failed.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 1/2] lib/igt_draw: Use intel_get_uc_mocs to get MOCS value
  2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 1/2] lib/igt_draw: Use intel_get_uc_mocs to get MOCS value Jeevan B
@ 2023-01-13 16:24   ` Lucas De Marchi
  0 siblings, 0 replies; 6+ messages in thread
From: Lucas De Marchi @ 2023-01-13 16:24 UTC (permalink / raw)
  To: Jeevan B; +Cc: igt-dev

On Fri, Jan 13, 2023 at 11:52:32AM +0530, Jeevan B wrote:
>Use intel_get_uc_mocs instead of hardcoding to get table entry.
>
>Signed-off-by: Jeevan B <jeevan.b@intel.com>


Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>

Lucas De Marchi

>---
> lib/igt_draw.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/lib/igt_draw.c b/lib/igt_draw.c
>index 975d65cd..d8f4596a 100644
>--- a/lib/igt_draw.c
>+++ b/lib/igt_draw.c
>@@ -703,7 +703,7 @@ static void draw_rect_blt(int fd, struct cmd_data *cmd_data,
>
> 		intel_bb_out(ibb, XY_FAST_COLOR_BLT | blt_cmd_depth);
> 		/* DG2 MOCS entry 2 is "UC - Non-Coherent; GO:Memory" */
>-		intel_bb_out(ibb, blt_cmd_tiling | 2 << 21 | (pitch-1));
>+		intel_bb_out(ibb, blt_cmd_tiling | intel_get_uc_mocs(fd) << 21 | (pitch-1));
> 		intel_bb_out(ibb, (rect->y << 16) | rect->x);
> 		intel_bb_out(ibb, ((rect->y + rect->h) << 16) | (rect->x + rect->w));
> 		intel_bb_emit_reloc_fenced(ibb, dst->handle, 0,
>-- 
>2.19.1
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [igt-dev] [PATCH i-g-t 2/2] lib/igt_draw: Add MOCS values for MTL
  2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 2/2] lib/igt_draw: Add MOCS values for MTL Jeevan B
@ 2023-01-13 16:25   ` Lucas De Marchi
  0 siblings, 0 replies; 6+ messages in thread
From: Lucas De Marchi @ 2023-01-13 16:25 UTC (permalink / raw)
  To: Jeevan B; +Cc: igt-dev

On Fri, Jan 13, 2023 at 11:52:33AM +0530, Jeevan B wrote:
>On MTL, we want the table entry labelled "UC (GO:Mem)"
>which has index 5.  This means that the MOCS value is 10.
>
>Signed-off-by: Jeevan B <jeevan.b@intel.com>


Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>

Lucas De Marchi

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-01-13 16:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-13  6:22 [igt-dev] [PATCH i-g-t 0/2] lib/igt_draw: Change MOCS settings for MTL Jeevan B
2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 1/2] lib/igt_draw: Use intel_get_uc_mocs to get MOCS value Jeevan B
2023-01-13 16:24   ` Lucas De Marchi
2023-01-13  6:22 ` [igt-dev] [PATCH i-g-t 2/2] lib/igt_draw: Add MOCS values for MTL Jeevan B
2023-01-13 16:25   ` Lucas De Marchi
2023-01-13  6:33 ` [igt-dev] ✗ Fi.CI.BUILD: failure for lib/igt_draw: Change MOCS settings for MTL (rev8) Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.