Ubuntu – Patched kernel, everything works except the device Huion 580 that was supposed to work with the patch

driverskernelpatchtablet

This is related to this question.

I downloaded kernel 3.9.10, applied the patch with patch -p1 < ../huion.patch, then I followed this instructions to compile the kernel, then I installed the deb packages that were generated, rebooted and I'm typing this from the new kernel, uname -a reports my custom build. Everything good so far.

Now the problem, I connect the Huion 580 tablet and it doesn't work. My lsusb looks like this:

Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 256c:006e <-- This is the tablet!!!!
Bus 002 Device 003: ID 4168:1011  
Bus 002 Device 004: ID 04a9:1746 Canon, Inc. 
Bus 002 Device 005: ID 413c:2111 Dell Computer Corp. 
Bus 002 Device 006: ID 03f0:a707 Hewlett-Packard

But the tablet is not in xinput list:

⎡ Virtual core pointer                           id=2   [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ reserved Targus Wireless Optical Mouse    id=8    [slave  pointer  (2)]
⎣ Virtual core keyboard                          id=3   [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ DELL Dell USB Wired Entry Keyboard        id=9    [slave  keyboard (3)]
    ↳ DELL Dell USB Wired Entry Keyboard        id=10   [slave  keyboard (3)]
    ↳ HP Webcam HD-2200                         id=11   [slave  keyboard (3)]

What could be the problem? I can't use mainline kernel 3.11 (which supposedly includes the patch) because there are no nVidia drivers that work yet.

Before applying the patch I run make oldconfig and left everything as default pressing enter a bunch of times. Then I applied the patch and run that command again and it asked about Huion driver with options [N,m], I pressed N for NEW I think…

Some people got it working with this patch, not me. How can I know if the patch was applied and that this device is supposed to get detected? Do I have to load the driver manually somehow?

Edit: Compiling kernel again pressing m this time, let's see how this goes…

Best Answer

I finally got it working. First download kernel 3.9.10, extract and apply patch:

> cd linux-3.9.10
> yes "" | make oldconfig
> patch -p1 < ../path/to/huion.patch
> make oldconfig
  Huion tablets (HID_HUION) [N/m/?] m
> fakeroot make-kpkg -j 4 --initrd --append-to-version=elclanrs kernel-image kernel-headers
  ...

After that I installed the packaged debs, rebooted and everything works now, uname -a reports custom kernel.

Finally I had to restrict the tablet to only one monitor, the right one in this case. My setup is (1920+2560)x1440:

xinput set-prop "HUION 580" --type=float "Coordinate Transformation Matrix" 0.5714 0 0.4285 0 1 0 0 0 1

Here are the patched kernel debs for Ubuntu 13.04 64bit:

Related Question