linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* keyboard not working with Thinkpad Helix (2nd gen) (also stylus)
@ 2015-04-26 18:16 jono
  2015-04-27 18:34 ` Benjamin Tissoires
  0 siblings, 1 reply; 9+ messages in thread
From: jono @ 2015-04-26 18:16 UTC (permalink / raw)
  To: linux-input

The keyboard that this machine comes works fine under grub and windows
but not linux.  The keyboard is a Lenovo Thinkpad Helix Ultrabook Pro
which also has a touchpad, extra battery, usb port etc. The touchpad,
battery, ports are all detected, but the keyboard doesn't work. A usb
and bluetooth keyboard work fine.

I currently have kernel 4.0.0- 040000- generic. It has been reported
in a number of other forums, e.g.

https:/ /bugs.launchpad .net/ubuntu/ +source/ xorg/+bug/ 1437051
https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-Helix-keyboard-not-detected-in-Linux/td-p/2051477

which all contain useful information and log files. I'm currently
running on a fresh install of Ubuntu 15.04 with their "upstream
kernel", but the problem exists in previous Ubuntu and kernel
versions.

"cat /proc/bus/input/devices" lists:

I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input3
U: Uniq=
H: Handlers=sysrq kbd event3
B: PROP=0
B: EV=120013
B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7

which appears to be it, The Xorg log lists

[     4.815] (II) config/udev: Adding input device AT Translated Set 2
keyboard (/dev/input/event3)
[     4.815] (**) AT Translated Set 2 keyboard: Applying InputClass
"evdev keyboard catchall"
[     4.815] (II) Using input driver 'evdev' for 'AT Translated Set 2 keyboard'
[     4.815] (**) AT Translated Set 2 keyboard: always reports core events
[     4.815] (**) evdev: AT Translated Set 2 keyboard: Device:
"/dev/input/event3"
[     4.815] (--) evdev: AT Translated Set 2 keyboard: Vendor 0x1 Product 0x1
[     4.815] (--) evdev: AT Translated Set 2 keyboard: Found keys
[     4.815] (II) evdev: AT Translated Set 2 keyboard: Configuring as keyboard
[     4.815] (**) Option "config_info"
"udev:/sys/devices/platform/i8042/serio0/input/input3/event3"
[     4.815] (II) XINPUT: Adding extended input device "AT Translated
Set 2 keyboard" (type: KEYBOARD, id 14)
[     4.815] (**) Option "xkb_rules" "evdev"
[     4.815] (**) Option "xkb_model" "pc105"
[     4.815] (**) Option "xkb_layout" "us"



As an aside, the stylus is properly not recognized in this kernel, but
works fine in previous kernels with "cat /proc/bus/input/devices"
listing

I: Bus=0018 Vendor=056a Product=0114 Version=0100
N: Name="WCOM0009:00 056A:0114"
P: Phys=
S: Sysfs=/devices/pci0000:00/INT3433:00/i2c-8/i2c-WCOM0009:00/0018:056A:0114.0004/input/input9
U: Uniq=
H: Handlers=mouse2 event8
B: PROP=0
B: EV=1f
B: KEY=c03 30001 0 0 0 0
B: REL=3
B: ABS=1000003
B: MSC=10

in kernel 3.12 for example, but the device is not listed in 3.16 or
later (although possibly it is detected in earlier kernels).

Happy to help test.
Best,
Jonathan

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: keyboard not working with Thinkpad Helix (2nd gen) (also stylus)
  2015-04-26 18:16 keyboard not working with Thinkpad Helix (2nd gen) (also stylus) jono
@ 2015-04-27 18:34 ` Benjamin Tissoires
  2015-04-28  0:56   ` jono
  0 siblings, 1 reply; 9+ messages in thread
From: Benjamin Tissoires @ 2015-04-27 18:34 UTC (permalink / raw)
  To: jono; +Cc: linux-input, Jason Gerecke

Hi Jono,

On Sun, Apr 26, 2015 at 2:16 PM, jono <lejono@gmail.com> wrote:
> The keyboard that this machine comes works fine under grub and windows
> but not linux.  The keyboard is a Lenovo Thinkpad Helix Ultrabook Pro
> which also has a touchpad, extra battery, usb port etc. The touchpad,
> battery, ports are all detected, but the keyboard doesn't work. A usb
> and bluetooth keyboard work fine.
>
> I currently have kernel 4.0.0- 040000- generic. It has been reported
> in a number of other forums, e.g.
>
> https:/ /bugs.launchpad .net/ubuntu/ +source/ xorg/+bug/ 1437051
> https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-Helix-keyboard-not-detected-in-Linux/td-p/2051477
>
> which all contain useful information and log files. I'm currently
> running on a fresh install of Ubuntu 15.04 with their "upstream
> kernel", but the problem exists in previous Ubuntu and kernel
> versions.
>
> "cat /proc/bus/input/devices" lists:
>
> I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
> N: Name="AT Translated Set 2 keyboard"
> P: Phys=isa0060/serio0/input0
> S: Sysfs=/devices/platform/i8042/serio0/input/input3
> U: Uniq=
> H: Handlers=sysrq kbd event3
> B: PROP=0
> B: EV=120013
> B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
> B: MSC=10
> B: LED=7
>
> which appears to be it, The Xorg log lists
>
> [     4.815] (II) config/udev: Adding input device AT Translated Set 2
> keyboard (/dev/input/event3)
> [     4.815] (**) AT Translated Set 2 keyboard: Applying InputClass
> "evdev keyboard catchall"
> [     4.815] (II) Using input driver 'evdev' for 'AT Translated Set 2 keyboard'
> [     4.815] (**) AT Translated Set 2 keyboard: always reports core events
> [     4.815] (**) evdev: AT Translated Set 2 keyboard: Device:
> "/dev/input/event3"
> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Vendor 0x1 Product 0x1
> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Found keys
> [     4.815] (II) evdev: AT Translated Set 2 keyboard: Configuring as keyboard
> [     4.815] (**) Option "config_info"
> "udev:/sys/devices/platform/i8042/serio0/input/input3/event3"
> [     4.815] (II) XINPUT: Adding extended input device "AT Translated
> Set 2 keyboard" (type: KEYBOARD, id 14)
> [     4.815] (**) Option "xkb_rules" "evdev"
> [     4.815] (**) Option "xkb_model" "pc105"
> [     4.815] (**) Option "xkb_layout" "us"
>
>
>
> As an aside, the stylus is properly not recognized in this kernel, but
> works fine in previous kernels with "cat /proc/bus/input/devices"
> listing
>
> I: Bus=0018 Vendor=056a Product=0114 Version=0100
> N: Name="WCOM0009:00 056A:0114"
> P: Phys=
> S: Sysfs=/devices/pci0000:00/INT3433:00/i2c-8/i2c-WCOM0009:00/0018:056A:0114.0004/input/input9
> U: Uniq=
> H: Handlers=mouse2 event8
> B: PROP=0
> B: EV=1f
> B: KEY=c03 30001 0 0 0 0
> B: REL=3
> B: ABS=1000003
> B: MSC=10
>
> in kernel 3.12 for example, but the device is not listed in 3.16 or
> later (although possibly it is detected in earlier kernels).
>

Hmm, you are here reporting 2 bugs at the same time, which will make
things difficult to track.

Anyway, for being able to understand both problems, we will need the
dmesg output of the closest to upstream kernel you have.

For the Wacom ISD bits, I  am adding Jason to the thread. It looks
like your device is an I2C over HID one, so I guess it did not worked
before v3.11 or v3.12. In v3.16 I changed the way the Wacoms are
handled and now they are all handled through HID. But this apparently
broke your device, and I'll try to figure out what happened. We
normally handle unknown Wacoms properly, but there must be something
odd in your case that should hopefully show up in the dmesg output.

Cheers,
Benjamin

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: keyboard not working with Thinkpad Helix (2nd gen) (also stylus)
  2015-04-27 18:34 ` Benjamin Tissoires
@ 2015-04-28  0:56   ` jono
  2015-04-28 15:28     ` Benjamin Tissoires
  0 siblings, 1 reply; 9+ messages in thread
From: jono @ 2015-04-28  0:56 UTC (permalink / raw)
  To: Benjamin Tissoires; +Cc: linux-input, Jason Gerecke

[-- Attachment #1: Type: text/plain, Size: 4285 bytes --]

Thanks, and apologies for the multiple reports. I've attached the
output of dmesg using the latest kernel. Other relevant files can be
found in the links in my original message, and at
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1448479
Also this link may be of interest:
http://www.thinkwiki.org/wiki/Installing_Kubuntu_15.04_on_a_Thinkpad_Helix_2nd_generation
Best,
Jonathan

On Mon, Apr 27, 2015 at 7:34 PM, Benjamin Tissoires
<benjamin.tissoires@gmail.com> wrote:
> Hi Jono,
>
> On Sun, Apr 26, 2015 at 2:16 PM, jono <lejono@gmail.com> wrote:
>> The keyboard that this machine comes works fine under grub and windows
>> but not linux.  The keyboard is a Lenovo Thinkpad Helix Ultrabook Pro
>> which also has a touchpad, extra battery, usb port etc. The touchpad,
>> battery, ports are all detected, but the keyboard doesn't work. A usb
>> and bluetooth keyboard work fine.
>>
>> I currently have kernel 4.0.0- 040000- generic. It has been reported
>> in a number of other forums, e.g.
>>
>> https:/ /bugs.launchpad .net/ubuntu/ +source/ xorg/+bug/ 1437051
>> https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-Helix-keyboard-not-detected-in-Linux/td-p/2051477
>>
>> which all contain useful information and log files. I'm currently
>> running on a fresh install of Ubuntu 15.04 with their "upstream
>> kernel", but the problem exists in previous Ubuntu and kernel
>> versions.
>>
>> "cat /proc/bus/input/devices" lists:
>>
>> I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
>> N: Name="AT Translated Set 2 keyboard"
>> P: Phys=isa0060/serio0/input0
>> S: Sysfs=/devices/platform/i8042/serio0/input/input3
>> U: Uniq=
>> H: Handlers=sysrq kbd event3
>> B: PROP=0
>> B: EV=120013
>> B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
>> B: MSC=10
>> B: LED=7
>>
>> which appears to be it, The Xorg log lists
>>
>> [     4.815] (II) config/udev: Adding input device AT Translated Set 2
>> keyboard (/dev/input/event3)
>> [     4.815] (**) AT Translated Set 2 keyboard: Applying InputClass
>> "evdev keyboard catchall"
>> [     4.815] (II) Using input driver 'evdev' for 'AT Translated Set 2 keyboard'
>> [     4.815] (**) AT Translated Set 2 keyboard: always reports core events
>> [     4.815] (**) evdev: AT Translated Set 2 keyboard: Device:
>> "/dev/input/event3"
>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Vendor 0x1 Product 0x1
>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Found keys
>> [     4.815] (II) evdev: AT Translated Set 2 keyboard: Configuring as keyboard
>> [     4.815] (**) Option "config_info"
>> "udev:/sys/devices/platform/i8042/serio0/input/input3/event3"
>> [     4.815] (II) XINPUT: Adding extended input device "AT Translated
>> Set 2 keyboard" (type: KEYBOARD, id 14)
>> [     4.815] (**) Option "xkb_rules" "evdev"
>> [     4.815] (**) Option "xkb_model" "pc105"
>> [     4.815] (**) Option "xkb_layout" "us"
>>
>>
>>
>> As an aside, the stylus is properly not recognized in this kernel, but
>> works fine in previous kernels with "cat /proc/bus/input/devices"
>> listing
>>
>> I: Bus=0018 Vendor=056a Product=0114 Version=0100
>> N: Name="WCOM0009:00 056A:0114"
>> P: Phys=
>> S: Sysfs=/devices/pci0000:00/INT3433:00/i2c-8/i2c-WCOM0009:00/0018:056A:0114.0004/input/input9
>> U: Uniq=
>> H: Handlers=mouse2 event8
>> B: PROP=0
>> B: EV=1f
>> B: KEY=c03 30001 0 0 0 0
>> B: REL=3
>> B: ABS=1000003
>> B: MSC=10
>>
>> in kernel 3.12 for example, but the device is not listed in 3.16 or
>> later (although possibly it is detected in earlier kernels).
>>
>
> Hmm, you are here reporting 2 bugs at the same time, which will make
> things difficult to track.
>
> Anyway, for being able to understand both problems, we will need the
> dmesg output of the closest to upstream kernel you have.
>
> For the Wacom ISD bits, I  am adding Jason to the thread. It looks
> like your device is an I2C over HID one, so I guess it did not worked
> before v3.11 or v3.12. In v3.16 I changed the way the Wacoms are
> handled and now they are all handled through HID. But this apparently
> broke your device, and I'll try to figure out what happened. We
> normally handle unknown Wacoms properly, but there must be something
> odd in your case that should hopefully show up in the dmesg output.
>
> Cheers,
> Benjamin

[-- Attachment #2: dmesg.txt --]
[-- Type: text/plain, Size: 69408 bytes --]

[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.0.0-040000-generic (kernel@gomeisa) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #201504121935 SMP Sun Apr 12 23:36:33 UTC 2015
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.0.0-040000-generic root=UUID=e4812db0-0893-4f2e-a2bf-8ab9afe12e03 ro quiet splash vt.handoff=7
[    0.000000] KERNEL supported cpus:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Centaur CentaurHauls
[    0.000000] e820: BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x0000000000057fff] usable
[    0.000000] BIOS-e820: [mem 0x0000000000058000-0x0000000000058fff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000000059000-0x000000000009bfff] usable
[    0.000000] BIOS-e820: [mem 0x000000000009c000-0x000000000009cfff] reserved
[    0.000000] BIOS-e820: [mem 0x000000000009d000-0x000000000009dfff] usable
[    0.000000] BIOS-e820: [mem 0x000000000009e000-0x000000000009ffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000cbb3afff] usable
[    0.000000] BIOS-e820: [mem 0x00000000cbb3b000-0x00000000cbd3afff] type 20
[    0.000000] BIOS-e820: [mem 0x00000000cbd3b000-0x00000000ccbfdfff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000ccbfe000-0x00000000ccd7dfff] ACPI NVS
[    0.000000] BIOS-e820: [mem 0x00000000ccd7e000-0x00000000ccdfdfff] ACPI data
[    0.000000] BIOS-e820: [mem 0x00000000ccdfe000-0x00000000ccdfefff] usable
[    0.000000] BIOS-e820: [mem 0x00000000f80f8000-0x00000000f80f8fff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000fed1c000-0x00000000fed1ffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000022dffffff] usable
[    0.000000] NX (Execute Disable) protection: active
[    0.000000] efi: EFI v2.31 by Lenovo
[    0.000000] efi:  ACPI=0xccdfd000  ACPI 2.0=0xccdfd014  SMBIOS=0xccbfd000 
[    0.000000] efi: mem00: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000000000000-0x0000000000058000) (0MB)
[    0.000000] efi: mem01: [Reserved           |   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000000058000-0x0000000000059000) (0MB)
[    0.000000] efi: mem02: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000000059000-0x000000000009c000) (0MB)
[    0.000000] efi: mem03: [Reserved           |   |  |  |  |   |WB|WT|WC|UC] range=[0x000000000009c000-0x000000000009d000) (0MB)
[    0.000000] efi: mem04: [Boot Data          |   |  |  |  |   |WB|WT|WC|UC] range=[0x000000000009d000-0x000000000009e000) (0MB)
[    0.000000] efi: mem05: [Reserved           |   |  |  |  |   |WB|WT|WC|UC] range=[0x000000000009e000-0x00000000000a0000) (0MB)
[    0.000000] efi: mem06: [Loader Data        |   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000000100000-0x00000000014d5000) (19MB)
[    0.000000] efi: mem07: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000014d5000-0x0000000002000000) (11MB)
[    0.000000] efi: mem08: [Loader Data        |   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000002000000-0x00000000033d5000) (19MB)
[    0.000000] efi: mem09: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000033d5000-0x0000000010000000) (204MB)
[    0.000000] efi: mem10: [Boot Code          |   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000010000000-0x000000001000b000) (0MB)
[    0.000000] efi: mem11: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x000000001000b000-0x0000000035956000) (601MB)
[    0.000000] efi: mem12: [Loader Data        |   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000035956000-0x0000000036ca3000) (19MB)
[    0.000000] efi: mem13: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000036ca3000-0x000000007309e000) (963MB)
[    0.000000] efi: mem14: [Loader Data        |   |  |  |  |   |WB|WT|WC|UC] range=[0x000000007309e000-0x00000000a490c000) (792MB)
[    0.000000] efi: mem15: [Boot Data          |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a490c000-0x00000000a492c000) (0MB)
[    0.000000] efi: mem16: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a492c000-0x00000000a5fc6000) (22MB)
[    0.000000] efi: mem17: [Loader Data        |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a5fc6000-0x00000000a619a000) (1MB)
[    0.000000] efi: mem18: [Boot Data          |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a619a000-0x00000000a78fc000) (23MB)
[    0.000000] efi: mem19: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a78fc000-0x00000000a7939000) (0MB)
[    0.000000] efi: mem20: [Loader Data        |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a7939000-0x00000000a793b000) (0MB)
[    0.000000] efi: mem21: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a793b000-0x00000000a7a18000) (0MB)
[    0.000000] efi: mem22: [Loader Code        |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a7a18000-0x00000000a7b3b000) (1MB)
[    0.000000] efi: mem23: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000a7b3b000-0x00000000c43b2000) (456MB)
[    0.000000] efi: mem24: [Boot Data          |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000c43b2000-0x00000000c44ea000) (1MB)
[    0.000000] efi: mem25: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000c44ea000-0x00000000c45a2000) (0MB)
[    0.000000] efi: mem26: [Boot Data          |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000c45a2000-0x00000000c677d000) (33MB)
[    0.000000] efi: mem27: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000c677d000-0x00000000c6790000) (0MB)
[    0.000000] efi: mem28: [Boot Data          |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000c6790000-0x00000000c7b3b000) (19MB)
[    0.000000] efi: mem29: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000c7b3b000-0x00000000cb3f9000) (56MB)
[    0.000000] efi: mem30: [Loader Data        |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000cb3f9000-0x00000000cb403000) (0MB)
[    0.000000] efi: mem31: [Boot Code          |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000cb403000-0x00000000cbb3b000) (7MB)
[    0.000000] efi: mem32: [Runtime Code       |RUN|  |  |  |   |WB|WT|WC|UC] range=[0x00000000cbb3b000-0x00000000cbd3b000) (2MB)
[    0.000000] efi: mem33: [Runtime Data       |RUN|  |  |  |   |WB|WT|WC|UC] range=[0x00000000cbd3b000-0x00000000cc914000) (11MB)
[    0.000000] efi: mem34: [Reserved           |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000cc914000-0x00000000ccbfe000) (2MB)
[    0.000000] efi: mem35: [ACPI Memory NVS    |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000ccbfe000-0x00000000ccd7e000) (1MB)
[    0.000000] efi: mem36: [ACPI Reclaim Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000ccd7e000-0x00000000ccdfe000) (0MB)
[    0.000000] efi: mem37: [Boot Data          |   |  |  |  |   |WB|WT|WC|UC] range=[0x00000000ccdfe000-0x00000000ccdff000) (0MB)
[    0.000000] efi: mem38: [Conventional Memory|   |  |  |  |   |WB|WT|WC|UC] range=[0x0000000100000000-0x000000022e000000) (4832MB)
[    0.000000] efi: mem39: [Memory Mapped I/O  |RUN|  |  |  |   |  |  |  |UC] range=[0x00000000f80f8000-0x00000000f80f9000) (0MB)
[    0.000000] efi: mem40: [Memory Mapped I/O  |RUN|  |  |  |   |  |  |  |UC] range=[0x00000000fed1c000-0x00000000fed20000) (0MB)
[    0.000000] SMBIOS 2.7 present.
[    0.000000] DMI: LENOVO 20CG001BUK/20CG001BUK, BIOS N17ET74W (1.74 ) 03/19/2015
[    0.000000] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[    0.000000] e820: remove [mem 0x000a0000-0x000fffff] usable
[    0.000000] AGP: No AGP bridge found
[    0.000000] e820: last_pfn = 0x22e000 max_arch_pfn = 0x400000000
[    0.000000] MTRR default type: write-back
[    0.000000] MTRR fixed ranges enabled:
[    0.000000]   00000-9FFFF write-back
[    0.000000]   A0000-BFFFF uncachable
[    0.000000]   C0000-FFFFF write-protect
[    0.000000] MTRR variable ranges enabled:
[    0.000000]   0 base 00E0000000 mask 7FE0000000 uncachable
[    0.000000]   1 base 00D0000000 mask 7FF0000000 uncachable
[    0.000000]   2 base 00CE000000 mask 7FFE000000 uncachable
[    0.000000]   3 base 00CD000000 mask 7FFF000000 uncachable
[    0.000000]   4 base 00CCE00000 mask 7FFFE00000 uncachable
[    0.000000]   5 base 00CCDFF000 mask 7FFFFFF000 uncachable
[    0.000000]   6 disabled
[    0.000000]   7 disabled
[    0.000000]   8 disabled
[    0.000000]   9 disabled
[    0.000000] PAT configuration [0-7]: WB  WC  UC- UC  WB  WC  UC- UC  
[    0.000000] e820: last_pfn = 0xccdff max_arch_pfn = 0x400000000
[    0.000000] Scanning 1 areas for low memory corruption
[    0.000000] Base memory trampoline at [ffff880000096000] 96000 size 24576
[    0.000000] Using GB pages for direct mapping
[    0.000000] init_memory_mapping: [mem 0x00000000-0x000fffff]
[    0.000000]  [mem 0x00000000-0x000fffff] page 4k
[    0.000000] BRK [0x02fcd000, 0x02fcdfff] PGTABLE
[    0.000000] BRK [0x02fce000, 0x02fcefff] PGTABLE
[    0.000000] BRK [0x02fcf000, 0x02fcffff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0x22de00000-0x22dffffff]
[    0.000000]  [mem 0x22de00000-0x22dffffff] page 2M
[    0.000000] BRK [0x02fd0000, 0x02fd0fff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0x220000000-0x22ddfffff]
[    0.000000]  [mem 0x220000000-0x22ddfffff] page 2M
[    0.000000] init_memory_mapping: [mem 0x200000000-0x21fffffff]
[    0.000000]  [mem 0x200000000-0x21fffffff] page 2M
[    0.000000] init_memory_mapping: [mem 0x00100000-0xcbb3afff]
[    0.000000]  [mem 0x00100000-0x001fffff] page 4k
[    0.000000]  [mem 0x00200000-0x3fffffff] page 2M
[    0.000000]  [mem 0x40000000-0xbfffffff] page 1G
[    0.000000]  [mem 0xc0000000-0xcb9fffff] page 2M
[    0.000000]  [mem 0xcba00000-0xcbb3afff] page 4k
[    0.000000] init_memory_mapping: [mem 0xccdfe000-0xccdfefff]
[    0.000000]  [mem 0xccdfe000-0xccdfefff] page 4k
[    0.000000] BRK [0x02fd1000, 0x02fd1fff] PGTABLE
[    0.000000] init_memory_mapping: [mem 0x100000000-0x1ffffffff]
[    0.000000]  [mem 0x100000000-0x1ffffffff] page 1G
[    0.000000] RAMDISK: [mem 0x35956000-0x36ca2fff]
[    0.000000] ACPI: Early table checksum verification disabled
[    0.000000] ACPI: RSDP 0x00000000CCDFD014 000024 (v02 LENOVO)
[    0.000000] ACPI: XSDT 0x00000000CCDFD1C0 000114 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: FACP 0x00000000CCDF8000 00010C (v05 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: DSDT 0x00000000CCDDC000 01683D (v01 LENOVO TP-N17   00001740 INTL 20120711)
[    0.000000] ACPI: FACS 0x00000000CCD67000 000040
[    0.000000] ACPI: ASF! 0x00000000CCDFC000 0000A5 (v32 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: HPET 0x00000000CCDFB000 000038 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: ECDT 0x00000000CCDFA000 000052 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: LPIT 0x00000000CCDF7000 000094 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: APIC 0x00000000CCDF6000 000098 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: MCFG 0x00000000CCDF5000 00003C (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: SSDT 0x00000000CCDF4000 000033 (v01 LENOVO TP-SSDT1 00000100 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDF3000 000486 (v01 LENOVO TP-SSDT2 00000200 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDDB000 0009CB (v01 LENOVO SataAhci 00001000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDDA000 000152 (v01 LENOVO Rmv_Batt 00001000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDD9000 00022E (v01 LENOVO Ult0Rtd3 00001000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDD5000 0034C5 (v02 LENOVO DptfTabl 00001000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDD4000 0005EC (v01 LENOVO Cpu0Ist  00003000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDD3000 000B74 (v02 LENOVO CpuSsdt  00003000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDD2000 0003C9 (v02 LENOVO CtdpB    00001000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDD0000 0014E1 (v01 LENOVO SaSsdt   00003000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDCF000 000394 (v02 LENOVO CppcTabl 00001000 INTL 20120711)
[    0.000000] ACPI: PCCT 0x00000000CCDCE000 00006E (v05 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: SSDT 0x00000000CCDCD000 000AC4 (v02 LENOVO Cpc_Tabl 00001000 INTL 20120711)
[    0.000000] ACPI: UEFI 0x00000000CCDCC000 000042 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: MSDM 0x00000000CCCB0000 000055 (v03 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: BATB 0x00000000CCDCB000 000046 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: FPDT 0x00000000CCDCA000 000064 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: SSDT 0x00000000CCDC9000 0004B2 (v01 LENOVO Tpm2Tabl 00001000 INTL 20120711)
[    0.000000] ACPI: SSDT 0x00000000CCDC8000 00004B (v02 LENOVO MeSsdt   00003000 INTL 20120711)
[    0.000000] ACPI: TPM2 0x00000000CCDC7000 000034 (v03 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: UEFI 0x00000000CCDC6000 00030A (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: BGRT 0x00000000CCDC5000 000038 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: CSRT 0x00000000CCDC4000 0000C4 (v01 LENOVO TP-N17   00001740 PTEC 00000002)
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] No NUMA configuration found
[    0.000000] Faking a node at [mem 0x0000000000000000-0x000000022dffffff]
[    0.000000] NODE_DATA(0) allocated [mem 0x22dff9000-0x22dffdfff]
[    0.000000]  [ffffea0000000000-ffffea0008bfffff] PMD -> [ffff880225600000-ffff88022d5fffff] on node 0
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000001000-0x0000000000ffffff]
[    0.000000]   DMA32    [mem 0x0000000001000000-0x00000000ffffffff]
[    0.000000]   Normal   [mem 0x0000000100000000-0x000000022dffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000001000-0x0000000000057fff]
[    0.000000]   node   0: [mem 0x0000000000059000-0x000000000009bfff]
[    0.000000]   node   0: [mem 0x000000000009d000-0x000000000009dfff]
[    0.000000]   node   0: [mem 0x0000000000100000-0x00000000cbb3afff]
[    0.000000]   node   0: [mem 0x00000000ccdfe000-0x00000000ccdfefff]
[    0.000000]   node   0: [mem 0x0000000100000000-0x000000022dffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000001000-0x000000022dffffff]
[    0.000000] On node 0 totalpages: 2071255
[    0.000000]   DMA zone: 64 pages used for memmap
[    0.000000]   DMA zone: 23 pages reserved
[    0.000000]   DMA zone: 3995 pages, LIFO batch:0
[    0.000000]   DMA32 zone: 12973 pages used for memmap
[    0.000000]   DMA32 zone: 830268 pages, LIFO batch:31
[    0.000000]   Normal zone: 19328 pages used for memmap
[    0.000000]   Normal zone: 1236992 pages, LIFO batch:31
[    0.000000] Reserving Intel graphics stolen memory at 0xce000000-0xcfffffff
[    0.000000] ACPI: PM-Timer IO Port: 0x1808
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x02] enabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x04] lapic_id[0x03] enabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x05] lapic_id[0x00] disabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x06] lapic_id[0x00] disabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x07] lapic_id[0x00] disabled)
[    0.000000] ACPI: LAPIC (acpi_id[0x08] lapic_id[0x00] disabled)
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
[    0.000000] ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
[    0.000000] IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-39
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
[    0.000000] ACPI: IRQ0 used by override.
[    0.000000] ACPI: IRQ9 used by override.
[    0.000000] Using ACPI (MADT) for SMP configuration information
[    0.000000] ACPI: HPET id: 0x8086a301 base: 0xfed00000
[    0.000000] smpboot: Allowing 8 CPUs, 4 hotplug CPUs
[    0.000000] PM: Registered nosave memory: [mem 0x00000000-0x00000fff]
[    0.000000] PM: Registered nosave memory: [mem 0x00058000-0x00058fff]
[    0.000000] PM: Registered nosave memory: [mem 0x0009c000-0x0009cfff]
[    0.000000] PM: Registered nosave memory: [mem 0x0009e000-0x0009ffff]
[    0.000000] PM: Registered nosave memory: [mem 0x000a0000-0x000fffff]
[    0.000000] PM: Registered nosave memory: [mem 0xcbb3b000-0xcbd3afff]
[    0.000000] PM: Registered nosave memory: [mem 0xcbd3b000-0xccbfdfff]
[    0.000000] PM: Registered nosave memory: [mem 0xccbfe000-0xccd7dfff]
[    0.000000] PM: Registered nosave memory: [mem 0xccd7e000-0xccdfdfff]
[    0.000000] PM: Registered nosave memory: [mem 0xccdff000-0xcdffffff]
[    0.000000] PM: Registered nosave memory: [mem 0xce000000-0xcfffffff]
[    0.000000] PM: Registered nosave memory: [mem 0xd0000000-0xf80f7fff]
[    0.000000] PM: Registered nosave memory: [mem 0xf80f8000-0xf80f8fff]
[    0.000000] PM: Registered nosave memory: [mem 0xf80f9000-0xfed1bfff]
[    0.000000] PM: Registered nosave memory: [mem 0xfed1c000-0xfed1ffff]
[    0.000000] PM: Registered nosave memory: [mem 0xfed20000-0xffffffff]
[    0.000000] e820: [mem 0xd0000000-0xf80f7fff] available for PCI devices
[    0.000000] Booting paravirtualized kernel on bare hardware
[    0.000000] setup_percpu: NR_CPUS:256 nr_cpumask_bits:256 nr_cpu_ids:8 nr_node_ids:1
[    0.000000] PERCPU: Embedded 32 pages/cpu @ffff88022dc00000 s91032 r8192 d31848 u262144
[    0.000000] pcpu-alloc: s91032 r8192 d31848 u262144 alloc=1*2097152
[    0.000000] pcpu-alloc: [0] 0 1 2 3 4 5 6 7 
[    0.000000] Built 1 zonelists in Node order, mobility grouping on.  Total pages: 2038867
[    0.000000] Policy zone: Normal
[    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.0.0-040000-generic root=UUID=e4812db0-0893-4f2e-a2bf-8ab9afe12e03 ro quiet splash vt.handoff=7
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] xsave: enabled xstate_bv 0x7, cntxt size 0x340 using standard form
[    0.000000] AGP: Checking aperture...
[    0.000000] AGP: No AGP bridge found
[    0.000000] Calgary: detecting Calgary via BIOS EBDA area
[    0.000000] Calgary: Unable to locate Rio Grande table in EBDA - bailing!
[    0.000000] Memory: 7962960K/8285020K available (8148K kernel code, 1137K rwdata, 3916K rodata, 1420K init, 1292K bss, 322060K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=8, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] 	RCU dyntick-idle grace-period acceleration is enabled.
[    0.000000] 	RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=8.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=8
[    0.000000] NR_IRQS:16640 nr_irqs:760 16
[    0.000000] 	Offload RCU callbacks from all CPUs
[    0.000000] 	Offload RCU callbacks from CPUs: 0-7.
[    0.000000] Console: colour dummy device 80x25
[    0.000000] console [tty0] enabled
[    0.000000] hpet clockevent registered
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 1396.646 MHz processor
[    0.000080] Calibrating delay loop (skipped), value calculated using timer frequency.. 2793.29 BogoMIPS (lpj=5586584)
[    0.000087] pid_max: default: 32768 minimum: 301
[    0.000100] ACPI: Core revision 20150204
[    0.073572] ACPI: All ACPI Tables successfully acquired
[    0.177472] Security Framework initialized
[    0.177499] AppArmor: AppArmor initialized
[    0.177501] Yama: becoming mindful.
[    0.179081] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes)
[    0.182885] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes)
[    0.184483] Mount-cache hash table entries: 16384 (order: 5, 131072 bytes)
[    0.184511] Mountpoint-cache hash table entries: 16384 (order: 5, 131072 bytes)
[    0.184983] Initializing cgroup subsys blkio
[    0.184990] Initializing cgroup subsys memory
[    0.185004] Initializing cgroup subsys devices
[    0.185009] Initializing cgroup subsys freezer
[    0.185013] Initializing cgroup subsys net_cls
[    0.185038] Initializing cgroup subsys perf_event
[    0.185044] Initializing cgroup subsys net_prio
[    0.185048] Initializing cgroup subsys hugetlb
[    0.185111] CPU: Physical Processor ID: 0
[    0.185114] CPU: Processor Core ID: 0
[    0.185124] ENERGY_PERF_BIAS: Set to 'normal', was 'performance'
[    0.185126] ENERGY_PERF_BIAS: View and update with x86_energy_perf_policy(8)
[    0.187392] mce: CPU supports 7 MCE banks
[    0.187424] CPU0: Thermal monitoring enabled (TM1)
[    0.187448] Last level iTLB entries: 4KB 64, 2MB 8, 4MB 8
[    0.187451] Last level dTLB entries: 4KB 64, 2MB 0, 4MB 0, 1GB 4
[    0.188351] Freeing SMP alternatives memory: 28K (ffffffff81e81000 - ffffffff81e88000)
[    0.198429] ftrace: allocating 33155 entries in 130 pages
[    0.235961] x2apic: IRQ remapping doesn't support X2APIC mode
[    0.236715] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
[    0.276404] TSC deadline timer enabled
[    0.276412] smpboot: CPU0: Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz (fam: 06, model: 3d, stepping: 04)
[    0.276474] Performance Events: PEBS fmt2+, generic architected perfmon, full-width counters, Intel PMU driver.
[    0.276487] ... version:                3
[    0.276489] ... bit width:              48
[    0.276491] ... generic registers:      4
[    0.276494] ... value mask:             0000ffffffffffff
[    0.276497] ... max period:             0000ffffffffffff
[    0.276499] ... fixed-purpose events:   3
[    0.276501] ... event mask:             000000070000000f
[    0.278604] x86: Booting SMP configuration:
[    0.278608] .... node  #0, CPUs:      #1
[    0.294825] NMI watchdog: enabled on all CPUs, permanently consumes one hw-PMU counter.
[    0.295032]  #2 #3
[    0.326532] x86: Booted up 1 node, 4 CPUs
[    0.326539] smpboot: Total of 4 processors activated (11173.16 BogoMIPS)
[    0.338956] devtmpfs: initialized
[    0.349104] evm: security.selinux
[    0.349108] evm: security.SMACK64
[    0.349110] evm: security.SMACK64EXEC
[    0.349112] evm: security.SMACK64TRANSMUTE
[    0.349115] evm: security.SMACK64MMAP
[    0.349117] evm: security.ima
[    0.349119] evm: security.capability
[    0.349252] PM: Registering ACPI NVS region [mem 0xccbfe000-0xccd7dfff] (1572864 bytes)
[    0.349682] pinctrl core: initialized pinctrl subsystem
[    0.349909] RTC time:  1:45:48, date: 04/28/15
[    0.350207] NET: Registered protocol family 16
[    0.354410] cpuidle: using governor ladder
[    0.362410] cpuidle: using governor menu
[    0.362563] ACPI FADT declares the system doesn't support PCIe ASPM, so disable it
[    0.362567] ACPI: bus type PCI registered
[    0.362570] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
[    0.362954] PCI: MMCONFIG for domain 0000 [bus 00-3f] at [mem 0xf8000000-0xfbffffff] (base 0xf8000000)
[    0.362959] PCI: not using MMCONFIG
[    0.362963] PCI: Using configuration type 1 for base access
[    0.367367] ACPI: Added _OSI(Module Device)
[    0.367372] ACPI: Added _OSI(Processor Device)
[    0.367375] ACPI: Added _OSI(3.0 _SCP Extensions)
[    0.367378] ACPI: Added _OSI(Processor Aggregator Device)
[    0.374336] ACPI : EC: EC description table is found, configuring boot EC
[    0.382084] ACPI: Executed 9 blocks of module-level executable AML code
[    0.394962] [Firmware Bug]: ACPI: BIOS _OSI(Linux) query ignored
[    0.401204] ACPI: Dynamic OEM Table Load:
[    0.401243] ACPI: SSDT 0xFFFF880224380800 00045C (v01 PmRef  Cpu0Cst  00003001 INTL 20120711)
[    0.403631] ACPI: Dynamic OEM Table Load:
[    0.403665] ACPI: SSDT 0xFFFF880224381000 0005AA (v01 PmRef  ApIst    00003000 INTL 20120711)
[    0.406154] ACPI: Dynamic OEM Table Load:
[    0.406184] ACPI: SSDT 0xFFFF880223E44000 000119 (v02 PmRef  ApCst    00003000 INTL 20120711)
[    0.410086] ACPI: Interpreter enabled
[    0.410107] ACPI Exception: AE_NOT_FOUND, While evaluating Sleep State [\_S1_] (20150204/hwxface-580)
[    0.410125] ACPI Exception: AE_NOT_FOUND, While evaluating Sleep State [\_S2_] (20150204/hwxface-580)
[    0.410169] ACPI: (supports S0 S3 S4 S5)
[    0.410173] ACPI: Using IOAPIC for interrupt routing
[    0.410219] PCI: MMCONFIG for domain 0000 [bus 00-3f] at [mem 0xf8000000-0xfbffffff] (base 0xf8000000)
[    0.411613] PCI: MMCONFIG at [mem 0xf8000000-0xfbffffff] reserved in ACPI motherboard resources
[    0.411869] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[    0.418663] ACPI: Power Resource [PUBS] (on)
[    0.419683] acpi PNP0C0A:01: ACPI dock station (docks/bays count: 1)
[    0.421567] ACPI: Power Resource [NVP3] (on)
[    0.421631] ACPI: Power Resource [NVP2] (on)
[    0.431971] ACPI: Power Resource [PXTC] (on)
[    0.596356] ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.596495] ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.596626] ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.596755] ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.596883] ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.597011] ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.597138] ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.597265] ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[    0.597472] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-3f])
[    0.597484] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI]
[    0.598017] acpi PNP0A08:00: _OSC: OS now controls [PCIeHotplug PME AER PCIeCapability]
[    0.598434] PCI host bridge to bus 0000:00
[    0.598441] pci_bus 0000:00: root bus resource [bus 00-3f]
[    0.598446] pci_bus 0000:00: root bus resource [io  0x0000-0x0cf7 window]
[    0.598450] pci_bus 0000:00: root bus resource [io  0x0d00-0xffff window]
[    0.598455] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]
[    0.598459] pci_bus 0000:00: root bus resource [mem 0x000c0000-0x000c3fff window]
[    0.598463] pci_bus 0000:00: root bus resource [mem 0x000c4000-0x000c7fff window]
[    0.598466] pci_bus 0000:00: root bus resource [mem 0x000c8000-0x000cbfff window]
[    0.598470] pci_bus 0000:00: root bus resource [mem 0x000cc000-0x000cffff window]
[    0.598474] pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff window]
[    0.598478] pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff window]
[    0.598482] pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff window]
[    0.598486] pci_bus 0000:00: root bus resource [mem 0x000dc000-0x000dffff window]
[    0.598490] pci_bus 0000:00: root bus resource [mem 0xd0000000-0xfebfffff window]
[    0.598494] pci_bus 0000:00: root bus resource [mem 0xfed40000-0xfed4bfff window]
[    0.598513] pci 0000:00:00.0: [8086:1604] type 00 class 0x060000
[    0.598744] pci 0000:00:02.0: [8086:161e] type 00 class 0x030000
[    0.598774] pci 0000:00:02.0: reg 0x10: [mem 0xf0000000-0xf0ffffff 64bit]
[    0.598792] pci 0000:00:02.0: reg 0x18: [mem 0xe0000000-0xefffffff 64bit pref]
[    0.598805] pci 0000:00:02.0: reg 0x20: [io  0x3000-0x303f]
[    0.599015] pci 0000:00:03.0: [8086:160c] type 00 class 0x040300
[    0.599037] pci 0000:00:03.0: reg 0x10: [mem 0xf1118000-0xf111bfff 64bit]
[    0.599261] pci 0000:00:04.0: [8086:1603] type 00 class 0x118000
[    0.599290] pci 0000:00:04.0: reg 0x10: [mem 0xf1110000-0xf1117fff 64bit]
[    0.599544] pci 0000:00:14.0: [8086:9cb1] type 00 class 0x0c0330
[    0.599578] pci 0000:00:14.0: reg 0x10: [mem 0xf1100000-0xf110ffff 64bit]
[    0.599688] pci 0000:00:14.0: PME# supported from D3hot D3cold
[    0.599769] pci 0000:00:14.0: System wakeup disabled by ACPI
[    0.599858] pci 0000:00:16.0: [8086:9cba] type 00 class 0x078000
[    0.599892] pci 0000:00:16.0: reg 0x10: [mem 0xf111d000-0xf111d01f 64bit]
[    0.600005] pci 0000:00:16.0: PME# supported from D0 D3hot D3cold
[    0.600176] pci 0000:00:1c.0: [8086:9c90] type 01 class 0x060400
[    0.600311] pci 0000:00:1c.0: PME# supported from D0 D3hot D3cold
[    0.600473] pci 0000:00:1c.1: [8086:9c94] type 01 class 0x060400
[    0.600610] pci 0000:00:1c.1: PME# supported from D0 D3hot D3cold
[    0.600698] pci 0000:00:1c.1: System wakeup disabled by ACPI
[    0.600797] pci 0000:00:1f.0: [8086:9cc7] type 00 class 0x060100
[    0.601104] pci 0000:00:1f.2: [8086:9c83] type 00 class 0x010601
[    0.601135] pci 0000:00:1f.2: reg 0x10: [io  0x3088-0x308f]
[    0.601150] pci 0000:00:1f.2: reg 0x14: [io  0x309c-0x309f]
[    0.601165] pci 0000:00:1f.2: reg 0x18: [io  0x3080-0x3087]
[    0.601180] pci 0000:00:1f.2: reg 0x1c: [io  0x3098-0x309b]
[    0.601195] pci 0000:00:1f.2: reg 0x20: [io  0x3060-0x307f]
[    0.601211] pci 0000:00:1f.2: reg 0x24: [mem 0xf1120000-0xf11207ff]
[    0.601286] pci 0000:00:1f.2: PME# supported from D3hot
[    0.601440] pci 0000:00:1f.3: [8086:9ca2] type 00 class 0x0c0500
[    0.601466] pci 0000:00:1f.3: reg 0x10: [mem 0xf111c000-0xf111c0ff 64bit]
[    0.601502] pci 0000:00:1f.3: reg 0x20: [io  0xefa0-0xefbf]
[    0.601684] pci 0000:00:1f.6: [8086:9ca4] type 00 class 0x118000
[    0.601730] pci 0000:00:1f.6: reg 0x10: [mem 0xf111f000-0xf111ffff 64bit]
[    0.602126] pci 0000:00:1c.0: PCI bridge to [bus 02]
[    0.602587] pci 0000:06:00.0: [8086:095a] type 00 class 0x028000
[    0.602923] pci 0000:06:00.0: reg 0x10: [mem 0xf1000000-0xf1001fff 64bit]
[    0.604074] pci 0000:06:00.0: PME# supported from D0 D3hot D3cold
[    0.604279] pci 0000:06:00.0: System wakeup disabled by ACPI
[    0.610856] pci 0000:00:1c.1: PCI bridge to [bus 06]
[    0.610867] pci 0000:00:1c.1:   bridge window [mem 0xf1000000-0xf10fffff]
[    0.611038] acpi PNP0A08:00: Disabling ASPM (FADT indicates it is unsupported)
[    0.621959] ACPI: Enabled 5 GPEs in block 00 to 7F
[    0.622232] ACPI : EC: GPE = 0x24, I/O: command/status = 0x66, data = 0x62
[    0.622543] vgaarb: device added: PCI:0000:00:02.0,decodes=io+mem,owns=mem,locks=none
[    0.622551] vgaarb: loaded
[    0.622554] vgaarb: setting as boot device: PCI:0000:00:02.0
[    0.622557] vgaarb: bridge control possible 0000:00:02.0
[    0.623120] SCSI subsystem initialized
[    0.623219] libata version 3.00 loaded.
[    0.623277] ACPI: bus type USB registered
[    0.623320] usbcore: registered new interface driver usbfs
[    0.623340] usbcore: registered new interface driver hub
[    0.623381] usbcore: registered new device driver usb
[    0.623790] PCI: Using ACPI for IRQ routing
[    0.626080] PCI: pci_cache_line_size set to 64 bytes
[    0.626142] e820: reserve RAM buffer [mem 0x00058000-0x0005ffff]
[    0.626146] e820: reserve RAM buffer [mem 0x0009c000-0x0009ffff]
[    0.626149] e820: reserve RAM buffer [mem 0x0009e000-0x0009ffff]
[    0.626152] e820: reserve RAM buffer [mem 0xcbb3b000-0xcbffffff]
[    0.626156] e820: reserve RAM buffer [mem 0xccdff000-0xcfffffff]
[    0.626159] e820: reserve RAM buffer [mem 0x22e000000-0x22fffffff]
[    0.626434] NetLabel: Initializing
[    0.626437] NetLabel:  domain hash size = 128
[    0.626439] NetLabel:  protocols = UNLABELED CIPSOv4
[    0.626468] NetLabel:  unlabeled traffic allowed by default
[    0.626631] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0
[    0.626645] hpet0: 8 comparators, 64-bit 14.318180 MHz counter
[    0.628716] Switched to clocksource hpet
[    0.641589] AppArmor: AppArmor Filesystem Enabled
[    0.641733] pnp: PnP ACPI init
[    0.642487] system 00:00: [mem 0x00000000-0x0009ffff] could not be reserved
[    0.642495] system 00:00: [mem 0x000e0000-0x000e3fff] has been reserved
[    0.642499] system 00:00: [mem 0x000e4000-0x000e7fff] has been reserved
[    0.642506] system 00:00: [mem 0x000e8000-0x000ebfff] has been reserved
[    0.642511] system 00:00: [mem 0x000ec000-0x000effff] has been reserved
[    0.642515] system 00:00: [mem 0x000f0000-0x000fffff] could not be reserved
[    0.642520] system 00:00: [mem 0x00100000-0xcfffffff] could not be reserved
[    0.642525] system 00:00: [mem 0xfec00000-0xffffffff] could not be reserved
[    0.642532] system 00:00: Plug and Play ACPI device, IDs PNP0c01 (active)
[    0.642727] system 00:01: [io  0x1800-0x189f] could not be reserved
[    0.642733] system 00:01: [io  0x0800-0x087f] could not be reserved
[    0.642737] system 00:01: [io  0x0880-0x08ff] could not be reserved
[    0.642741] system 00:01: [io  0x0900-0x097f] could not be reserved
[    0.642746] system 00:01: [io  0x0980-0x09ff] could not be reserved
[    0.642750] system 00:01: [io  0x0a00-0x0a7f] could not be reserved
[    0.642754] system 00:01: [io  0x0a80-0x0aff] could not be reserved
[    0.642759] system 00:01: [io  0x0b00-0x0b7f] could not be reserved
[    0.642763] system 00:01: [io  0x0b80-0x0bff] could not be reserved
[    0.642767] system 00:01: [io  0x15e0-0x15ef] has been reserved
[    0.642772] system 00:01: [io  0x1600-0x167f] has been reserved
[    0.642776] system 00:01: [io  0x1640-0x165f] has been reserved
[    0.642783] system 00:01: [mem 0xf8000000-0xfbffffff] could not be reserved
[    0.642787] system 00:01: [mem 0xfed1c000-0xfed1ffff] has been reserved
[    0.642792] system 00:01: [mem 0xfed10000-0xfed13fff] has been reserved
[    0.642797] system 00:01: [mem 0xfed18000-0xfed18fff] has been reserved
[    0.642801] system 00:01: [mem 0xfed19000-0xfed19fff] has been reserved
[    0.642806] system 00:01: [mem 0xfed45000-0xfed4bfff] has been reserved
[    0.642812] system 00:01: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.642990] pnp 00:02: Plug and Play ACPI device, IDs PNP0b00 (active)
[    0.643047] pnp 00:03: Plug and Play ACPI device, IDs LEN0071 PNP0303 (active)
[    0.643101] pnp 00:04: Plug and Play ACPI device, IDs LEN002a PNP0f13 (active)
[    0.645267] system 00:05: [mem 0xfe102000-0xfe102fff] has been reserved
[    0.645273] system 00:05: [mem 0xfe104000-0xfe104fff] has been reserved
[    0.645279] system 00:05: [mem 0xfe106000-0xfe106fff] has been reserved
[    0.645283] system 00:05: [mem 0xfe108000-0xfe108fff] has been reserved
[    0.645289] system 00:05: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.646173] system 00:06: [mem 0xd0010000-0xd001ffff] has been reserved
[    0.646178] system 00:06: [mem 0xd0000000-0xd000ffff] has been reserved
[    0.646183] system 00:06: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.646438] pnp: PnP ACPI: found 7 devices
[    0.654921] pci 0000:00:1c.0: PCI bridge to [bus 02]
[    0.654942] pci 0000:00:1c.1: PCI bridge to [bus 06]
[    0.654952] pci 0000:00:1c.1:   bridge window [mem 0xf1000000-0xf10fffff]
[    0.654976] pci_bus 0000:00: resource 4 [io  0x0000-0x0cf7 window]
[    0.654980] pci_bus 0000:00: resource 5 [io  0x0d00-0xffff window]
[    0.654985] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff window]
[    0.654989] pci_bus 0000:00: resource 7 [mem 0x000c0000-0x000c3fff window]
[    0.654993] pci_bus 0000:00: resource 8 [mem 0x000c4000-0x000c7fff window]
[    0.654997] pci_bus 0000:00: resource 9 [mem 0x000c8000-0x000cbfff window]
[    0.655001] pci_bus 0000:00: resource 10 [mem 0x000cc000-0x000cffff window]
[    0.655005] pci_bus 0000:00: resource 11 [mem 0x000d0000-0x000d3fff window]
[    0.655009] pci_bus 0000:00: resource 12 [mem 0x000d4000-0x000d7fff window]
[    0.655013] pci_bus 0000:00: resource 13 [mem 0x000d8000-0x000dbfff window]
[    0.655017] pci_bus 0000:00: resource 14 [mem 0x000dc000-0x000dffff window]
[    0.655021] pci_bus 0000:00: resource 15 [mem 0xd0000000-0xfebfffff window]
[    0.655025] pci_bus 0000:00: resource 16 [mem 0xfed40000-0xfed4bfff window]
[    0.655030] pci_bus 0000:06: resource 1 [mem 0xf1000000-0xf10fffff]
[    0.655107] NET: Registered protocol family 2
[    0.655532] TCP established hash table entries: 65536 (order: 7, 524288 bytes)
[    0.655880] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
[    0.656140] TCP: Hash tables configured (established 65536 bind 65536)
[    0.656184] TCP: reno registered
[    0.656218] UDP hash table entries: 4096 (order: 5, 131072 bytes)
[    0.656285] UDP-Lite hash table entries: 4096 (order: 5, 131072 bytes)
[    0.656416] NET: Registered protocol family 1
[    0.656452] pci 0000:00:02.0: Video device with shadowed ROM
[    0.656825] PCI: CLS 64 bytes, default 64
[    0.656933] Trying to unpack rootfs image as initramfs...
[    1.557640] Freeing initrd memory: 19764K (ffff880035956000 - ffff880036ca3000)
[    1.557672] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[    1.557678] software IO TLB [mem 0xc03b2000-0xc43b2000] (64MB) mapped at [ffff8800c03b2000-ffff8800c43b1fff]
[    1.558213] microcode: CPU0 sig=0x306d4, pf=0x80, revision=0x1d
[    1.558228] microcode: CPU1 sig=0x306d4, pf=0x80, revision=0x1d
[    1.558249] microcode: CPU2 sig=0x306d4, pf=0x80, revision=0x1d
[    1.558267] microcode: CPU3 sig=0x306d4, pf=0x80, revision=0x1d
[    1.558372] microcode: Microcode Update Driver: v2.00 <tigran@aivazian.fsnet.co.uk>, Peter Oruba
[    1.558432] Scanning for low memory corruption every 60 seconds
[    1.559253] futex hash table entries: 2048 (order: 5, 131072 bytes)
[    1.559303] Initialise system trusted keyring
[    1.559363] audit: initializing netlink subsys (disabled)
[    1.559392] audit: type=2000 audit(1430185549.536:1): initialized
[    1.560088] HugeTLB registered 1 GB page size, pre-allocated 0 pages
[    1.560092] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[    1.563801] zpool: loaded
[    1.563807] zbud: loaded
[    1.564196] VFS: Disk quotas dquot_6.5.2
[    1.564279] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    1.565348] fuse init (API version 7.23)
[    1.565663] Key type big_key registered
[    1.566408] Key type asymmetric registered
[    1.566416] Asymmetric key parser 'x509' registered
[    1.566539] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[    1.566638] io scheduler noop registered
[    1.566647] io scheduler deadline registered (default)
[    1.566724] io scheduler cfq registered
[    1.567523] pcieport 0000:00:1c.0: Signaling PME through PCIe PME interrupt
[    1.567532] pcie_pme 0000:00:1c.0:pcie01: service driver pcie_pme loaded
[    1.567562] pcieport 0000:00:1c.1: Signaling PME through PCIe PME interrupt
[    1.567565] pci 0000:06:00.0: Signaling PME through PCIe PME interrupt
[    1.567572] pcie_pme 0000:00:1c.1:pcie01: service driver pcie_pme loaded
[    1.567590] pci_hotplug: PCI Hot Plug PCI Core version: 0.5
[    1.567630] pciehp: PCI Express Hot Plug Controller Driver version: 0.4
[    1.567710] efifb: probing for efifb
[    1.567763] efifb: framebuffer at 0xe0000000, mapped to 0xffffc90005080000, using 8128k, total 8128k
[    1.567767] efifb: mode is 1920x1080x32, linelength=7680, pages=1
[    1.567769] efifb: scrolling: redraw
[    1.567773] efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0
[    1.579497] Console: switching to colour frame buffer device 240x67
[    1.590989] fb0: EFI VGA frame buffer device
[    1.591010] intel_idle: MWAIT substates: 0x11142120
[    1.591014] intel_idle: v0.4 model 0x3D
[    1.591016] intel_idle: lapic_timer_reliable_states 0xffffffff
[    1.591962] ACPI: AC Adapter [AC] (off-line)
[    1.592249] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input0
[    1.592407] ACPI: Lid Switch [LID]
[    1.592503] input: Sleep Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input1
[    1.592512] ACPI: Sleep Button [SLPB]
[    1.592661] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input2
[    1.592667] ACPI: Power Button [PWRB]
[    1.595380] thermal LNXTHERM:00: registered as thermal_zone0
[    1.595387] ACPI: Thermal Zone [THM0] (28 C)
[    1.595490] GHES: HEST is not enabled!
[    1.595817] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled
[    1.599839] Linux agpgart interface v0.103
[    1.604518] brd: module loaded
[    1.604747] ACPI: Battery Slot [BAT0] (battery present)
[    1.606837] loop: module loaded
[    1.607330] libphy: Fixed MDIO Bus: probed
[    1.607341] tun: Universal TUN/TAP device driver, 1.6
[    1.607344] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    1.607451] PPP generic driver version 2.4.2
[    1.607814] xhci_hcd 0000:00:14.0: xHCI Host Controller
[    1.607827] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 1
[    1.607972] xhci_hcd 0000:00:14.0: hcc params 0x200077c1 hci version 0x100 quirks 0x00009810
[    1.607983] xhci_hcd 0000:00:14.0: cache line size of 64 is not supported
[    1.608130] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    1.608135] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.608139] usb usb1: Product: xHCI Host Controller
[    1.608142] usb usb1: Manufacturer: Linux 4.0.0-040000-generic xhci-hcd
[    1.608146] usb usb1: SerialNumber: 0000:00:14.0
[    1.608407] hub 1-0:1.0: USB hub found
[    1.608435] hub 1-0:1.0: 11 ports detected
[    1.611155] xhci_hcd 0000:00:14.0: xHCI Host Controller
[    1.611164] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 2
[    1.611234] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[    1.611238] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.611242] usb usb2: Product: xHCI Host Controller
[    1.611246] usb usb2: Manufacturer: Linux 4.0.0-040000-generic xhci-hcd
[    1.611249] usb usb2: SerialNumber: 0000:00:14.0
[    1.611504] hub 2-0:1.0: USB hub found
[    1.611521] hub 2-0:1.0: 4 ports detected
[    1.612465] usb: failed to peer usb2-port3 and usb1-port1 by location (usb2-port3:none) (usb1-port1:usb2-port1)
[    1.612470] usb usb2-port3: failed to peer to usb1-port1 (-16)
[    1.612472] usb: port power management may be unreliable
[    1.612767] usb: failed to peer usb2-port4 and usb1-port1 by location (usb2-port4:none) (usb1-port1:usb2-port1)
[    1.612771] usb usb2-port4: failed to peer to usb1-port1 (-16)
[    1.612916] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.612931] ehci-pci: EHCI PCI platform driver
[    1.612962] ehci-platform: EHCI generic platform driver
[    1.612991] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.613002] ohci-pci: OHCI PCI platform driver
[    1.613027] ohci-platform: OHCI generic platform driver
[    1.613059] uhci_hcd: USB Universal Host Controller Interface driver
[    1.613186] i8042: PNP: PS/2 Controller [PNP0303:KBD,PNP0f13:MOU] at 0x60,0x64 irq 1,12
[    1.614335] ACPI: Battery Slot [BAT1] (battery present)
[    1.616494] serio: i8042 KBD port at 0x60,0x64 irq 1
[    1.616504] serio: i8042 AUX port at 0x60,0x64 irq 12
[    1.616814] mousedev: PS/2 mouse device common for all mice
[    1.617159] rtc_cmos 00:02: RTC can wake from S4
[    1.617375] rtc_cmos 00:02: rtc core: registered rtc_cmos as rtc0
[    1.617427] rtc_cmos 00:02: alarms up to one month, y3k, 114 bytes nvram, hpet irqs
[    1.617474] i2c /dev entries driver
[    1.617616] device-mapper: uevent: version 1.0.3
[    1.617844] device-mapper: ioctl: 4.30.0-ioctl (2014-12-22) initialised: dm-devel@redhat.com
[    1.617878] Intel P-state driver initializing.
[    1.618141] ledtrig-cpu: registered to indicate activity on CPUs
[    1.618150] EFI Variables Facility v0.08 2004-May-17
[    1.619286] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input3
[    1.636440] Error parsing PCC subspaces from PCCT
[    1.636530] TCP: cubic registered
[    1.636638] NET: Registered protocol family 10
[    1.636806] NET: Registered protocol family 17
[    1.636817] Key type dns_resolver registered
[    1.637093] Loading compiled-in X.509 certificates
[    1.637750] Loaded X.509 cert 'Magrathea: Glacier signing key: 2250e17c72dd21aea33a8630f6c3f42a91e3ef64'
[    1.637763] registered taskstats version 1
[    1.639278] Key type trusted registered
[    1.642031] Key type encrypted registered
[    1.642037] AppArmor: AppArmor sha1 policy hashing enabled
[    1.642040] ima: No TPM chip found, activating TPM-bypass!
[    1.642054] evm: HMAC attrs: 0x1
[    1.642350]   Magic number: 11:430:762
[    1.642355] atkbd serio0: hash matches
[    1.642451] rtc_cmos 00:02: setting system clock to 2015-04-28 01:45:49 UTC (1430185549)
[    1.642501] BIOS EDD facility v0.16 2004-Jun-25, 0 devices found
[    1.642502] EDD information not available.
[    1.642603] PM: Hibernation image not present or could not be loaded.
[    1.642884] Freeing unused kernel memory: 1420K (ffffffff81d1e000 - ffffffff81e81000)
[    1.642886] Write protecting the kernel read-only data: 12288k
[    1.643045] Freeing unused kernel memory: 32K (ffff8800027f8000 - ffff880002800000)
[    1.643101] Freeing unused kernel memory: 180K (ffff880002bd3000 - ffff880002c00000)
[    1.658041] random: systemd-udevd urandom read with 25 bits of entropy available
[    1.669947] sdhci: Secure Digital Host Controller Interface driver
[    1.669950] sdhci: Copyright(c) Pierre Ossman
[    1.681371] ahci 0000:00:1f.2: version 3.0
[    1.696574] ahci 0000:00:1f.2: AHCI 0001.0300 32 slots 3 ports 6 Gbps 0x8 impl SATA mode
[    1.696582] ahci 0000:00:1f.2: flags: 64bit ncq pm led clo only pio slum part deso sadm sds apst 
[    1.697324] scsi host0: ahci
[    1.697524] scsi host1: ahci
[    1.697762] scsi host2: ahci
[    1.697912] scsi host3: ahci
[    1.697992] ata1: DUMMY
[    1.697994] ata2: DUMMY
[    1.697996] ata3: DUMMY
[    1.697999] ata4: SATA max UDMA/133 abar m2048@0xf1120000 port 0xf1120280 irq 43
[    1.812674] xhci_hcd 0000:00:14.0: Bad Slot ID 2
[    1.812679] xhci_hcd 0000:00:14.0: Could not allocate xHCI USB device data structures
[    1.812685] usb usb1-port1: couldn't allocate usb_device
[    1.924599] usb 1-3: new high-speed USB device number 2 using xhci_hcd
[    1.924858] usb 2-3: new SuperSpeed USB device number 2 using xhci_hcd
[    2.016572] ata4: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[    2.019759] ata4.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded
[    2.019766] ata4.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
[    2.019799] ata4.00: ACPI cmd ef/10:09:00:00:00:a0 (SET FEATURES) succeeded
[    2.020013] ata4.00: supports DRM functions and may not be fully accessible
[    2.020090] ata4.00: failed to get NCQ Send/Recv Log Emask 0x1
[    2.020094] ata4.00: ATA-9: SAMSUNG MZNTE256HMHP-000L7, EXT28L6Q, max UDMA/133
[    2.020097] ata4.00: 500118192 sectors, multi 1: LBA48 NCQ (depth 31/32), AA
[    2.021701] ata4.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded
[    2.021709] ata4.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
[    2.021742] ata4.00: ACPI cmd ef/10:09:00:00:00:a0 (SET FEATURES) succeeded
[    2.021958] ata4.00: supports DRM functions and may not be fully accessible
[    2.022051] ata4.00: failed to get NCQ Send/Recv Log Emask 0x1
[    2.022151] ata4.00: configured for UDMA/133
[    2.022394] scsi 3:0:0:0: Direct-Access     ATA      SAMSUNG MZNTE256 8L6Q PQ: 0 ANSI: 5
[    2.022877] sd 3:0:0:0: [sda] 500118192 512-byte logical blocks: (256 GB/238 GiB)
[    2.022948] sd 3:0:0:0: [sda] Write Protect is off
[    2.022953] sd 3:0:0:0: Attached scsi generic sg0 type 0
[    2.022957] sd 3:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    2.022974] sd 3:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    2.024279]  sda: sda1 sda2 sda3 sda4 sda5 sda6 sda7
[    2.025137] sd 3:0:0:0: [sda] Attached SCSI disk
[    2.052230] EXT4-fs (sda6): INFO: recovery required on readonly filesystem
[    2.052233] EXT4-fs (sda6): write access will be enabled during recovery
[    2.090605] random: nonblocking pool is initialized
[    2.141731] EXT4-fs (sda6): orphan cleanup on readonly fs
[    2.145233] EXT4-fs (sda6): 33 orphan inodes deleted
[    2.145235] EXT4-fs (sda6): recovery complete
[    2.164976] EXT4-fs (sda6): mounted filesystem with ordered data mode. Opts: (null)
[    2.179884] usb 2-3: New USB device found, idVendor=2109, idProduct=8110
[    2.179893] usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    2.179898] usb 2-3: Product: USB3.0 Hub             
[    2.179903] usb 2-3: Manufacturer: VIA Labs, Inc.         
[    2.180580] hub 2-3:1.0: USB hub found
[    2.180691] hub 2-3:1.0: 4 ports detected
[    2.215853] systemd[1]: RTC configured in localtime, applying delta of 60 minutes to system time.
[    2.226281] systemd[1]: Inserted module 'autofs4'
[    2.259702] systemd[1]: systemd 219 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
[    2.259891] systemd[1]: Detected architecture x86-64.
[    2.260058] systemd[1]: Set hostname to <helix>.
[    2.328939] systemd[1]: Created slice Root Slice.
[    2.328957] systemd[1]: Starting Root Slice.
[    2.329075] systemd[1]: Created slice System Slice.
[    2.329095] systemd[1]: Starting System Slice.
[    2.329200] systemd[1]: Created slice system-getty.slice.
[    2.329210] systemd[1]: Starting system-getty.slice.
[    2.329258] systemd[1]: Listening on Journal Socket (/dev/log).
[    2.329268] systemd[1]: Starting Journal Socket (/dev/log).
[    2.329300] systemd[1]: Listening on udev Kernel Socket.
[    2.329309] systemd[1]: Starting udev Kernel Socket.
[    2.329339] systemd[1]: Listening on Journal Audit Socket.
[    2.329347] systemd[1]: Starting Journal Audit Socket.
[    2.329373] systemd[1]: Listening on Delayed Shutdown Socket.
[    2.329381] systemd[1]: Starting Delayed Shutdown Socket.
[    2.329432] systemd[1]: Listening on Journal Socket.
[    2.329449] systemd[1]: Starting Journal Socket.
[    2.329892] systemd[1]: Mounting POSIX Message Queue File System...
[    2.330269] systemd[1]: Starting Setup Virtual Console...
[    2.330689] systemd[1]: Mounting Debug File System...
[    2.331173] systemd[1]: Started Read required files in advance.
[    2.331312] systemd[1]: Starting Read required files in advance...
[    2.331427] systemd[1]: Created slice system-systemd\x2dfsck.slice.
[    2.331439] systemd[1]: Starting system-systemd\x2dfsck.slice.
[    2.332687] systemd[1]: Starting Load Kernel Modules...
[    2.333225] systemd[1]: Starting Nameserver information manager...
[    2.333257] systemd[1]: Reached target Encrypted Volumes.
[    2.333267] systemd[1]: Starting Encrypted Volumes.
[    2.333789] systemd[1]: Starting Uncomplicated firewall...
[    2.333841] systemd[1]: Listening on udev Control Socket.
[    2.333851] systemd[1]: Starting udev Control Socket.
[    2.333916] systemd[1]: Created slice User and Session Slice.
[    2.333922] systemd[1]: Starting User and Session Slice.
[    2.333934] systemd[1]: Reached target Slices.
[    2.333940] systemd[1]: Starting Slices.
[    2.334315] systemd[1]: Mounting Huge Pages File System...
[    2.334360] systemd[1]: Listening on fsck to fsckd communication Socket.
[    2.334372] systemd[1]: Starting fsck to fsckd communication Socket.
[    2.334404] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    2.334411] systemd[1]: Starting /dev/initctl Compatibility Named Pipe.
[    2.334782] systemd[1]: Starting udev Coldplug all Devices...
[    2.335320] systemd[1]: Started Braille Device Support.
[    2.335389] systemd[1]: Starting Braille Device Support...
[    2.335659] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[    2.335673] systemd[1]: Starting Arbitrary Executable File Formats File System Automount Point.
[    2.337072] systemd[1]: Started Set Up Additional Binary Formats.
[    2.337135] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    2.337149] systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
[    2.337177] systemd[1]: Reached target Remote File Systems (Pre).
[    2.337187] systemd[1]: Starting Remote File Systems (Pre).
[    2.337651] systemd[1]: Starting Create list of required static device nodes for the current kernel...
[    2.338335] systemd[1]: Starting Increase datagram queue length...
[    2.339260] systemd[1]: Mounted POSIX Message Queue File System.
[    2.339294] systemd[1]: Mounted Debug File System.
[    2.339316] systemd[1]: Mounted Huge Pages File System.
[    2.339631] systemd[1]: Started Setup Virtual Console.
[    2.340490] systemd[1]: Started Uncomplicated firewall.
[    2.342195] systemd[1]: Started Increase datagram queue length.
[    2.343694] systemd[1]: Started Nameserver information manager.
[    2.348467] lp: driver loaded but no devices found
[    2.349418] systemd[1]: Started Create list of required static device nodes for the current kernel.
[    2.350681] ppdev: user-space parallel port driver
[    2.355253] systemd[1]: Started Load Kernel Modules.
[    2.359157] systemd[1]: Started udev Coldplug all Devices.
[    2.367795] systemd[1]: Starting udev Wait for Complete Device Initialization...
[    2.368170] systemd[1]: Mounting FUSE Control File System...
[    2.368225] systemd[1]: Mounted Configuration File System.
[    2.368620] systemd[1]: Starting Apply Kernel Variables...
[    2.369268] systemd[1]: Starting Create Static Device Nodes in /dev...
[    2.369328] systemd[1]: Listening on Syslog Socket.
[    2.369346] systemd[1]: Starting Syslog Socket.
[    2.369901] systemd[1]: Starting Journal Service...
[    2.371176] systemd[1]: Mounted FUSE Control File System.
[    2.373026] systemd[1]: Started Apply Kernel Variables.
[    2.377340] systemd[1]: Started Create Static Device Nodes in /dev.
[    2.378132] systemd[1]: Starting udev Kernel Device Manager...
[    2.395906] systemd[1]: Started Journal Service.
[    2.430910] pxa2xx-spi INT3430:00: cs1 >= max 1
[    2.430944] spi_master spi32766: failed to add SPI device VFSI6101:00 from ACPI
[    2.470026] wmi: Mapper loaded
[    2.472557] dw_dmac INTL9C60:00: DesignWare DMA Controller, 8 channels
[    2.478585] hidraw: raw HID events driver (C) Jiri Kosina
[    2.484345] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
[    2.491543] psmouse serio1: synaptics: queried max coordinates: x [..5712], y [..4780]
[    2.507470] [drm] Initialized drm 1.1.0 20060810
[    2.511403] Non-volatile memory driver v1.3
[    2.528031] psmouse serio1: synaptics: queried min coordinates: x [1232..], y [1074..]
[    2.528614] thinkpad_acpi: ThinkPad ACPI Extras v0.25
[    2.528617] thinkpad_acpi: http://ibm-acpi.sf.net/
[    2.528619] thinkpad_acpi: ThinkPad BIOS N17ET74W (1.74 ), EC unknown
[    2.528621] thinkpad_acpi: Lenovo ThinkPad Helix 2nd, model 20CG001BUK
[    2.529135] thinkpad_acpi: Unsupported brightness interface, please contact ibm-acpi-devel@lists.sourceforge.net
[    2.529206] thinkpad_acpi: radio switch found; radios are enabled
[    2.529309] thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver
[    2.529310] thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...
[    2.530510] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
[    2.531094] thinkpad_acpi: rfkill switch tpacpi_wwan_sw: radio is unblocked
[    2.533354] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input6
[    2.534324] cfg80211: Calling CRDA to update world regulatory domain
[    2.551075] i915 0000:00:02.0: enabling device (0006 -> 0007)
[    2.551544] [drm] Memory usable by graphics device = 4096M
[    2.551548] checking generic (e0000000 7f0000) vs hw (e0000000 10000000)
[    2.551550] fb: switching to inteldrmfb from EFI VGA
[    2.551570] Console: switching to colour dummy device 80x25
[    2.551676] [drm] Replacing VGA console driver
[    2.556406] tsc: Refined TSC clocksource calibration: 1396.766 MHz
[    2.572679] Intel(R) Wireless WiFi driver for Linux
[    2.572682] Copyright(c) 2003- 2014 Intel Corporation
[    2.578691] iwlwifi 0000:06:00.0: loaded firmware version 25.15.12.0 op_mode iwlmvm
[    2.583345] AVX2 version of gcm_enc/dec engaged.
[    2.583348] AES CTR mode by8 optimization enabled
[    2.584545] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    2.584548] [drm] Driver supports precise vblank timestamp query.
[    2.584658] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+mem,decodes=io+mem:owns=mem
[    2.594630] psmouse serio1: synaptics: Touchpad model: 1, fw: 8.1, id: 0x1e2b1, caps: 0xf002a3/0x943300/0x12e800, board id: 3075, fw id: 2560
[    2.594639] psmouse serio1: synaptics: serio: Synaptics pass-through port at isa0060/serio1/input0
[    2.612021] iwlwifi 0000:06:00.0: Detected Intel(R) Dual Band Wireless AC 7265, REV=0x210
[    2.612077] iwlwifi 0000:06:00.0: L1 Disabled - LTR Enabled
[    2.612238] iwlwifi 0000:06:00.0: L1 Disabled - LTR Enabled
[    2.636580] input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio1/input/input5
[    2.641939] kvm: disabled by bios
[    2.643001] ACPI: Video Device [VID] (multi-head: yes  rom: no  post: no)
[    2.643374] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input7
[    2.646089] snd_hda_intel 0000:00:03.0: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    2.646098] [drm] Initialized i915 1.6.0 20150130 for 0000:00:02.0 on minor 0
[    2.646391] fbcon: inteldrmfb (fb0) is primary device
[    2.658268] intel_rapl: Found RAPL domain package
[    2.658271] intel_rapl: Found RAPL domain core
[    2.658272] intel_rapl: Found RAPL domain uncore
[    2.658274] intel_rapl: Found RAPL domain dram
[    2.704985] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs'
[    2.716120] acer_wmi: Acer Laptop ACPI-WMI Extras
[    2.718299] acer_wmi: Brightness must be controlled by acpi video driver
[    2.719094] input: Acer BMA150 accelerometer as /devices/virtual/input/input9
[    2.724433] sst-acpi INT3438:00: DesignWare DMA Controller, 8 channels
[    2.738093] hid-sensor-hub 0018:2047:0855.0003: item 0 1 0 8 parsing failed
[    2.738101] hid-sensor-hub 0018:2047:0855.0003: parse failed
[    2.738109] hid-sensor-hub: probe of 0018:2047:0855.0003 failed with error -22
[    2.745730] haswell-pcm-audio haswell-pcm-audio: FW loaded, mailbox readback FW info: type 01, - version: 00.00, build 77, source commit id: 876ac6906f31a43b6772b23c7c983ce9dcb18a19
[    2.798547] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> System Pin mapping ok
[    2.798624] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload0 Pin mapping ok
[    2.798701] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Offload1 Pin mapping ok
[    2.798819] broadwell-audio broadwell-audio: snd-soc-dummy-dai <-> Loopback Pin mapping ok
[    2.798852] broadwell-audio broadwell-audio: rt286-aif1 <-> snd-soc-dummy-dai mapping ok
[    2.808765] cfg80211: World regulatory domain updated:
[    2.808767] cfg80211:  DFS Master region: unset
[    2.808767] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[    2.808768] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    2.808769] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    2.808769] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm), (N/A)
[    2.808770] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    2.808771] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm), (N/A)
[    2.811013] input: broadwell-rt286 Headset as /devices/pci0000:00/INT3438:00/broadwell-audio/sound/card1/input10
[    3.556440] Switched to clocksource tsc
[    3.917412] Console: switching to colour frame buffer device 240x67
[    3.921377] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[    3.921379] i915 0000:00:02.0: registered panic notifier
[    3.936013] Adding 8285180k swap on /dev/sda7.  Priority:-1 extents:1 across:8285180k SSFS
[    3.947192] input: HDA Intel HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.0/sound/card0/input11
[    3.947243] input: HDA Intel HDMI HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.0/sound/card0/input12
[    3.947285] input: HDA Intel HDMI HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:03.0/sound/card0/input13
[    6.916800] psmouse serio2: trackpoint: IBM TrackPoint firmware: 0x0e, buttons: 3/3
[    7.126943] input: TPPS/2 IBM TrackPoint as /devices/platform/i8042/serio1/serio2/input/input8
[    7.161892] usb 1-3: New USB device found, idVendor=2109, idProduct=2811
[    7.161898] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    7.161901] usb 1-3: Product: USB2.0 Hub             
[    7.161903] usb 1-3: Manufacturer: VIA Labs, Inc.         
[    7.162555] hub 1-3:1.0: USB hub found
[    7.162950] hub 1-3:1.0: 4 ports detected
[    7.164282] usb: failed to peer 1-3-port3 and 2-3-port2 by location (1-3-port3:none) (2-3-port2:1-3-port2)
[    7.164287] usb 1-3-port3: failed to peer to 2-3-port2 (-16)
[    7.164395] usb: failed to peer 1-3-port4 and 2-3-port2 by location (1-3-port4:none) (2-3-port2:1-3-port2)
[    7.164398] usb 1-3-port4: failed to peer to 2-3-port2 (-16)
[    7.335737] usb 1-4: new high-speed USB device number 3 using xhci_hcd
[    7.528266] usb 1-4: New USB device found, idVendor=1199, idProduct=a001
[    7.528271] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    7.528276] usb 1-4: Product: Sierra Wireless EM7345 4G LTE
[    7.528278] usb 1-4: Manufacturer: Sierra Wireless Inc.
[    7.528280] usb 1-4: SerialNumber: 013937004490544
[    7.604006] usb 1-3.3: new high-speed USB device number 4 using xhci_hcd
[    7.712226] usb 1-3.3: New USB device found, idVendor=0bda, idProduct=4000
[    7.712232] usb 1-3.3: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[    7.712234] usb 1-3.3: Product: USB Audio
[    7.712237] usb 1-3.3: Manufacturer: Generic
[    7.712238] usb 1-3.3: SerialNumber: 200901010001
[    7.815657] usb 1-7: new full-speed USB device number 5 using xhci_hcd
[    7.944486] usb 1-7: No LPM exit latency info found, disabling LPM.
[    7.945758] usb 1-7: New USB device found, idVendor=8087, idProduct=0a2a
[    7.945764] usb 1-7: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    8.387561] usb 1-8: new high-speed USB device number 6 using xhci_hcd
[    8.587406] usb 1-8: New USB device found, idVendor=04ca, idProduct=7047
[    8.587412] usb 1-8: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[    8.587415] usb 1-8: Product: Integrated Camera
[    8.587417] usb 1-8: Manufacturer: 8SSC20F26976L1GZ4C900CJ
[    8.587419] usb 1-8: SerialNumber: 200901010001
[    8.599952] usb 1-3.4: new full-speed USB device number 7 using xhci_hcd
[    8.605872] media: Linux media interface: v0.10
[    8.607690] cdc_acm 1-4:1.2: ttyACM0: USB ACM device
[    8.608568] usbcore: registered new interface driver cdc_acm
[    8.608571] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    8.609407] Bluetooth: Core ver 2.20
[    8.609424] NET: Registered protocol family 31
[    8.609425] Bluetooth: HCI device and connection manager initialized
[    8.609429] Bluetooth: HCI socket layer initialized
[    8.609432] Bluetooth: L2CAP socket layer initialized
[    8.609442] Bluetooth: SCO socket layer initialized
[    8.611795] Linux video capture interface: v2.00
[    8.612092] usbcore: registered new interface driver cdc_ncm
[    8.612403] usbcore: registered new interface driver btusb
[    8.614148] usbcore: registered new interface driver cdc_wdm
[    8.631549] Bluetooth: hci0: read Intel version: 370810011003110e00
[    8.631792] Bluetooth: hci0: Intel Bluetooth firmware file: intel/ibt-hw-37.8.10-fw-1.10.3.11.e.bseq
[    8.634413] uvcvideo: Found UVC 1.00 device Integrated Camera (04ca:7047)
[    8.634546] cdc_mbim 1-4:1.0: cdc-wdm0: USB WDM device
[    8.634781] cdc_mbim 1-4:1.0 wwan0: register 'cdc_mbim' at usb-0000:00:14.0-4, CDC MBIM, 12:88:37:d2:3a:76
[    8.634814] usbcore: registered new interface driver cdc_mbim
[    8.636948] uvcvideo: Failed to register entity for entity 6
[    8.636950] uvcvideo: Failed to register entites (-22).
[    8.637015] input: Integrated Camera as /devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/input/input14
[    8.637097] usbcore: registered new interface driver uvcvideo
[    8.637099] USB Video Class driver (1.1.1)
[    8.709489] usb 1-3.4: New USB device found, idVendor=17ef, idProduct=6067
[    8.709495] usb 1-3.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    8.709498] usb 1-3.4: Product: ITE Device(8595)
[    8.709501] usb 1-3.4: Manufacturer: ITE Tech. Inc.
[    8.725980] hid (null): usage index exceeded
[    8.729513] Bluetooth: hci0: Intel Bluetooth firmware patch completed and activated
[    9.144891] usbcore: registered new interface driver usbhid
[    9.144898] usbhid: USB HID core driver
[    9.149860] usbcore: registered new interface driver snd-usb-audio
[    9.150009] hid-generic 0003:17EF:6067.0004: usage index exceeded
[    9.150016] hid-generic 0003:17EF:6067.0004: item 0 2 2 2 parsing failed
[    9.150041] hid-generic: probe of 0003:17EF:6067.0004 failed with error -22
[    9.150365] input: ITE Tech. Inc. ITE Device(8595) as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3.4/1-3.4:1.1/0003:17EF:6067.0005/input/input15
[    9.203810] hid-generic 0003:17EF:6067.0005: input,hiddev0,hidraw0: USB HID v1.10 Device [ITE Tech. Inc. ITE Device(8595)] on usb-0000:00:14.0-3.4/input1
[    9.244668] EXT4-fs (sda6): re-mounted. Opts: errors=remount-ro
[    9.259481] systemd-journald[258]: Received request to flush runtime journal from PID 1
[    9.324895] audit: type=1400 audit(1430181957.178:2): apparmor="STATUS" operation="profile_load" name="/usr/lib/lightdm/lightdm-guest-session" pid=509 comm="apparmor_parser"
[    9.324903] audit: type=1400 audit(1430181957.178:3): apparmor="STATUS" operation="profile_load" name="chromium" pid=509 comm="apparmor_parser"
[    9.326706] audit: type=1400 audit(1430181957.178:4): apparmor="STATUS" operation="profile_load" name="/sbin/dhclient" pid=509 comm="apparmor_parser"
[    9.326712] audit: type=1400 audit(1430181957.178:5): apparmor="STATUS" operation="profile_load" name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=509 comm="apparmor_parser"
[    9.326716] audit: type=1400 audit(1430181957.178:6): apparmor="STATUS" operation="profile_load" name="/usr/lib/NetworkManager/nm-dhcp-helper" pid=509 comm="apparmor_parser"
[    9.326721] audit: type=1400 audit(1430181957.178:7): apparmor="STATUS" operation="profile_load" name="/usr/lib/connman/scripts/dhclient-script" pid=509 comm="apparmor_parser"
[    9.334852] audit: type=1400 audit(1430181957.186:8): apparmor="STATUS" operation="profile_load" name="/usr/bin/evince" pid=509 comm="apparmor_parser"
[    9.334867] audit: type=1400 audit(1430181957.186:9): apparmor="STATUS" operation="profile_load" name="sanitized_helper" pid=509 comm="apparmor_parser"
[    9.334870] audit: type=1400 audit(1430181957.186:10): apparmor="STATUS" operation="profile_load" name="/usr/bin/evince-previewer" pid=509 comm="apparmor_parser"
[    9.334873] audit: type=1400 audit(1430181957.186:11): apparmor="STATUS" operation="profile_load" name="sanitized_helper" pid=509 comm="apparmor_parser"
[    9.417385] cgroup: new mount options do not match the existing superblock, will be ignored
[    9.457994] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    9.457998] Bluetooth: BNEP filters: protocol multicast
[    9.458003] Bluetooth: BNEP socket layer initialized
[    9.475271] Bluetooth: RFCOMM TTY layer initialized
[    9.475279] Bluetooth: RFCOMM socket layer initialized
[    9.475286] Bluetooth: RFCOMM ver 1.11
[    9.560045] iwlwifi 0000:06:00.0: L1 Disabled - LTR Enabled
[    9.560236] iwlwifi 0000:06:00.0: L1 Disabled - LTR Enabled
[   12.404808] haswell-pcm-audio haswell-pcm-audio: FW loaded, mailbox readback FW info: type 01, - version: 00.00, build 77, source commit id: 876ac6906f31a43b6772b23c7c983ce9dcb18a19
[   13.010181] wlan0: authenticate with 2e:b0:5d:c7:6c:39
[   13.013244] wlan0: send auth to 2e:b0:5d:c7:6c:39 (try 1/3)
[   13.016939] wlan0: authenticated
[   13.018745] wlan0: associate with 2e:b0:5d:c7:6c:39 (try 1/3)
[   13.024319] wlan0: RX AssocResp from 2e:b0:5d:c7:6c:39 (capab=0x401 status=0 aid=6)
[   13.025278] wlan0: associated
[   82.078896] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[   82.078901] Bluetooth: HIDP socket layer initialized
[   82.105864] hid-generic 0005:046D:B319.0006: unknown main item tag 0x0
[   82.210908] input: Logitech K810 as /devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/bluetooth/hci0/hci0:256/0005:046D:B319.0006/input/input16
[   82.211099] hid-generic 0005:046D:B319.0006: input,hidraw1: BLUETOOTH HID v12.02 Keyboard [Logitech K810] on 34:13:e8:26:58:21

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: keyboard not working with Thinkpad Helix (2nd gen) (also stylus)
  2015-04-28  0:56   ` jono
@ 2015-04-28 15:28     ` Benjamin Tissoires
  2015-04-28 17:58       ` keyboard not working with Thinkpad Helix (2nd gen) John Reid
       [not found]       ` <553FE975.90905@gmail.com>
  0 siblings, 2 replies; 9+ messages in thread
From: Benjamin Tissoires @ 2015-04-28 15:28 UTC (permalink / raw)
  To: jono; +Cc: linux-input, Jason Gerecke

HI Jonathan,

On Mon, Apr 27, 2015 at 8:56 PM, jono <lejono@gmail.com> wrote:
> Thanks, and apologies for the multiple reports. I've attached the
> output of dmesg using the latest kernel. Other relevant files can be
> found in the links in my original message, and at
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1448479
> Also this link may be of interest:
> http://www.thinkwiki.org/wiki/Installing_Kubuntu_15.04_on_a_Thinkpad_Helix_2nd_generation

Thanks. Your dmesg and these links are useful information. The last
link says that the keyboard is a USB one, and that the report
descriptor is broken. This should not take too long to fix if that is
the case.

Can you run as root:
#> for i in /sys/kernel/debug/hid/* ; do echo $i ; \
     cat $i/rdesc ; done > /tmp/rdesc.txt

It will log in the file /tmp/rdesc.txt all of the report descriptors
available on your computer, and we should be able to figure out what
is broken here if you send it to us.

For the Wacom part, the links above suggest that there is also a
touchscreen plugged through i2c-hid, but I do not see one in your
logs. This may be the root of the problem if i2c-hid is unable to
handle both the touchscreen and the Wacom digitizer.

Can you also provide the dmesg while appending to the kernel boot line
"i2c-hid.debug=1".

We should see a little bit more what is happening.

Cheers,
Benjamin

> Best,
> Jonathan
>
> On Mon, Apr 27, 2015 at 7:34 PM, Benjamin Tissoires
> <benjamin.tissoires@gmail.com> wrote:
>> Hi Jono,
>>
>> On Sun, Apr 26, 2015 at 2:16 PM, jono <lejono@gmail.com> wrote:
>>> The keyboard that this machine comes works fine under grub and windows
>>> but not linux.  The keyboard is a Lenovo Thinkpad Helix Ultrabook Pro
>>> which also has a touchpad, extra battery, usb port etc. The touchpad,
>>> battery, ports are all detected, but the keyboard doesn't work. A usb
>>> and bluetooth keyboard work fine.
>>>
>>> I currently have kernel 4.0.0- 040000- generic. It has been reported
>>> in a number of other forums, e.g.
>>>
>>> https:/ /bugs.launchpad .net/ubuntu/ +source/ xorg/+bug/ 1437051
>>> https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-Helix-keyboard-not-detected-in-Linux/td-p/2051477
>>>
>>> which all contain useful information and log files. I'm currently
>>> running on a fresh install of Ubuntu 15.04 with their "upstream
>>> kernel", but the problem exists in previous Ubuntu and kernel
>>> versions.
>>>
>>> "cat /proc/bus/input/devices" lists:
>>>
>>> I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
>>> N: Name="AT Translated Set 2 keyboard"
>>> P: Phys=isa0060/serio0/input0
>>> S: Sysfs=/devices/platform/i8042/serio0/input/input3
>>> U: Uniq=
>>> H: Handlers=sysrq kbd event3
>>> B: PROP=0
>>> B: EV=120013
>>> B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
>>> B: MSC=10
>>> B: LED=7
>>>
>>> which appears to be it, The Xorg log lists
>>>
>>> [     4.815] (II) config/udev: Adding input device AT Translated Set 2
>>> keyboard (/dev/input/event3)
>>> [     4.815] (**) AT Translated Set 2 keyboard: Applying InputClass
>>> "evdev keyboard catchall"
>>> [     4.815] (II) Using input driver 'evdev' for 'AT Translated Set 2 keyboard'
>>> [     4.815] (**) AT Translated Set 2 keyboard: always reports core events
>>> [     4.815] (**) evdev: AT Translated Set 2 keyboard: Device:
>>> "/dev/input/event3"
>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Vendor 0x1 Product 0x1
>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Found keys
>>> [     4.815] (II) evdev: AT Translated Set 2 keyboard: Configuring as keyboard
>>> [     4.815] (**) Option "config_info"
>>> "udev:/sys/devices/platform/i8042/serio0/input/input3/event3"
>>> [     4.815] (II) XINPUT: Adding extended input device "AT Translated
>>> Set 2 keyboard" (type: KEYBOARD, id 14)
>>> [     4.815] (**) Option "xkb_rules" "evdev"
>>> [     4.815] (**) Option "xkb_model" "pc105"
>>> [     4.815] (**) Option "xkb_layout" "us"
>>>
>>>
>>>
>>> As an aside, the stylus is properly not recognized in this kernel, but
>>> works fine in previous kernels with "cat /proc/bus/input/devices"
>>> listing
>>>
>>> I: Bus=0018 Vendor=056a Product=0114 Version=0100
>>> N: Name="WCOM0009:00 056A:0114"
>>> P: Phys=
>>> S: Sysfs=/devices/pci0000:00/INT3433:00/i2c-8/i2c-WCOM0009:00/0018:056A:0114.0004/input/input9
>>> U: Uniq=
>>> H: Handlers=mouse2 event8
>>> B: PROP=0
>>> B: EV=1f
>>> B: KEY=c03 30001 0 0 0 0
>>> B: REL=3
>>> B: ABS=1000003
>>> B: MSC=10
>>>
>>> in kernel 3.12 for example, but the device is not listed in 3.16 or
>>> later (although possibly it is detected in earlier kernels).
>>>
>>
>> Hmm, you are here reporting 2 bugs at the same time, which will make
>> things difficult to track.
>>
>> Anyway, for being able to understand both problems, we will need the
>> dmesg output of the closest to upstream kernel you have.
>>
>> For the Wacom ISD bits, I  am adding Jason to the thread. It looks
>> like your device is an I2C over HID one, so I guess it did not worked
>> before v3.11 or v3.12. In v3.16 I changed the way the Wacoms are
>> handled and now they are all handled through HID. But this apparently
>> broke your device, and I'll try to figure out what happened. We
>> normally handle unknown Wacoms properly, but there must be something
>> odd in your case that should hopefully show up in the dmesg output.
>>
>> Cheers,
>> Benjamin

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: keyboard not working with Thinkpad Helix (2nd gen)
  2015-04-28 15:28     ` Benjamin Tissoires
@ 2015-04-28 17:58       ` John Reid
  2015-04-28 18:46         ` John Reid
       [not found]       ` <553FE975.90905@gmail.com>
  1 sibling, 1 reply; 9+ messages in thread
From: John Reid @ 2015-04-28 17:58 UTC (permalink / raw)
  To: Benjamin Tissoires, jono; +Cc: linux-input, Jason Gerecke

[-- Attachment #1: Type: text/plain, Size: 7763 bytes --]

Hi Benjamin,

Thanks for getting back to us so promptly, and for the hopeful news.
Please find attached attached the output for the debugfs/hid entries on
my system. I've also updated the thinkwiki page with the output from
every method of getting the HID descriptor I can think of.

I'll attach the output from dmesg with i2c-hid.debug in a seperate post
once my kernel recompiles - I had CONFIG_DEBUG_DRIVER=y swamping the logs...

Cheers,
John

BTW, I finally managed to get some events from the keyboard (keypress
events for a,s,d,f on interface 0, still can't get anything on interface
1) :

$ sudo usbhid-dump -a1:8 -i0 -e all
001:008:000:DESCRIPTOR         1430239015.142435
 06 85 FF 09 95 A1 01 85 5A 09 01 15 00 26 FF 00
 75 08 95 10 B1 00 C0 05 01 09 06 A1 01 85 01 75
 01 95 08 05 07 19 E0 29 E7 15 00 25 01 81 02 95
 01 75 08 81 03 95 05 75 01 05 08 19 01 29 05 91
 02 95 01 75 03 91 03 95 06 75 08 15 00 26 FF 00
 05 07 19 00 2A FF 00 81 00 C0 05 0C 09 01 A1 01
 85 03 19 00 2A 3C 02 15 00 26 3C 02 75 10 95 01
 81 00 C0 05 01 09 0C A1 01 85 02 15 00 25 01 09
 C6 95 01 75 01 81 06 75 07 81 03 C0 05 88 09 01
 A1 01 85 04 19 00 2A FF FF 15 00 26 FF FF 75 08
 95 02 81 02 C0 05 01 09 80 A1 01 85 05 19 81 29
 83 15 00 25 01 95 08 75 01 81 02 C0

Starting dumping interrupt transfer stream
with 1 minute timeout.

001:008:000:STREAM             1430239018.043838
 01 00 00 04 00 00 00 00 00

001:008:000:STREAM             1430239018.095839
 01 00 00 00 00 00 00 00 00

001:008:000:STREAM             1430239019.163851
 01 00 00 16 00 00 00 00 00

001:008:000:STREAM             1430239019.211845
 01 00 00 00 00 00 00 00 00

001:008:000:STREAM             1430239021.495878
 01 00 00 07 00 00 00 00 00

001:008:000:STREAM             1430239021.551867
 01 00 00 00 00 00 00 00 00

001:008:000:STREAM             1430239022.091878
 01 00 00 09 00 00 00 00 00

001:008:000:STREAM             1430239022.143873
 01 00 00 00 00 00 00 00 00



On 29/04/15 01:28, Benjamin Tissoires wrote:
> HI Jonathan,
> 
> On Mon, Apr 27, 2015 at 8:56 PM, jono <lejono@gmail.com> wrote:
>> Thanks, and apologies for the multiple reports. I've attached the
>> output of dmesg using the latest kernel. Other relevant files can be
>> found in the links in my original message, and at
>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1448479
>> Also this link may be of interest:
>> http://www.thinkwiki.org/wiki/Installing_Kubuntu_15.04_on_a_Thinkpad_Helix_2nd_generation
> 
> Thanks. Your dmesg and these links are useful information. The last
> link says that the keyboard is a USB one, and that the report
> descriptor is broken. This should not take too long to fix if that is
> the case.
> 
> Can you run as root:
> #> for i in /sys/kernel/debug/hid/* ; do echo $i ; \
>      cat $i/rdesc ; done > /tmp/rdesc.txt
> 
> It will log in the file /tmp/rdesc.txt all of the report descriptors
> available on your computer, and we should be able to figure out what
> is broken here if you send it to us.
> 
> For the Wacom part, the links above suggest that there is also a
> touchscreen plugged through i2c-hid, but I do not see one in your
> logs. This may be the root of the problem if i2c-hid is unable to
> handle both the touchscreen and the Wacom digitizer.
> 
> Can you also provide the dmesg while appending to the kernel boot line
> "i2c-hid.debug=1".
> 
> We should see a little bit more what is happening.
> 
> Cheers,
> Benjamin
> 
>> Best,
>> Jonathan
>>
>> On Mon, Apr 27, 2015 at 7:34 PM, Benjamin Tissoires
>> <benjamin.tissoires@gmail.com> wrote:
>>> Hi Jono,
>>>
>>> On Sun, Apr 26, 2015 at 2:16 PM, jono <lejono@gmail.com> wrote:
>>>> The keyboard that this machine comes works fine under grub and windows
>>>> but not linux.  The keyboard is a Lenovo Thinkpad Helix Ultrabook Pro
>>>> which also has a touchpad, extra battery, usb port etc. The touchpad,
>>>> battery, ports are all detected, but the keyboard doesn't work. A usb
>>>> and bluetooth keyboard work fine.
>>>>
>>>> I currently have kernel 4.0.0- 040000- generic. It has been reported
>>>> in a number of other forums, e.g.
>>>>
>>>> https:/ /bugs.launchpad .net/ubuntu/ +source/ xorg/+bug/ 1437051
>>>> https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-Helix-keyboard-not-detected-in-Linux/td-p/2051477
>>>>
>>>> which all contain useful information and log files. I'm currently
>>>> running on a fresh install of Ubuntu 15.04 with their "upstream
>>>> kernel", but the problem exists in previous Ubuntu and kernel
>>>> versions.
>>>>
>>>> "cat /proc/bus/input/devices" lists:
>>>>
>>>> I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
>>>> N: Name="AT Translated Set 2 keyboard"
>>>> P: Phys=isa0060/serio0/input0
>>>> S: Sysfs=/devices/platform/i8042/serio0/input/input3
>>>> U: Uniq=
>>>> H: Handlers=sysrq kbd event3
>>>> B: PROP=0
>>>> B: EV=120013
>>>> B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
>>>> B: MSC=10
>>>> B: LED=7
>>>>
>>>> which appears to be it, The Xorg log lists
>>>>
>>>> [     4.815] (II) config/udev: Adding input device AT Translated Set 2
>>>> keyboard (/dev/input/event3)
>>>> [     4.815] (**) AT Translated Set 2 keyboard: Applying InputClass
>>>> "evdev keyboard catchall"
>>>> [     4.815] (II) Using input driver 'evdev' for 'AT Translated Set 2 keyboard'
>>>> [     4.815] (**) AT Translated Set 2 keyboard: always reports core events
>>>> [     4.815] (**) evdev: AT Translated Set 2 keyboard: Device:
>>>> "/dev/input/event3"
>>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Vendor 0x1 Product 0x1
>>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Found keys
>>>> [     4.815] (II) evdev: AT Translated Set 2 keyboard: Configuring as keyboard
>>>> [     4.815] (**) Option "config_info"
>>>> "udev:/sys/devices/platform/i8042/serio0/input/input3/event3"
>>>> [     4.815] (II) XINPUT: Adding extended input device "AT Translated
>>>> Set 2 keyboard" (type: KEYBOARD, id 14)
>>>> [     4.815] (**) Option "xkb_rules" "evdev"
>>>> [     4.815] (**) Option "xkb_model" "pc105"
>>>> [     4.815] (**) Option "xkb_layout" "us"
>>>>
>>>>
>>>>
>>>> As an aside, the stylus is properly not recognized in this kernel, but
>>>> works fine in previous kernels with "cat /proc/bus/input/devices"
>>>> listing
>>>>
>>>> I: Bus=0018 Vendor=056a Product=0114 Version=0100
>>>> N: Name="WCOM0009:00 056A:0114"
>>>> P: Phys=
>>>> S: Sysfs=/devices/pci0000:00/INT3433:00/i2c-8/i2c-WCOM0009:00/0018:056A:0114.0004/input/input9
>>>> U: Uniq=
>>>> H: Handlers=mouse2 event8
>>>> B: PROP=0
>>>> B: EV=1f
>>>> B: KEY=c03 30001 0 0 0 0
>>>> B: REL=3
>>>> B: ABS=1000003
>>>> B: MSC=10
>>>>
>>>> in kernel 3.12 for example, but the device is not listed in 3.16 or
>>>> later (although possibly it is detected in earlier kernels).
>>>>
>>>
>>> Hmm, you are here reporting 2 bugs at the same time, which will make
>>> things difficult to track.
>>>
>>> Anyway, for being able to understand both problems, we will need the
>>> dmesg output of the closest to upstream kernel you have.
>>>
>>> For the Wacom ISD bits, I  am adding Jason to the thread. It looks
>>> like your device is an I2C over HID one, so I guess it did not worked
>>> before v3.11 or v3.12. In v3.16 I changed the way the Wacoms are
>>> handled and now they are all handled through HID. But this apparently
>>> broke your device, and I'll try to figure out what happened. We
>>> normally handle unknown Wacoms properly, but there must be something
>>> odd in your case that should hopefully show up in the dmesg output.
>>>
>>> Cheers,
>>> Benjamin
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

[-- Attachment #2: rdesc.txt --]
[-- Type: text/plain, Size: 24465 bytes --]

/sys/kernel/debug/hid/0003:17EF:6067.0001
06 85 ff 09 95 a1 01 85 5a 09 01 15 00 26 ff 00 75 08 95 10 b1 00 c0 05 01 09 06 a1 01 85 01 75 01 95 08 05 07 19 e0 29 e7 15 00 25 01 81 02 95 01 75 08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95 01 75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07 19 00 2a ff 00 81 00 c0 05 0c 09 01 a1 01 85 03 19 00 2a 3c 02 15 00 26 3c 02 75 10 95 01 81 00 c0 05 01 09 0c a1 01 85 02 15 00 25 01 09 c6 95 01 75 01 81 06 75 07 81 03 c0 05 88 09 01 a1 01 85 04 19 00 2a ff ff 15 00 26 ff ff 75 08 95 02 81 02 c0 05 01 09 80 a1 01 85 05 19 81 29 83 15 00 25 01 95 08 75 01 81 02 c0 


/sys/kernel/debug/hid/0003:17EF:6067.0002
06 a0 ff 09 01 a1 01 85 02 09 01 a1 00 05 09 19 01 29 05 15 00 25 01 75 01 95 05 81 02 95 03 81 01 75 08 95 03 81 03 05 0c 0a 38 02 95 01 81 06 c0 c0 05 0c 09 01 a1 01 85 03 15 00 25 01 75 01 95 10 0a 2e 02 09 e2 09 ea 09 e9 09 01 09 70 09 6f 09 01 09 01 09 01 09 01 09 01 09 01 09 01 09 01 0a 2d 02 81 02 75 01 95 08 81 03 c0 05 01 09 0c a1 01 85 08 15 00 25 01 09 c6 75 01 95 01 81 06 75 07 81 03 c0 06 a0 ff 09 01 a1 01 85 09 09 01 75 08 95 02 91 82 09 02 75 08 95 02 81 82 c0 

  INPUT(2)[INPUT]
    Field(0)
      Physical(ffa0.0001)
      Application(ffa0.0001)
      Usage(5)
        Button.0001
        Button.0002
        Button.0003
        Button.0004
        Button.0005
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(1)
      Report Count(5)
      Report Offset(0)
      Flags( Variable Absolute )
    Field(1)
      Physical(ffa0.0001)
      Application(ffa0.0001)
      Usage(1)
        Consumer.HorizontalWheel
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(8)
      Report Count(1)
      Report Offset(32)
      Flags( Variable Relative )
  INPUT(3)[INPUT]
    Field(0)
      Application(Consumer.0001)
      Usage(16)
        Consumer.022e
        Consumer.00e2
        Consumer.00ea
        Consumer.00e9
        Consumer.0001
        Consumer.0070
        Consumer.006f
        Consumer.0001
        Consumer.0001
        Consumer.0001
        Consumer.0001
        Consumer.0001
        Consumer.0001
        Consumer.0001
        Consumer.0001
        Consumer.022d
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(1)
      Report Count(16)
      Report Offset(0)
      Flags( Variable Absolute )
  INPUT(8)[INPUT]
    Field(0)
      Application(GenericDesktop.000c)
      Usage(1)
        GenericDesktop.00c6
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(1)
      Report Count(1)
      Report Offset(0)
      Flags( Variable Relative )
  INPUT(9)[INPUT]
    Field(0)
      Application(ffa0.0001)
      Usage(2)
        ffa0.0002
        ffa0.0002
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(8)
      Report Count(2)
      Report Offset(0)
      Flags( Variable Absolute Volatile )
  OUTPUT(9)[OUTPUT]
    Field(0)
      Application(ffa0.0001)
      Usage(2)
        ffa0.0001
        ffa0.0001
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(8)
      Report Count(2)
      Report Offset(0)
      Flags( Variable Absolute Volatile )

Button.0001 ---> Key.Btn0
Button.0002 ---> Key.Btn1
Button.0003 ---> Key.Btn2
Button.0004 ---> Key.Btn3
Button.0005 ---> Key.Btn4
Consumer.HorizontalWheel ---> Relative.HWheel
Consumer.022e ---> Key.?
Consumer.00e2 ---> Key.Mute
Consumer.00ea ---> Key.VolumeDown
Consumer.00e9 ---> Key.VolumeUp
Consumer.0001 ---> Key.Unknown
Consumer.0070 ---> Key.BrightnessDown
Consumer.006f ---> Key.BrightnessUp
Consumer.0001 ---> Key.Unknown
Consumer.0001 ---> Key.Unknown
Consumer.0001 ---> Key.Unknown
Consumer.0001 ---> Key.Unknown
Consumer.0001 ---> Key.Unknown
Consumer.0001 ---> Key.Unknown
Consumer.0001 ---> Key.Unknown
Consumer.0001 ---> Key.Unknown
Consumer.022d ---> Key.?
GenericDesktop.00c6 ---> Key.Btn5
ffa0.0002 ---> Absolute.Misc
ffa0.0002 ---> Absolute.?
ffa0.0001 ---> Sync.Report
ffa0.0001 ---> Sync.Report
/sys/kernel/debug/hid/0018:03EB:8A29.0003
06 00 ff 09 01 a1 01 15 00 26 ff 00 75 08 85 06 95 11 09 01 81 02 09 01 91 02 c0 05 0d 09 04 a1 01 85 01 09 22 a1 02 09 42 15 00 25 01 75 01 95 01 81 02 95 01 81 03 95 06 81 03 75 08 09 51 95 01 81 02 05 01 26 ff 0f 75 10 55 0e 65 11 09 30 35 00 46 00 0a 95 01 81 02 09 00 81 03 46 a0 05 26 ff 0f 09 31 81 02 09 00 81 03 05 0d 26 ff 00 46 ff 00 95 01 09 00 81 03 09 00 81 03 c0 05 0d 27 ff ff 00 00 75 10 95 01 09 56 81 02 09 54 25 10 95 01 75 08 81 02 85 02 09 55 95 01 25 0a b1 02 06 00 ff 09 c5 85 05 15 00 26 ff 00 75 08 96 00 01 b1 02 c0 

  INPUT(6)[INPUT]
    Field(0)
      Application(ff00.0001)
      Usage(17)
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
      Logical Minimum(0)
      Logical Maximum(255)
      Report Size(8)
      Report Count(17)
      Report Offset(0)
      Flags( Variable Absolute )
  INPUT(1)[INPUT]
    Field(0)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        Digitizers.TipSwitch
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(1)
      Report Count(1)
      Report Offset(0)
      Flags( Variable Absolute )
    Field(1)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        Digitizers.ContactID
      Logical Minimum(0)
      Logical Maximum(1)
      Report Size(8)
      Report Count(1)
      Report Offset(8)
      Flags( Variable Absolute )
    Field(2)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        GenericDesktop.X
      Logical Minimum(0)
      Logical Maximum(4095)
      Physical Minimum(0)
      Physical Maximum(2560)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(16)
      Report Count(1)
      Report Offset(16)
      Flags( Variable Absolute )
    Field(3)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        GenericDesktop.0000
      Logical Minimum(0)
      Logical Maximum(4095)
      Physical Minimum(0)
      Physical Maximum(2560)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(16)
      Report Count(1)
      Report Offset(32)
      Flags( Constant Variable Absolute )
    Field(4)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        GenericDesktop.Y
      Logical Minimum(0)
      Logical Maximum(4095)
      Physical Minimum(0)
      Physical Maximum(1440)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(16)
      Report Count(1)
      Report Offset(48)
      Flags( Variable Absolute )
    Field(5)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        GenericDesktop.0000
      Logical Minimum(0)
      Logical Maximum(4095)
      Physical Minimum(0)
      Physical Maximum(1440)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(16)
      Report Count(1)
      Report Offset(64)
      Flags( Constant Variable Absolute )
    Field(6)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        Digitizers.0000
      Logical Minimum(0)
      Logical Maximum(255)
      Physical Minimum(0)
      Physical Maximum(255)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(16)
      Report Count(1)
      Report Offset(80)
      Flags( Constant Variable Absolute )
    Field(7)
      Logical(Digitizers.Finger)
      Application(Digitizers.TouchScreen)
      Usage(1)
        Digitizers.0000
      Logical Minimum(0)
      Logical Maximum(255)
      Physical Minimum(0)
      Physical Maximum(255)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(16)
      Report Count(1)
      Report Offset(96)
      Flags( Constant Variable Absolute )
    Field(8)
      Application(Digitizers.TouchScreen)
      Usage(1)
        Digitizers.0056
      Logical Minimum(0)
      Logical Maximum(65535)
      Physical Minimum(0)
      Physical Maximum(255)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(16)
      Report Count(1)
      Report Offset(112)
      Flags( Variable Absolute )
    Field(9)
      Application(Digitizers.TouchScreen)
      Usage(1)
        Digitizers.ContactCount
      Logical Minimum(0)
      Logical Maximum(16)
      Physical Minimum(0)
      Physical Maximum(255)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(8)
      Report Count(1)
      Report Offset(128)
      Flags( Variable Absolute )
  OUTPUT(6)[OUTPUT]
    Field(0)
      Application(ff00.0001)
      Usage(17)
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
        ff00.0001
      Logical Minimum(0)
      Logical Maximum(255)
      Report Size(8)
      Report Count(17)
      Report Offset(0)
      Flags( Variable Absolute )
  FEATURE(2)[FEATURE]
    Field(0)
      Application(Digitizers.TouchScreen)
      Usage(1)
        Digitizers.ContactMaximumNumber
      Logical Minimum(0)
      Logical Maximum(10)
      Physical Minimum(0)
      Physical Maximum(255)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(8)
      Report Count(1)
      Report Offset(0)
      Flags( Variable Absolute )
  FEATURE(5)[FEATURE]
    Field(0)
      Application(Digitizers.TouchScreen)
      Usage(256)
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
        ff00.00c5
      Logical Minimum(0)
      Logical Maximum(255)
      Physical Minimum(0)
      Physical Maximum(255)
      Unit Exponent(-2)
      Unit(SI Linear : Centimeter)
      Report Size(8)
      Report Count(256)
      Report Offset(0)
      Flags( Variable Absolute )

ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
Digitizers.TipSwitch ---> Key.Touch
Digitizers.ContactID ---> Sync.Report
GenericDesktop.X ---> Absolute.MTPositionX
GenericDesktop.0000 ---> Sync.Report
GenericDesktop.Y ---> Absolute.MTPositionY
GenericDesktop.0000 ---> Sync.Report
Digitizers.0000 ---> Sync.Report
Digitizers.0000 ---> Sync.Report
Digitizers.0056 ---> Absolute.Misc
Digitizers.ContactCount ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
ff00.0001 ---> Sync.Report
/sys/kernel/debug/hid/0018:056A:0114.0004
05 01 09 02 a1 01 85 01 09 01 a1 00 05 09 19 01 29 02 15 00 25 01 95 02 75 01 81 02 95 01 75 06 81 03 05 01 09 30 09 31 15 81 25 7f 75 08 95 02 81 06 c0 c0 05 0d 09 02 a1 01 85 02 09 20 a1 00 09 42 09 44 09 45 09 3c 09 00 09 32 15 00 25 01 75 01 95 06 81 02 95 02 81 03 05 01 09 30 26 48 65 46 48 65 65 11 55 0d 75 10 95 01 81 02 09 31 26 50 39 46 50 39 81 02 45 00 65 00 55 00 05 0d 09 30 26 ff 03 81 02 c0 09 00 75 08 26 ff 00 b1 12 85 03 09 00 95 10 b1 12 85 04 09 00 b1 02 85 05 09 00 95 04 b1 02 85 06 09 00 95 24 b1 02 c0 06 00 ff 09 00 a1 01 85 09 05 0d 09 20 a1 00 09 00 26 ff 00 75 08 95 07 81 02 c0 09 00 95 03 b1 12 c0 06 00 ff 09 02 a1 01 85 07 09 00 95 49 b1 02 85 08 09 00 95 03 81 02 09 00 b1 02 c0 


/sys/kernel/debug/hid/0018:2047:0855.0005
05 20 09 01 a1 01 85 01 05 20 09 73 a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 0a 52 14 15 00 26 ff ff 75 10 95 01 55 0e b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a 53 04 16 01 80 26 ff 7f 75 10 95 01 55 0e 81 02 0a 54 04 16 01 80 26 ff 7f 75 10 95 01 55 0e 81 02 0a 55 04 16 01 80 26 ff 7f 75 10 95 01 55 0e 81 02 0a 44 05 15 00 25 ff 75 08 95 01 55 00 81 02 c0 85 02 05 20 09 76 a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 0a 56 14 15 00 26 ff ff 75 10 95 01 55 0e b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a 57 04 17 ff ff 01 80 27 00 00 ff 7f 75 20 95 01 55 0e 81 02 0a 58 04 17 ff ff 01 80 27 00 00 ff 7f 75 20 95 01 55 0e 81 02 0a 59 04 17 ff ff 01 80 27 00 00 ff 7f 75 20 95 01 55 0e 81 02 0a 44 05 15 00 25 ff 75 08 95 01 55 00 81 02 c0 85 03 05 20 09 83 a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 0a 71 14 15 00 26 ff ff 75 10 95 01 55 0e b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a 75 04 16 00 00 26 ff ff 75 10 95 01 55 0e 81 02 0a 85 04 17 40 81 08 00 27 c0 7e 07 00 75 20 95 01 55 0f 81 02 0a 86 04 17 40 81 08 00 27 c0 7e 07 00 75 20 95 01 55 0f 81 02 0a 87 04 17 40 81 08 00 27 c0 7e 07 00 75 20 95 01 55 0f 81 02 0a 88 04 15 00 25 02 75 08 95 01 a1 02 0a e0 08 0a e1 08 0a e2 08 81 00 c0 c0 85 04 05 20 09 86 a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 0a 7e 14 15 00 26 ff ff 75 10 95 01 55 0e b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a 7f 04 16 01 80 26 ff 7f 75 10 95 01 55 0e 81 02 0a 80 04 16 01 80 26 ff 7f 75 10 95 01 55 0e 81 02 0a 81 04 16 00 00 26 68 01 75 10 95 01 55 0e 81 02 0a 88 04 15 00 25 02 75 08 95 01 a1 02 0a e0 08 0a e1 08 0a e2 08 81 00 c0 c0 85 05 05 20 09 8a a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 0a 83 14 17 00 00 00 80 27 ff ff ff 7f 75 20 95 01 55 08 b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a 83 04 17 00 00 00 80 27 ff ff ff 7f 75 20 95 04 55 08 81 02 0a 88 04 15 00 25 02 75 08 95 01 a1 02 0a e0 08 0a e1 08 0a e2 08 81 00 c0 c0 85 06 05 20 09 41 a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 0a d1 e4 15 00 26 10 27 75 10 95 01 55 0e b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a d1 04 17 00 00 00 00 27 ff ff ff 7f 75 20 95 01 55 0f 81 02 c0 85 07 05 20 09 12 a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a b4 04 15 00 25 01 75 08 95 01 81 02 c0 85 08 05 20 09 e1 a1 00 05 20 0a 09 03 15 00 25 02 75 08 95 01 a1 02 0a 30 08 0a 31 08 0a 32 08 b1 00 c0 0a 16 03 15 00 25 05 75 08 95 01 a1 02 0a 40 08 0a 41 08 0a 42 08 0a 43 08 0a 44 08 0a 45 08 b1 00 c0 0a 19 03 15 00 25 05 75 08 95 01 a1 02 0a 50 08 0a 51 08 0a 52 08 0a 53 08 0a 54 08 0a 55 08 b1 00 c0 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 b1 00 c0 0a 0e 03 15 00 27 ff ff ff ff 75 20 95 01 55 00 b1 02 0a 44 15 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 0d b1 02 0a 45 15 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 0d b1 02 0a 46 15 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 0d b1 02 05 20 0a 01 02 15 00 25 06 75 08 95 01 a1 02 0a 00 08 0a 01 08 0a 02 08 0a 03 08 0a 04 08 0a 05 08 0a 06 08 81 00 c0 0a 02 02 15 00 25 05 75 08 95 01 a1 02 0a 10 08 0a 11 08 0a 12 08 0a 13 08 0a 14 08 0a 15 08 81 00 c0 0a 44 05 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 00 81 02 0a 45 05 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 00 81 02 0a 46 05 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 00 81 02 0a 47 05 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 00 81 02 0a 48 05 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 00 81 02 0a 49 05 17 01 00 00 80 27 ff ff ff 7f 75 20 95 01 55 00 81 02 c0 c0 



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: keyboard not working with Thinkpad Helix (2nd gen)
  2015-04-28 17:58       ` keyboard not working with Thinkpad Helix (2nd gen) John Reid
@ 2015-04-28 18:46         ` John Reid
  2015-04-28 20:40           ` Benjamin Tissoires
  0 siblings, 1 reply; 9+ messages in thread
From: John Reid @ 2015-04-28 18:46 UTC (permalink / raw)
  To: Benjamin Tissoires, jono; +Cc: linux-input

Hi all,

To me the following page in the keyboard interface 0 descriptor (from
"sudo usbhid-dump -a1:8 -i0| grep -v : | xxd -r -p | hidrd-convert -o")
seems suspicious. I'm guessing Logical Maximum should not be -1 if
Logical Minimum is 0, and a Usage Maximum of FFFFh might break
include/linux/hid.h #define HID_MAX_USAGES    12288

Usage Page (88h),                   ; 88h, reserved
Usage (01h),
Collection (Application),
    Report ID (4),
    Usage Minimum (00h),
    Usage Maximum (FFFFh),
    Logical Minimum (0),
    Logical Maximum (-1),
    Report Size (8),
    Report Count (2),
    Input (Variable),
End Collection,

Cheers,
John

On 29/04/15 03:58, John Reid wrote:
> Hi Benjamin,
> 
> Thanks for getting back to us so promptly, and for the hopeful news.
> Please find attached attached the output for the debugfs/hid entries on
> my system. I've also updated the thinkwiki page with the output from
> every method of getting the HID descriptor I can think of.
> 
> I'll attach the output from dmesg with i2c-hid.debug in a seperate post
> once my kernel recompiles - I had CONFIG_DEBUG_DRIVER=y swamping the logs...
> 
> Cheers,
> John
> 
> BTW, I finally managed to get some events from the keyboard (keypress
> events for a,s,d,f on interface 0, still can't get anything on interface
> 1) :
> 
> $ sudo usbhid-dump -a1:8 -i0 -e all
> 001:008:000:DESCRIPTOR         1430239015.142435
>  06 85 FF 09 95 A1 01 85 5A 09 01 15 00 26 FF 00
>  75 08 95 10 B1 00 C0 05 01 09 06 A1 01 85 01 75
>  01 95 08 05 07 19 E0 29 E7 15 00 25 01 81 02 95
>  01 75 08 81 03 95 05 75 01 05 08 19 01 29 05 91
>  02 95 01 75 03 91 03 95 06 75 08 15 00 26 FF 00
>  05 07 19 00 2A FF 00 81 00 C0 05 0C 09 01 A1 01
>  85 03 19 00 2A 3C 02 15 00 26 3C 02 75 10 95 01
>  81 00 C0 05 01 09 0C A1 01 85 02 15 00 25 01 09
>  C6 95 01 75 01 81 06 75 07 81 03 C0 05 88 09 01
>  A1 01 85 04 19 00 2A FF FF 15 00 26 FF FF 75 08
>  95 02 81 02 C0 05 01 09 80 A1 01 85 05 19 81 29
>  83 15 00 25 01 95 08 75 01 81 02 C0
> 
> Starting dumping interrupt transfer stream
> with 1 minute timeout.
> 
> 001:008:000:STREAM             1430239018.043838
>  01 00 00 04 00 00 00 00 00
> 
> 001:008:000:STREAM             1430239018.095839
>  01 00 00 00 00 00 00 00 00
> 
> 001:008:000:STREAM             1430239019.163851
>  01 00 00 16 00 00 00 00 00
> 
> 001:008:000:STREAM             1430239019.211845
>  01 00 00 00 00 00 00 00 00
> 
> 001:008:000:STREAM             1430239021.495878
>  01 00 00 07 00 00 00 00 00
> 
> 001:008:000:STREAM             1430239021.551867
>  01 00 00 00 00 00 00 00 00
> 
> 001:008:000:STREAM             1430239022.091878
>  01 00 00 09 00 00 00 00 00
> 
> 001:008:000:STREAM             1430239022.143873
>  01 00 00 00 00 00 00 00 00
> 
> 
> 
> On 29/04/15 01:28, Benjamin Tissoires wrote:
>> HI Jonathan,
>>
>> On Mon, Apr 27, 2015 at 8:56 PM, jono <lejono@gmail.com> wrote:
>>> Thanks, and apologies for the multiple reports. I've attached the
>>> output of dmesg using the latest kernel. Other relevant files can be
>>> found in the links in my original message, and at
>>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1448479
>>> Also this link may be of interest:
>>> http://www.thinkwiki.org/wiki/Installing_Kubuntu_15.04_on_a_Thinkpad_Helix_2nd_generation
>>
>> Thanks. Your dmesg and these links are useful information. The last
>> link says that the keyboard is a USB one, and that the report
>> descriptor is broken. This should not take too long to fix if that is
>> the case.
>>
>> Can you run as root:
>> #> for i in /sys/kernel/debug/hid/* ; do echo $i ; \
>>      cat $i/rdesc ; done > /tmp/rdesc.txt
>>
>> It will log in the file /tmp/rdesc.txt all of the report descriptors
>> available on your computer, and we should be able to figure out what
>> is broken here if you send it to us.
>>
>> For the Wacom part, the links above suggest that there is also a
>> touchscreen plugged through i2c-hid, but I do not see one in your
>> logs. This may be the root of the problem if i2c-hid is unable to
>> handle both the touchscreen and the Wacom digitizer.
>>
>> Can you also provide the dmesg while appending to the kernel boot line
>> "i2c-hid.debug=1".
>>
>> We should see a little bit more what is happening.
>>
>> Cheers,
>> Benjamin
>>
>>> Best,
>>> Jonathan
>>>
>>> On Mon, Apr 27, 2015 at 7:34 PM, Benjamin Tissoires
>>> <benjamin.tissoires@gmail.com> wrote:
>>>> Hi Jono,
>>>>
>>>> On Sun, Apr 26, 2015 at 2:16 PM, jono <lejono@gmail.com> wrote:
>>>>> The keyboard that this machine comes works fine under grub and windows
>>>>> but not linux.  The keyboard is a Lenovo Thinkpad Helix Ultrabook Pro
>>>>> which also has a touchpad, extra battery, usb port etc. The touchpad,
>>>>> battery, ports are all detected, but the keyboard doesn't work. A usb
>>>>> and bluetooth keyboard work fine.
>>>>>
>>>>> I currently have kernel 4.0.0- 040000- generic. It has been reported
>>>>> in a number of other forums, e.g.
>>>>>
>>>>> https:/ /bugs.launchpad .net/ubuntu/ +source/ xorg/+bug/ 1437051
>>>>> https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-Helix-keyboard-not-detected-in-Linux/td-p/2051477
>>>>>
>>>>> which all contain useful information and log files. I'm currently
>>>>> running on a fresh install of Ubuntu 15.04 with their "upstream
>>>>> kernel", but the problem exists in previous Ubuntu and kernel
>>>>> versions.
>>>>>
>>>>> "cat /proc/bus/input/devices" lists:
>>>>>
>>>>> I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
>>>>> N: Name="AT Translated Set 2 keyboard"
>>>>> P: Phys=isa0060/serio0/input0
>>>>> S: Sysfs=/devices/platform/i8042/serio0/input/input3
>>>>> U: Uniq=
>>>>> H: Handlers=sysrq kbd event3
>>>>> B: PROP=0
>>>>> B: EV=120013
>>>>> B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
>>>>> B: MSC=10
>>>>> B: LED=7
>>>>>
>>>>> which appears to be it, The Xorg log lists
>>>>>
>>>>> [     4.815] (II) config/udev: Adding input device AT Translated Set 2
>>>>> keyboard (/dev/input/event3)
>>>>> [     4.815] (**) AT Translated Set 2 keyboard: Applying InputClass
>>>>> "evdev keyboard catchall"
>>>>> [     4.815] (II) Using input driver 'evdev' for 'AT Translated Set 2 keyboard'
>>>>> [     4.815] (**) AT Translated Set 2 keyboard: always reports core events
>>>>> [     4.815] (**) evdev: AT Translated Set 2 keyboard: Device:
>>>>> "/dev/input/event3"
>>>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Vendor 0x1 Product 0x1
>>>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Found keys
>>>>> [     4.815] (II) evdev: AT Translated Set 2 keyboard: Configuring as keyboard
>>>>> [     4.815] (**) Option "config_info"
>>>>> "udev:/sys/devices/platform/i8042/serio0/input/input3/event3"
>>>>> [     4.815] (II) XINPUT: Adding extended input device "AT Translated
>>>>> Set 2 keyboard" (type: KEYBOARD, id 14)
>>>>> [     4.815] (**) Option "xkb_rules" "evdev"
>>>>> [     4.815] (**) Option "xkb_model" "pc105"
>>>>> [     4.815] (**) Option "xkb_layout" "us"
>>>>>
>>>>>
>>>>>
>>>>> As an aside, the stylus is properly not recognized in this kernel, but
>>>>> works fine in previous kernels with "cat /proc/bus/input/devices"
>>>>> listing
>>>>>
>>>>> I: Bus=0018 Vendor=056a Product=0114 Version=0100
>>>>> N: Name="WCOM0009:00 056A:0114"
>>>>> P: Phys=
>>>>> S: Sysfs=/devices/pci0000:00/INT3433:00/i2c-8/i2c-WCOM0009:00/0018:056A:0114.0004/input/input9
>>>>> U: Uniq=
>>>>> H: Handlers=mouse2 event8
>>>>> B: PROP=0
>>>>> B: EV=1f
>>>>> B: KEY=c03 30001 0 0 0 0
>>>>> B: REL=3
>>>>> B: ABS=1000003
>>>>> B: MSC=10
>>>>>
>>>>> in kernel 3.12 for example, but the device is not listed in 3.16 or
>>>>> later (although possibly it is detected in earlier kernels).
>>>>>
>>>>
>>>> Hmm, you are here reporting 2 bugs at the same time, which will make
>>>> things difficult to track.
>>>>
>>>> Anyway, for being able to understand both problems, we will need the
>>>> dmesg output of the closest to upstream kernel you have.
>>>>
>>>> For the Wacom ISD bits, I  am adding Jason to the thread. It looks
>>>> like your device is an I2C over HID one, so I guess it did not worked
>>>> before v3.11 or v3.12. In v3.16 I changed the way the Wacoms are
>>>> handled and now they are all handled through HID. But this apparently
>>>> broke your device, and I'll try to figure out what happened. We
>>>> normally handle unknown Wacoms properly, but there must be something
>>>> odd in your case that should hopefully show up in the dmesg output.
>>>>
>>>> Cheers,
>>>> Benjamin
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-input" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: keyboard not working with Thinkpad Helix (2nd gen)
  2015-04-28 18:46         ` John Reid
@ 2015-04-28 20:40           ` Benjamin Tissoires
  2015-04-30 20:42             ` jono
  0 siblings, 1 reply; 9+ messages in thread
From: Benjamin Tissoires @ 2015-04-28 20:40 UTC (permalink / raw)
  To: John Reid, jono; +Cc: linux-input

Hi,

On 04/28/2015 02:46 PM, John Reid wrote:
> Hi all,
> 
> To me the following page in the keyboard interface 0 descriptor (from
> "sudo usbhid-dump -a1:8 -i0| grep -v : | xxd -r -p | hidrd-convert -o")
> seems suspicious. I'm guessing Logical Maximum should not be -1 if
> Logical Minimum is 0, and a Usage Maximum of FFFFh might break
> include/linux/hid.h #define HID_MAX_USAGES    12288

Yep, that's what prevents the hid subsystem to handle the keyboard
(though the logical min has nothing to do here).
Below is a patch that fixes the report descriptor and will hopefully
make the keyboard working.
Can you apply it on top of Jiri's tree? (or you might want to cherry
pick https://git.kernel.org/cgit/linux/kernel/git/jikos/hid.git/commit/?h=for-4.2/lenovo&id=d92189ebbdcd0eb180317d8cd6d46c57ac9a3dc0
on top of a clean v4.0)

And then, tell us if hid-lenovo handles the keyboard?

> 
> Usage Page (88h),                   ; 88h, reserved
> Usage (01h),
> Collection (Application),
>      Report ID (4),
>      Usage Minimum (00h),
>      Usage Maximum (FFFFh),
>      Logical Minimum (0),
>      Logical Maximum (-1),
>      Report Size (8),
>      Report Count (2),
>      Input (Variable),
> End Collection,
> 
> Cheers,
> John
> 

FWIW, I'll track down the other problems in the other threads.

Cheers,
Benjamin


>From abc7922e4972910a31eb54c673bc3b261fd919f7 Mon Sep 17 00:00:00 2001
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Date: Tue, 28 Apr 2015 16:31:56 -0400
Subject: [PATCH] HID: lenovo: add support for Lenovo ThinkPad Keyboard Pro
 unit

This dock is used with the Thinkpad Helix 2 but suffers from an error
in the report descriptor where an usage max is 65535.

Add a report fixup for it and make the keyboard working.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
---
 drivers/hid/hid-core.c   |  1 +
 drivers/hid/hid-ids.h    |  1 +
 drivers/hid/hid-lenovo.c | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 34 insertions(+)

diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index 722a925..c2baf8c 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -1851,6 +1851,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
 	{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPKBD) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CUSBKBD) },
 	{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CBTKBD) },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPPRODOCK) },
 #endif
 	{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_S510_RECEIVER) },
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index b24caf8..e5b86e0 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -585,6 +585,7 @@
 #define USB_DEVICE_ID_LENOVO_TPKBD	0x6009
 #define USB_DEVICE_ID_LENOVO_CUSBKBD	0x6047
 #define USB_DEVICE_ID_LENOVO_CBTKBD	0x6048
