[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-xorg
Subject:    Re: Deal with DPMS in xf86-input driver
From:       Peter Hutterer <peter.hutterer () who-t ! net>
Date:       2013-10-22 23:16:51
Message-ID: 20131022231651.GA28136 () yabbi ! bne ! redhat ! com
[Download RAW message or body]

On Tue, Oct 22, 2013 at 06:09:24PM +0000, Kautschitz Horst wrote:
> We are using an embedded Platform with X11R7.7 without Window Manager.
> The input is done over a Touchscreen with the xf86-input-tslib driver.
> 
> The behaviour until now is that a touch (click) on the touchscreen generates an \
> input event when dpms is active. This behaviour should be changed in such way that \
> no touch(click) event should occur and screen should go on when dpms is active This \
> has to be done because an operation  could start. 
> So i want to implement following behaviour in the xf86-input-tslib driver.
> 
> -          Check if dpms is active
> 
> -          If dpms active - switch monitor to on
> 
> o   -> force dpms mode to or simply create a moving event - no "click" should be \
> announced 
> I tried to implement this by using the DPMS Functions.
> if (DPMSQueryExtension(dpy, &dummy, &dummy))
> if (DPMSCapable(dpy)) {
> DPMSInfo(dpy, &state, &onoff);
> if (onoff) {
> ErrorF("DPMS is Enabled");
> switch (state) {
> case DPMSModeOn:
> ErrorF("  Monitor is On");
> ....
> 
> 
> My problem is that getting dpy in the driver breaks the xserver itself and i have \
> no intention why. I also get no information why this happens until now. dpy = \
> XOpenDisplay(dpyName); 
> Does anyone know a better way how to deal with such a behaviour?
> Is creating a socket to the XServer allowed in a driver?
> I also checked other input drivers but didn't find a starting point.

don't mix client and driver code, it leads to unhappiness. the driver is
loaded as module into the server, so you have access to anything inside the
server. Have a look at xserver/Xext/dpms.c, that's the entry point for the
dpms protocol. From there you can see what the server does in response to
the protocol requests - you can do the same from within the driver.
 
Cheers,
   Peter
_______________________________________________
xorg@lists.x.org: X.Org support
Archives: http://lists.freedesktop.org/archives/xorg
Info: http://lists.x.org/mailman/listinfo/xorg
Your subscription address: freedesktop-xorg@progressive-comp.com


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic