I have a small Intel Atom based device - basically just a touch-screen with a minimal motherboard (one of these).
I've replaced the stock firmware with a GUI-less Ubuntu distribution (based on 12.04). There is limited psuedo-file based backlight control available, but when the backlight is set to 'off', there is still a faint glow from the screen. The same happens using
However, if X.Org is installed and running, and
is issued at the command line, the backlight is extinguished completely.
Can anyone tell me what X.Org is likely to be doing?
I've been through the xset source and I can see it's sending a message to the X server (DPMSFoceLevel() uses the GetReq() macro to create a message), but I got lost after that.
I've also tried to write directly to the framebuffer with an ioctl call in C, but I'm getting an "Invalid Argument" returned from the ioctl call. I don't know whether I'm using it wrong or something at the other end isn't implemented.
I'm trying to avoid having to run a X11 server just to switch the screen off, but I'm struggling to understand how X.Org is communicating with the screen hardware. For anyone who might be able to help, progress so far is detailed on this forum thread, including the code with which I attempted to interface with the Framebuffer.
I'd be very grateful if anyone could provide any hints as to how I might be able to proceed.
I've replaced the stock firmware with a GUI-less Ubuntu distribution (based on 12.04). There is limited psuedo-file based backlight control available, but when the backlight is set to 'off', there is still a faint glow from the screen. The same happens using
Code:
setterm -powersave powerdown -blank 1 -powerdown 1
Code:
xset dpms force off
Can anyone tell me what X.Org is likely to be doing?
I've been through the xset source and I can see it's sending a message to the X server (DPMSFoceLevel() uses the GetReq() macro to create a message), but I got lost after that.
I've also tried to write directly to the framebuffer with an ioctl call in C, but I'm getting an "Invalid Argument" returned from the ioctl call. I don't know whether I'm using it wrong or something at the other end isn't implemented.
I'm trying to avoid having to run a X11 server just to switch the screen off, but I'm struggling to understand how X.Org is communicating with the screen hardware. For anyone who might be able to help, progress so far is detailed on this forum thread, including the code with which I attempted to interface with the Framebuffer.
I'd be very grateful if anyone could provide any hints as to how I might be able to proceed.
Comment