I have split the special functions between backlight and macro functions. This
should make it easier to
test new devices. I think the macro functions will only be reused with the K95.
While backlight is more
common feature, though I have no idea it is done with other Corsair hardware.
I have changed most sysfs attributes and LEDs so that the current value is
queried from the hardware instead
of tracking events. I started this way when I did not know how to read the
value, but I think it is better done
this way when I can. I don't know how to read the state of the record LED, so
this one still use events to update
the state.
I removed the color from the LEDs name. I understand it is only necessary when
having LEDs with several
colors. This way the names will stay the same across different hardware with
different backlight color. I
don't think it is an useful information here.
I also added event for the MR (macro record) button and profile switch buttons.
I think that userspace
program may want to know about these events. For example for using profile keys
to start some
configuration program.
changes in v3:
- query the hardware instead of tracking the value with events when possible
(except record_led)
- added quirks for activating special functions (macro functions and backlight)
- allocation of led name use kzalloc instead of devm_kzalloc (free mem when
initialization failed)
- renamed led devices (without colors)
- added key codes for record and profile keys
changes in v2:
- Removed the k90_profile class and devices
- Renamed driver for a more generic name ("corsair" driver in hid-corsair.c)
- Fixed led devices clean up (hang when unplugging and led state reset)
- Added dependency on USB and LEDS_CLASS in Kconfig
Clément Vuchener (1):
Add Corsair Vengeance K90 driver
Documentation/ABI/testing/sysfs-driver-hid-corsair | 15 +
drivers/hid/Kconfig | 10 +
drivers/hid/Makefile | 1 +
drivers/hid/hid-core.c | 1 +
drivers/hid/hid-corsair.c | 673 +++++++++++++++++++++
drivers/hid/hid-ids.h | 3 +
6 files changed, 703 insertions(+)
create mode 100644 Documentation/ABI/testing/sysfs-driver-hid-corsair
create mode 100644 drivers/hid/hid-corsair.c
--
2.4.3
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html