Bug 75901
Summary: | Newish Samsung laptops need SABI call for proper lid switch handling | ||
---|---|---|---|
Product: | Drivers | Reporter: | Bryan Stine (bryan+lk) |
Component: | Platform_x86 | Assignee: | drivers_platform_x86 (drivers_platform_x86) |
Status: | NEW --- | ||
Severity: | enhancement | CC: | julijonas.kikutis, kalmisoft |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 3.13.11.2 | Subsystem: | |
Regression: | No | Bisected commit-id: |
Description
Bryan Stine
2014-05-10 23:59:18 UTC
I have Samsung Series 3 NP300V4Z-S09TH with the same issue. /proc/acpi/button/lid/LID0/state changes after about 10 seconds after closing the lid. Also, lid opening does not trigger system wake up, there is /proc/acpi/button/lid/LID0/state, but no LID0 in /proc/acpi/wakeup. Samsung provides Settings/Easy Settings for Windows 8/Windows 7 respectively. It enables faster detection of closing, detection of opening, and disables the blinking of a power LED on the front side of the laptop. It would normally blink during sleep. As samsung_laptop module is disabled in UEFI mode, I cannot test that command now. I reinstalled Linux in BIOS mode and can confirm that the mentioned command removes the delay for the lid switch, enables waking up by opening lid, and disables blinking LED just like in Windows with Samsung drivers. Samsung driver for Windows works even in UEFI mode, so at least this single command could be executed under UEFI in Linux. NP900X3A (Sandy Bridge) in BIOS mode cd /sys/kernel/debug/samsung-laptop/ echo 0x81 >d0 echo 0 >d1 echo 0 >d2 echo 0 >d3 cat call Running Bryan's command gives me non-delayed sleep on lid close and instant wake on lid open, however now the power button has to be pressed twice to wake the machine. Restarting the machine brings back the old behaviors. Without the command lid close detection is slower, machine does not wake on lid open, and power button wakes machine on first try. LID0 is not present in /proc/acpi/wakeup, but /proc/acpi/button/lid/LID0/state is present. Sorry, the following line is missing from my previous comment: echo 0x6e > command An other interesting change that this command causes is that the single power/sleep button no longer acts as a power button but as a sleep button. This patch should fix the bug. https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=b0dcaf4fbb36895175657be029ed64eda2a34707 However, I had to enable this command automatically only for the laptops in the DMI whitelist as opposed to all laptops that load the module because of the mentioned regression in comment 3. If there is a better solution, please let me know. You can test the behavior of your laptop by changing the value of /sys/devices/platform/samsung/lid_handling to 1. Then you can add the DMI information of your laptop to the whitelist in the module source. |