summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre/linux-libre-pae/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch8
-rw-r--r--libre/linux-libre-pae/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch4
-rw-r--r--libre/linux-libre-pae/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch4
-rw-r--r--libre/linux-libre-pae/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch99
-rw-r--r--libre/linux-libre-pae/0004-PCI-pciehp-Prevent-deadlock-on-disconnect.patch (renamed from libre/linux-libre-pae/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch)6
-rw-r--r--libre/linux-libre-pae/0005-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch (renamed from libre/linux-libre-pae/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch)6
-rw-r--r--libre/linux-libre-pae/0006-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch (renamed from libre/linux-libre-pae/0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch)6
-rw-r--r--libre/linux-libre-pae/0007-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch (renamed from libre/linux-libre-pae/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch)10
-rw-r--r--libre/linux-libre-pae/0008-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch (renamed from libre/linux-libre-pae/0010-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch)10
-rw-r--r--libre/linux-libre-pae/0008-x86-intel-Disable-HPET-on-Intel-Ice-Lake-platforms.patch38
-rw-r--r--libre/linux-libre-pae/0009-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch (renamed from libre/linux-libre-pae/0011-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch)6
-rw-r--r--libre/linux-libre-pae/0010-drm-i915-Limit-audio-CDCLK-2-BCLK-constraint-back-to.patch64
-rw-r--r--libre/linux-libre-pae/0011-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch (renamed from libre/linux-libre-pae/0013-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch)6
-rw-r--r--libre/linux-libre-pae/0012-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch (renamed from libre/linux-libre-pae/0014-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch)6
-rw-r--r--libre/linux-libre-pae/0012-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch129
-rw-r--r--libre/linux-libre-pae/0013-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch (renamed from libre/linux-libre-pae/0015-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch)6
-rw-r--r--libre/linux-libre-pae/0014-drm-amdgpu-Add-DC-feature-mask-to-disable-fractional.patch80
-rw-r--r--libre/linux-libre-pae/0015-ptp-free-ptp-device-pin-descriptors-properly.patch50
-rw-r--r--libre/linux-libre-pae/PKGBUILD104
19 files changed, 285 insertions, 357 deletions
diff --git a/libre/linux-libre-pae/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch b/libre/linux-libre-pae/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
index 15b54a0fe..c83e607e3 100644
--- a/libre/linux-libre-pae/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
+++ b/libre/linux-libre-pae/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
@@ -1,4 +1,4 @@
-From 98ab83a7426ef0ec20ff46947f2ee8d651980b1c Mon Sep 17 00:00:00 2001
+From ace933a17f0b2e6e75e5ed330e8c12efae62aa53 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
Date: Mon, 16 Sep 2019 04:53:20 +0200
Subject: [PATCH 01/15] ZEN: Add sysctl and CONFIG to disallow unprivileged
@@ -40,7 +40,7 @@ index b4daad2bac23..362f82c5ec07 100644
bool "PID Namespaces"
default y
diff --git a/kernel/fork.c b/kernel/fork.c
-index 6cabc124378c..fda4986da9eb 100644
+index 755d8160e001..ed909f8050b2 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -106,6 +106,11 @@
@@ -66,7 +66,7 @@ index 6cabc124378c..fda4986da9eb 100644
/*
* Thread groups must share signals as well, and detached threads
* can only be started up within the thread group.
-@@ -2826,6 +2835,12 @@ int ksys_unshare(unsigned long unshare_flags)
+@@ -2836,6 +2845,12 @@ int ksys_unshare(unsigned long unshare_flags)
if (unshare_flags & CLONE_NEWNS)
unshare_flags |= CLONE_FS;
@@ -128,5 +128,5 @@ index 8eadadc478f9..c36ecd19562c 100644
static DEFINE_MUTEX(userns_state_mutex);
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch b/libre/linux-libre-pae/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch
index c99d497d8..3ecc89738 100644
--- a/libre/linux-libre-pae/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch
+++ b/libre/linux-libre-pae/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch
@@ -1,4 +1,4 @@
-From 34648b0396ec5dfdfc18627c9c21c03e7243dbe2 Mon Sep 17 00:00:00 2001
+From 78b64515af95e12dac806fa630ae4499e9527100 Mon Sep 17 00:00:00 2001
From: Tuowen Zhao <ztuowen@gmail.com>
Date: Wed, 16 Oct 2019 15:06:28 -0600
Subject: [PATCH 02/15] lib: devres: add a helper function for ioremap_uc
@@ -75,5 +75,5 @@ index 6a0e9bd6524a..17624d35e82d 100644
* devm_ioremap_nocache - Managed ioremap_nocache()
* @dev: Generic device to remap IO address for
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch b/libre/linux-libre-pae/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch
index 7e744d0c5..8794625c2 100644
--- a/libre/linux-libre-pae/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch
+++ b/libre/linux-libre-pae/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch
@@ -1,4 +1,4 @@
-From 4b74251368e136095a2096ea1bdf95d40ddbd7fb Mon Sep 17 00:00:00 2001
+From dbc56c8785b2f6698722f3e9c189c7cb1f963679 Mon Sep 17 00:00:00 2001
From: Tuowen Zhao <ztuowen@gmail.com>
Date: Wed, 16 Oct 2019 15:06:29 -0600
Subject: [PATCH 03/15] mfd: intel-lpss: Use devm_ioremap_uc for MMIO
@@ -44,5 +44,5 @@ index bfe4ff337581..b0f0781a6b9c 100644
if (!lpss->priv)
return -ENOMEM;
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch b/libre/linux-libre-pae/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch
deleted file mode 100644
index 3d9a404f1..000000000
--- a/libre/linux-libre-pae/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 47e8e0d8dbfded3675de6abed233ef134d1578e5 Mon Sep 17 00:00:00 2001
-From: Mika Westerberg <mika.westerberg@linux.intel.com>
-Date: Tue, 29 Oct 2019 20:00:21 +0300
-Subject: [PATCH 04/15] PCI: pciehp: Do not disable interrupt twice on suspend
-
-We try to keep PCIe hotplug ports runtime suspended when entering system
-suspend. Because the PCIe portdrv sets the DPM_FLAG_NEVER_SKIP flag, the PM
-core always calls system suspend/resume hooks even if the device is left
-runtime suspended. Since PCIe hotplug driver re-used the same function for
-both runtime suspend and system suspend, it ended up disabling hotplug
-interrupt twice and the second time following was printed:
-
- pciehp 0000:03:01.0:pcie204: pcie_do_write_cmd: no response from device
-
-Prevent this from happening by checking whether the device is already
-runtime suspended when the system suspend hook is called.
-
-Fixes: 9c62f0bfb832 ("PCI: pciehp: Implement runtime PM callbacks")
-Link: https://lore.kernel.org/r/20191029170022.57528-1-mika.westerberg@linux.intel.com
-Reported-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
-Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
-Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
-Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
-Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
----
- drivers/pci/hotplug/pciehp_core.c | 25 +++++++++++++++++++++++--
- 1 file changed, 23 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/pci/hotplug/pciehp_core.c b/drivers/pci/hotplug/pciehp_core.c
-index b3122c151b80..56daad828c9e 100644
---- a/drivers/pci/hotplug/pciehp_core.c
-+++ b/drivers/pci/hotplug/pciehp_core.c
-@@ -253,7 +253,7 @@ static bool pme_is_native(struct pcie_device *dev)
- return pcie_ports_native || host->native_pme;
- }
-
--static int pciehp_suspend(struct pcie_device *dev)
-+static void pciehp_disable_interrupt(struct pcie_device *dev)
- {
- /*
- * Disable hotplug interrupt so that it does not trigger
-@@ -261,7 +261,19 @@ static int pciehp_suspend(struct pcie_device *dev)
- */
- if (pme_is_native(dev))
- pcie_disable_interrupt(get_service_data(dev));
-+}
-
-+#ifdef CONFIG_PM_SLEEP
-+static int pciehp_suspend(struct pcie_device *dev)
-+{
-+ /*
-+ * If the port is already runtime suspended we can keep it that
-+ * way.
-+ */
-+ if (dev_pm_smart_suspend_and_suspended(&dev->port->dev))
-+ return 0;
-+
-+ pciehp_disable_interrupt(dev);
- return 0;
- }
-
-@@ -279,6 +291,7 @@ static int pciehp_resume_noirq(struct pcie_device *dev)
-
- return 0;
- }
-+#endif
-
- static int pciehp_resume(struct pcie_device *dev)
- {
-@@ -292,6 +305,12 @@ static int pciehp_resume(struct pcie_device *dev)
- return 0;
- }
-
-+static int pciehp_runtime_suspend(struct pcie_device *dev)
-+{
-+ pciehp_disable_interrupt(dev);
-+ return 0;
-+}
-+
- static int pciehp_runtime_resume(struct pcie_device *dev)
- {
- struct controller *ctrl = get_service_data(dev);
-@@ -318,10 +337,12 @@ static struct pcie_port_service_driver hpdriver_portdrv = {
- .remove = pciehp_remove,
-
- #ifdef CONFIG_PM
-+#ifdef CONFIG_PM_SLEEP
- .suspend = pciehp_suspend,
- .resume_noirq = pciehp_resume_noirq,
- .resume = pciehp_resume,
-- .runtime_suspend = pciehp_suspend,
-+#endif
-+ .runtime_suspend = pciehp_runtime_suspend,
- .runtime_resume = pciehp_runtime_resume,
- #endif /* PM */
- };
---
-2.24.1
-
diff --git a/libre/linux-libre-pae/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch b/libre/linux-libre-pae/0004-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
index 68d8477ed..304446c22 100644
--- a/libre/linux-libre-pae/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
+++ b/libre/linux-libre-pae/0004-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
@@ -1,7 +1,7 @@
-From 54f60fe91123c1d95ee104c971d546b49e9d67f0 Mon Sep 17 00:00:00 2001
+From fa21078f336286d835bc734c8b4e4a24b67f245e Mon Sep 17 00:00:00 2001
From: Mika Westerberg <mika.westerberg@linux.intel.com>
Date: Tue, 29 Oct 2019 20:00:22 +0300
-Subject: [PATCH 05/15] PCI: pciehp: Prevent deadlock on disconnect
+Subject: [PATCH 04/15] PCI: pciehp: Prevent deadlock on disconnect
This addresses deadlocks in these common cases in hierarchies containing
two switches:
@@ -268,5 +268,5 @@ index 86d97f3112f0..a2a263764ef8 100644
int pciehp_query_power_fault(struct controller *ctrl)
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch b/libre/linux-libre-pae/0005-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
index a461a4f71..e5e617f28 100644
--- a/libre/linux-libre-pae/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
+++ b/libre/linux-libre-pae/0005-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
@@ -1,7 +1,7 @@
-From 1b16d109c72e27909a590c5b91c45e8b90fe819a Mon Sep 17 00:00:00 2001
+From 7f6991978c1c388c2b11bb8101e4658f81fe85ed Mon Sep 17 00:00:00 2001
From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
Date: Thu, 28 Nov 2019 23:50:40 +0100
-Subject: [PATCH 06/15] ACPI: PM: s2idle: Rework ACPI events synchronization
+Subject: [PATCH 05/15] ACPI: PM: s2idle: Rework ACPI events synchronization
Note that the EC GPE processing need not be synchronized in
acpi_s2idle_wake() after invoking acpi_ec_dispatch_gpe(), because
@@ -74,5 +74,5 @@ index 2af937a8b1c5..6747a279621b 100644
acpi_enable_all_runtime_gpes();
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch b/libre/linux-libre-pae/0006-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
index 2aaa4e8a3..9145881b7 100644
--- a/libre/linux-libre-pae/0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
+++ b/libre/linux-libre-pae/0006-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
@@ -1,7 +1,7 @@
-From 88bbdf2becea7d9a04561f5b58219eb50efdd008 Mon Sep 17 00:00:00 2001
+From 50b253fe7f01a82c8054d88319598db71ae5d083 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
Date: Tue, 24 Dec 2019 05:18:47 +0100
-Subject: [PATCH 07/15] iwlwifi: pcie: restore support for Killer Qu C0 NICs
+Subject: [PATCH 06/15] iwlwifi: pcie: restore support for Killer Qu C0 NICs
Commit 809805a820c6 refactored the cfg mangling. Unfortunately, in this
process the lines which picked the right cfg for Killer Qu C0 NICs after
@@ -32,5 +32,5 @@ index b0b7eca1754e..de62a6dc4e73 100644
/* same thing for QuZ... */
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch b/libre/linux-libre-pae/0007-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
index ae34f4cf7..daeaf7069 100644
--- a/libre/linux-libre-pae/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
+++ b/libre/linux-libre-pae/0007-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
@@ -1,7 +1,7 @@
-From fd29a8b6f1d2974791dd4b700bad5254f2ad28d9 Mon Sep 17 00:00:00 2001
+From e0a3ce4a9ebf049e76ea38c48e41f2c67f4b3330 Mon Sep 17 00:00:00 2001
From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Date: Fri, 20 Sep 2019 11:39:18 +0300
-Subject: [PATCH 09/15] drm/i915: save AUD_FREQ_CNTRL state at audio domain
+Subject: [PATCH 07/15] drm/i915: save AUD_FREQ_CNTRL state at audio domain
suspend
When audio power domain is suspended, the display driver must
@@ -70,10 +70,10 @@ index 89b6112bd66b..043ce1b47aeb 100644
struct {
struct mutex mutex;
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index f8ee9aba3955..e1fe356463ec 100644
+index 7b6e68f082f8..a99ef18665f2 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -9104,6 +9104,8 @@ enum {
+@@ -9110,6 +9110,8 @@ enum {
#define HSW_AUD_CHICKENBIT _MMIO(0x65f10)
#define SKL_AUD_CODEC_WAKE_SIGNAL (1 << 15)
@@ -83,5 +83,5 @@ index f8ee9aba3955..e1fe356463ec 100644
* HSW - ICL power wells
*
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0010-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch b/libre/linux-libre-pae/0008-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch
index 536d8d301..0ed086f28 100644
--- a/libre/linux-libre-pae/0010-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch
+++ b/libre/linux-libre-pae/0008-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch
@@ -1,7 +1,7 @@
-From 763a3bbf9ded9e8e0225ba25ab48a65f8e380517 Mon Sep 17 00:00:00 2001
+From e4bcd75c297598b87b89533c2c995f7d88c12010 Mon Sep 17 00:00:00 2001
From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Date: Thu, 3 Oct 2019 11:55:30 +0300
-Subject: [PATCH 10/15] drm/i915: Fix audio power up sequence for gen10+
+Subject: [PATCH 08/15] drm/i915: Fix audio power up sequence for gen10+
display
On platfroms with gen10+ display, driver must set the enable bit of
@@ -40,10 +40,10 @@ index 439bc0a93410..440b33762fef 100644
return ret;
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index e1fe356463ec..ccfea9c2b8bf 100644
+index a99ef18665f2..1dd7b6187780 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -9105,6 +9105,8 @@ enum {
+@@ -9111,6 +9111,8 @@ enum {
#define SKL_AUD_CODEC_WAKE_SIGNAL (1 << 15)
#define AUD_FREQ_CNTRL _MMIO(0x65900)
@@ -53,5 +53,5 @@ index e1fe356463ec..ccfea9c2b8bf 100644
/*
* HSW - ICL power wells
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0008-x86-intel-Disable-HPET-on-Intel-Ice-Lake-platforms.patch b/libre/linux-libre-pae/0008-x86-intel-Disable-HPET-on-Intel-Ice-Lake-platforms.patch
deleted file mode 100644
index 07f4609b1..000000000
--- a/libre/linux-libre-pae/0008-x86-intel-Disable-HPET-on-Intel-Ice-Lake-platforms.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 7e4ac4925c87e5418bbe11d8887d5a9d3cd0d6c0 Mon Sep 17 00:00:00 2001
-From: Kai-Heng Feng <kai.heng.feng@canonical.com>
-Date: Fri, 29 Nov 2019 14:23:03 +0800
-Subject: [PATCH 08/15] x86/intel: Disable HPET on Intel Ice Lake platforms
-
-Like CFL and CFL-H, ICL SoC has skewed HPET timer once it hits PC10.
-So let's disable HPET on ICL.
-
-Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
-Cc: Linus Torvalds <torvalds@linux-foundation.org>
-Cc: Peter Zijlstra <peterz@infradead.org>
-Cc: Thomas Gleixner <tglx@linutronix.de>
-Cc: bp@alien8.de
-Cc: feng.tang@intel.com
-Cc: harry.pan@intel.com
-Cc: hpa@zytor.com
-Link: https://lkml.kernel.org/r/20191129062303.18982-2-kai.heng.feng@canonical.com
-Signed-off-by: Ingo Molnar <mingo@kernel.org>
----
- arch/x86/kernel/early-quirks.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c
-index 606711f5ebf8..2f9ec14be3b1 100644
---- a/arch/x86/kernel/early-quirks.c
-+++ b/arch/x86/kernel/early-quirks.c
-@@ -714,6 +714,8 @@ static struct chipset early_qrk[] __initdata = {
- PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, force_disable_hpet},
- { PCI_VENDOR_ID_INTEL, 0x3ec4,
- PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, force_disable_hpet},
-+ { PCI_VENDOR_ID_INTEL, 0x8a12,
-+ PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, force_disable_hpet},
- { PCI_VENDOR_ID_BROADCOM, 0x4331,
- PCI_CLASS_NETWORK_OTHER, PCI_ANY_ID, 0, apple_airport_reset},
- {}
---
-2.24.1
-
diff --git a/libre/linux-libre-pae/0011-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch b/libre/linux-libre-pae/0009-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch
index 743686a44..428daa3d3 100644
--- a/libre/linux-libre-pae/0011-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch
+++ b/libre/linux-libre-pae/0009-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch
@@ -1,7 +1,7 @@
-From 92d38b35c52c1ee17f215515ed181b44e5fb3d3a Mon Sep 17 00:00:00 2001
+From 7ff6d556c831f5f909b3315974816a45a3802670 Mon Sep 17 00:00:00 2001
From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Date: Thu, 3 Oct 2019 11:55:31 +0300
-Subject: [PATCH 11/15] drm/i915: extend audio CDCLK>=2*BCLK constraint to more
+Subject: [PATCH 09/15] drm/i915: extend audio CDCLK>=2*BCLK constraint to more
platforms
The CDCLK>=2*BCLK constraint applies to all generations since gen10.
@@ -37,5 +37,5 @@ index 440b33762fef..05ef43b13d1c 100644
intel_display_power_put(dev_priv, POWER_DOMAIN_AUDIO, cookie);
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0010-drm-i915-Limit-audio-CDCLK-2-BCLK-constraint-back-to.patch b/libre/linux-libre-pae/0010-drm-i915-Limit-audio-CDCLK-2-BCLK-constraint-back-to.patch
new file mode 100644
index 000000000..f1735399a
--- /dev/null
+++ b/libre/linux-libre-pae/0010-drm-i915-Limit-audio-CDCLK-2-BCLK-constraint-back-to.patch
@@ -0,0 +1,64 @@
+From ce769a8e35537fc71cc9934a1fa39a481f994b25 Mon Sep 17 00:00:00 2001
+From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
+Date: Tue, 31 Dec 2019 16:00:07 +0200
+Subject: [PATCH 10/15] drm/i915: Limit audio CDCLK>=2*BCLK constraint back to
+ GLK only
+
+Revert changes done in commit f6ec9483091f ("drm/i915: extend audio
+CDCLK>=2*BCLK constraint to more platforms"). Audio drivers
+communicate with i915 over HDA bus multiple times during system
+boot-up and each of these transactions result in matching
+get_power/put_power calls to i915, and depending on the platform,
+a modeset change causing visible flicker.
+
+GLK is the only platform with minimum CDCLK significantly lower
+than BCLK, and thus for GLK setting a higher CDCLK is mandatory.
+
+For other platforms, minimum CDCLK is close but below 2*BCLK
+(e.g. on ICL, CDCLK=176.4kHz with BCLK=96kHz). Spec-wise the constraint
+should be set, but in practise no communication errors have been
+reported and the downside if set is the flicker observed at boot-time.
+
+Revert to old behaviour until better mechanism to manage
+probe-time clocks is available.
+
+The full CDCLK>=2*BCLK constraint is still enforced at pipe
+enable time in intel_crtc_compute_min_cdclk().
+
+Bugzilla: https://gitlab.freedesktop.org/drm/intel/issues/913
+Fixes: f6ec9483091f ("drm/i915: extend audio CDCLK>=2*BCLK constraint to more platforms")
+Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
+Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
+Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
+Link: https://patchwork.freedesktop.org/patch/msgid/20191231140007.31728-1-kai.vehmanen@linux.intel.com
+(cherry picked from commit 1ee48a61aa57dbdbc3cd2808d8b28df40d938e44)
+Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
+---
+ drivers/gpu/drm/i915/display/intel_audio.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/gpu/drm/i915/display/intel_audio.c b/drivers/gpu/drm/i915/display/intel_audio.c
+index 05ef43b13d1c..0cf475f3063c 100644
+--- a/drivers/gpu/drm/i915/display/intel_audio.c
++++ b/drivers/gpu/drm/i915/display/intel_audio.c
+@@ -858,7 +858,7 @@ static unsigned long i915_audio_component_get_power(struct device *kdev)
+ }
+
+ /* Force CDCLK to 2*BCLK as long as we need audio powered. */
+- if (INTEL_GEN(dev_priv) >= 10 || IS_GEMINILAKE(dev_priv))
++ if (IS_GEMINILAKE(dev_priv))
+ glk_force_audio_cdclk(dev_priv, true);
+
+ if (INTEL_GEN(dev_priv) >= 10 || IS_GEMINILAKE(dev_priv))
+@@ -877,7 +877,7 @@ static void i915_audio_component_put_power(struct device *kdev,
+
+ /* Stop forcing CDCLK to 2*BCLK if no need for audio to be powered. */
+ if (--dev_priv->audio_power_refcount == 0)
+- if (INTEL_GEN(dev_priv) >= 10 || IS_GEMINILAKE(dev_priv))
++ if (IS_GEMINILAKE(dev_priv))
+ glk_force_audio_cdclk(dev_priv, false);
+
+ intel_display_power_put(dev_priv, POWER_DOMAIN_AUDIO, cookie);
+--
+2.25.0
+
diff --git a/libre/linux-libre-pae/0013-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch b/libre/linux-libre-pae/0011-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
index 0ba773d78..f5fde7db7 100644
--- a/libre/linux-libre-pae/0013-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
+++ b/libre/linux-libre-pae/0011-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
@@ -1,7 +1,7 @@
-From d50448859890faa92fa1ebb82ef914fb15957994 Mon Sep 17 00:00:00 2001
+From 93ca62c645759168768638e65d52452b4a9898a4 Mon Sep 17 00:00:00 2001
From: Boyan Ding <boyan.j.ding@gmail.com>
Date: Wed, 1 Jan 2020 11:44:49 -0800
-Subject: [PATCH 13/15] pinctrl: sunrisepoint: Add missing Interrupt Status
+Subject: [PATCH 11/15] pinctrl: sunrisepoint: Add missing Interrupt Status
register offset
Commit 179e5a6114cc ("pinctrl: intel: Remove default Interrupt Status
@@ -31,5 +31,5 @@ index 44d7f50bbc82..d936e7aa74c4 100644
.pin_base = (s), \
.npins = ((e) - (s) + 1), \
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0014-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch b/libre/linux-libre-pae/0012-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
index fb3b0da5a..7e00635a5 100644
--- a/libre/linux-libre-pae/0014-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
+++ b/libre/linux-libre-pae/0012-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
@@ -1,7 +1,7 @@
-From 78fe4d666ff244609c7d02bea07a22ce87e56326 Mon Sep 17 00:00:00 2001
+From 540f62738b8f3049e200a086cac75d14d289fae9 Mon Sep 17 00:00:00 2001
From: Mehmet Akif Tasova <makiftasova@gmail.com>
Date: Mon, 30 Dec 2019 15:48:16 +0200
-Subject: [PATCH 14/15] Revert "iwlwifi: mvm: fix scan config command size"
+Subject: [PATCH 12/15] Revert "iwlwifi: mvm: fix scan config command size"
Since v5.4-rc1 was released, iwlwifi started throwing errors when scan
commands were sent to the firmware with certain devices (depending on
@@ -44,5 +44,5 @@ index fcafa22ec6ce..8aa567d7912c 100644
cfg = kzalloc(cmd_size, GFP_KERNEL);
if (!cfg)
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0012-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch b/libre/linux-libre-pae/0012-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch
deleted file mode 100644
index 8fd379cc9..000000000
--- a/libre/linux-libre-pae/0012-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-From 390d0a67cecd44bbc52231f0e9ea93ccdb742568 Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Mon, 30 Dec 2019 11:15:30 +0000
-Subject: [PATCH 12/15] drm/i915/gt: Detect if we miss WaIdleLiteRestore
-
-In order to avoid confusing the HW, we must never submit an empty ring
-during lite-restore, that is we should always advance the RING_TAIL
-before submitting to stay ahead of the RING_HEAD.
-
-Normally this is prevented by keeping a couple of spare NOPs in the
-request->wa_tail so that on resubmission we can advance the tail. This
-relies on the request only being resubmitted once, which is the normal
-condition as it is seen once for ELSP[1] and then later in ELSP[0]. On
-preemption, the requests are unwound and the tail reset back to the
-normal end point (as we know the request is incomplete and therefore its
-RING_HEAD is even earlier).
-
-However, if this w/a should fail we would try and resubmit the request
-with the RING_TAIL already set to the location of this request's wa_tail
-potentially causing a GPU hang. We can spot when we do try and
-incorrectly resubmit without advancing the RING_TAIL and spare any
-embarrassment by forcing the context restore.
-
-In the case of preempt-to-busy, we leave the requests running on the HW
-while we unwind. As the ring is still live, we cannot rewind our
-rq->tail without forcing a reload so leave it set to rq->wa_tail and
-only force a reload if we resubmit after a lite-restore. (Normally, the
-forced reload will be a part of the preemption event.)
-
-Fixes: 22b7a426bbe1 ("drm/i915/execlists: Preempt-to-busy")
-Closes: https://gitlab.freedesktop.org/drm/intel/issues/673
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
-Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
-Cc: stable@vger.kernel.org
-Link: https://patchwork.freedesktop.org/patch/msgid/20191209023215.3519970-1-chris@chris-wilson.co.uk
-(cherry picked from commit 82c69bf58650e644c61aa2bf5100b63a1070fd2f)
----
- drivers/gpu/drm/i915/gt/intel_lrc.c | 42 ++++++++++++++---------------
- 1 file changed, 20 insertions(+), 22 deletions(-)
-
-diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
-index d564bfcab6a3..49ce15553e7b 100644
---- a/drivers/gpu/drm/i915/gt/intel_lrc.c
-+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
-@@ -471,12 +471,6 @@ lrc_descriptor(struct intel_context *ce, struct intel_engine_cs *engine)
- return desc;
- }
-
--static void unwind_wa_tail(struct i915_request *rq)
--{
-- rq->tail = intel_ring_wrap(rq->ring, rq->wa_tail - WA_TAIL_BYTES);
-- assert_ring_tail_valid(rq->ring, rq->tail);
--}
--
- static struct i915_request *
- __unwind_incomplete_requests(struct intel_engine_cs *engine)
- {
-@@ -495,7 +489,6 @@ __unwind_incomplete_requests(struct intel_engine_cs *engine)
- continue; /* XXX */
-
- __i915_request_unsubmit(rq);
-- unwind_wa_tail(rq);
-
- /*
- * Push the request back into the queue for later resubmission.
-@@ -650,13 +643,29 @@ execlists_schedule_out(struct i915_request *rq)
- i915_request_put(rq);
- }
-
--static u64 execlists_update_context(const struct i915_request *rq)
-+static u64 execlists_update_context(struct i915_request *rq)
- {
- struct intel_context *ce = rq->hw_context;
-- u64 desc;
-+ u64 desc = ce->lrc_desc;
-+ u32 tail;
-
-- ce->lrc_reg_state[CTX_RING_TAIL + 1] =
-- intel_ring_set_tail(rq->ring, rq->tail);
-+ /*
-+ * WaIdleLiteRestore:bdw,skl
-+ *
-+ * We should never submit the context with the same RING_TAIL twice
-+ * just in case we submit an empty ring, which confuses the HW.
-+ *
-+ * We append a couple of NOOPs (gen8_emit_wa_tail) after the end of
-+ * the normal request to be able to always advance the RING_TAIL on
-+ * subsequent resubmissions (for lite restore). Should that fail us,
-+ * and we try and submit the same tail again, force the context
-+ * reload.
-+ */
-+ tail = intel_ring_set_tail(rq->ring, rq->tail);
-+ if (unlikely(ce->lrc_reg_state[CTX_RING_TAIL + 1] == tail))
-+ desc |= CTX_DESC_FORCE_RESTORE;
-+ ce->lrc_reg_state[CTX_RING_TAIL + 1] = tail;
-+ rq->tail = rq->wa_tail;
-
- /*
- * Make sure the context image is complete before we submit it to HW.
-@@ -675,7 +684,6 @@ static u64 execlists_update_context(const struct i915_request *rq)
- */
- mb();
-
-- desc = ce->lrc_desc;
- ce->lrc_desc &= ~CTX_DESC_FORCE_RESTORE;
-
- return desc;
-@@ -1150,16 +1158,6 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
- if (!list_is_last(&last->sched.link,
- &engine->active.requests))
- return;
--
-- /*
-- * WaIdleLiteRestore:bdw,skl
-- * Apply the wa NOOPs to prevent
-- * ring:HEAD == rq:TAIL as we resubmit the
-- * request. See gen8_emit_fini_breadcrumb() for
-- * where we prepare the padding after the
-- * end of the request.
-- */
-- last->tail = last->wa_tail;
- }
- }
-
---
-2.24.1
-
diff --git a/libre/linux-libre-pae/0015-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch b/libre/linux-libre-pae/0013-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
index 00342f02d..39d3839b4 100644
--- a/libre/linux-libre-pae/0015-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
+++ b/libre/linux-libre-pae/0013-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
@@ -1,7 +1,7 @@
-From 195bb1762da1aa1c1beffe402353afd619ea7338 Mon Sep 17 00:00:00 2001
+From cce47515454675d9c82448e865b42570f9eabc39 Mon Sep 17 00:00:00 2001
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Sat, 4 Jan 2020 23:29:22 -0800
-Subject: [PATCH 15/15] e1000e: Revert "e1000e: Make watchdog use delayed work"
+Subject: [PATCH 13/15] e1000e: Revert "e1000e: Make watchdog use delayed work"
This reverts commit 59653e6497d16f7ac1d9db088f3959f57ee8c3db.
@@ -170,5 +170,5 @@ index d7d56e42a6aa..060daf66bf63 100644
cancel_work_sync(&adapter->tx_hwtstamp_work);
if (adapter->tx_hwtstamp_skb) {
--
-2.24.1
+2.25.0
diff --git a/libre/linux-libre-pae/0014-drm-amdgpu-Add-DC-feature-mask-to-disable-fractional.patch b/libre/linux-libre-pae/0014-drm-amdgpu-Add-DC-feature-mask-to-disable-fractional.patch
new file mode 100644
index 000000000..4c162d00b
--- /dev/null
+++ b/libre/linux-libre-pae/0014-drm-amdgpu-Add-DC-feature-mask-to-disable-fractional.patch
@@ -0,0 +1,80 @@
+From f247d4a6fe42acc60b775457e3c35b8289532590 Mon Sep 17 00:00:00 2001
+From: Leo Li <sunpeng.li@amd.com>
+Date: Mon, 21 Oct 2019 14:58:47 -0400
+Subject: [PATCH 14/15] drm/amdgpu: Add DC feature mask to disable fractional
+ pwm
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+[Why]
+
+Some LED panel drivers might not like fractional PWM. In such cases,
+backlight flickering may be observed.
+
+[How]
+
+Add a DC feature mask to disable fractional PWM, and associate it with
+the preexisting dc_config flag.
+
+The flag is only plumbed through the dmcu firmware, so plumb it through
+the driver path as well.
+
+To disable, add the following to the linux cmdline:
+amdgpu.dcfeaturemask=0x4
+
+Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204957
+Signed-off-by: Leo Li <sunpeng.li@amd.com>
+Reviewed-by: Anthony Koo <anthony.koo@amd.com>
+Tested-by: Lukáš Krejčí <lskrejci@gmail.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +++
+ drivers/gpu/drm/amd/display/dc/dce/dce_abm.c | 4 ++++
+ drivers/gpu/drm/amd/include/amd_shared.h | 1 +
+ 3 files changed, 8 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+index 4e9c15c409ba..25b72eb76add 100644
+--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+@@ -697,6 +697,9 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
+ if (amdgpu_dc_feature_mask & DC_MULTI_MON_PP_MCLK_SWITCH_MASK)
+ init_data.flags.multi_mon_pp_mclk_switch = true;
+
++ if (amdgpu_dc_feature_mask & DC_DISABLE_FRACTIONAL_PWM_MASK)
++ init_data.flags.disable_fractional_pwm = true;
++
+ init_data.flags.power_down_display_on_boot = true;
+
+ #ifdef CONFIG_DRM_AMD_DC_DCN2_0
+diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c b/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c
+index 7700a855d77c..698b84acc44f 100644
+--- a/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c
++++ b/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c
+@@ -404,6 +404,10 @@ static bool dce_abm_init_backlight(struct abm *abm)
+ /* Enable the backlight output */
+ REG_UPDATE(BL_PWM_CNTL, BL_PWM_EN, 1);
+
++ /* Disable fractional pwm if configured */
++ REG_UPDATE(BL_PWM_CNTL, BL_PWM_FRACTIONAL_EN,
++ abm->ctx->dc->config.disable_fractional_pwm ? 0 : 1);
++
+ /* Unlock group 2 backlight registers */
+ REG_UPDATE(BL_PWM_GRP1_REG_LOCK,
+ BL_PWM_GRP1_REG_LOCK, 0);
+diff --git a/drivers/gpu/drm/amd/include/amd_shared.h b/drivers/gpu/drm/amd/include/amd_shared.h
+index 8889aaceec60..5450ed762b7a 100644
+--- a/drivers/gpu/drm/amd/include/amd_shared.h
++++ b/drivers/gpu/drm/amd/include/amd_shared.h
+@@ -143,6 +143,7 @@ enum PP_FEATURE_MASK {
+ enum DC_FEATURE_MASK {
+ DC_FBC_MASK = 0x1,
+ DC_MULTI_MON_PP_MCLK_SWITCH_MASK = 0x2,
++ DC_DISABLE_FRACTIONAL_PWM_MASK = 0x4,
+ };
+
+ enum amd_dpm_forced_level;
+--
+2.25.0
+
diff --git a/libre/linux-libre-pae/0015-ptp-free-ptp-device-pin-descriptors-properly.patch b/libre/linux-libre-pae/0015-ptp-free-ptp-device-pin-descriptors-properly.patch
new file mode 100644
index 000000000..bfea18d4f
--- /dev/null
+++ b/libre/linux-libre-pae/0015-ptp-free-ptp-device-pin-descriptors-properly.patch
@@ -0,0 +1,50 @@
+From b89e9f6a3ec61a96b5abced31813ad043bda3827 Mon Sep 17 00:00:00 2001
+From: Vladis Dronov <vdronov@redhat.com>
+Date: Mon, 13 Jan 2020 14:00:09 +0100
+Subject: [PATCH 15/15] ptp: free ptp device pin descriptors properly
+
+There is a bug in ptp_clock_unregister(), where ptp_cleanup_pin_groups()
+first frees ptp->pin_{,dev_}attr, but then posix_clock_unregister() needs
+them to destroy a related sysfs device.
+
+These functions can not be just swapped, as posix_clock_unregister() frees
+ptp which is needed in the ptp_cleanup_pin_groups(). Fix this by calling
+ptp_cleanup_pin_groups() in ptp_clock_release(), right before ptp is freed.
+
+This makes this patch fix an UAF bug in a patch which fixes an UAF bug.
+
+Reported-by: Antti Laakso <antti.laakso@intel.com>
+Fixes: a33121e5487b ("ptp: fix the race between the release of ptp_clock and cdev")
+Link: https://lore.kernel.org/netdev/3d2bd09735dbdaf003585ca376b7c1e5b69a19bd.camel@intel.com/
+Signed-off-by: Vladis Dronov <vdronov@redhat.com>
+Acked-by: Richard Cochran <richardcochran@gmail.com>
+---
+ drivers/ptp/ptp_clock.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
+index 61fafe0374ce..b84f16bbd6f2 100644
+--- a/drivers/ptp/ptp_clock.c
++++ b/drivers/ptp/ptp_clock.c
+@@ -170,6 +170,7 @@ static void ptp_clock_release(struct device *dev)
+ {
+ struct ptp_clock *ptp = container_of(dev, struct ptp_clock, dev);
+
++ ptp_cleanup_pin_groups(ptp);
+ mutex_destroy(&ptp->tsevq_mux);
+ mutex_destroy(&ptp->pincfg_mux);
+ ida_simple_remove(&ptp_clocks_map, ptp->index);
+@@ -302,9 +303,8 @@ int ptp_clock_unregister(struct ptp_clock *ptp)
+ if (ptp->pps_source)
+ pps_unregister_source(ptp->pps_source);
+
+- ptp_cleanup_pin_groups(ptp);
+-
+ posix_clock_unregister(&ptp->clock);
++
+ return 0;
+ }
+ EXPORT_SYMBOL(ptp_clock_unregister);
+--
+2.25.0
+
diff --git a/libre/linux-libre-pae/PKGBUILD b/libre/linux-libre-pae/PKGBUILD
index 67ab20178..0e5f5309f 100644
--- a/libre/linux-libre-pae/PKGBUILD
+++ b/libre/linux-libre-pae/PKGBUILD
@@ -9,7 +9,7 @@ _replacesoldkernels=() # '%' gets replaced with kernel suffix
_replacesoldmodules=() # '%' gets replaced with kernel suffix
pkgbase=linux-libre-pae
-pkgver=5.4.10
+pkgver=5.4.13
pkgrel=1
pkgdesc='Linux-libre PAE (physical address extension)'
url='https://linux-libre.fsfla.org/'
@@ -39,18 +39,18 @@ source=(
0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch
0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch
- 0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch
- 0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
- 0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
- 0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
- 0008-x86-intel-Disable-HPET-on-Intel-Ice-Lake-platforms.patch
- 0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
- 0010-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch
- 0011-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch
- 0012-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch
- 0013-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
- 0014-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
- 0015-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
+ 0004-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
+ 0005-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
+ 0006-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
+ 0007-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
+ 0008-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch
+ 0009-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch
+ 0010-drm-i915-Limit-audio-CDCLK-2-BCLK-constraint-back-to.patch
+ 0011-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
+ 0012-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
+ 0013-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
+ 0014-drm-amdgpu-Add-DC-feature-mask-to-disable-fractional.patch
+ 0015-ptp-free-ptp-device-pin-descriptors-properly.patch
)
validpgpkeys=(
'474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva
@@ -58,7 +58,7 @@ validpgpkeys=(
)
sha512sums=('0d0915133864eb031adfc6700066147dcf3e768a50a31c39754950c95ef4fd322dc701cd50af49c403ef0325adfcb07e354d5e46c1be3dcdd719a7a55c963f37'
'SKIP'
- '0d1d0dea0096f2b7aba13575588dca533386afafbab8c238c478dea88ed3b8259d566a3798a19eed35dbb89d6687ba7d0da351b840f7207f9ca6267aba7b7ac0'
+ '42d6dce820e801297bc05fbe23296e44d803c31bf023e9a30c57a39e8f1b2506d1c54f403494b05ed711ca54c90abe1731c1e2cfd7b7f54e4c9c253fc06bdab6'
'SKIP'
'13cb5bc42542e7b8bb104d5f68253f6609e463b6799800418af33eb0272cc269aaa36163c3e6f0aacbdaaa1d05e2827a4a7c4a08a029238439ed08b89c564bb3'
'SKIP'
@@ -69,21 +69,21 @@ sha512sums=('0d0915133864eb031adfc6700066147dcf3e768a50a31c39754950c95ef4fd322dc
'63f3c3bfe27eb66391dfa2120193476f03cf668bbd9edf4b7cc5dcb8c53295b830ecb6afd10b9a89c190d7f02597529b484c22dbb849d221ef975af8db1d8049'
'02af4dd2a007e41db0c63822c8ab3b80b5d25646af1906dc85d0ad9bb8bbf5236f8e381d7f91cf99ed4b0978c50aee37cb9567cdeef65b7ec3d91b882852b1af'
'b8fe56e14006ab866970ddbd501c054ae37186ddc065bb869cf7d18db8c0d455118d5bda3255fb66a0dde38b544655cfe9040ffe46e41d19830b47959b2fb168'
- 'a5a50f2f8f008a2a7a36de1985bd0c8ad381cb127f1192955b2312d3a3c162ed3b803503d7efc8212b3d74b96a0c6fbb30d25e572b5c9d15147e40574cef4ad2'
- '07e8e5998418b91acab4a4403008f1bdca96f6cd09b284ffdcfa9f660b0a2241385bd535844329dc4933403222a4c84b5297dee2ee50899700acd065273b78d5'
- '96f6c1c374220660aa7a1fb600848fb89cfb70e5e17060ee2715a99358258f6eab6d56535e92bac1a7f9cbb110dadfad72755cb0ffbdf8484d8df3e9a8a5ecd4'
- '7f8b8bc6c0834319722e4dab7d10123b8e63cfb86da27f1e443eeba7946f54eae6d5f4417fab16b796cfd3190a3f69993502efd8d134c764abb5070375354907'
- '4a9d908900df9883cc7989d8b71a7cace4561e5881502a6415ac0809a700b0d0536a8034da166d48e075456ba07f060bfe02246eca7af4c21a3eac977de57913'
- 'aabb27bebfab538678cb5687918fec1ea54d04ea2c5d366e182aeebf4f9c183b661f89520628b5934e251b48afcad62c2d1253f0520102bd8a47dfa2e74227a9'
- '5045e58079d58e18cdadef3bb60ff4f565629008449c003452193c77396f5110d972dcdbea87e4193339a44072569e7910c89fef3cb4933de29a609189101184'
- 'a59470588e64e24c58a17f15ba5654dd35feba51a0649c331cf6f4361690a55890d2989abac6e58d147ef03756a2d5db91ceb75ac2d34a355c0c29e2b32bcfc3'
- '1c7d83f92714f1fd84372d2a793a287fdbcd604de0c7409609fbe6e95b459554e77287cbd2793b60756b98fafb938e55fd14dce65a05eeb9c66fabbb03fd40cf'
- 'f7e9635f42320f26e2cc21a7507dc9e497bf1a1939f6c6e76d4adc9850bd0c24036427553f454f5221d507e2c420f29c9a3e918a932a7f22fb4b7509add02a6c'
- '954241c5a9582f1d9e1ca462e4a2ec91c59d510bd3401691a31ac7f3335376342a554491a47591bf9f9289a8bab8d0e45dff7e09fcdd941702271a2c3e73e766'
- 'c1a431785f5b7357569bfb14322a0263c974d9f848f5e3bd62469f05fd5a9242ddd5ad47c5edb7588f92da8acfa83035f050f9b0036188f005e05b9e8a2876ab'
- '2fe2ee5cd26298d1bc126362f86b01d653d3f9d1592490497f08bea398a1fed5607c6875ecf2ad820f644f89a85d30f7fdbd9f306e670060e943c586646a3a2f'
- 'd83e48c9448f48ffe4f587b07dd88fbb7bf3d2137329ac0af734fdea2d0032dd6e76ccf19c26080e14e93856c63aff10cef7ec15acb1276213ac9b20882e9709'
- 'c4df83eb037dd58aba7ee8fc77bbcc95a27e0e0905e278821769f3a7790c3cdff726333a8014dd223d7c74d4ce2713df29f647c94014438c128e1009d66c37d6')
+ '138a96b70f55868ffad027cded2f6b2cb21f2db5564125e25be0c79105520e69a5123351b30c0d7d3ef91694ae95f27dc9f4ac2f07b2ded3c4606cf0ede26a87'
+ 'da6d11f6a6ecd350d8ab2ce00f0224275388217be944ee21fe2e380305e20412cb510092676ee9c9de385f01576f5e0b74483de9ed2f4b7a1a0cdbb0843b4f58'
+ '8689716f1dd249f8bd715bd0b515d935344a1666e903bfe04283a1df4b7f8902e99cd84ef895b6b8becdebac652bfcdc5dcdb50f6a8e40f0280a43431a09a8ed'
+ '55d6cd3e450bedb140bdeefb99833694ceb42adf4368f46e1b9626d16c58877f7481fdfb556caebdd3597c85326e2a97dd37117e7a9b12b7c1ebd17a5765ca7f'
+ '51e50e5d84ed2987f658fceba7a97e984185d01a1636ca152e886595365676ba1f20ec022ea73e3c0a367acec6b568ce3d413c2267888fd5227a4f0f397e111e'
+ '8a96aab6660367f88eb9d577fc1a8abcb43936209778c0b1ccc6d07b961fecd7b1423c4269e9edcbcc218450144f4454b0649387077ae771d9e1e5842ad7f01c'
+ '4fed5ae4b0b34ddfd42143b0d27b1e73ed00f961767ef8da028ef4e82455215d9717516ca5f237560e751c571720b43db1b815e0f256d95da109b26158f8aac5'
+ '6aeac41670386d816fc2949313c8a67e283fdc8c106c01406e2d67b2cb921bc663723439fb4f1b949ef73b1606c073b1b7cdc2965890aa60959b04b846961318'
+ '6c84c33e5844c9a35c4c30ed9d886c0bea5c4e01ab9c873c9fe44e6470ee34650e9ca0c8c0476edfdf13c74ed92b2630f9fcb9b58cb010664d57f27f46d141b4'
+ '1f9c3c7e01f5ccb35026c9c3bf1376bc36cdd74314cec97b0490cc1a8e50e8d99653823df2f0a3a84e98dcbe3ea28cbe022c91506a7c6f9252225d1b048db9a9'
+ '7c576cb3aa16852772fc1eda6f6b5cec40d47404c71d4bfa2f1806cc84bdbedbbb55de112c073e3b05b02bb5c37aef8f0b65eb9c27fef7d005533d2cd5192c0c'
+ '73f0e2e7723f3dd25fab58b13356c0c48e2814835b94473a3ed3c1ab77dd1b7ead9578d3d19b6662a651e020a3b0937e3445492495bc32e8d5aaf80289c82c95'
+ 'b107c6a933c6c8749c84200f1ddd160e332ff0b60c68a8be45a2c55b32db2939c2a2464c9feaab07f240c038a7e31ee64788ac5bb1a46b5bc217bf720b9b0157'
+ 'b01b673bbedbcd7d528046777b387db0a3f14067443001c6bb2dcb5c0787bc119234a92df4b1bdb5a1e2765bb15c8dc226bbda3b57c3d4e679264c5874c48d88'
+ 'ae194a07fa791c1c221690880f7f61e6c7096f26951c9f51699a8ceaebc2c1a2a3e750b81b2926465eb55d5fc3c63c9ab911b120f105c1abfbe6a4038d40f500')
_replacesarchkernel=("${_replacesarchkernel[@]/\%/${pkgbase#linux-libre}}")
_replacesoldkernels=("${_replacesoldkernels[@]/\%/${pkgbase#linux-libre}}")
@@ -97,15 +97,15 @@ prepare() {
cd $_srcname
if [ "${_srcname##*-}" != "$pkgver" ]; then
- msg2 "Applying upstream patch..."
- patch -Np1 -i ../patch-${_srcname##*-}-gnu-$pkgver-gnu
+ echo "Applying upstream patch..."
+ patch -Np1 < ../patch-${_srcname##*-}-gnu-$pkgver-gnu
fi
- msg2 "Adding freedo as boot logo..."
+ echo "Adding freedo as boot logo..."
install -m644 -t drivers/video/logo \
../logo_linux_{clut224.ppm,vga16.ppm,mono.pbm}
- msg2 "Setting version..."
+ echo "Setting version..."
scripts/setlocalversion --save-scmversion
echo "-$pkgrel" > localversion.10-pkgrel
echo "${pkgbase#linux-libre}" > localversion.20-pkgname
@@ -115,16 +115,16 @@ prepare() {
src="${src%%::*}"
src="${src##*/}"
[[ $src = *.patch ]] || continue
- msg2 "Applying patch $src..."
+ echo "Applying patch $src..."
patch -Np1 < "../$src"
done
- msg2 "Setting config..."
+ echo "Setting config..."
cp ../config .config
make olddefconfig
make -s kernelrelease > version
- msg2 "Prepared %s version %s" "$pkgbase" "$(<version)"
+ echo "Prepared %s version %s" "$pkgbase" "$(<version)"
}
build() {
@@ -145,7 +145,7 @@ _package() {
local kernver="$(<version)"
local modulesdir="$pkgdir/usr/lib/modules/$kernver"
- msg2 "Installing boot image..."
+ echo "Installing boot image..."
# systemd expects to find the kernel here to allow hibernation
# https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344
install -Dm644 "$(make -s image_name)" "$modulesdir/vmlinuz"
@@ -153,13 +153,13 @@ _package() {
# Used by mkinitcpio to name the kernel
echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
- msg2 "Installing modules..."
+ echo "Installing modules..."
make INSTALL_MOD_PATH="$pkgdir/usr" modules_install
# remove build and source links
rm "$modulesdir"/{source,build}
- msg2 "Fixing permissions..."
+ echo "Fixing permissions..."
chmod -Rc u=rwX,go=rX "$pkgdir"
}
@@ -172,7 +172,7 @@ _package-headers() {
cd $_srcname
local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
- msg2 "Installing build files..."
+ echo "Installing build files..."
install -Dt "$builddir" -m644 .config Makefile Module.symvers System.map \
localversion.* version vmlinux
install -Dt "$builddir/kernel" -m644 kernel/Makefile
@@ -183,7 +183,7 @@ _package-headers() {
# add xfs and shmem for aufs building
mkdir -p "$builddir"/{fs/xfs,mm}
- msg2 "Installing headers..."
+ echo "Installing headers..."
cp -t "$builddir" -a include
cp -t "$builddir/arch/x86" -a arch/x86/include
install -Dt "$builddir/arch/x86/kernel" -m644 arch/x86/kernel/asm-offsets.s
@@ -199,10 +199,10 @@ _package-headers() {
install -Dt "$builddir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
install -Dt "$builddir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
- msg2 "Installing KConfig files..."
+ echo "Installing KConfig files..."
find . -name 'Kconfig*' -exec install -Dm644 {} "$builddir/{}" \;
- msg2 "Removing unneeded architectures..."
+ echo "Removing unneeded architectures..."
local arch
for arch in "$builddir"/arch/*/; do
[[ $arch = */x86/ ]] && continue
@@ -210,16 +210,16 @@ _package-headers() {
rm -r "$arch"
done
- msg2 "Removing documentation..."
+ echo "Removing documentation..."
rm -r "$builddir/Documentation"
- msg2 "Removing broken symlinks..."
+ echo "Removing broken symlinks..."
find -L "$builddir" -type l -printf 'Removing %P\n' -delete
- msg2 "Removing loose objects..."
+ echo "Removing loose objects..."
find "$builddir" -type f -name '*.o' -printf 'Removing %P\n' -delete
- msg2 "Stripping build tools..."
+ echo "Stripping build tools..."
local file
while read -rd '' file; do
case "$(file -bi "$file")" in
@@ -234,11 +234,11 @@ _package-headers() {
esac
done < <(find "$builddir" -type f -perm -u+x ! -name vmlinux -print0)
- msg2 "Adding symlink..."
+ echo "Adding symlink..."
mkdir -p "$pkgdir/usr/src"
ln -sr "$builddir" "$pkgdir/usr/src/$pkgbase"
- msg2 "Fixing permissions..."
+ echo "Fixing permissions..."
chmod -Rc u=rwX,go=rX "$pkgdir"
}
@@ -251,7 +251,7 @@ _package-docs() {
cd $_srcname
local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
- msg2 "Installing documentation..."
+ echo "Installing documentation..."
local src dst
while read -rd '' src; do
dst="${src#Documentation/}"
@@ -259,11 +259,11 @@ _package-docs() {
install -Dm644 "$src" "$dst"
done < <(find Documentation -name '.*' -prune -o ! -type d -print0)
- msg2 "Adding symlink..."
+ echo "Adding symlink..."
mkdir -p "$pkgdir/usr/share/doc"
ln -sr "$builddir/Documentation" "$pkgdir/usr/share/doc/$pkgbase"
- msg2 "Fixing permissions..."
+ echo "Fixing permissions..."
chmod -Rc u=rwX,go=rX "$pkgdir"
}