Can't disable USB port from BIOS

Bug #1695216 reported by AceLan Kao on 2017-06-02
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
HWE Next
High
AceLan Kao
linux (Ubuntu)
High
AceLan Kao
Xenial
Undecided
Unassigned

Bug Description

From BIOS, there is front USB port disable function. It is supposed the option in BIOS can
disable USB port and due to AMD chip limitation, it need OS’s cowork.
Otherwise the USB disable function will be invalid when resuming from S3 or reinsert USB device.

=== SRU Justification ===

[Impact]
In BIOS, there is front USB port disable function.
It is supposed the option in BIOS can disable USB port, but due to AMD chip's
limitation, it needs OS’s cowork. Otherwise the USB disable function will
be invalid when resuming from S3 or reinsert USB device.

[Fix]
After checking with Windows, we found there are 2 bits that are default on
in Ubuntu is disabled in Windows. They are
        #define PORT_WKOC_E (1<<22) /* wake on overcurrent (enable) */
        #define PORT_WKCONN_E (1<<20) /* wake on connect (enable) */
So, this patch introduce a quirk to not setup the wakeup bits only for
AMD USB chips.

[Test Case]
Verified on the machine has this issue, and confirm this patch works.

[Regression Potential]
This patch only affects the listed USB ID, and we don't cert this kind of
wakeup method, so should have no regression concerns.
Wake up from USB device is still working, and the patch behavior is confirmed by
the project lead, Tsai, Nicholas, from AMD in the discussion thread[1].

[Misc]
This patch is accepted by the maintainer but still not shown up in any git tree
yet. The discussion thread can be found here[1]. To fit the project schedule,
we need this commit in our kernel as soon as possbile, and can't wait to
next SRU release cycle.

1. https://www.spinics.net/lists/linux-usb/msg157789.html

CVE References

AceLan Kao (acelankao) wrote :

ASMedia provide a patch for this and has submitted to upstream.
Currently, no reply from the maintainer, but we need this fix as soon as possible, so we submit the SRU patch before this patch is accepted by upstream.

Changed in linux (Ubuntu):
status: New → In Progress
AceLan Kao (acelankao) on 2017-06-02
tags: added: originate-from-1682706 somerville
Changed in hwe-next:
assignee: nobody → AceLan Kao (acelankao)
status: New → In Progress
tags: added: patch
AceLan Kao (acelankao) wrote :

Accepted by upstream

description: updated
Changed in hwe-next:
importance: Undecided → High
Changed in linux (Ubuntu):
importance: Undecided → High
Changed in linux (Ubuntu Xenial):
status: New → Fix Committed
Changed in hwe-next:
status: In Progress → Fix Committed

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 the problem still exists, change the tag 'verification-needed-xenial' to 'verification-failed-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
Leon Liao (lihow731) wrote :

I verified linux-image-4.4.0-85-generic #108 on Kona-SFF-DVT-C1 with BIOS 0.6.0.
The front USB is disabled when we disabled the front USB in BIOS settings.

tags: added: verification-done-xenial
removed: verification-needed-xenial
Launchpad Janitor (janitor) wrote :

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

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

  * linux: 4.4.0-87.110 -proposed tracker (LP: #1704982)

  * CVE-2017-1000364
    - mm/mmap.c: do not blow on PROT_NONE MAP_FIXED holes in the stack
    - mm/mmap.c: expand_downwards: don't require the gap if !vm_prev

  * CIFS causes oops (LP: #1704857)
    - CIFS: Fix null pointer deref during read resp processing
    - CIFS: Fix some return values in case of error in 'crypt_message'

 -- Kleber Sacilotto de Souza <email address hidden> Tue, 18 Jul 2017 13:58:43 +0200

Changed in linux (Ubuntu Xenial):
status: Fix Committed → Fix Released
Changed in hwe-next:
status: Fix Committed → Fix Released
AceLan Kao (acelankao) on 2019-07-30
Changed in linux (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers