HAL, and laptop Fn and hardware keys

David Zeuthen david at fubar.dk
Tue Sep 20 09:41:45 PDT 2005


On Tue, 2005-09-20 at 16:28 +0100, Richard Hughes wrote:
> The extra key presses (e.g. Fn-F1, and other h/w buttons) on most
> laptops are very vendor specific (Just like acpi brightness support) and
> have lots of different hacky scripts and daemons to watch each of the
> wacky interfaces. Sony has watched sonpid, and toshiba currently has
> fnfxd. I'm sure the other laptop makes have their own scripts too.

Yes, but you have to keep in mind that prior to HAL there was no place
this could be abstracted in a sane way - see below...

> 
> What is the consensus of an addon, say hal-addon-<vendor>-buttons that
> reports each of these events as a dbus signal, so that gnome control
> center (or another more suitable gnome process) can do a specific
> action?

I feel we already designed the 'button' capability with this in mind. We
simply emit the ButtonPressed device condition on the appropriate hal
device object. The only thing you need is to set button.type to some
value we need to decide upon. What these values are require some
thought, I envision that the possible values should be chosen such that
e.g. Sony, Toshiba and whatever specific bits can share the values. 

That way we can achieve abstraction and, equally important, laptop
vendors can send patches to HAL to get support and things will just work
if they choose the appropriate button.type values.

> The addon can be launched in the existing infrastructure just checking
> for the existance of files/directories, e.g. /proc/acpi/toshiba/buttons
> and would have *very low* overhead as most of the time it would be
> sleeping.

I think we should just hack the hald/linux2/acpi.c and
hald/linux2/addons/addon-acpi.c to support the vendor extensions.

Cheers,
David




More information about the hal mailing list