summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@fedoraproject.org>2021-11-12 10:35:20 -0600
committerJustin M. Forbes <jforbes@fedoraproject.org>2021-11-12 10:35:20 -0600
commitd0578f42bd69da3d3dbafda4e346c6d790811d32 (patch)
tree0217f24c1373c8c0c9bcd2cf5d508ac5c06e928d
parent3c5151dfa46825c42e58efcbc0b911dcb41f679d (diff)
downloadkernel-d0578f42bd69da3d3dbafda4e346c6d790811d32.tar.gz
kernel-d0578f42bd69da3d3dbafda4e346c6d790811d32.tar.xz
kernel-d0578f42bd69da3d3dbafda4e346c6d790811d32.zip
kernel-5.15-0
* Fri Nov 12 2021 Justin M. Forbes <jforbes@fedoraproject.org> [5.15-0] - usb: xhci: tegra: Check padctrl interrupt presence in device tree (Dmitry Osipenko) - Fedora: Enable MediaTek bluetooth pieces (Peter Robinson) - x86/PCI/ACPI: Replace printk calls with pr_info/pr_warn calls (Hans de Goede) - x86/PCI: Ignore E820 reservations for bridge windows on newer systems (Hans de Goede) - Revert "[scsi] megaraid_sas: re-add certain pci-ids" (Justin M. Forbes) - Revert "wireguard: disable in FIPS mode" (Justin M. Forbes) - Revert "[fs] dax: mark tech preview" (Justin M. Forbes) - Revert "wireguard: mark as Tech Preview" (Justin M. Forbes) - Revert "add pci_hw_vendor_status()" (Justin M. Forbes) - Input: i8042 - Add quirk for Fujitsu Lifebook T725 (Takashi Iwai) Resolves: rhbz# Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
-rw-r--r--Patchlist.changelog9
-rw-r--r--kernel-aarch64-debug-fedora.config4
-rw-r--r--kernel-aarch64-fedora.config4
-rw-r--r--kernel-armv7hl-debug-fedora.config4
-rw-r--r--kernel-armv7hl-fedora.config4
-rw-r--r--kernel-armv7hl-lpae-debug-fedora.config4
-rw-r--r--kernel-armv7hl-lpae-fedora.config4
-rw-r--r--kernel-i686-debug-fedora.config4
-rw-r--r--kernel-i686-fedora.config4
-rw-r--r--kernel-ppc64le-debug-fedora.config4
-rw-r--r--kernel-ppc64le-fedora.config4
-rw-r--r--kernel-s390x-debug-fedora.config4
-rw-r--r--kernel-s390x-fedora.config4
-rw-r--r--kernel-x86_64-debug-fedora.config4
-rw-r--r--kernel-x86_64-fedora.config4
-rwxr-xr-xkernel.spec14
-rw-r--r--patch-5.15-redhat.patch298
-rw-r--r--sources6
18 files changed, 339 insertions, 44 deletions
diff --git a/Patchlist.changelog b/Patchlist.changelog
index 343a7e184..453efab18 100644
--- a/Patchlist.changelog
+++ b/Patchlist.changelog
@@ -1,3 +1,12 @@
+https://gitlab.com/cki-project/kernel-ark/-/commit/052a70eae8d9fabd82bcb701931302704dccc472
+ 052a70eae8d9fabd82bcb701931302704dccc472 usb: xhci: tegra: Check padctrl interrupt presence in device tree
+
+https://gitlab.com/cki-project/kernel-ark/-/commit/078b72468a1734ef5f055c6c8c0bbd1882babdef
+ 078b72468a1734ef5f055c6c8c0bbd1882babdef x86/PCI/ACPI: Replace printk calls with pr_info/pr_warn calls
+
+https://gitlab.com/cki-project/kernel-ark/-/commit/dde0ccc0f204067a7f353a6eddd74a2d2345a03f
+ dde0ccc0f204067a7f353a6eddd74a2d2345a03f x86/PCI: Ignore E820 reservations for bridge windows on newer systems
+
https://gitlab.com/cki-project/kernel-ark/-/commit/dbfaeb8e3c1a949e75c8e7aecee8c57ed54c9d02
dbfaeb8e3c1a949e75c8e7aecee8c57ed54c9d02 Revert "[scsi] megaraid_sas: re-add certain pci-ids"
diff --git a/kernel-aarch64-debug-fedora.config b/kernel-aarch64-debug-fedora.config
index d7e02ca3a..f7bf56409 100644
--- a/kernel-aarch64-debug-fedora.config
+++ b/kernel-aarch64-debug-fedora.config
@@ -838,7 +838,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -865,7 +865,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_QCOMSMD=m
CONFIG_BT_RFCOMM=m
diff --git a/kernel-aarch64-fedora.config b/kernel-aarch64-fedora.config
index 4c460ed66..69e899c51 100644
--- a/kernel-aarch64-fedora.config
+++ b/kernel-aarch64-fedora.config
@@ -838,7 +838,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -865,7 +865,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_QCOMSMD=m
CONFIG_BT_RFCOMM=m
diff --git a/kernel-armv7hl-debug-fedora.config b/kernel-armv7hl-debug-fedora.config
index 962022eba..44d64624f 100644
--- a/kernel-armv7hl-debug-fedora.config
+++ b/kernel-armv7hl-debug-fedora.config
@@ -859,7 +859,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -886,7 +886,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_QCOMSMD=m
CONFIG_BT_RFCOMM=m
diff --git a/kernel-armv7hl-fedora.config b/kernel-armv7hl-fedora.config
index b3d500b03..89cf46b8d 100644
--- a/kernel-armv7hl-fedora.config
+++ b/kernel-armv7hl-fedora.config
@@ -859,7 +859,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -886,7 +886,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_QCOMSMD=m
CONFIG_BT_RFCOMM=m
diff --git a/kernel-armv7hl-lpae-debug-fedora.config b/kernel-armv7hl-lpae-debug-fedora.config
index 8b5244052..483b846b5 100644
--- a/kernel-armv7hl-lpae-debug-fedora.config
+++ b/kernel-armv7hl-lpae-debug-fedora.config
@@ -837,7 +837,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -864,7 +864,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-armv7hl-lpae-fedora.config b/kernel-armv7hl-lpae-fedora.config
index f63667c48..2ed2408aa 100644
--- a/kernel-armv7hl-lpae-fedora.config
+++ b/kernel-armv7hl-lpae-fedora.config
@@ -837,7 +837,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -864,7 +864,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-i686-debug-fedora.config b/kernel-i686-debug-fedora.config
index a83cc9c08..574ab7ba2 100644
--- a/kernel-i686-debug-fedora.config
+++ b/kernel-i686-debug-fedora.config
@@ -672,7 +672,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -699,7 +699,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-i686-fedora.config b/kernel-i686-fedora.config
index bbad966a4..2ebe94c56 100644
--- a/kernel-i686-fedora.config
+++ b/kernel-i686-fedora.config
@@ -671,7 +671,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -698,7 +698,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-ppc64le-debug-fedora.config b/kernel-ppc64le-debug-fedora.config
index 08cd9be33..fdf903eb4 100644
--- a/kernel-ppc64le-debug-fedora.config
+++ b/kernel-ppc64le-debug-fedora.config
@@ -632,7 +632,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -659,7 +659,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-ppc64le-fedora.config b/kernel-ppc64le-fedora.config
index 1d9812136..4d2e45393 100644
--- a/kernel-ppc64le-fedora.config
+++ b/kernel-ppc64le-fedora.config
@@ -631,7 +631,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -658,7 +658,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-s390x-debug-fedora.config b/kernel-s390x-debug-fedora.config
index 6cf49eaab..b6b74b38d 100644
--- a/kernel-s390x-debug-fedora.config
+++ b/kernel-s390x-debug-fedora.config
@@ -636,7 +636,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -663,7 +663,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-s390x-fedora.config b/kernel-s390x-fedora.config
index 5531e40da..32abbb354 100644
--- a/kernel-s390x-fedora.config
+++ b/kernel-s390x-fedora.config
@@ -635,7 +635,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -662,7 +662,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-x86_64-debug-fedora.config b/kernel-x86_64-debug-fedora.config
index c2c3fa16a..5db60b704 100644
--- a/kernel-x86_64-debug-fedora.config
+++ b/kernel-x86_64-debug-fedora.config
@@ -681,7 +681,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -708,7 +708,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel-x86_64-fedora.config b/kernel-x86_64-fedora.config
index 74494afa1..3d2b7df08 100644
--- a/kernel-x86_64-fedora.config
+++ b/kernel-x86_64-fedora.config
@@ -680,7 +680,7 @@ CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
-# CONFIG_BT_HCIBTUSB_MTK is not set
+CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIUART_3WIRE=y
@@ -707,7 +707,7 @@ CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_MSFTEXT=y
CONFIG_BT_MTKSDIO=m
-# CONFIG_BT_MTKUART is not set
+CONFIG_BT_MTKUART=m
CONFIG_BT_QCA=m
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
diff --git a/kernel.spec b/kernel.spec
index bf60f5ae1..7ee94271b 100755
--- a/kernel.spec
+++ b/kernel.spec
@@ -128,7 +128,7 @@ Summary: The Linux kernel
# The kernel tarball/base version
%define kversion 5.15
-%define rpmversion 5.15.1
+%define rpmversion 5.15.2
%define patchversion 5.15
%define pkgrelease 200
@@ -682,7 +682,7 @@ BuildRequires: lld
# exact git commit you can run
#
# xzcat -qq ${TARBALL} | git get-tar-commit-id
-Source0: linux-5.15.1.tar.xz
+Source0: linux-5.15.2.tar.xz
Source1: Makefile.rhelver
@@ -1374,8 +1374,8 @@ ApplyOptionalPatch()
fi
}
-%setup -q -n kernel-5.15.1 -c
-mv linux-5.15.1 linux-%{KVERREL}
+%setup -q -n kernel-5.15.2 -c
+mv linux-5.15.2 linux-%{KVERREL}
cd linux-%{KVERREL}
cp -a %{SOURCE1} .
@@ -2972,7 +2972,11 @@ fi
#
#
%changelog
-* Tue Nov 09 2021 Justin M. Forbes <jforbes@fedoraproject.org> [5.15-200]
+* Fri Nov 12 2021 Justin M. Forbes <jforbes@fedoraproject.org> [5.15-0]
+- usb: xhci: tegra: Check padctrl interrupt presence in device tree (Dmitry Osipenko)
+- Fedora: Enable MediaTek bluetooth pieces (Peter Robinson)
+- x86/PCI/ACPI: Replace printk calls with pr_info/pr_warn calls (Hans de Goede)
+- x86/PCI: Ignore E820 reservations for bridge windows on newer systems (Hans de Goede)
- Revert "[scsi] megaraid_sas: re-add certain pci-ids" (Justin M. Forbes)
- Revert "wireguard: disable in FIPS mode" (Justin M. Forbes)
- Revert "[fs] dax: mark tech preview" (Justin M. Forbes)
diff --git a/patch-5.15-redhat.patch b/patch-5.15-redhat.patch
index a4e2894cc..49f534908 100644
--- a/patch-5.15-redhat.patch
+++ b/patch-5.15-redhat.patch
@@ -1,3 +1,4 @@
+ Documentation/admin-guide/kernel-parameters.txt | 9 ++
Makefile | 4 +
arch/arm/Kconfig | 4 +-
arch/arm64/Kconfig | 3 +-
@@ -6,7 +7,11 @@
arch/s390/include/asm/ipl.h | 1 +
arch/s390/kernel/ipl.c | 5 +
arch/s390/kernel/setup.c | 4 +
+ arch/x86/include/asm/pci_x86.h | 10 ++
+ arch/x86/kernel/resource.c | 4 +
arch/x86/kernel/setup.c | 22 ++--
+ arch/x86/pci/acpi.c | 49 ++++++--
+ arch/x86/pci/common.c | 6 +
crypto/rng.c | 73 +++++++++++-
drivers/acpi/apei/hest.c | 8 ++
drivers/acpi/irq.c | 17 ++-
@@ -28,6 +33,7 @@
drivers/nvme/host/nvme.h | 4 +
drivers/pci/quirks.c | 24 ++++
drivers/usb/core/hub.c | 7 ++
+ drivers/usb/host/xhci-tegra.c | 41 +++++--
fs/btrfs/async-thread.c | 14 +++
include/linux/efi.h | 22 ++--
include/linux/lsm_hook_defs.h | 2 +
@@ -42,10 +48,30 @@
security/lockdown/Kconfig | 13 +++
security/lockdown/lockdown.c | 1 +
security/security.c | 6 +
- 44 files changed, 708 insertions(+), 192 deletions(-)
-
+ 50 files changed, 805 insertions(+), 214 deletions(-)
+
+diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
+index 43dc35fe5bc0..07f1615206d4 100644
+--- a/Documentation/admin-guide/kernel-parameters.txt
++++ b/Documentation/admin-guide/kernel-parameters.txt
+@@ -3949,6 +3949,15 @@
+ please report a bug.
+ nocrs [X86] Ignore PCI host bridge windows from ACPI.
+ If you need to use this, please report a bug.
++ use_e820 [X86] Use E820 reservations to exclude parts of
++ PCI host bridge windows. This is a workaround
++ for BIOS defects in host bridge _CRS methods.
++ If you need to use this, please report a bug to
++ <linux-pci@vger.kernel.org>.
++ no_e820 [X86] Ignore E820 reservations for PCI host
++ bridge windows. This is the default on modern
++ hardware. If you need to use this, please report
++ a bug to <linux-pci@vger.kernel.org>.
+ routeirq Do IRQ routing for all PCI devices.
+ This is normally done in pci_enable_device(),
+ so this option is a temporary workaround
diff --git a/Makefile b/Makefile
-index ffcc7eadc44b..7c94a55d6770 100644
+index 14480187ac75..b3146bb9a64f 100644
--- a/Makefile
+++ b/Makefile
@@ -18,6 +18,10 @@ $(if $(filter __%, $(MAKECMDGOALS)), \
@@ -180,6 +206,60 @@ index 67e5fff96ee0..0d58c1f07176 100644
/* Have one command line that is parsed and saved in /proc/cmdline */
/* boot_command_line has been already set up in early.c */
*cmdline_p = boot_command_line;
+diff --git a/arch/x86/include/asm/pci_x86.h b/arch/x86/include/asm/pci_x86.h
+index 490411dba438..0bb4e7dd0ffc 100644
+--- a/arch/x86/include/asm/pci_x86.h
++++ b/arch/x86/include/asm/pci_x86.h
+@@ -39,6 +39,8 @@ do { \
+ #define PCI_ROOT_NO_CRS 0x100000
+ #define PCI_NOASSIGN_BARS 0x200000
+ #define PCI_BIG_ROOT_WINDOW 0x400000
++#define PCI_USE_E820 0x800000
++#define PCI_NO_E820 0x1000000
+
+ extern unsigned int pci_probe;
+ extern unsigned long pirq_table_addr;
+@@ -64,6 +66,8 @@ void pcibios_scan_specific_bus(int busn);
+
+ /* pci-irq.c */
+
++struct pci_dev;
++
+ struct irq_info {
+ u8 bus, devfn; /* Bus, device and function */
+ struct {
+@@ -232,3 +236,9 @@ static inline void mmio_config_writel(void __iomem *pos, u32 val)
+ # define x86_default_pci_init_irq NULL
+ # define x86_default_pci_fixup_irqs NULL
+ #endif
++
++#if defined(CONFIG_PCI) && defined(CONFIG_ACPI)
++extern bool pci_use_e820;
++#else
++#define pci_use_e820 false
++#endif
+diff --git a/arch/x86/kernel/resource.c b/arch/x86/kernel/resource.c
+index 9b9fb7882c20..e8dc9bc327bd 100644
+--- a/arch/x86/kernel/resource.c
++++ b/arch/x86/kernel/resource.c
+@@ -1,6 +1,7 @@
+ // SPDX-License-Identifier: GPL-2.0
+ #include <linux/ioport.h>
+ #include <asm/e820/api.h>
++#include <asm/pci_x86.h>
+
+ static void resource_clip(struct resource *res, resource_size_t start,
+ resource_size_t end)
+@@ -28,6 +29,9 @@ static void remove_e820_regions(struct resource *avail)
+ int i;
+ struct e820_entry *entry;
+
++ if (!pci_use_e820)
++ return;
++
+ for (i = 0; i < e820_table->nr_entries; i++) {
+ entry = &e820_table->entries[i];
+
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 40ed44ead063..31aac8c787cf 100644
--- a/arch/x86/kernel/setup.c
@@ -227,6 +307,123 @@ index 40ed44ead063..31aac8c787cf 100644
reserve_initrd();
+diff --git a/arch/x86/pci/acpi.c b/arch/x86/pci/acpi.c
+index 948656069cdd..f357dac92610 100644
+--- a/arch/x86/pci/acpi.c
++++ b/arch/x86/pci/acpi.c
+@@ -1,4 +1,7 @@
+ // SPDX-License-Identifier: GPL-2.0
++
++#define pr_fmt(fmt) "PCI: " fmt
++
+ #include <linux/pci.h>
+ #include <linux/acpi.h>
+ #include <linux/init.h>
+@@ -21,6 +24,8 @@ struct pci_root_info {
+
+ static bool pci_use_crs = true;
+ static bool pci_ignore_seg = false;
++/* Consumed in arch/x86/kernel/resource.c */
++bool pci_use_e820 = false;
+
+ static int __init set_use_crs(const struct dmi_system_id *id)
+ {
+@@ -36,7 +41,7 @@ static int __init set_nouse_crs(const struct dmi_system_id *id)
+
+ static int __init set_ignore_seg(const struct dmi_system_id *id)
+ {
+- printk(KERN_INFO "PCI: %s detected: ignoring ACPI _SEG\n", id->ident);
++ pr_info("%s detected: ignoring ACPI _SEG\n", id->ident);
+ pci_ignore_seg = true;
+ return 0;
+ }
+@@ -156,10 +161,35 @@ void __init pci_acpi_crs_quirks(void)
+ else if (pci_probe & PCI_USE__CRS)
+ pci_use_crs = true;
+
+- printk(KERN_INFO "PCI: %s host bridge windows from ACPI; "
+- "if necessary, use \"pci=%s\" and report a bug\n",
+- pci_use_crs ? "Using" : "Ignoring",
+- pci_use_crs ? "nocrs" : "use_crs");
++ pr_info("%s host bridge windows from ACPI; if necessary, use \"pci=%s\" and report a bug\n",
++ pci_use_crs ? "Using" : "Ignoring",
++ pci_use_crs ? "nocrs" : "use_crs");
++
++ /*
++ * Some BIOS-es contain a bug where they add addresses which map to
++ * system RAM in the PCI host bridge window returned by the ACPI _CRS
++ * method, see commit 4dc2287c1805 ("x86: avoid E820 regions when
++ * allocating address space"). To avoid this Linux by default excludes
++ * E820 reservations when allocating addresses since 2010.
++ * In 2020 some systems have shown-up with E820 reservations which cover
++ * the entire _CRS returned PCI host bridge window, causing all attempts
++ * to assign memory to PCI BARs to fail if Linux uses E820 reservations.
++ *
++ * Ideally Linux would fully stop using E820 reservations, but then
++ * the old systems this was added for will regress.
++ * Instead keep the old behavior for old systems, while ignoring the
++ * E820 reservations for any systems from now on.
++ */
++ if (year >= 0 && year < 2018)
++ pci_use_e820 = true;
++
++ if (pci_probe & PCI_NO_E820)
++ pci_use_e820 = false;
++ else if (pci_probe & PCI_USE_E820)
++ pci_use_e820 = true;
++
++ pr_info("%s E820 reservations for host bridge windows\n",
++ pci_use_e820 ? "Using" : "Ignoring");
+ }
+
+ #ifdef CONFIG_PCI_MMCONFIG
+@@ -334,9 +364,8 @@ struct pci_bus *pci_acpi_scan_root(struct acpi_pci_root *root)
+ root->segment = domain = 0;
+
+ if (domain && !pci_domains_supported) {
+- printk(KERN_WARNING "pci_bus %04x:%02x: "
+- "ignored (multiple domains not supported)\n",
+- domain, busnum);
++ pr_warn("pci_bus %04x:%02x: ignored (multiple domains not supported)\n",
++ domain, busnum);
+ return NULL;
+ }
+
+@@ -404,7 +433,7 @@ int __init pci_acpi_init(void)
+ if (acpi_noirq)
+ return -ENODEV;
+
+- printk(KERN_INFO "PCI: Using ACPI for IRQ routing\n");
++ pr_info("Using ACPI for IRQ routing\n");
+ acpi_irq_penalty_init();
+ pcibios_enable_irq = acpi_pci_irq_enable;
+ pcibios_disable_irq = acpi_pci_irq_disable;
+@@ -416,7 +445,7 @@ int __init pci_acpi_init(void)
+ * also do it here in case there are still broken drivers that
+ * don't use pci_enable_device().
+ */
+- printk(KERN_INFO "PCI: Routing PCI interrupts for all devices because \"pci=routeirq\" specified\n");
++ pr_info("Routing PCI interrupts for all devices because \"pci=routeirq\" specified\n");
+ for_each_pci_dev(dev)
+ acpi_pci_irq_enable(dev);
+ }
+diff --git a/arch/x86/pci/common.c b/arch/x86/pci/common.c
+index 3507f456fcd0..091ec7e94fcb 100644
+--- a/arch/x86/pci/common.c
++++ b/arch/x86/pci/common.c
+@@ -595,6 +595,12 @@ char *__init pcibios_setup(char *str)
+ } else if (!strcmp(str, "nocrs")) {
+ pci_probe |= PCI_ROOT_NO_CRS;
+ return NULL;
++ } else if (!strcmp(str, "use_e820")) {
++ pci_probe |= PCI_USE_E820;
++ return NULL;
++ } else if (!strcmp(str, "no_e820")) {
++ pci_probe |= PCI_NO_E820;
++ return NULL;
+ #ifdef CONFIG_PHYS_ADDR_T_64BIT
+ } else if (!strcmp(str, "big_root_window")) {
+ pci_probe |= PCI_BIG_ROOT_WINDOW;
diff --git a/crypto/rng.c b/crypto/rng.c
index fea082b25fe4..50a9d040bed1 100644
--- a/crypto/rng.c
@@ -1484,6 +1681,91 @@ index 86658a81d284..5647f4756e97 100644
/* Lock the device, then check to see if we were
* disconnected while waiting for the lock to succeed. */
usb_lock_device(hdev);
+diff --git a/drivers/usb/host/xhci-tegra.c b/drivers/usb/host/xhci-tegra.c
+index 1bf494b649bd..c8af2cd2216d 100644
+--- a/drivers/usb/host/xhci-tegra.c
++++ b/drivers/usb/host/xhci-tegra.c
+@@ -1400,6 +1400,7 @@ static void tegra_xusb_deinit_usb_phy(struct tegra_xusb *tegra)
+
+ static int tegra_xusb_probe(struct platform_device *pdev)
+ {
++ struct of_phandle_args args;
+ struct tegra_xusb *tegra;
+ struct device_node *np;
+ struct resource *regs;
+@@ -1454,10 +1455,17 @@ static int tegra_xusb_probe(struct platform_device *pdev)
+ goto put_padctl;
+ }
+
+- tegra->padctl_irq = of_irq_get(np, 0);
+- if (tegra->padctl_irq <= 0) {
+- err = (tegra->padctl_irq == 0) ? -ENODEV : tegra->padctl_irq;
+- goto put_padctl;
++ /* Older device-trees don't have padctrl interrupt */
++ err = of_irq_parse_one(np, 0, &args);
++ if (!err) {
++ tegra->padctl_irq = of_irq_get(np, 0);
++ if (tegra->padctl_irq <= 0) {
++ err = (tegra->padctl_irq == 0) ? -ENODEV : tegra->padctl_irq;
++ goto put_padctl;
++ }
++ } else {
++ dev_dbg(&pdev->dev,
++ "%pOF is missing an interrupt, disabling PM support\n", np);
+ }
+
+ tegra->host_clk = devm_clk_get(&pdev->dev, "xusb_host");
+@@ -1696,11 +1704,15 @@ static int tegra_xusb_probe(struct platform_device *pdev)
+ goto remove_usb3;
+ }
+
+- err = devm_request_threaded_irq(&pdev->dev, tegra->padctl_irq, NULL, tegra_xusb_padctl_irq,
+- IRQF_ONESHOT, dev_name(&pdev->dev), tegra);
+- if (err < 0) {
+- dev_err(&pdev->dev, "failed to request padctl IRQ: %d\n", err);
+- goto remove_usb3;
++ if (tegra->padctl_irq) {
++ err = devm_request_threaded_irq(&pdev->dev, tegra->padctl_irq,
++ NULL, tegra_xusb_padctl_irq,
++ IRQF_ONESHOT, dev_name(&pdev->dev),
++ tegra);
++ if (err < 0) {
++ dev_err(&pdev->dev, "failed to request padctl IRQ: %d\n", err);
++ goto remove_usb3;
++ }
+ }
+
+ err = tegra_xusb_enable_firmware_messages(tegra);
+@@ -1718,13 +1730,16 @@ static int tegra_xusb_probe(struct platform_device *pdev)
+ /* Enable wake for both USB 2.0 and USB 3.0 roothubs */
+ device_init_wakeup(&tegra->hcd->self.root_hub->dev, true);
+ device_init_wakeup(&xhci->shared_hcd->self.root_hub->dev, true);
+- device_init_wakeup(tegra->dev, true);
+
+ pm_runtime_use_autosuspend(tegra->dev);
+ pm_runtime_set_autosuspend_delay(tegra->dev, 2000);
+ pm_runtime_mark_last_busy(tegra->dev);
+ pm_runtime_set_active(tegra->dev);
+- pm_runtime_enable(tegra->dev);
++
++ if (tegra->padctl_irq) {
++ device_init_wakeup(tegra->dev, true);
++ pm_runtime_enable(tegra->dev);
++ }
+
+ return 0;
+
+@@ -1772,7 +1787,9 @@ static int tegra_xusb_remove(struct platform_device *pdev)
+ dma_free_coherent(&pdev->dev, tegra->fw.size, tegra->fw.virt,
+ tegra->fw.phys);
+
+- pm_runtime_disable(&pdev->dev);
++ if (tegra->padctl_irq)
++ pm_runtime_disable(&pdev->dev);
++
+ pm_runtime_put(&pdev->dev);
+
+ tegra_xusb_powergate_partitions(tegra);
diff --git a/fs/btrfs/async-thread.c b/fs/btrfs/async-thread.c
index 309516e6a968..d39af03b456c 100644
--- a/fs/btrfs/async-thread.c
@@ -1585,7 +1867,7 @@ index 6b5d36babfcc..fd4a5d66a9d0 100644
enum efi_secureboot_mode efi_get_secureboot_mode(efi_get_variable_t *get_var)
{
diff --git a/include/linux/lsm_hook_defs.h b/include/linux/lsm_hook_defs.h
-index 2adeea44c0d5..517013ece679 100644
+index 61590c1f2d33..4c10750865c2 100644
--- a/include/linux/lsm_hook_defs.h
+++ b/include/linux/lsm_hook_defs.h
@@ -394,6 +394,8 @@ LSM_HOOK(void, LSM_RET_VOID, bpf_prog_free_security, struct bpf_prog_aux *aux)
@@ -1598,7 +1880,7 @@ index 2adeea44c0d5..517013ece679 100644
#ifdef CONFIG_PERF_EVENTS
LSM_HOOK(int, 0, perf_event_open, struct perf_event_attr *attr, int type)
diff --git a/include/linux/lsm_hooks.h b/include/linux/lsm_hooks.h
-index 5c4c5c0602cb..753b53038690 100644
+index 59024618554e..ab9ca4d393da 100644
--- a/include/linux/lsm_hooks.h
+++ b/include/linux/lsm_hooks.h
@@ -1545,6 +1545,12 @@
@@ -1652,7 +1934,7 @@ index ab7eea01ab42..fff7c5f737fc 100644
int rmi_register_transport_device(struct rmi_transport_dev *xport);
diff --git a/include/linux/security.h b/include/linux/security.h
-index 5b7288521300..f966f591c91e 100644
+index 46a02ce34d00..37e991a10d70 100644
--- a/include/linux/security.h
+++ b/include/linux/security.h
@@ -472,6 +472,7 @@ int security_inode_notifysecctx(struct inode *inode, void *ctx, u32 ctxlen);
@@ -1663,7 +1945,7 @@ index 5b7288521300..f966f591c91e 100644
#else /* CONFIG_SECURITY */
static inline int call_blocking_lsm_notifier(enum lsm_event event, void *data)
-@@ -1348,6 +1349,10 @@ static inline int security_locked_down(enum lockdown_reason what)
+@@ -1353,6 +1354,10 @@ static inline int security_locked_down(enum lockdown_reason what)
{
return 0;
}
@@ -1782,7 +2064,7 @@ index 87cbdc64d272..18555cf18da7 100644
static int __init lockdown_lsm_init(void)
diff --git a/security/security.c b/security/security.c
-index 9ffa9e9c5c55..36484cc9842d 100644
+index 67264cb08fb3..85a0227bfac1 100644
--- a/security/security.c
+++ b/security/security.c
@@ -2599,6 +2599,12 @@ int security_locked_down(enum lockdown_reason what)
diff --git a/sources b/sources
index e8680280e..a3687ac79 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
SHA512 (kernel-abi-whitelists-5.13.3-300.tar.bz2) = 6bf4f456ba178ec95b63b3818d3575773ede221e74fde97bb20eb32409a64c58d4f9a6acce9b8b58a5477d27cb708c53abe03dada02a3bdf1cfd596ccd129294
-SHA512 (linux-5.15.1.tar.xz) = 927a475f0cc40ed08c462130d799b0d74a6200d2db50c92940fc0d63c2aac9029ff4276e5bbfecad49953829599c155a96f8ce563d448f9649432e4c3d730b07
-SHA512 (kernel-abi-stablelists-5.15.1-200.tar.bz2) = 3b43f148d00de83c4649cf552e97c0787c25721fe7932332ee5d0cdc5b7c4b13a1fc988ba42b3696d04777037a0a0076f21842ffd91ccb8249d1be9dba4189b7
-SHA512 (kernel-kabi-dw-5.15.1-200.tar.bz2) = 8e06c53dd3b27a3980c9cbbfca86b12ddff0961c1534b56dc6bc292752dfa3dca455a5adbce56c559a4470563df868c62dec76d4ff06df474eef2392e22f8917
+SHA512 (linux-5.15.2.tar.xz) = 9256a57aee3fb226b0994f593bbb8e781a55706eb358d979394cf35ebf899dfe5a1b14cfc0b06ac968aa0730d9283b19543f5ea3e07e4e3575ceda71d48f862c
+SHA512 (kernel-abi-stablelists-5.15.2-200.tar.bz2) = 134b3229c353ca90d225b29fd09c68817424f4e5dc9fa152d21778ca79e09e12e5c90c3c9607bb8075ef3da1788059e727c639f5609eea02901a00e8fc04716b
+SHA512 (kernel-kabi-dw-5.15.2-200.tar.bz2) = 01afcac40bbbd02099677133aa803945e7d9f57d9d98d66d0831573156faa5aec1571a6b5e25b0b03c2ad055bbbed0e13618677c426e61d46e73ee42036308be