~vicamo/+git/ubuntu-kernel:bug-1893194/enable-vmd-aspm-8086-a0bc/oem-5.6

Last commit made on 2020-08-27
Get this branch:
git clone -b bug-1893194/enable-vmd-aspm-8086-a0bc/oem-5.6 https://git.launchpad.net/~vicamo/+git/ubuntu-kernel
Only You-Sheng Yang can upload to this branch. If you are You-Sheng Yang please log in for upload directions.

Branch merges

Branch information

Name:
bug-1893194/enable-vmd-aspm-8086-a0bc/oem-5.6
Repository:
lp:~vicamo/+git/ubuntu-kernel

Recent commits

08cc81c... by You-Sheng Yang

Bug 1893194: Enable VMD ASPM for 8086:a0bc

fbe1684... by You-Sheng Yang

UBUNTU: SAUCE: PCI/ASPM: VMD: Enable ASPM for 8086:a0bc

This adds additional device [8086:a0bc] PCI bridge.

Signed-off-by: You-Sheng Yang <email address hidden>

831bcb0... by Timo Aaltonen

UBUNTU: Ubuntu-oem-5.6-5.6.0-1023.23

Signed-off-by: Timo Aaltonen <email address hidden>

cf15ced... by Timo Aaltonen

UBUNTU: link-to-tracker: update tracking bug

BugLink: https://bugs.launchpad.net/bugs/1892465
Properties: no-test-build
Signed-off-by: Timo Aaltonen <email address hidden>

51081a6... by Andy Lutomirski <email address hidden>

x86/ioperm: Fix io bitmap invalidation on Xen PV

tss_invalidate_io_bitmap() wasn't wired up properly through the pvop
machinery, so the TSS and Xen's io bitmap would get out of sync
whenever disabling a valid io bitmap.

Add a new pvop for tss_invalidate_io_bitmap() to fix it.

This is XSA-329.

Fixes: 22fe5b0439dd ("x86/ioperm: Move TSS bitmap update to exit to user work")
Signed-off-by: Andy Lutomirski <email address hidden>
Signed-off-by: Thomas Gleixner <email address hidden>
Reviewed-by: Juergen Gross <email address hidden>
Reviewed-by: Thomas Gleixner <email address hidden>
Cc: <email address hidden>
Link: https://lkml.kernel.org<email address hidden>

CVE-2020-15852

(cherry picked from commit cadfad870154e14f745ec845708bc17d166065f2)
Signed-off-by: William Breathitt Gray <email address hidden>
Signed-off-by: Timo Aaltonen <email address hidden>

513c0bc... by Kai-Heng Feng

xhci: Do warm-reset when both CAS and XDEV_RESUME are set

BugLink: https://bugs.launchpad.net/bugs/1892678

Sometimes re-plugging a USB device during system sleep renders the device
useless:
[ 173.418345] xhci_hcd 0000:00:14.0: Get port status 2-4 read: 0x14203e2, return 0x10262
...
[ 176.496485] usb 2-4: Waited 2000ms for CONNECT
[ 176.496781] usb usb2-port4: status 0000.0262 after resume, -19
[ 176.497103] usb 2-4: can't resume, status -19
[ 176.497438] usb usb2-port4: logical disconnect

Because PLS equals to XDEV_RESUME, xHCI driver reports U3 to usbcore,
despite of CAS bit is flagged.

So proritize CAS over XDEV_RESUME to let usbcore handle warm-reset for
the port.

Cc: stable <email address hidden>
Signed-off-by: Kai-Heng Feng <email address hidden>
Signed-off-by: Mathias Nyman <email address hidden>
Link: https://<email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
(cherry picked from commit 904df64a5f4d5ebd670801d869ca0a6d6a6e8df6 linux-next)
Signed-off-by: Kai-Heng Feng <email address hidden>
Signed-off-by: Timo Aaltonen <email address hidden>

b19a44b... by Kai-Heng Feng

UBUNTU: SAUCE: PCI/ASPM: Enable ASPM for links under VMD domain

BugLink: https://bugs.launchpad.net/bugs/1889384

New Intel laptops with VMD cannot reach deeper power saving state,
renders very short battery time.

As BIOS may not be able to program the config space for devices under
VMD domain, ASPM needs to be programmed manually by software. This is
also the case under Windows.

The VMD controller itself is a root complex integrated endpoint that
doesn't have ASPM capability, so we can't propagate the ASPM settings to
devices under it. Hence, simply apply ASPM_STATE_ALL to the links under
VMD domain, unsupported states will be cleared out anyway.

Signed-off-by: Kai-Heng Feng <email address hidden>
Signed-off-by: Timo Aaltonen <email address hidden>

dbe44c1... by Hans de Goede <email address hidden>

HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands

BugLink: https://bugs.launchpad.net/bugs/1891998

Before this commit i2c_hid_parse() consists of the following steps:

1. Send power on cmd
2. usleep_range(1000, 5000)
3. Send reset cmd
4. Wait for reset to complete (device interrupt, or msleep(100))
5. Send power on cmd
6. Try to read HID descriptor

Notice how there is an usleep_range(1000, 5000) after the first power-on
command, but not after the second power-on command.

Testing has shown that at least on the BMAX Y13 laptop's i2c-hid touchpad,
not having a delay after the second power-on command causes the HID
descriptor to read as all zeros.

In case we hit this on other devices too, the descriptor being all zeros
can be recognized by the following message being logged many, many times:

hid-generic 0018:0911:5288.0002: unknown main item tag 0x0

At the same time as the BMAX Y13's touchpad issue was debugged,
Kai-Heng was working on debugging some issues with Goodix i2c-hid
touchpads. It turns out that these need a delay after a PWR_ON command
too, otherwise they stop working after a suspend/resume cycle.
According to Goodix a delay of minimal 60ms is needed.

Having multiple cases where we need a delay after sending the power-on
command, seems to indicate that we should always sleep after the power-on
command.

This commit fixes the mentioned issues by moving the existing 1ms sleep to
the i2c_hid_set_power() function and changing it to a 60ms sleep.

Cc: <email address hidden>
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=208247
Reported-by: Kai-Heng Feng <email address hidden>
Reported-and-tested-by: Andrea Borgia <email address hidden>
Signed-off-by: Hans de Goede <email address hidden>
Signed-off-by: Jiri Kosina <email address hidden>
(cherry picked from commit eef4016243e94c438f177ca8226876eb873b9c75 linux-next)
Signed-off-by: Kai-Heng Feng <email address hidden>
Signed-off-by: Timo Aaltonen <email address hidden>

49db857... by AaronMa

platform/x86: thinkpad_acpi: not loading brightness_init when _BCL invalid

BugLink: https://bugs.launchpad.net/bugs/1892010

When _BCL invalid, disable thinkpad_acpi backlight brightness control.

brightness_enable is already checked at the beginning.
Most new thinkpads are using GPU driver to control brightness now,
print notice when enabled brightness control even when brightness_enable = 1.

Signed-off-by: Aaron Ma <email address hidden>
Signed-off-by: Andy Shevchenko <email address hidden>
(cherry picked from commit 46713aeee154205fc0285b0d9ac78cb4bdf246a7)
Signed-off-by: Aaron Ma <email address hidden>
Signed-off-by: Timo Aaltonen <email address hidden>

df0005e... by Timo Aaltonen

UBUNTU: Start new release

Ignore: yes
Signed-off-by: Timo Aaltonen <email address hidden>