+#define USB_DEVICE_ID_LENOVO_TPPRODOCK	0x6067
 
 #define USB_VENDOR_ID_LG		0x1fd2
 #define USB_DEVICE_ID_LG_MULTITOUCH	0x0064
diff --git a/drivers/hid/hid-lenovo.c b/drivers/hid/hid-lenovo.c
index 78608d6..c6c81ff 100644
--- a/drivers/hid/hid-lenovo.c
+++ b/drivers/hid/hid-lenovo.c
@@ -43,6 +43,36 @@ struct lenovo_drvdata_cptkbd {
 
 #define map_key_clear(c) hid_map_usage_clear(hi, usage, bit, max, EV_KEY, (c))
 
+static const __u8 lenovo_pro_dock_need_fixup_collection[] = {
+	0x05, 0x88,		/* Usage Page (Vendor Usage Page 0x88)	*/
+	0x09, 0x01,		/* Usage (Vendor Usage 0x01)		*/
+	0xa1, 0x01,		/* Collection (Application)		*/
+	0x85, 0x04,		/*  Report ID (4)			*/
+	0x19, 0x00,		/*  Usage Minimum (0)			*/
+	0x2a, 0xff, 0xff,	/*  Usage Maximum (65535)		*/
+};
+
+static __u8 *lenovo_report_fixup(struct hid_device *hdev, __u8 *rdesc,
+		unsigned int *rsize)
+{
+	switch (hdev->product) {
+	case USB_DEVICE_ID_LENOVO_TPPRODOCK:
+		/* the fixups that need to be done:
+		 *   - get a reasonable usage max for the vendor collection
+		 *     0x8801 from the report ID 4
+		 */
+		pr_err("%s %14ph %s:%d\n", __func__, &rdesc[140], __FILE__, __LINE__);
+		if (*rsize >= 153 &&
+		    memcmp(&rdesc[140], lenovo_pro_dock_need_fixup_collection,
+			  sizeof(lenovo_pro_dock_need_fixup_collection)) == 0) {
+			rdesc[151] = 0x01;
+			rdesc[152] = 0x00;
+		}
+		break;
+	}
+	return rdesc;
+}
+
 static int lenovo_input_mapping_tpkbd(struct hid_device *hdev,
 		struct hid_input *hi, struct hid_field *field,
 		struct hid_usage *usage, unsigned long **bit, int *max)
@@ -784,6 +814,7 @@ static const struct hid_device_id lenovo_devices[] = {
 	{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPKBD) },
 	{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CUSBKBD) },
 	{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CBTKBD) },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPPRODOCK) },
 	{ }
 };
 
