[PATCH 0/1] Add new driver for AlienFX control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Alienware is known for being able to control the lighting zones around the 
machine independently.  Previously this was done via an MCU.

The Alienware X51 R2 (as well as a few others) no longer uses an MCU to control
it's different lighting zones.  It does however have a WMI interface.

At a first glance it seems reasonable to set up each LED for each zone 
individually using the kernel's LED infrastructure.

After digging further in, there actually is control for setting up the LEDs to 
perform different tasks in S0 and S3 power states which becomes more difficult 
to represent in the LED class.  So instead I've created a series of sysfs nodes
to represent the different colors in the different zones.

Normally the system will be in the RUNNING lighting control state and 
immediately change based on the values (0-255) that you place in these sysfs nodes.

If you change the lighting control state to SUSPEND or BOOTING then modifying 
the nodes will set up the lights for those alternate states.

Later platforms will be adding support for an HDMI mux.  I've included some 
skeleton code here for this, but will add more as they get closer to launching.

Mario Limonciello (1):
  Add WMI driver for controlling AlienFX on Alienware

 drivers/platform/x86/Kconfig         |   13 ++
 drivers/platform/x86/Makefile        |    1 +
 drivers/platform/x86/alienware-wmi.c |  345 ++++++++++++++++++++++++++++++++++
 3 files changed, 359 insertions(+)
 create mode 100644 drivers/platform/x86/alienware-wmi.c

-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux