<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Aug 7, 2015 at 12:03 PM, Mathias Fröhlich <span dir="ltr"><<a href="mailto:Mathias.Froehlich@gmx.net" target="_blank">Mathias.Froehlich@gmx.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>
<div style="font-family:'Monospace';font-size:9pt;font-weight:400;font-style:normal">
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"> </p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">Ilia,</p><span class="">
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px"> </p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">On Friday, August 07, 2015 11:20:42 Ilia Mirkin wrote:</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> Yeah, I tend to agree with you -- it seems like _tnl_wakeup is meant for</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> "oh hey, I shut you down and haven't been sending you updates, but I want</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> to use you again, so please update your stuff to match reality". Does it</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> even need to be called at all? nouveau_state.c:nouveau_update_state</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> unconditionally calls _tnl_InvalidateState. i965, on the other hand, the</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> only other user of tnl_wakeup, calls it at draw time, for RenderMode !=</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> GL_RENDER, and never calls _tnl_InvalidateState, so the tnl module is</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> completely out-of-date there.</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">></p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">> So I'm actually in favor of removing it entirely. Thoughts?</p>
</span><p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">You mean remove _tnl_wakeup/_tnl_InvalidateState entirely from the</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">nouveau initialzation? That may work - I have the same</p>
<p style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;text-indent:0px">impression, but I cannot exactly foresee what we might break.</p></div></blockquote><div><br></div><div>None of the other drivers appear to do it... should be safe. I'll def test it out before pushing, of course... I've been meaning to plug a nv1x in so I can play with a couple of minor items. Ideally it'd switch to the i965 method, and only call tnl_InvalidateState when in swtnl mode (as well as calling tnl_wakeup on hwtnl -> !hwtnl transitions) but... meh. Actually it looks like SWTNL is largely unimplemented and it falls straight back to SWRAST? That's a bit unfortunate for nv04/nv05 :(</div><div><br></div><div> -ilia</div></div></div></div>