@@ -797,6 +828,7 @@ static struct hid_driver lenovo_driver = {
 	.probe = lenovo_probe,
 	.remove = lenovo_remove,
 	.raw_event = lenovo_raw_event,
+	.report_fixup = lenovo_report_fixup,
 };
 module_hid_driver(lenovo_driver);
 
-- 
2.3.5

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: Thinkpad Helix (2nd gen) Wacom stylus not working (was Re: keyboard not working with Thinkpad Helix (2nd gen) (also stylus))
       [not found]       ` <553FE975.90905@gmail.com>
@ 2015-04-28 21:20         ` Benjamin Tissoires
  0 siblings, 0 replies; 9+ messages in thread
From: Benjamin Tissoires @ 2015-04-28 21:20 UTC (permalink / raw)
  To: John Reid; +Cc: jono, linux-input, Jason Gerecke

On Tue, Apr 28, 2015 at 4:11 PM, John Reid <owlman.lists@gmail.com> wrote:
> Hi all,
>
> I've attached the dmesg output from my system with kernel boot option
> i2c-hid.debug=1
>
> $ uname -a
> Linux espace 4.0.0-040000-generic #201504121935+debug1.1 SMP Wed Apr 29
> 03:37:46 AEST 2015 x86_64 x86_64 x86_64 GNU/Linux

