On Thu, Jul 10, 2008 at 2:55 PM, Tiago Vignatti <<a href="mailto:vignatti@c3sl.ufpr.br">vignatti@c3sl.ufpr.br</a>> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Daniel Stone escreveu:<br>
<div><div></div><div class="Wj3C7c">> On Thu, Jul 10, 2008 at 04:05:57AM -0300, Tiago Vignatti wrote:<br>
>> - transform relative motion into absolute<br>
>> - takes care the cursor limits<br>
>> - responsible for the acceleration computation<br>
>> - responsible for the input transformation as well?<br>
>> - touch the gfx registers.<br>
><br>
> Hang on, are we actually putting all this in the kernel?<br>
<br>
</div></div>Yes, Daniel. This was my first thought.<br>
<br>
Now I'm trying to discuss with you how we can distribute this things<br>
between X, drm and kernel.<br>
<div><div></div><div class="Wj3C7c"></div></div></blockquote><div><br>The only thing that should be in the kernel is the:<br> - touch the gfx registers.<br>and in some regards<br> - takes care of the cursor limits.<br></div>
</div><br>Anything else is the client responsibility. The coordinates that we<br>feed the kernel will be relative to the crtc and in pixels of scanout<br>buffer. We do not have a 2D/3D acceleration API in the kernel.<br>Nor should we have a mouse position calculation API in the<br>
kernel either.<br><br>Cursor is in the kernel because in the new world of kernel<br>modesetting you don't map registers to userspace you talk to<br>them via the kernel.<br><br>I am a bit divided if any of the above have a place in the DRM<br>
userspace library.<br><br>Cheers Jakob.<br>