Still got the same results, added the tag and marked as confirmed.
** Tags added: kernel-bug-exists-upstream
** Changed in: linux (Ubuntu)
Status: Incomplete => Confirmed
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1663620
Title:
HP_WMI bad report on tablet mode
Status in linux package in Ubuntu:
Confirmed
Bug description:
Hi, I'm trying to get the 'SW_TABLET_MODE' event to work correctly on my HP
Spectre X360.
I think I got most of the peaces of the puzzle, but I need help putting them
together.
*hp-wmi is suppose to trigger this event, but has some error on startup, here
is dmesg:
```
[ 2.711444] input: HP WMI hotkeys as /devices/virtual/input/input14
[ 2.714634] ACPI Error: Field [D128] at 1152 exceeds Buffer [NULL] size
160 (bits) (20160831/dsopcode-236)
[ 2.714643] ACPI Error: Method parse/execution failed [\HWMC] (Node
ffff8da6c60c1730), AE_AML_BUFFER_LIMIT (20160831/psparse-543)
[ 2.714654] ACPI Error: Method parse/execution failed [\_SB.WMID.WMAA]
(Node ffff8da6c60c3690), AE_AML_BUFFER_LIMIT (20160831/psparse-543)
[ 2.714715] ACPI Error: Field [D128] at 1152 exceeds Buffer [NULL] size
160 (bits) (20160831/dsopcode-236)
[ 2.714719] ACPI Error: Method parse/execution failed [\HWMC] (Node
ffff8da6c60c1730), AE_AML_BUFFER_LIMIT (20160831/psparse-543)
[ 2.714728] ACPI Error: Method parse/execution failed [\_SB.WMID.WMAA]
(Node ffff8da6c60c3690), AE_AML_BUFFER_LIMIT (20160831/psparse-543)
```
*I believe that the problem is related to a [known
problem](https://wiki.archlinux.org/index.php/HP_Spectre_x360_13-4231ng#Issues),
where the airplane mode key is spammed because everytime I open the computer
to more than 180* and close it again to normal I get another spam of airplane
mode keys
*I believe the problem is acpi related.
*If I cat the event of INT33D6 ```
cat /dev/input/by-path/platform-INT33D6:00-event
```
I get garbage output `XXXX+X+` when over 180* (tablet state) and when back
to normal (laptop state)
*I think there is a mixup of INT33D3 and INT33D6, because INT33D3 (or
PNP0C60) is suppose to be incharge of laptop mode see here:
[https://msdn.microsoft.com/library/windows/hardware/dn457868](https://msdn.microsoft.com/library/windows/hardware/dn457868)
[https://patchwork.kernel.org/patch/9306475/](https://patchwork.kernel.org/patch/9306475/)
I also decompiled my DSDT, here is the relevant part (I think):
```
Scope (_SB)
{
Device (VBPA)
{
Name (_HID, "INT33D6" /* Intel Virtual Buttons Device */) //
_HID: Hardware ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((OSYS >= 0x07DD))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (VBST, Zero)
Method (VBDL, 0, NotSerialized)
{
If ((^^PCI0.LPCB.EC0.ECOK == One))
{
If ((^^PCI0.LPCB.EC0.CVTS == Zero))
{
VBST = 0x40
}
Else
{
VBST = Zero
}
}
}
Method (VGBS, 0, NotSerialized)
{
If ((^^PCI0.LPCB.EC0.ECOK == One))
{
If ((^^PCI0.LPCB.EC0.CVTS == Zero))
{
VBST = 0x40
}
Else
{
VBST = Zero
}
}
Return (VBST) /* \_SB_.VBPA.VBST */
}
}
Device (CIND)
{
Name (_HID, "INT33D3" /* Intel GPIO Buttons */) // _HID:
Hardware ID
Name (_CID, "PNP0C60" /* Display Sensor Device */) // _CID:
Compatible ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((OSYS >= 0x07DD))
{
Return (0x0B)
}
Else
{
Return (Zero)
}
}
}
}
```
*Putting the the computer at tablet state and back at laptop state result in
the folllowing messages on dmesg:
```
[ 4320.122389] intel-vbtn INT33D6:00: unknown event index 0xcc
[ 4320.171779] atkbd serio0: Unknown key pressed (translated set 2, code 0xd8
on isa0060/serio0).
[ 4320.171782] atkbd serio0: Use 'setkeycodes e058 <keycode>' to make it
known.
[ 4320.179630] atkbd serio0: Unknown key released (translated set 2, code
0xd8 on isa0060/serio0).
[ 4320.179631] atkbd serio0: Use 'setkeycodes e058 <keycode>' to make it
known.
[ 4329.585035] intel-vbtn INT33D6:00: unknown event index 0xcd
```
*I can't read the output of hp-wmi:
```
ls -la /sys/devices/platform/hp-wmi
9:13PM
total 0
drwxr-xr-x 3 root root 0 פבר 9 19:20 .
drwxr-xr-x 22 root root 0 פבר 9 19:20 ..
-rw-r--r-- 1 root root 4096 פבר 9 21:12 als
-r--r--r-- 1 root root 4096 פבר 9 21:12 display
-r--r--r-- 1 root root 4096 פבר 9 21:12 dock
lrwxrwxrwx 1 root root 0 פבר 9 19:20 driver ->
../../../bus/platform/drivers/hp-wmi
-rw-r--r-- 1 root root 4096 פבר 9 21:12 driver_override
-r--r--r-- 1 root root 4096 פבר 9 21:12 hddtemp
-r--r--r-- 1 root root 4096 פבר 9 21:12 modalias
-rw-r--r-- 1 root root 4096 פבר 9 21:12 postcode
drwxr-xr-x 2 root root 0 פבר 9 21:11 power
lrwxrwxrwx 1 root root 0 פבר 9 19:26 subsystem -> ../../../bus/platform
-r--r--r-- 1 root root 4096 פבר 9 21:12 tablet
-rw-r--r-- 1 root root 4096 פבר 9 21:12 uevent
```
```
sudo cat /sys/devices/platform/hp-wmi/tablet
9:12PM
cat: tablet: Invalid argument
```
After trying to read it I get these messages on dmesg:
```
[12025.122317] ACPI Error: Field [D128] at 1152 exceeds Buffer [NULL] size
160 (bits) (20160831/dsopcode-236)
[12025.122323] ACPI Error: Method parse/execution failed [\HWMC] (Node
ffff8da6c60c1730), AE_AML_BUFFER_LIMIT (20160831/psparse-543)
[12025.122332] ACPI Error: Method parse/execution failed [\_SB.WMID.WMAA]
(Node ffff8da6c60c3690), AE_AML_BUFFER_LIMIT (20160831/psparse-543)
```
*xev output is identical when pressing airplane mode key and when switching
from laptop to tablet and vise versa:
```
MappingNotify event, serial 35, synthetic NO, window 0x0,
request MappingKeyboard, first_keycode 8, count 248
```
I hope this would help other user too,
Thanks in advance,
Itay
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1663620/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp