25 Oct, 2010
1 commit
-
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (44 commits)
eeepc-wmi: Add cpufv sysfs interface
eeepc-wmi: add additional hotkeys
panasonic-laptop: Simplify calls to acpi_pcc_retrieve_biosdata
panasonic-laptop: Handle errors properly if they happen
intel_pmic_gpio: fix off-by-one value range checking
IBM Real-Time "SMI Free" mode driver -v7
Add OLPC XO-1 rfkill driver
Move hdaps driver to platform/x86
ideapad-laptop: Fix Makefile
intel_pmic_gpio: swap the bits and mask args for intel_scu_ipc_update_register
ideapad: Add param: no_bt_rfkill
ideapad: Change the driver name to ideapad-laptop
ideapad: rewrite the sw rfkill set
ideapad: rewrite the hw rfkill notify
ideapad: use EC command to control camera
ideapad: use return value of _CFG to tell if device exist or not
ideapad: make sure we bind on the correct device
ideapad: check VPC bit before sync rfkill hw status
ideapad: add ACPI helpers
dell-laptop: Add debugfs support
...
23 Oct, 2010
1 commit
-
* 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:
vfs: make no_llseek the default
vfs: don't use BKL in default_llseek
llseek: automatically add .llseek fop
libfs: use generic_file_llseek for simple_attr
mac80211: disallow seeks in minstrel debug code
lirc: make chardev nonseekable
viotape: use noop_llseek
raw: use explicit llseek file operations
ibmasmfs: use generic_file_llseek
spufs: use llseek in all file operations
arm/omap: use generic_file_llseek in iommu_debug
lkdtm: use generic_file_llseek in debugfs
net/wireless: use generic_file_llseek in debugfs
drm: use noop_llseek
21 Oct, 2010
38 commits
-
eeepc-laptop provides a sysfs interface to read and control what it
calls cpufv. When WMI is enabled, the ACPI interface changes slightly
and becames a write-only control with 3 valid values.Expose cpufv again to allow for user space utils that can extended battery
life noticably and come a little closer to parity with eeepc-laptop.Write-only is OK for most user space apps because read status was
mostly used to prevent unneeded mode changes. Since this same check
to ignore changes to same mode also exists in the DSDT then it was
wasted ACPI call.acpi_osi="!Windows 2009" can be used for get back eeepc-laptop's
read support of cpufv for debugging things such as behaviour
during resume.This patch was tested with EEE PC 1005PE by monitoring powertop output while
writing values of "0", "1", and "2" and by reviewing the decompiled DSDT of
an 1201NL and comparing it to 1005PE's DSDT.Signed-off-by: Chris Bagwell
Signed-off-by: Matthew Garrett -
Added 4 hotkeys using same keymap values as eeepc-latop.
These are mousepad toggle, resolution change, screen off,
and task manager. These were tested on 1005PE and are the
Fn-F3, F4, F7, and F9, respectively.Also, added a new hot key for power toggles (Fn-Space on 1005PE)
and is meant to drive cpufv interface from userspace.Signed-off-by: Chris Bagwell
Signed-off-by: Matthew Garrett -
Function acpi_pcc_retrieve_biosdata is always called with parameters
(pcc, pcc->sinf), so we can drop the second parameter. It was
dangerous to pass the sinf array separately anyway, as its length is
checked as pcc->num_sifr, which pretty much assumed it was pcc->sinf
(or at least had the same size.)This change makes the code slightly more compact and thus marginally
faster.Signed-off-by: Jean Delvare
Cc: Harald Welte
Signed-off-by: Matthew Garrett -
acpi_pcc_retrieve_biosdata() returns success instead of error if
HKEY.SINF is invalid. Fix this.Furthermore, if acpi_pcc_retrieve_biosdata() returns an error
during device addition, initialization is properly reverted but value
0 is returned, which means success. This would cause a crash when
later using or removing the device, so fix this too.Signed-off-by: Jean Delvare
Cc: Harald Welte
Cc: Bruno Premont
Signed-off-by: Matthew Garrett -
In pmic_irq_type(), we use gpio as array index for trigger,
thus the valid value range for gpio should be 0 .. NUM_GPIO - 1.Signed-off-by: Axel Lin
Signed-off-by: Matthew Garrett -
After a period of RFC for this driver, I think it is ready
for inclusion in the platform-driver-x86 tree, hopefully to
be staged in the next merge window into Linus's tree.--Vernon
------------------------------------------------------------
IBM Real-Time "SMI Free" mode driver
This driver supports the Real-Time Linux (RTL) BIOS feature.
The RTL feature allows non-fatal System Management Interrupts
(SMIs) to be disabled on supported IBM platforms and is
intended to be coupled with a user-space daemon to monitor
the hardware in a way that can be prioritized and scheduled
to better suit the requirements for the system.The Device is presented as a special "_RTL_" table to the OS
in the Extended BIOS Data Area. There is a simple protocol
for entering and exiting the mode at runtime. This driver
creates a simple sysfs interface to allow a simple entry and
exit from RTL mode in the UFI/BIOS.Since the driver is specific to IBM SystemX hardware (x86-
based servers) it only builds on x86 builds. To reduce the
risk of loading on the wrong hardware, the module uses DMI
information and checks a list of servers that are known to
work.Signed-off-by: Vernon Mauery
Signed-off-by: Matthew Garrett -
Add a software rfkill switch for the WLAN interface in the OLPC XO-1
laptop. It uses the OLPC embedded controller to cut/restore power to
the Marvell WLAN chip on the motherboard.Signed-off-by: Daniel Drake
Signed-off-by: Matthew Garrett -
The hdaps driver isn't a hardware monitoring driver, so it shouldn't
live under driver/hwmon. drivers/platform/x86 seems much more
appropriate, as the driver is only useful on x86 laptops.Signed-off-by: Jean Delvare
Cc: Guenter Roeck
Cc: Matthew Garrett
Cc: Frank Seidel
Signed-off-by: Matthew Garrett -
The makefile didn't get updated when the driver changed name, which broke
the build.Signed-off-by: Matthew Garrett
-
The intel_scu_ipc_update_register 2nd paramter should the bits and 3rd
paramter should be the mask.This typo was introduced during IPC function changing...
Reported-by: Ryan Zhou
Signed-off-by: Alek Du
Signed-off-by: Alan Cox
Signed-off-by: Matthew Garrett -
Add new module parameter that force module not to register bluetooth rfkill.
There is report that saying using this bluetooth rfkill to enable/disable
bluetooth will let bluetooth device initial failed when enable on Lenovo
ideapad S12. Fortunately there is another rfkill registered by bluetooth
driver for S12 and user can shutdown the bluetooth by either bluetooth driver
or HW RF switch.For dual OS user, it may have some trouble that using Linux after turning off
bluetooth with another OS if we do not register bluetooth rfkill at all. So
we will force bluetooth enable when no_bt_rfkill=1.Signed-off-by: Ike Panhc
Tested-by: Mario 'BitKoenig' Holbe
Signed-off-by: Matthew Garrett -
Since the platform drivers doing more for laptops than just using specific
ACPI device. It will be good to change the name from *_acpi to *-laptop.Reference: http://lkml.org/lkml/2010/8/14/154
Signed-off-by: Ike Panhc
Acked-by: Len Brown
Signed-off-by: Matthew Garrett -
Control power of rf modules by ec commands
Signed-off-by: Ike Panhc
Signed-off-by: Matthew Garrett -
1. Read hw rfkill status by ec command
2. Not to touch sw status of each rfkill when hw rfkill notify
3. Initial rfkill status when module loadedSigned-off-by: Ike Panhc
Signed-off-by: Matthew Garrett -
Signed-off-by: Ike Panhc
Signed-off-by: Matthew Garrett -
There are several bits of the return value of _CFG shows if RF/Camera devices
exist or not.Signed-off-by: Ike Panhc
Signed-off-by: Matthew Garrett -
By reading from method _CFG to make sure we bind on the correct VPC2004 device.
Signed-off-by: Ike Panhc
Signed-off-by: Matthew Garrett -
Check VPC bit to make sure the HW rfkill is touched.
Signed-off-by: Ike Panhc
Signed-off-by: Matthew Garrett -
There are two methods under VPC2004 which is used to access VDAT/VCMD of EC
register. Add helpers for read and write these two registers.And add read_method_int for reading the return value from ACPI methods which
requires no parameter.Signed-off-by: Ike Panhc
Signed-off-by: Matthew Garrett -
Export the status of RF killswitch through debugfs.
The killswitch status is obtained by the SMI to BIOS. Exporting this status
through debugfs can help identify the issue with the misbehaving firmware.Signed-off-by: Keng-Yu Lin
Signed-off-by: Matthew Garrett -
Instead of creating wmi_blocks and then register corresponding devices
on a separate pass do it all in one shot, since lifetime rules for both
objects are the same. This also takes care of leaking devices when
device_create fails for one of them.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
Instead of adding modalias attribute manually set it up as class's
device attribute so driver core will create and remove it for us.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
This makes source more concise and easier to read.
Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
Do not abuse wmi_block structure to hold the head of list
of blocks, use separate list_head for that.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
There is no reason why we allocate memory and copy data into an
intermediate buffer, it is not like we are working with data coming
from userspace.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
If we _WDG returned object that is not buffer we were forgetting
to free memory allocated for that object.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
Courtesy of sparse...
Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
Driver initialization was forgetting to remove EC address space handler
in cases when parse_wdg() method failed.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
Instead of registering (and removing) every attribute individually
switch to using sysfs attribute group. This makes sure that we
properly unwind and do not try to remove non-existent attributes which
may not be safe to do in the future.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
We need to include the SFI headers. This is fine as the SCU is only
relevant to x86 platforms with SFI.Fixes the -next warning report.
Signed-off-by: Alan Cox
Signed-off-by: Matthew Garrett -
In 2.6.35 the hex_to_bin() was introduced.
Signed-off-by: Andy Shevchenko
Cc: Carlos Corbacho
Cc: Matthew Garrett
Cc: platform-driver-x86@vger.kernel.org
Signed-off-by: Matthew Garrett -
Fix kconfig recursive dependency error in ACPI_TOSHIBA:
it uses both select and depends on for BACKLIGHT_CLASS_DEVICE.drivers/video/backlight/Kconfig:117:error: recursive dependency detected!
drivers/video/backlight/Kconfig:117: symbol BACKLIGHT_CLASS_DEVICE is selected by ACPI_TOSHIBA
drivers/platform/x86/Kconfig:490: symbol ACPI_TOSHIBA depends on LEDS_CLASS
drivers/leds/Kconfig:12: symbol LEDS_CLASS is selected by BACKLIGHT_ADP8860
drivers/video/backlight/Kconfig:285: symbol BACKLIGHT_ADP8860 depends on BACKLIGHT_CLASS_DEVICESigned-off-by: Randy Dunlap
Signed-off-by: Matthew Garrett -
Signed-off-by: Matthew Garrett
-
The driver uses sparse keymap library and does not use this field
anymore.Signed-off-by: Dmitry Torokhov
Signed-off-by: Matthew Garrett -
The GPS rfkill crappy code. The ops_data argument wasn't
set, and was totally misused. The fix have been tested
on an Asus R2H.Cc: stable@kernel.org
Signed-off-by: Corentin Chary
Signed-off-by: Matthew Garrett -
Signed-off-by: Corentin Chary
Signed-off-by: Matthew Garrett