I2C touchpad does not work on AMD platform

Bug #1612006 reported by Alex Hung on 2016-08-11
18
This bug affects 2 people
Affects Status Importance Assigned to Milestone
HWE Next
High
Alex Hung
linux (Ubuntu)
High
Alex Hung
Xenial
High
Alex Hung
Yakkety
Undecided
Unassigned

Bug Description

Recent AMD platform has problems with I2C touchpads because its GPIO controller is not configured correctly.

Alex Hung (alexhung) on 2016-08-11
Changed in linux (Ubuntu):
assignee: nobody → Alex Hung (alexhung)

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1612006

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Stefan Bader (smb) on 2016-08-11
Changed in linux (Ubuntu Xenial):
status: New → Fix Committed
importance: Undecided → High
Alex Hung (alexhung) on 2016-08-12
tags: added: originate-from-1580458 somerville
Changed in hwe-next:
assignee: nobody → Alex Hung (alexhung)
status: New → In Progress
Stefan Bader (smb) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-xenial' to 'verification-done-xenial'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-xenial
Alex Hung (alexhung) on 2016-08-17
tags: added: verification-done-xenial
removed: verification-needed-xenial
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 4.4.0-9136.55

---------------
linux (4.4.0-9136.55) yakkety; urgency=low

  [ Adam Conrad ]

  * Rebuild in yakkety for the binutils transition:
    - Bump ABI to avoid namespace clash with xenial kernels.
    - Build-depend on (and use) gcc-5 to match xenial.

  * Pull patches to allow perf to build against glibc 2.24:
    - 22a9f41b555673e7499b97acf3ffb07bf0af31ad
    - 7839b9f32e45075d9eb48da8480faef3dbd019f0
    - 9a5f3bf332bbd42625b71553ca9ffdffa9fc4785
    - 2515e614834f362eed36fb5ea5d359d94a525263

  [ Stefan Bader ]

  * Release Tracking Bug
    - LP: #1612305

  * I2C touchpad does not work on AMD platform (LP: #1612006)
    - SAUCE: pinctrl/amd: Remove the default de-bounce time

  * CVE-2016-5696
    - tcp: make challenge acks less predictable

 -- Adam Conrad <email address hidden> Thu, 25 Aug 2016 23:45:12 -0600

Changed in linux (Ubuntu):
status: Incomplete → Fix Released
Launchpad Janitor (janitor) wrote :
Download full text (13.4 KiB)

This bug was fixed in the package linux - 4.4.0-36.55

---------------
linux (4.4.0-36.55) xenial; urgency=low

  [ Stefan Bader ]

  * Release Tracking Bug
    - LP: #1612305

  * I2C touchpad does not work on AMD platform (LP: #1612006)
    - SAUCE: pinctrl/amd: Remove the default de-bounce time

  * CVE-2016-5696
    - tcp: make challenge acks less predictable

linux (4.4.0-35.54) xenial; urgency=low

  [ Stefan Bader ]

  * Release Tracking Bug
    - LP: #1611215

  * [i915_bpo] Sync with v4.7 (LP: #1609742)
    - SAUCE: i915_bpo: Sync with v4.7

  * s390/cio: fix reset of channel measurement block (LP: #1609415)
    - s390/cio: allow to reset channel measurement block

  * in Ubuntu16.10: Hit on Call traces and system goes down when transactional
    memory tests are running in 32TB Brazos system (LP: #1606786)
    - powerpc/tm: Avoid SLB faults in treclaim/trecheckpoint when RI=0
    - powerpc/tm: Fix stack pointer corruption in __tm_recheckpoint()

  * Power Menu does not display after press the Power Button (LP: #1609204)
    - intel-vbtn: new driver for Intel Virtual Button
    - [config] enable CONFIG_INTEL_VBTN=m

  * OptiPlex 7450 AIO hangs when rebooting (LP: #1608762)
    - x86/reboot: Add Dell Optiplex 7450 AIO reboot quirk

  * virtualbox+usb 3.0 breaks boot, -28 kernel works (LP: #1604058)
    - SAUCE: xhci: Fix soft lockup in xhci_pci_probe path when XHCI_STATE_HALTED

  * linux-kernel: Freeing IRQ from IRQ context (LP: #1597908)
    - block: defer timeouts to a workqueue

  * Tunnel offload indications not stripped from encapsulated packets, causing
    performance overhead (LP: #1602755)
    - tunnels: Remove encapsulation offloads on decap.

  * lm-sensors is throwing "ERROR: Can't get value of subfeature temp1_input:
    I/O error" for be2net driver (LP: #1607387)
    - be2net: perform temperature query in adapter regardless of its interface
      state

  * Dell dock MAC Address pass through doesn't work in Ubuntu (LP: #1579984)
    - r8152: Add support for setting pass through MAC address on RTL8153-AD

  * vmxnet3 LRO IPv6 performance issues (stalling TCP) (LP: #1605494)
    - Driver: Vmxnet3: set CHECKSUM_UNNECESSARY for IPv6 packets

  * ISST-LTE:pVM:monklp5:Ubuntu16.04.1:system crashed at
    lpfc_sli4_scmd_to_wqidx_distr (LP: #1597974)
    - SAUCE: lpfc: fix oops in lpfc_sli4_scmd_to_wqidx_distr() from
      lpfc_send_taskmgmt()

  * Backport cxlflash shutdown patch to Xenial SRU (LP: #1605405)
    - SAUCE: cxlflash: Verify problem state area is mapped before notifying
      shutdown

  * Xenial update to v4.4.16 stable release (LP: #1607404)
    - mac80211: fix fast_tx header alignment
    - mac80211: mesh: flush mesh paths unconditionally
    - mac80211_hwsim: Add missing check for HWSIM_ATTR_SIGNAL
    - mac80211: Fix mesh estab_plinks counting in STA removal case
    - EDAC, sb_edac: Fix rank lookup on Broadwell
    - IB/cm: Fix a recently introduced locking bug
    - IB/mlx4: Properly initialize GRH TClass and FlowLabel in AHs
    - powerpc/pseries: Fix IBM_ARCH_VEC_NRCORES_OFFSET since POWER8NVL was added
    - powerpc/tm: Always reclaim in start_thread() for exec() class syscalls
    - usb: dwc2: fix reg...

Changed in linux (Ubuntu Xenial):
status: Fix Committed → Fix Released
Alex Hung (alexhung) wrote :

Updated kernel + the attached deb package fixes this problem

Alex Hung (alexhung) wrote :

AMD submitted a patch (https://patchwork.ozlabs.org/patch/664477/) and it awaits for upstream's review

Alex Hung (alexhung) wrote :

I built a kernel with the patch (#6) and it's available @ http://people.canonical.com/~alexhung/LP1612006/

Alex Hung (alexhung) wrote :

I just tried #6 (#7) but it doesn't work...

Alex Hung (alexhung) wrote :

A new patch is available @ http://patchwork.ozlabs.org/patch/668179/, and a test kernel is available @ http://people.canonical.com/~alexhung/LP1612006/ (replace the one in #7)

Alex Hung (alexhung) wrote :

The kernel is tested by kentlin but it doesn't work. We will talk to AMD's engineer who submitted to the patch.

Alex Hung (alexhung) wrote :

This seems to be the same we tested and failed...

Perhaps we should test the mainline @ http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9-rc1/. If it passes, we can backport it.

Alex Hung (alexhung) wrote :

AMD suggested that their fixes (as below?) are for kernel 4.4 only. The kernel 4.4 with the two patches are available @ http://people.canonical.com/~alexhung/LP1612006/kernel4.4/

commit 0a77abf18ef6a7afe4fb300ec22aa8e1a98c5730
Author: Agrawal, Nitesh-kumar <email address hidden>
Date: Fri Sep 9 15:18:09 2016 +0000

    pinctrl/amd: switch to using a bool for level

    The earlier patch can be simplified by using a bool
    to indicate level trigger.

    Reviewed-by: Pankaj Sen <email address hidden>
    Signed-off-by: Nitesh Kumar Agrawal <email address hidden>
    [Fixup to earlier manually applied patch]
    Signed-off-by: Linus Walleij <email address hidden>

    (cherry picked from commit e084448b5d26bfebe8a7b9c43bb57e685567563d)
    Signed-off-by: Alex Hung <email address hidden>

commit af2f2fcfb793a73b8d1f98004e0e281173719128
Author: Agrawal, Nitesh-kumar <email address hidden>
Date: Wed Aug 31 08:50:49 2016 +0000

    pinctrl/amd: Configure GPIO register using BIOS settings

    In the function amd_gpio_irq_set_type, use the settings provided by
    the BIOS,when the LevelTrig is Edge and activeLevel is HIGH, to configure
    the GPIO registers. Ignore the settings from client.

    Reviewed-by: Pankaj Sen <email address hidden>
    Signed-off-by:Nitesh Kumar Agrawal <email address hidden>
    Signed-off-by: Linus Walleij <email address hidden>
    (cherry picked from commit 499c7196dd182ba513ccb9620ee22aed3f9096fd)
    Signed-off-by: Alex Hung <email address hidden>

Alex Hung (alexhung) on 2016-10-27
Changed in linux (Ubuntu):
status: Fix Released → In Progress
Changed in linux (Ubuntu Xenial):
status: Fix Released → In Progress
assignee: nobody → Alex Hung (alexhung)
Alex Hung (alexhung) wrote :

AMD sent two more patches to fix this issue completely:

commit e084448b5d26bfebe8a7b9c43bb57e685567563d
Author: Agrawal, Nitesh-kumar <email address hidden>
Date: Fri Sep 9 15:18:09 2016 +0000

    pinctrl/amd: switch to using a bool for level

    The earlier patch can be simplified by using a bool
    to indicate level trigger.

    Reviewed-by: Pankaj Sen <email address hidden>
    Signed-off-by: Nitesh Kumar Agrawal <email address hidden>
    [Fixup to earlier manually applied patch]
    Signed-off-by: Linus Walleij <email address hidden>

commit 499c7196dd182ba513ccb9620ee22aed3f9096fd
Author: Agrawal, Nitesh-kumar <email address hidden>
Date: Wed Aug 31 08:50:49 2016 +0000

    pinctrl/amd: Configure GPIO register using BIOS settings

    In the function amd_gpio_irq_set_type, use the settings provided by
    the BIOS,when the LevelTrig is Edge and activeLevel is HIGH, to configure
    the GPIO registers. Ignore the settings from client.

    Reviewed-by: Pankaj Sen <email address hidden>
    Signed-off-by:Nitesh Kumar Agrawal <email address hidden>
    Signed-off-by: Linus Walleij <email address hidden>

Luis Henriques (henrix) on 2016-11-08
Changed in linux (Ubuntu Xenial):
status: In Progress → Fix Committed
Luis Henriques (henrix) on 2016-11-08
Changed in linux (Ubuntu Yakkety):
status: New → Fix Committed
Alex Hung (alexhung) on 2016-11-08
Changed in linux (Ubuntu):
importance: Undecided → High
Changed in hwe-next:
importance: Undecided → High
Luis Henriques (henrix) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-xenial' to 'verification-done-xenial'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

Luis Henriques (henrix) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-yakkety' to 'verification-done-yakkety'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-yakkety
Alex Hung (alexhung) on 2016-11-18
tags: added: verification-done-yakkety
removed: verification-needed-yakkety
Alex Hung (alexhung) on 2016-11-18
Changed in hwe-next:
status: In Progress → Fix Committed
Changed in linux (Ubuntu):
status: In Progress → Fix Committed

The verification of the Stable Release Update for linux-lts-xenial has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :
Download full text (22.5 KiB)

This bug was fixed in the package linux - 4.4.0-51.72

---------------
linux (4.4.0-51.72) xenial; urgency=low

  [ Luis Henriques ]

  * Release Tracking Bug
    - LP: #1644611

  * 4.4.0-1037-snapdragon #41: kernel panic on boot (LP: #1644596)
    - Revert "dma-mapping: introduce the DMA_ATTR_NO_WARN attribute"
    - Revert "powerpc: implement the DMA_ATTR_NO_WARN attribute"
    - Revert "nvme: use the DMA_ATTR_NO_WARN attribute"

linux (4.4.0-50.71) xenial; urgency=low

  [ Luis Henriques ]

  * Release Tracking Bug
    - LP: #1644169

  * xenial 4.4.0-49.70 kernel breaks LXD userspace (LP: #1644165)
    - Revert "UBUNTU: SAUCE: (namespace) fuse: Allow user namespace mounts by
      default"
    - Revert "UBUNTU: SAUCE: (namespace) fs: Don't remove suid for CAP_FSETID for
      userns root"
    - Revert "(namespace) Revert "UBUNTU: SAUCE: fs: Don't remove suid for
      CAP_FSETID in s_user_ns""
    - Revert "UBUNTU: SAUCE: (namespace) fs: Allow superblock owner to change
      ownership of inodes"
    - Revert "(namespace) Revert "UBUNTU: SAUCE: fs: Allow superblock owner to
      change ownership of inodes with unmappable ids""
    - Revert "UBUNTU: SAUCE: (namespace) security/integrity: Harden against
      malformed xattrs"
    - Revert "(namespace) Revert "UBUNTU: SAUCE: ima/evm: Allow root in s_user_ns
      to set xattrs""
    - Revert "(namespace) dquot: For now explicitly don't support filesystems
      outside of init_user_ns"
    - Revert "(namespace) quota: Handle quota data stored in s_user_ns in
      quota_setxquota"
    - Revert "(namespace) quota: Ensure qids map to the filesystem"
    - Revert "(namespace) Revert "UBUNTU: SAUCE: quota: Convert ids relative to
      s_user_ns""
    - Revert "(namespace) Revert "UBUNTU: SAUCE: quota: Require that qids passed
      to dqget() be valid and map into s_user_ns""
    - Revert "(namespace) vfs: Don't create inodes with a uid or gid unknown to
      the vfs"
    - Revert "(namespace) vfs: Don't modify inodes with a uid or gid unknown to
      the vfs"
    - Revert "UBUNTU: SAUCE: (namespace) fuse: Translate ids in posix acl xattrs"
    - Revert "UBUNTU: SAUCE: (namespace) posix_acl: Export
      posix_acl_fix_xattr_userns() to modules"
    - Revert "(namespace) vfs: Verify acls are valid within superblock's
      s_user_ns."
    - Revert "(namespace) Revert "UBUNTU: SAUCE: fs: Update posix_acl support to
      handle user namespace mounts""
    - Revert "(namespace) fs: Refuse uid/gid changes which don't map into
      s_user_ns"
    - Revert "(namespace) Revert "UBUNTU: SAUCE: fs: Refuse uid/gid changes which
      don't map into s_user_ns""
    - Revert "(namespace) mnt: Move the FS_USERNS_MOUNT check into sget_userns"

linux (4.4.0-49.70) xenial; urgency=low

  [ Luis Henriques ]

  * Release Tracking Bug
    - LP: #1640921

  * Infiniband driver (kernel module) needed for Azure (LP: #1641139)
    - SAUCE: RDMA Infiniband for Windows Azure
    - [Config] CONFIG_HYPERV_INFINIBAND_ND=m
    - SAUCE: Makefile RDMA infiniband driver for Windows Azure
    - [Config] Add hv_network_direct.ko to generic inclusion list
    - SAUCE: RDMA Infiniband for Windows Azure is dependent on amd64...

Changed in linux (Ubuntu Xenial):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :
Download full text (26.6 KiB)

This bug was fixed in the package linux - 4.8.0-28.30

---------------
linux (4.8.0-28.30) yakkety; urgency=low

  [ Luis Henriques ]

  * Release Tracking Bug
    - LP: #1641083

  * lxc-attach to malicious container allows access to host (LP: #1639345)
    - Revert "UBUNTU: SAUCE: (noup) ptrace: being capable wrt a process requires
      mapped uids/gids"
    - (upstream) mm: Add a user_ns owner to mm_struct and fix ptrace permission
      checks

  * [Feature] AVX-512 new instruction sets (avx512_4vnniw, avx512_4fmaps)
    (LP: #1637526)
    - x86/cpufeature: Add AVX512_4VNNIW and AVX512_4FMAPS features

  * zfs: importing zpool with vdev on zvol hangs kernel (LP: #1636517)
    - SAUCE: (noup) Update zfs to 0.6.5.8-0ubuntu4.1

  * Move some device drivers build from kernel built-in to modules
    (LP: #1637303)
    - [Config] CONFIG_TIGON3=m for all arches
    - [Config] CONFIG_VIRTIO_BLK=m, CONFIG_VIRTIO_NET=m

  * I2C touchpad does not work on AMD platform (LP: #1612006)
    - pinctrl/amd: Configure GPIO register using BIOS settings

  * guest experiencing Transmit Timeouts on CX4 (LP: #1636330)
    - powerpc/64: Re-fix race condition between going idle and entering guest
    - powerpc/64: Fix race condition in setting lock bit in idle/wakeup code

  * QEMU throws failure msg while booting guest with SRIOV VF (LP: #1630554)
    - KVM: PPC: Always select KVM_VFIO, plus Makefile cleanup

  * [Feature] KBL - New device ID for Kabypoint(KbP) (LP: #1591618)
    - SAUCE: mfd: lpss: Fix Intel Kaby Lake PCH-H properties

  * hio: SSD data corruption under stress test (LP: #1638700)
    - SAUCE: hio: set bi_error field to signal an I/O error on a BIO
    - SAUCE: hio: splitting bio in the entry of .make_request_fn

  * cleanup primary tree for linux-hwe layering issues (LP: #1637473)
    - [Config] switch Vcs-Git: to yakkety repository
    - [Packaging] handle both linux-lts* and linux-hwe* as backports
    - [Config] linux-tools-common and linux-cloud-tools-common are one per series
    - [Config] linux-source-* is in the primary linux namespace
    - [Config] linux-tools -- always suggest the base package

  * SRU: sync zfsutils-linux and spl-linux changes to linux (LP: #1635656)
    - SAUCE: (noup) Update spl to 0.6.5.8-2, zfs to 0.6.5.8-0ubuntu4 (LP:
      #1635656)

  * [Feature] SKX: perf uncore PMU support (LP: #1591810)
    - perf/x86/intel/uncore: Add Skylake server uncore support
    - perf/x86/intel/uncore: Remove hard-coded implementation for Node ID mapping
      location
    - perf/x86/intel/uncore: Handle non-standard counter offset

  * [Feature] Purley: Memory Protection Keys (LP: #1591804)
    - x86/pkeys: Add fault handling for PF_PK page fault bit
    - mm: Implement new pkey_mprotect() system call
    - x86/pkeys: Make mprotect_key() mask off additional vm_flags
    - x86/pkeys: Allocation/free syscalls
    - x86: Wire up protection keys system calls
    - generic syscalls: Wire up memory protection keys syscalls
    - pkeys: Add details of system call use to Documentation/
    - x86/pkeys: Default to a restrictive init PKRU
    - x86/pkeys: Allow configuration of init_pkru
    - x86/pkeys: Add self-tests

  * kernel invalid ...

Changed in linux (Ubuntu Yakkety):
status: Fix Committed → Fix Released
Alex Hung (alexhung) on 2016-11-30
Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
Changed in hwe-next:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers