[Mesa-dev] [PATCH 10/11] anv/cnl: Generate and use gen10 functions

Anuj Phogat anuj.phogat at gmail.com
Tue Jun 13 18:28:29 UTC 2017


Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
---
 src/intel/vulkan/anv_blorp.c            | 3 +++
 src/intel/vulkan/anv_cmd_buffer.c       | 2 ++
 src/intel/vulkan/anv_device.c           | 2 ++
 src/intel/vulkan/anv_entrypoints_gen.py | 7 ++++++-
 4 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/src/intel/vulkan/anv_blorp.c b/src/intel/vulkan/anv_blorp.c
index a869eeb..d28ea90 100644
--- a/src/intel/vulkan/anv_blorp.c
+++ b/src/intel/vulkan/anv_blorp.c
@@ -111,6 +111,9 @@ anv_device_init_blorp(struct anv_device *device)
    case 9:
       device->blorp.exec = gen9_blorp_exec;
       break;
+   case 10:
+      device->blorp.exec = gen10_blorp_exec;
+      break;
    default:
       unreachable("Unknown hardware generation");
    }
diff --git a/src/intel/vulkan/anv_cmd_buffer.c b/src/intel/vulkan/anv_cmd_buffer.c
index 120b864..7317674 100644
--- a/src/intel/vulkan/anv_cmd_buffer.c
+++ b/src/intel/vulkan/anv_cmd_buffer.c
@@ -335,6 +335,8 @@ anv_cmd_buffer_emit_state_base_address(struct anv_cmd_buffer *cmd_buffer)
       return gen8_cmd_buffer_emit_state_base_address(cmd_buffer);
    case 9:
       return gen9_cmd_buffer_emit_state_base_address(cmd_buffer);
+   case 10:
+      return gen10_cmd_buffer_emit_state_base_address(cmd_buffer);
    default:
       unreachable("unsupported gen\n");
    }
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index 8e8c502..d192257 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -1231,6 +1231,8 @@ VkResult anv_CreateDevice(
       break;
    case 9:
       result = gen9_init_device_state(device);
+   case 10:
+      result = gen10_init_device_state(device);
       break;
    default:
       /* Shouldn't get here as we don't create physical devices for any other
diff --git a/src/intel/vulkan/anv_entrypoints_gen.py b/src/intel/vulkan/anv_entrypoints_gen.py
index 2168b7f..f1b4b0c 100644
--- a/src/intel/vulkan/anv_entrypoints_gen.py
+++ b/src/intel/vulkan/anv_entrypoints_gen.py
@@ -91,6 +91,7 @@ TEMPLATE_H = Template(textwrap.dedent("""\
       ${type_} gen75_${name}(${args});
       ${type_} gen8_${name}(${args});
       ${type_} gen9_${name}(${args});
+      ${type_} gen10_${name}(${args});
       % if guard is not None:
     #endif // ${guard}
       % endif
@@ -152,7 +153,7 @@ TEMPLATE_C = Template(textwrap.dedent(u"""\
      * either pick the correct entry point.
      */
 
-    % for layer in ['anv', 'gen7', 'gen75', 'gen8', 'gen9']:
+    % for layer in ['anv', 'gen7', 'gen75', 'gen8', 'gen9', 'gen10']:
       % for type_, name, args, _, _, guard in entrypoints:
         % if guard is not None:
     #ifdef ${guard}
@@ -184,6 +185,10 @@ TEMPLATE_C = Template(textwrap.dedent(u"""\
        }
 
        switch (devinfo->gen) {
+       case 10:
+          if (gen10_layer.entrypoints[index])
+             return gen10_layer.entrypoints[index];
+          /* fall through */
        case 9:
           if (gen9_layer.entrypoints[index])
              return gen9_layer.entrypoints[index];
-- 
2.9.3



More information about the mesa-dev mailing list