[Bug 240339] [ig4] I2C2 (touchpad bus) broken on the Google Pixelbook (Sunrise Point PCH)

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Sep 4 22:57:37 UTC 2019


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=240339

            Bug ID: 240339
           Summary: [ig4] I2C2 (touchpad bus) broken on the Google
                    Pixelbook (Sunrise Point PCH)
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: bugs at FreeBSD.org
          Reporter: greg at unrelenting.technology

The Pixelbook (google/eve) has four ig4 controllers enabled.

I2C0 is used for the touchscreen, and it works fine (using
https://github.com/wulf7/iichid for the HID).

I2C2 is used for the touchpad, and it doesn't:

- out of the box nothing can be detected on the bus, all commands time out;
- commenting out the code that asserts the reset (IG4_REG_RESETS_SKL), i.e. NOT
doing the LPSS reset (0x204), allows the touchpad's devices (HID and EC) to be
seen on that bus;
- but they still quickly "disappear" from the bus (so something goes wrong in
the controller) when I try to listen to hid events using libinput.

Setting slow polling in hid allows it to last for a bit, but eventually it
still breaks.

This is not related to speed settings, the firmware sets them correctly and I
commented out the code that replaces them — no difference.

Everything works fine in Linux (I tested SystemRescueCD) and is at least fully
detected in NetBSD (I only booted the installer, can't do anything in there
really). btw NetBSD doesn't assert the LPSS reset, only deasserts it (writes
0x3). though Linux does both.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list