anv/cnl: Generate and use gen10 functions

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Anuj Phogat 2017-05-26 09:11:20 -07:00
parent c17e214a6b
commit ac6bc0e034
4 changed files with 13 additions and 1 deletions

View File

@ -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");
}

View File

@ -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");
}

View File

@ -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

View File

@ -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];