<html>
<head>
<meta http-equiv="Content-Type" content="text/html"/>
</head>
<body>
<div style="color: black;">
<p style="margin: 0 0 1em 0; color: black;">Jonas,</p>
<p style="margin: 0 0 1em 0; color: black;">Welcome to mesa-dev!</p>
<p style="margin: 0 0 1em 0; color: black; font-family: sans-serif;"></p>
<p style="margin: 0 0 1em 0; color: black; font-family: sans-serif;">On May
11, 2017 12:08:01 PM Jonas Kulla <nyocurio@gmail.com> wrote:</p>
<p style="margin: 0 0 1em 0; color: black; font-family: sans-serif;">>
Hello everyone,<br>
><br>
> I'm a student who's looking to create a small Vulkan demo for my
computer<br>
> graphics class; my laptop (CPU: Intel N3540) has an integrated Bay
Trail<br>
> chip if I looked that up right, which should be capable of supporting<br>
> Vulkan.<br>
</p>
<p style="margin: 0 0 1em 0; color: black;"><br>
Yes, that is a Bay Trail which can mostly support Vulkan. (More on that
later.)</p>
<p style="margin: 0 0 1em 0; color: black; font-family: sans-serif;"><br>
> I saw that Bay Trail support in anv is marked "experimental", and
indeed<br>
> running vulkaninfo crashes with<br>
><br>
> info.c:518: failed with VK_ERROR_INITIALIZATION_FAILED<br>
</p>
<p style="margin: 0 0 1em 0; color: black;"><br>
That doesn't seem right.  I don't know that I've ever fired up our
driver on a Bay Trail personally but it should mostly work.  I guess
you've found the first step in your project.  :-)  Getting
vulkaninfo working should be easy.  Just set a breakpoint in the
driver and figure out why it's throwing
VK_ERROR_INITIALIZATION_FAILED.  If you have a debug build it will
probably even print the reason out to stderr for you.<br>
</p>
<p style="margin: 0 0 1em 0; color: black; font-family: sans-serif;"><br>
> I was wondering if someone could comment on how much work would be<br>
> involved in completing the Bay Trail code in anv, and if it's not too
much,<br>
> whether someone would be willing to offer me light mentorship in doing<br>
> so.</p>
<p style="margin: 0 0 1em 0; color: black;"></p>
<p style="margin: 0 0 1em 0; color: black;">Bay trail should be working
basically exactly as well as Ivy Bridge which means lots of stuff should
run though it won't be close to conformant.  What's missing? 
First off, there's probably a bunch of regular bug-fixing to do.  Most
of the gen7 code is shared with gen8 but there are still a bunch of gen7
bugs that no one has bothered to track down.  It shouldn't be too bad
as we do run Haswell in our CI system and it's down to a couple hundred CTS
fails last I checked.  Fortunately, the Vulkan test suite is fully
open-source so you can easily download and run it once you get vulkaninfo
working.</p>
<p style="margin: 0 0 1em 0; color: black;">Beyond just bugfixing, there
are also a number of core Vulkan features for which gen7 lacks hardware
support.  Most of these are features we expose in GL so we have some
sort of workaround.  The workarounds will have to be ported to Vulkan
somehow (though it may not be the same workaround in the end). Off the top
of my head:</p>
<p style="margin: 0 0 1em 0; color: black;"> - Texture Swizzle<br>
 - Stencil Texturing<br>
 - Some missing VkFormats<br>
 - vkCmdWaitEvent<br>
 - Missing the MI_MATH stuff required for queries</p>
<p style="margin: 0 0 1em 0; color: black;">There may be more that I'm just
not remembering.</p>
<p style="margin: 0 0 1em 0; color: black;">></p>
<p style="margin: 0 0 1em 0; color: black; font-family: sans-serif;"> I'm
mostly comfortable with OpenGL and general graphics / GPU concepts,<br>
> but I have no experience in driver code aside from following Mesa<br>
> development<br>
> as a bystander.<br>
</p>
<p style="margin: 0 0 1em 0; color: black;"><br>
Everyone starts somewhere.  Feel free to dive right in and give it a
go!   If you have any questions along the way, the best way to
get answers is probably to ask them on #dri-devel or #intel-gfx on
IRC.  I'm usually on (nick: jekstrand) and am happy to answer
questions.</p>
<p style="margin: 0 0 1em 0; color: black;">--Jason</p>
</div>
</body>
</html>