summaryrefslogtreecommitdiff
path: root/libre-testing
diff options
context:
space:
mode:
authorDavid P <megver83@parabola.nu>2020-01-18 12:24:17 -0300
committerDavid P <megver83@parabola.nu>2020-01-18 12:24:17 -0300
commitf798bb419dbef10358ef9d8365e7d592e9a055ea (patch)
treeb473ea4df7af4c1bc5cdc104af396bfb56040e65 /libre-testing
parent6723e044157885de4b420ba95f5e4e171ae5ebf6 (diff)
updpkg: libre-testing/linux-libre-cros 5.4.11-1
Signed-off-by: David P <megver83@parabola.nu>
Diffstat (limited to 'libre-testing')
-rw-r--r--libre-testing/linux-libre-cros/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch8
-rw-r--r--libre-testing/linux-libre-cros/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch6
-rw-r--r--libre-testing/linux-libre-cros/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch6
-rw-r--r--libre-testing/linux-libre-cros/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch6
-rw-r--r--libre-testing/linux-libre-cros/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch6
-rw-r--r--libre-testing/linux-libre-cros/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch6
-rw-r--r--libre-testing/linux-libre-cros/0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch36
-rw-r--r--libre-testing/linux-libre-cros/0011-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch129
-rw-r--r--libre-testing/linux-libre-cros/0012-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch35
-rw-r--r--libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch48
-rw-r--r--libre-testing/linux-libre-cros/0014-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch174
-rw-r--r--libre-testing/linux-libre-cros/PKGBUILD40
-rw-r--r--libre-testing/linux-libre-cros/config63
-rw-r--r--libre-testing/linux-libre-cros/linux-libre-cros.install11
14 files changed, 510 insertions, 64 deletions
diff --git a/libre-testing/linux-libre-cros/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch b/libre-testing/linux-libre-cros/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
index 792ee6feb..ac423cada 100644
--- a/libre-testing/linux-libre-cros/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
+++ b/libre-testing/linux-libre-cros/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
@@ -1,7 +1,7 @@
-From ad4dbce36dd2083de69815f613342257535f6274 Mon Sep 17 00:00:00 2001
+From aa6f1974af2dfd6aa8acaefd72036a8b451d15d6 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 1/6] ZEN: Add sysctl and CONFIG to disallow unprivileged
+Subject: [PATCH 01/14] ZEN: Add sysctl and CONFIG to disallow unprivileged
CLONE_NEWUSER
Our default behavior continues to match the vanilla kernel.
@@ -80,7 +80,7 @@ index 6cabc124378c..fda4986da9eb 100644
if (err)
goto bad_unshare_out;
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
-index b6f2f35d0bcf..2e9c273990e8 100644
+index 70665934d53e..9797869ed829 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -110,6 +110,9 @@ extern int core_uses_pid;
@@ -128,5 +128,5 @@ index 8eadadc478f9..c36ecd19562c 100644
static DEFINE_MUTEX(userns_state_mutex);
--
-2.24.1
+2.25.0
diff --git a/libre-testing/linux-libre-cros/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch b/libre-testing/linux-libre-cros/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch
index c5b45a1c8..d3363291e 100644
--- a/libre-testing/linux-libre-cros/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch
+++ b/libre-testing/linux-libre-cros/0002-lib-devres-add-a-helper-function-for-ioremap_uc.patch
@@ -1,7 +1,7 @@
-From 5925138606a245d43d8a6db47b754cea6f6049ae Mon Sep 17 00:00:00 2001
+From 7fbd1ff7b5d08260098c55ab116c23727844d522 Mon Sep 17 00:00:00 2001
From: Tuowen Zhao <ztuowen@gmail.com>
Date: Wed, 16 Oct 2019 15:06:28 -0600
-Subject: [PATCH 2/6] lib: devres: add a helper function for ioremap_uc
+Subject: [PATCH 02/14] lib: devres: add a helper function for ioremap_uc
Implement a resource managed strongly uncachable ioremap function.
@@ -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-testing/linux-libre-cros/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch b/libre-testing/linux-libre-cros/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch
index 8dcd2ad1a..8041c279d 100644
--- a/libre-testing/linux-libre-cros/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch
+++ b/libre-testing/linux-libre-cros/0003-mfd-intel-lpss-Use-devm_ioremap_uc-for-MMIO.patch
@@ -1,7 +1,7 @@
-From 3cec19068653e77d311382d7467728f5d424d4a3 Mon Sep 17 00:00:00 2001
+From 80f53f7d91081d11ecfcc19015f93cafec59adc2 Mon Sep 17 00:00:00 2001
From: Tuowen Zhao <ztuowen@gmail.com>
Date: Wed, 16 Oct 2019 15:06:29 -0600
-Subject: [PATCH 3/6] mfd: intel-lpss: Use devm_ioremap_uc for MMIO
+Subject: [PATCH 03/14] mfd: intel-lpss: Use devm_ioremap_uc for MMIO
Some BIOS erroneously specifies write-combining BAR for intel-lpss-pci
in MTRR. This will cause the system to hang during boot. If possible,
@@ -44,5 +44,5 @@ index bfe4ff337581..b0f0781a6b9c 100644
if (!lpss->priv)
return -ENOMEM;
--
-2.24.1
+2.25.0
diff --git a/libre-testing/linux-libre-cros/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch b/libre-testing/linux-libre-cros/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch
index 570983bb3..25bd79077 100644
--- a/libre-testing/linux-libre-cros/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch
+++ b/libre-testing/linux-libre-cros/0004-PCI-pciehp-Do-not-disable-interrupt-twice-on-suspend.patch
@@ -1,7 +1,7 @@
-From 271c8fe698d3ba5b3b135ffacfd1dc0c87243e32 Mon Sep 17 00:00:00 2001
+From 874a41206f38028c52fb7d28d0cfcdee5febb495 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 4/6] PCI: pciehp: Do not disable interrupt twice on suspend
+Subject: [PATCH 04/14] 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
@@ -95,5 +95,5 @@ index b3122c151b80..56daad828c9e 100644
#endif /* PM */
};
--
-2.24.1
+2.25.0
diff --git a/libre-testing/linux-libre-cros/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch b/libre-testing/linux-libre-cros/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
index 3ac640caf..d0a364590 100644
--- a/libre-testing/linux-libre-cros/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
+++ b/libre-testing/linux-libre-cros/0005-PCI-pciehp-Prevent-deadlock-on-disconnect.patch
@@ -1,7 +1,7 @@
-From 8d032e7fc1d1d37974785ccdb994524d60201ca3 Mon Sep 17 00:00:00 2001
+From a062a328c43d18ce2f183ab3ad69e6da032feeb2 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 5/6] PCI: pciehp: Prevent deadlock on disconnect
+Subject: [PATCH 05/14] 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-testing/linux-libre-cros/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch b/libre-testing/linux-libre-cros/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
index c5b27c966..9fc0360c1 100644
--- a/libre-testing/linux-libre-cros/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
+++ b/libre-testing/linux-libre-cros/0006-ACPI-PM-s2idle-Rework-ACPI-events-synchronization.patch
@@ -1,7 +1,7 @@
-From 9888be9033e8e79a055df2ae8d388baf5970f83b Mon Sep 17 00:00:00 2001
+From 1706504ce96ddff9f2155467707f4e39e4f9acb1 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 6/6] ACPI: PM: s2idle: Rework ACPI events synchronization
+Subject: [PATCH 06/14] 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-testing/linux-libre-cros/0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch b/libre-testing/linux-libre-cros/0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
new file mode 100644
index 000000000..8ca15f181
--- /dev/null
+++ b/libre-testing/linux-libre-cros/0007-iwlwifi-pcie-restore-support-for-Killer-Qu-C0-NICs.patch
@@ -0,0 +1,36 @@
+From a8225afcc3df821f990d024090fbd4e9c84900a7 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/14] 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
+C0 detection were lost. These lines were added by commit b9500577d361.
+
+I suspect this is more of the "merge damage" which commit 7cded5658329
+talks about.
+
+Fixes: 809805a820c6 ("iwlwifi: pcie: move some cfg mangling from trans_pcie_alloc to probe")
+Signed-off-by: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+---
+ drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+index b0b7eca1754e..de62a6dc4e73 100644
+--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
++++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+@@ -1107,6 +1107,10 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
+ cfg = &iwl9560_2ac_cfg_qu_c0_jf_b0;
+ else if (cfg == &iwl9560_2ac_160_cfg_qu_b0_jf_b0)
+ cfg = &iwl9560_2ac_160_cfg_qu_c0_jf_b0;
++ else if (cfg == &killer1650s_2ax_cfg_qu_b0_hr_b0)
++ cfg = &killer1650s_2ax_cfg_qu_c0_hr_b0;
++ else if (cfg == &killer1650i_2ax_cfg_qu_b0_hr_b0)
++ cfg = &killer1650i_2ax_cfg_qu_c0_hr_b0;
+ }
+
+ /* same thing for QuZ... */
+--
+2.25.0
+
diff --git a/libre-testing/linux-libre-cros/0011-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch b/libre-testing/linux-libre-cros/0011-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch
new file mode 100644
index 000000000..d96470a37
--- /dev/null
+++ b/libre-testing/linux-libre-cros/0011-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch
@@ -0,0 +1,129 @@
+From 2b2a5485e24df06dcac771fbe169e26236d2a75f 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 11/14] 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.25.0
+
diff --git a/libre-testing/linux-libre-cros/0012-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch b/libre-testing/linux-libre-cros/0012-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
new file mode 100644
index 000000000..42e5e03c0
--- /dev/null
+++ b/libre-testing/linux-libre-cros/0012-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
@@ -0,0 +1,35 @@
+From a5f880ae74a3317bc47838db8715c5b0e6fd156c 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 12/14] pinctrl: sunrisepoint: Add missing Interrupt Status
+ register offset
+
+Commit 179e5a6114cc ("pinctrl: intel: Remove default Interrupt Status
+offset") removes default interrupt status offset of GPIO controllers,
+with previous commits explicitly providing the previously default
+offsets. However, the is_offset value in SPTH_COMMUNITY is missing,
+preventing related irq from being properly detected and handled.
+
+Fixes: f702e0b93cdb ("pinctrl: sunrisepoint: Provide Interrupt Status register offset")
+Link: https://bugzilla.kernel.org/show_bug.cgi?id=205745
+Cc: stable@vger.kernel.org
+Signed-off-by: Boyan Ding <boyan.j.ding@gmail.com>
+---
+ drivers/pinctrl/intel/pinctrl-sunrisepoint.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/pinctrl/intel/pinctrl-sunrisepoint.c b/drivers/pinctrl/intel/pinctrl-sunrisepoint.c
+index 44d7f50bbc82..d936e7aa74c4 100644
+--- a/drivers/pinctrl/intel/pinctrl-sunrisepoint.c
++++ b/drivers/pinctrl/intel/pinctrl-sunrisepoint.c
+@@ -49,6 +49,7 @@
+ .padown_offset = SPT_PAD_OWN, \
+ .padcfglock_offset = SPT_PADCFGLOCK, \
+ .hostown_offset = SPT_HOSTSW_OWN, \
++ .is_offset = SPT_GPI_IS, \
+ .ie_offset = SPT_GPI_IE, \
+ .pin_base = (s), \
+ .npins = ((e) - (s) + 1), \
+--
+2.25.0
+
diff --git a/libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch b/libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
new file mode 100644
index 000000000..7e7306c5b
--- /dev/null
+++ b/libre-testing/linux-libre-cros/0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
@@ -0,0 +1,48 @@
+From bb8bf48f4e9ab555fe824358d8d01da52f7d8255 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 13/14] 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
+the OTP burned in the device, which contains the list of available
+channels). For instance:
+
+iwlwifi 0000:00:14.3: FW error in SYNC CMD SCAN_CFG_CMD
+
+This bug was reported in the ArchLinux bug tracker:
+https://bugs.archlinux.org/task/64703
+
+And also in a specific case in bugzilla, when the lar_disabled option
+was set: https://bugzilla.kernel.org/show_bug.cgi?id=205193
+
+Revert the commit that introduced this error, by using the number of
+channels from the OTP instead of the number of channels that is
+specified in the FW TLV that tells us how many channels it supports.
+
+This reverts commit 06eb547c4ae4382e70d556ba213d13c95ca1801b.
+
+Cc: stable@vger.kernel.org # v5.4+
+Signed-off-by: Mehmet Akif Tasova <makiftasova@gmail.com>
+[ Luca: reworded the commit message a bit. ]
+Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
+---
+ drivers/net/wireless/intel/iwlwifi/mvm/scan.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/scan.c b/drivers/net/wireless/intel/iwlwifi/mvm/scan.c
+index fcafa22ec6ce..8aa567d7912c 100644
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/scan.c
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/scan.c
+@@ -1220,7 +1220,7 @@ static int iwl_mvm_legacy_config_scan(struct iwl_mvm *mvm)
+ cmd_size = sizeof(struct iwl_scan_config_v2);
+ else
+ cmd_size = sizeof(struct iwl_scan_config_v1);
+- cmd_size += num_channels;
++ cmd_size += mvm->fw->ucode_capa.n_scan_channels;
+
+ cfg = kzalloc(cmd_size, GFP_KERNEL);
+ if (!cfg)
+--
+2.25.0
+
diff --git a/libre-testing/linux-libre-cros/0014-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch b/libre-testing/linux-libre-cros/0014-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
new file mode 100644
index 000000000..3dc88abba
--- /dev/null
+++ b/libre-testing/linux-libre-cros/0014-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
@@ -0,0 +1,174 @@
+From ddd410cff71ff21a64d66039f30e197314e18e23 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 14/14] e1000e: Revert "e1000e: Make watchdog use delayed work"
+
+This reverts commit 59653e6497d16f7ac1d9db088f3959f57ee8c3db.
+
+This is due to this commit causing driver crashes and connections to
+reset unexpectedly.
+
+Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
+---
+ drivers/net/ethernet/intel/e1000e/e1000.h | 5 +-
+ drivers/net/ethernet/intel/e1000e/netdev.c | 54 ++++++++++------------
+ 2 files changed, 27 insertions(+), 32 deletions(-)
+
+diff --git a/drivers/net/ethernet/intel/e1000e/e1000.h b/drivers/net/ethernet/intel/e1000e/e1000.h
+index 6c51b1bad8c4..37a2314d3e6b 100644
+--- a/drivers/net/ethernet/intel/e1000e/e1000.h
++++ b/drivers/net/ethernet/intel/e1000e/e1000.h
+@@ -185,13 +185,12 @@ struct e1000_phy_regs {
+
+ /* board specific private data structure */
+ struct e1000_adapter {
++ struct timer_list watchdog_timer;
+ struct timer_list phy_info_timer;
+ struct timer_list blink_timer;
+
+ struct work_struct reset_task;
+- struct delayed_work watchdog_task;
+-
+- struct workqueue_struct *e1000_workqueue;
++ struct work_struct watchdog_task;
+
+ const struct e1000_info *ei;
+
+diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c
+index d7d56e42a6aa..060daf66bf63 100644
+--- a/drivers/net/ethernet/intel/e1000e/netdev.c
++++ b/drivers/net/ethernet/intel/e1000e/netdev.c
+@@ -1780,8 +1780,7 @@ static irqreturn_t e1000_intr_msi(int __always_unused irq, void *data)
+ }
+ /* guard against interrupt when we're going down */
+ if (!test_bit(__E1000_DOWN, &adapter->state))
+- mod_delayed_work(adapter->e1000_workqueue,
+- &adapter->watchdog_task, HZ);
++ mod_timer(&adapter->watchdog_timer, jiffies + 1);
+ }
+
+ /* Reset on uncorrectable ECC error */
+@@ -1861,8 +1860,7 @@ static irqreturn_t e1000_intr(int __always_unused irq, void *data)
+ }
+ /* guard against interrupt when we're going down */
+ if (!test_bit(__E1000_DOWN, &adapter->state))
+- mod_delayed_work(adapter->e1000_workqueue,
+- &adapter->watchdog_task, HZ);
++ mod_timer(&adapter->watchdog_timer, jiffies + 1);
+ }
+
+ /* Reset on uncorrectable ECC error */
+@@ -1907,8 +1905,7 @@ static irqreturn_t e1000_msix_other(int __always_unused irq, void *data)
+ hw->mac.get_link_status = true;
+ /* guard against interrupt when we're going down */
+ if (!test_bit(__E1000_DOWN, &adapter->state))
+- mod_delayed_work(adapter->e1000_workqueue,
+- &adapter->watchdog_task, HZ);
++ mod_timer(&adapter->watchdog_timer, jiffies + 1);
+ }
+
+ if (!test_bit(__E1000_DOWN, &adapter->state))
+@@ -4281,6 +4278,7 @@ void e1000e_down(struct e1000_adapter *adapter, bool reset)
+
+ napi_synchronize(&adapter->napi);
+
++ del_timer_sync(&adapter->watchdog_timer);
+ del_timer_sync(&adapter->phy_info_timer);
+
+ spin_lock(&adapter->stats64_lock);
+@@ -5152,11 +5150,25 @@ static void e1000e_check_82574_phy_workaround(struct e1000_adapter *adapter)
+ }
+ }
+
++/**
++ * e1000_watchdog - Timer Call-back
++ * @data: pointer to adapter cast into an unsigned long
++ **/
++static void e1000_watchdog(struct timer_list *t)
++{
++ struct e1000_adapter *adapter = from_timer(adapter, t, watchdog_timer);
++
++ /* Do the rest outside of interrupt context */
++ schedule_work(&adapter->watchdog_task);
++
++ /* TODO: make this use queue_delayed_work() */
++}
++
+ static void e1000_watchdog_task(struct work_struct *work)
+ {
+ struct e1000_adapter *adapter = container_of(work,
+ struct e1000_adapter,
+- watchdog_task.work);
++ watchdog_task);
+ struct net_device *netdev = adapter->netdev;
+ struct e1000_mac_info *mac = &adapter->hw.mac;
+ struct e1000_phy_info *phy = &adapter->hw.phy;
+@@ -5404,9 +5416,8 @@ static void e1000_watchdog_task(struct work_struct *work)
+
+ /* Reset the timer */
+ if (!test_bit(__E1000_DOWN, &adapter->state))
+- queue_delayed_work(adapter->e1000_workqueue,
+- &adapter->watchdog_task,
+- round_jiffies(2 * HZ));
++ mod_timer(&adapter->watchdog_timer,
++ round_jiffies(jiffies + 2 * HZ));
+ }
+
+ #define E1000_TX_FLAGS_CSUM 0x00000001
+@@ -7259,21 +7270,11 @@ static int e1000_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
+ goto err_eeprom;
+ }
+
+- adapter->e1000_workqueue = alloc_workqueue("%s", WQ_MEM_RECLAIM, 0,
+- e1000e_driver_name);
+-
+- if (!adapter->e1000_workqueue) {
+- err = -ENOMEM;
+- goto err_workqueue;
+- }
+-
+- INIT_DELAYED_WORK(&adapter->watchdog_task, e1000_watchdog_task);
+- queue_delayed_work(adapter->e1000_workqueue, &adapter->watchdog_task,
+- 0);
+-
++ timer_setup(&adapter->watchdog_timer, e1000_watchdog, 0);
+ timer_setup(&adapter->phy_info_timer, e1000_update_phy_info, 0);
+
+ INIT_WORK(&adapter->reset_task, e1000_reset_task);
++ INIT_WORK(&adapter->watchdog_task, e1000_watchdog_task);
+ INIT_WORK(&adapter->downshift_task, e1000e_downshift_workaround);
+ INIT_WORK(&adapter->update_phy_task, e1000e_update_phy_task);
+ INIT_WORK(&adapter->print_hang_task, e1000_print_hw_hang);
+@@ -7367,9 +7368,6 @@ static int e1000_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
+ return 0;
+
+ err_register:
+- flush_workqueue(adapter->e1000_workqueue);
+- destroy_workqueue(adapter->e1000_workqueue);
+-err_workqueue:
+ if (!(adapter->flags & FLAG_HAS_AMT))
+ e1000e_release_hw_control(adapter);
+ err_eeprom:
+@@ -7416,17 +7414,15 @@ static void e1000_remove(struct pci_dev *pdev)
+ */
+ if (!down)
+ set_bit(__E1000_DOWN, &adapter->state);
++ del_timer_sync(&adapter->watchdog_timer);
+ del_timer_sync(&adapter->phy_info_timer);
+
+ cancel_work_sync(&adapter->reset_task);
++ cancel_work_sync(&adapter->watchdog_task);
+ cancel_work_sync(&adapter->downshift_task);
+ cancel_work_sync(&adapter->update_phy_task);
+ cancel_work_sync(&adapter->print_hang_task);
+
+- cancel_delayed_work(&adapter->watchdog_task);
+- flush_workqueue(adapter->e1000_workqueue);
+- destroy_workqueue(adapter->e1000_workqueue);
+-
+ if (adapter->flags & FLAG_HAS_HW_TIMESTAMP) {
+ cancel_work_sync(&adapter->tx_hwtstamp_work);
+ if (adapter->tx_hwtstamp_skb) {
+--
+2.25.0
+
diff --git a/libre-testing/linux-libre-cros/PKGBUILD b/libre-testing/linux-libre-cros/PKGBUILD
index b2675b305..94f8fab8f 100644
--- a/libre-testing/linux-libre-cros/PKGBUILD
+++ b/libre-testing/linux-libre-cros/PKGBUILD
@@ -5,12 +5,11 @@ _replacesoldkernels=() # '%' gets replaced with kernel suffix
_replacesoldmodules=() # '%' gets replaced with kernel suffix
pkgbase=linux-libre-cros
-pkgver=5.4.6
+pkgver=5.4.11
pkgrel=1
pkgdesc='Linux-libre (Veyron Chromebooks)'
-rcnver=5.4.5
-rcnrel=armv7-x13
-url='https://git.parabola.nu/~megver83/cros-kernel.git'
+_srctag=v$pkgver-gnu
+url="https://git.parabola.nu/~megver83/cros-kernel.git/log/?h=$_srctag"
arch=(armv7h)
license=(GPL2)
makedepends=(
@@ -22,7 +21,7 @@ makedepends=(
options=('!strip')
_srcname=cros-kernel
source=(
- "git+$url?signed#tag=v$pkgver-gnu"
+ "git+https://git.parabola.nu/~megver83/cros-kernel.git?signed#tag=$_srctag"
"https://repo.parabola.nu/other/linux-libre/logos/logo_linux_"{clut224.ppm,vga16.ppm,mono.pbm}{,.sig}
config # the main kernel config files
linux.preset # preset file for mkinitcpio ramdisk
@@ -42,9 +41,15 @@ source=(
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-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
+ #0009-drm-i915-Fix-audio-power-up-sequence-for-gen10-displ.patch
+ #0010-drm-i915-extend-audio-CDCLK-2-BCLK-constraint-to-mor.patch
+ 0011-drm-i915-gt-Detect-if-we-miss-WaIdleLiteRestore.patch
+ 0012-pinctrl-sunrisepoint-Add-missing-Interrupt-Status-re.patch
+ 0013-Revert-iwlwifi-mvm-fix-scan-config-command-size.patch
+ 0014-e1000e-Revert-e1000e-Make-watchdog-use-delayed-work.patch
- # RCN patch (CM3 firmware deblobbed and bloatware removed)
- "https://repo.parabola.nu/other/rcn-libre/patches/$rcnver/rcn-libre-$rcnver-$rcnrel.patch"{,.sig}
# Arch Linux ARM patches
0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch
0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch
@@ -66,21 +71,24 @@ sha512sums=('SKIP'
'SKIP'
'267295aa0cea65684968420c68b32f1a66a22d018b9d2b2c1ef14267bcf4cb68aaf7099d073cbfefe6c25c8608bdcbbd45f7ac8893fdcecbf1e621abdfe9ecc1'
'SKIP'
- 'a777070b3b52084a8ef49b7617581c0d5459f08452ff73616930e6f15c2ffac64faeb445a2fe7b1ec5e91088ef880f0a7e09bb91efc20c20303e418cd0bb698c'
+ '23d68ec52bf124d336c3357afd3405ae5904d0b3d48bdc10cbe0948dc8c1cd9152653cbc2ebe8c4d0240498e85f5ccd966878aa3a17c5fadf74dbde742df348d'
'f01e7925b262d2874a8a991b1f27d057356a2a384d2012b61be5a631d4e4d7cf87461c8fb9e7f183831f5a829ad204897f1f0545a52df6288a0e04a5c2e31b96'
'167bc73c6c1c63931806238905dc44c7d87c5a5c0f6293159f2133dfe717fb44081018d810675716d1605ec7dff5e8333b87b19e09e2de21d0448e447437873b'
'bb6718984a7357c9b00c37e4788480e5b8b75018c172ecc1441bc3fc5d2d42444eb5d8c7f9d2e3a7d6fed6d03acb565e3c0559486e494c40a7fe6bd0570c9ede'
'143dea30c6da00e504c99984a98a0eb2411f558fcdd9dfa7f607d6c14e9e7dffff9cb00121d9317044b07e3e210808286598c785ee854084b993ec9cb14d8232'
'02af4dd2a007e41db0c63822c8ab3b80b5d25646af1906dc85d0ad9bb8bbf5236f8e381d7f91cf99ed4b0978c50aee37cb9567cdeef65b7ec3d91b882852b1af'
'b8fe56e14006ab866970ddbd501c054ae37186ddc065bb869cf7d18db8c0d455118d5bda3255fb66a0dde38b544655cfe9040ffe46e41d19830b47959b2fb168'
- 'c8b2258f0b4206a8a0a2c6b6e9a9877b4c914b401842c7f00d1ddde78bd6734a6cde32db56e3d4e99caa45ae0da0c02593828cadeb1ca813f19d23f6d08be4d2'
- '3893afefd914017a2932159233fdaffc722a3278755b5a5c6617dd9dd66c2d0d26103e04148709ab7a7e4b74f5efbdba7949c093046592f8d872de864404437f'
- '6acb44d5da656c154a024ecaa6e071b76bbc1c44cee7fdf317a8b908b71d9d2e9796130abc4b547609cbf898c4a763ba9676963d37eb81d94c44d4695962d02a'
- '4e2996b2a377324314447e56b7dfd2ac0c4796387f125f6141baa23c0fe331f6225aacce6e32a6ea9b04ae6f70371a0f71ce8b1b7a3cb47c1147d51b0d05054f'
- 'ccee6c7997bf6c9885ea0d2996df9d86c7cfec98748b3947ecd98060fa6bb5a8fed9261586b73d2901718ee1e1e9b8955631f5669ff04e5ef86e82ecce213515'
- '126d979a1ee72a74259f2afce0947a741a37b23d2c012422e94a498b5afc29361396d8ee8ab96f7c91b6e399f8a3ef3839270e0871bc144eeb26b91609096964'
- 'bc449032f904b5ef5c4506124871230587dd72849f7fed1d7e9f6ab6f530c24415dfa0f29b27fa98191a671c9646b6066fbf163b5533774307dc68f610e3958f'
- 'SKIP'
+ '8ec487a1f8444f0ad1cc41e90fb96ba5b9755a04ad488a83ff16c85ccf0f69441b8eff6f5cea9a31cca6de3dfb2524fa2eb7ac73529a512d5ed492a8fd7d18dc'
+ 'cf69e14fa7e4755cba74592b3be886d253ea92f120052f46df843fe013954ba41dbe1e9eef13335ca6e12b03072f610692c8304141965650cfab40a69fbeb835'
+ 'c0ed4c20b9b6e705ce819fb766db53bff691495b53e2050a8dc110d361d7e55ec1e260fbd4a2c0076f097aa02b5ea3e0fcbe97b890253248d8b094a10981c4b3'
+ 'bc68605e05dc39b6553f721752b8acc604f286adb41f2b50518ffc98e33ac70d69ff08a5db037782da8791acd402b79636b8d7de4777e80fecbdc5cfa07d00cb'
+ '2ce5ecf3e6a0ba6c3d0adf81c7a80ed6a6918ebb88f41a962e158c5d19d9e5ddc7cbbe2ee0723db4442cc1dfd21e43d0169a97bebe200a4fc3860b2ecf9a848d'
+ '381b862dd5f389b374066d441da5b997de6cff591cab385cf71bf2ec620f113c649a3b35dba17f2e5b0a2123c89d63c6e009f32f0b59a532d73df05f4be77251'
+ 'fef25b81b1363fe287e33623f29e965e496a3be6ebf82a55b06211a5a81f7d361f47cda0f104f67bc009714de342bee1459b254cfd66ed804f72cc1a01a3a1af'
+ '8ddbe5e42882743090e03a1ee078944a371354e62229e06efd44dff8855fbbe0545677609f4fb95b7252e601664464cb8c290cf31d24876329f714d9371f1b3c'
+ 'bd41ec9d26c2df10659fd5222bd48987e3012d1546a3d5b0722be6e390ada1bd4a65d5f0747931c16bd27a832ec3b41e0a930fc62fee9a4a38e965744b4f6979'
+ '71f23dd88eb84363c6240fea28dc6044ba51fb0ba0f4c54820aba65b3341c3ecd74306919576514d68ad22e89e50cdd59ab7bc924703293696f7356f7cb95375'
+ 'dd05c54c1ac94402c248a1d54a36b781c6e230e0fcddba9cabcbda4910a784a21d5b8e716eae6339841ff1195ccc2a3df1e748fd4f933403ae067029290e98f0'
'b576a9c40ba59485c350f71b9234d9e71f245e25b26382bd2f67019f3309c3b5705a6020eae0a9dfccacc763fb2056a5937c0a8ff4e64f99ba1d60f0b2acb03f'
'85a13a274d4cbaca3ddbe8eaf883f1a1184765f8d09d6d40bb32defbe0876cb0153513e8db8671d7fc053e383ced793b74245ff29364a760e1a52bb36ebc8e85'
'f9ce0bb4f06be6f742d8a31384e90fdab1a4686f14d5a8845e0c341dcfa62ae59db933237174223de9b32f9d91f99125c20ede7dff664755f1d42ea0cecdefdb'
diff --git a/libre-testing/linux-libre-cros/config b/libre-testing/linux-libre-cros/config
index 747b623e4..2c7d0c027 100644
--- a/libre-testing/linux-libre-cros/config
+++ b/libre-testing/linux-libre-cros/config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 5.4.2-gnu Kernel Configuration
+# Linux/arm 5.4.11-gnu Kernel Configuration
#
#
@@ -9,6 +9,7 @@
CONFIG_CC_IS_GCC=y
CONFIG_GCC_VERSION=90200
CONFIG_CLANG_VERSION=0
+CONFIG_CC_CAN_LINK=y
CONFIG_CC_HAS_ASM_GOTO=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_WARN_MAYBE_UNINITIALIZED=y
@@ -36,6 +37,7 @@ CONFIG_KERNEL_XZ=y
# CONFIG_KERNEL_LZ4 is not set
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
+# CONFIG_DISK_BASED_SWAP is not set
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
@@ -396,7 +398,6 @@ CONFIG_SOC_IMX7ULP=y
CONFIG_SOC_VF610=y
CONFIG_VF_USE_ARM_GLOBAL_TIMER=y
# CONFIG_VF_USE_PIT_TIMER is not set
-CONFIG_WAND_RFKILL=m
CONFIG_ARCH_KEYSTONE=y
# CONFIG_ARCH_MEDIATEK is not set
CONFIG_ARCH_MESON=y
@@ -664,6 +665,7 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_ATTR_SET=y
CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=y
+# CONFIG_CPU_FREQ_TIMES is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
@@ -676,12 +678,14 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+# CONFIG_CPU_BOOST is not set
#
# CPU frequency scaling drivers
#
CONFIG_CPUFREQ_DT=y
CONFIG_CPUFREQ_DT_PLATDEV=y
+# CONFIG_CPUFREQ_DUMMY is not set
CONFIG_ARM_ALLWINNER_SUN50I_CPUFREQ_NVMEM=m
# CONFIG_ARM_ARMADA_37XX_CPUFREQ is not set
# CONFIG_ARM_ARMADA_8K_CPUFREQ is not set
@@ -887,14 +891,9 @@ CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
CONFIG_PLUGIN_HOSTCC="g++"
CONFIG_HAVE_GCC_PLUGINS=y
CONFIG_GCC_PLUGINS=y
-
-#
-# GCC plugins
-#
# CONFIG_GCC_PLUGIN_CYC_COMPLEXITY is not set
# CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set
# CONFIG_GCC_PLUGIN_RANDSTRUCT is not set
-# end of GCC plugins
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -928,6 +927,7 @@ CONFIG_BLK_WBT_MQ=y
CONFIG_BLK_DEBUG_FS=y
CONFIG_BLK_DEBUG_FS_ZONED=y
CONFIG_BLK_SED_OPAL=y
+# CONFIG_BLK_INLINE_ENCRYPTION is not set
#
# Partition Types
@@ -1012,6 +1012,7 @@ CONFIG_CONTIG_ALLOC=y
CONFIG_BOUNCE=y
CONFIG_KSM=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_MMAP_NOEXEC_TAINT=1
# CONFIG_CLEANCACHE is not set
CONFIG_FRONTSWAP=y
CONFIG_CMA=y
@@ -1030,6 +1031,7 @@ CONFIG_GENERIC_EARLY_IOREMAP=y
CONFIG_FRAME_VECTOR=y
# CONFIG_PERCPU_STATS is not set
# CONFIG_GUP_BENCHMARK is not set
+# CONFIG_LOW_MEM_NOTIFY is not set
# end of Memory Management options
CONFIG_NET=y
@@ -1319,6 +1321,7 @@ CONFIG_NETFILTER_XT_MATCH_POLICY=m
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+# CONFIG_NETFILTER_XT_MATCH_QUOTA2 is not set
CONFIG_NETFILTER_XT_MATCH_RATEEST=m
CONFIG_NETFILTER_XT_MATCH_REALM=m
CONFIG_NETFILTER_XT_MATCH_RECENT=m
@@ -1505,6 +1508,7 @@ CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
CONFIG_BRIDGE_EBT_NFLOG=m
CONFIG_BPFILTER=y
+CONFIG_BPFILTER_UMH=m
CONFIG_IP_DCCP=m
CONFIG_INET_DCCP_DIAG=m
@@ -1769,7 +1773,6 @@ CONFIG_CAN_RAW=m
CONFIG_CAN_BCM=m
CONFIG_CAN_GW=m
CONFIG_CAN_J1939=m
-CONFIG_CAN_ISOTP=m
#
# CAN Device Drivers
@@ -1834,6 +1837,9 @@ CONFIG_BT_6LOWPAN=m
CONFIG_BT_LEDS=y
# CONFIG_BT_SELFTEST is not set
CONFIG_BT_DEBUGFS=y
+CONFIG_BT_ENFORCE_CLASSIC_SECURITY=y
+# CONFIG_BT_HCI_LE_SPLITTER is not set
+# CONFIG_BT_EVE_HACKS is not set
#
# Bluetooth device drivers
@@ -2073,6 +2079,7 @@ CONFIG_PCI_KEYSTONE_HOST=y
# CONFIG_UEVENT_HELPER is not set
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_DEVTMPFS_SAFE=y
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
@@ -2123,7 +2130,6 @@ CONFIG_SIMPLE_PM_BUS=y
# CONFIG_SUN50I_DE2_BUS is not set
CONFIG_SUNXI_RSB=y
# CONFIG_TEGRA_GMI is not set
-CONFIG_TI_PWMSS=y
CONFIG_TI_SYSC=y
CONFIG_VEXPRESS_CONFIG=y
# end of Bus devices
@@ -2372,8 +2378,8 @@ CONFIG_SRAM_EXEC=y
CONFIG_VEXPRESS_SYSCFG=y
# CONFIG_PCI_ENDPOINT_TEST is not set
# CONFIG_XILINX_SDFEC is not set
+# CONFIG_UID_SYS_STATS is not set
# CONFIG_PVPANIC is not set
-CONFIG_UDOO_ARD=m
# CONFIG_C2PORT is not set
#
@@ -2441,7 +2447,6 @@ CONFIG_ALTERA_STAPL=m
#
# end of Intel MIC & related support
-CONFIG_BEAGLEBONE_PINMUX_HELPER=m
# CONFIG_ECHO is not set
# CONFIG_MISC_ALCOR_PCI is not set
# CONFIG_MISC_RTSX_PCI is not set
@@ -2686,6 +2691,7 @@ CONFIG_DM_BIO_PRISON=m
CONFIG_DM_PERSISTENT_DATA=m
CONFIG_DM_UNSTRIPED=m
CONFIG_DM_CRYPT=m
+# CONFIG_DM_VERITY_CHROMEOS is not set
CONFIG_DM_SNAPSHOT=m
CONFIG_DM_THIN_PROVISIONING=m
CONFIG_DM_CACHE=m
@@ -2706,11 +2712,13 @@ CONFIG_DM_UEVENT=y
CONFIG_DM_FLAKEY=m
CONFIG_DM_VERITY=m
# CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG is not set
+# CONFIG_DM_VERITY_AVB is not set
# CONFIG_DM_VERITY_FEC is not set
CONFIG_DM_SWITCH=m
CONFIG_DM_LOG_WRITES=m
CONFIG_DM_INTEGRITY=m
CONFIG_DM_ZONED=m
+# CONFIG_DM_BOW is not set
CONFIG_TARGET_CORE=m
CONFIG_TCM_IBLOCK=m
CONFIG_TCM_FILEIO=m
@@ -3896,7 +3904,9 @@ CONFIG_HW_RANDOM_TPM=y
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_INFINEON=m
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
+# CONFIG_TCG_CR50_I2C is not set
# CONFIG_TCG_VTPM_PROXY is not set
+# CONFIG_TCG_VIRTIO_VTPM is not set
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_DEVPORT=y
@@ -4178,7 +4188,6 @@ CONFIG_OF_GPIO=y
CONFIG_GPIOLIB_IRQCHIP=y
# CONFIG_DEBUG_GPIO is not set
CONFIG_GPIO_SYSFS=y
-# CONFIG_GPIO_OF_HELPER is not set
CONFIG_GPIO_GENERIC=y
CONFIG_GPIO_MAX730X=m
@@ -4384,8 +4393,6 @@ CONFIG_CHARGER_TPS65090=m
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_CROS_USBPD is not set
# CONFIG_CHARGER_UCS1002 is not set
-CONFIG_POWER_SEQUENCE=y
-CONFIG_PWRSEQ_GENERIC=y
CONFIG_HWMON=y
CONFIG_HWMON_VID=m
# CONFIG_HWMON_DEBUG_CHIP is not set
@@ -5750,6 +5757,7 @@ CONFIG_DRM_LOAD_EDID_FIRMWARE=y
# CONFIG_DRM_DP_CEC is not set
CONFIG_DRM_TTM=m
CONFIG_DRM_VRAM_HELPER=m
+CONFIG_DRM_TTM_BO_WAIT_TIMEOUT=15
CONFIG_DRM_GEM_CMA_HELPER=y
CONFIG_DRM_KMS_CMA_HELPER=y
CONFIG_DRM_GEM_SHMEM_HELPER=y
@@ -5791,6 +5799,7 @@ CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_VGEM=m
# CONFIG_DRM_VKMS is not set
CONFIG_DRM_ATI_PCIGART=y
+# CONFIG_DRM_EVDI is not set
CONFIG_DRM_EXYNOS=m
#
@@ -5944,11 +5953,13 @@ CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_ANALOGIX_ANX78XX=m
# CONFIG_DRM_CDNS_DSI is not set
CONFIG_DRM_DUMB_VGA_DAC=m
+# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_LVDS_ENCODER is not set
# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
CONFIG_DRM_NXP_PTN3460=m
CONFIG_DRM_PARADE_PS8622=m
CONFIG_DRM_SIL_SII8620=m
+# CONFIG_DRM_PARADE_PS8640 is not set
CONFIG_DRM_SII902X=m
CONFIG_DRM_SII9234=m
# CONFIG_DRM_THINE_THC63LVD1024 is not set
@@ -5957,6 +5968,7 @@ CONFIG_DRM_TOSHIBA_TC358767=m
CONFIG_DRM_TI_TFP410=m
# CONFIG_DRM_TI_SN65DSI86 is not set
CONFIG_DRM_ANALOGIX_DP=m
+# CONFIG_ANALOGIX_ANX7625 is not set
CONFIG_DRM_I2C_ADV7511=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
CONFIG_DRM_I2C_ADV7533=y
@@ -6674,6 +6686,7 @@ CONFIG_HID_PICOLCD_LEDS=y
CONFIG_HID_PICOLCD_CIR=y
CONFIG_HID_PLANTRONICS=m
CONFIG_HID_PRIMAX=m
+# CONFIG_HID_QUICKSTEP is not set
CONFIG_HID_RETRODE=m
CONFIG_HID_ROCCAT=m
CONFIG_HID_SAITEK=m
@@ -7057,6 +7070,7 @@ CONFIG_USB_F_HID=m
CONFIG_USB_F_PRINTER=m
CONFIG_USB_F_TCM=m
CONFIG_USB_CONFIGFS=m
+# CONFIG_USB_CONFIGFS_UEVENT is not set
CONFIG_USB_CONFIGFS_SERIAL=y
CONFIG_USB_CONFIGFS_ACM=y
CONFIG_USB_CONFIGFS_OBEX=y
@@ -7069,6 +7083,8 @@ CONFIG_USB_CONFIGFS_PHONET=y
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
CONFIG_USB_CONFIGFS_F_LB_SS=y
CONFIG_USB_CONFIGFS_F_FS=y
+# CONFIG_USB_CONFIGFS_F_ACC is not set
+# CONFIG_USB_CONFIGFS_F_AUDIO_SRC is not set
CONFIG_USB_CONFIGFS_F_UAC1=y
# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set
CONFIG_USB_CONFIGFS_F_UAC2=y
@@ -7523,6 +7539,7 @@ CONFIG_VIRTIO_BALLOON=m
CONFIG_VIRTIO_INPUT=m
CONFIG_VIRTIO_MMIO=m
# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set
+# CONFIG_VIRTIO_WL is not set
#
# Microsoft Hyper-V guest support
@@ -7715,6 +7732,7 @@ CONFIG_UWB_HWA=m
CONFIG_UWB_WHCI=m
CONFIG_UWB_I1480U=m
CONFIG_EXFAT_FS=m
+CONFIG_EXFAT_DONT_MOUNT_VFAT=y
CONFIG_EXFAT_DISCARD=y
# CONFIG_EXFAT_DELAYED_SYNC is not set
# CONFIG_EXFAT_KERNEL_DEBUG is not set
@@ -7734,7 +7752,9 @@ CONFIG_CROS_EC_CHARDEV=y
CONFIG_CROS_EC_LIGHTBAR=m
CONFIG_CROS_EC_VBC=m
CONFIG_CROS_EC_DEBUGFS=m
+# CONFIG_CROS_EC_SENSORHUB is not set
CONFIG_CROS_EC_SYSFS=m
+# CONFIG_CROS_EC_PD_UPDATE is not set
# CONFIG_MELLANOX_PLATFORM is not set
CONFIG_CLKDEV_LOOKUP=y
CONFIG_HAVE_CLK_PREPARE=y
@@ -8058,7 +8078,6 @@ CONFIG_DMARD06=m
CONFIG_DMARD09=m
CONFIG_DMARD10=m
CONFIG_HID_SENSOR_ACCEL_3D=m
-CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_ST_ACCEL_3AXIS=m
CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m
CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m
@@ -8178,10 +8197,6 @@ CONFIG_SPS30=m
CONFIG_VZ89X=m
# end of Chemical Sensors
-CONFIG_IIO_CROS_EC_SENSORS_CORE=m
-CONFIG_IIO_CROS_EC_SENSORS=m
-CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
-
#
# Hid Sensor IIO Common
#
@@ -8353,7 +8368,6 @@ CONFIG_CM3232=m
CONFIG_CM3323=m
CONFIG_CM3605=m
CONFIG_CM36651=m
-CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_GP2AP020A00F=m
CONFIG_SENSORS_ISL29018=m
CONFIG_SENSORS_ISL29028=m
@@ -8462,7 +8476,6 @@ CONFIG_ABP060MG=m
CONFIG_BMP280=m
CONFIG_BMP280_I2C=m
CONFIG_BMP280_SPI=m
-CONFIG_IIO_CROS_EC_BARO=m
CONFIG_DPS310=m
CONFIG_HID_SENSOR_PRESS=m
CONFIG_HP03=m
@@ -8544,6 +8557,7 @@ CONFIG_PWM_SUN4I=m
CONFIG_PWM_TEGRA=m
CONFIG_PWM_TIECAP=m
CONFIG_PWM_TIEHRPWM=m
+CONFIG_PWM_TIPWMSS=y
CONFIG_PWM_TWL=m
CONFIG_PWM_TWL_LED=m
@@ -8715,8 +8729,8 @@ CONFIG_PM_OPP=y
# CONFIG_SLIMBUS is not set
# CONFIG_INTERCONNECT is not set
CONFIG_COUNTER=m
-# CONFIG_TI_EQEP is not set
# CONFIG_FTM_QUADDEC is not set
+# CONFIG_PKGLIST is not set
# end of Device Drivers
#
@@ -8846,6 +8860,7 @@ CONFIG_PROC_FS=y
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_PROC_CHILDREN=y
+# CONFIG_PROC_UID is not set
CONFIG_KERNFS=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
@@ -9055,6 +9070,7 @@ CONFIG_KEYS=y
# CONFIG_ENCRYPTED_KEYS is not set
# CONFIG_KEY_DH_OPERATIONS is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
+# CONFIG_SECURITY_PERF_EVENTS_RESTRICT is not set
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
@@ -9077,6 +9093,7 @@ CONFIG_SECURITY_SMACK_BRINGUP=y
# CONFIG_SECURITY_YAMA is not set
# CONFIG_SECURITY_SAFESETID is not set
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
+CONFIG_SECURITY_CHROMIUMOS_READONLY_PROC_SELF_MEM=y
CONFIG_INTEGRITY=y
# CONFIG_INTEGRITY_SIGNATURE is not set
CONFIG_INTEGRITY_AUDIT=y
@@ -9506,6 +9523,7 @@ CONFIG_LOCKUP_DETECTOR=y
CONFIG_SOFTLOCKUP_DETECTOR=y
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
+# CONFIG_HARDLOCKUP_DETECTOR_BUDDY_CPU is not set
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
@@ -9596,6 +9614,7 @@ CONFIG_UBSAN_ALIGNMENT=y
CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y
CONFIG_STRICT_DEVMEM=y
# CONFIG_IO_STRICT_DEVMEM is not set
+# CONFIG_ERROR_ON_WARNING is not set
# CONFIG_ARM_PTDUMP_DEBUGFS is not set
# CONFIG_DEBUG_WX is not set
# CONFIG_UNWINDER_FRAME_POINTER is not set
diff --git a/libre-testing/linux-libre-cros/linux-libre-cros.install b/libre-testing/linux-libre-cros/linux-libre-cros.install
index 962dcc3b3..05264329e 100644
--- a/libre-testing/linux-libre-cros/linux-libre-cros.install
+++ b/libre-testing/linux-libre-cros/linux-libre-cros.install
@@ -1,4 +1,4 @@
-flash_kernel() {
+post_install () {
if mountpoint -q /boot; then
major=$(mountpoint -d /boot | cut -f 1 -d ':')
minor=$(mountpoint -d /boot | cut -f 2 -d ':')
@@ -10,7 +10,8 @@ flash_kernel() {
device="/dev/${device/%2/1}"
echo "A new kernel version needs to be flashed onto $device."
- read -rp "Do you want to do this now? [y|N] " shouldwe
+ echo "Do you want to do this now? [y|N]"
+ read -r shouldwe
if [[ $shouldwe =~ ^([yY][eE][sS]|[yY])$ ]]; then
dd if=/boot/vmlinux.kpart of=$device
sync
@@ -20,10 +21,6 @@ flash_kernel() {
fi
}
-post_install () {
- flash_kernel
-}
-
post_upgrade() {
- flash_kernel
+ post_install
}