mckaygerhard / dingoo-linux

Automatically exported from code.google.com/p/dingoo-linux
0 stars 0 forks source link

Volume and brightness control. #3

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Do it the dirty way entirely in the keyboard driver or do it properly
(brightness driver + input events + user space daemon) ?.

Original issue reported on code.google.com by igga...@gmail.com on 29 May 2009 at 12:25

GoogleCodeExporter commented 9 years ago

Original comment by igga...@gmail.com on 29 May 2009 at 12:26

GoogleCodeExporter commented 9 years ago

Original comment by igga...@gmail.com on 14 Jun 2009 at 3:16

GoogleCodeExporter commented 9 years ago
Hi! Are you actively working on this? I'd still be interested in implementing 
the
daemon. I'm the one who made the thread on freeforums. I have a prototype 
running, my
device has arrived, and I'm able to build programs and the kernel.

I have tried to set the backlight intensity by doing a ioctl on the framebuffer
device (using FBIOSETBACKLIGHT 0x4688). The ioctl arrived in the kernel (in
jz4740_sldc.c), but nothing happened. Is this expected?

Also, what's the status of the second framebuffer you talked about in the a320
thread? I assume you haven't found the time yet. ;)

Cheers,
Alex

Original comment by tor...@pltn.org on 29 Jun 2009 at 3:03

GoogleCodeExporter commented 9 years ago
Have a look athe the README-A320 file at:

http://code.google.com/p/dingoo-linux/source/browse/trunk/linux-2.6.24.3/README-
A320

In the keyboard section there's an explanation of what keyscan codes
are generated for each key combination.

Interesting for you are KEY_VOLUMEUP, KEY_VOLUMEDOWN,
KEY_BRIGHTNESSUP, KEY_BRIGHTNESSDOWN, and KEY_KEYBOARD. The later is
there just for your keyboard overlay.

Regarding FBIOSETBACKLIGHT, the backlight control is not yet implemented in the
framebuffer driver. It's not complex, just have to get hands on with it.

And you're right, I haven't started working on the second framebuffer yet. Will
probably next weekend.

Original comment by igga...@gmail.com on 29 Jun 2009 at 9:24

GoogleCodeExporter commented 9 years ago
I have a basic daemon running which displays battery level (and when I have 
found the
correct maximum value, this will actually be useful ...).

I also have some code to get / set oss volume, still have to draw a bar for it 
and
connect it to dingoo's buttons.

Also still investigating setting / getting the brightness, the existing code 
doesn't
seem to work, or there are some precoditions that I'm not aware of.

Could we also expose the power button state from the kernel?

Some things still open:
- Grab input from background process when OSK is up. The daemon must catch
  the keyboard events before they are sent to the "background" app.
  Could be done with EVIOCGRAB ioctl?
- Integrate mouse emulation code.
- Pause background process when OSD is up (SIGSTOP / SIGCONT)
- (test) starting a frontend from the daemon (can be brought up with a button
  combination)

Original comment by tor...@pltn.org on 2 Jul 2009 at 8:40

GoogleCodeExporter commented 9 years ago

Original comment by igga...@gmail.com on 5 Jul 2009 at 4:35