Thanks both of you for the traces.

When I "plug" the report descriptor on my system, it gets correctly
handled by wacom.ko. Can you make sure that you have the wacom module
enabled in your tree?
Everything looks fine on the i2c-hid side, so wacom.ko should get
loaded when the device is ready while it is not the case.

>
> On my system the i2c-ATML1000:00 touchscreen appears to work without any
> problems. I'm not sure how to test the Wacom digitiser... I can't see

I guess if the cursor follows the stylus, you are good :)


Regarding the ATMEL digitizer, your two Helix 2 are slightly
different. You both have a stylus from Wacom (pid 0x0114) while John
has an Atmel digitizer and Jonathan a Wacom one.
That means that when the Wacom driver will be loaded, Jonathan will
get both touch and stylus input, and kernel palm rejection, while John
will need to force the digitizer to go through xf86-input-wacom to get
palm rejection.

> anything too obvious in the logs. Been too busy trying to sort out the
> keyboard, and thought I'd get around to testing the digitiser once I've
> set up libinput and the xf86-input-libinput driver.

libinput and xf86-libinput won't work right now for the wacom stylus
part. The tablet support is still in a WIP branch as we need to polish
it a little bit more. You need to use xf86-input-wacom which should
get loaded automatically as soon as the wacom device shows up in the
dmesg.

>
> Hope this helps :)
>

Yep :)

One last thing. On the Thinkwiki, there is a mention that the
Synaptics buttons are behaving like scroll events. Which kernel was
used to make this test?
A recent kernel (maybe 4.1-rc1, I can't recall if this was in 4.0
final or backported to it) should reroute the trackstick buttons to
the trackstick and they should forward left, middle, right from the
trackstick node, not the touchpad node.

You can test that by running evemu-record (package evemu. in most
distributions).

If this is not working as expected with a 4.1-rc1 kernel, then I will
need to fix that too :(

Cheers,
Benjamin

>
> On 29/04/15 01:28, Benjamin Tissoires wrote:
>> HI Jonathan,
>>
>> On Mon, Apr 27, 2015 at 8:56 PM, jono <lejono@gmail.com> wrote:
>>> Thanks, and apologies for the multiple reports. I've attached the
>>> output of dmesg using the latest kernel. Other relevant files can be
>>> found in the links in my original message, and at
>>> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1448479
>>> Also this link may be of interest:
>>> http://www.thinkwiki.org/wiki/Installing_Kubuntu_15.04_on_a_Thinkpad_Helix_2nd_generation
>>
>> Thanks. Your dmesg and these links are useful information. The last
>> link says that the keyboard is a USB one, and that the report
>> descriptor is broken. This should not take too long to fix if that is
>> the case.
>>
>> Can you run as root:
>> #> for i in /sys/kernel/debug/hid/* ; do echo $i ; \
>>      cat $i/rdesc ; done > /tmp/rdesc.txt
>>
>> It will log in the file /tmp/rdesc.txt all of the report descriptors
>> available on your computer, and we should be able to figure out what
>> is broken here if you send it to us.
>>
>> For the Wacom part, the links above suggest that there is also a
>> touchscreen plugged through i2c-hid, but I do not see one in your
>> logs. This may be the root of the problem if i2c-hid is unable to
>> handle both the touchscreen and the Wacom digitizer.
>>
>> Can you also provide the dmesg while appending to the kernel boot line
>> "i2c-hid.debug=1".
>>
>> We should see a little bit more what is happening.
>>
>> Cheers,
>> Benjamin
>>
>>> Best,
>>> Jonathan
>>>
>>> On Mon, Apr 27, 2015 at 7:34 PM, Benjamin Tissoires
>>> <benjamin.tissoires@gmail.com> wrote:
>>>> Hi Jono,
>>>>
>>>> On Sun, Apr 26, 2015 at 2:16 PM, jono <lejono@gmail.com> wrote:
>>>>> The keyboard that this machine comes works fine under grub and windows
>>>>> but not linux.  The keyboard is a Lenovo Thinkpad Helix Ultrabook Pro
>>>>> which also has a touchpad, extra battery, usb port etc. The touchpad,
>>>>> battery, ports are all detected, but the keyboard doesn't work. A usb
>>>>> and bluetooth keyboard work fine.
>>>>>
>>>>> I currently have kernel 4.0.0- 040000- generic. It has been reported
>>>>> in a number of other forums, e.g.
>>>>>
>>>>> https:/ /bugs.launchpad .net/ubuntu/ +source/ xorg/+bug/ 1437051
>>>>> https://forums.lenovo.com/t5/Linux-Discussion/ThinkPad-Helix-keyboard-not-detected-in-Linux/td-p/2051477
>>>>>
>>>>> which all contain useful information and log files. I'm currently
>>>>> running on a fresh install of Ubuntu 15.04 with their "upstream
>>>>> kernel", but the problem exists in previous Ubuntu and kernel
>>>>> versions.
>>>>>
>>>>> "cat /proc/bus/input/devices" lists:
>>>>>
>>>>> I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
>>>>> N: Name="AT Translated Set 2 keyboard"
>>>>> P: Phys=isa0060/serio0/input0
>>>>> S: Sysfs=/devices/platform/i8042/serio0/input/input3
>>>>> U: Uniq=
>>>>> H: Handlers=sysrq kbd event3
>>>>> B: PROP=0
>>>>> B: EV=120013
>>>>> B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
>>>>> B: MSC=10
>>>>> B: LED=7
>>>>>
>>>>> which appears to be it, The Xorg log lists
>>>>>
>>>>> [     4.815] (II) config/udev: Adding input device AT Translated Set 2
>>>>> keyboard (/dev/input/event3)
>>>>> [     4.815] (**) AT Translated Set 2 keyboard: Applying InputClass
>>>>> "evdev keyboard catchall"
>>>>> [     4.815] (II) Using input driver 'evdev' for 'AT Translated Set 2 keyboard'
>>>>> [     4.815] (**) AT Translated Set 2 keyboard: always reports core events
>>>>> [     4.815] (**) evdev: AT Translated Set 2 keyboard: Device:
>>>>> "/dev/input/event3"
>>>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Vendor 0x1 Product 0x1
>>>>> [     4.815] (--) evdev: AT Translated Set 2 keyboard: Found keys
>>>>> [     4.815] (II) evdev: AT Translated Set 2 keyboard: Configuring as keyboard
>>>>> [     4.815] (**) Option "config_info"
>>>>> "udev:/sys/devices/platform/i8042/serio0/input/input3/event3"
>>>>> [     4.815] (II) XINPUT: Adding extended input device "AT Translated
>>>>> Set 2 keyboard" (type: KEYBOARD, id 14)
>>>>> [     4.815] (**) Option "xkb_rules" "evdev"
>>>>> [     4.815] (**) Option "xkb_model" "pc105"
>>>>> [     4.815] (**) Option "xkb_layout" "us"
>>>>>
>>>>>
>>>>>
>>>>> As an aside, the stylus is properly not recognized in this kernel, but
>>>>> works fine in previous kernels with "cat /proc/bus/input/devices"
>>>>> listing
>>>>>
>>>>> I: Bus=0018 Vendor=056a Product=0114 Version=0100
>>>>> N: Name="WCOM0009:00 056A:0114"
>>>>> P: Phys=
>>>>> S: Sysfs=/devices/pci0000:00/INT3433:00/i2c-8/i2c-WCOM0009:00/0018:056A:0114.0004/input/input9
>>>>> U: Uniq=
>>>>> H: Handlers=mouse2 event8
>>>>> B: PROP=0
>>>>> B: EV=1f
>>>>> B: KEY=c03 30001 0 0 0 0
>>>>> B: REL=3
>>>>> B: ABS=1000003
>>>>> B: MSC=10
>>>>>
>>>>> in kernel 3.12 for example, but the device is not listed in 3.16 or
>>>>> later (although possibly it is detected in earlier kernels).
>>>>>
>>>>
>>>> Hmm, you are here reporting 2 bugs at the same time, which will make
>>>> things difficult to track.
>>>>
>>>> Anyway, for being able to understand both problems, we will need the
>>>> dmesg output of the closest to upstream kernel you have.
>>>>
>>>> For the Wacom ISD bits, I  am adding Jason to the thread. It looks
>>>> like your device is an I2C over HID one, so I guess it did not worked
>>>> before v3.11 or v3.12. In v3.16 I changed the way the Wacoms are
>>>> handled and now they are all handled through HID. But this apparently
>>>> broke your device, and I'll try to figure out what happened. We
>>>> normally handle unknown Wacoms properly, but there must be something
>>>> odd in your case that should hopefully show up in the dmesg output.
>>>>
>>>> Cheers,
>>>> Benjamin
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-input" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: keyboard not working with Thinkpad Helix (2nd gen)
  2015-04-28 20:40           ` Benjamin Tissoires
@ 2015-04-30 20:42             ` jono
  0 siblings, 0 replies; 9+ messages in thread
From: jono @ 2015-04-30 20:42 UTC (permalink / raw)
  To: Benjamin Tissoires; +Cc: John Reid, linux-input

I'm writing this email from the Helix keyboard! The stylus work as
well, although users might need to remap the eraser tip (imagine this
is an Xorg or Xournal issue rather than a kernel one). Thanks so much
Benjamin and the linux-input crew! I've fallen in love with linux all
over again. Really appreciate all your great work.
Jonathan

On Tue, Apr 28, 2015 at 9:40 PM, Benjamin Tissoires
<benjamin.tissoires@gmail.com> wrote:
> Hi,
>
> On 04/28/2015 02:46 PM, John Reid wrote:
>> Hi all,
>>
>> To me the following page in the keyboard interface 0 descriptor (from
>> "sudo usbhid-dump -a1:8 -i0| grep -v : | xxd -r -p | hidrd-convert -o")
>> seems suspicious. I'm guessing Logical Maximum should not be -1 if
>> Logical Minimum is 0, and a Usage Maximum of FFFFh might break
>> include/linux/hid.h #define HID_MAX_USAGES    12288
>
> Yep, that's what prevents the hid subsystem to handle the keyboard
> (though the logical min has nothing to do here).
> Below is a patch that fixes the report descriptor and will hopefully
> make the keyboard working.
> Can you apply it on top of Jiri's tree? (or you might want to cherry
> pick https://git.kernel.org/cgit/linux/kernel/git/jikos/hid.git/commit/?h=for-4.2/lenovo&id=d92189ebbdcd0eb180317d8cd6d46c57ac9a3dc0
> on top of a clean v4.0)
>
> And then, tell us if hid-lenovo handles the keyboard?
>
>>
>> Usage Page (88h),                   ; 88h, reserved
>> Usage (01h),
>> Collection (Application),
>>      Report ID (4),
>>      Usage Minimum (00h),
>>      Usage Maximum (FFFFh),
>>      Logical Minimum (0),
>>      Logical Maximum (-1),
>>      Report Size (8),
>>      Report Count (2),
>>      Input (Variable),
>> End Collection,
>>
>> Cheers,
>> John
>>
>
> FWIW, I'll track down the other problems in the other threads.
>
> Cheers,
> Benjamin
>
>
> From abc7922e4972910a31eb54c673bc3b261fd919f7 Mon Sep 17 00:00:00 2001
> From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
> Date: Tue, 28 Apr 2015 16:31:56 -0400
> Subject: [PATCH] HID: lenovo: add support for Lenovo ThinkPad Keyboard Pro
>  unit
>
> This dock is used with the Thinkpad Helix 2 but suffers from an error
> in the report descriptor where an usage max is 65535.
>
> Add a report fixup for it and make the keyboard working.
>
> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
> ---
>  drivers/hid/hid-core.c   |  1 +
>  drivers/hid/hid-ids.h    |  1 +
>  drivers/hid/hid-lenovo.c | 32 ++++++++++++++++++++++++++++++++
>  3 files changed, 34 insertions(+)
>
> diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
> index 722a925..c2baf8c 100644
> --- a/drivers/hid/hid-core.c
> +++ b/drivers/hid/hid-core.c
> @@ -1851,6 +1851,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
>         { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPKBD) },
>         { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CUSBKBD) },
>         { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CBTKBD) },
> +       { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPPRODOCK) },
>  #endif
>         { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_MX3000_RECEIVER) },
>         { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_S510_RECEIVER) },
> diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
> index b24caf8..e5b86e0 100644
> --- a/drivers/hid/hid-ids.h
> +++ b/drivers/hid/hid-ids.h
> @@ -585,6 +585,7 @@
>  #define USB_DEVICE_ID_LENOVO_TPKBD     0x6009
>  #define USB_DEVICE_ID_LENOVO_CUSBKBD   0x6047
>  #define USB_DEVICE_ID_LENOVO_CBTKBD    0x6048
> +#define USB_DEVICE_ID_LENOVO_TPPRODOCK 0x6067
>
>  #define USB_VENDOR_ID_LG               0x1fd2
>  #define USB_DEVICE_ID_LG_MULTITOUCH    0x0064
> diff --git a/drivers/hid/hid-lenovo.c b/drivers/hid/hid-lenovo.c
> index 78608d6..c6c81ff 100644
> --- a/drivers/hid/hid-lenovo.c
> +++ b/drivers/hid/hid-lenovo.c
> @@ -43,6 +43,36 @@ struct lenovo_drvdata_cptkbd {
>
>  #define map_key_clear(c) hid_map_usage_clear(hi, usage, bit, max, EV_KEY, (c))
>
> +static const __u8 lenovo_pro_dock_need_fixup_collection[] = {
> +       0x05, 0x88,             /* Usage Page (Vendor Usage Page 0x88)  */
> +       0x09, 0x01,             /* Usage (Vendor Usage 0x01)            */
> +       0xa1, 0x01,             /* Collection (Application)             */
> +       0x85, 0x04,             /*  Report ID (4)                       */
> +       0x19, 0x00,             /*  Usage Minimum (0)                   */
> +       0x2a, 0xff, 0xff,       /*  Usage Maximum (65535)               */
> +};
> +
> +static __u8 *lenovo_report_fixup(struct hid_device *hdev, __u8 *rdesc,
> +               unsigned int *rsize)
> +{
> +       switch (hdev->product) {
> +       case USB_DEVICE_ID_LENOVO_TPPRODOCK:
> +               /* the fixups that need to be done:
> +                *   - get a reasonable usage max for the vendor collection
> +                *     0x8801 from the report ID 4
> +                */
> +               pr_err("%s %14ph %s:%d\n", __func__, &rdesc[140], __FILE__, __LINE__);
> +               if (*rsize >= 153 &&
> +                   memcmp(&rdesc[140], lenovo_pro_dock_need_fixup_collection,
> +                         sizeof(lenovo_pro_dock_need_fixup_collection)) == 0) {
> +                       rdesc[151] = 0x01;
> +                       rdesc[152] = 0x00;
> +               }
> +               break;
> +       }
> +       return rdesc;
> +}
> +
>  static int lenovo_input_mapping_tpkbd(struct hid_device *hdev,
>                 struct hid_input *hi, struct hid_field *field,
>                 struct hid_usage *usage, unsigned long **bit, int *max)
> @@ -784,6 +814,7 @@ static const struct hid_device_id lenovo_devices[] = {
>         { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPKBD) },
>         { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CUSBKBD) },
>         { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_CBTKBD) },
> +       { HID_USB_DEVICE(USB_VENDOR_ID_LENOVO, USB_DEVICE_ID_LENOVO_TPPRODOCK) },
>         { }
>  };
>
> @@ -797,6 +828,7 @@ static struct hid_driver lenovo_driver = {
>         .probe = lenovo_probe,
>         .remove = lenovo_remove,
>         .raw_event = lenovo_raw_event,
> +       .report_fixup = lenovo_report_fixup,
>  };
>  module_hid_driver(lenovo_driver);
>
> --
> 2.3.5

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2015-04-30 20:42 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-26 18:16 keyboard not working with Thinkpad Helix (2nd gen) (also stylus) jono
2015-04-27 18:34 ` Benjamin Tissoires
2015-04-28  0:56   ` jono
2015-04-28 15:28     ` Benjamin Tissoires
2015-04-28 17:58       ` keyboard not working with Thinkpad Helix (2nd gen) John Reid
2015-04-28 18:46         ` John Reid
2015-04-28 20:40           ` Benjamin Tissoires
2015-04-30 20:42             ` jono
     [not found]       ` <553FE975.90905@gmail.com>
2015-04-28 21:20         ` Thinkpad Helix (2nd gen) Wacom stylus not working (was Re: keyboard not working with Thinkpad Helix (2nd gen) (also stylus)) Benjamin Tissoires

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).