On 11/04/2011 03:36 PM, Ilija Hadzic wrote: > > > On Fri, 4 Nov 2011, Thomas Hellstrom wrote: > >> Hi. >> >> I have a question about the semantics of the DRM_IOCTL_MODE_CURSOR >> iotcl: >> >> Some hardware (vmware's virtual in particular) may not be able to >> pick up the changes from a bo directly, since the cursor data is sent >> though the command stream. Hence we need a notification when the >> cursor image has changed. >> >> Could we *require* that a cursor image change needs to be followed by >> an ioctl call with the flag >> DRM_MODE_CURSOR_BO? >> >> Thanks, >> Thomas >> > > FWIW, Acked-by: Ilija Hadzic <ihadzic at research.bell-labs.com> > I have a few places where I could use such an ioctl. >
Well, the idea was to reuse the DRM_IOCTL_MODE_CURSOR ictl that sets the cursor BO, and require that it is re-emitted once the cursor image has changed, since I guess that's what many X servers do anyway. > BTW, Thomas, in the above "since the cursor data is sent though the > command stream", did you mean "since the cursor data is *not* sent > though the command stream". If it was sent, through command stream, > then CS ioctl would know when the cursor changes. I meant the device interface, not the drm interface. So when we have a new cursor image, we need to collect the scanline data an send it through the device command stream. We don't export that possibility in the DRM interface. > > My understanding is that the cursor data are mmap-ed letting userland > poke it at will (so the case when an "hourglass" changes into "arrow" > is particularly hard to know that it happened). Yes. Hardware that scan out directly from the cursor BO don't really need to know, but we do. > > -- Ilija Thanks, /Thomas