summaryrefslogtreecommitdiff
path: root/drivers/platform/x86
AgeCommit message (Collapse)AuthorFilesLines
2011-02-22dell-laptop: Toggle the unsupported hardware killswitchKeng-Yu Lin1-2/+22
It is found on Dell Inspiron 1018 that the firmware reports that the hardware killswitch is not supported. This makes the rfkill key not functional. This patch forces the driver to toggle the firmware rfkill status in the case that the hardware killswitch is indicated as unsupported by the firmware. Signed-off-by: Keng-Yu Lin <keng-yu.lin@canonical.com> Tested-by: Alessio Igor Bogani <abogani@texware.it> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-22thinkpad_acpi: Always report scancodes for hotkeysSeth Forshee1-6/+2
Some thinkpad hotkeys report key codes like KEY_FN_F8 when something like KEY_VOLUMEDOWN is desired. Always provide the scan codes in addition to the key codes to assist with debugging these issues. Also send the scan code before the key code to match what other drivers do, as some userspace utilities expect this ordering. Signed-off-by: Seth Forshee <seth.forshee@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-22acer-wmi: Fix capitalisation of GUIDMatthew Garrett1-1/+1
6AF4F258-B401-42fd-BE91-3D4AC2D7C0D3 needs to be 6AF4F258-B401-42FD-BE91-3D4AC2D7C0D3 to match the hardware alias. Signed-off-by: Matthew Garrett <mjg@redhat.com> Acked-by: Carlos Corbacho <carlos@strangeworlds.co.uk> Cc: stable@kernel.org
2011-02-22platform/x86: ideapad-laptop depends on INPUTRandy Dunlap1-1/+1
Most platform/x86 drivers that use INPUT_SPARSEKMAP also depend on INPUT, so do the same for ideapad-laptop. This fixes a kconfig warning and subsequent build errors when CONFIG_INPUT is disabled. warning: (ACER_WMI && ASUS_LAPTOP && DELL_WMI && HP_WMI && PANASONIC_LAPTOP && IDEAPAD_LAPTOP && EEEPC_LAPTOP && EEEPC_WMI && MSI_WMI && TOPSTAR_LAPTOP && ACPI_TOSHIBA) selects INPUT_SPARSEKMAP which has unmet direct dependencies (!S390 && INPUT) ERROR: "input_free_device" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "input_register_device" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "sparse_keymap_setup" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "input_allocate_device" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "input_unregister_device" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "sparse_keymap_free" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "sparse_keymap_report_event" [drivers/platform/x86/ideapad-laptop.ko] undefined! Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: David Woodhouse <dwmw2@infradead.org> Cc: Matthew Garrett <mjg@redhat.com> Cc: platform-driver-x86@vger.kernel.org Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-22platform: x86: acer-wmi: world-writable sysfs threeg fileVasiliy Kulikov1-1/+1
Don't allow everybody to write to hardware registers. Signed-off-by: Vasiliy Kulikov <segoon@openwall.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-22platform: x86: asus_acpi: world-writable procfs filesVasiliy Kulikov1-7/+1
Don't allow everybody to change ACPI settings. The comment says that it is done deliberatelly, however, the comment before disp_proc_write() says that at least one of these setting is experimental. Signed-off-by: Vasiliy Kulikov <segoon@openwall.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-22platform: x86: tc1100-wmi: world-writable sysfs wireless and jogdial filesVasiliy Kulikov1-1/+1
Don't allow everybody to change WMI settings. Signed-off-by: Vasiliy Kulikov <segoon@openwall.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-22platform-drivers: x86: pmic: Use request_irq instead of chained handlerThomas Gleixner1-38/+12
There is no need to install a chained handler for this hardware. This is a plain x86 IOAPIC interrupt which is handled by the core code perfectly fine. There is nothing special about demultiplexing these gpio interrupts which justifies a custom hack. Replace it by a plain old interrupt handler installed with request_irq. That makes the code agnostic about the underlying primary interrupt hardware. The overhead for this is minimal, but it gives us the advantage of accounting, balancing and to detect interrupt storms. gpio interrupts are not really that performance critical. Patch fixups from akpm Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2011-02-08platform-drivers: x86: pmic: Use irq_chip buslock mechanismThomas Gleixner1-48/+32
The set_type function of the pmic irq chip is a horrible hack. It schedules work because it cannot access the scu chip from the set_type function. That breaks the assumption, that the type is set after set_type has returned. irq_chips provide buslock functions to avoid the above. Convert the driver to use the proper model. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Feng Tang <feng.tang@intel.com> Cc: Matthew Garrett <mjg@redhat.com> Cc: Alan Cox <alan@linux.intel.com> Cc: Alek Du <alek.du@intel.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-08platform-drivers: x86: Convert pmic to new irq_chip functionsThomas Gleixner1-14/+8
Old functions will go away soon. Remove the stray semicolons while at it. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Feng Tang <feng.tang@intel.com> Cc: Matthew Garrett <mjg@redhat.com> Cc: Alan Cox <alan@linux.intel.com> Cc: Alek Du <alek.du@intel.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-02-08platform-drivers: x86: pmic: Fix up bogus irq hackeryThomas Gleixner1-5/+1
commit 456dc301([PATCH] intel_pmic_gpio: modify EOI handling following change of kernel irq subsystem) changes - desc->chip->eoi(irq); + + if (desc->chip->irq_eoi) + desc->chip->irq_eoi(irq_get_irq_data(irq)); + else + dev_warn(pg->chip.dev, "missing EOI handler for irq %d\n", irq); With the following explanation: "Latest kernel has many changes in IRQ subsystem and its interfaces, like adding irq_eoi" for struct irq_chip, this patch will make it support both the new and old interface." This is completely bogus. #1) The changelog does not match the patch at all #2) This driver relies on the assumption that it sits behind an eoi capable interrupt line. If the implementation of the underlying chip changes from eoi to irq_eoi then this driver has to follow that change and not add a total bogosity. Remove the sillyness and retrieve the interrupt data from irq_desc directly. No need to got through circles to look it up. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Feng Tang <feng.tang@intel.com> Cc: Matthew Garrett <mjg@redhat.com> Cc: Alan Cox <alan@linux.intel.com> Cc: Alek Du <alek.du@intel.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-31intel_scu_ipc: remove duplicated #includeHuang Weiyi1-1/+0
Remove duplicated #include('s) in drivers/platform/x86/intel_scu_ipc.c Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-26intel_scu_ipcutils: Fix the license tagAlan Cox1-1/+1
GPL V2 should be GPL v2 Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-26intel_scu_ipc: fix signedness bugAxel Lin1-4/+3
busy_loop() returns negative error code, thus change err variable from u32 to int to properly propagate correct error code. Also remove unneeded initialization for err and i variables. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-01-14Merge branch 'release' of ↵Linus Torvalds1-2/+2
git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (59 commits) ACPI / PM: Fix build problems for !CONFIG_ACPI related to NVS rework ACPI: fix resource check message ACPI / Battery: Update information on info notification and resume ACPI: Drop device flag wake_capable ACPI: Always check if _PRW is present before trying to evaluate it ACPI / PM: Check status of power resources under mutexes ACPI / PM: Rename acpi_power_off_device() ACPI / PM: Drop acpi_power_nocheck ACPI / PM: Drop acpi_bus_get_power() Platform / x86: Make fujitsu_laptop use acpi_bus_update_power() ACPI / Fan: Rework the handling of power resources ACPI / PM: Register power resource devices as soon as they are needed ACPI / PM: Register acpi_power_driver early ACPI / PM: Add function for updating device power state consistently ACPI / PM: Add function for device power state initialization ACPI / PM: Introduce __acpi_bus_get_power() ACPI / PM: Introduce function for refcounting device power resources ACPI / PM: Add functions for manipulating lists of power resources ACPI / PM: Prevent acpi_power_get_inferred_state() from making changes ACPICA: Update version to 20101209 ...
2011-01-13Merge branch 'for-next' of ↵Linus Torvalds9-10/+10
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (43 commits) Documentation/trace/events.txt: Remove obsolete sched_signal_send. writeback: fix global_dirty_limits comment runtime -> real-time ppc: fix comment typo singal -> signal drivers: fix comment typo diable -> disable. m68k: fix comment typo diable -> disable. wireless: comment typo fix diable -> disable. media: comment typo fix diable -> disable. remove doc for obsolete dynamic-printk kernel-parameter remove extraneous 'is' from Documentation/iostats.txt Fix spelling milisec -> ms in snd_ps3 module parameter description Fix spelling mistakes in comments Revert conflicting V4L changes i7core_edac: fix typos in comments mm/rmap.c: fix comment sound, ca0106: Fix assignment to 'channel'. hrtimer: fix a typo in comment init/Kconfig: fix typo anon_inodes: fix wrong function name in comment fix comment typos concerning "consistent" poll: fix a typo in comment ... Fix up trivial conflicts in: - drivers/net/wireless/iwlwifi/iwl-core.c (moved to iwl-legacy.c) - fs/ext4/ext4.h Also fix missed 'diabled' typo in drivers/net/bnx2x/bnx2x.h while at it.
2011-01-12Platform / x86: Make fujitsu_laptop use acpi_bus_update_power()Rafael J. Wysocki1-2/+2
Use the new function acpi_bus_update_power(), which is safer than acpi_bus_get_power(), for getting device power state in acpi_fujitsu_add() and acpi_fujitsu_hotkey_add(). Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Reported-and-Tested-by: Sedat Dilek <sedat.dilek@gmail.com> Signed-off-by: Len Brown <len.brown@intel.com>
2011-01-10sony-laptop: support new hotkeys on the P, Z and EC seriesMattia Dongili1-0/+10
Add new mappings for assist, VAIO, zoom and eject buttons present on refurbished P, Z and EC models. Reported-by: Gyorgy Jeney <nog.lkml@gmail.com> Reported-by: Stephan Mueller <smueller@chronox.de> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: Matthew Garrett <mjg@redhat.com> Signed-off-by: Mattia Dongili <malattia@linux.it> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-10platform/x86: Consistently select LEDS Kconfig optionsMark Brown1-4/+4
Currently the x86 platform devices are not consistent about selecting or depending on the LEDs Kconfig variables, and this inconsistency leads to Kconfig getting upset and refusing to offer LEDs (even on non-x86 platforms): drivers/platform/x86/Kconfig:422:error: recursive dependency detected! drivers/platform/x86/Kconfig:422: symbol EEEPC_WMI depends on ACPI_WMI drivers/platform/x86/Kconfig:438: symbol ACPI_WMI is selected by ACER_WMI drivers/platform/x86/Kconfig:18: symbol ACER_WMI depends on LEDS_CLASS drivers/leds/Kconfig:10: symbol LEDS_CLASS is selected by EEEPC_WMI Fix this by always selecting rather than depending on the symbols as slightly more drivers use this approach already and it seems more user friendly. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-10sony-laptop: fix sparse non-ANSI function warningRandy Dunlap1-1/+1
Fix sparse warning for non-ANSI function declaration: drivers/platform/x86/sony-laptop.c:1134:35: warning: non-ANSI function declaration of function 'sony_nc_rfkill_update' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: Matthew Garrett <mjg@redhat.com> Cc: Mattia Dongili <malattia@linux.it> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-10intel_ips: fix sparse non-ANSI function warningRandy Dunlap1-1/+1
Fix sparse warning for non-ANSI function declaration: drivers/platform/x86/intel_ips.c:1477:25: warning: non-ANSI function declaration of function 'ips_link_to_i915_driver' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Cc: Matthew Garrett <mjg@redhat.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08Support KHLB2 in the compal laptop driverAlbert Astals Cid1-0/+8
Add the KHLB2 model identifier to the list of supported models Signed-off-by: Albert Astals Cid <aacid@kde.org> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08acer-wmi: Enabled Acer Launch Manager modeFrom: Lee, Chun-Yi1-0/+110
Enabled Acer Launch Manager mode to disable the EC raw behavior for communication devices when WMID3 method available. And, we also add a ec_raw_mode kernel module option for enable The EC raw behavior mode when anyone what reset it back. When Acer Launch Manager mode enabled, EC will stop to touch any communication devices' RF state or power state that causes conflict with rfkill_input or any userland daemon to charge the rfkill rules. Signed-off-by: Lee, Chun-Yi <jlee@novell.com> Acked-by: Thomas Renninger <trenn@suse.de> Acked-by: Jiri Benc <jbenc@suse.cz> Acked-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Carlos Corbacho <carlos@strangeworlds.co.uk> Cc: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08[PATCH] intel_pmic_gpio: modify EOI handling following change of kernel irq ↵Feng Tang1-1/+5
subsystem Latest kernel has many changes in IRQ subsystem and its interfaces, like adding "irq_eoi" for struct irq_chip, this patch will make it support both the new and old interface. Cc: Alek Du <alek.du@intel.com> Signed-off-by: Feng Tang <feng.tang@intel.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08ACPI Thinkpad: We must always call va_end() after va_start() but do not do ↵Jesper Juhl1-0/+1
so in thinkpad_acpi.c::acpi_evalf() Hi, In drivers/platform/x86/thinkpad_acpi.c::acpi_evalf() we don't always call va_end() after va_start(). This patch corrects that. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Acked-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08acer-wmi: Initialize wlan/bluetooth/wwan rfkill software block stateLee, Chun-Yi1-0/+31
Initial wlan/bluetooth/wwan rfkill software block state when acer-wmi driver probe. Acer notebook can save the devices state and this patch can use it to initial the devices' rfkill state. Signed-off-by: Lee, Chun-Yi <jlee@novell.com> Acked-by: Thomas Renninger <trenn@suse.de> Cc: Carlos Corbacho <carlos@strangeworlds.co.uk> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08acer-wmi: Detect the WiFi/Bluetooth/3G devices availableLee, Chun-Yi1-7/+42
Check the Acer OEM-specific Type AA to detect the WiFi/Bluetooth/3G devices available or not, and set the devices capability flag. Signed-off-by: Lee, Chun-Yi <jlee@novell.com> Reviewed-by: Jean Delvare <jdelvare@suse.de> Reviewed-by: Dmitry Torokhov <dtor@mail.ru> Acked-by: Thomas Renninger <trenn@suse.de> Acked-by: Jiri Benc <jbenc@suse.cz> Cc: Carlos Corbacho <carlos@strangeworlds.co.uk> Cc: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08acer-wmi: Add 3G rfkill sysfs fileLee, Chun-Yi1-1/+99
Add 3G rfkill sysfs file for provide userland to control 3G device on/off by using WMI method. Signed-off-by: Lee, Chun-Yi <jlee@novell.com> Acked-by: Thomas Renninger <trenn@suse.de> Acked-by: Jiri Benc <jbenc@suse.cz> Acked-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Carlos Corbaho <carlos@strangeworlds.co.uk> Cc: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08acer-wmi: Add acer wmi hotkey events supportLee, Chun-Yi2-0/+141
Add acer wmi hotkey event support. Install a wmi notify handler to transfer wmi event key to key code, then send out keycode through acer wmi input device to userland. Signed-off-by: Lee, Chun-Yi <jlee@novell.com> Acked-by: Dmitry Torokhov <dtor@mail.ru> Acked-by: Thomas Renninger <trenn@suse.de> Acked-by: Jiri Benc <jbenc@suse.cz> Signed-off-by: Carlos Corbacho <carlos@strangeworlds.co.uk> Cc: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08platform/x86: Kconfig: Replace select by depends on ACPI_WMISedat Dilek1-2/+2
With 'make oldnoconfig' I see these warnings in linux-next (next-20101208): drivers/platform/x86/Kconfig:422:error: recursive dependency detected! drivers/platform/x86/Kconfig:422: symbol EEEPC_WMI depends on ACPI_WMI drivers/platform/x86/Kconfig:438: symbol ACPI_WMI is selected by ACER_WMI drivers/platform/x86/Kconfig:18: symbol ACER_WMI depends on LEDS_CLASS drivers/leds/Kconfig:10: symbol LEDS_CLASS is selected by EEEPC_WMI This patch replaces all "select on ACPI_WMI" by "depends on ACPI_WMI". Quote from David Woodhouse: "A better policy is: "NEVER USE SELECT"." Reported-and-tested-by: Sedat Dilek <sedat.dilek@gmail.com> Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08ideapad: pass ideapad_priv as argument (part 2)Ike Panhc1-42/+29
Passing ideapad_priv as argument and try not to using too much global variable. This is part 2 for rfkill. Signed-off-by: Ike Panhc <ike.pan@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08ideapad: pass ideapad_priv as argument (part 1)Ike Panhc1-26/+28
Passing ideapad_priv as argument and try not to using too much global variable. This is part 1 for platform driver and input device. Signed-off-by: Ike Panhc <ike.pan@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08ideapad: add markups, unify comments and return result when initIke Panhc1-14/+17
1. Add markups on init and exit functions 2. Unify the comments in the same style 3. Return result when module initial Signed-off-by: Ike Panhc <ike.pan@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08ideapad: add hotkey supportIke Panhc2-0/+73
Hotkey enabled by this patch: Fn+F3: Video mode switch Fn+F5: software rfkill for wifi For some ideapad when push Fn+F3, hardware generates Super-P keys, those key will not be enabled by this patch. Thanks for Dave Hansen report the problem. If CONFIG_INPUT_SPARSEKMAP is not set, when building, you will have error message: ERROR: "sparse_keymap_setup" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "sparse_keymap_free" [drivers/platform/x86/ideapad-laptop.ko] undefined! ERROR: "sparse_keymap_report_event" [drivers/platform/x86/ideapad-laptop.ko] undefined! To select INPUT_SPARSEKMAP solve this issue. Ref: http://lkml.org/lkml/2010/12/2/340 Signed-off-by: Ike Panhc <ike.pan@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08ideapad: let camera power control entry under platform driverIke Panhc1-30/+25
The entry was at /sys/devices/LNXSYSTM:00/../VPC2004:00/camera_power move to /sys/devices/platform/ideapad/camera_power Add document about usage of ideapad node in sysfs. Signed-off-by: Ike Panhc <ike.pan@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08ideapad: add platform driver for ideapadIke Panhc1-7/+47
Create /sys/devices/platform/ideapad for nodes of ideapad landing. Signed-off-by: Ike Panhc <ike.pan@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08fujitsu-laptop: fix compiler warning on pnp_idsNamhyung Kim1-1/+1
Annotate pnp_ids as '__used' to fix following warning: CC drivers/platform/x86/fujitsu-laptop.o drivers/platform/x86/fujitsu-laptop.c:1243: warning: ‘pnp_ids’ defined but not used Signed-off-by: Namhyung Kim <namhyung@gmail.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08WMI: return error if wmi_create_device() failsDan Carpenter1-1/+1
The break resets the retval to 0 but we want to return an error code. This was introduced in c64eefd48c4 "WMI: embed struct device directly into wmi_block" Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Matthew Garrett <mjg@redhat.com> Acked-by: Dmitry Torokhov <dtor@mail.ru>
2011-01-08eeepc-wmi: never load if legacy device is enabledCorentin Chary1-0/+33
If legacy device (SB.ATKD - ASUS010) used by eeepc-laptop is enabled, don't allow eeepc-wmi to load because: - eeepc-laptop may be loaded, and can conflict with eeepc-wmi (they both try to register eeepc::touchpad led for example). - the WMI interface is inteded to be used when the OS is not detected as Win 7. And when this is the case, the ASUS010 device is disabled. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-laptop: add a getter for touchpad ledCorentin Chary1-0/+11
Allow te get the current led state in a more accurate way. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: remove unneeded staticCorentin Chary1-3/+3
Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: claim eeepc-wmi maintainershipCorentin Chary1-0/+1
Since eeepc-wmi has currently no official maintainer, I claim maintainership of this driver, and add it to the acpi4asus project. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: fix confusion between ctrl_param and retvalCorentin Chary1-17/+17
Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: add debugfs entriesCorentin Chary1-6/+164
eeepc-wmi/ - debugfs root directory dev_id - current dev_id ctrl_param - current ctrl_param devs - call DEVS(dev_id, ctrl_param) and print result dsts - call DSTS(dev_id) and print result DEVS and DSTS are the main functions used in eeepc-wmi, this will allow to test new features without patching the drivers. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: use attribute group to manage attributesCorentin Chary1-12/+11
Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: add rfkill support for wlan, bluetooth and 3gCorentin Chary2-0/+139
wimax support is missing because I don't have any DSDT with WMI and wimax support. Most of the code comes from eeepc-laptop. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: add touchpad led supportCorentin Chary2-0/+115
Most of the code comes from eeepc-laptop. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08eeepc-wmi: rework eeepc_wmi_init and eeepc_wmi_exitCorentin Chary1-56/+79
The old code was using platform_driver.probe to initialize eeepc_wmi context. That's a mistake because if probe fail, eeepc_platform_register() won't tell anyone, and chaos will happen. Wrap add and remove code inside eeepc_wmi_add() / eeepc_wmi_remove(), and try to use the static platform_device only in eeepc_wmi_init() and eeepc_wmi_exit() The code is now very similar to eeepc-laptop, except eeepc_laptop_add and eeepc_laptop_remove are called from acpi_driver, not module init/exit functions, but WMI doesn't provide such functionalities (yet ?). Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Matthew Garrett <mjg@redhat.com>
2011-01-08classmate-laptop: add missing input_sync callHerton Ronaldo Krzesinski1-0/+1
Add missing input_sync call in cmpc_keys_handler function. Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br> Signed-off-by: Matthew Garrett <mjg@redhat.com> Acked-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
2011-01-08classmate-laptop: little optimization for cmpc_rfkill_blockHerton Ronaldo Krzesinski1-7/+9
We don't need to call bios/acpi (cmpc_set_rfkill_wlan) if the blocked state is already set to the same value (little optimization). This can happen for example if we initialize the module with same initial hardware state (rfkill core always call cmpc_rfkill_block on initialization here). Also GWRI method only accepts 0 or 1 for setting rfkill block, as can be seen on AML code from acpidump->DSDT from a classmate sample I have, so should be fine setting state only to 0 or 1 directly. Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br> Signed-off-by: Matthew Garrett <mjg@redhat.com> Acked-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>