summaryrefslogtreecommitdiff
path: root/SOURCES
diff options
context:
space:
mode:
Diffstat (limited to 'SOURCES')
-rw-r--r--SOURCES/ACPI:-processor-idle:-Practically-limit-Dummy-wait-workaround-to-old-Intel-systems.patch77
-rw-r--r--SOURCES/Patchlist.changelog252
-rw-r--r--SOURCES/amdgpu-regression.patch1178
-rw-r--r--SOURCES/asus-linux.patch337
-rw-r--r--SOURCES/kernel-aarch64-debug-fedora.config153
-rw-r--r--SOURCES/kernel-aarch64-debug-rhel.config143
-rw-r--r--SOURCES/kernel-aarch64-fedora.config153
-rw-r--r--SOURCES/kernel-aarch64-rhel.config143
-rw-r--r--SOURCES/kernel-armv7hl-debug-fedora.config124
-rw-r--r--SOURCES/kernel-armv7hl-fedora.config124
-rw-r--r--SOURCES/kernel-armv7hl-lpae-debug-fedora.config124
-rw-r--r--SOURCES/kernel-armv7hl-lpae-fedora.config124
-rw-r--r--SOURCES/kernel-ppc64le-debug-fedora.config105
-rw-r--r--SOURCES/kernel-ppc64le-debug-rhel.config133
-rw-r--r--SOURCES/kernel-ppc64le-fedora.config105
-rw-r--r--SOURCES/kernel-ppc64le-rhel.config133
-rw-r--r--SOURCES/kernel-s390x-debug-fedora.config105
-rw-r--r--SOURCES/kernel-s390x-debug-rhel.config132
-rw-r--r--SOURCES/kernel-s390x-fedora.config105
-rw-r--r--SOURCES/kernel-s390x-rhel.config132
-rw-r--r--SOURCES/kernel-s390x-zfcpdump-rhel.config132
-rw-r--r--SOURCES/kernel-x86_64-debug-fedora.config122
-rw-r--r--SOURCES/kernel-x86_64-debug-rhel.config126
-rw-r--r--SOURCES/kernel-x86_64-fedora.config114
-rw-r--r--SOURCES/kernel-x86_64-rhel.config124
-rw-r--r--SOURCES/linux-surface.patch5051
-rw-r--r--SOURCES/mod-extra.list.fedora5
-rw-r--r--SOURCES/mod-internal.list77
-rw-r--r--SOURCES/patch-5.19-redhat.patch3516
-rw-r--r--SOURCES/patch-6.0-redhat.patch1573
-rw-r--r--SOURCES/rpminspect.yaml2
-rw-r--r--SOURCES/v3-1-7-acpi-x86-s2idle-Move-_HID-handling-for-AMD-systems-into-structures.patch10
32 files changed, 3920 insertions, 10814 deletions
diff --git a/SOURCES/ACPI:-processor-idle:-Practically-limit-Dummy-wait-workaround-to-old-Intel-systems.patch b/SOURCES/ACPI:-processor-idle:-Practically-limit-Dummy-wait-workaround-to-old-Intel-systems.patch
deleted file mode 100644
index 02b667c..0000000
--- a/SOURCES/ACPI:-processor-idle:-Practically-limit-Dummy-wait-workaround-to-old-Intel-systems.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From e400ad8b7e6a1b9102123c6240289a811501f7d9 Mon Sep 17 00:00:00 2001
-From: Dave Hansen <dave.hansen@intel.com>
-Date: Thu, 22 Sep 2022 11:47:45 -0700
-Subject: ACPI: processor idle: Practically limit "Dummy wait" workaround to
- old Intel systems
-
-Old, circa 2002 chipsets have a bug: they don't go idle when they are
-supposed to. So, a workaround was added to slow the CPU down and
-ensure that the CPU waits a bit for the chipset to actually go idle.
-This workaround is ancient and has been in place in some form since
-the original kernel ACPI implementation.
-
-But, this workaround is very painful on modern systems. The "inl()"
-can take thousands of cycles (see Link: for some more detailed
-numbers and some fun kernel archaeology).
-
-First and foremost, modern systems should not be using this code.
-Typical Intel systems have not used it in over a decade because it is
-horribly inferior to MWAIT-based idle.
-
-Despite this, people do seem to be tripping over this workaround on
-AMD system today.
-
-Limit the "dummy wait" workaround to Intel systems. Keep Modern AMD
-systems from tripping over the workaround. Remotely modern Intel
-systems use intel_idle instead of this code and will, in practice,
-remain unaffected by the dummy wait.
-
-Reported-by: K Prateek Nayak <kprateek.nayak@amd.com>
-Suggested-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
-Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
-Tested-by: K Prateek Nayak <kprateek.nayak@amd.com>
-Link: https://lore.kernel.org/all/20220921063638.2489-1-kprateek.nayak@amd.com/
-Link: https://lkml.kernel.org/r/20220922184745.3252932-1-dave.hansen@intel.com
----
- drivers/acpi/processor_idle.c | 23 ++++++++++++++++++++---
- 1 file changed, 20 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
-index 16a1663d02d46..9f40917c49efb 100644
---- a/drivers/acpi/processor_idle.c
-+++ b/drivers/acpi/processor_idle.c
-@@ -531,10 +531,27 @@ static void wait_for_freeze(void)
- /* No delay is needed if we are in guest */
- if (boot_cpu_has(X86_FEATURE_HYPERVISOR))
- return;
-+ /*
-+ * Modern (>=Nehalem) Intel systems use ACPI via intel_idle,
-+ * not this code. Assume that any Intel systems using this
-+ * are ancient and may need the dummy wait. This also assumes
-+ * that the motivating chipset issue was Intel-only.
-+ */
-+ if (boot_cpu_data.x86_vendor != X86_VENDOR_INTEL)
-+ return;
- #endif
-- /* Dummy wait op - must do something useless after P_LVL2 read
-- because chipsets cannot guarantee that STPCLK# signal
-- gets asserted in time to freeze execution properly. */
-+ /*
-+ * Dummy wait op - must do something useless after P_LVL2 read
-+ * because chipsets cannot guarantee that STPCLK# signal gets
-+ * asserted in time to freeze execution properly
-+ *
-+ * This workaround has been in place since the original ACPI
-+ * implementation was merged, circa 2002.
-+ *
-+ * If a profile is pointing to this instruction, please first
-+ * consider moving your system to a more modern idle
-+ * mechanism.
-+ */
- inl(acpi_gbl_FADT.xpm_timer_block.address);
- }
-
---
-cgit
-
diff --git a/SOURCES/Patchlist.changelog b/SOURCES/Patchlist.changelog
index f135fb3..da68ac2 100644
--- a/SOURCES/Patchlist.changelog
+++ b/SOURCES/Patchlist.changelog
@@ -1,213 +1,117 @@
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/b7ac3893a05dddcf85e47e0f9fc3868bb80cba8e
- b7ac3893a05dddcf85e47e0f9fc3868bb80cba8e mctp: prevent double key removal and unref
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/3f98e8c4ff4856388d73a2dd727241fc05dc717f
+ 3f98e8c4ff4856388d73a2dd727241fc05dc717f drm/vc4: hdmi: Fix HSM clock too low on Pi4
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f41667878d605b0df50332ec1bb91b3c58b0a2b6
- f41667878d605b0df50332ec1bb91b3c58b0a2b6 wifi: cfg80211: update hidden BSSes to avoid WARN_ON
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/1dc36385281ea0ffa70f6fd94f21a85e69b89062
+ 1dc36385281ea0ffa70f6fd94f21a85e69b89062 phy: rockchip-inno-usb2: Return zero after otg sync
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/2c047ea0b747055e5afc74d6ee24d0e1a6fd045b
- 2c047ea0b747055e5afc74d6ee24d0e1a6fd045b wifi: mac80211: fix crash in beacon protection for P2P-device
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/79fb41cd79f56f42eef3981f8f22fdcd17374298
+ 79fb41cd79f56f42eef3981f8f22fdcd17374298 drm/vc4: hdmi: Check the HSM rate at runtime_resume
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/0ceb5de271ef569e73ff55fc45e4c858c4e90a8f
- 0ceb5de271ef569e73ff55fc45e4c858c4e90a8f wifi: mac80211_hwsim: avoid mac80211 warning on bad rate
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/79fe71195290bdc3120f709120ccdc1e568f8b60
+ 79fe71195290bdc3120f709120ccdc1e568f8b60 drm/vc4: hdmi: Enforce the minimum rate at runtime_resume
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/99b388fa0f89350475a015ced6ea091137708a85
- 99b388fa0f89350475a015ced6ea091137708a85 wifi: cfg80211: avoid nontransmitted BSS list corruption
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/b1071e87929d0dd926a791aa3a2b7fac639b00ea
+ b1071e87929d0dd926a791aa3a2b7fac639b00ea drm/i915/bios: Use hardcoded fp_timing size for generating LFP data pointers
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/d9250a0c289718402eae31b58425c280e6fb42d9
- d9250a0c289718402eae31b58425c280e6fb42d9 wifi: cfg80211: fix BSS refcounting bugs
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/85410346efac67acc97d156063d5ec39bf985124
+ 85410346efac67acc97d156063d5ec39bf985124 scsi: stex: Properly zero out the passthrough command structure
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/15d4d3f11fc53ff4789c9c2a5f0a874d64671146
- 15d4d3f11fc53ff4789c9c2a5f0a874d64671146 wifi: cfg80211: ensure length byte is present before access
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/dce543dfaac7d80c338ed21ccd2543aaf5d7b85a
+ dce543dfaac7d80c338ed21ccd2543aaf5d7b85a ipv4: Handle attempt to delete multipath route when fib_info contains an nh reference
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/1c57f15727fb63f7f0bfdcc9f032501804c93de4
- 1c57f15727fb63f7f0bfdcc9f032501804c93de4 wifi: mac80211: fix MBSSID parsing use-after-free
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/0988b1d9ca90040134efda1f36af93a0b90d42b2
+ 0988b1d9ca90040134efda1f36af93a0b90d42b2 drivers/firmware: skip simpledrm if nvidia-drm.modeset=1 is set
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/1a9ee89eb2c3d3a4e1a5786650a83419acdc1de2
- 1a9ee89eb2c3d3a4e1a5786650a83419acdc1de2 wifi: cfg80211/mac80211: reject bad MBSSID elements
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/5560f4156f7be5fdca5f6656f2fd87def5bdd232
+ 5560f4156f7be5fdca5f6656f2fd87def5bdd232 drm: Prevent drm_copy_field() to attempt copying a NULL pointer
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/828022c8d93a3c2a1d98a134910682ed0f961d0c
- 828022c8d93a3c2a1d98a134910682ed0f961d0c wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans()
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/53f7bba19d94e30884d8c5e59b1d6b935a565aaa
+ 53f7bba19d94e30884d8c5e59b1d6b935a565aaa drm: Use size_t type for len variable in drm_copy_field()
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/01e0ad5ed5f0788f9688daacd4695df17e1174e9
- 01e0ad5ed5f0788f9688daacd4695df17e1174e9 drm/vc4: hdmi: Check the HSM rate at runtime_resume
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/366a22cbb7b2ee8b47ce2fe65368483b631fd0aa
+ 366a22cbb7b2ee8b47ce2fe65368483b631fd0aa arm64: use common CONFIG_MAX_ZONEORDER for arm kernel
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/0d9cf6806f3be0d0a2adad69ddc50192ca38285b
- 0d9cf6806f3be0d0a2adad69ddc50192ca38285b drm/vc4: hdmi: Enforce the minimum rate at runtime_resume
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/6b4e3c1ed136efa4bfabcb8e897a900e45dac638
+ 6b4e3c1ed136efa4bfabcb8e897a900e45dac638 RHEL: disable io_uring support
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/482f7491ba5a1106e8b7d5ca0accc353f2c0d55a
- 482f7491ba5a1106e8b7d5ca0accc353f2c0d55a phy: rockchip-inno-usb2: Return zero after otg sync
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/8d2d517f1f0e48dc247be69f30248d421efde17f
+ 8d2d517f1f0e48dc247be69f30248d421efde17f nvme: nvme_mpath_init remove multipath check
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/3401107a6fbe13ef6eb6a9a8b6d6dbec04fbf234
- 3401107a6fbe13ef6eb6a9a8b6d6dbec04fbf234 scsi: stex: Properly zero out the passthrough command structure
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/bf52d477bcb2c484912c7d4cfa214d7689b3aad3
+ bf52d477bcb2c484912c7d4cfa214d7689b3aad3 nvme: decouple basic ANA log page re-read support from native multipathing
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/d88ada87e783422a5e31b8e4c6dd376f58553cb1
- d88ada87e783422a5e31b8e4c6dd376f58553cb1 ipv4: Handle attempt to delete multipath route when fib_info contains an nh reference
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/f4067768924992c614f0b14928c8cc520c307c06
+ f4067768924992c614f0b14928c8cc520c307c06 nvme: allow local retry and proper failover for REQ_FAILFAST_TRANSPORT
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/9d5fb7eaaa7db6a9952531d029dc9c3fb16a8eee
- 9d5fb7eaaa7db6a9952531d029dc9c3fb16a8eee kbuild: Add skip_encoding_btf_enum64 option to pahole
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/add86fbef39efce9101a9e295a29d6748e0c3048
+ add86fbef39efce9101a9e295a29d6748e0c3048 nvme: Return BLK_STS_TARGET if the DNR bit is set
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/81d89458f7f2d872c7de7181acb857fe041ee953
- 81d89458f7f2d872c7de7181acb857fe041ee953 [PATCH] drm/i915: Ensure damage clip area is within pipe area
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/716cb6bb41d5f6ece4ef37a081257e321e14eaa9
+ 716cb6bb41d5f6ece4ef37a081257e321e14eaa9 REDHAT: coresight: etm4x: Disable coresight on HPE Apollo 70
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/633114f82410496dc31e1cdbbbc5a793abebd058
- 633114f82410496dc31e1cdbbbc5a793abebd058 [PATCH] drm/i915/psr: Use full update In case of area calculation fails
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/022a766cad880585e54174b793f87aa2808e4bb1
+ 022a766cad880585e54174b793f87aa2808e4bb1 KEYS: Make use of platform keyring for module signature verify
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/7879af7639a11a5388ef7e590e1b480ac79c29ef
- 7879af7639a11a5388ef7e590e1b480ac79c29ef [PATCH] drm/i915/bios: Use hardcoded fp_timing size for generating LFP data pointers
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/cdb9c8043125406948447409ab7adcf9010ad68a
+ cdb9c8043125406948447409ab7adcf9010ad68a Input: rmi4 - remove the need for artificial IRQ in case of HID
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/b9dfa5218351f6286e97beba802c14813735f255
- b9dfa5218351f6286e97beba802c14813735f255 Revert "block: freeze the queue earlier in del_gendisk"
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/77196f630f45012fa3f14c858f7b34ac6c6f86ef
+ 77196f630f45012fa3f14c858f7b34ac6c6f86ef ARM: tegra: usb no reset
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/3f1696ca1e6762e9774ecb4d0dedbc54dedb284d
- 3f1696ca1e6762e9774ecb4d0dedbc54dedb284d drivers/firmware: skip simpledrm if nvidia-drm.modeset=1 is set
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/f473203a4359d861a261624dd559dfee410fc28b
+ f473203a4359d861a261624dd559dfee410fc28b arm: make CONFIG_HIGHPTE optional without CONFIG_EXPERT
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/7e71aedbf01514b3c8465e224532209c606c6a45
- 7e71aedbf01514b3c8465e224532209c606c6a45 Bluetooth: hci_event: Fix vendor (unknown) opcode status handling
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/f4c2667b39234a6c07887137f0549b290c156dcc
+ f4c2667b39234a6c07887137f0549b290c156dcc Add option of 13 for FORCE_MAX_ZONEORDER
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/a8c6f414c43838287e9b59923debd432dbe4c4c8
- a8c6f414c43838287e9b59923debd432dbe4c4c8 Bluetooth: hci_sync: Fix resuming scan after suspend resume
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/555a6328e1bb3a80b31e83c1991d97a130522990
+ 555a6328e1bb3a80b31e83c1991d97a130522990 s390: Lock down the kernel when the IPL secure flag is set
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/4e3695b44c9dc069d2b3fbb530920e53094912fe
- 4e3695b44c9dc069d2b3fbb530920e53094912fe arm64: config: Enable DRM_V3D
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/67cdd2672afd82580d4073bbea1dc7029a0add7c
+ 67cdd2672afd82580d4073bbea1dc7029a0add7c efi: Lock down the kernel if booted in secure boot mode
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/2341d8a6beaf60736385ddaaca756e881af89781
- 2341d8a6beaf60736385ddaaca756e881af89781 ARM: configs: Enable DRM_V3D
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/1f60ebfcde236d1d586266b941ae4987cd598538
+ 1f60ebfcde236d1d586266b941ae4987cd598538 efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/1b1074d4ebff98afe3f72b458cd962c139ba39dd
- 1b1074d4ebff98afe3f72b458cd962c139ba39dd ARM: dts: bcm2711: Enable V3D
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/b4e1f1bf727cbb5c1df1394cca0f4d9646a1c034
+ b4e1f1bf727cbb5c1df1394cca0f4d9646a1c034 security: lockdown: expose a hook to lock the kernel down
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f2142c5ce61ed3e56355ad8ae56f5fa70d1ae657
- f2142c5ce61ed3e56355ad8ae56f5fa70d1ae657 drm/v3d: Add support for bcm2711
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/790b3b1b2c984ed14ee6702adfb922e0464adff2
+ 790b3b1b2c984ed14ee6702adfb922e0464adff2 Make get_cert_list() use efi_status_to_str() to print error messages.
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/645ee8139e44ade7ee3c98d893103d33be8e158b
- 645ee8139e44ade7ee3c98d893103d33be8e158b drm/v3d: Get rid of pm code
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/5b6b32d141a089a905502f181343384d254dd762
+ 5b6b32d141a089a905502f181343384d254dd762 Add efi_status_to_str() and rework efi_status_to_err().
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/3647ef3c2586cfedf37b0ae6d01e8b92cfe928d6
- 3647ef3c2586cfedf37b0ae6d01e8b92cfe928d6 dt-bindings: gpu: v3d: Add BCM2711's compatible
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/ea728cd0586af923af7a294b519bc6b6969e5c3d
+ ea728cd0586af923af7a294b519bc6b6969e5c3d arm: aarch64: Drop the EXPERT setting from ARM64_FORCE_52BIT
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/892aac5ebdcc063fd7f09a37ee928a5a9ecd72fb
- 892aac5ebdcc063fd7f09a37ee928a5a9ecd72fb soc: bcm: bcm2835-power: Bypass power_on/off() calls
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/abb0d4f70c8ee891312ae950bcd0058b44d8c8fb
+ abb0d4f70c8ee891312ae950bcd0058b44d8c8fb iommu/arm-smmu: workaround DMA mode issues
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/50e89be2e0d665781ca4e6b644fab7e1cfb67964
- 50e89be2e0d665781ca4e6b644fab7e1cfb67964 soc: bcm: bcm2835-power: Add support for BCM2711's RPiVid ASB
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/4da56825d1de4442e897946153afd5484fd01e28
+ 4da56825d1de4442e897946153afd5484fd01e28 ipmi: do not configure ipmi for HPE m400
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/be14a2fbef5aa2f92bb3ac433c844cb7f375fe3c
- be14a2fbef5aa2f92bb3ac433c844cb7f375fe3c soc: bcm: bcm2835-power: Resolve ASB register macros
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/ce14a198049d6084912a72d8932e4749c9c7ca3e
+ ce14a198049d6084912a72d8932e4749c9c7ca3e ahci: thunderx2: Fix for errata that affects stop engine
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/4289bb18a0d9a86c9db0995f7ed606d9c839fb09
- 4289bb18a0d9a86c9db0995f7ed606d9c839fb09 soc: bcm: bcm2835-power: Refactor ASB control
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/46ca13858db525ec325cf0768d87bb8c53b04b5c
+ 46ca13858db525ec325cf0768d87bb8c53b04b5c Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/d70b82903ad10563b8d0d7adb142f819c8a47cab
- d70b82903ad10563b8d0d7adb142f819c8a47cab mfd: bcm2835-pm: Add support for BCM2711
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/8c82ea933bc279764f96a1f17e59e2d313b31b18
+ 8c82ea933bc279764f96a1f17e59e2d313b31b18 tags.sh: Ignore redhat/rpm
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/a88abe0bbe3ddd0fc8382897b6d466c73da5ae21
- a88abe0bbe3ddd0fc8382897b6d466c73da5ae21 mfd: bcm2835-pm: Use 'reg-names' to get resources
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/e8d8c4062ed7e1b7e229e9dbe28b350e9a84a114
+ e8d8c4062ed7e1b7e229e9dbe28b350e9a84a114 aarch64: acpi scan: Fix regression related to X-Gene UARTs
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/e9b6c9854d55dca6b9d1a1ae18487420aedf07b5
- e9b6c9854d55dca6b9d1a1ae18487420aedf07b5 ARM: dts: bcm2711: Use proper compatible in PM/Watchdog node
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/2a529f96af451225321df486009fa0ec0df6dcb2
+ 2a529f96af451225321df486009fa0ec0df6dcb2 ACPI / irq: Workaround firmware issue on X-Gene based m400
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f201eabc0f66996b5e6a10ab0b6a2a215168b29e
- f201eabc0f66996b5e6a10ab0b6a2a215168b29e ARM: dts: bcm2835/bcm2711: Introduce reg-names in watchdog node
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/ed09294716c4d399c3c267cdc66a518d567e57f4
+ ed09294716c4d399c3c267cdc66a518d567e57f4 ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/9468325b07e8ba299c8f01219e9d56f312d6c30c
- 9468325b07e8ba299c8f01219e9d56f312d6c30c dt-bindings: soc: bcm: bcm2835-pm: Add support for bcm2711
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/a4eee5deb356c386a5ed97e3dcafa3d97b6ae60b
+ a4eee5deb356c386a5ed97e3dcafa3d97b6ae60b Pull the RHEL version defines out of the Makefile
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/90de620e1461a3a167a2cd25683b277065370e42
- 90de620e1461a3a167a2cd25683b277065370e42 dt-bindings: soc: bcm: bcm2835-pm: Introduce reg-names
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/bad6aece146bda1a79df7fc848ad42be202c8884
- bad6aece146bda1a79df7fc848ad42be202c8884 dt-bindings: soc: bcm: bcm2835-pm: Convert bindings to DT schema
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/9ef3260d80ae477ae67a2a07f8990d66bb03aa43
- 9ef3260d80ae477ae67a2a07f8990d66bb03aa43 drm: Prevent drm_copy_field() to attempt copying a NULL pointer
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/4f0669ea8d2ee562fa5699f95aff4df5dfd520f0
- 4f0669ea8d2ee562fa5699f95aff4df5dfd520f0 drm: Use size_t type for len variable in drm_copy_field()
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f63fa529dbf1547966b5fb979916df7870e9645e
- f63fa529dbf1547966b5fb979916df7870e9645e net: phy: Add support for 1PPS out and external timestamps
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/4e0c2ae717e670ba594f1cc2948e99ae22cc5879
- 4e0c2ae717e670ba594f1cc2948e99ae22cc5879 net: phy: broadcom: Add PTP support for some Broadcom PHYs.
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/dc7c88b93e5198d19c30762b66854af8f03bdd3a
- dc7c88b93e5198d19c30762b66854af8f03bdd3a net: phy: broadcom: Add Broadcom PTP hooks to bcm-phy-lib
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/88a0b4335c039716a4ba0c89ab841c103499a2ee
- 88a0b4335c039716a4ba0c89ab841c103499a2ee arm64: use common CONFIG_MAX_ZONEORDER for arm kernel
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/e5bfecafbd51bbf163d9353dafe245437657f2a7
- e5bfecafbd51bbf163d9353dafe245437657f2a7 RHEL: disable io_uring support
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f17f7f65af22553f8cd7ba2ca994c47a4d01de28
- f17f7f65af22553f8cd7ba2ca994c47a4d01de28 REDHAT: coresight: etm4x: Disable coresight on HPE Apollo 70
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/fff03208e2f556608e7b8371bc00206d5b35390e
- fff03208e2f556608e7b8371bc00206d5b35390e KEYS: Make use of platform keyring for module signature verify
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/a02ac0771c65db45cae6518b6cd0571039614998
- a02ac0771c65db45cae6518b6cd0571039614998 Input: rmi4 - remove the need for artificial IRQ in case of HID
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/4d44cde022478da06f3f41c6a777af10515a308e
- 4d44cde022478da06f3f41c6a777af10515a308e ARM: tegra: usb no reset
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/6dee6c964b4d9ee86b112fac7454f0041f26a691
- 6dee6c964b4d9ee86b112fac7454f0041f26a691 arm: make CONFIG_HIGHPTE optional without CONFIG_EXPERT
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f5c5cc300dd57fcbdd23a97b87afef29b4d75d2a
- f5c5cc300dd57fcbdd23a97b87afef29b4d75d2a Add option of 13 for FORCE_MAX_ZONEORDER
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/8a6f0b0bc97e2d56249104d33ee89b13d9097364
- 8a6f0b0bc97e2d56249104d33ee89b13d9097364 s390: Lock down the kernel when the IPL secure flag is set
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/1f727ffd29c09ee6e99c3ab383e84bf1a7fd8af3
- 1f727ffd29c09ee6e99c3ab383e84bf1a7fd8af3 efi: Lock down the kernel if booted in secure boot mode
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/583e00d1bccdb63d9586bdad159f85ebb127e1e9
- 583e00d1bccdb63d9586bdad159f85ebb127e1e9 efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/1c37764bbfc3e91dfacd292b9f2e76690acd3403
- 1c37764bbfc3e91dfacd292b9f2e76690acd3403 security: lockdown: expose a hook to lock the kernel down
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/df38cada14c6f5721c9b041412fa7084d45f3154
- df38cada14c6f5721c9b041412fa7084d45f3154 Make get_cert_list() use efi_status_to_str() to print error messages.
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/3b2a53a1c1dbbb048318652a60ddae3c96c8d212
- 3b2a53a1c1dbbb048318652a60ddae3c96c8d212 Add efi_status_to_str() and rework efi_status_to_err().
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/582aa8a5a87cc903357bdac041450fd3d9eb9f66
- 582aa8a5a87cc903357bdac041450fd3d9eb9f66 arm: aarch64: Drop the EXPERT setting from ARM64_FORCE_52BIT
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/c7c419e5d8ff0b6afbe50575312b8e583bbfb451
- c7c419e5d8ff0b6afbe50575312b8e583bbfb451 iommu/arm-smmu: workaround DMA mode issues
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/8dacf789a4e58fb318ebedd7a800921d62625bfa
- 8dacf789a4e58fb318ebedd7a800921d62625bfa ipmi: do not configure ipmi for HPE m400
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f04bb5a80b991b9c60aa9a12f8e9082ea198cda8
- f04bb5a80b991b9c60aa9a12f8e9082ea198cda8 ahci: thunderx2: Fix for errata that affects stop engine
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/5ba69404453c964ad762af1da02aff513515199b
- 5ba69404453c964ad762af1da02aff513515199b Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/1c8fff17321f18351ad3748a3bd77c577303502a
- 1c8fff17321f18351ad3748a3bd77c577303502a tags.sh: Ignore redhat/rpm
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/f5a5a76cd7952459d524743a9b3889ca03a0fbfc
- f5a5a76cd7952459d524743a9b3889ca03a0fbfc aarch64: acpi scan: Fix regression related to X-Gene UARTs
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/6515b5c1e84e51b6c174867eb1a88ef585121674
- 6515b5c1e84e51b6c174867eb1a88ef585121674 ACPI / irq: Workaround firmware issue on X-Gene based m400
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/efaa9ec4055f79a03681d943684317aa11aa36db
- efaa9ec4055f79a03681d943684317aa11aa36db ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/900cfefab1156d184d6911e375d4aa152891934e
- 900cfefab1156d184d6911e375d4aa152891934e Introduce CONFIG_RH_DISABLE_DEPRECATED
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/57e43effa27009c0ca1d82038b4ddf9e4ee39dd9
- 57e43effa27009c0ca1d82038b4ddf9e4ee39dd9 Pull the RHEL version defines out of the Makefile
-
-"https://gitlab.com/cki-project/kernel-ark/-/commit"/9426105b269790bd4fe1bda516f48df915ae7ab2
- 9426105b269790bd4fe1bda516f48df915ae7ab2 [initial commit] Add Red Hat variables in the top level makefile
+"https://gitlab.com/cki-project/kernel-ark/-/commit"/896e1ca026dac7e2e8a1a3a93a97aee8c9d119d5
+ 896e1ca026dac7e2e8a1a3a93a97aee8c9d119d5 [initial commit] Add Red Hat variables in the top level makefile
diff --git a/SOURCES/amdgpu-regression.patch b/SOURCES/amdgpu-regression.patch
deleted file mode 100644
index 8503700..0000000
--- a/SOURCES/amdgpu-regression.patch
+++ /dev/null
@@ -1,1178 +0,0 @@
-From c9cad937c0c58618fe5b0310fd539a854dc1ae95 Mon Sep 17 00:00:00 2001
-From: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Date: Fri, 8 Apr 2022 04:18:43 +0530
-Subject: drm/amdgpu: add drm buddy support to amdgpu
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-- Switch to drm buddy allocator
-- Add resource cursor support for drm buddy
-
-v2(Matthew Auld):
- - replace spinlock with mutex as we call kmem_cache_zalloc
- (..., GFP_KERNEL) in drm_buddy_alloc() function
-
- - lock drm_buddy_block_trim() function as it calls
- mark_free/mark_split are all globally visible
-
-v3(Matthew Auld):
- - remove trim method error handling as we address the failure case
- at drm_buddy_block_trim() function
-
-v4:
- - fix warnings reported by kernel test robot <lkp@intel.com>
-
-v5:
- - fix merge conflict issue
-
-v6:
- - fix warnings reported by kernel test robot <lkp@intel.com>
-
-v7:
- - remove DRM_BUDDY_RANGE_ALLOCATION flag usage
-
-v8:
- - keep DRM_BUDDY_RANGE_ALLOCATION flag usage
- - resolve conflicts created by drm/amdgpu: remove VRAM accounting v2
-
-v9(Christian):
- - merged the below patch
- - drm/amdgpu: move vram inline functions into a header
- - rename label name as fallback
- - move struct amdgpu_vram_mgr to amdgpu_vram_mgr.h
- - remove unnecessary flags from struct amdgpu_vram_reservation
- - rewrite block NULL check condition
- - change else style as per coding standard
- - rewrite the node max size
- - add a helper function to fetch the first entry from the list
-
-v10(Christian):
- - rename amdgpu_get_node() function name as amdgpu_vram_mgr_first_block
-
-v11:
- - if size is not aligned with min_page_size, enable is_contiguous flag,
- therefore, the size round up to the power of two and trimmed to the
- original size.
-v12:
- - rename the function names having prefix as amdgpu_vram_mgr_*()
- - modify the round_up() logic conforming to contiguous flag enablement
- or if size is not aligned to min_block_size
- - modify the trim logic
- - rename node as block wherever applicable
-
-Signed-off-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Acked-by: Christian König <christian.koenig@amd.com>
-Link: https://patchwork.freedesktop.org/patch/msgid/20220407224843.2416-1-Arunpravin.PaneerSelvam@amd.com
-Signed-off-by: Christian König <christian.koenig@amd.com>
----
- drivers/gpu/drm/Kconfig | 1 +
- drivers/gpu/drm/amd/amdgpu/amdgpu_res_cursor.h | 97 +++++--
- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 10 +-
- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 359 +++++++++++++++----------
- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h | 89 ++++++
- 5 files changed, 380 insertions(+), 176 deletions(-)
- create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-
-diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
-index f1422bee3dcc..5133c3f028ab 100644
---- a/drivers/gpu/drm/Kconfig
-+++ b/drivers/gpu/drm/Kconfig
-@@ -280,6 +280,7 @@ config DRM_AMDGPU
- select HWMON
- select BACKLIGHT_CLASS_DEVICE
- select INTERVAL_TREE
-+ select DRM_BUDDY
- help
- Choose this option if you have a recent AMD Radeon graphics card.
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_res_cursor.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_res_cursor.h
-index acfa207cf970..6546552e596c 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_res_cursor.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_res_cursor.h
-@@ -30,12 +30,15 @@
- #include <drm/ttm/ttm_resource.h>
- #include <drm/ttm/ttm_range_manager.h>
-
-+#include "amdgpu_vram_mgr.h"
-+
- /* state back for walking over vram_mgr and gtt_mgr allocations */
- struct amdgpu_res_cursor {
- uint64_t start;
- uint64_t size;
- uint64_t remaining;
-- struct drm_mm_node *node;
-+ void *node;
-+ uint32_t mem_type;
- };
-
- /**
-@@ -52,27 +55,63 @@ static inline void amdgpu_res_first(struct ttm_resource *res,
- uint64_t start, uint64_t size,
- struct amdgpu_res_cursor *cur)
- {
-+ struct drm_buddy_block *block;
-+ struct list_head *head, *next;
- struct drm_mm_node *node;
-
-- if (!res || res->mem_type == TTM_PL_SYSTEM) {
-- cur->start = start;
-- cur->size = size;
-- cur->remaining = size;
-- cur->node = NULL;
-- WARN_ON(res && start + size > res->num_pages << PAGE_SHIFT);
-- return;
-- }
-+ if (!res)
-+ goto fallback;
-
- BUG_ON(start + size > res->num_pages << PAGE_SHIFT);
-
-- node = to_ttm_range_mgr_node(res)->mm_nodes;
-- while (start >= node->size << PAGE_SHIFT)
-- start -= node++->size << PAGE_SHIFT;
-+ cur->mem_type = res->mem_type;
-+
-+ switch (cur->mem_type) {
-+ case TTM_PL_VRAM:
-+ head = &to_amdgpu_vram_mgr_resource(res)->blocks;
-+
-+ block = list_first_entry_or_null(head,
-+ struct drm_buddy_block,
-+ link);
-+ if (!block)
-+ goto fallback;
-+
-+ while (start >= amdgpu_vram_mgr_block_size(block)) {
-+ start -= amdgpu_vram_mgr_block_size(block);
-+
-+ next = block->link.next;
-+ if (next != head)
-+ block = list_entry(next, struct drm_buddy_block, link);
-+ }
-+
-+ cur->start = amdgpu_vram_mgr_block_start(block) + start;
-+ cur->size = min(amdgpu_vram_mgr_block_size(block) - start, size);
-+ cur->remaining = size;
-+ cur->node = block;
-+ break;
-+ case TTM_PL_TT:
-+ node = to_ttm_range_mgr_node(res)->mm_nodes;
-+ while (start >= node->size << PAGE_SHIFT)
-+ start -= node++->size << PAGE_SHIFT;
-+
-+ cur->start = (node->start << PAGE_SHIFT) + start;
-+ cur->size = min((node->size << PAGE_SHIFT) - start, size);
-+ cur->remaining = size;
-+ cur->node = node;
-+ break;
-+ default:
-+ goto fallback;
-+ }
-
-- cur->start = (node->start << PAGE_SHIFT) + start;
-- cur->size = min((node->size << PAGE_SHIFT) - start, size);
-+ return;
-+
-+fallback:
-+ cur->start = start;
-+ cur->size = size;
- cur->remaining = size;
-- cur->node = node;
-+ cur->node = NULL;
-+ WARN_ON(res && start + size > res->num_pages << PAGE_SHIFT);
-+ return;
- }
-
- /**
-@@ -85,7 +124,9 @@ static inline void amdgpu_res_first(struct ttm_resource *res,
- */
- static inline void amdgpu_res_next(struct amdgpu_res_cursor *cur, uint64_t size)
- {
-- struct drm_mm_node *node = cur->node;
-+ struct drm_buddy_block *block;
-+ struct drm_mm_node *node;
-+ struct list_head *next;
-
- BUG_ON(size > cur->remaining);
-
-@@ -99,9 +140,27 @@ static inline void amdgpu_res_next(struct amdgpu_res_cursor *cur, uint64_t size)
- return;
- }
-
-- cur->node = ++node;
-- cur->start = node->start << PAGE_SHIFT;
-- cur->size = min(node->size << PAGE_SHIFT, cur->remaining);
-+ switch (cur->mem_type) {
-+ case TTM_PL_VRAM:
-+ block = cur->node;
-+
-+ next = block->link.next;
-+ block = list_entry(next, struct drm_buddy_block, link);
-+
-+ cur->node = block;
-+ cur->start = amdgpu_vram_mgr_block_start(block);
-+ cur->size = min(amdgpu_vram_mgr_block_size(block), cur->remaining);
-+ break;
-+ case TTM_PL_TT:
-+ node = cur->node;
-+
-+ cur->node = ++node;
-+ cur->start = node->start << PAGE_SHIFT;
-+ cur->size = min(node->size << PAGE_SHIFT, cur->remaining);
-+ break;
-+ default:
-+ return;
-+ }
- }
-
- #endif
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
-index 9120ae80ef52..6a70818039dd 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
-@@ -26,6 +26,7 @@
-
- #include <linux/dma-direction.h>
- #include <drm/gpu_scheduler.h>
-+#include "amdgpu_vram_mgr.h"
- #include "amdgpu.h"
-
- #define AMDGPU_PL_GDS (TTM_PL_PRIV + 0)
-@@ -38,15 +39,6 @@
-
- #define AMDGPU_POISON 0xd0bed0be
-
--struct amdgpu_vram_mgr {
-- struct ttm_resource_manager manager;
-- struct drm_mm mm;
-- spinlock_t lock;
-- struct list_head reservations_pending;
-- struct list_head reserved_pages;
-- atomic64_t vis_usage;
--};
--
- struct amdgpu_gtt_mgr {
- struct ttm_resource_manager manager;
- struct drm_mm mm;
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-index 0a7611648573..49e4092f447f 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-@@ -32,8 +32,10 @@
- #include "atom.h"
-
- struct amdgpu_vram_reservation {
-- struct list_head node;
-- struct drm_mm_node mm_node;
-+ u64 start;
-+ u64 size;
-+ struct list_head allocated;
-+ struct list_head blocks;
- };
-
- static inline struct amdgpu_vram_mgr *
-@@ -186,18 +188,18 @@ const struct attribute_group amdgpu_vram_mgr_attr_group = {
- };
-
- /**
-- * amdgpu_vram_mgr_vis_size - Calculate visible node size
-+ * amdgpu_vram_mgr_vis_size - Calculate visible block size
- *
- * @adev: amdgpu_device pointer
-- * @node: MM node structure
-+ * @block: DRM BUDDY block structure
- *
-- * Calculate how many bytes of the MM node are inside visible VRAM
-+ * Calculate how many bytes of the DRM BUDDY block are inside visible VRAM
- */
- static u64 amdgpu_vram_mgr_vis_size(struct amdgpu_device *adev,
-- struct drm_mm_node *node)
-+ struct drm_buddy_block *block)
- {
-- uint64_t start = node->start << PAGE_SHIFT;
-- uint64_t end = (node->size + node->start) << PAGE_SHIFT;
-+ u64 start = amdgpu_vram_mgr_block_start(block);
-+ u64 end = start + amdgpu_vram_mgr_block_size(block);
-
- if (start >= adev->gmc.visible_vram_size)
- return 0;
-@@ -218,9 +220,9 @@ u64 amdgpu_vram_mgr_bo_visible_size(struct amdgpu_bo *bo)
- {
- struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
- struct ttm_resource *res = bo->tbo.resource;
-- unsigned pages = res->num_pages;
-- struct drm_mm_node *mm;
-- u64 usage;
-+ struct amdgpu_vram_mgr_resource *vres = to_amdgpu_vram_mgr_resource(res);
-+ struct drm_buddy_block *block;
-+ u64 usage = 0;
-
- if (amdgpu_gmc_vram_full_visible(&adev->gmc))
- return amdgpu_bo_size(bo);
-@@ -228,9 +230,8 @@ u64 amdgpu_vram_mgr_bo_visible_size(struct amdgpu_bo *bo)
- if (res->start >= adev->gmc.visible_vram_size >> PAGE_SHIFT)
- return 0;
-
-- mm = &container_of(res, struct ttm_range_mgr_node, base)->mm_nodes[0];
-- for (usage = 0; pages; pages -= mm->size, mm++)
-- usage += amdgpu_vram_mgr_vis_size(adev, mm);
-+ list_for_each_entry(block, &vres->blocks, link)
-+ usage += amdgpu_vram_mgr_vis_size(adev, block);
-
- return usage;
- }
-@@ -240,23 +241,30 @@ static void amdgpu_vram_mgr_do_reserve(struct ttm_resource_manager *man)
- {
- struct amdgpu_vram_mgr *mgr = to_vram_mgr(man);
- struct amdgpu_device *adev = to_amdgpu_device(mgr);
-- struct drm_mm *mm = &mgr->mm;
-+ struct drm_buddy *mm = &mgr->mm;
- struct amdgpu_vram_reservation *rsv, *temp;
-+ struct drm_buddy_block *block;
- uint64_t vis_usage;
-
-- list_for_each_entry_safe(rsv, temp, &mgr->reservations_pending, node) {
-- if (drm_mm_reserve_node(mm, &rsv->mm_node))
-+ list_for_each_entry_safe(rsv, temp, &mgr->reservations_pending, blocks) {
-+ if (drm_buddy_alloc_blocks(mm, rsv->start, rsv->start + rsv->size,
-+ rsv->size, mm->chunk_size, &rsv->allocated,
-+ DRM_BUDDY_RANGE_ALLOCATION))
-+ continue;
-+
-+ block = amdgpu_vram_mgr_first_block(&rsv->allocated);
-+ if (!block)
- continue;
-
- dev_dbg(adev->dev, "Reservation 0x%llx - %lld, Succeeded\n",
-- rsv->mm_node.start, rsv->mm_node.size);
-+ rsv->start, rsv->size);
-
-- vis_usage = amdgpu_vram_mgr_vis_size(adev, &rsv->mm_node);
-+ vis_usage = amdgpu_vram_mgr_vis_size(adev, block);
- atomic64_add(vis_usage, &mgr->vis_usage);
- spin_lock(&man->bdev->lru_lock);
-- man->usage += rsv->mm_node.size << PAGE_SHIFT;
-+ man->usage += rsv->size;
- spin_unlock(&man->bdev->lru_lock);
-- list_move(&rsv->node, &mgr->reserved_pages);
-+ list_move(&rsv->blocks, &mgr->reserved_pages);
- }
- }
-
-@@ -278,14 +286,16 @@ int amdgpu_vram_mgr_reserve_range(struct amdgpu_vram_mgr *mgr,
- if (!rsv)
- return -ENOMEM;
-
-- INIT_LIST_HEAD(&rsv->node);
-- rsv->mm_node.start = start >> PAGE_SHIFT;
-- rsv->mm_node.size = size >> PAGE_SHIFT;
-+ INIT_LIST_HEAD(&rsv->allocated);
-+ INIT_LIST_HEAD(&rsv->blocks);
-
-- spin_lock(&mgr->lock);
-- list_add_tail(&rsv->node, &mgr->reservations_pending);
-+ rsv->start = start;
-+ rsv->size = size;
-+
-+ mutex_lock(&mgr->lock);
-+ list_add_tail(&rsv->blocks, &mgr->reservations_pending);
- amdgpu_vram_mgr_do_reserve(&mgr->manager);
-- spin_unlock(&mgr->lock);
-+ mutex_unlock(&mgr->lock);
-
- return 0;
- }
-@@ -307,19 +317,19 @@ int amdgpu_vram_mgr_query_page_status(struct amdgpu_vram_mgr *mgr,
- struct amdgpu_vram_reservation *rsv;
- int ret;
-
-- spin_lock(&mgr->lock);
-+ mutex_lock(&mgr->lock);
-
-- list_for_each_entry(rsv, &mgr->reservations_pending, node) {
-- if ((rsv->mm_node.start <= start) &&
-- (start < (rsv->mm_node.start + rsv->mm_node.size))) {
-+ list_for_each_entry(rsv, &mgr->reservations_pending, blocks) {
-+ if (rsv->start <= start &&
-+ (start < (rsv->start + rsv->size))) {
- ret = -EBUSY;
- goto out;
- }
- }
-
-- list_for_each_entry(rsv, &mgr->reserved_pages, node) {
-- if ((rsv->mm_node.start <= start) &&
-- (start < (rsv->mm_node.start + rsv->mm_node.size))) {
-+ list_for_each_entry(rsv, &mgr->reserved_pages, blocks) {
-+ if (rsv->start <= start &&
-+ (start < (rsv->start + rsv->size))) {
- ret = 0;
- goto out;
- }
-@@ -327,32 +337,10 @@ int amdgpu_vram_mgr_query_page_status(struct amdgpu_vram_mgr *mgr,
-
- ret = -ENOENT;
- out:
-- spin_unlock(&mgr->lock);
-+ mutex_unlock(&mgr->lock);
- return ret;
- }
-
--/**
-- * amdgpu_vram_mgr_virt_start - update virtual start address
-- *
-- * @mem: ttm_resource to update
-- * @node: just allocated node
-- *
-- * Calculate a virtual BO start address to easily check if everything is CPU
-- * accessible.
-- */
--static void amdgpu_vram_mgr_virt_start(struct ttm_resource *mem,
-- struct drm_mm_node *node)
--{
-- unsigned long start;
--
-- start = node->start + node->size;
-- if (start > mem->num_pages)
-- start -= mem->num_pages;
-- else
-- start = 0;
-- mem->start = max(mem->start, start);
--}
--
- /**
- * amdgpu_vram_mgr_new - allocate new ranges
- *
-@@ -368,46 +356,44 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
- const struct ttm_place *place,
- struct ttm_resource **res)
- {
-- unsigned long lpfn, num_nodes, pages_per_node, pages_left, pages;
-+ u64 vis_usage = 0, max_bytes, cur_size, min_block_size;
- struct amdgpu_vram_mgr *mgr = to_vram_mgr(man);
- struct amdgpu_device *adev = to_amdgpu_device(mgr);
-- uint64_t vis_usage = 0, mem_bytes, max_bytes;
-- struct ttm_range_mgr_node *node;
-- struct drm_mm *mm = &mgr->mm;
-- enum drm_mm_insert_mode mode;
-- unsigned i;
-+ struct amdgpu_vram_mgr_resource *vres;
-+ u64 size, remaining_size, lpfn, fpfn;
-+ struct drm_buddy *mm = &mgr->mm;
-+ struct drm_buddy_block *block;
-+ unsigned long pages_per_block;
- int r;
-
-- lpfn = place->lpfn;
-+ lpfn = place->lpfn << PAGE_SHIFT;
- if (!lpfn)
-- lpfn = man->size >> PAGE_SHIFT;
-+ lpfn = man->size;
-+
-+ fpfn = place->fpfn << PAGE_SHIFT;
-
- max_bytes = adev->gmc.mc_vram_size;
- if (tbo->type != ttm_bo_type_kernel)
- max_bytes -= AMDGPU_VM_RESERVED_VRAM;
-
-- mem_bytes = tbo->base.size;
- if (place->flags & TTM_PL_FLAG_CONTIGUOUS) {
-- pages_per_node = ~0ul;
-- num_nodes = 1;
-+ pages_per_block = ~0ul;
- } else {
- #ifdef CONFIG_TRANSPARENT_HUGEPAGE
-- pages_per_node = HPAGE_PMD_NR;
-+ pages_per_block = HPAGE_PMD_NR;
- #else
- /* default to 2MB */
-- pages_per_node = 2UL << (20UL - PAGE_SHIFT);
-+ pages_per_block = 2UL << (20UL - PAGE_SHIFT);
- #endif
-- pages_per_node = max_t(uint32_t, pages_per_node,
-- tbo->page_alignment);
-- num_nodes = DIV_ROUND_UP_ULL(PFN_UP(mem_bytes), pages_per_node);
-+ pages_per_block = max_t(uint32_t, pages_per_block,
-+ tbo->page_alignment);
- }
-
-- node = kvmalloc(struct_size(node, mm_nodes, num_nodes),
-- GFP_KERNEL | __GFP_ZERO);
-- if (!node)
-+ vres = kzalloc(sizeof(*vres), GFP_KERNEL);
-+ if (!vres)
- return -ENOMEM;
-
-- ttm_resource_init(tbo, place, &node->base);
-+ ttm_resource_init(tbo, place, &vres->base);
-
- /* bail out quickly if there's likely not enough VRAM for this BO */
- if (ttm_resource_manager_usage(man) > max_bytes) {
-@@ -415,66 +401,130 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
- goto error_fini;
- }
-
-- mode = DRM_MM_INSERT_BEST;
-+ INIT_LIST_HEAD(&vres->blocks);
-+
- if (place->flags & TTM_PL_FLAG_TOPDOWN)
-- mode = DRM_MM_INSERT_HIGH;
--
-- pages_left = node->base.num_pages;
--
-- /* Limit maximum size to 2GB due to SG table limitations */
-- pages = min(pages_left, 2UL << (30 - PAGE_SHIFT));
--
-- i = 0;
-- spin_lock(&mgr->lock);
-- while (pages_left) {
-- uint32_t alignment = tbo->page_alignment;
--
-- if (pages >= pages_per_node)
-- alignment = pages_per_node;
--
-- r = drm_mm_insert_node_in_range(mm, &node->mm_nodes[i], pages,
-- alignment, 0, place->fpfn,
-- lpfn, mode);
-- if (unlikely(r)) {
-- if (pages > pages_per_node) {
-- if (is_power_of_2(pages))
-- pages = pages / 2;
-- else
-- pages = rounddown_pow_of_two(pages);
-- continue;
-+ vres->flags |= DRM_BUDDY_TOPDOWN_ALLOCATION;
-+
-+ if (fpfn || lpfn != man->size)
-+ /* Allocate blocks in desired range */
-+ vres->flags |= DRM_BUDDY_RANGE_ALLOCATION;
-+
-+ remaining_size = vres->base.num_pages << PAGE_SHIFT;
-+
-+ mutex_lock(&mgr->lock);
-+ while (remaining_size) {
-+ if (tbo->page_alignment)
-+ min_block_size = tbo->page_alignment << PAGE_SHIFT;
-+ else
-+ min_block_size = mgr->default_page_size;
-+
-+ BUG_ON(min_block_size < mm->chunk_size);
-+
-+ /* Limit maximum size to 2GiB due to SG table limitations */
-+ size = min(remaining_size, 2ULL << 30);
-+
-+ if (size >= pages_per_block << PAGE_SHIFT)
-+ min_block_size = pages_per_block << PAGE_SHIFT;
-+
-+ cur_size = size;
-+
-+ if (fpfn + size != place->lpfn << PAGE_SHIFT) {
-+ /*
-+ * Except for actual range allocation, modify the size and
-+ * min_block_size conforming to continuous flag enablement
-+ */
-+ if (place->flags & TTM_PL_FLAG_CONTIGUOUS) {
-+ size = roundup_pow_of_two(size);
-+ min_block_size = size;
-+ /*
-+ * Modify the size value if size is not
-+ * aligned with min_block_size
-+ */
-+ } else if (!IS_ALIGNED(size, min_block_size)) {
-+ size = round_up(size, min_block_size);
- }
-- goto error_free;
- }
-
-- vis_usage += amdgpu_vram_mgr_vis_size(adev, &node->mm_nodes[i]);
-- amdgpu_vram_mgr_virt_start(&node->base, &node->mm_nodes[i]);
-- pages_left -= pages;
-- ++i;
-+ r = drm_buddy_alloc_blocks(mm, fpfn,
-+ lpfn,
-+ size,
-+ min_block_size,
-+ &vres->blocks,
-+ vres->flags);
-+ if (unlikely(r))
-+ goto error_free_blocks;
-+
-+ if (size > remaining_size)
-+ remaining_size = 0;
-+ else
-+ remaining_size -= size;
-+ }
-+ mutex_unlock(&mgr->lock);
-+
-+ if (cur_size != size) {
-+ struct drm_buddy_block *block;
-+ struct list_head *trim_list;
-+ u64 original_size;
-+ LIST_HEAD(temp);
-+
-+ trim_list = &vres->blocks;
-+ original_size = vres->base.num_pages << PAGE_SHIFT;
-+
-+ /*
-+ * If size value is rounded up to min_block_size, trim the last
-+ * block to the required size
-+ */
-+ if (!list_is_singular(&vres->blocks)) {
-+ block = list_last_entry(&vres->blocks, typeof(*block), link);
-+ list_move_tail(&block->link, &temp);
-+ trim_list = &temp;
-+ /*
-+ * Compute the original_size value by subtracting the
-+ * last block size with (aligned size - original size)
-+ */
-+ original_size = amdgpu_vram_mgr_block_size(block) - (size - cur_size);
-+ }
-
-- if (pages > pages_left)
-- pages = pages_left;
-+ mutex_lock(&mgr->lock);
-+ drm_buddy_block_trim(mm,
-+ original_size,
-+ trim_list);
-+ mutex_unlock(&mgr->lock);
-+
-+ if (!list_empty(&temp))
-+ list_splice_tail(trim_list, &vres->blocks);
-+ }
-+
-+ list_for_each_entry(block, &vres->blocks, link)
-+ vis_usage += amdgpu_vram_mgr_vis_size(adev, block);
-+
-+ block = amdgpu_vram_mgr_first_block(&vres->blocks);
-+ if (!block) {
-+ r = -EINVAL;
-+ goto error_fini;
- }
-- spin_unlock(&mgr->lock);
-
-- if (i == 1)
-- node->base.placement |= TTM_PL_FLAG_CONTIGUOUS;
-+ vres->base.start = amdgpu_vram_mgr_block_start(block) >> PAGE_SHIFT;
-+
-+ if (amdgpu_is_vram_mgr_blocks_contiguous(&vres->blocks))
-+ vres->base.placement |= TTM_PL_FLAG_CONTIGUOUS;
-
- if (adev->gmc.xgmi.connected_to_cpu)
-- node->base.bus.caching = ttm_cached;
-+ vres->base.bus.caching = ttm_cached;
- else
-- node->base.bus.caching = ttm_write_combined;
-+ vres->base.bus.caching = ttm_write_combined;
-
- atomic64_add(vis_usage, &mgr->vis_usage);
-- *res = &node->base;
-+ *res = &vres->base;
- return 0;
-
--error_free:
-- while (i--)
-- drm_mm_remove_node(&node->mm_nodes[i]);
-- spin_unlock(&mgr->lock);
-+error_free_blocks:
-+ drm_buddy_free_list(mm, &vres->blocks);
-+ mutex_unlock(&mgr->lock);
- error_fini:
-- ttm_resource_fini(man, &node->base);
-- kvfree(node);
-+ ttm_resource_fini(man, &vres->base);
-+ kfree(vres);
-
- return r;
- }
-@@ -490,27 +540,26 @@ error_fini:
- static void amdgpu_vram_mgr_del(struct ttm_resource_manager *man,
- struct ttm_resource *res)
- {
-- struct ttm_range_mgr_node *node = to_ttm_range_mgr_node(res);
-+ struct amdgpu_vram_mgr_resource *vres = to_amdgpu_vram_mgr_resource(res);
- struct amdgpu_vram_mgr *mgr = to_vram_mgr(man);
- struct amdgpu_device *adev = to_amdgpu_device(mgr);
-+ struct drm_buddy *mm = &mgr->mm;
-+ struct drm_buddy_block *block;
- uint64_t vis_usage = 0;
-- unsigned i, pages;
-
-- spin_lock(&mgr->lock);
-- for (i = 0, pages = res->num_pages; pages;
-- pages -= node->mm_nodes[i].size, ++i) {
-- struct drm_mm_node *mm = &node->mm_nodes[i];
-+ mutex_lock(&mgr->lock);
-+ list_for_each_entry(block, &vres->blocks, link)
-+ vis_usage += amdgpu_vram_mgr_vis_size(adev, block);
-
-- drm_mm_remove_node(mm);
-- vis_usage += amdgpu_vram_mgr_vis_size(adev, mm);
-- }
- amdgpu_vram_mgr_do_reserve(man);
-- spin_unlock(&mgr->lock);
-+
-+ drm_buddy_free_list(mm, &vres->blocks);
-+ mutex_unlock(&mgr->lock);
-
- atomic64_sub(vis_usage, &mgr->vis_usage);
-
- ttm_resource_fini(man, res);
-- kvfree(node);
-+ kfree(vres);
- }
-
- /**
-@@ -542,7 +591,7 @@ int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
- if (!*sgt)
- return -ENOMEM;
-
-- /* Determine the number of DRM_MM nodes to export */
-+ /* Determine the number of DRM_BUDDY blocks to export */
- amdgpu_res_first(res, offset, length, &cursor);
- while (cursor.remaining) {
- num_entries++;
-@@ -558,10 +607,10 @@ int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
- sg->length = 0;
-
- /*
-- * Walk down DRM_MM nodes to populate scatterlist nodes
-- * @note: Use iterator api to get first the DRM_MM node
-+ * Walk down DRM_BUDDY blocks to populate scatterlist nodes
-+ * @note: Use iterator api to get first the DRM_BUDDY block
- * and the number of bytes from it. Access the following
-- * DRM_MM node(s) if more buffer needs to exported
-+ * DRM_BUDDY block(s) if more buffer needs to exported
- */
- amdgpu_res_first(res, offset, length, &cursor);
- for_each_sgtable_sg((*sgt), sg, i) {
-@@ -648,13 +697,22 @@ static void amdgpu_vram_mgr_debug(struct ttm_resource_manager *man,
- struct drm_printer *printer)
- {
- struct amdgpu_vram_mgr *mgr = to_vram_mgr(man);
-+ struct drm_buddy *mm = &mgr->mm;
-+ struct drm_buddy_block *block;
-
- drm_printf(printer, " vis usage:%llu\n",
- amdgpu_vram_mgr_vis_usage(mgr));
-
-- spin_lock(&mgr->lock);
-- drm_mm_print(&mgr->mm, printer);
-- spin_unlock(&mgr->lock);
-+ mutex_lock(&mgr->lock);
-+ drm_printf(printer, "default_page_size: %lluKiB\n",
-+ mgr->default_page_size >> 10);
-+
-+ drm_buddy_print(mm, printer);
-+
-+ drm_printf(printer, "reserved:\n");
-+ list_for_each_entry(block, &mgr->reserved_pages, link)
-+ drm_buddy_block_print(mm, block, printer);
-+ mutex_unlock(&mgr->lock);
- }
-
- static const struct ttm_resource_manager_func amdgpu_vram_mgr_func = {
-@@ -674,16 +732,21 @@ int amdgpu_vram_mgr_init(struct amdgpu_device *adev)
- {
- struct amdgpu_vram_mgr *mgr = &adev->mman.vram_mgr;
- struct ttm_resource_manager *man = &mgr->manager;
-+ int err;
-
- ttm_resource_manager_init(man, &adev->mman.bdev,
- adev->gmc.real_vram_size);
-
- man->func = &amdgpu_vram_mgr_func;
-
-- drm_mm_init(&mgr->mm, 0, man->size >> PAGE_SHIFT);
-- spin_lock_init(&mgr->lock);
-+ err = drm_buddy_init(&mgr->mm, man->size, PAGE_SIZE);
-+ if (err)
-+ return err;
-+
-+ mutex_init(&mgr->lock);
- INIT_LIST_HEAD(&mgr->reservations_pending);
- INIT_LIST_HEAD(&mgr->reserved_pages);
-+ mgr->default_page_size = PAGE_SIZE;
-
- ttm_set_driver_manager(&adev->mman.bdev, TTM_PL_VRAM, &mgr->manager);
- ttm_resource_manager_set_used(man, true);
-@@ -711,16 +774,16 @@ void amdgpu_vram_mgr_fini(struct amdgpu_device *adev)
- if (ret)
- return;
-
-- spin_lock(&mgr->lock);
-- list_for_each_entry_safe(rsv, temp, &mgr->reservations_pending, node)
-+ mutex_lock(&mgr->lock);
-+ list_for_each_entry_safe(rsv, temp, &mgr->reservations_pending, blocks)
- kfree(rsv);
-
-- list_for_each_entry_safe(rsv, temp, &mgr->reserved_pages, node) {
-- drm_mm_remove_node(&rsv->mm_node);
-+ list_for_each_entry_safe(rsv, temp, &mgr->reserved_pages, blocks) {
-+ drm_buddy_free_list(&mgr->mm, &rsv->blocks);
- kfree(rsv);
- }
-- drm_mm_takedown(&mgr->mm);
-- spin_unlock(&mgr->lock);
-+ drm_buddy_fini(&mgr->mm);
-+ mutex_unlock(&mgr->lock);
-
- ttm_resource_manager_cleanup(man);
- ttm_set_driver_manager(&adev->mman.bdev, TTM_PL_VRAM, NULL);
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-new file mode 100644
-index 000000000000..9a2db87186c7
---- /dev/null
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-@@ -0,0 +1,89 @@
-+/* SPDX-License-Identifier: MIT
-+ * Copyright 2021 Advanced Micro Devices, Inc.
-+ *
-+ * Permission is hereby granted, free of charge, to any person obtaining a
-+ * copy of this software and associated documentation files (the "Software"),
-+ * to deal in the Software without restriction, including without limitation
-+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
-+ * and/or sell copies of the Software, and to permit persons to whom the
-+ * Software is furnished to do so, subject to the following conditions:
-+ *
-+ * The above copyright notice and this permission notice shall be included in
-+ * all copies or substantial portions of the Software.
-+ *
-+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
-+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-+ * OTHER DEALINGS IN THE SOFTWARE.
-+ *
-+ */
-+
-+#ifndef __AMDGPU_VRAM_MGR_H__
-+#define __AMDGPU_VRAM_MGR_H__
-+
-+#include <drm/drm_buddy.h>
-+
-+struct amdgpu_vram_mgr {
-+ struct ttm_resource_manager manager;
-+ struct drm_buddy mm;
-+ /* protects access to buffer objects */
-+ struct mutex lock;
-+ struct list_head reservations_pending;
-+ struct list_head reserved_pages;
-+ atomic64_t vis_usage;
-+ u64 default_page_size;
-+};
-+
-+struct amdgpu_vram_mgr_resource {
-+ struct ttm_resource base;
-+ struct list_head blocks;
-+ unsigned long flags;
-+};
-+
-+static inline u64 amdgpu_vram_mgr_block_start(struct drm_buddy_block *block)
-+{
-+ return drm_buddy_block_offset(block);
-+}
-+
-+static inline u64 amdgpu_vram_mgr_block_size(struct drm_buddy_block *block)
-+{
-+ return PAGE_SIZE << drm_buddy_block_order(block);
-+}
-+
-+static inline struct drm_buddy_block *
-+amdgpu_vram_mgr_first_block(struct list_head *list)
-+{
-+ return list_first_entry_or_null(list, struct drm_buddy_block, link);
-+}
-+
-+static inline bool amdgpu_is_vram_mgr_blocks_contiguous(struct list_head *head)
-+{
-+ struct drm_buddy_block *block;
-+ u64 start, size;
-+
-+ block = amdgpu_vram_mgr_first_block(head);
-+ if (!block)
-+ return false;
-+
-+ while (head != block->link.next) {
-+ start = amdgpu_vram_mgr_block_start(block);
-+ size = amdgpu_vram_mgr_block_size(block);
-+
-+ block = list_entry(block->link.next, struct drm_buddy_block, link);
-+ if (start + size != amdgpu_vram_mgr_block_start(block))
-+ return false;
-+ }
-+
-+ return true;
-+}
-+
-+static inline struct amdgpu_vram_mgr_resource *
-+to_amdgpu_vram_mgr_resource(struct ttm_resource *res)
-+{
-+ return container_of(res, struct amdgpu_vram_mgr_resource, base);
-+}
-+
-+#endif
---
-cgit v1.2.1
-
-From 708d19d9f362766147cab79eccae60912c6d3068 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Tue, 10 May 2022 13:26:46 +0200
-Subject: drm/amdgpu: move internal vram_mgr function into the C file
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-No need to have those in the header.
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Link: https://patchwork.freedesktop.org/patch/msgid/20220510113649.879821-2-christian.koenig@amd.com
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 29 ++++++++++++++++++++++++++++
- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h | 27 --------------------------
- 2 files changed, 29 insertions(+), 27 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-index 51d9d3a4456c..7a5e8a7b4a1b 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-@@ -50,6 +50,35 @@ to_amdgpu_device(struct amdgpu_vram_mgr *mgr)
- return container_of(mgr, struct amdgpu_device, mman.vram_mgr);
- }
-
-+static inline struct drm_buddy_block *
-+amdgpu_vram_mgr_first_block(struct list_head *list)
-+{
-+ return list_first_entry_or_null(list, struct drm_buddy_block, link);
-+}
-+
-+static inline bool amdgpu_is_vram_mgr_blocks_contiguous(struct list_head *head)
-+{
-+ struct drm_buddy_block *block;
-+ u64 start, size;
-+
-+ block = amdgpu_vram_mgr_first_block(head);
-+ if (!block)
-+ return false;
-+
-+ while (head != block->link.next) {
-+ start = amdgpu_vram_mgr_block_start(block);
-+ size = amdgpu_vram_mgr_block_size(block);
-+
-+ block = list_entry(block->link.next, struct drm_buddy_block, link);
-+ if (start + size != amdgpu_vram_mgr_block_start(block))
-+ return false;
-+ }
-+
-+ return true;
-+}
-+
-+
-+
- /**
- * DOC: mem_info_vram_total
- *
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-index 9a2db87186c7..4b267bf1c5db 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-@@ -53,33 +53,6 @@ static inline u64 amdgpu_vram_mgr_block_size(struct drm_buddy_block *block)
- return PAGE_SIZE << drm_buddy_block_order(block);
- }
-
--static inline struct drm_buddy_block *
--amdgpu_vram_mgr_first_block(struct list_head *list)
--{
-- return list_first_entry_or_null(list, struct drm_buddy_block, link);
--}
--
--static inline bool amdgpu_is_vram_mgr_blocks_contiguous(struct list_head *head)
--{
-- struct drm_buddy_block *block;
-- u64 start, size;
--
-- block = amdgpu_vram_mgr_first_block(head);
-- if (!block)
-- return false;
--
-- while (head != block->link.next) {
-- start = amdgpu_vram_mgr_block_start(block);
-- size = amdgpu_vram_mgr_block_size(block);
--
-- block = list_entry(block->link.next, struct drm_buddy_block, link);
-- if (start + size != amdgpu_vram_mgr_block_start(block))
-- return false;
-- }
--
-- return true;
--}
--
- static inline struct amdgpu_vram_mgr_resource *
- to_amdgpu_vram_mgr_resource(struct ttm_resource *res)
- {
---
-cgit v1.2.1
-
-From 5e3f1e7729ec7a99e145e9d8ed58963d86cdfb98 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Tue, 10 May 2022 12:52:05 +0200
-Subject: drm/amdgpu: fix start calculation in amdgpu_vram_mgr_new
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-We still need to calculate a virtual start address for the resource to
-aid checking of it is visible or not. Only matters on small BAR systems,
-but better save than sorry.
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Acked-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Link: https://patchwork.freedesktop.org/patch/msgid/20220510113649.879821-1-christian.koenig@amd.com
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 22 ++++++++++++++--------
- 1 file changed, 14 insertions(+), 8 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-index 49e4092f447f..51d9d3a4456c 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-@@ -496,16 +496,22 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
- list_splice_tail(trim_list, &vres->blocks);
- }
-
-- list_for_each_entry(block, &vres->blocks, link)
-- vis_usage += amdgpu_vram_mgr_vis_size(adev, block);
-+ vres->base.start = 0;
-+ list_for_each_entry(block, &vres->blocks, link) {
-+ unsigned long start;
-
-- block = amdgpu_vram_mgr_first_block(&vres->blocks);
-- if (!block) {
-- r = -EINVAL;
-- goto error_fini;
-- }
-+ start = amdgpu_vram_mgr_block_start(block) +
-+ amdgpu_vram_mgr_block_size(block);
-+ start >>= PAGE_SHIFT;
-
-- vres->base.start = amdgpu_vram_mgr_block_start(block) >> PAGE_SHIFT;
-+ if (start > vres->base.num_pages)
-+ start -= vres->base.num_pages;
-+ else
-+ start = 0;
-+ vres->base.start = max(vres->base.start, start);
-+
-+ vis_usage += amdgpu_vram_mgr_vis_size(adev, block);
-+ }
-
- if (amdgpu_is_vram_mgr_blocks_contiguous(&vres->blocks))
- vres->base.placement |= TTM_PL_FLAG_CONTIGUOUS;
---
-cgit v1.2.1
-
-From 6f2c8d5f16594a13295d153245e0bb8166db7ac9 Mon Sep 17 00:00:00 2001
-From: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Date: Thu, 14 Jul 2022 03:12:14 -0700
-Subject: drm/amdgpu: Fix for drm buddy memory corruption
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-User reported gpu page fault when running graphics applications
-and in some cases garbaged graphics are observed as soon as X
-starts. This patch fixes all the issues.
-
-Fixed the typecast issue for fpfn and lpfn variables, thus
-preventing the overflow problem which resolves the memory
-corruption.
-
-Signed-off-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
-Reported-by: Mike Lothian <mike@fireburn.co.uk>
-Tested-by: Mike Lothian <mike@fireburn.co.uk>
-Link: https://patchwork.freedesktop.org/patch/msgid/20220714101214.7620-1-Arunpravin.PaneerSelvam@amd.com
-Reviewed-by: Christian König <christian.koenig@amd.com>
-Signed-off-by: Christian König <christian.koenig@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 16 ++++++++--------
- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h | 2 +-
- 2 files changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-index 7a5e8a7b4a1b..28ec5f8ac1c1 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
-@@ -395,11 +395,11 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
- unsigned long pages_per_block;
- int r;
-
-- lpfn = place->lpfn << PAGE_SHIFT;
-+ lpfn = (u64)place->lpfn << PAGE_SHIFT;
- if (!lpfn)
- lpfn = man->size;
-
-- fpfn = place->fpfn << PAGE_SHIFT;
-+ fpfn = (u64)place->fpfn << PAGE_SHIFT;
-
- max_bytes = adev->gmc.mc_vram_size;
- if (tbo->type != ttm_bo_type_kernel)
-@@ -439,12 +439,12 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
- /* Allocate blocks in desired range */
- vres->flags |= DRM_BUDDY_RANGE_ALLOCATION;
-
-- remaining_size = vres->base.num_pages << PAGE_SHIFT;
-+ remaining_size = (u64)vres->base.num_pages << PAGE_SHIFT;
-
- mutex_lock(&mgr->lock);
- while (remaining_size) {
- if (tbo->page_alignment)
-- min_block_size = tbo->page_alignment << PAGE_SHIFT;
-+ min_block_size = (u64)tbo->page_alignment << PAGE_SHIFT;
- else
- min_block_size = mgr->default_page_size;
-
-@@ -453,12 +453,12 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
- /* Limit maximum size to 2GiB due to SG table limitations */
- size = min(remaining_size, 2ULL << 30);
-
-- if (size >= pages_per_block << PAGE_SHIFT)
-- min_block_size = pages_per_block << PAGE_SHIFT;
-+ if (size >= (u64)pages_per_block << PAGE_SHIFT)
-+ min_block_size = (u64)pages_per_block << PAGE_SHIFT;
-
- cur_size = size;
-
-- if (fpfn + size != place->lpfn << PAGE_SHIFT) {
-+ if (fpfn + size != (u64)place->lpfn << PAGE_SHIFT) {
- /*
- * Except for actual range allocation, modify the size and
- * min_block_size conforming to continuous flag enablement
-@@ -498,7 +498,7 @@ static int amdgpu_vram_mgr_new(struct ttm_resource_manager *man,
- LIST_HEAD(temp);
-
- trim_list = &vres->blocks;
-- original_size = vres->base.num_pages << PAGE_SHIFT;
-+ original_size = (u64)vres->base.num_pages << PAGE_SHIFT;
-
- /*
- * If size value is rounded up to min_block_size, trim the last
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-index 4b267bf1c5db..0e04e42cf809 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.h
-@@ -50,7 +50,7 @@ static inline u64 amdgpu_vram_mgr_block_start(struct drm_buddy_block *block)
-
- static inline u64 amdgpu_vram_mgr_block_size(struct drm_buddy_block *block)
- {
-- return PAGE_SIZE << drm_buddy_block_order(block);
-+ return (u64)PAGE_SIZE << drm_buddy_block_order(block);
- }
-
- static inline struct amdgpu_vram_mgr_resource *
---
-cgit v1.2.1
-
diff --git a/SOURCES/asus-linux.patch b/SOURCES/asus-linux.patch
index cc36d1b..947accc 100644
--- a/SOURCES/asus-linux.patch
+++ b/SOURCES/asus-linux.patch
@@ -1925,28 +1925,28 @@ index 3d861477cb20..7dd580fdc61c 100644
--
2.37.2
-From e6529e0ad6942bb0eadc5f5ad0590124153e0a8c Mon Sep 17 00:00:00 2001
+From 802dfc514194e5459397f513b202031228b3315a Mon Sep 17 00:00:00 2001
From: "Luke D. Jones" <luke@ljones.dev>
-Date: Wed, 3 Aug 2022 11:02:05 +1200
-Subject: [PATCH 1/1] HID: amd_sfh: Add keyguard for ASUS ROG X13 tablet
+Date: Fri, 26 Aug 2022 12:25:12 +1200
+Subject: [PATCH 19/19] HID: amd_sfh: Add keyguard for ASUS ROG X13 tablet
Add support for ROG X13 Flow 2-in-1 to disable the keyboard when
the lid is flipped.
Signed-off-by: Luke D. Jones <luke@ljones.dev>
---
- drivers/hid/amd-sfh-hid/amd_sfh_pcie.c | 7 ++++-
+ drivers/hid/amd-sfh-hid/amd_sfh_pcie.c | 4 +++
drivers/hid/amd-sfh-hid/amd_sfh_pcie.h | 1 +
.../hid_descriptor/amd_sfh_hid_desc.c | 27 +++++++++++++++++++
- .../hid_descriptor/amd_sfh_hid_desc.h | 9 +++++++
+ .../hid_descriptor/amd_sfh_hid_desc.h | 8 ++++++
.../hid_descriptor/amd_sfh_hid_report_desc.h | 19 +++++++++++++
- 5 files changed, 62 insertions(+), 1 deletion(-)
+ 5 files changed, 59 insertions(+)
diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c
-index dadc491bbf6b..243541d426d8 100644
+index 4b90c86ee5f8..0f4db2ce076e 100644
--- a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c
+++ b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.c
-@@ -26,6 +26,7 @@
+@@ -27,6 +27,7 @@
#define ACEL_EN BIT(0)
#define GYRO_EN BIT(1)
#define MAGNO_EN BIT(2)
@@ -1954,7 +1954,7 @@ index dadc491bbf6b..243541d426d8 100644
#define HPD_EN BIT(16)
#define ALS_EN BIT(19)
-@@ -232,6 +233,9 @@ int amd_mp2_get_sensor_num(struct amd_mp2_dev *privdata, u8 *sensor_id)
+@@ -233,6 +234,9 @@ int amd_mp2_get_sensor_num(struct amd_mp2_dev *privdata, u8 *sensor_id)
if (HPD_EN & activestatus)
sensor_id[num_of_sensors++] = HPD_IDX;
@@ -1964,33 +1964,23 @@ index dadc491bbf6b..243541d426d8 100644
return num_of_sensors;
}
-@@ -373,7 +377,8 @@ static int __maybe_unused amd_mp2_pci_suspend(struct device *dev)
-
- for (i = 0; i < cl_data->num_hid_devices; i++) {
- if (cl_data->sensor_idx[i] != HPD_IDX &&
-- cl_data->sensor_sts[i] == SENSOR_ENABLED) {
-+ cl_data->sensor_idx[i] != KBGUARD_IDX &&
-+ cl_data->sensor_sts[i] == SENSOR_ENABLED) {
- mp2->mp2_ops->stop(mp2, cl_data->sensor_idx[i]);
- status = amd_sfh_wait_for_response
- (mp2, cl_data->sensor_idx[i], SENSOR_DISABLED);
diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h
-index 8c760526132a..4a86bc6038a2 100644
+index dfb7cabd82ef..5fa15eed43f3 100644
--- a/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h
+++ b/drivers/hid/amd-sfh-hid/amd_sfh_pcie.h
-@@ -36,6 +36,7 @@
- #define SENSOR_DISABLED 5
+@@ -23,6 +23,7 @@
+ #define V2_STATUS 0x2
#define HPD_IDX 16
+#define KBGUARD_IDX 15
- #define AMD_SFH_IDLE_LOOP 200
-
+ #define SENSOR_DISCOVERY_STATUS_MASK GENMASK(5, 3)
+ #define SENSOR_DISCOVERY_STATUS_SHIFT 3
diff --git a/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.c b/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.c
-index 76095bd53c65..f41d28ea7b93 100644
+index f9a8c02d5a7b..06487eb75dc8 100644
--- a/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.c
+++ b/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.c
-@@ -57,6 +57,11 @@ int get_report_descriptor(int sensor_idx, u8 *rep_desc)
+@@ -57,6 +57,11 @@ static int get_report_descriptor(int sensor_idx, u8 *rep_desc)
memcpy(rep_desc, hpd_report_descriptor,
sizeof(hpd_report_descriptor));
break;
@@ -2002,7 +1992,7 @@ index 76095bd53c65..f41d28ea7b93 100644
default:
break;
}
-@@ -116,6 +121,16 @@ u32 get_descr_sz(int sensor_idx, int descriptor_name)
+@@ -116,6 +121,16 @@ static u32 get_descr_sz(int sensor_idx, int descriptor_name)
return sizeof(struct hpd_feature_report);
}
break;
@@ -2019,7 +2009,7 @@ index 76095bd53c65..f41d28ea7b93 100644
default:
break;
-@@ -139,6 +154,7 @@ u8 get_feature_report(int sensor_idx, int report_id, u8 *feature_report)
+@@ -139,6 +154,7 @@ static u8 get_feature_report(int sensor_idx, int report_id, u8 *feature_report)
struct gyro_feature_report gyro_feature;
struct magno_feature_report magno_feature;
struct hpd_feature_report hpd_feature;
@@ -2027,7 +2017,7 @@ index 76095bd53c65..f41d28ea7b93 100644
struct als_feature_report als_feature;
u8 report_size = 0;
-@@ -186,6 +202,11 @@ u8 get_feature_report(int sensor_idx, int report_id, u8 *feature_report)
+@@ -186,6 +202,11 @@ static u8 get_feature_report(int sensor_idx, int report_id, u8 *feature_report)
memcpy(feature_report, &hpd_feature, sizeof(hpd_feature));
report_size = sizeof(hpd_feature);
break;
@@ -2039,7 +2029,7 @@ index 76095bd53c65..f41d28ea7b93 100644
default:
break;
-@@ -210,6 +231,7 @@ u8 get_input_report(u8 current_index, int sensor_idx, int report_id, struct amd_
+@@ -211,6 +232,7 @@ static u8 get_input_report(u8 current_index, int sensor_idx, int report_id,
struct accel3_input_report acc_input;
struct gyro_input_report gyro_input;
struct hpd_input_report hpd_input;
@@ -2047,7 +2037,7 @@ index 76095bd53c65..f41d28ea7b93 100644
struct als_input_report als_input;
struct hpd_status hpdstatus;
u8 report_size = 0;
-@@ -262,6 +284,11 @@ u8 get_input_report(u8 current_index, int sensor_idx, int report_id, struct amd_
+@@ -263,6 +285,11 @@ static u8 get_input_report(u8 current_index, int sensor_idx, int report_id,
report_size = sizeof(hpd_input);
memcpy(input_report, &hpd_input, sizeof(hpd_input));
break;
@@ -2060,31 +2050,22 @@ index 76095bd53c65..f41d28ea7b93 100644
break;
}
diff --git a/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.h b/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.h
-index 70b1b7abe2c6..98571a8597b3 100644
+index ebd55675eb62..2f2ba9a0cfbc 100644
--- a/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.h
+++ b/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.h
-@@ -105,12 +105,21 @@ struct hpd_feature_report {
- struct common_feature_property common_property;
+@@ -111,4 +111,12 @@ struct hpd_input_report {
+ u8 human_presence;
} __packed;
+struct kbguard_feature_report {
+ struct common_feature_property common_property;
+} __packed;
+
- struct hpd_input_report {
- struct common_input_property common_property;
- /* values specific to human presence sensor */
- u8 human_presence;
- } __packed;
-
+struct kbguard_input_report {
+ struct common_input_property common_property;
+} __packed;
+
-+
- int get_report_descriptor(int sensor_idx, u8 rep_desc[]);
- u32 get_descr_sz(int sensor_idx, int descriptor_name);
- u8 get_feature_report(int sensor_idx, int report_id, u8 *feature_report);
+ #endif
diff --git a/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_report_desc.h b/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_report_desc.h
index 697f2791ea9c..7a62fcec2c73 100644
--- a/drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_report_desc.h
@@ -2116,7 +2097,7 @@ index 697f2791ea9c..7a62fcec2c73 100644
static const u8 hpd_report_descriptor[] = {
0x05, 0x20, /* Usage page */
--
-2.37.1
+2.37.2
From 3f73788b14ada783657e5e6303c4e5de5e096be5 Mon Sep 17 00:00:00 2001
From: "Luke D. Jones" <luke@ljones.dev>
@@ -2179,17 +2160,27 @@ index f608a4467d99..ea45e10302f7 100644
--
2.37.2
+From fe443cc4ff4e12652af1cdae63cff354a2467b67 Mon Sep 17 00:00:00 2001
+From: "Luke D. Jones" <luke@ljones.dev>
+Date: Fri, 26 Aug 2022 12:34:02 +1200
+Subject: [PATCH 21/21] asus-wmi: Support the GPU fan on TUF laptops
+
+Add support for TUF laptops which have the ability to control
+the GPU fan. This will show as a second fan in hwmon, and has
+the ability to run as boost (fullspeed), or auto.
+
+Signed-off-by: Luke D. Jones <luke@ljones.dev>
---
drivers/platform/x86/asus-wmi.c | 71 ++++++++++++++++++++++
include/linux/platform_data/x86/asus-wmi.h | 1 +
2 files changed, 72 insertions(+)
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
-index ac06fec0565c..2a74e468591a 100644
+index ea45e10302f7..d05684194f2d 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
-@@ -221,7 +221,9 @@ struct asus_wmi {
- struct asus_rfkill uwb;
+@@ -226,7 +226,9 @@ struct asus_wmi {
+ u32 tablet_switch_dev_id;
enum fan_type fan_type;
+ enum fan_type gpu_fan_type;
@@ -2198,12 +2189,12 @@ index ac06fec0565c..2a74e468591a 100644
int agfn_pwm;
bool fan_boost_mode_available;
-@@ -1757,6 +1759,18 @@ static int asus_fan_set_auto(struct asus_wmi *asus)
+@@ -1861,6 +1863,18 @@ static int asus_fan_set_auto(struct asus_wmi *asus)
return -ENXIO;
}
+ /*
-+ * Modern models like G713 also have GPU fan control. This is not AGFN.
++ * Modern models like the G713 also have GPU fan control (this is not AGFN)
+ */
+ if (asus->gpu_fan_type == FAN_TYPE_SPEC83) {
+ status = asus_wmi_set_devstate(ASUS_WMI_DEVID_GPU_FAN_CTRL,
@@ -2217,7 +2208,7 @@ index ac06fec0565c..2a74e468591a 100644
return 0;
}
-@@ -1959,9 +1973,57 @@ static ssize_t asus_hwmon_temp1(struct device *dev,
+@@ -2063,9 +2077,57 @@ static ssize_t asus_hwmon_temp1(struct device *dev,
deci_kelvin_to_millicelsius(value & 0xFFFF));
}
@@ -2228,7 +2219,7 @@ index ac06fec0565c..2a74e468591a 100644
+{
+ struct asus_wmi *asus = dev_get_drvdata(dev);
+
-+ return sprintf(buf, "%d\n", asus->gpu_fan_pwm_mode);
++ return sysfs_emit(buf, "%d\n", asus->gpu_fan_pwm_mode);
+}
+
+static ssize_t pwm2_enable_store(struct device *dev,
@@ -2275,7 +2266,7 @@ index ac06fec0565c..2a74e468591a 100644
static DEVICE_ATTR_RO(fan1_input);
static DEVICE_ATTR_RO(fan1_label);
-@@ -1971,6 +2033,7 @@ static DEVICE_ATTR(temp1_input, S_IRUGO, asus_hwmon_temp1, NULL);
+@@ -2075,6 +2137,7 @@ static DEVICE_ATTR(temp1_input, S_IRUGO, asus_hwmon_temp1, NULL);
static struct attribute *hwmon_attributes[] = {
&dev_attr_pwm1.attr,
&dev_attr_pwm1_enable.attr,
@@ -2283,7 +2274,7 @@ index ac06fec0565c..2a74e468591a 100644
&dev_attr_fan1_input.attr,
&dev_attr_fan1_label.attr,
-@@ -1993,6 +2056,9 @@ static umode_t asus_hwmon_sysfs_is_visible(struct kobject *kobj,
+@@ -2097,6 +2160,9 @@ static umode_t asus_hwmon_sysfs_is_visible(struct kobject *kobj,
|| attr == &dev_attr_pwm1_enable.attr) {
if (asus->fan_type == FAN_TYPE_NONE)
return 0;
@@ -2293,7 +2284,7 @@ index ac06fec0565c..2a74e468591a 100644
} else if (attr == &dev_attr_temp1_input.attr) {
int err = asus_wmi_get_devstate(asus,
ASUS_WMI_DEVID_THERMAL_CTRL,
-@@ -2035,6 +2101,7 @@ static int asus_wmi_hwmon_init(struct asus_wmi *asus)
+@@ -2139,6 +2205,7 @@ static int asus_wmi_hwmon_init(struct asus_wmi *asus)
static int asus_wmi_fan_init(struct asus_wmi *asus)
{
@@ -2301,7 +2292,7 @@ index ac06fec0565c..2a74e468591a 100644
asus->fan_type = FAN_TYPE_NONE;
asus->agfn_pwm = -1;
-@@ -2043,6 +2110,10 @@ static int asus_wmi_fan_init(struct asus_wmi *asus)
+@@ -2147,6 +2214,10 @@ static int asus_wmi_fan_init(struct asus_wmi *asus)
else if (asus_wmi_has_agfn_fan(asus))
asus->fan_type = FAN_TYPE_AGFN;
@@ -2313,10 +2304,10 @@ index ac06fec0565c..2a74e468591a 100644
return -ENODEV;
diff --git a/include/linux/platform_data/x86/asus-wmi.h b/include/linux/platform_data/x86/asus-wmi.h
-index a571b47ff362..bcffb77371be 100644
+index 7dd580fdc61c..28234dc9fa6a 100644
--- a/include/linux/platform_data/x86/asus-wmi.h
+++ b/include/linux/platform_data/x86/asus-wmi.h
-@@ -77,6 +77,7 @@
+@@ -79,6 +79,7 @@
#define ASUS_WMI_DEVID_THERMAL_CTRL 0x00110011
#define ASUS_WMI_DEVID_FAN_CTRL 0x00110012 /* deprecated */
#define ASUS_WMI_DEVID_CPU_FAN_CTRL 0x00110013
@@ -2325,9 +2316,9 @@ index a571b47ff362..bcffb77371be 100644
#define ASUS_WMI_DEVID_GPU_FAN_CURVE 0x00110025
--
-2.37.1
+2.37.2
- From ded47e7197a4ce9d6c34c0c96c6551ecaca0b6bd Mon Sep 17 00:00:00 2001
+From ded47e7197a4ce9d6c34c0c96c6551ecaca0b6bd Mon Sep 17 00:00:00 2001
From: "Luke D. Jones" <luke@ljones.dev>
Date: Fri, 16 Sep 2022 11:17:16 +1200
Subject: [PATCH] asus-wmi: Expand support of GPU fan to read RPM and label
@@ -2423,229 +2414,3 @@ index ae46af731de9..7fe6ce25da0a 100644
--
2.37.3
-From c104c26a25de7faf6c1fce3d05806d1766721798 Mon Sep 17 00:00:00 2001
-From: "Luke D. Jones" <luke@ljones.dev>
-Date: Mon, 10 Oct 2022 20:00:26 +1300
-Subject: [PATCH] ALSA: hda/realtek: Add quirk for ASUS GV601R laptop
-
-The ASUS ROG X16 (GV601R) series laptop has the same node-to-DAC pairs
-as early models and the G14, this includes bass speakers which are by
-default mapped incorrectly to the 0x06 node.
-
-Add a quirk to use the same DAC pairs as the G14.
-
-Signed-off-by: Luke D. Jones <luke@ljones.dev>
----
- sound/pci/hda/patch_realtek.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
-index bce82b834cec..1ffea762ba57 100644
---- a/sound/pci/hda/patch_realtek.c
-+++ b/sound/pci/hda/patch_realtek.c
-@@ -9422,6 +9422,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
- SND_PCI_QUIRK(0x1043, 0x1e8e, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA401),
- SND_PCI_QUIRK(0x1043, 0x1c52, "ASUS Zephyrus G15 2022", ALC289_FIXUP_ASUS_GA401),
- SND_PCI_QUIRK(0x1043, 0x1f11, "ASUS Zephyrus G14", ALC289_FIXUP_ASUS_GA401),
-+ SND_PCI_QUIRK(0x1043, 0x1f92, "ASUS ROG Flow X16", ALC289_FIXUP_ASUS_GA401),
- SND_PCI_QUIRK(0x1043, 0x3030, "ASUS ZN270IE", ALC256_FIXUP_ASUS_AIO_GPIO2),
- SND_PCI_QUIRK(0x1043, 0x831a, "ASUS P901", ALC269_FIXUP_STEREO_DMIC),
- SND_PCI_QUIRK(0x1043, 0x834a, "ASUS S101", ALC269_FIXUP_STEREO_DMIC),
---
-2.37.3
-
-From 4e55d420b8f311a5d93367e8598c7d1590eff4cf Mon Sep 17 00:00:00 2001
-From: "Luke D. Jones" <luke@ljones.dev>
-Date: Mon, 10 Oct 2022 19:51:57 +1300
-Subject: [PATCH] Fixes bc2c23549ccd ("ALSA: hda/realtek: Add pincfg for ASUS
- G533Z HP jack")
-
-The initial fix for ASUS G533Z was based on faulty information. This
-fixes the pincfg to values that have been verified with no existing
-module options or other hacks enabled.
-
-Enables headphone jack, and 5.1 surround.
-
-Signed-off-by: Luke D. Jones <luke@ljones.dev>
----
- sound/pci/hda/patch_realtek.c | 10 ++++++----
- 1 file changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
-index bce82b834cec..24406f81da27 100644
---- a/sound/pci/hda/patch_realtek.c
-+++ b/sound/pci/hda/patch_realtek.c
-@@ -8449,11 +8449,13 @@ static const struct hda_fixup alc269_fixups[] = {
- [ALC285_FIXUP_ASUS_G533Z_PINS] = {
- .type = HDA_FIXUP_PINS,
- .v.pins = (const struct hda_pintbl[]) {
-- { 0x14, 0x90170120 },
-- { }
-+ { 0x14, 0x90170152 }, /* Speaker Surround Playback Switch */
-+ { 0x19, 0x03a19020 }, /* Mic Boost Volume */
-+ { 0x1a, 0x03a11c30 }, /* Mic Boost Volume */
-+ { 0x1e, 0x90170151 }, /* Rear jack, IN OUT EAPD Detect */
-+ { 0x21, 0x03211420 },
-+ { }
- },
-- .chained = true,
-- .chain_id = ALC294_FIXUP_ASUS_G513_PINS,
- },
- [ALC294_FIXUP_ASUS_COEF_1B] = {
- .type = HDA_FIXUP_VERBS,
---
-2.37.3
-
-From ef5a27e01610251d6b91e3bdcf297246414b40ce Mon Sep 17 00:00:00 2001
-From: "Luke D. Jones" <luke@ljones.dev>
-Date: Mon, 10 Oct 2022 19:27:51 +1300
-Subject: [PATCH] platform/x86: asus-wmi: Add support for ROG X16 tablet mode
-
-Add quirk for ASUS ROG X16 Flow 2-in-1 to enable tablet mode with
-lid flip (all screen rotations).
-
-Signed-off-by: Luke D. Jones <luke@ljones.dev>
----
- drivers/platform/x86/asus-nb-wmi.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/drivers/platform/x86/asus-nb-wmi.c b/drivers/platform/x86/asus-nb-wmi.c
-index 613c45c9fbe3..c685a705b73d 100644
---- a/drivers/platform/x86/asus-nb-wmi.c
-+++ b/drivers/platform/x86/asus-nb-wmi.c
-@@ -464,6 +464,15 @@ static const struct dmi_system_id asus_quirks[] = {
- },
- .driver_data = &quirk_asus_tablet_mode,
- },
-+ {
-+ .callback = dmi_matched,
-+ .ident = "ASUS ROG FLOW X16",
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "GV601R"),
-+ },
-+ .driver_data = &quirk_asus_tablet_mode,
-+ },
- {},
- };
-
---
-2.37.3
-
-From 9eccb147466f00a13c593ac078d8639e1eafe3a2 Mon Sep 17 00:00:00 2001
-From: "Luke D. Jones" <luke@ljones.dev>
-Date: Fri, 14 Oct 2022 10:43:09 +1300
-Subject: [PATCH] platform/x86: asus-wmi: Add safety checks to dgpu/egpu/mux
- methods
-
-The WMI methods for dgpu_disable, egpu_enable, and gpu_mux_mode have
-no internal safety checks. This means it is possible for a user to
-set the gpu mux to discreet mode and then disable the dgpu, resulting
-in the user having no screen and very little chance of recovery.
-
-This commit adds checks to dgpu_disable and egpu_enable to ensure that
-the dgpu can not be disabled if the MUX is in discreet mode, and a
-check to gpu_mux_mode to prevent switching to discreet mode if
-dgpu_disable is set.
-
-Signed-off-by: Luke D. Jones <luke@ljones.dev>
----
- drivers/platform/x86/asus-wmi.c | 38 +++++++++++++++++++++++++++++++++
- 1 file changed, 38 insertions(+)
-
-diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
-index 6e8e093f96b3..1afc4d40fa1a 100644
---- a/drivers/platform/x86/asus-wmi.c
-+++ b/drivers/platform/x86/asus-wmi.c
-@@ -615,6 +615,18 @@ static ssize_t dgpu_disable_store(struct device *dev,
- if (disable > 1)
- return -EINVAL;
-
-+ /*
-+ * The GPU MUX must be checked first, if it is in discreet mode the
-+ * dgpu_disable cannot be set to on or users can end up with no screen.
-+ */
-+ result = asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_GPU_MUX);
-+ if (result < 0)
-+ return result;
-+ if (!result && disable) {
-+ pr_warn("ASUS MUX is in discreet mode, can not set dgpu_disable on\n");
-+ return -EINVAL;
-+ }
-+
- err = asus_wmi_set_devstate(ASUS_WMI_DEVID_DGPU, disable, &result);
- if (err) {
- pr_warn("Failed to set dgpu disable: %d\n", err);
-@@ -663,6 +675,19 @@ static ssize_t egpu_enable_store(struct device *dev,
- if (enable > 1)
- return -EINVAL;
-
-+ /*
-+ * The GPU MUX must be checked first, if it is in discreet mode the
-+ * egpu_enable cannot be set to on or users can end up with no screen.
-+ * Note: egpu_enable method in WMI also sets dgpu_disable to on.
-+ */
-+ result = asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_GPU_MUX);
-+ if (result < 0)
-+ return result;
-+ if (!result && enable) {
-+ pr_warn("ASUS MUX is in discreet mode, can not set egpu_enable on\n");
-+ return -EINVAL;
-+ }
-+
- err = asus_wmi_set_devstate(ASUS_WMI_DEVID_EGPU, enable, &result);
- if (err) {
- pr_warn("Failed to set egpu disable: %d\n", err);
-@@ -709,6 +734,19 @@ static ssize_t gpu_mux_mode_store(struct device *dev,
- if (optimus > 1)
- return -EINVAL;
-
-+ /*
-+ * The dgpu_disable must be checked first, if it is enabled the
-+ * gpu MUX can not be set to 0 or users can end up with no screen.
-+ * Note: egpu_enable also switches dgpu_disable to 1 if enabled.
-+ */
-+ result = asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_DGPU);
-+ if (result < 0)
-+ return result;
-+ if (result && !optimus) {
-+ pr_warn("ASUS dgpu_disable is set, can not switch MUX to discreet mode\n");
-+ return -EINVAL;
-+ }
-+
- err = asus_wmi_set_devstate(ASUS_WMI_DEVID_GPU_MUX, optimus, &result);
- if (err) {
- dev_err(dev, "Failed to set GPU MUX mode: %d\n", err);
---
-2.37.3
-
-From f1c38428ff75d0f3956615bea69a43b8b6812414 Mon Sep 17 00:00:00 2001
-From: "Luke D. Jones" <luke@ljones.dev>
-Date: Fri, 14 Oct 2022 13:03:36 +1300
-Subject: [PATCH] platform/x86: asus-wmi: Check for reboot required in
- dgpu_disable methods
-
-Signed-off-by: Luke D. Jones <luke@ljones.dev>
----
- drivers/platform/x86/asus-wmi.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
-index 1afc4d40fa1a..5d5c473541bd 100644
---- a/drivers/platform/x86/asus-wmi.c
-+++ b/drivers/platform/x86/asus-wmi.c
-@@ -633,6 +633,11 @@ static ssize_t dgpu_disable_store(struct device *dev,
- return err;
- }
-
-+ if (result == 2) {
-+ pr_warn("Failed to set dgpu disable, reboot is required\n");
-+ return -2;
-+ }
-+
- if (result > 1) {
- pr_warn("Failed to set dgpu disable (result): 0x%x\n", result);
- return -EIO;
---
-2.37.3
-
diff --git a/SOURCES/kernel-aarch64-debug-fedora.config b/SOURCES/kernel-aarch64-debug-fedora.config
index 0af9c4c..e4070b6 100644
--- a/SOURCES/kernel-aarch64-debug-fedora.config
+++ b/SOURCES/kernel-aarch64-debug-fedora.config
@@ -29,6 +29,7 @@ CONFIG_9P_FS=m
CONFIG_9P_FS_POSIX_ACL=y
CONFIG_9P_FS_SECURITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
+CONFIG_A64FX_DIAG=y
CONFIG_ABP060MG=m
CONFIG_ACCESSIBILITY=y
CONFIG_ACENIC=m
@@ -50,7 +51,7 @@ CONFIG_ACPI_BUTTON=y
# CONFIG_ACPI_CMPC is not set
CONFIG_ACPI_CONFIGFS=m
CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
+# CONFIG_ACPI_CPPC_CPUFREQ_FIE is not set
CONFIG_ACPI_CPPC_CPUFREQ=m
CONFIG_ACPI_CUSTOM_METHOD=m
CONFIG_ACPI_DEBUGGER_USER=m
@@ -77,6 +78,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WATCHDOG=y
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
@@ -245,7 +247,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -271,6 +272,7 @@ CONFIG_AR5523=m
# CONFIG_ARCH_AIROHA is not set
# CONFIG_ARCH_ALPINE is not set
CONFIG_ARCH_APPLE=y
+# CONFIG_ARCH_ASPEED is not set
# CONFIG_ARCH_BCM_21664 is not set
# CONFIG_ARCH_BCM_23550 is not set
# CONFIG_ARCH_BCM_281XX is not set
@@ -279,6 +281,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_5301X is not set
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
@@ -306,6 +309,7 @@ CONFIG_ARCH_MESON=y
CONFIG_ARCH_MULTIPLATFORM=y
CONFIG_ARCH_MVEBU=y
CONFIG_ARCH_MXC=y
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_NR_GPIO=2048
# CONFIG_ARCH_OMAP1 is not set
# CONFIG_ARCH_PXA is not set
@@ -369,6 +373,7 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
+CONFIG_ARM64_ERRATUM_2441007=y
CONFIG_ARM64_ERRATUM_2441009=y
CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_ERRATUM_819472=y
@@ -424,7 +429,7 @@ CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_CRYPTO=y
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
CONFIG_ARM_DMA_USE_IOMMU=y
-# CONFIG_ARM_DMC620_PMU is not set
+CONFIG_ARM_DMC620_PMU=m
CONFIG_ARM_DSU_PMU=m
CONFIG_ARM_FFA_TRANSPORT=m
CONFIG_ARM_GIC_PM=y
@@ -455,6 +460,7 @@ CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
CONFIG_ARM_RK3399_DMC_DEVFREQ=m
CONFIG_ARM_SBSA_WATCHDOG=m
CONFIG_ARM_SCMI_CPUFREQ=m
+CONFIG_ARM_SCMI_POWER_CONTROL=m
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -471,6 +477,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
CONFIG_ARM_SMC_WATCHDOG=m
CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU_V3_PMU=m
CONFIG_ARM_SMMU_V3_SVA=y
CONFIG_ARM_SMMU_V3=y
@@ -720,7 +727,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -758,6 +765,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -927,6 +935,7 @@ CONFIG_CADENCE_WATCHDOG=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -935,6 +944,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
CONFIG_CAN_FLEXCAN=m
# CONFIG_CAN_GRCAN is not set
@@ -955,6 +965,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -1021,6 +1032,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -1222,7 +1234,7 @@ CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
CONFIG_CORESIGHT_CATU=m
@@ -1267,6 +1279,7 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
CONFIG_CPU_THERMAL=y
@@ -1301,6 +1314,7 @@ CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_EC_VBC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1319,6 +1333,7 @@ CONFIG_CRYPTO_AES_ARM=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B_NEON=m
CONFIG_CRYPTO_BLAKE2B=y
@@ -1419,7 +1434,7 @@ CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG=y
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_ZYNQMP_AES=m
# CONFIG_CRYPTO_DEV_ZYNQMP_SHA3 is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1439,6 +1454,7 @@ CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM64_CE=m
CONFIG_CRYPTO_GHASH_ARM_CE=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1464,6 +1480,7 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_NEON=y
+CONFIG_CRYPTO_POLYVAL_ARM64_CE=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1528,6 +1545,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1627,8 +1645,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
# CONFIG_DEV_APPLETALK is not set
CONFIG_DEV_DAX_HMEM=m
@@ -1653,8 +1669,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
CONFIG_DMA_API_DEBUG_SG=y
@@ -1791,13 +1807,20 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_IMX8QM_LDB=m
+CONFIG_DRM_IMX8QXP_LDB=m
+CONFIG_DRM_IMX8QXP_PIXEL_COMBINER=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK_TO_DPI=m
CONFIG_DRM_IMX_DCSS=m
+CONFIG_DRM_IMX_LCDIF=m
CONFIG_DRM_ITE_IT6505=m
CONFIG_DRM_ITE_IT66121=m
CONFIG_DRM_KOMEDA=m
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LIMA=m
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
CONFIG_DRM_LONTIUM_LT9611=m
@@ -1837,6 +1860,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_EDP=m
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1934,6 +1958,7 @@ CONFIG_DRM_SUN8I_MIXER=m
CONFIG_DRM_TEGRA=m
CONFIG_DRM_TEGRA_STAGING=y
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
CONFIG_DRM_TIDSS=m
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -2299,10 +2324,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
# CONFIG_FPGA_MGR_VERSAL_FPGA is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
@@ -2444,7 +2471,6 @@ CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_DAVINCI=y
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2649,6 +2675,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2665,8 +2692,10 @@ CONFIG_HID=y
CONFIG_HID_ZEROPLUS=m
CONFIG_HID_ZYDACRON=m
CONFIG_HIGH_RES_TIMERS=y
+# CONFIG_HIP04_ETH is not set
# CONFIG_HIPPI is not set
CONFIG_HISI_DMA=m
+# CONFIG_HISI_FEMAC is not set
CONFIG_HISI_HIKEY_USB=m
CONFIG_HISILICON_ERRATUM_161010101=y
CONFIG_HISILICON_ERRATUM_161600802=y
@@ -2677,8 +2706,17 @@ CONFIG_HISI_PMU=y
CONFIG_HISI_THERMAL=m
# CONFIG_HIST_TRIGGERS_DEBUG is not set
CONFIG_HIST_TRIGGERS=y
+# CONFIG_HIX5HD2_GMAC is not set
CONFIG_HMC425=m
# CONFIG_HMC6352 is not set
+CONFIG_HNS3_DCB=y
+CONFIG_HNS3_ENET=m
+CONFIG_HNS3_HCLGE=m
+CONFIG_HNS3_HCLGEVF=m
+CONFIG_HNS3=m
+# CONFIG_HNS3_PMU is not set
+CONFIG_HNS_DSAF=m
+CONFIG_HNS_ENET=m
CONFIG_HOLTEK_FF=y
# CONFIG_HOSTAP is not set
CONFIG_HOTPLUG_CPU=y
@@ -2788,7 +2826,6 @@ CONFIG_I2C_DESIGNWARE_PCI=m
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
@@ -2796,6 +2833,7 @@ CONFIG_I2C_DLN2=m
CONFIG_I2C_GPIO=m
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2910,11 +2948,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
CONFIG_IIO_SCMI=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
@@ -3011,6 +3051,8 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
+# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
@@ -3040,18 +3082,18 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
CONFIG_INPUT_APANEL=m
-CONFIG_INPUT_ATI_REMOTE2=m
+# CONFIG_INPUT_ATI_REMOTE2 is not set
CONFIG_INPUT_ATLAS_BTNS=m
# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
CONFIG_INPUT_AXP20X_PEK=m
# CONFIG_INPUT_BMA150 is not set
-CONFIG_INPUT_CM109=m
+# CONFIG_INPUT_CM109 is not set
CONFIG_INPUT_CMA3000_I2C=m
CONFIG_INPUT_CMA3000=m
# CONFIG_INPUT_DA7280_HAPTICS is not set
@@ -3064,7 +3106,7 @@ CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_FF_MEMLESS=m
# CONFIG_INPUT_GPIO_BEEPER is not set
# CONFIG_INPUT_GPIO_DECODER is not set
-CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
CONFIG_INPUT_GPIO_VIBRA=m
CONFIG_INPUT_HISI_POWERKEY=y
CONFIG_INPUT_IDEAPAD_SLIDEBAR=m
@@ -3075,7 +3117,7 @@ CONFIG_INPUT_IQS7222=m
CONFIG_INPUT_JOYDEV=m
CONFIG_INPUT_JOYSTICK=y
CONFIG_INPUT_KEYBOARD=y
-CONFIG_INPUT_KEYSPAN_REMOTE=m
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
CONFIG_INPUT_KXTJ9=m
CONFIG_INPUT_LEDS=y
CONFIG_INPUT_MATRIXKMAP=m
@@ -3092,7 +3134,7 @@ CONFIG_INPUT_PCSPKR=m
# CONFIG_INPUT_PM8941_PWRKEY is not set
CONFIG_INPUT_PM8XXX_VIBRATOR=m
CONFIG_INPUT_PMIC8XXX_PWRKEY=m
-CONFIG_INPUT_POWERMATE=m
+# CONFIG_INPUT_POWERMATE is not set
CONFIG_INPUT_PWM_BEEPER=m
# CONFIG_INPUT_PWM_VIBRA is not set
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
@@ -3104,7 +3146,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_INPUT_UINPUT=m
CONFIG_INPUT_WISTRON_BTNS=m
CONFIG_INPUT=y
-CONFIG_INPUT_YEALINK=m
+# CONFIG_INPUT_YEALINK is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
CONFIG_INTEGRITY_MACHINE_KEYRING=y
@@ -3136,6 +3178,7 @@ CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
CONFIG_INTEL_XWAY_PHY=m
CONFIG_INTERCONNECT_IMX8MM=m
CONFIG_INTERCONNECT_IMX8MN=m
+CONFIG_INTERCONNECT_IMX8MP=m
CONFIG_INTERCONNECT_IMX8MQ=m
CONFIG_INTERCONNECT_IMX=m
CONFIG_INTERCONNECT_QCOM_BCM_VOTER=y
@@ -3154,6 +3197,7 @@ CONFIG_INTERCONNECT_QCOM_SC8280XP=m
CONFIG_INTERCONNECT_QCOM_SDM845=m
# CONFIG_INTERCONNECT_QCOM_SDX55 is not set
# CONFIG_INTERCONNECT_QCOM_SDX65 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT_QCOM_SM8150=m
CONFIG_INTERCONNECT_QCOM_SM8250=m
# CONFIG_INTERCONNECT_QCOM_SM8350 is not set
@@ -3555,7 +3599,7 @@ CONFIG_KHADAS_MCU_FAN_THERMAL=m
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KPSS_XCC=m
CONFIG_KRAITCC=m
@@ -3794,6 +3838,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_DDR_PMU is not set
@@ -3965,7 +4010,7 @@ CONFIG_MFD_CROS_EC_DEV=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
CONFIG_MFD_HI6421_PMIC=m
@@ -4492,6 +4537,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4513,6 +4559,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4721,7 +4768,7 @@ CONFIG_NET_VENDOR_FREESCALE=y
# CONFIG_NET_VENDOR_FUJITSU is not set
CONFIG_NET_VENDOR_FUNGIBLE=y
CONFIG_NET_VENDOR_GOOGLE=y
-# CONFIG_NET_VENDOR_HISILICON is not set
+CONFIG_NET_VENDOR_HISILICON=y
# CONFIG_NET_VENDOR_HUAWEI is not set
# CONFIG_NET_VENDOR_I825XX is not set
CONFIG_NET_VENDOR_INTEL=y
@@ -4761,6 +4808,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4835,6 +4883,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4924,6 +4973,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -5012,6 +5062,7 @@ CONFIG_NVDIMM_PFN=y
CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
CONFIG_NVME_APPLE=m
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
CONFIG_NVMEM_APPLE_EFUSES=m
@@ -5030,6 +5081,7 @@ CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVMEM_ZYNQMP=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -5070,6 +5122,7 @@ CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
CONFIG_OMAP2PLUS_MBOX=m
+CONFIG_OMAP_DM_TIMER=y
# CONFIG_OMAP_GPMC_DEBUG is not set
CONFIG_OMAP_GPMC=y
CONFIG_OMAP_MBOX_KFIFO_SIZE=256
@@ -5289,9 +5342,11 @@ CONFIG_PHY_MESON8_HDMI_TX=m
CONFIG_PHY_MESON_AXG_MIPI_DPHY=m
CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG=y
CONFIG_PHY_MESON_AXG_PCIE=m
+CONFIG_PHY_MESON_G12A_MIPI_DPHY_ANALOG=y
CONFIG_PHY_MESON_G12A_USB2=y
CONFIG_PHY_MESON_G12A_USB3_PCIE=m
CONFIG_PHY_MESON_GXL_USB2=m
+# CONFIG_PHY_MIXEL_LVDS_PHY is not set
CONFIG_PHY_MIXEL_MIPI_DPHY=m
CONFIG_PHY_MVEBU_A3700_COMPHY=m
CONFIG_PHY_MVEBU_A3700_UTMI=m
@@ -5392,6 +5447,7 @@ CONFIG_PINCTRL_MESON=y
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
CONFIG_PINCTRL_MSM8226=m
# CONFIG_PINCTRL_MSM8660 is not set
+# CONFIG_PINCTRL_MSM8909 is not set
CONFIG_PINCTRL_MSM8916=m
# CONFIG_PINCTRL_MSM8953 is not set
# CONFIG_PINCTRL_MSM8960 is not set
@@ -5422,11 +5478,13 @@ CONFIG_PINCTRL_SINGLE=y
# CONFIG_PINCTRL_SM6115 is not set
# CONFIG_PINCTRL_SM6125 is not set
# CONFIG_PINCTRL_SM6350 is not set
+# CONFIG_PINCTRL_SM6375 is not set
# CONFIG_PINCTRL_SM8150 is not set
# CONFIG_PINCTRL_SM8250 is not set
# CONFIG_PINCTRL_SM8350 is not set
CONFIG_PINCTRL_SM8450=m
# CONFIG_PINCTRL_STMFX is not set
+CONFIG_PINCTRL_SUN20I_D1=y
# CONFIG_PINCTRL_SUN4I_A10 is not set
# CONFIG_PINCTRL_SUN50I_A100 is not set
# CONFIG_PINCTRL_SUN50I_A100_R is not set
@@ -5485,6 +5543,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -5495,6 +5554,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWER_RESET_AS3722=y
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -5550,7 +5610,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5604,6 +5664,7 @@ CONFIG_PVPANIC_PCI=m
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM2835=m
+CONFIG_PWM_CLK=m
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
@@ -5613,6 +5674,7 @@ CONFIG_PWM_HIBVT=m
CONFIG_PWM_IMX27=m
CONFIG_PWM_IMX_TPM=m
CONFIG_PWM_MESON=m
+CONFIG_PWM_OMAP_DMTIMER=m
CONFIG_PWM_PCA9685=m
CONFIG_PWM_RASPBERRYPI_POE=m
CONFIG_PWM_ROCKCHIP=m
@@ -5660,6 +5722,7 @@ CONFIG_QCOM_GSBI=y
CONFIG_QCOM_HFPLL=m
CONFIG_QCOM_HIDMA=m
CONFIG_QCOM_HIDMA_MGMT=m
+# CONFIG_QCOM_ICC_BWMON is not set
CONFIG_QCOM_IOMMU=y
CONFIG_QCOM_IPA=m
# CONFIG_QCOM_IPCC is not set
@@ -5694,6 +5757,7 @@ CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
CONFIG_QCOM_SPMI_IADC=m
+# CONFIG_QCOM_SPMI_RRADC is not set
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPM=y
@@ -5789,6 +5853,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
# CONFIG_RCU_SCALE_TEST is not set
@@ -5937,14 +6002,13 @@ CONFIG_RESET_SCMI=y
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_TI_SCI=m
CONFIG_RESET_TI_SYSCON=m
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -6094,6 +6158,7 @@ CONFIG_RTC_DRV_MSM6242=m
CONFIG_RTC_DRV_MV=m
# CONFIG_RTC_DRV_MXC is not set
# CONFIG_RTC_DRV_MXC_V2 is not set
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OPTEE=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
@@ -6129,6 +6194,7 @@ CONFIG_RTC_DRV_STK17TA8=m
CONFIG_RTC_DRV_SUN6I=y
CONFIG_RTC_DRV_TEGRA=m
# CONFIG_RTC_DRV_TEST is not set
+CONFIG_RTC_DRV_TI_K3=y
CONFIG_RTC_DRV_V3020=m
CONFIG_RTC_DRV_X1205=m
CONFIG_RTC_DRV_XGENE=m
@@ -6181,6 +6247,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -6508,6 +6575,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -6630,7 +6698,6 @@ CONFIG_SENSORS_XDPE152=m
CONFIG_SENSORS_XGENE=m
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
@@ -6730,6 +6797,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6766,6 +6834,7 @@ CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
# CONFIG_SM_CAMCC_8250 is not set
+# CONFIG_SM_CAMCC_8450 is not set
CONFIG_SMC_DIAG=m
CONFIG_SMC=m
# CONFIG_SM_DISPCC_8250 is not set
@@ -6780,6 +6849,7 @@ CONFIG_SM_GCC_8450=m
# CONFIG_SM_GPUCC_6350 is not set
# CONFIG_SM_GPUCC_8150 is not set
# CONFIG_SM_GPUCC_8250 is not set
+# CONFIG_SM_GPUCC_8350 is not set
CONFIG_SMP=y
CONFIG_SMSC911X=m
CONFIG_SMSC9420=m
@@ -6827,6 +6897,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -7053,6 +7125,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_ICS43432=m
# CONFIG_SND_SOC_IMG is not set
@@ -7263,6 +7336,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -7283,6 +7357,7 @@ CONFIG_SND_SOC_TEGRA210_DMIC=m
CONFIG_SND_SOC_TEGRA210_I2S=m
CONFIG_SND_SOC_TEGRA210_MIXER=m
CONFIG_SND_SOC_TEGRA210_MVC=m
+CONFIG_SND_SOC_TEGRA210_OPE=m
CONFIG_SND_SOC_TEGRA210_SFC=m
CONFIG_SND_SOC_TEGRA30_AHUB=m
CONFIG_SND_SOC_TEGRA30_I2S=m
@@ -7348,6 +7423,7 @@ CONFIG_SND_SOC_WM8962=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER=m
CONFIG_SND_SOC_XILINX_I2S=m
CONFIG_SND_SOC_XILINX_SPDIF=m
@@ -7441,7 +7517,6 @@ CONFIG_SPI_CADENCE_QUADSPI=m
CONFIG_SPI_CADENCE_XSPI=m
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_DESIGNWARE=m
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_DW_DMA is not set
CONFIG_SPI_DW_MMIO=m
CONFIG_SPI_DW_PCI=m
@@ -7460,6 +7535,7 @@ CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
CONFIG_SPI_MESON_SPICC=m
CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -7602,8 +7678,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -7667,6 +7745,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -7707,6 +7786,7 @@ CONFIG_TCS3472=m
CONFIG_TEE=m
CONFIG_TEGRA124_EMC=m
CONFIG_TEGRA186_GPC_DMA=m
+CONFIG_TEGRA186_TIMER=y
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA210_ADMA=m
CONFIG_TEGRA210_EMC=m
@@ -7735,6 +7815,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -7761,7 +7842,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -7961,6 +8042,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -7991,6 +8073,8 @@ CONFIG_TUN=m
CONFIG_TURRIS_MOX_RWTM=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+CONFIG_TYPEC_ANX7411=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -8023,6 +8107,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -8057,6 +8142,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -8317,6 +8403,7 @@ CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_HCD_PCI=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
# CONFIG_USB_OHCI_HCD_SSB is not set
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_OTG_FSM=m
# CONFIG_USB_OTG_PRODUCTLIST is not set
@@ -8475,6 +8562,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
CONFIG_VCNL4000=m
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -8516,6 +8604,7 @@ CONFIG_VIDEO_ADP1653=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_ALLEGRO_DVT=m
# CONFIG_VIDEO_AMPHION_VPU is not set
+CONFIG_VIDEO_AR0521=m
# CONFIG_VIDEO_ASPEED is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
@@ -8670,9 +8759,12 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
CONFIG_VIDEO_SUN4I_CSI=m
CONFIG_VIDEO_SUN6I_CSI=m
+# CONFIG_VIDEO_SUN6I_MIPI_CSI2 is not set
+# CONFIG_VIDEO_SUN8I_A83T_MIPI_CSI2 is not set
CONFIG_VIDEO_SUN8I_DEINTERLACE=m
CONFIG_VIDEO_SUN8I_ROTATE=m
CONFIG_VIDEO_SUNXI_CEDRUS=m
@@ -8866,6 +8958,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -8972,8 +9065,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-aarch64-debug-rhel.config b/SOURCES/kernel-aarch64-debug-rhel.config
index 8a5513f..8214c25 100644
--- a/SOURCES/kernel-aarch64-debug-rhel.config
+++ b/SOURCES/kernel-aarch64-debug-rhel.config
@@ -11,6 +11,7 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
CONFIG_ACCESSIBILITY=y
# CONFIG_ACORN_PARTITION is not set
@@ -57,6 +58,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
# CONFIG_ACPI_TAD is not set
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
@@ -206,7 +208,7 @@ CONFIG_AMD_PMC=m
CONFIG_AMD_XGBE=m
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
# CONFIG_APDS9802ALS is not set
@@ -220,8 +222,10 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_ACTIONS is not set
# CONFIG_ARCH_ALPINE is not set
# CONFIG_ARCH_APPLE is not set
+# CONFIG_ARCH_ASPEED is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
CONFIG_ARCH_BCM_IPROC=y
# CONFIG_ARCH_BERLIN is not set
# CONFIG_ARCH_BITMAIN is not set
@@ -237,6 +241,7 @@ CONFIG_ARCH_HISI=y
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_QCOM=y
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
@@ -282,7 +287,6 @@ CONFIG_ARM64_ERRATUM_1463225=y
CONFIG_ARM64_ERRATUM_1508412=y
CONFIG_ARM64_ERRATUM_1530923=y
CONFIG_ARM64_ERRATUM_1542419=y
-CONFIG_ARM64_ERRATUM_1742098=y
CONFIG_ARM64_ERRATUM_1902691=y
CONFIG_ARM64_ERRATUM_2038923=y
CONFIG_ARM64_ERRATUM_2051678=y
@@ -294,6 +298,7 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
+CONFIG_ARM64_ERRATUM_2441007=y
CONFIG_ARM64_ERRATUM_2441009=y
CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_ERRATUM_819472=y
@@ -341,6 +346,7 @@ CONFIG_ARM_PMU=y
# CONFIG_ARM_QCOM_CPUFREQ_HW is not set
CONFIG_ARM_SBSA_WATCHDOG=m
CONFIG_ARM_SCMI_CPUFREQ=m
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -355,6 +361,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMC_WATCHDOG is not set
# CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT is not set
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU_V3_PMU=m
CONFIG_ARM_SMMU_V3_SVA=y
CONFIG_ARM_SMMU_V3=y
@@ -511,7 +518,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -546,6 +553,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -692,6 +700,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -700,6 +709,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -720,6 +730,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -770,6 +781,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_DEBUG=y
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -909,7 +921,7 @@ CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
CONFIG_CORESIGHT_CATU=m
@@ -945,17 +957,15 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-CONFIG_CPU_IBPB_ENTRY=y
-CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_CPU_IDLE_GOV_HALTPOLL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE_GOV_TEO is not set
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
CONFIG_CPU_THERMAL=y
-CONFIG_CPU_UNRET_ENTRY=y
# CONFIG_CRAMFS is not set
# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
@@ -990,6 +1000,7 @@ CONFIG_CRYPTO_AES_ARM64_NEON_BLK=y
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -1047,7 +1058,7 @@ CONFIG_CRYPTO_DEV_OCTEONTX2_CPT=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1067,6 +1078,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM64_CE=m
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -1092,6 +1104,8 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_NEON=y
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1149,6 +1163,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1249,8 +1264,6 @@ CONFIG_DEFAULT_NET_SCH="fq_codel"
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFAULT_SFQ is not set
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_DAX_HMEM=m
CONFIG_DEV_DAX_KMEM=m
@@ -1265,8 +1278,8 @@ CONFIG_DEVTMPFS=y
# CONFIG_DHT11 is not set
CONFIG_DIMLIB=y
# CONFIG_DLHL60D is not set
+# CONFIG_DLM_DEPRECATED_API is not set
# CONFIG_DLM is not set
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
CONFIG_DMA_API_DEBUG_SG=y
CONFIG_DMA_API_DEBUG=y
@@ -1321,6 +1334,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1381,12 +1395,14 @@ CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1406,6 +1422,7 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
# CONFIG_DRM_PANEL_EDP is not set
# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+CONFIG_DRM_PANEL_ILITEK_ILI9341=m
# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
@@ -1449,6 +1466,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_TEGRA is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1633,6 +1651,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
# CONFIG_EPIC100 is not set
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1880,7 +1899,6 @@ CONFIG_GLOB=y
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -2057,6 +2075,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -2096,6 +2115,7 @@ CONFIG_HNS3_ENET=m
CONFIG_HNS3_HCLGE=m
CONFIG_HNS3_HCLGEVF=m
CONFIG_HNS3=m
+# CONFIG_HNS3_PMU is not set
CONFIG_HNS_DSAF=m
CONFIG_HNS_ENET=m
CONFIG_HNS=m
@@ -2111,6 +2131,7 @@ CONFIG_HOTPLUG_PCI=y
# CONFIG_HP206C is not set
# CONFIG_HPFS_FS is not set
# CONFIG_HP_ILO is not set
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2188,12 +2209,12 @@ CONFIG_I2C_COMPAT=y
CONFIG_I2C_DESIGNWARE_PLATFORM=m
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_GPIO_FAULT_INJECTOR=y
CONFIG_I2C_GPIO=m
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2292,6 +2313,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
# CONFIG_IIO is not set
# CONFIG_IIO_MUX is not set
@@ -2358,6 +2380,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
@@ -2393,11 +2416,11 @@ CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
CONFIG_INPUT_APANEL=m
-CONFIG_INPUT_ATI_REMOTE2=m
+# CONFIG_INPUT_ATI_REMOTE2 is not set
CONFIG_INPUT_ATLAS_BTNS=m
# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
# CONFIG_INPUT_BMA150 is not set
-CONFIG_INPUT_CM109=m
+# CONFIG_INPUT_CM109 is not set
# CONFIG_INPUT_CMA3000 is not set
# CONFIG_INPUT_DA7280_HAPTICS is not set
# CONFIG_INPUT_DRV260X_HAPTICS is not set
@@ -2409,8 +2432,9 @@ CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_FF_MEMLESS=m
# CONFIG_INPUT_GPIO_BEEPER is not set
# CONFIG_INPUT_GPIO_DECODER is not set
-CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_HISI_POWERKEY is not set
# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set
# CONFIG_INPUT_IMS_PCU is not set
# CONFIG_INPUT_IQS269A is not set
@@ -2419,11 +2443,11 @@ CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_JOYSTICK is not set
CONFIG_INPUT_KEYBOARD=y
-CONFIG_INPUT_KEYSPAN_REMOTE=m
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
# CONFIG_INPUT_KXTJ9 is not set
CONFIG_INPUT_LEDS=y
# CONFIG_INPUT_MATRIXKMAP is not set
-# CONFIG_INPUT_MISC is not set
+CONFIG_INPUT_MISC=y
# CONFIG_INPUT_MMA8450 is not set
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
@@ -2432,18 +2456,20 @@ CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSE=y
# CONFIG_INPUT_PCF8574 is not set
CONFIG_INPUT_PCSPKR=m
-CONFIG_INPUT_POWERMATE=m
+# CONFIG_INPUT_POWERMATE is not set
# CONFIG_INPUT_PWM_BEEPER is not set
# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
CONFIG_INPUT_SPARSEKMAP=m
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_UINPUT=m
CONFIG_INPUT=y
-CONFIG_INPUT_YEALINK=m
+# CONFIG_INPUT_YEALINK is not set
# CONFIG_INT3406_THERMAL is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2452,7 +2478,6 @@ CONFIG_INTEGRITY=y
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_INTEL_IDXD_COMPAT is not set
CONFIG_INTEL_IDXD=m
-# CONFIG_INTEL_IFS is not set
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -2804,7 +2829,7 @@ CONFIG_KGDB=y
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2814,6 +2839,8 @@ CONFIG_KUNIT_EXAMPLE_TEST=m
CONFIG_KUNIT=m
CONFIG_KUNIT_TEST=m
CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
# CONFIG_KVM_XEN is not set
CONFIG_KVM=y
# CONFIG_KXCJK1013 is not set
@@ -3039,7 +3066,7 @@ CONFIG_MARVELL_PHY=m
# CONFIG_MAX5821 is not set
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
@@ -3150,7 +3177,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3784,6 +3811,7 @@ CONFIG_NET_VENDOR_STMICRO=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3826,6 +3854,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3921,6 +3950,7 @@ CONFIG_N_HDLC=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -4010,6 +4040,7 @@ CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_BCM_OCOTP is not set
@@ -4019,6 +4050,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4320,6 +4352,7 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4328,6 +4361,7 @@ CONFIG_PNFS_FILE_LAYOUT=m
CONFIG_PNP_DEBUG_MESSAGES=y
CONFIG_POSIX_MQUEUE=y
# CONFIG_POWERCAP is not set
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_OP_PANEL=m
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -4427,6 +4461,7 @@ CONFIG_PVPANIC_PCI=m
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM_IPROC=y
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4454,6 +4489,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
# CONFIG_QCOM_GSBI is not set
CONFIG_QCOM_HIDMA=m
CONFIG_QCOM_HIDMA_MGMT=m
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
CONFIG_QCOM_L2_PMU=y
@@ -4544,6 +4580,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4621,16 +4658,14 @@ CONFIG_RESET_CONTROLLER=y
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_SCMI is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
-CONFIG_RETHUNK=y
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4731,6 +4766,7 @@ CONFIG_RTC_DRV_MAX6902=m
# CONFIG_RTC_DRV_MAX6916 is not set
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF85063=m
@@ -4809,6 +4845,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
# CONFIG_S390_MODULES_SANITY_TEST is not set
@@ -4942,12 +4979,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
CONFIG_SDIO_UART=m
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -5088,6 +5126,7 @@ CONFIG_SENSORS_LM70=m
# CONFIG_SENSORS_LM95234 is not set
# CONFIG_SENSORS_LM95241 is not set
# CONFIG_SENSORS_LM95245 is not set
+# CONFIG_SENSORS_LT7182S is not set
CONFIG_SENSORS_LTC2945=m
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -5209,7 +5248,6 @@ CONFIG_SENSORS_VIA_CPUTEMP=m
CONFIG_SENSORS_XGENE=m
# CONFIG_SENSORS_ZL6100 is not set
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5251,7 +5289,6 @@ CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
# CONFIG_SERIAL_MSM is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_SERIAL_OF_PLATFORM=y
# CONFIG_SERIAL_RP2 is not set
@@ -5287,6 +5324,7 @@ CONFIG_SFC_MCDI_LOGGING=y
CONFIG_SGETMASK_SYSCALL=y
# CONFIG_SGI_PARTITION is not set
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5358,6 +5396,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5519,6 +5559,7 @@ CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
# CONFIG_SND_SOC_AMD_RENOIR is not set
# CONFIG_SND_SOC_AMD_RENOIR_MACH is not set
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
# CONFIG_SND_SOC_AMD_RV_RT5682_MACH is not set
# CONFIG_SND_SOC_AMD_VANGOGH_MACH is not set
# CONFIG_SND_SOC_AMD_YC_MACH is not set
@@ -5594,6 +5635,18 @@ CONFIG_SND_SOC_CX2072X=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_INTEL_AVS is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
# CONFIG_SND_SOC_INTEL_BROADWELL_MACH is not set
@@ -5760,6 +5813,7 @@ CONFIG_SND_SOC_SOF_HDA_PROBES=m
# CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL is not set
# CONFIG_SND_SOC_SOF_JASPERLAKE is not set
# CONFIG_SND_SOC_SOF_MERRIFIELD is not set
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
# CONFIG_SND_SOC_SOF_TIGERLAKE is not set
@@ -5782,6 +5836,7 @@ CONFIG_SND_SOC_SOF_TOPLEVEL=y
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5861,6 +5916,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5933,7 +5989,6 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
-CONFIG_SPECULATION_MITIGATIONS=y
# CONFIG_SPI_ALTERA_CORE is not set
# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_AMD=y
@@ -5945,7 +6000,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
CONFIG_SPI_DEBUG=y
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5954,6 +6008,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LOOPBACK_TEST is not set
CONFIG_SPI_MASTER=y
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6058,7 +6113,7 @@ CONFIG_SYNTH_EVENT_GEN_TEST=m
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_SYSTEM76_ACPI is not set
@@ -6093,7 +6148,9 @@ CONFIG_TCG_CRB=y
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
CONFIG_TCG_TIS_I2C_NUVOTON=m
-# CONFIG_TCG_TIS_SPI is not set
+CONFIG_TCG_TIS_I2C=y
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -6128,6 +6185,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
# CONFIG_TEGRA20_APB_DMA is not set
# CONFIG_TEGRA_GMI is not set
# CONFIG_TEGRA_HOST1X is not set
@@ -6143,6 +6201,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
CONFIG_TEST_FPU=m
@@ -6169,7 +6228,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
CONFIG_TEST_STRING_HELPERS=m
@@ -6335,6 +6394,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6357,6 +6417,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6383,6 +6445,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
CONFIG_UEFI_CPER_ARM=y
@@ -6566,6 +6629,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6704,6 +6768,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6713,6 +6778,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
CONFIG_VEXPRESS_CONFIG=y
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_IOMMU_TYPE1=m
@@ -6736,6 +6802,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6780,6 +6847,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -6981,7 +7049,6 @@ CONFIG_WWAN=y
# CONFIG_X25 is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_X86_IOPL_IOPERM=y
-# CONFIG_X86_KERNEL_IBT is not set
CONFIG_X86_PMEM_LEGACY_DEVICE=y
CONFIG_X86_PMEM_LEGACY=m
CONFIG_X86_SGX_KVM=y
@@ -7087,8 +7154,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-aarch64-fedora.config b/SOURCES/kernel-aarch64-fedora.config
index 0a7693b..b51c6f0 100644
--- a/SOURCES/kernel-aarch64-fedora.config
+++ b/SOURCES/kernel-aarch64-fedora.config
@@ -29,6 +29,7 @@ CONFIG_9P_FS=m
CONFIG_9P_FS_POSIX_ACL=y
CONFIG_9P_FS_SECURITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
+CONFIG_A64FX_DIAG=y
CONFIG_ABP060MG=m
CONFIG_ACCESSIBILITY=y
CONFIG_ACENIC=m
@@ -50,7 +51,7 @@ CONFIG_ACPI_BUTTON=y
# CONFIG_ACPI_CMPC is not set
# CONFIG_ACPI_CONFIGFS is not set
CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
+# CONFIG_ACPI_CPPC_CPUFREQ_FIE is not set
CONFIG_ACPI_CPPC_CPUFREQ=m
# CONFIG_ACPI_CUSTOM_METHOD is not set
# CONFIG_ACPI_DEBUGGER is not set
@@ -77,6 +78,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WATCHDOG=y
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
@@ -245,7 +247,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -271,6 +272,7 @@ CONFIG_AR5523=m
# CONFIG_ARCH_AIROHA is not set
# CONFIG_ARCH_ALPINE is not set
CONFIG_ARCH_APPLE=y
+# CONFIG_ARCH_ASPEED is not set
# CONFIG_ARCH_BCM_21664 is not set
# CONFIG_ARCH_BCM_23550 is not set
# CONFIG_ARCH_BCM_281XX is not set
@@ -279,6 +281,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_5301X is not set
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
@@ -306,6 +309,7 @@ CONFIG_ARCH_MESON=y
CONFIG_ARCH_MULTIPLATFORM=y
CONFIG_ARCH_MVEBU=y
CONFIG_ARCH_MXC=y
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_NR_GPIO=2048
# CONFIG_ARCH_OMAP1 is not set
# CONFIG_ARCH_PXA is not set
@@ -369,6 +373,7 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
+CONFIG_ARM64_ERRATUM_2441007=y
CONFIG_ARM64_ERRATUM_2441009=y
CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_ERRATUM_819472=y
@@ -424,7 +429,7 @@ CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_CRYPTO=y
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
CONFIG_ARM_DMA_USE_IOMMU=y
-# CONFIG_ARM_DMC620_PMU is not set
+CONFIG_ARM_DMC620_PMU=m
CONFIG_ARM_DSU_PMU=m
CONFIG_ARM_FFA_TRANSPORT=m
CONFIG_ARM_GIC_PM=y
@@ -455,6 +460,7 @@ CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
CONFIG_ARM_RK3399_DMC_DEVFREQ=m
CONFIG_ARM_SBSA_WATCHDOG=m
CONFIG_ARM_SCMI_CPUFREQ=m
+CONFIG_ARM_SCMI_POWER_CONTROL=m
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -471,6 +477,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
CONFIG_ARM_SMC_WATCHDOG=m
CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU_V3_PMU=m
CONFIG_ARM_SMMU_V3_SVA=y
CONFIG_ARM_SMMU_V3=y
@@ -720,7 +727,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -758,6 +765,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -927,6 +935,7 @@ CONFIG_CADENCE_WATCHDOG=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -935,6 +944,7 @@ CONFIG_CAN_CTUCANFD_PLATFORM=m
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
CONFIG_CAN_FLEXCAN=m
# CONFIG_CAN_GRCAN is not set
@@ -955,6 +965,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -1021,6 +1032,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -1222,7 +1234,7 @@ CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
CONFIG_CORESIGHT_CATU=m
@@ -1267,6 +1279,7 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
CONFIG_CPU_THERMAL=y
@@ -1301,6 +1314,7 @@ CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_EC_VBC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1319,6 +1333,7 @@ CONFIG_CRYPTO_AES_ARM=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B_NEON=m
CONFIG_CRYPTO_BLAKE2B=y
@@ -1419,7 +1434,7 @@ CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG=y
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_ZYNQMP_AES=m
# CONFIG_CRYPTO_DEV_ZYNQMP_SHA3 is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1439,6 +1454,7 @@ CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM64_CE=m
CONFIG_CRYPTO_GHASH_ARM_CE=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1464,6 +1480,7 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_NEON=y
+CONFIG_CRYPTO_POLYVAL_ARM64_CE=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1528,6 +1545,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1620,8 +1638,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DETECT_HUNG_TASK is not set
# CONFIG_DEV_APPLETALK is not set
CONFIG_DEV_DAX_HMEM=m
@@ -1646,8 +1662,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
# CONFIG_DMA_API_DEBUG is not set
@@ -1783,13 +1799,20 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_IMX8QM_LDB=m
+CONFIG_DRM_IMX8QXP_LDB=m
+CONFIG_DRM_IMX8QXP_PIXEL_COMBINER=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK_TO_DPI=m
CONFIG_DRM_IMX_DCSS=m
+CONFIG_DRM_IMX_LCDIF=m
CONFIG_DRM_ITE_IT6505=m
CONFIG_DRM_ITE_IT66121=m
CONFIG_DRM_KOMEDA=m
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LIMA=m
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
CONFIG_DRM_LONTIUM_LT9611=m
@@ -1829,6 +1852,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_EDP=m
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1926,6 +1950,7 @@ CONFIG_DRM_SUN8I_MIXER=m
CONFIG_DRM_TEGRA=m
CONFIG_DRM_TEGRA_STAGING=y
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
CONFIG_DRM_TIDSS=m
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -2283,10 +2308,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
# CONFIG_FPGA_MGR_VERSAL_FPGA is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
@@ -2428,7 +2455,6 @@ CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_DAVINCI=y
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2633,6 +2659,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2649,8 +2676,10 @@ CONFIG_HID=y
CONFIG_HID_ZEROPLUS=m
CONFIG_HID_ZYDACRON=m
CONFIG_HIGH_RES_TIMERS=y
+# CONFIG_HIP04_ETH is not set
# CONFIG_HIPPI is not set
CONFIG_HISI_DMA=m
+# CONFIG_HISI_FEMAC is not set
CONFIG_HISI_HIKEY_USB=m
CONFIG_HISILICON_ERRATUM_161010101=y
CONFIG_HISILICON_ERRATUM_161600802=y
@@ -2661,8 +2690,17 @@ CONFIG_HISI_PMU=y
CONFIG_HISI_THERMAL=m
# CONFIG_HIST_TRIGGERS_DEBUG is not set
CONFIG_HIST_TRIGGERS=y
+# CONFIG_HIX5HD2_GMAC is not set
CONFIG_HMC425=m
# CONFIG_HMC6352 is not set
+CONFIG_HNS3_DCB=y
+CONFIG_HNS3_ENET=m
+CONFIG_HNS3_HCLGE=m
+CONFIG_HNS3_HCLGEVF=m
+CONFIG_HNS3=m
+# CONFIG_HNS3_PMU is not set
+CONFIG_HNS_DSAF=m
+CONFIG_HNS_ENET=m
CONFIG_HOLTEK_FF=y
# CONFIG_HOSTAP is not set
CONFIG_HOTPLUG_CPU=y
@@ -2772,7 +2810,6 @@ CONFIG_I2C_DESIGNWARE_PCI=m
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
@@ -2780,6 +2817,7 @@ CONFIG_I2C_DLN2=m
CONFIG_I2C_GPIO=m
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2894,11 +2932,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
CONFIG_IIO_SCMI=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
@@ -2995,6 +3035,8 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
+# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
@@ -3024,18 +3066,18 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
CONFIG_INPUT_APANEL=m
-CONFIG_INPUT_ATI_REMOTE2=m
+# CONFIG_INPUT_ATI_REMOTE2 is not set
CONFIG_INPUT_ATLAS_BTNS=m
# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
CONFIG_INPUT_AXP20X_PEK=m
# CONFIG_INPUT_BMA150 is not set
-CONFIG_INPUT_CM109=m
+# CONFIG_INPUT_CM109 is not set
CONFIG_INPUT_CMA3000_I2C=m
CONFIG_INPUT_CMA3000=m
# CONFIG_INPUT_DA7280_HAPTICS is not set
@@ -3048,7 +3090,7 @@ CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_FF_MEMLESS=m
# CONFIG_INPUT_GPIO_BEEPER is not set
# CONFIG_INPUT_GPIO_DECODER is not set
-CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
CONFIG_INPUT_GPIO_VIBRA=m
CONFIG_INPUT_HISI_POWERKEY=y
CONFIG_INPUT_IDEAPAD_SLIDEBAR=m
@@ -3059,7 +3101,7 @@ CONFIG_INPUT_IQS7222=m
CONFIG_INPUT_JOYDEV=m
CONFIG_INPUT_JOYSTICK=y
CONFIG_INPUT_KEYBOARD=y
-CONFIG_INPUT_KEYSPAN_REMOTE=m
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
CONFIG_INPUT_KXTJ9=m
CONFIG_INPUT_LEDS=y
CONFIG_INPUT_MATRIXKMAP=m
@@ -3076,7 +3118,7 @@ CONFIG_INPUT_PCSPKR=m
# CONFIG_INPUT_PM8941_PWRKEY is not set
CONFIG_INPUT_PM8XXX_VIBRATOR=m
CONFIG_INPUT_PMIC8XXX_PWRKEY=m
-CONFIG_INPUT_POWERMATE=m
+# CONFIG_INPUT_POWERMATE is not set
CONFIG_INPUT_PWM_BEEPER=m
# CONFIG_INPUT_PWM_VIBRA is not set
# CONFIG_INPUT_REGULATOR_HAPTIC is not set
@@ -3088,7 +3130,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_INPUT_UINPUT=m
CONFIG_INPUT_WISTRON_BTNS=m
CONFIG_INPUT=y
-CONFIG_INPUT_YEALINK=m
+# CONFIG_INPUT_YEALINK is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
CONFIG_INTEGRITY_MACHINE_KEYRING=y
@@ -3120,6 +3162,7 @@ CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
CONFIG_INTEL_XWAY_PHY=m
CONFIG_INTERCONNECT_IMX8MM=m
CONFIG_INTERCONNECT_IMX8MN=m
+CONFIG_INTERCONNECT_IMX8MP=m
CONFIG_INTERCONNECT_IMX8MQ=m
CONFIG_INTERCONNECT_IMX=m
CONFIG_INTERCONNECT_QCOM_BCM_VOTER=y
@@ -3138,6 +3181,7 @@ CONFIG_INTERCONNECT_QCOM_SC8280XP=m
CONFIG_INTERCONNECT_QCOM_SDM845=m
# CONFIG_INTERCONNECT_QCOM_SDX55 is not set
# CONFIG_INTERCONNECT_QCOM_SDX65 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT_QCOM_SM8150=m
CONFIG_INTERCONNECT_QCOM_SM8250=m
# CONFIG_INTERCONNECT_QCOM_SM8350 is not set
@@ -3536,7 +3580,7 @@ CONFIG_KHADAS_MCU_FAN_THERMAL=m
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KPSS_XCC=m
CONFIG_KRAITCC=m
@@ -3775,6 +3819,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_DDR_PMU is not set
@@ -3945,7 +3990,7 @@ CONFIG_MFD_CROS_EC_DEV=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
CONFIG_MFD_HI6421_PMIC=m
@@ -4472,6 +4517,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4493,6 +4539,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4701,7 +4748,7 @@ CONFIG_NET_VENDOR_FREESCALE=y
# CONFIG_NET_VENDOR_FUJITSU is not set
CONFIG_NET_VENDOR_FUNGIBLE=y
CONFIG_NET_VENDOR_GOOGLE=y
-# CONFIG_NET_VENDOR_HISILICON is not set
+CONFIG_NET_VENDOR_HISILICON=y
# CONFIG_NET_VENDOR_HUAWEI is not set
# CONFIG_NET_VENDOR_I825XX is not set
CONFIG_NET_VENDOR_INTEL=y
@@ -4741,6 +4788,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4815,6 +4863,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4904,6 +4953,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4992,6 +5042,7 @@ CONFIG_NVDIMM_PFN=y
CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
CONFIG_NVME_APPLE=m
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
CONFIG_NVMEM_APPLE_EFUSES=m
@@ -5010,6 +5061,7 @@ CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVMEM_ZYNQMP=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -5050,6 +5102,7 @@ CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
CONFIG_OMAP2PLUS_MBOX=m
+CONFIG_OMAP_DM_TIMER=y
# CONFIG_OMAP_GPMC_DEBUG is not set
CONFIG_OMAP_GPMC=y
CONFIG_OMAP_MBOX_KFIFO_SIZE=256
@@ -5268,9 +5321,11 @@ CONFIG_PHY_MESON8_HDMI_TX=m
CONFIG_PHY_MESON_AXG_MIPI_DPHY=m
CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG=y
CONFIG_PHY_MESON_AXG_PCIE=m
+CONFIG_PHY_MESON_G12A_MIPI_DPHY_ANALOG=y
CONFIG_PHY_MESON_G12A_USB2=y
CONFIG_PHY_MESON_G12A_USB3_PCIE=m
CONFIG_PHY_MESON_GXL_USB2=m
+# CONFIG_PHY_MIXEL_LVDS_PHY is not set
CONFIG_PHY_MIXEL_MIPI_DPHY=m
CONFIG_PHY_MVEBU_A3700_COMPHY=m
CONFIG_PHY_MVEBU_A3700_UTMI=m
@@ -5371,6 +5426,7 @@ CONFIG_PINCTRL_MESON=y
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
CONFIG_PINCTRL_MSM8226=m
# CONFIG_PINCTRL_MSM8660 is not set
+# CONFIG_PINCTRL_MSM8909 is not set
CONFIG_PINCTRL_MSM8916=m
# CONFIG_PINCTRL_MSM8953 is not set
# CONFIG_PINCTRL_MSM8960 is not set
@@ -5401,11 +5457,13 @@ CONFIG_PINCTRL_SINGLE=y
# CONFIG_PINCTRL_SM6115 is not set
# CONFIG_PINCTRL_SM6125 is not set
# CONFIG_PINCTRL_SM6350 is not set
+# CONFIG_PINCTRL_SM6375 is not set
# CONFIG_PINCTRL_SM8150 is not set
# CONFIG_PINCTRL_SM8250 is not set
# CONFIG_PINCTRL_SM8350 is not set
CONFIG_PINCTRL_SM8450=m
# CONFIG_PINCTRL_STMFX is not set
+CONFIG_PINCTRL_SUN20I_D1=y
# CONFIG_PINCTRL_SUN4I_A10 is not set
# CONFIG_PINCTRL_SUN50I_A100 is not set
# CONFIG_PINCTRL_SUN50I_A100_R is not set
@@ -5464,6 +5522,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -5474,6 +5533,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWER_RESET_AS3722=y
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -5529,7 +5589,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5583,6 +5643,7 @@ CONFIG_PVPANIC_PCI=m
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM2835=m
+CONFIG_PWM_CLK=m
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
@@ -5592,6 +5653,7 @@ CONFIG_PWM_HIBVT=m
CONFIG_PWM_IMX27=m
CONFIG_PWM_IMX_TPM=m
CONFIG_PWM_MESON=m
+CONFIG_PWM_OMAP_DMTIMER=m
CONFIG_PWM_PCA9685=m
CONFIG_PWM_RASPBERRYPI_POE=m
CONFIG_PWM_ROCKCHIP=m
@@ -5639,6 +5701,7 @@ CONFIG_QCOM_GSBI=y
CONFIG_QCOM_HFPLL=m
CONFIG_QCOM_HIDMA=m
CONFIG_QCOM_HIDMA_MGMT=m
+# CONFIG_QCOM_ICC_BWMON is not set
CONFIG_QCOM_IOMMU=y
CONFIG_QCOM_IPA=m
# CONFIG_QCOM_IPCC is not set
@@ -5673,6 +5736,7 @@ CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
CONFIG_QCOM_SPMI_IADC=m
+# CONFIG_QCOM_SPMI_RRADC is not set
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPM=y
@@ -5768,6 +5832,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_REF_SCALE_TEST is not set
# CONFIG_RCU_SCALE_TEST is not set
@@ -5916,14 +5981,13 @@ CONFIG_RESET_SCMI=y
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_TI_SCI=m
CONFIG_RESET_TI_SYSCON=m
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -6073,6 +6137,7 @@ CONFIG_RTC_DRV_MSM6242=m
CONFIG_RTC_DRV_MV=m
# CONFIG_RTC_DRV_MXC is not set
# CONFIG_RTC_DRV_MXC_V2 is not set
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OPTEE=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
@@ -6108,6 +6173,7 @@ CONFIG_RTC_DRV_STK17TA8=m
CONFIG_RTC_DRV_SUN6I=y
CONFIG_RTC_DRV_TEGRA=m
# CONFIG_RTC_DRV_TEST is not set
+CONFIG_RTC_DRV_TI_K3=y
CONFIG_RTC_DRV_V3020=m
CONFIG_RTC_DRV_X1205=m
CONFIG_RTC_DRV_XGENE=m
@@ -6160,6 +6226,7 @@ CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -6487,6 +6554,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -6609,7 +6677,6 @@ CONFIG_SENSORS_XDPE152=m
CONFIG_SENSORS_XGENE=m
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
@@ -6709,6 +6776,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6745,6 +6813,7 @@ CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
# CONFIG_SM_CAMCC_8250 is not set
+# CONFIG_SM_CAMCC_8450 is not set
CONFIG_SMC_DIAG=m
CONFIG_SMC=m
# CONFIG_SM_DISPCC_8250 is not set
@@ -6759,6 +6828,7 @@ CONFIG_SM_GCC_8450=m
# CONFIG_SM_GPUCC_6350 is not set
# CONFIG_SM_GPUCC_8150 is not set
# CONFIG_SM_GPUCC_8250 is not set
+# CONFIG_SM_GPUCC_8350 is not set
CONFIG_SMP=y
CONFIG_SMSC911X=m
CONFIG_SMSC9420=m
@@ -6806,6 +6876,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -7031,6 +7103,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_ICS43432=m
# CONFIG_SND_SOC_IMG is not set
@@ -7240,6 +7313,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -7260,6 +7334,7 @@ CONFIG_SND_SOC_TEGRA210_DMIC=m
CONFIG_SND_SOC_TEGRA210_I2S=m
CONFIG_SND_SOC_TEGRA210_MIXER=m
CONFIG_SND_SOC_TEGRA210_MVC=m
+CONFIG_SND_SOC_TEGRA210_OPE=m
CONFIG_SND_SOC_TEGRA210_SFC=m
CONFIG_SND_SOC_TEGRA30_AHUB=m
CONFIG_SND_SOC_TEGRA30_I2S=m
@@ -7325,6 +7400,7 @@ CONFIG_SND_SOC_WM8962=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER=m
CONFIG_SND_SOC_XILINX_I2S=m
CONFIG_SND_SOC_XILINX_SPDIF=m
@@ -7418,7 +7494,6 @@ CONFIG_SPI_CADENCE_QUADSPI=m
CONFIG_SPI_CADENCE_XSPI=m
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_DESIGNWARE=m
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_DW_DMA is not set
CONFIG_SPI_DW_MMIO=m
CONFIG_SPI_DW_PCI=m
@@ -7437,6 +7512,7 @@ CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
CONFIG_SPI_MESON_SPICC=m
CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -7579,8 +7655,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -7644,6 +7722,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -7684,6 +7763,7 @@ CONFIG_TCS3472=m
CONFIG_TEE=m
CONFIG_TEGRA124_EMC=m
CONFIG_TEGRA186_GPC_DMA=m
+CONFIG_TEGRA186_TIMER=y
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA210_ADMA=m
CONFIG_TEGRA210_EMC=m
@@ -7712,6 +7792,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -7738,7 +7819,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -7938,6 +8019,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -7968,6 +8050,8 @@ CONFIG_TUN=m
CONFIG_TURRIS_MOX_RWTM=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+CONFIG_TYPEC_ANX7411=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -8000,6 +8084,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -8034,6 +8119,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -8294,6 +8380,7 @@ CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_HCD_PCI=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
# CONFIG_USB_OHCI_HCD_SSB is not set
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_OTG_FSM=m
# CONFIG_USB_OTG_PRODUCTLIST is not set
@@ -8452,6 +8539,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
CONFIG_VCNL4000=m
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -8493,6 +8581,7 @@ CONFIG_VIDEO_ADP1653=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_ALLEGRO_DVT=m
# CONFIG_VIDEO_AMPHION_VPU is not set
+CONFIG_VIDEO_AR0521=m
# CONFIG_VIDEO_ASPEED is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
@@ -8647,9 +8736,12 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
CONFIG_VIDEO_SUN4I_CSI=m
CONFIG_VIDEO_SUN6I_CSI=m
+# CONFIG_VIDEO_SUN6I_MIPI_CSI2 is not set
+# CONFIG_VIDEO_SUN8I_A83T_MIPI_CSI2 is not set
CONFIG_VIDEO_SUN8I_DEINTERLACE=m
CONFIG_VIDEO_SUN8I_ROTATE=m
CONFIG_VIDEO_SUNXI_CEDRUS=m
@@ -8843,6 +8935,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -8949,8 +9042,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-aarch64-rhel.config b/SOURCES/kernel-aarch64-rhel.config
index 545e07b..9298796 100644
--- a/SOURCES/kernel-aarch64-rhel.config
+++ b/SOURCES/kernel-aarch64-rhel.config
@@ -11,6 +11,7 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
CONFIG_ACCESSIBILITY=y
# CONFIG_ACORN_PARTITION is not set
@@ -57,6 +58,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
# CONFIG_ACPI_TAD is not set
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
@@ -206,7 +208,7 @@ CONFIG_AMD_PMC=m
CONFIG_AMD_XGBE=m
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
# CONFIG_APDS9802ALS is not set
@@ -220,8 +222,10 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_ACTIONS is not set
# CONFIG_ARCH_ALPINE is not set
# CONFIG_ARCH_APPLE is not set
+# CONFIG_ARCH_ASPEED is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
CONFIG_ARCH_BCM_IPROC=y
# CONFIG_ARCH_BERLIN is not set
# CONFIG_ARCH_BITMAIN is not set
@@ -237,6 +241,7 @@ CONFIG_ARCH_HISI=y
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_QCOM=y
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
@@ -282,7 +287,6 @@ CONFIG_ARM64_ERRATUM_1463225=y
CONFIG_ARM64_ERRATUM_1508412=y
CONFIG_ARM64_ERRATUM_1530923=y
CONFIG_ARM64_ERRATUM_1542419=y
-CONFIG_ARM64_ERRATUM_1742098=y
CONFIG_ARM64_ERRATUM_1902691=y
CONFIG_ARM64_ERRATUM_2038923=y
CONFIG_ARM64_ERRATUM_2051678=y
@@ -294,6 +298,7 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
+CONFIG_ARM64_ERRATUM_2441007=y
CONFIG_ARM64_ERRATUM_2441009=y
CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_ERRATUM_819472=y
@@ -341,6 +346,7 @@ CONFIG_ARM_PMU=y
# CONFIG_ARM_QCOM_CPUFREQ_HW is not set
CONFIG_ARM_SBSA_WATCHDOG=m
CONFIG_ARM_SCMI_CPUFREQ=m
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -355,6 +361,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMC_WATCHDOG is not set
# CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT is not set
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU_V3_PMU=m
CONFIG_ARM_SMMU_V3_SVA=y
CONFIG_ARM_SMMU_V3=y
@@ -511,7 +518,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -546,6 +553,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -692,6 +700,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -700,6 +709,7 @@ CONFIG_CAN_CALC_BITTIMING=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -720,6 +730,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -770,6 +781,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -909,7 +921,7 @@ CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
CONFIG_CORESIGHT_CATU=m
@@ -945,17 +957,15 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-CONFIG_CPU_IBPB_ENTRY=y
-CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_CPU_IDLE_GOV_HALTPOLL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE_GOV_TEO is not set
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
# CONFIG_CPUMASK_OFFSTACK is not set
CONFIG_CPUSETS=y
CONFIG_CPU_THERMAL=y
-CONFIG_CPU_UNRET_ENTRY=y
# CONFIG_CRAMFS is not set
# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
@@ -990,6 +1000,7 @@ CONFIG_CRYPTO_AES_ARM64_NEON_BLK=y
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -1047,7 +1058,7 @@ CONFIG_CRYPTO_DEV_OCTEONTX2_CPT=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1067,6 +1078,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM64_CE=m
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -1092,6 +1104,8 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_NEON=y
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1149,6 +1163,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1241,8 +1256,6 @@ CONFIG_DEFAULT_NET_SCH="fq_codel"
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFAULT_SFQ is not set
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_DAX_HMEM=m
CONFIG_DEV_DAX_KMEM=m
@@ -1257,8 +1270,8 @@ CONFIG_DEVTMPFS=y
# CONFIG_DHT11 is not set
CONFIG_DIMLIB=y
# CONFIG_DLHL60D is not set
+# CONFIG_DLM_DEPRECATED_API is not set
# CONFIG_DLM is not set
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_DMA_API_DEBUG_SG is not set
@@ -1313,6 +1326,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1373,12 +1387,14 @@ CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1398,6 +1414,7 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
# CONFIG_DRM_PANEL_EDP is not set
# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+CONFIG_DRM_PANEL_ILITEK_ILI9341=m
# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
@@ -1441,6 +1458,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_TEGRA is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1625,6 +1643,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
# CONFIG_EPIC100 is not set
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1864,7 +1883,6 @@ CONFIG_GLOB=y
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -2041,6 +2059,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -2080,6 +2099,7 @@ CONFIG_HNS3_ENET=m
CONFIG_HNS3_HCLGE=m
CONFIG_HNS3_HCLGEVF=m
CONFIG_HNS3=m
+# CONFIG_HNS3_PMU is not set
CONFIG_HNS_DSAF=m
CONFIG_HNS_ENET=m
CONFIG_HNS=m
@@ -2095,6 +2115,7 @@ CONFIG_HOTPLUG_PCI=y
# CONFIG_HP206C is not set
# CONFIG_HPFS_FS is not set
# CONFIG_HP_ILO is not set
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2172,12 +2193,12 @@ CONFIG_I2C_COMPAT=y
CONFIG_I2C_DESIGNWARE_PLATFORM=m
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set
CONFIG_I2C_GPIO=m
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2276,6 +2297,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
# CONFIG_IIO is not set
# CONFIG_IIO_MUX is not set
@@ -2342,6 +2364,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
@@ -2377,11 +2400,11 @@ CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
CONFIG_INPUT_APANEL=m
-CONFIG_INPUT_ATI_REMOTE2=m
+# CONFIG_INPUT_ATI_REMOTE2 is not set
CONFIG_INPUT_ATLAS_BTNS=m
# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
# CONFIG_INPUT_BMA150 is not set
-CONFIG_INPUT_CM109=m
+# CONFIG_INPUT_CM109 is not set
# CONFIG_INPUT_CMA3000 is not set
# CONFIG_INPUT_DA7280_HAPTICS is not set
# CONFIG_INPUT_DRV260X_HAPTICS is not set
@@ -2393,8 +2416,9 @@ CONFIG_INPUT_EVDEV=y
CONFIG_INPUT_FF_MEMLESS=m
# CONFIG_INPUT_GPIO_BEEPER is not set
# CONFIG_INPUT_GPIO_DECODER is not set
-CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_HISI_POWERKEY is not set
# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set
# CONFIG_INPUT_IMS_PCU is not set
# CONFIG_INPUT_IQS269A is not set
@@ -2403,11 +2427,11 @@ CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_JOYSTICK is not set
CONFIG_INPUT_KEYBOARD=y
-CONFIG_INPUT_KEYSPAN_REMOTE=m
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
# CONFIG_INPUT_KXTJ9 is not set
CONFIG_INPUT_LEDS=y
# CONFIG_INPUT_MATRIXKMAP is not set
-# CONFIG_INPUT_MISC is not set
+CONFIG_INPUT_MISC=y
# CONFIG_INPUT_MMA8450 is not set
# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
@@ -2416,18 +2440,20 @@ CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSE=y
# CONFIG_INPUT_PCF8574 is not set
CONFIG_INPUT_PCSPKR=m
-CONFIG_INPUT_POWERMATE=m
+# CONFIG_INPUT_POWERMATE is not set
# CONFIG_INPUT_PWM_BEEPER is not set
# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
CONFIG_INPUT_SPARSEKMAP=m
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_UINPUT=m
CONFIG_INPUT=y
-CONFIG_INPUT_YEALINK=m
+# CONFIG_INPUT_YEALINK is not set
# CONFIG_INT3406_THERMAL is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2436,7 +2462,6 @@ CONFIG_INTEGRITY=y
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_INTEL_IDXD_COMPAT is not set
CONFIG_INTEL_IDXD=m
-# CONFIG_INTEL_IFS is not set
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -2783,7 +2808,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2793,6 +2818,8 @@ CONFIG_KUNIT_EXAMPLE_TEST=m
CONFIG_KUNIT=m
CONFIG_KUNIT_TEST=m
CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
# CONFIG_KVM_XEN is not set
CONFIG_KVM=y
# CONFIG_KXCJK1013 is not set
@@ -3018,7 +3045,7 @@ CONFIG_MARVELL_PHY=m
# CONFIG_MAX5821 is not set
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
@@ -3129,7 +3156,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3763,6 +3790,7 @@ CONFIG_NET_VENDOR_STMICRO=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3805,6 +3833,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3900,6 +3929,7 @@ CONFIG_N_HDLC=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3989,6 +4019,7 @@ CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_BCM_OCOTP is not set
@@ -3998,6 +4029,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4297,6 +4329,7 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_STD_PARTITION=""
# CONFIG_PM_TEST_SUSPEND is not set
# CONFIG_PM_TRACE_RTC is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4305,6 +4338,7 @@ CONFIG_PNFS_FILE_LAYOUT=m
CONFIG_PNP_DEBUG_MESSAGES=y
CONFIG_POSIX_MQUEUE=y
# CONFIG_POWERCAP is not set
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_OP_PANEL=m
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -4404,6 +4438,7 @@ CONFIG_PVPANIC_PCI=m
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM_IPROC=y
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4431,6 +4466,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
# CONFIG_QCOM_GSBI is not set
CONFIG_QCOM_HIDMA=m
CONFIG_QCOM_HIDMA_MGMT=m
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
CONFIG_QCOM_L2_PMU=y
@@ -4521,6 +4557,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4598,16 +4635,14 @@ CONFIG_RESET_CONTROLLER=y
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_SCMI is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
-CONFIG_RETHUNK=y
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4708,6 +4743,7 @@ CONFIG_RTC_DRV_MAX6902=m
# CONFIG_RTC_DRV_MAX6916 is not set
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF85063=m
@@ -4786,6 +4822,7 @@ CONFIG_RTW89_8852AE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
# CONFIG_S390_MODULES_SANITY_TEST is not set
@@ -4919,12 +4956,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
CONFIG_SDIO_UART=m
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -5065,6 +5103,7 @@ CONFIG_SENSORS_LM70=m
# CONFIG_SENSORS_LM95234 is not set
# CONFIG_SENSORS_LM95241 is not set
# CONFIG_SENSORS_LM95245 is not set
+# CONFIG_SENSORS_LT7182S is not set
CONFIG_SENSORS_LTC2945=m
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -5186,7 +5225,6 @@ CONFIG_SENSORS_VIA_CPUTEMP=m
CONFIG_SENSORS_XGENE=m
# CONFIG_SENSORS_ZL6100 is not set
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5228,7 +5266,6 @@ CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
# CONFIG_SERIAL_MSM is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_SERIAL_OF_PLATFORM=y
# CONFIG_SERIAL_RP2 is not set
@@ -5264,6 +5301,7 @@ CONFIG_SFC_MCDI_LOGGING=y
CONFIG_SGETMASK_SYSCALL=y
# CONFIG_SGI_PARTITION is not set
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5335,6 +5373,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5495,6 +5535,7 @@ CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
# CONFIG_SND_SOC_AMD_RENOIR is not set
# CONFIG_SND_SOC_AMD_RENOIR_MACH is not set
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
# CONFIG_SND_SOC_AMD_RV_RT5682_MACH is not set
# CONFIG_SND_SOC_AMD_VANGOGH_MACH is not set
# CONFIG_SND_SOC_AMD_YC_MACH is not set
@@ -5570,6 +5611,18 @@ CONFIG_SND_SOC_CX2072X=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_INTEL_AVS is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
# CONFIG_SND_SOC_INTEL_BROADWELL_MACH is not set
@@ -5735,6 +5788,7 @@ CONFIG_SND_SOC_SOF_ACPI=m
# CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL is not set
# CONFIG_SND_SOC_SOF_JASPERLAKE is not set
# CONFIG_SND_SOC_SOF_MERRIFIELD is not set
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
# CONFIG_SND_SOC_SOF_TIGERLAKE is not set
@@ -5757,6 +5811,7 @@ CONFIG_SND_SOC_SOF_TOPLEVEL=y
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5836,6 +5891,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5908,7 +5964,6 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
-CONFIG_SPECULATION_MITIGATIONS=y
# CONFIG_SPI_ALTERA_CORE is not set
# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_AMD=y
@@ -5920,7 +5975,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5929,6 +5983,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LOOPBACK_TEST is not set
CONFIG_SPI_MASTER=y
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6033,7 +6088,7 @@ CONFIG_SYN_COOKIES=y
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_SYSTEM76_ACPI is not set
@@ -6068,7 +6123,9 @@ CONFIG_TCG_CRB=y
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
CONFIG_TCG_TIS_I2C_NUVOTON=m
-# CONFIG_TCG_TIS_SPI is not set
+CONFIG_TCG_TIS_I2C=y
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -6103,6 +6160,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
# CONFIG_TEGRA20_APB_DMA is not set
# CONFIG_TEGRA_GMI is not set
# CONFIG_TEGRA_HOST1X is not set
@@ -6118,6 +6176,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6144,7 +6203,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6310,6 +6369,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6332,6 +6392,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6358,6 +6420,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
CONFIG_UEFI_CPER_ARM=y
@@ -6541,6 +6604,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6679,6 +6743,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6688,6 +6753,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
CONFIG_VEXPRESS_CONFIG=y
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_IOMMU_TYPE1=m
@@ -6711,6 +6777,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6755,6 +6822,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -6956,7 +7024,6 @@ CONFIG_WWAN=y
# CONFIG_X25 is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_X86_IOPL_IOPERM=y
-# CONFIG_X86_KERNEL_IBT is not set
CONFIG_X86_PMEM_LEGACY_DEVICE=y
CONFIG_X86_PMEM_LEGACY=m
CONFIG_X86_SGX_KVM=y
@@ -7062,8 +7129,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-armv7hl-debug-fedora.config b/SOURCES/kernel-armv7hl-debug-fedora.config
index 3c06fa4..378e5bd 100644
--- a/SOURCES/kernel-armv7hl-debug-fedora.config
+++ b/SOURCES/kernel-armv7hl-debug-fedora.config
@@ -47,7 +47,7 @@ CONFIG_ACPI_BUTTON=y
# CONFIG_ACPI_CMPC is not set
CONFIG_ACPI_CONFIGFS=m
CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
+# CONFIG_ACPI_CPPC_CPUFREQ_FIE is not set
CONFIG_ACPI_CUSTOM_METHOD=m
CONFIG_ACPI_DEBUGGER_USER=m
CONFIG_ACPI_DEBUGGER=y
@@ -71,6 +71,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_VIDEO=m
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -241,7 +242,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -301,6 +301,7 @@ CONFIG_ARCH_HIGHBANK=y
CONFIG_ARCH_MESON=y
# CONFIG_ARCH_MILBEAUT is not set
CONFIG_ARCH_MMP=y
+# CONFIG_ARCH_MSM8909 is not set
# CONFIG_ARCH_MSM8916 is not set
CONFIG_ARCH_MSM8960=y
CONFIG_ARCH_MSM8974=y
@@ -331,6 +332,7 @@ CONFIG_ARCH_ROCKCHIP=y
# CONFIG_ARCH_SPARX5 is not set
CONFIG_ARCH_STI=y
CONFIG_ARCH_STM32=y
+# CONFIG_ARCH_SUNPLUS is not set
CONFIG_ARCH_SUNXI=y
CONFIG_ARCH_TEGRA_114_SOC=y
CONFIG_ARCH_TEGRA_124_SOC=y
@@ -390,7 +392,6 @@ CONFIG_ARM_CPU_TOPOLOGY=y
CONFIG_ARM_CRYPTO=y
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
CONFIG_ARM_DMA_USE_IOMMU=y
-# CONFIG_ARM_DMC620_PMU is not set
CONFIG_ARM_ERRATA_430973=y
CONFIG_ARM_ERRATA_643719=y
CONFIG_ARM_ERRATA_720789=y
@@ -444,6 +445,7 @@ CONFIG_ARM_QCOM_SPM_CPUIDLE=y
CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
CONFIG_ARM_RK3399_DMC_DEVFREQ=m
CONFIG_ARM_SCMI_CPUFREQ=m
+CONFIG_ARM_SCMI_POWER_CONTROL=m
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -459,6 +461,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
CONFIG_ARM_SMC_WATCHDOG=m
CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
# CONFIG_ARM_SPE_PMU is not set
@@ -725,7 +728,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -763,6 +766,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -933,6 +937,7 @@ CONFIG_CADENCE_WATCHDOG=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -941,6 +946,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
CONFIG_CAN_FLEXCAN=m
# CONFIG_CAN_GRCAN is not set
@@ -961,6 +967,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -1023,6 +1030,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -1209,7 +1217,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -1245,6 +1253,7 @@ CONFIG_CPU_ICACHE_MISMATCH_WORKAROUND=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
CONFIG_CPU_SW_DOMAIN_PAN=y
@@ -1280,6 +1289,7 @@ CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_EC_VBC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1294,6 +1304,7 @@ CONFIG_CRYPTO_AES_ARM=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B_NEON=m
CONFIG_CRYPTO_BLAKE2B=y
@@ -1396,7 +1407,7 @@ CONFIG_CRYPTO_DEV_SUN8I_SS=m
CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG=y
CONFIG_CRYPTO_DEV_VIRTIO=m
# CONFIG_CRYPTO_DEV_ZYNQMP_SHA3 is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1415,6 +1426,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM_CE=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1503,6 +1515,7 @@ CONFIG_DA9052_WATCHDOG=m
CONFIG_DA9055_WATCHDOG=m
CONFIG_DA9063_WATCHDOG=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1603,8 +1616,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
CONFIG_DETECT_HUNG_TASK=y
# CONFIG_DEV_APPLETALK is not set
@@ -1629,8 +1640,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9000 is not set
CONFIG_DM9051=m
CONFIG_DM9102=m
@@ -1784,7 +1795,13 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_IMX8QM_LDB=m
+CONFIG_DRM_IMX8QXP_LDB=m
+CONFIG_DRM_IMX8QXP_PIXEL_COMBINER=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK_TO_DPI=m
CONFIG_DRM_IMX_HDMI=m
+CONFIG_DRM_IMX_LCDIF=m
CONFIG_DRM_IMX_LDB=m
CONFIG_DRM_IMX=m
CONFIG_DRM_IMX_PARALLEL_DISPLAY=m
@@ -1795,6 +1812,7 @@ CONFIG_DRM_KOMEDA=m
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LIMA=m
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1836,6 +1854,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_EDP=m
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1936,6 +1955,7 @@ CONFIG_DRM_SUN8I_MIXER=m
CONFIG_DRM_TEGRA=m
CONFIG_DRM_TEGRA_STAGING=y
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
CONFIG_DRM_TILCDC=m
# CONFIG_DRM_TI_SN65DSI83 is not set
@@ -2313,10 +2333,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -2441,7 +2463,6 @@ CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_DA9052=m
CONFIG_GPIO_DA9055=m
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2646,6 +2667,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2779,7 +2801,6 @@ CONFIG_I2C_DESIGNWARE_PCI=m
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_EXYNOS5=m
@@ -2788,6 +2809,7 @@ CONFIG_I2C_EXYNOS5=m
CONFIG_I2C_GPIO=m
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2900,11 +2922,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
CONFIG_IIO_SCMI=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
@@ -2999,6 +3023,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
# CONFIG_INFINIBAND_CXGB4 is not set
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
# CONFIG_INFINIBAND_IPOIB_CM is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG is not set
@@ -3028,8 +3053,8 @@ CONFIG_INFINIBAND_RTRS_SERVER=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -3134,13 +3159,11 @@ CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
CONFIG_INTERCONNECT_EXYNOS=y
-CONFIG_INTERCONNECT_IMX8MM=m
-CONFIG_INTERCONNECT_IMX8MN=m
-CONFIG_INTERCONNECT_IMX8MQ=m
-CONFIG_INTERCONNECT_IMX=m
+# CONFIG_INTERCONNECT_IMX is not set
# CONFIG_INTERCONNECT_QCOM is not set
# CONFIG_INTERCONNECT_QCOM_MSM8974 is not set
# CONFIG_INTERCONNECT_QCOM_SDX65 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT_SAMSUNG=y
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
@@ -3538,7 +3561,7 @@ CONFIG_KHADAS_MCU_FAN_THERMAL=m
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KPSS_XCC=m
CONFIG_KRAITCC=m
@@ -3802,6 +3825,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3970,7 +3994,7 @@ CONFIG_MFD_DA9055=y
# CONFIG_MFD_DA9062 is not set
CONFIG_MFD_DA9063=m
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
CONFIG_MFD_EXYNOS_LPASS=m
# CONFIG_MFD_GATEWORKS_GSC is not set
@@ -4515,6 +4539,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4536,6 +4561,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4784,6 +4810,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4856,6 +4883,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4945,6 +4973,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -5027,6 +5056,7 @@ CONFIG_NVEC_PAZ00=y
CONFIG_NVEC_POWER=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
CONFIG_NVMEM_IMX_IIM=m
@@ -5041,6 +5071,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
# CONFIG_NVME_RDMA is not set
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -5315,10 +5346,12 @@ CONFIG_PHY_MESON8_HDMI_TX=m
CONFIG_PHY_MESON_AXG_MIPI_DPHY=m
CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG=y
CONFIG_PHY_MESON_AXG_PCIE=m
+CONFIG_PHY_MESON_G12A_MIPI_DPHY_ANALOG=y
CONFIG_PHY_MESON_G12A_USB2=y
CONFIG_PHY_MESON_G12A_USB3_PCIE=m
# CONFIG_PHY_MESON_GXL_USB2 is not set
CONFIG_PHY_MIPHY28LP=m
+# CONFIG_PHY_MIXEL_LVDS_PHY is not set
# CONFIG_PHY_MIXEL_MIPI_DPHY is not set
CONFIG_PHY_MMP3_HSIC=m
CONFIG_PHY_MMP3_USB=m
@@ -5416,6 +5449,7 @@ CONFIG_PINCTRL_MESON=y
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
CONFIG_PINCTRL_MSM8226=m
CONFIG_PINCTRL_MSM8660=m
+# CONFIG_PINCTRL_MSM8909 is not set
CONFIG_PINCTRL_MSM8916=m
# CONFIG_PINCTRL_MSM8953 is not set
CONFIG_PINCTRL_MSM8960=m
@@ -5446,11 +5480,13 @@ CONFIG_PINCTRL_SINGLE=y
# CONFIG_PINCTRL_SM6115 is not set
# CONFIG_PINCTRL_SM6125 is not set
# CONFIG_PINCTRL_SM6350 is not set
+# CONFIG_PINCTRL_SM6375 is not set
# CONFIG_PINCTRL_SM8150 is not set
# CONFIG_PINCTRL_SM8250 is not set
# CONFIG_PINCTRL_SM8350 is not set
# CONFIG_PINCTRL_SM8450 is not set
# CONFIG_PINCTRL_STMFX is not set
+CONFIG_PINCTRL_SUN20I_D1=y
CONFIG_PINCTRL_SUN4I_A10=y
# CONFIG_PINCTRL_SUN50I_A100 is not set
# CONFIG_PINCTRL_SUN50I_A100_R is not set
@@ -5514,6 +5550,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -5525,6 +5562,7 @@ CONFIG_POSIX_MQUEUE=y
CONFIG_POWER_AVS_OMAP_CLASS3=y
CONFIG_POWER_AVS_OMAP=y
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWER_RESET_AS3722=y
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -5580,7 +5618,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5633,6 +5671,7 @@ CONFIG_PTP_1588_CLOCK=y
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM2835=m
+CONFIG_PWM_CLK=m
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
@@ -5692,6 +5731,7 @@ CONFIG_QCOM_GSBI=m
CONFIG_QCOM_HFPLL=m
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
CONFIG_QCOM_IOMMU=y
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LLCC is not set
@@ -5714,6 +5754,7 @@ CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
CONFIG_QCOM_SPMI_IADC=m
+# CONFIG_QCOM_SPMI_RRADC is not set
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPM=y
@@ -5808,6 +5849,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
# CONFIG_RCU_SCALE_TEST is not set
@@ -5971,14 +6013,13 @@ CONFIG_RESET_RASPBERRYPI=y
CONFIG_RESET_SCMI=y
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_TI_SYSCON=m
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -6133,6 +6174,7 @@ CONFIG_RTC_DRV_MSM6242=m
CONFIG_RTC_DRV_MV=m
# CONFIG_RTC_DRV_MXC is not set
CONFIG_RTC_DRV_MXC_V2=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OMAP=m
CONFIG_RTC_DRV_OPTEE=m
CONFIG_RTC_DRV_PALMAS=m
@@ -6229,6 +6271,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -6556,6 +6599,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -6679,7 +6723,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
@@ -6783,6 +6826,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6817,6 +6861,7 @@ CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
# CONFIG_SM_CAMCC_8250 is not set
+# CONFIG_SM_CAMCC_8450 is not set
CONFIG_SMC_DIAG=m
CONFIG_SMC=m
# CONFIG_SM_DISPCC_8250 is not set
@@ -6831,6 +6876,7 @@ CONFIG_SM_GCC_8450=m
# CONFIG_SM_GPUCC_6350 is not set
# CONFIG_SM_GPUCC_8150 is not set
# CONFIG_SM_GPUCC_8250 is not set
+# CONFIG_SM_GPUCC_8350 is not set
CONFIG_SMP_ON_UP=y
CONFIG_SMP=y
CONFIG_SMSC911X=m
@@ -6881,6 +6927,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -7110,6 +7158,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_I2C_AND_SPI=m
CONFIG_SND_SOC_ICS43432=m
@@ -7325,6 +7374,7 @@ CONFIG_SND_SOC_STORM=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -7345,6 +7395,7 @@ CONFIG_SND_SOC_TEGRA210_AMX=m
# CONFIG_SND_SOC_TEGRA210_I2S is not set
CONFIG_SND_SOC_TEGRA210_MIXER=m
CONFIG_SND_SOC_TEGRA210_MVC=m
+CONFIG_SND_SOC_TEGRA210_OPE=m
CONFIG_SND_SOC_TEGRA210_SFC=m
CONFIG_SND_SOC_TEGRA30_AHUB=m
CONFIG_SND_SOC_TEGRA30_I2S=m
@@ -7414,6 +7465,7 @@ CONFIG_SND_SOC_WM8962=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -7535,7 +7587,6 @@ CONFIG_SPI_CADENCE_XSPI=m
CONFIG_SPI_DAVINCI=m
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_DESIGNWARE=m
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_DW_DMA is not set
CONFIG_SPI_DW_MMIO=m
CONFIG_SPI_DW_PCI=m
@@ -7552,6 +7603,7 @@ CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
CONFIG_SPI_MESON_SPICC=m
CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -7711,8 +7763,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -7775,6 +7829,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -7814,6 +7869,7 @@ CONFIG_TCS3472=m
CONFIG_TEE=m
CONFIG_TEGRA124_EMC=m
CONFIG_TEGRA186_GPC_DMA=m
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA20_EMC=m
CONFIG_TEGRA30_EMC=m
@@ -7840,6 +7896,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -7866,7 +7923,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -8059,6 +8116,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -8094,6 +8152,8 @@ CONFIG_TWL4030_WATCHDOG=m
CONFIG_TWL6030_GPADC=m
CONFIG_TWL6030_USB=m
CONFIG_TWL6040_CORE=y
+CONFIG_TXGBE=m
+CONFIG_TYPEC_ANX7411=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -8127,6 +8187,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -8155,12 +8216,14 @@ CONFIG_UNIX98_PTYS=y
CONFIG_UNIX_DIAG=y
CONFIG_UNIXWARE_DISKLABEL=y
CONFIG_UNIX=y
+# CONFIG_UNUSED_BOARD_FILES is not set
CONFIG_UNWINDER_ARM=y
# CONFIG_UNWINDER_FRAME_POINTER is not set
CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -8427,6 +8490,7 @@ CONFIG_USB_OHCI_HCD_PCI=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD_STI=m
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_OTG_FSM=m
# CONFIG_USB_OTG_PRODUCTLIST is not set
@@ -8587,6 +8651,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -8629,6 +8694,7 @@ CONFIG_VIDEO_ADP1653=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_AM437X_VPFE=m
# CONFIG_VIDEO_AMPHION_VPU is not set
+CONFIG_VIDEO_AR0521=m
# CONFIG_VIDEO_ASPEED is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
@@ -8804,10 +8870,13 @@ CONFIG_VIDEO_STI_DELTA_MJPEG=y
CONFIG_VIDEO_STI_HVA=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
# CONFIG_VIDEO_STM32_DCMI is not set
CONFIG_VIDEO_STM32_DMA2D=m
CONFIG_VIDEO_SUN4I_CSI=m
CONFIG_VIDEO_SUN6I_CSI=m
+CONFIG_VIDEO_SUN6I_MIPI_CSI2=m
+# CONFIG_VIDEO_SUN8I_A83T_MIPI_CSI2 is not set
CONFIG_VIDEO_SUN8I_DEINTERLACE=m
CONFIG_VIDEO_SUN8I_ROTATE=m
CONFIG_VIDEO_SUNXI_CEDRUS=m
@@ -9003,6 +9072,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -9100,8 +9170,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-armv7hl-fedora.config b/SOURCES/kernel-armv7hl-fedora.config
index 58f9e2b..0141147 100644
--- a/SOURCES/kernel-armv7hl-fedora.config
+++ b/SOURCES/kernel-armv7hl-fedora.config
@@ -47,7 +47,7 @@ CONFIG_ACPI_BUTTON=y
# CONFIG_ACPI_CMPC is not set
# CONFIG_ACPI_CONFIGFS is not set
CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
+# CONFIG_ACPI_CPPC_CPUFREQ_FIE is not set
# CONFIG_ACPI_CUSTOM_METHOD is not set
# CONFIG_ACPI_DEBUGGER is not set
# CONFIG_ACPI_DEBUGGER_USER is not set
@@ -71,6 +71,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_VIDEO=m
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -241,7 +242,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -301,6 +301,7 @@ CONFIG_ARCH_HIGHBANK=y
CONFIG_ARCH_MESON=y
# CONFIG_ARCH_MILBEAUT is not set
CONFIG_ARCH_MMP=y
+# CONFIG_ARCH_MSM8909 is not set
# CONFIG_ARCH_MSM8916 is not set
CONFIG_ARCH_MSM8960=y
CONFIG_ARCH_MSM8974=y
@@ -331,6 +332,7 @@ CONFIG_ARCH_ROCKCHIP=y
# CONFIG_ARCH_SPARX5 is not set
CONFIG_ARCH_STI=y
CONFIG_ARCH_STM32=y
+# CONFIG_ARCH_SUNPLUS is not set
CONFIG_ARCH_SUNXI=y
CONFIG_ARCH_TEGRA_114_SOC=y
CONFIG_ARCH_TEGRA_124_SOC=y
@@ -390,7 +392,6 @@ CONFIG_ARM_CPU_TOPOLOGY=y
CONFIG_ARM_CRYPTO=y
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
CONFIG_ARM_DMA_USE_IOMMU=y
-# CONFIG_ARM_DMC620_PMU is not set
CONFIG_ARM_ERRATA_430973=y
CONFIG_ARM_ERRATA_643719=y
CONFIG_ARM_ERRATA_720789=y
@@ -444,6 +445,7 @@ CONFIG_ARM_QCOM_SPM_CPUIDLE=y
CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
CONFIG_ARM_RK3399_DMC_DEVFREQ=m
CONFIG_ARM_SCMI_CPUFREQ=m
+CONFIG_ARM_SCMI_POWER_CONTROL=m
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -459,6 +461,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
CONFIG_ARM_SMC_WATCHDOG=m
CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
# CONFIG_ARM_SPE_PMU is not set
@@ -725,7 +728,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -763,6 +766,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -933,6 +937,7 @@ CONFIG_CADENCE_WATCHDOG=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -941,6 +946,7 @@ CONFIG_CAN_CTUCANFD_PLATFORM=m
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
CONFIG_CAN_FLEXCAN=m
# CONFIG_CAN_GRCAN is not set
@@ -961,6 +967,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -1023,6 +1030,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -1209,7 +1217,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -1245,6 +1253,7 @@ CONFIG_CPU_ICACHE_MISMATCH_WORKAROUND=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
CONFIG_CPU_SW_DOMAIN_PAN=y
@@ -1280,6 +1289,7 @@ CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_EC_VBC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1294,6 +1304,7 @@ CONFIG_CRYPTO_AES_ARM=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B_NEON=m
CONFIG_CRYPTO_BLAKE2B=y
@@ -1396,7 +1407,7 @@ CONFIG_CRYPTO_DEV_SUN8I_SS=m
CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG=y
CONFIG_CRYPTO_DEV_VIRTIO=m
# CONFIG_CRYPTO_DEV_ZYNQMP_SHA3 is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1415,6 +1426,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM_CE=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1503,6 +1515,7 @@ CONFIG_DA9052_WATCHDOG=m
CONFIG_DA9055_WATCHDOG=m
CONFIG_DA9063_WATCHDOG=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1596,8 +1609,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
# CONFIG_DETECT_HUNG_TASK is not set
# CONFIG_DEV_APPLETALK is not set
@@ -1622,8 +1633,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9000 is not set
CONFIG_DM9051=m
CONFIG_DM9102=m
@@ -1777,7 +1788,13 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_IMX8QM_LDB=m
+CONFIG_DRM_IMX8QXP_LDB=m
+CONFIG_DRM_IMX8QXP_PIXEL_COMBINER=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK_TO_DPI=m
CONFIG_DRM_IMX_HDMI=m
+CONFIG_DRM_IMX_LCDIF=m
CONFIG_DRM_IMX_LDB=m
CONFIG_DRM_IMX=m
CONFIG_DRM_IMX_PARALLEL_DISPLAY=m
@@ -1788,6 +1805,7 @@ CONFIG_DRM_KOMEDA=m
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LIMA=m
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1829,6 +1847,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_EDP=m
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1929,6 +1948,7 @@ CONFIG_DRM_SUN8I_MIXER=m
CONFIG_DRM_TEGRA=m
CONFIG_DRM_TEGRA_STAGING=y
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
CONFIG_DRM_TILCDC=m
# CONFIG_DRM_TI_SN65DSI83 is not set
@@ -2298,10 +2318,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -2426,7 +2448,6 @@ CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_DA9052=m
CONFIG_GPIO_DA9055=m
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2631,6 +2652,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2764,7 +2786,6 @@ CONFIG_I2C_DESIGNWARE_PCI=m
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_EXYNOS5=m
@@ -2773,6 +2794,7 @@ CONFIG_I2C_EXYNOS5=m
CONFIG_I2C_GPIO=m
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2885,11 +2907,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
CONFIG_IIO_SCMI=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
@@ -2984,6 +3008,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
# CONFIG_INFINIBAND_CXGB4 is not set
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
# CONFIG_INFINIBAND_IPOIB_CM is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG is not set
@@ -3013,8 +3038,8 @@ CONFIG_INFINIBAND_RTRS_SERVER=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -3119,13 +3144,11 @@ CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
CONFIG_INTERCONNECT_EXYNOS=y
-CONFIG_INTERCONNECT_IMX8MM=m
-CONFIG_INTERCONNECT_IMX8MN=m
-CONFIG_INTERCONNECT_IMX8MQ=m
-CONFIG_INTERCONNECT_IMX=m
+# CONFIG_INTERCONNECT_IMX is not set
# CONFIG_INTERCONNECT_QCOM is not set
# CONFIG_INTERCONNECT_QCOM_MSM8974 is not set
# CONFIG_INTERCONNECT_QCOM_SDX65 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT_SAMSUNG=y
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
@@ -3521,7 +3544,7 @@ CONFIG_KHADAS_MCU_FAN_THERMAL=m
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KPSS_XCC=m
CONFIG_KRAITCC=m
@@ -3785,6 +3808,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3952,7 +3976,7 @@ CONFIG_MFD_DA9055=y
# CONFIG_MFD_DA9062 is not set
CONFIG_MFD_DA9063=m
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
CONFIG_MFD_EXYNOS_LPASS=m
# CONFIG_MFD_GATEWORKS_GSC is not set
@@ -4497,6 +4521,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4518,6 +4543,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4766,6 +4792,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4838,6 +4865,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4927,6 +4955,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -5009,6 +5038,7 @@ CONFIG_NVEC_PAZ00=y
CONFIG_NVEC_POWER=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
CONFIG_NVMEM_IMX_IIM=m
@@ -5023,6 +5053,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
# CONFIG_NVME_RDMA is not set
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -5296,10 +5327,12 @@ CONFIG_PHY_MESON8_HDMI_TX=m
CONFIG_PHY_MESON_AXG_MIPI_DPHY=m
CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG=y
CONFIG_PHY_MESON_AXG_PCIE=m
+CONFIG_PHY_MESON_G12A_MIPI_DPHY_ANALOG=y
CONFIG_PHY_MESON_G12A_USB2=y
CONFIG_PHY_MESON_G12A_USB3_PCIE=m
# CONFIG_PHY_MESON_GXL_USB2 is not set
CONFIG_PHY_MIPHY28LP=m
+# CONFIG_PHY_MIXEL_LVDS_PHY is not set
# CONFIG_PHY_MIXEL_MIPI_DPHY is not set
CONFIG_PHY_MMP3_HSIC=m
CONFIG_PHY_MMP3_USB=m
@@ -5397,6 +5430,7 @@ CONFIG_PINCTRL_MESON=y
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
CONFIG_PINCTRL_MSM8226=m
CONFIG_PINCTRL_MSM8660=m
+# CONFIG_PINCTRL_MSM8909 is not set
CONFIG_PINCTRL_MSM8916=m
# CONFIG_PINCTRL_MSM8953 is not set
CONFIG_PINCTRL_MSM8960=m
@@ -5427,11 +5461,13 @@ CONFIG_PINCTRL_SINGLE=y
# CONFIG_PINCTRL_SM6115 is not set
# CONFIG_PINCTRL_SM6125 is not set
# CONFIG_PINCTRL_SM6350 is not set
+# CONFIG_PINCTRL_SM6375 is not set
# CONFIG_PINCTRL_SM8150 is not set
# CONFIG_PINCTRL_SM8250 is not set
# CONFIG_PINCTRL_SM8350 is not set
# CONFIG_PINCTRL_SM8450 is not set
# CONFIG_PINCTRL_STMFX is not set
+CONFIG_PINCTRL_SUN20I_D1=y
CONFIG_PINCTRL_SUN4I_A10=y
# CONFIG_PINCTRL_SUN50I_A100 is not set
# CONFIG_PINCTRL_SUN50I_A100_R is not set
@@ -5495,6 +5531,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -5506,6 +5543,7 @@ CONFIG_POSIX_MQUEUE=y
CONFIG_POWER_AVS_OMAP_CLASS3=y
CONFIG_POWER_AVS_OMAP=y
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWER_RESET_AS3722=y
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -5561,7 +5599,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5614,6 +5652,7 @@ CONFIG_PTP_1588_CLOCK=y
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM2835=m
+CONFIG_PWM_CLK=m
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
@@ -5673,6 +5712,7 @@ CONFIG_QCOM_GSBI=m
CONFIG_QCOM_HFPLL=m
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
CONFIG_QCOM_IOMMU=y
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LLCC is not set
@@ -5695,6 +5735,7 @@ CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
CONFIG_QCOM_SPMI_IADC=m
+# CONFIG_QCOM_SPMI_RRADC is not set
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPM=y
@@ -5789,6 +5830,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_REF_SCALE_TEST is not set
# CONFIG_RCU_SCALE_TEST is not set
@@ -5952,14 +5994,13 @@ CONFIG_RESET_RASPBERRYPI=y
CONFIG_RESET_SCMI=y
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_TI_SYSCON=m
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -6114,6 +6155,7 @@ CONFIG_RTC_DRV_MSM6242=m
CONFIG_RTC_DRV_MV=m
# CONFIG_RTC_DRV_MXC is not set
CONFIG_RTC_DRV_MXC_V2=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OMAP=m
CONFIG_RTC_DRV_OPTEE=m
CONFIG_RTC_DRV_PALMAS=m
@@ -6210,6 +6252,7 @@ CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -6537,6 +6580,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -6660,7 +6704,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
@@ -6764,6 +6807,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6798,6 +6842,7 @@ CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
# CONFIG_SM_CAMCC_8250 is not set
+# CONFIG_SM_CAMCC_8450 is not set
CONFIG_SMC_DIAG=m
CONFIG_SMC=m
# CONFIG_SM_DISPCC_8250 is not set
@@ -6812,6 +6857,7 @@ CONFIG_SM_GCC_8450=m
# CONFIG_SM_GPUCC_6350 is not set
# CONFIG_SM_GPUCC_8150 is not set
# CONFIG_SM_GPUCC_8250 is not set
+# CONFIG_SM_GPUCC_8350 is not set
CONFIG_SMP_ON_UP=y
CONFIG_SMP=y
CONFIG_SMSC911X=m
@@ -6862,6 +6908,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -7090,6 +7138,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_I2C_AND_SPI=m
CONFIG_SND_SOC_ICS43432=m
@@ -7304,6 +7353,7 @@ CONFIG_SND_SOC_STORM=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -7324,6 +7374,7 @@ CONFIG_SND_SOC_TEGRA210_AMX=m
# CONFIG_SND_SOC_TEGRA210_I2S is not set
CONFIG_SND_SOC_TEGRA210_MIXER=m
CONFIG_SND_SOC_TEGRA210_MVC=m
+CONFIG_SND_SOC_TEGRA210_OPE=m
CONFIG_SND_SOC_TEGRA210_SFC=m
CONFIG_SND_SOC_TEGRA30_AHUB=m
CONFIG_SND_SOC_TEGRA30_I2S=m
@@ -7393,6 +7444,7 @@ CONFIG_SND_SOC_WM8962=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -7514,7 +7566,6 @@ CONFIG_SPI_CADENCE_XSPI=m
CONFIG_SPI_DAVINCI=m
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_DESIGNWARE=m
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_DW_DMA is not set
CONFIG_SPI_DW_MMIO=m
CONFIG_SPI_DW_PCI=m
@@ -7531,6 +7582,7 @@ CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
CONFIG_SPI_MESON_SPICC=m
CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -7690,8 +7742,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -7754,6 +7808,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -7793,6 +7848,7 @@ CONFIG_TCS3472=m
CONFIG_TEE=m
CONFIG_TEGRA124_EMC=m
CONFIG_TEGRA186_GPC_DMA=m
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA20_EMC=m
CONFIG_TEGRA30_EMC=m
@@ -7819,6 +7875,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -7845,7 +7902,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -8038,6 +8095,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -8073,6 +8131,8 @@ CONFIG_TWL4030_WATCHDOG=m
CONFIG_TWL6030_GPADC=m
CONFIG_TWL6030_USB=m
CONFIG_TWL6040_CORE=y
+CONFIG_TXGBE=m
+CONFIG_TYPEC_ANX7411=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -8106,6 +8166,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -8134,12 +8195,14 @@ CONFIG_UNIX98_PTYS=y
CONFIG_UNIX_DIAG=y
CONFIG_UNIXWARE_DISKLABEL=y
CONFIG_UNIX=y
+# CONFIG_UNUSED_BOARD_FILES is not set
CONFIG_UNWINDER_ARM=y
# CONFIG_UNWINDER_FRAME_POINTER is not set
CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -8406,6 +8469,7 @@ CONFIG_USB_OHCI_HCD_PCI=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD_STI=m
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_OTG_FSM=m
# CONFIG_USB_OTG_PRODUCTLIST is not set
@@ -8566,6 +8630,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -8608,6 +8673,7 @@ CONFIG_VIDEO_ADP1653=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_AM437X_VPFE=m
# CONFIG_VIDEO_AMPHION_VPU is not set
+CONFIG_VIDEO_AR0521=m
# CONFIG_VIDEO_ASPEED is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
@@ -8783,10 +8849,13 @@ CONFIG_VIDEO_STI_DELTA_MJPEG=y
CONFIG_VIDEO_STI_HVA=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
# CONFIG_VIDEO_STM32_DCMI is not set
CONFIG_VIDEO_STM32_DMA2D=m
CONFIG_VIDEO_SUN4I_CSI=m
CONFIG_VIDEO_SUN6I_CSI=m
+CONFIG_VIDEO_SUN6I_MIPI_CSI2=m
+# CONFIG_VIDEO_SUN8I_A83T_MIPI_CSI2 is not set
CONFIG_VIDEO_SUN8I_DEINTERLACE=m
CONFIG_VIDEO_SUN8I_ROTATE=m
CONFIG_VIDEO_SUNXI_CEDRUS=m
@@ -8982,6 +9051,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -9079,8 +9149,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-armv7hl-lpae-debug-fedora.config b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config
index bdb2ebd..72891b4 100644
--- a/SOURCES/kernel-armv7hl-lpae-debug-fedora.config
+++ b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config
@@ -47,7 +47,7 @@ CONFIG_ACPI_BUTTON=y
# CONFIG_ACPI_CMPC is not set
CONFIG_ACPI_CONFIGFS=m
CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
+# CONFIG_ACPI_CPPC_CPUFREQ_FIE is not set
CONFIG_ACPI_CUSTOM_METHOD=m
CONFIG_ACPI_DEBUGGER_USER=m
CONFIG_ACPI_DEBUGGER=y
@@ -71,6 +71,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_VIDEO=m
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -238,7 +239,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -296,6 +296,7 @@ CONFIG_ARCH_KEYSTONE=y
CONFIG_ARCH_MESON=y
# CONFIG_ARCH_MILBEAUT is not set
# CONFIG_ARCH_MMP is not set
+# CONFIG_ARCH_MSM8909 is not set
# CONFIG_ARCH_MSM8916 is not set
# CONFIG_ARCH_MSTARV7 is not set
CONFIG_ARCH_MULTIPLATFORM=y
@@ -323,6 +324,7 @@ CONFIG_ARCH_ROCKCHIP=y
# CONFIG_ARCH_SPARX5 is not set
# CONFIG_ARCH_STI is not set
CONFIG_ARCH_STM32=y
+# CONFIG_ARCH_SUNPLUS is not set
CONFIG_ARCH_SUNXI=y
CONFIG_ARCH_TEGRA_114_SOC=y
CONFIG_ARCH_TEGRA_124_SOC=y
@@ -382,7 +384,6 @@ CONFIG_ARM_CPU_TOPOLOGY=y
CONFIG_ARM_CRYPTO=y
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
CONFIG_ARM_DMA_USE_IOMMU=y
-# CONFIG_ARM_DMC620_PMU is not set
CONFIG_ARM_ERRATA_430973=y
CONFIG_ARM_ERRATA_643719=y
CONFIG_ARM_ERRATA_720789=y
@@ -436,6 +437,7 @@ CONFIG_ARM_QCOM_SPM_CPUIDLE=y
CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
CONFIG_ARM_RK3399_DMC_DEVFREQ=m
CONFIG_ARM_SCMI_CPUFREQ=m
+CONFIG_ARM_SCMI_POWER_CONTROL=m
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -451,6 +453,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
CONFIG_ARM_SMC_WATCHDOG=m
CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
# CONFIG_ARM_SPE_PMU is not set
@@ -704,7 +707,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -742,6 +745,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -911,6 +915,7 @@ CONFIG_CADENCE_WATCHDOG=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -919,6 +924,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
CONFIG_CAN_FLEXCAN=m
# CONFIG_CAN_GRCAN is not set
@@ -939,6 +945,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -1001,6 +1008,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -1181,7 +1189,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -1217,6 +1225,7 @@ CONFIG_CPU_ICACHE_MISMATCH_WORKAROUND=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_SW_DOMAIN_PAN is not set
@@ -1252,6 +1261,7 @@ CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_EC_VBC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1266,6 +1276,7 @@ CONFIG_CRYPTO_AES_ARM=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B_NEON=m
CONFIG_CRYPTO_BLAKE2B=y
@@ -1367,7 +1378,7 @@ CONFIG_CRYPTO_DEV_SUN8I_SS=m
CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG=y
CONFIG_CRYPTO_DEV_VIRTIO=m
# CONFIG_CRYPTO_DEV_ZYNQMP_SHA3 is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1386,6 +1397,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM_CE=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1471,6 +1483,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1572,8 +1585,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
CONFIG_DETECT_HUNG_TASK=y
# CONFIG_DEV_APPLETALK is not set
@@ -1598,8 +1609,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9000 is not set
CONFIG_DM9051=m
CONFIG_DM9102=m
@@ -1753,13 +1764,20 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_IMX8QM_LDB=m
+CONFIG_DRM_IMX8QXP_LDB=m
+CONFIG_DRM_IMX8QXP_PIXEL_COMBINER=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK_TO_DPI=m
# CONFIG_DRM_IMX is not set
+CONFIG_DRM_IMX_LCDIF=m
CONFIG_DRM_ITE_IT6505=m
CONFIG_DRM_ITE_IT66121=m
CONFIG_DRM_KOMEDA=m
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LIMA=m
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1793,6 +1811,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_EDP=m
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1893,6 +1912,7 @@ CONFIG_DRM_SUN8I_MIXER=m
CONFIG_DRM_TEGRA=m
CONFIG_DRM_TEGRA_STAGING=y
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
CONFIG_DRM_TIDSS=m
# CONFIG_DRM_TILCDC is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
@@ -2267,10 +2287,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -2393,7 +2415,6 @@ CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_DAVINCI=y
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2594,6 +2615,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2726,7 +2748,6 @@ CONFIG_I2C_DESIGNWARE_PCI=m
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_EXYNOS5=m
@@ -2735,6 +2756,7 @@ CONFIG_I2C_EXYNOS5=m
CONFIG_I2C_GPIO=m
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2845,11 +2867,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
CONFIG_IIO_SCMI=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
@@ -2943,6 +2967,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
# CONFIG_INFINIBAND_CXGB4 is not set
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
# CONFIG_INFINIBAND_IPOIB_CM is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG is not set
@@ -2972,8 +2997,8 @@ CONFIG_INFINIBAND_RTRS_SERVER=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -3070,13 +3095,11 @@ CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
CONFIG_INTERCONNECT_EXYNOS=y
-CONFIG_INTERCONNECT_IMX8MM=m
-CONFIG_INTERCONNECT_IMX8MN=m
-CONFIG_INTERCONNECT_IMX8MQ=m
-CONFIG_INTERCONNECT_IMX=m
+# CONFIG_INTERCONNECT_IMX is not set
# CONFIG_INTERCONNECT_QCOM is not set
# CONFIG_INTERCONNECT_QCOM_MSM8974 is not set
# CONFIG_INTERCONNECT_QCOM_SDX65 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT_SAMSUNG=y
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
@@ -3470,7 +3493,7 @@ CONFIG_KHADAS_MCU_FAN_THERMAL=m
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KPSS_XCC=m
CONFIG_KRAITCC=m
@@ -3726,6 +3749,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3891,7 +3915,7 @@ CONFIG_MFD_CROS_EC_DEV=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
CONFIG_MFD_EXYNOS_LPASS=m
# CONFIG_MFD_GATEWORKS_GSC is not set
@@ -4418,6 +4442,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4439,6 +4464,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4686,6 +4712,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4758,6 +4785,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4847,6 +4875,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4927,6 +4956,7 @@ CONFIG_NTFS3_LZX_XPRESS=y
CONFIG_NULL_TTY=m
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
CONFIG_NVMEM_IMX_IIM=m
@@ -4941,6 +4971,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
# CONFIG_NVME_RDMA is not set
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -5207,9 +5238,11 @@ CONFIG_PHY_MESON8_HDMI_TX=m
CONFIG_PHY_MESON_AXG_MIPI_DPHY=m
CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG=y
CONFIG_PHY_MESON_AXG_PCIE=m
+CONFIG_PHY_MESON_G12A_MIPI_DPHY_ANALOG=y
CONFIG_PHY_MESON_G12A_USB2=y
CONFIG_PHY_MESON_G12A_USB3_PCIE=m
# CONFIG_PHY_MESON_GXL_USB2 is not set
+# CONFIG_PHY_MIXEL_LVDS_PHY is not set
# CONFIG_PHY_MIXEL_MIPI_DPHY is not set
CONFIG_PHY_MMP3_HSIC=m
CONFIG_PHY_MMP3_USB=m
@@ -5298,6 +5331,7 @@ CONFIG_PINCTRL_LAKEFIELD=m
CONFIG_PINCTRL_MESON=y
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
CONFIG_PINCTRL_MSM8226=m
+# CONFIG_PINCTRL_MSM8909 is not set
# CONFIG_PINCTRL_MSM8953 is not set
# CONFIG_PINCTRL_MSM8976 is not set
# CONFIG_PINCTRL_MSM8994 is not set
@@ -5323,11 +5357,13 @@ CONFIG_PINCTRL_SINGLE=y
# CONFIG_PINCTRL_SM6115 is not set
# CONFIG_PINCTRL_SM6125 is not set
# CONFIG_PINCTRL_SM6350 is not set
+# CONFIG_PINCTRL_SM6375 is not set
# CONFIG_PINCTRL_SM8150 is not set
# CONFIG_PINCTRL_SM8250 is not set
# CONFIG_PINCTRL_SM8350 is not set
# CONFIG_PINCTRL_SM8450 is not set
# CONFIG_PINCTRL_STMFX is not set
+CONFIG_PINCTRL_SUN20I_D1=y
CONFIG_PINCTRL_SUN4I_A10=y
# CONFIG_PINCTRL_SUN50I_A100 is not set
# CONFIG_PINCTRL_SUN50I_A100_R is not set
@@ -5389,6 +5425,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -5398,6 +5435,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWER_RESET_AS3722=y
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -5452,7 +5490,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5505,6 +5543,7 @@ CONFIG_PTP_1588_CLOCK=y
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM2835=m
+CONFIG_PWM_CLK=m
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
@@ -5554,6 +5593,7 @@ CONFIG_QCOM_FASTRPC=m
CONFIG_QCOM_HFPLL=m
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LLCC is not set
CONFIG_QCOM_LMH=m
@@ -5569,6 +5609,7 @@ CONFIG_QCOM_SCM=y
CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
+# CONFIG_QCOM_SPMI_RRADC is not set
CONFIG_QCOM_SPM=y
CONFIG_QCOM_SSC_BLOCK_BUS=y
CONFIG_QCOM_STATS=m
@@ -5655,6 +5696,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
# CONFIG_RCU_SCALE_TEST is not set
@@ -5803,14 +5845,13 @@ CONFIG_RESET_SCMI=y
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_TI_SCI=m
CONFIG_RESET_TI_SYSCON=m
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -5959,6 +6000,7 @@ CONFIG_RTC_DRV_MSM6242=m
CONFIG_RTC_DRV_MV=m
# CONFIG_RTC_DRV_MXC is not set
# CONFIG_RTC_DRV_MXC_V2 is not set
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OMAP=m
CONFIG_RTC_DRV_OPTEE=m
CONFIG_RTC_DRV_PALMAS=m
@@ -6052,6 +6094,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -6377,6 +6420,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -6499,7 +6543,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
@@ -6595,6 +6638,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6629,6 +6673,7 @@ CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
# CONFIG_SM_CAMCC_8250 is not set
+# CONFIG_SM_CAMCC_8450 is not set
CONFIG_SMC_DIAG=m
CONFIG_SMC=m
# CONFIG_SM_DISPCC_8250 is not set
@@ -6643,6 +6688,7 @@ CONFIG_SM_GCC_8450=m
# CONFIG_SM_GPUCC_6350 is not set
# CONFIG_SM_GPUCC_8150 is not set
# CONFIG_SM_GPUCC_8250 is not set
+# CONFIG_SM_GPUCC_8350 is not set
CONFIG_SMP_ON_UP=y
CONFIG_SMP=y
CONFIG_SMSC911X=m
@@ -6693,6 +6739,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -6919,6 +6967,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_ICS43432=m
# CONFIG_SND_SOC_IMG is not set
@@ -7125,6 +7174,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -7145,6 +7195,7 @@ CONFIG_SND_SOC_TEGRA210_AMX=m
# CONFIG_SND_SOC_TEGRA210_I2S is not set
CONFIG_SND_SOC_TEGRA210_MIXER=m
CONFIG_SND_SOC_TEGRA210_MVC=m
+CONFIG_SND_SOC_TEGRA210_OPE=m
CONFIG_SND_SOC_TEGRA210_SFC=m
CONFIG_SND_SOC_TEGRA30_AHUB=m
CONFIG_SND_SOC_TEGRA30_I2S=m
@@ -7210,6 +7261,7 @@ CONFIG_SND_SOC_WM8962=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -7314,7 +7366,6 @@ CONFIG_SPI_CADENCE_XSPI=m
CONFIG_SPI_DAVINCI=m
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_DESIGNWARE=m
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_DW_DMA is not set
CONFIG_SPI_DW_MMIO=m
CONFIG_SPI_DW_PCI=m
@@ -7331,6 +7382,7 @@ CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
CONFIG_SPI_MESON_SPICC=m
CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -7480,8 +7532,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -7544,6 +7598,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -7583,6 +7638,7 @@ CONFIG_TCS3472=m
CONFIG_TEE=m
CONFIG_TEGRA124_EMC=m
CONFIG_TEGRA186_GPC_DMA=m
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA30_EMC=m
CONFIG_TEGRA30_TSENSOR=m
@@ -7608,6 +7664,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -7634,7 +7691,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -7831,6 +7888,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -7860,6 +7918,8 @@ CONFIG_TUN=m
CONFIG_TURRIS_MOX_RWTM=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+CONFIG_TYPEC_ANX7411=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -7893,6 +7953,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -7921,12 +7982,14 @@ CONFIG_UNIX98_PTYS=y
CONFIG_UNIX_DIAG=y
CONFIG_UNIXWARE_DISKLABEL=y
CONFIG_UNIX=y
+# CONFIG_UNUSED_BOARD_FILES is not set
CONFIG_UNWINDER_ARM=y
# CONFIG_UNWINDER_FRAME_POINTER is not set
CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -8186,6 +8249,7 @@ CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_HCD_PCI=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
# CONFIG_USB_OHCI_HCD_SSB is not set
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_OTG_FSM=m
# CONFIG_USB_OTG_PRODUCTLIST is not set
@@ -8346,6 +8410,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -8388,6 +8453,7 @@ CONFIG_VIDEO_ADP1653=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_AM437X_VPFE=m
# CONFIG_VIDEO_AMPHION_VPU is not set
+CONFIG_VIDEO_AR0521=m
# CONFIG_VIDEO_ASPEED is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
@@ -8551,10 +8617,13 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
# CONFIG_VIDEO_STM32_DCMI is not set
CONFIG_VIDEO_STM32_DMA2D=m
CONFIG_VIDEO_SUN4I_CSI=m
CONFIG_VIDEO_SUN6I_CSI=m
+CONFIG_VIDEO_SUN6I_MIPI_CSI2=m
+# CONFIG_VIDEO_SUN8I_A83T_MIPI_CSI2 is not set
CONFIG_VIDEO_SUN8I_DEINTERLACE=m
CONFIG_VIDEO_SUN8I_ROTATE=m
CONFIG_VIDEO_SUNXI_CEDRUS=m
@@ -8749,6 +8818,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -8846,8 +8916,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-armv7hl-lpae-fedora.config b/SOURCES/kernel-armv7hl-lpae-fedora.config
index 97ddca3..9912d38 100644
--- a/SOURCES/kernel-armv7hl-lpae-fedora.config
+++ b/SOURCES/kernel-armv7hl-lpae-fedora.config
@@ -47,7 +47,7 @@ CONFIG_ACPI_BUTTON=y
# CONFIG_ACPI_CMPC is not set
# CONFIG_ACPI_CONFIGFS is not set
CONFIG_ACPI_CONTAINER=y
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
+# CONFIG_ACPI_CPPC_CPUFREQ_FIE is not set
# CONFIG_ACPI_CUSTOM_METHOD is not set
# CONFIG_ACPI_DEBUGGER is not set
# CONFIG_ACPI_DEBUGGER_USER is not set
@@ -71,6 +71,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_VIDEO=m
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -238,7 +239,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -296,6 +296,7 @@ CONFIG_ARCH_KEYSTONE=y
CONFIG_ARCH_MESON=y
# CONFIG_ARCH_MILBEAUT is not set
# CONFIG_ARCH_MMP is not set
+# CONFIG_ARCH_MSM8909 is not set
# CONFIG_ARCH_MSM8916 is not set
# CONFIG_ARCH_MSTARV7 is not set
CONFIG_ARCH_MULTIPLATFORM=y
@@ -323,6 +324,7 @@ CONFIG_ARCH_ROCKCHIP=y
# CONFIG_ARCH_SPARX5 is not set
# CONFIG_ARCH_STI is not set
CONFIG_ARCH_STM32=y
+# CONFIG_ARCH_SUNPLUS is not set
CONFIG_ARCH_SUNXI=y
CONFIG_ARCH_TEGRA_114_SOC=y
CONFIG_ARCH_TEGRA_124_SOC=y
@@ -382,7 +384,6 @@ CONFIG_ARM_CPU_TOPOLOGY=y
CONFIG_ARM_CRYPTO=y
CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
CONFIG_ARM_DMA_USE_IOMMU=y
-# CONFIG_ARM_DMC620_PMU is not set
CONFIG_ARM_ERRATA_430973=y
CONFIG_ARM_ERRATA_643719=y
CONFIG_ARM_ERRATA_720789=y
@@ -436,6 +437,7 @@ CONFIG_ARM_QCOM_SPM_CPUIDLE=y
CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
CONFIG_ARM_RK3399_DMC_DEVFREQ=m
CONFIG_ARM_SCMI_CPUFREQ=m
+CONFIG_ARM_SCMI_POWER_CONTROL=m
CONFIG_ARM_SCMI_POWER_DOMAIN=m
CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
@@ -451,6 +453,7 @@ CONFIG_ARM_SMCCC_SOC_ID=y
CONFIG_ARM_SMC_WATCHDOG=m
CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
# CONFIG_ARM_SPE_PMU is not set
@@ -704,7 +707,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -742,6 +745,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -911,6 +915,7 @@ CONFIG_CADENCE_WATCHDOG=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -919,6 +924,7 @@ CONFIG_CAN_CTUCANFD_PLATFORM=m
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
CONFIG_CAN_FLEXCAN=m
# CONFIG_CAN_GRCAN is not set
@@ -939,6 +945,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -1001,6 +1008,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -1181,7 +1189,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -1217,6 +1225,7 @@ CONFIG_CPU_ICACHE_MISMATCH_WORKAROUND=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_SW_DOMAIN_PAN is not set
@@ -1252,6 +1261,7 @@ CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_EC_VBC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1266,6 +1276,7 @@ CONFIG_CRYPTO_AES_ARM=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B_NEON=m
CONFIG_CRYPTO_BLAKE2B=y
@@ -1367,7 +1378,7 @@ CONFIG_CRYPTO_DEV_SUN8I_SS=m
CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG=y
CONFIG_CRYPTO_DEV_VIRTIO=m
# CONFIG_CRYPTO_DEV_ZYNQMP_SHA3 is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1386,6 +1397,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_ARM_CE=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1471,6 +1483,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1565,8 +1578,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DEPRECATED_PARAM_STRUCT is not set
# CONFIG_DETECT_HUNG_TASK is not set
# CONFIG_DEV_APPLETALK is not set
@@ -1591,8 +1602,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9000 is not set
CONFIG_DM9051=m
CONFIG_DM9102=m
@@ -1746,13 +1757,20 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_I2C_SIL164=m
+CONFIG_DRM_IMX8QM_LDB=m
+CONFIG_DRM_IMX8QXP_LDB=m
+CONFIG_DRM_IMX8QXP_PIXEL_COMBINER=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK=m
+CONFIG_DRM_IMX8QXP_PIXEL_LINK_TO_DPI=m
# CONFIG_DRM_IMX is not set
+CONFIG_DRM_IMX_LCDIF=m
CONFIG_DRM_ITE_IT6505=m
CONFIG_DRM_ITE_IT66121=m
CONFIG_DRM_KOMEDA=m
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LIMA=m
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1786,6 +1804,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_EDP=m
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1886,6 +1905,7 @@ CONFIG_DRM_SUN8I_MIXER=m
CONFIG_DRM_TEGRA=m
CONFIG_DRM_TEGRA_STAGING=y
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
CONFIG_DRM_TIDSS=m
# CONFIG_DRM_TILCDC is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
@@ -2252,10 +2272,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -2378,7 +2400,6 @@ CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_DAVINCI=y
-CONFIG_GPIO_DLN2=m
CONFIG_GPIO_DWAPB=m
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2579,6 +2600,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2711,7 +2733,6 @@ CONFIG_I2C_DESIGNWARE_PCI=m
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_EXYNOS5=m
@@ -2720,6 +2741,7 @@ CONFIG_I2C_EXYNOS5=m
CONFIG_I2C_GPIO=m
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
CONFIG_I2C_HID_OF_GOODIX=m
CONFIG_I2C_HID_OF=m
# CONFIG_I2C_HISI is not set
@@ -2830,11 +2852,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
CONFIG_IIO_SCMI=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
@@ -2928,6 +2952,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
# CONFIG_INFINIBAND_CXGB4 is not set
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
# CONFIG_INFINIBAND_IPOIB_CM is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
# CONFIG_INFINIBAND_IPOIB_DEBUG is not set
@@ -2957,8 +2982,8 @@ CONFIG_INFINIBAND_RTRS_SERVER=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -3055,13 +3080,11 @@ CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
CONFIG_INTERCONNECT_EXYNOS=y
-CONFIG_INTERCONNECT_IMX8MM=m
-CONFIG_INTERCONNECT_IMX8MN=m
-CONFIG_INTERCONNECT_IMX8MQ=m
-CONFIG_INTERCONNECT_IMX=m
+# CONFIG_INTERCONNECT_IMX is not set
# CONFIG_INTERCONNECT_QCOM is not set
# CONFIG_INTERCONNECT_QCOM_MSM8974 is not set
# CONFIG_INTERCONNECT_QCOM_SDX65 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT_SAMSUNG=y
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
@@ -3453,7 +3476,7 @@ CONFIG_KHADAS_MCU_FAN_THERMAL=m
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KPSS_XCC=m
CONFIG_KRAITCC=m
@@ -3709,6 +3732,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3873,7 +3897,7 @@ CONFIG_MFD_CROS_EC_DEV=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
CONFIG_MFD_EXYNOS_LPASS=m
# CONFIG_MFD_GATEWORKS_GSC is not set
@@ -4400,6 +4424,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4421,6 +4446,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4668,6 +4694,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4740,6 +4767,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4829,6 +4857,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4909,6 +4938,7 @@ CONFIG_NTFS3_LZX_XPRESS=y
CONFIG_NULL_TTY=m
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
CONFIG_NVMEM_IMX_IIM=m
@@ -4923,6 +4953,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
# CONFIG_NVME_RDMA is not set
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -5188,9 +5219,11 @@ CONFIG_PHY_MESON8_HDMI_TX=m
CONFIG_PHY_MESON_AXG_MIPI_DPHY=m
CONFIG_PHY_MESON_AXG_MIPI_PCIE_ANALOG=y
CONFIG_PHY_MESON_AXG_PCIE=m
+CONFIG_PHY_MESON_G12A_MIPI_DPHY_ANALOG=y
CONFIG_PHY_MESON_G12A_USB2=y
CONFIG_PHY_MESON_G12A_USB3_PCIE=m
# CONFIG_PHY_MESON_GXL_USB2 is not set
+# CONFIG_PHY_MIXEL_LVDS_PHY is not set
# CONFIG_PHY_MIXEL_MIPI_DPHY is not set
CONFIG_PHY_MMP3_HSIC=m
CONFIG_PHY_MMP3_USB=m
@@ -5279,6 +5312,7 @@ CONFIG_PINCTRL_LAKEFIELD=m
CONFIG_PINCTRL_MESON=y
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
CONFIG_PINCTRL_MSM8226=m
+# CONFIG_PINCTRL_MSM8909 is not set
# CONFIG_PINCTRL_MSM8953 is not set
# CONFIG_PINCTRL_MSM8976 is not set
# CONFIG_PINCTRL_MSM8994 is not set
@@ -5304,11 +5338,13 @@ CONFIG_PINCTRL_SINGLE=y
# CONFIG_PINCTRL_SM6115 is not set
# CONFIG_PINCTRL_SM6125 is not set
# CONFIG_PINCTRL_SM6350 is not set
+# CONFIG_PINCTRL_SM6375 is not set
# CONFIG_PINCTRL_SM8150 is not set
# CONFIG_PINCTRL_SM8250 is not set
# CONFIG_PINCTRL_SM8350 is not set
# CONFIG_PINCTRL_SM8450 is not set
# CONFIG_PINCTRL_STMFX is not set
+CONFIG_PINCTRL_SUN20I_D1=y
CONFIG_PINCTRL_SUN4I_A10=y
# CONFIG_PINCTRL_SUN50I_A100 is not set
# CONFIG_PINCTRL_SUN50I_A100_R is not set
@@ -5370,6 +5406,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -5379,6 +5416,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWER_RESET_AS3722=y
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -5433,7 +5471,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5486,6 +5524,7 @@ CONFIG_PTP_1588_CLOCK=y
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
CONFIG_PWM_BCM2835=m
+CONFIG_PWM_CLK=m
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
@@ -5535,6 +5574,7 @@ CONFIG_QCOM_FASTRPC=m
CONFIG_QCOM_HFPLL=m
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LLCC is not set
CONFIG_QCOM_LMH=m
@@ -5550,6 +5590,7 @@ CONFIG_QCOM_SCM=y
CONFIG_QCOM_SOCINFO=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_QCOM_SPMI_ADC_TM5 is not set
+# CONFIG_QCOM_SPMI_RRADC is not set
CONFIG_QCOM_SPM=y
CONFIG_QCOM_SSC_BLOCK_BUS=y
CONFIG_QCOM_STATS=m
@@ -5636,6 +5677,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_REF_SCALE_TEST is not set
# CONFIG_RCU_SCALE_TEST is not set
@@ -5784,14 +5826,13 @@ CONFIG_RESET_SCMI=y
CONFIG_RESET_SIMPLE=y
CONFIG_RESET_TI_SCI=m
CONFIG_RESET_TI_SYSCON=m
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -5940,6 +5981,7 @@ CONFIG_RTC_DRV_MSM6242=m
CONFIG_RTC_DRV_MV=m
# CONFIG_RTC_DRV_MXC is not set
# CONFIG_RTC_DRV_MXC_V2 is not set
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OMAP=m
CONFIG_RTC_DRV_OPTEE=m
CONFIG_RTC_DRV_PALMAS=m
@@ -6033,6 +6075,7 @@ CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -6358,6 +6401,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -6480,7 +6524,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
@@ -6576,6 +6619,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6610,6 +6654,7 @@ CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
# CONFIG_SM_CAMCC_8250 is not set
+# CONFIG_SM_CAMCC_8450 is not set
CONFIG_SMC_DIAG=m
CONFIG_SMC=m
# CONFIG_SM_DISPCC_8250 is not set
@@ -6624,6 +6669,7 @@ CONFIG_SM_GCC_8450=m
# CONFIG_SM_GPUCC_6350 is not set
# CONFIG_SM_GPUCC_8150 is not set
# CONFIG_SM_GPUCC_8250 is not set
+# CONFIG_SM_GPUCC_8350 is not set
CONFIG_SMP_ON_UP=y
CONFIG_SMP=y
CONFIG_SMSC911X=m
@@ -6674,6 +6720,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -6899,6 +6947,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
CONFIG_SND_SOC_ICS43432=m
# CONFIG_SND_SOC_IMG is not set
@@ -7104,6 +7153,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -7124,6 +7174,7 @@ CONFIG_SND_SOC_TEGRA210_AMX=m
# CONFIG_SND_SOC_TEGRA210_I2S is not set
CONFIG_SND_SOC_TEGRA210_MIXER=m
CONFIG_SND_SOC_TEGRA210_MVC=m
+CONFIG_SND_SOC_TEGRA210_OPE=m
CONFIG_SND_SOC_TEGRA210_SFC=m
CONFIG_SND_SOC_TEGRA30_AHUB=m
CONFIG_SND_SOC_TEGRA30_I2S=m
@@ -7189,6 +7240,7 @@ CONFIG_SND_SOC_WM8962=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -7293,7 +7345,6 @@ CONFIG_SPI_CADENCE_XSPI=m
CONFIG_SPI_DAVINCI=m
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_DESIGNWARE=m
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_DW_DMA is not set
CONFIG_SPI_DW_MMIO=m
CONFIG_SPI_DW_PCI=m
@@ -7310,6 +7361,7 @@ CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
CONFIG_SPI_MESON_SPICC=m
CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -7459,8 +7511,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -7523,6 +7577,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -7562,6 +7617,7 @@ CONFIG_TCS3472=m
CONFIG_TEE=m
CONFIG_TEGRA124_EMC=m
CONFIG_TEGRA186_GPC_DMA=m
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA30_EMC=m
CONFIG_TEGRA30_TSENSOR=m
@@ -7587,6 +7643,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -7613,7 +7670,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -7810,6 +7867,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -7839,6 +7897,8 @@ CONFIG_TUN=m
CONFIG_TURRIS_MOX_RWTM=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+CONFIG_TYPEC_ANX7411=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -7872,6 +7932,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -7900,12 +7961,14 @@ CONFIG_UNIX98_PTYS=y
CONFIG_UNIX_DIAG=y
CONFIG_UNIXWARE_DISKLABEL=y
CONFIG_UNIX=y
+# CONFIG_UNUSED_BOARD_FILES is not set
CONFIG_UNWINDER_ARM=y
# CONFIG_UNWINDER_FRAME_POINTER is not set
CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -8165,6 +8228,7 @@ CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_HCD_PCI=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
# CONFIG_USB_OHCI_HCD_SSB is not set
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_OTG_FSM=m
# CONFIG_USB_OTG_PRODUCTLIST is not set
@@ -8325,6 +8389,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -8367,6 +8432,7 @@ CONFIG_VIDEO_ADP1653=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_AM437X_VPFE=m
# CONFIG_VIDEO_AMPHION_VPU is not set
+CONFIG_VIDEO_AR0521=m
# CONFIG_VIDEO_ASPEED is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
@@ -8530,10 +8596,13 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
# CONFIG_VIDEO_STM32_DCMI is not set
CONFIG_VIDEO_STM32_DMA2D=m
CONFIG_VIDEO_SUN4I_CSI=m
CONFIG_VIDEO_SUN6I_CSI=m
+CONFIG_VIDEO_SUN6I_MIPI_CSI2=m
+# CONFIG_VIDEO_SUN8I_A83T_MIPI_CSI2 is not set
CONFIG_VIDEO_SUN8I_DEINTERLACE=m
CONFIG_VIDEO_SUN8I_ROTATE=m
CONFIG_VIDEO_SUNXI_CEDRUS=m
@@ -8728,6 +8797,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -8825,8 +8895,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-ppc64le-debug-fedora.config b/SOURCES/kernel-ppc64le-debug-fedora.config
index 9ef5824..9246a8f 100644
--- a/SOURCES/kernel-ppc64le-debug-fedora.config
+++ b/SOURCES/kernel-ppc64le-debug-fedora.config
@@ -71,6 +71,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -229,9 +230,8 @@ CONFIG_AMD_PMC=m
CONFIG_AMT=m
CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
-CONFIG_ANDROID_BINDER_IPC=y
-# CONFIG_ANDROID is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -278,8 +278,9 @@ CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
CONFIG_ARM_PTDUMP_DEBUGFS=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -496,7 +497,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -534,6 +535,7 @@ CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -697,6 +699,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -705,6 +708,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -726,6 +730,7 @@ CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
# CONFIG_CAN_MSCAN is not set
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -778,6 +783,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -920,7 +926,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -951,6 +957,7 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -979,6 +986,7 @@ CONFIG_CROS_EC_RPMSG=m
CONFIG_CROS_EC_SENSORHUB=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -989,6 +997,7 @@ CONFIG_CRYPTO_AEGIS128=m
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=y
CONFIG_CRYPTO_BLAKE2S=m
@@ -1044,7 +1053,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
CONFIG_CRYPTO_DEV_VMX=y
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1062,6 +1071,7 @@ CONFIG_CRYPTO_FIPS=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1142,6 +1152,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1241,8 +1252,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_APPLETALK=m
CONFIG_DEV_DAX_HMEM=m
@@ -1260,8 +1269,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
CONFIG_DMA_API_DEBUG_SG=y
@@ -1378,11 +1387,13 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
# CONFIG_DRM_I2C_NXP_TDA998X is not set
CONFIG_DRM_I2C_SIL164=m
+# CONFIG_DRM_IMX_LCDIF is not set
CONFIG_DRM_ITE_IT6505=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1404,6 +1415,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_EDP is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1488,6 +1500,7 @@ CONFIG_DRM_SSD130X_I2C=m
CONFIG_DRM_SSD130X=m
CONFIG_DRM_SSD130X_SPI=m
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -1823,10 +1836,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -1951,7 +1966,6 @@ CONFIG_GPIO_AGGREGATOR=m
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2133,6 +2147,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2255,13 +2270,13 @@ CONFIG_I2C_DESIGNWARE_PCI=m
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2359,11 +2374,13 @@ CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
# CONFIG_IIO_SSP_SENSORHUB is not set
@@ -2436,6 +2453,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
@@ -2465,8 +2483,8 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -2555,6 +2573,7 @@ CONFIG_INTEL_SOC_PMIC_CHTDC_TI=y
CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_INV_ICM42600_I2C=m
@@ -2925,7 +2944,7 @@ CONFIG_KGDB=y
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
# CONFIG_KS8842 is not set
@@ -2942,6 +2961,8 @@ CONFIG_KVM_BOOK3S_64_HV=m
CONFIG_KVM_BOOK3S_64=m
CONFIG_KVM_BOOK3S_64_PR=m
# CONFIG_KVM_BOOK3S_HV_EXIT_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM_GUEST=y
CONFIG_KVM_XEN=y
CONFIG_KVM_XICS=y
@@ -3164,6 +3185,7 @@ CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3310,7 +3332,7 @@ CONFIG_MFD_CORE=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
@@ -3764,6 +3786,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -3785,6 +3808,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4031,6 +4055,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
CONFIG_NET_VENDOR_WIZNET=y
CONFIG_NET_VENDOR_XILINX=y
CONFIG_NET_VENDOR_XIRCOM=y
@@ -4103,6 +4128,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4192,6 +4218,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4277,6 +4304,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -4285,6 +4313,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4574,6 +4603,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4583,6 +4613,7 @@ CONFIG_POSIX_MQUEUE=y
CONFIG_POWER8_CPU=y
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_CPUIDLE=y
# CONFIG_POWERNV_OP_PANEL is not set
@@ -4670,7 +4701,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -4692,6 +4723,8 @@ CONFIG_PROVE_NVDIMM_LOCKING=y
CONFIG_PSAMPLE=m
CONFIG_PSERIES_CPUIDLE=y
CONFIG_PSERIES_ENERGY=m
+CONFIG_PSERIES_PLPKS=y
+CONFIG_PSERIES_WDT=m
# CONFIG_PSI_DEFAULT_DISABLED is not set
CONFIG_PSI=y
# CONFIG_PSTORE_842_COMPRESS_DEFAULT is not set
@@ -4724,10 +4757,12 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
# CONFIG_PWM_FSL_FTM is not set
CONFIG_PWM_HIBVT=m
+CONFIG_PWM_OMAP_DMTIMER=m
# CONFIG_PWM_PCA9685 is not set
# CONFIG_PWM_XILINX is not set
CONFIG_PWM=y
@@ -4825,6 +4860,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
# CONFIG_RCU_SCALE_TEST is not set
@@ -4935,14 +4971,13 @@ CONFIG_REMOTEPROC=y
# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -5061,6 +5096,7 @@ CONFIG_RTC_DRV_MAX6916=m
CONFIG_RTC_DRV_MAX77686=m
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OPAL=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
@@ -5142,6 +5178,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -5444,6 +5481,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -5564,7 +5602,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
@@ -5638,6 +5675,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5719,6 +5757,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5945,6 +5985,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_ICS43432 is not set
# CONFIG_SND_SOC_IMG is not set
@@ -6149,6 +6190,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -6228,6 +6270,7 @@ CONFIG_SND_SOC_WM8940=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -6313,7 +6356,6 @@ CONFIG_SPI_AX88796C=m
# CONFIG_SPI_CADENCE_XSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
@@ -6323,6 +6365,7 @@ CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6412,8 +6455,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -6476,6 +6521,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -6522,6 +6568,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6548,7 +6595,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6717,6 +6764,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6744,6 +6792,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -6776,6 +6826,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
# CONFIG_UDBG_RTAS_CONSOLE is not set
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
@@ -6810,6 +6861,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -7007,6 +7059,7 @@ CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
CONFIG_USB_OHCI_HCD_PPC_OF=y
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_OTG is not set
@@ -7156,6 +7209,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -7188,6 +7242,7 @@ CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_ADP1653=m
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_AK7375=m
+CONFIG_VIDEO_AR0521=m
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -7323,6 +7378,7 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
# CONFIG_VIDEO_TEGRA_TPG is not set
CONFIG_VIDEO_TM6000_ALSA=m
@@ -7507,6 +7563,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -7604,8 +7661,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-ppc64le-debug-rhel.config b/SOURCES/kernel-ppc64le-debug-rhel.config
index 04e45cd..e9a61ee 100644
--- a/SOURCES/kernel-ppc64le-debug-rhel.config
+++ b/SOURCES/kernel-ppc64le-debug-rhel.config
@@ -12,11 +12,11 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_TUNE_TWISTER is not set
CONFIG_842_DECOMPRESS=y
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
CONFIG_ACCESSIBILITY=y
# CONFIG_ACORN_PARTITION is not set
CONFIG_ACPI_AC=y
-CONFIG_ACPI_AGDI=y
# CONFIG_ACPI_ALS is not set
CONFIG_ACPI_APEI_EINJ=m
CONFIG_ACPI_APEI_ERST_DEBUG=m
@@ -53,6 +53,7 @@ CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -197,7 +198,7 @@ CONFIG_AMD_PMC=m
# CONFIG_AMDTEE is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -213,6 +214,7 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BITMAIN is not set
# CONFIG_ARCH_KEEMBAY is not set
# CONFIG_ARCH_LG1K is not set
@@ -220,6 +222,7 @@ CONFIG_ARCH_MEMORY_PROBE=y
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
# CONFIG_ARCH_S32 is not set
@@ -242,13 +245,15 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
-CONFIG_ARM64_SME=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -396,7 +401,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -431,6 +436,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -576,6 +582,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -584,6 +591,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -605,6 +613,7 @@ CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
# CONFIG_CAN_MSCAN is not set
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -647,6 +656,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_DEBUG=y
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -778,7 +788,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -802,18 +812,16 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-CONFIG_CPU_IBPB_ENTRY=y
-CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_CPU_IDLE_GOV_HALTPOLL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE_GOV_TEO is not set
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
-CONFIG_CPU_UNRET_ENTRY=y
# CONFIG_CRAMFS is not set
# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
@@ -843,6 +851,7 @@ CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -898,7 +907,7 @@ CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
CONFIG_CRYPTO_DEV_VMX=y
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -917,6 +926,7 @@ CONFIG_CRYPTO_FIPS=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -941,6 +951,8 @@ CONFIG_CRYPTO_OFB=y
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -997,6 +1009,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1099,8 +1112,6 @@ CONFIG_DEFAULT_NET_SCH="fq_codel"
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFAULT_SFQ is not set
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_DAX_HMEM=m
CONFIG_DEV_DAX_KMEM=m
@@ -1117,8 +1128,8 @@ CONFIG_DEVTMPFS=y
CONFIG_DIMLIB=y
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
CONFIG_DMA_API_DEBUG_SG=y
CONFIG_DMA_API_DEBUG=y
@@ -1173,6 +1184,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1233,12 +1245,14 @@ CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1297,6 +1311,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SIMPLEDRM is not set
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1470,6 +1485,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
CONFIG_EPIC100=m
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1719,7 +1735,6 @@ CONFIG_GLOB=y
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -1891,6 +1906,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -1925,6 +1941,7 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
CONFIG_HMM_MIRROR=y
# CONFIG_HNS3 is not set
+# CONFIG_HNS3_PMU is not set
# CONFIG_HOLTEK_FF is not set
CONFIG_HOTPLUG_CPU=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
@@ -1940,6 +1957,7 @@ CONFIG_HOTPLUG_PCI=y
# CONFIG_HP206C is not set
# CONFIG_HPFS_FS is not set
# CONFIG_HP_ILO is not set
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2018,12 +2036,12 @@ CONFIG_I2C_COMPAT=y
CONFIG_I2C_DESIGNWARE_PLATFORM=m
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_GPIO_FAULT_INJECTOR=y
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2117,6 +2135,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
# CONFIG_IIO is not set
# CONFIG_IIO_MUX is not set
@@ -2183,6 +2202,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
@@ -2268,6 +2288,7 @@ CONFIG_INPUT_YEALINK=m
# CONFIG_INT3406_THERMAL is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2276,7 +2297,6 @@ CONFIG_INTEGRITY=y
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_INTEL_IDXD_COMPAT is not set
CONFIG_INTEL_IDXD=m
-# CONFIG_INTEL_IFS is not set
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -2630,7 +2650,7 @@ CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
CONFIG_KPROBES_ON_FTRACE=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2644,6 +2664,8 @@ CONFIG_KVM_BOOK3S_64_HV=m
CONFIG_KVM_BOOK3S_64=m
# CONFIG_KVM_BOOK3S_64_PR is not set
# CONFIG_KVM_BOOK3S_HV_EXIT_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM_BOOK3S_PR_POSSIBLE=y
CONFIG_KVM_GUEST=y
# CONFIG_KVM_XEN is not set
@@ -2764,6 +2786,7 @@ CONFIG_LLC=m
# CONFIG_LMK04832 is not set
# CONFIG_LMP91000 is not set
CONFIG_LOAD_PPC_KEYS=y
+CONFIG_LOAD_UEFI_KEYS=y
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_LOCKDEP_BITS=16
@@ -2870,7 +2893,7 @@ CONFIG_MARVELL_PHY=m
# CONFIG_MAX5821 is not set
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
@@ -2978,7 +3001,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3599,6 +3622,7 @@ CONFIG_NET_VENDOR_SOLARFLARE=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3639,6 +3663,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3730,6 +3755,7 @@ CONFIG_N_HDLC=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3818,6 +3844,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -3826,6 +3853,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4080,6 +4108,7 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4090,6 +4119,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
CONFIG_POWER9_CPU=y
# CONFIG_POWERCAP is not set
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_CPUIDLE=y
CONFIG_POWERNV_OP_PANEL=m
@@ -4197,6 +4227,8 @@ CONFIG_PROVE_NVDIMM_LOCKING=y
CONFIG_PSAMPLE=m
CONFIG_PSERIES_CPUIDLE=y
CONFIG_PSERIES_ENERGY=m
+CONFIG_PSERIES_PLPKS=y
+CONFIG_PSERIES_WDT=y
CONFIG_PSI_DEFAULT_DISABLED=y
CONFIG_PSI=y
# CONFIG_PSTORE_842_COMPRESS is not set
@@ -4225,6 +4257,7 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_MMIO is not set
# CONFIG_PVPANIC_PCI is not set
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4247,6 +4280,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
# CONFIG_QCOM_GPI_DMA is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LMH is not set
@@ -4330,6 +4364,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4405,16 +4440,14 @@ CONFIG_RENESAS_PHY=m
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
-CONFIG_RETHUNK=y
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
# CONFIG_RFKILL_GPIO is not set
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4517,6 +4550,7 @@ CONFIG_RTC_DRV_MAX6900=m
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
CONFIG_RTC_DRV_OPAL=y
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
@@ -4591,6 +4625,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
# CONFIG_S390_MODULES_SANITY_TEST is not set
@@ -4727,12 +4762,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
CONFIG_SDIO_UART=m
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -4872,6 +4908,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_LT7182S is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -4992,7 +5029,6 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5028,7 +5064,6 @@ CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_LANTIQ is not set
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_SERIAL_OF_PLATFORM=m
# CONFIG_SERIAL_RP2 is not set
@@ -5070,6 +5105,7 @@ CONFIG_SFC_SRIOV=y
CONFIG_SGETMASK_SYSCALL=y
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5139,6 +5175,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5300,6 +5338,7 @@ CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
# CONFIG_SND_SOC_AMD_RENOIR is not set
# CONFIG_SND_SOC_AMD_RENOIR_MACH is not set
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
# CONFIG_SND_SOC_AMD_RV_RT5682_MACH is not set
# CONFIG_SND_SOC_AMD_VANGOGH_MACH is not set
# CONFIG_SND_SOC_AMD_YC_MACH is not set
@@ -5375,6 +5414,18 @@ CONFIG_SND_SOC_CX2072X=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_INTEL_AVS is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
# CONFIG_SND_SOC_INTEL_BROADWELL_MACH is not set
@@ -5541,6 +5592,7 @@ CONFIG_SND_SOC_SOF_HDA_PROBES=m
# CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL is not set
# CONFIG_SND_SOC_SOF_JASPERLAKE is not set
# CONFIG_SND_SOC_SOF_MERRIFIELD is not set
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
# CONFIG_SND_SOC_SOF_TIGERLAKE is not set
@@ -5563,6 +5615,7 @@ CONFIG_SND_SOC_SOF_TOPLEVEL=y
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5642,6 +5695,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5715,7 +5769,6 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
-CONFIG_SPECULATION_MITIGATIONS=y
# CONFIG_SPI_ALTERA_CORE is not set
# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_AMD=y
@@ -5726,7 +5779,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5735,6 +5787,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -5824,7 +5877,7 @@ CONFIG_SYNTH_EVENT_GEN_TEST=m
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYSTEM76_ACPI is not set
CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE=y
@@ -5860,7 +5913,9 @@ CONFIG_TCG_IBMVTPM=y
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
CONFIG_TCG_TIS_I2C_NUVOTON=y
-# CONFIG_TCG_TIS_SPI is not set
+CONFIG_TCG_TIS_I2C=y
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -5895,6 +5950,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
@@ -5903,6 +5959,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
CONFIG_TEST_FPU=m
@@ -5929,7 +5986,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
CONFIG_TEST_STRING_HELPERS=m
@@ -6092,6 +6149,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6114,6 +6172,8 @@ CONFIG_TUN=m
CONFIG_TUN_VNET_CROSS_LE=y
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6140,6 +6200,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
# CONFIG_UDBG_RTAS_CONSOLE is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
@@ -6326,6 +6387,7 @@ CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
CONFIG_USB_OHCI_HCD_PPC_OF=y
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6463,6 +6525,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6471,6 +6534,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_IOMMU_TYPE1=m
@@ -6493,6 +6557,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6537,6 +6602,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -6739,7 +6805,6 @@ CONFIG_WWAN=y
# CONFIG_X25 is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_X86_IOPL_IOPERM=y
-# CONFIG_X86_KERNEL_IBT is not set
CONFIG_X86_PMEM_LEGACY_DEVICE=y
CONFIG_X86_PMEM_LEGACY=m
CONFIG_X86_SGX_KVM=y
@@ -6845,8 +6910,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-ppc64le-fedora.config b/SOURCES/kernel-ppc64le-fedora.config
index 256a669..3a0d13f 100644
--- a/SOURCES/kernel-ppc64le-fedora.config
+++ b/SOURCES/kernel-ppc64le-fedora.config
@@ -71,6 +71,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -229,9 +230,8 @@ CONFIG_AMD_PMC=m
CONFIG_AMT=m
CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
-CONFIG_ANDROID_BINDER_IPC=y
-# CONFIG_ANDROID is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -277,8 +277,9 @@ CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -495,7 +496,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -533,6 +534,7 @@ CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -696,6 +698,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -704,6 +707,7 @@ CONFIG_CAN_CTUCANFD_PLATFORM=m
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -725,6 +729,7 @@ CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
# CONFIG_CAN_MSCAN is not set
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -777,6 +782,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -919,7 +925,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -950,6 +956,7 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -978,6 +985,7 @@ CONFIG_CROS_EC_RPMSG=m
CONFIG_CROS_EC_SENSORHUB=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -988,6 +996,7 @@ CONFIG_CRYPTO_AEGIS128=m
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=y
CONFIG_CRYPTO_BLAKE2S=m
@@ -1043,7 +1052,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
CONFIG_CRYPTO_DEV_VMX=y
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1061,6 +1070,7 @@ CONFIG_CRYPTO_FIPS=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1141,6 +1151,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1233,8 +1244,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DETECT_HUNG_TASK is not set
CONFIG_DEV_APPLETALK=m
CONFIG_DEV_DAX_HMEM=m
@@ -1252,8 +1261,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
# CONFIG_DMA_API_DEBUG is not set
@@ -1369,11 +1378,13 @@ CONFIG_DRM_I2C_CH7006=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
# CONFIG_DRM_I2C_NXP_TDA998X is not set
CONFIG_DRM_I2C_SIL164=m
+# CONFIG_DRM_IMX_LCDIF is not set
CONFIG_DRM_ITE_IT6505=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1395,6 +1406,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_EDP is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1479,6 +1491,7 @@ CONFIG_DRM_SSD130X_I2C=m
CONFIG_DRM_SSD130X=m
CONFIG_DRM_SSD130X_SPI=m
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -1806,10 +1819,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -1934,7 +1949,6 @@ CONFIG_GPIO_AGGREGATOR=m
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2116,6 +2130,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2238,13 +2253,13 @@ CONFIG_I2C_DESIGNWARE_PCI=m
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2342,11 +2357,13 @@ CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
# CONFIG_IIO_SSP_SENSORHUB is not set
@@ -2419,6 +2436,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
@@ -2448,8 +2466,8 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -2538,6 +2556,7 @@ CONFIG_INTEL_SOC_PMIC_CHTDC_TI=y
CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_INV_ICM42600_I2C=m
@@ -2906,7 +2925,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
# CONFIG_KS8842 is not set
@@ -2923,6 +2942,8 @@ CONFIG_KVM_BOOK3S_64_HV=m
CONFIG_KVM_BOOK3S_64=m
CONFIG_KVM_BOOK3S_64_PR=m
# CONFIG_KVM_BOOK3S_HV_EXIT_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM_GUEST=y
CONFIG_KVM_XEN=y
CONFIG_KVM_XICS=y
@@ -3145,6 +3166,7 @@ CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3290,7 +3312,7 @@ CONFIG_MFD_CORE=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
@@ -3744,6 +3766,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -3765,6 +3788,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4011,6 +4035,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
CONFIG_NET_VENDOR_WIZNET=y
CONFIG_NET_VENDOR_XILINX=y
CONFIG_NET_VENDOR_XIRCOM=y
@@ -4083,6 +4108,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4172,6 +4198,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4257,6 +4284,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -4265,6 +4293,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4553,6 +4582,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4562,6 +4592,7 @@ CONFIG_POSIX_MQUEUE=y
CONFIG_POWER8_CPU=y
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_CPUIDLE=y
# CONFIG_POWERNV_OP_PANEL is not set
@@ -4649,7 +4680,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -4671,6 +4702,8 @@ CONFIG_PROVE_NVDIMM_LOCKING=y
CONFIG_PSAMPLE=m
CONFIG_PSERIES_CPUIDLE=y
CONFIG_PSERIES_ENERGY=m
+CONFIG_PSERIES_PLPKS=y
+CONFIG_PSERIES_WDT=m
# CONFIG_PSI_DEFAULT_DISABLED is not set
CONFIG_PSI=y
# CONFIG_PSTORE_842_COMPRESS_DEFAULT is not set
@@ -4703,10 +4736,12 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
# CONFIG_PWM_FSL_FTM is not set
CONFIG_PWM_HIBVT=m
+CONFIG_PWM_OMAP_DMTIMER=m
# CONFIG_PWM_PCA9685 is not set
# CONFIG_PWM_XILINX is not set
CONFIG_PWM=y
@@ -4804,6 +4839,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_REF_SCALE_TEST is not set
# CONFIG_RCU_SCALE_TEST is not set
@@ -4914,14 +4950,13 @@ CONFIG_REMOTEPROC=y
# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -5040,6 +5075,7 @@ CONFIG_RTC_DRV_MAX6916=m
CONFIG_RTC_DRV_MAX77686=m
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_OPAL=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
@@ -5121,6 +5157,7 @@ CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -5423,6 +5460,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -5543,7 +5581,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
@@ -5617,6 +5654,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5698,6 +5736,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5923,6 +5963,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_ICS43432 is not set
# CONFIG_SND_SOC_IMG is not set
@@ -6126,6 +6167,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -6205,6 +6247,7 @@ CONFIG_SND_SOC_WM8940=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -6290,7 +6333,6 @@ CONFIG_SPI_AX88796C=m
# CONFIG_SPI_CADENCE_XSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
@@ -6300,6 +6342,7 @@ CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6389,8 +6432,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -6453,6 +6498,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -6499,6 +6545,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6525,7 +6572,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6694,6 +6741,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6721,6 +6769,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -6753,6 +6803,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
# CONFIG_UDBG_RTAS_CONSOLE is not set
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
@@ -6787,6 +6838,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -6984,6 +7036,7 @@ CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
CONFIG_USB_OHCI_HCD_PPC_OF=y
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_OTG is not set
@@ -7133,6 +7186,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -7165,6 +7219,7 @@ CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_ADP1653=m
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_AK7375=m
+CONFIG_VIDEO_AR0521=m
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -7300,6 +7355,7 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
# CONFIG_VIDEO_TEGRA_TPG is not set
CONFIG_VIDEO_TM6000_ALSA=m
@@ -7484,6 +7540,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -7581,8 +7638,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-ppc64le-rhel.config b/SOURCES/kernel-ppc64le-rhel.config
index a3ac966..cca4518 100644
--- a/SOURCES/kernel-ppc64le-rhel.config
+++ b/SOURCES/kernel-ppc64le-rhel.config
@@ -12,11 +12,11 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_TUNE_TWISTER is not set
CONFIG_842_DECOMPRESS=y
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
CONFIG_ACCESSIBILITY=y
# CONFIG_ACORN_PARTITION is not set
CONFIG_ACPI_AC=y
-CONFIG_ACPI_AGDI=y
# CONFIG_ACPI_ALS is not set
CONFIG_ACPI_APEI_EINJ=m
# CONFIG_ACPI_APEI_ERST_DEBUG is not set
@@ -53,6 +53,7 @@ CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -197,7 +198,7 @@ CONFIG_AMD_PMC=m
# CONFIG_AMDTEE is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -213,6 +214,7 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BITMAIN is not set
# CONFIG_ARCH_KEEMBAY is not set
# CONFIG_ARCH_LG1K is not set
@@ -220,6 +222,7 @@ CONFIG_ARCH_MEMORY_PROBE=y
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
# CONFIG_ARCH_S32 is not set
@@ -242,13 +245,15 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
-CONFIG_ARM64_SME=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -396,7 +401,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -431,6 +436,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -576,6 +582,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -584,6 +591,7 @@ CONFIG_CAN_CALC_BITTIMING=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -605,6 +613,7 @@ CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
# CONFIG_CAN_MSCAN is not set
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -647,6 +656,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -778,7 +788,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -802,18 +812,16 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-CONFIG_CPU_IBPB_ENTRY=y
-CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_CPU_IDLE_GOV_HALTPOLL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE_GOV_TEO is not set
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
# CONFIG_CPUMASK_OFFSTACK is not set
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
-CONFIG_CPU_UNRET_ENTRY=y
# CONFIG_CRAMFS is not set
# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
@@ -843,6 +851,7 @@ CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -898,7 +907,7 @@ CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
CONFIG_CRYPTO_DEV_VMX=y
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -917,6 +926,7 @@ CONFIG_CRYPTO_FIPS=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -941,6 +951,8 @@ CONFIG_CRYPTO_OFB=y
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -997,6 +1009,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1091,8 +1104,6 @@ CONFIG_DEFAULT_NET_SCH="fq_codel"
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFAULT_SFQ is not set
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_DAX_HMEM=m
CONFIG_DEV_DAX_KMEM=m
@@ -1109,8 +1120,8 @@ CONFIG_DEVTMPFS=y
CONFIG_DIMLIB=y
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_DMA_API_DEBUG_SG is not set
@@ -1165,6 +1176,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1225,12 +1237,14 @@ CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1289,6 +1303,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SIMPLEDRM is not set
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1462,6 +1477,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
CONFIG_EPIC100=m
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1703,7 +1719,6 @@ CONFIG_GLOB=y
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -1875,6 +1890,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -1909,6 +1925,7 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
CONFIG_HMM_MIRROR=y
# CONFIG_HNS3 is not set
+# CONFIG_HNS3_PMU is not set
# CONFIG_HOLTEK_FF is not set
CONFIG_HOTPLUG_CPU=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
@@ -1924,6 +1941,7 @@ CONFIG_HOTPLUG_PCI=y
# CONFIG_HP206C is not set
# CONFIG_HPFS_FS is not set
# CONFIG_HP_ILO is not set
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2002,12 +2020,12 @@ CONFIG_I2C_COMPAT=y
CONFIG_I2C_DESIGNWARE_PLATFORM=m
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2101,6 +2119,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
# CONFIG_IIO is not set
# CONFIG_IIO_MUX is not set
@@ -2167,6 +2186,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
@@ -2252,6 +2272,7 @@ CONFIG_INPUT_YEALINK=m
# CONFIG_INT3406_THERMAL is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2260,7 +2281,6 @@ CONFIG_INTEGRITY=y
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_INTEL_IDXD_COMPAT is not set
CONFIG_INTEL_IDXD=m
-# CONFIG_INTEL_IFS is not set
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -2610,7 +2630,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
CONFIG_KPROBES_ON_FTRACE=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2624,6 +2644,8 @@ CONFIG_KVM_BOOK3S_64_HV=m
CONFIG_KVM_BOOK3S_64=m
# CONFIG_KVM_BOOK3S_64_PR is not set
# CONFIG_KVM_BOOK3S_HV_EXIT_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM_BOOK3S_PR_POSSIBLE=y
CONFIG_KVM_GUEST=y
# CONFIG_KVM_XEN is not set
@@ -2744,6 +2766,7 @@ CONFIG_LLC=m
# CONFIG_LMK04832 is not set
# CONFIG_LMP91000 is not set
CONFIG_LOAD_PPC_KEYS=y
+CONFIG_LOAD_UEFI_KEYS=y
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_LOCKDEP_BITS=16
@@ -2850,7 +2873,7 @@ CONFIG_MARVELL_PHY=m
# CONFIG_MAX5821 is not set
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
@@ -2958,7 +2981,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3579,6 +3602,7 @@ CONFIG_NET_VENDOR_SOLARFLARE=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3619,6 +3643,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3710,6 +3735,7 @@ CONFIG_N_HDLC=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3798,6 +3824,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -3806,6 +3833,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4059,6 +4087,7 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_STD_PARTITION=""
# CONFIG_PM_TEST_SUSPEND is not set
# CONFIG_PM_TRACE_RTC is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4069,6 +4098,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
CONFIG_POWER9_CPU=y
# CONFIG_POWERCAP is not set
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_CPUIDLE=y
CONFIG_POWERNV_OP_PANEL=m
@@ -4176,6 +4206,8 @@ CONFIG_PROVE_NVDIMM_LOCKING=y
CONFIG_PSAMPLE=m
CONFIG_PSERIES_CPUIDLE=y
CONFIG_PSERIES_ENERGY=m
+CONFIG_PSERIES_PLPKS=y
+CONFIG_PSERIES_WDT=y
CONFIG_PSI_DEFAULT_DISABLED=y
CONFIG_PSI=y
# CONFIG_PSTORE_842_COMPRESS is not set
@@ -4204,6 +4236,7 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_MMIO is not set
# CONFIG_PVPANIC_PCI is not set
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4226,6 +4259,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
# CONFIG_QCOM_GPI_DMA is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LMH is not set
@@ -4309,6 +4343,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4384,16 +4419,14 @@ CONFIG_RENESAS_PHY=m
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
-CONFIG_RETHUNK=y
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
# CONFIG_RFKILL_GPIO is not set
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4496,6 +4529,7 @@ CONFIG_RTC_DRV_MAX6900=m
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
CONFIG_RTC_DRV_OPAL=y
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
@@ -4570,6 +4604,7 @@ CONFIG_RTW89_8852AE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
# CONFIG_S390_MODULES_SANITY_TEST is not set
@@ -4706,12 +4741,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
CONFIG_SDIO_UART=m
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -4851,6 +4887,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_LT7182S is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -4971,7 +5008,6 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5007,7 +5043,6 @@ CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_LANTIQ is not set
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_SERIAL_OF_PLATFORM=m
# CONFIG_SERIAL_RP2 is not set
@@ -5049,6 +5084,7 @@ CONFIG_SFC_SRIOV=y
CONFIG_SGETMASK_SYSCALL=y
CONFIG_SGI_PARTITION=y
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5118,6 +5154,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5278,6 +5316,7 @@ CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
# CONFIG_SND_SOC_AMD_RENOIR is not set
# CONFIG_SND_SOC_AMD_RENOIR_MACH is not set
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
# CONFIG_SND_SOC_AMD_RV_RT5682_MACH is not set
# CONFIG_SND_SOC_AMD_VANGOGH_MACH is not set
# CONFIG_SND_SOC_AMD_YC_MACH is not set
@@ -5353,6 +5392,18 @@ CONFIG_SND_SOC_CX2072X=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_INTEL_AVS is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
# CONFIG_SND_SOC_INTEL_BROADWELL_MACH is not set
@@ -5518,6 +5569,7 @@ CONFIG_SND_SOC_SOF_ACPI=m
# CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL is not set
# CONFIG_SND_SOC_SOF_JASPERLAKE is not set
# CONFIG_SND_SOC_SOF_MERRIFIELD is not set
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
# CONFIG_SND_SOC_SOF_TIGERLAKE is not set
@@ -5540,6 +5592,7 @@ CONFIG_SND_SOC_SOF_TOPLEVEL=y
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5619,6 +5672,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5692,7 +5746,6 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
-CONFIG_SPECULATION_MITIGATIONS=y
# CONFIG_SPI_ALTERA_CORE is not set
# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_AMD=y
@@ -5703,7 +5756,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5712,6 +5764,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -5801,7 +5854,7 @@ CONFIG_SYN_COOKIES=y
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYSTEM76_ACPI is not set
CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE=y
@@ -5837,7 +5890,9 @@ CONFIG_TCG_IBMVTPM=y
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
CONFIG_TCG_TIS_I2C_NUVOTON=y
-# CONFIG_TCG_TIS_SPI is not set
+CONFIG_TCG_TIS_I2C=y
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -5872,6 +5927,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
@@ -5880,6 +5936,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -5906,7 +5963,7 @@ CONFIG_TEST_LIVEPATCH=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6069,6 +6126,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6091,6 +6149,8 @@ CONFIG_TUN=m
CONFIG_TUN_VNET_CROSS_LE=y
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6117,6 +6177,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
# CONFIG_UDBG_RTAS_CONSOLE is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
@@ -6303,6 +6364,7 @@ CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
CONFIG_USB_OHCI_HCD_PPC_OF=y
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6440,6 +6502,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6448,6 +6511,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_IOMMU_TYPE1=m
@@ -6470,6 +6534,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6514,6 +6579,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -6716,7 +6782,6 @@ CONFIG_WWAN=y
# CONFIG_X25 is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_X86_IOPL_IOPERM=y
-# CONFIG_X86_KERNEL_IBT is not set
CONFIG_X86_PMEM_LEGACY_DEVICE=y
CONFIG_X86_PMEM_LEGACY=m
CONFIG_X86_SGX_KVM=y
@@ -6822,8 +6887,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-s390x-debug-fedora.config b/SOURCES/kernel-s390x-debug-fedora.config
index 9317949..c5b609e 100644
--- a/SOURCES/kernel-s390x-debug-fedora.config
+++ b/SOURCES/kernel-s390x-debug-fedora.config
@@ -72,6 +72,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -229,9 +230,8 @@ CONFIG_AMD_PMC=m
CONFIG_AMT=m
CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
-CONFIG_ANDROID_BINDER_IPC=y
-# CONFIG_ANDROID is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
# CONFIG_APDS9802ALS is not set
@@ -282,8 +282,9 @@ CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
CONFIG_ARM_PTDUMP_DEBUGFS=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -500,7 +501,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -538,6 +539,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -700,6 +702,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -708,6 +711,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -728,6 +732,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -783,6 +788,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -926,7 +932,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -957,6 +963,7 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_IDLE is not set
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -985,6 +992,7 @@ CONFIG_CROS_EC_RPMSG=m
CONFIG_CROS_EC_SENSORHUB=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -996,6 +1004,7 @@ CONFIG_CRYPTO_AES_S390=m
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=y
CONFIG_CRYPTO_BLAKE2S=m
@@ -1046,7 +1055,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
# CONFIG_CRYPTO_DEV_SP_CCP is not set
CONFIG_CRYPTO_DEV_VIRTIO=m
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1065,6 +1074,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_S390=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1147,6 +1157,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1251,8 +1262,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_APPLETALK=m
CONFIG_DEV_DAX_HMEM=m
@@ -1268,8 +1277,8 @@ CONFIG_DIAG288_WATCHDOG=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
CONFIG_DMA_API_DEBUG_SG=y
@@ -1386,11 +1395,13 @@ CONFIG_DRM_HYPERV=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
# CONFIG_DRM_I2C_NXP_TDA998X is not set
# CONFIG_DRM_I2C_SIL164 is not set
+# CONFIG_DRM_IMX_LCDIF is not set
CONFIG_DRM_ITE_IT6505=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1412,6 +1423,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_EDP is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1496,6 +1508,7 @@ CONFIG_DRM_SSD130X_I2C=m
CONFIG_DRM_SSD130X=m
CONFIG_DRM_SSD130X_SPI=m
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -1829,10 +1842,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -1947,7 +1962,6 @@ CONFIG_GPIO_AGGREGATOR=m
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2128,6 +2142,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2239,13 +2254,13 @@ CONFIG_I2C_CP2615=m
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
# CONFIG_I2C_GPIO is not set
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2338,11 +2353,13 @@ CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
# CONFIG_IIO is not set
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
# CONFIG_IIO_SSP_SENSORHUB is not set
@@ -2414,6 +2431,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
# CONFIG_INFINIBAND_CXGB4 is not set
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
@@ -2443,8 +2461,8 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -2533,6 +2551,7 @@ CONFIG_INTEL_SOC_PMIC_CHTDC_TI=y
CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_INV_ICM42600_I2C=m
@@ -2903,7 +2922,7 @@ CONFIG_KGDB=y
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
# CONFIG_KS8842 is not set
@@ -3138,7 +3157,7 @@ CONFIG_MAGIC_SYSRQ=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
# CONFIG_MARCH_Z10 is not set
-# CONFIG_MARCH_Z13 is not set
+CONFIG_MARCH_Z13=y
# CONFIG_MARCH_Z14 is not set
# CONFIG_MARCH_Z15 is not set
# CONFIG_MARCH_Z16 is not set
@@ -3146,7 +3165,7 @@ CONFIG_MANTIS_CORE=m
# CONFIG_MARCH_Z900 is not set
# CONFIG_MARCH_Z9_109 is not set
# CONFIG_MARCH_Z990 is not set
-CONFIG_MARCH_ZEC12=y
+# CONFIG_MARCH_ZEC12 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3294,7 +3313,7 @@ CONFIG_MFD_CORE=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
@@ -3745,6 +3764,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -3766,6 +3786,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4012,6 +4033,7 @@ CONFIG_NET_VENDOR_PENSANDO=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
# CONFIG_NET_VENDOR_VIA is not set
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4084,6 +4106,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4173,6 +4196,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4257,6 +4281,7 @@ CONFIG_NUMA_EMU=y
CONFIG_NUMA=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -4265,6 +4290,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4551,6 +4577,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4560,6 +4587,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
# CONFIG_POWER_RESET is not set
@@ -4607,7 +4635,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -4659,11 +4687,13 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
# CONFIG_PWM_FSL_FTM is not set
CONFIG_PWM_HIBVT=m
# CONFIG_PWM is not set
+CONFIG_PWM_OMAP_DMTIMER=m
# CONFIG_PWM_PCA9685 is not set
# CONFIG_PWM_XILINX is not set
CONFIG_PWRSEQ_EMMC=m
@@ -4766,6 +4796,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
# CONFIG_RCU_SCALE_TEST is not set
@@ -4877,14 +4908,13 @@ CONFIG_REMOTEPROC=y
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
# CONFIG_RFKILL is not set
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -5000,6 +5030,7 @@ CONFIG_RTC_DRV_MAX6916=m
CONFIG_RTC_DRV_MAX77686=m
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF85063=m
@@ -5080,6 +5111,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
CONFIG_S390_AP_IOMMU=y
@@ -5395,6 +5427,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -5515,7 +5548,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
@@ -5586,6 +5618,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
# CONFIG_SGI_PARTITION is not set
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5670,6 +5703,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5896,6 +5931,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_ICS43432 is not set
# CONFIG_SND_SOC_IMG is not set
@@ -6100,6 +6136,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -6179,6 +6216,7 @@ CONFIG_SND_SOC_WM8940=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -6261,7 +6299,6 @@ CONFIG_SPI_AX88796C=m
# CONFIG_SPI_CADENCE_XSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
@@ -6271,6 +6308,7 @@ CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6359,8 +6397,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -6422,6 +6462,7 @@ CONFIG_TCG_NSC=m
# CONFIG_TCG_TIS_I2C_ATMEL is not set
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
+CONFIG_TCG_TIS_I2C=m
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -6468,6 +6509,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6494,7 +6536,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6669,6 +6711,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6706,6 +6749,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -6738,6 +6783,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -6771,6 +6817,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -6964,6 +7011,7 @@ CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_OTG is not set
@@ -7113,6 +7161,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -7131,6 +7180,7 @@ CONFIG_VFIO=m
CONFIG_VFIO_MDEV=m
# CONFIG_VFIO_NOIOMMU is not set
CONFIG_VFIO_PCI=m
+CONFIG_VFIO_PCI_ZDEV_KVM=y
CONFIG_VGA_ARB_MAX_GPUS=16
CONFIG_VGA_ARB=y
CONFIG_VGA_CONSOLE=y
@@ -7147,6 +7197,7 @@ CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_ADP1653=m
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_AK7375=m
+CONFIG_VIDEO_AR0521=m
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -7282,6 +7333,7 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
# CONFIG_VIDEO_TEGRA_TPG is not set
CONFIG_VIDEO_TM6000_ALSA=m
@@ -7467,6 +7519,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -7563,8 +7616,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-s390x-debug-rhel.config b/SOURCES/kernel-s390x-debug-rhel.config
index fb98787..29fd22f 100644
--- a/SOURCES/kernel-s390x-debug-rhel.config
+++ b/SOURCES/kernel-s390x-debug-rhel.config
@@ -11,11 +11,11 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_ACORN_PARTITION is not set
CONFIG_ACPI_AC=y
-CONFIG_ACPI_AGDI=y
# CONFIG_ACPI_ALS is not set
CONFIG_ACPI_APEI_EINJ=m
CONFIG_ACPI_APEI_ERST_DEBUG=m
@@ -52,6 +52,7 @@ CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -194,7 +195,7 @@ CONFIG_AMD_PMC=m
# CONFIG_AMDTEE is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
# CONFIG_APDS9802ALS is not set
@@ -214,12 +215,14 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BITMAIN is not set
# CONFIG_ARCH_KEEMBAY is not set
# CONFIG_ARCH_LG1K is not set
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
# CONFIG_ARCH_S32 is not set
@@ -242,13 +245,15 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
-CONFIG_ARM64_SME=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -396,7 +401,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -431,6 +436,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -575,6 +581,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -583,6 +590,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -603,6 +611,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -648,6 +657,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_DEBUG=y
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -779,7 +789,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -802,17 +812,15 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-CONFIG_CPU_IBPB_ENTRY=y
-CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_CPU_IDLE_GOV_HALTPOLL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE_GOV_TEO is not set
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
-CONFIG_CPU_UNRET_ENTRY=y
# CONFIG_CRAMFS is not set
# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
@@ -843,6 +851,7 @@ CONFIG_CRYPTO_AES_S390=m
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -895,7 +904,7 @@ CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -915,6 +924,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_S390=m
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -939,6 +949,8 @@ CONFIG_CRYPTO_PAES_S390=m
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -998,6 +1010,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1105,8 +1118,6 @@ CONFIG_DEFAULT_NET_SCH="fq_codel"
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFAULT_SFQ is not set
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_DAX_HMEM=m
CONFIG_DEV_DAX_KMEM=m
@@ -1123,8 +1134,8 @@ CONFIG_DIAG288_WATCHDOG=m
CONFIG_DIMLIB=y
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
CONFIG_DMA_API_DEBUG_SG=y
CONFIG_DMA_API_DEBUG=y
@@ -1179,6 +1190,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1239,12 +1251,14 @@ CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1303,6 +1317,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SIMPLEDRM is not set
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1475,6 +1490,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
CONFIG_EPIC100=m
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1720,7 +1736,6 @@ CONFIG_GLOB=y
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -1892,6 +1907,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -1925,6 +1941,7 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
CONFIG_HMC_DRV=m
# CONFIG_HNS3 is not set
+# CONFIG_HNS3_PMU is not set
# CONFIG_HOLTEK_FF is not set
CONFIG_HOTPLUG_CPU=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
@@ -1938,6 +1955,7 @@ CONFIG_HOTPLUG_PCI=y
# CONFIG_HP206C is not set
# CONFIG_HPFS_FS is not set
# CONFIG_HP_ILO is not set
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2009,12 +2027,12 @@ CONFIG_I2C_ALGOBIT=m
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_GPIO_FAULT_INJECTOR=y
# CONFIG_I2C_GPIO is not set
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2103,6 +2121,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
# CONFIG_IIO is not set
# CONFIG_IIO_MUX is not set
@@ -2168,6 +2187,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
@@ -2253,6 +2273,7 @@ CONFIG_INPUT_YEALINK=m
# CONFIG_INT3406_THERMAL is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2261,7 +2282,6 @@ CONFIG_INTEGRITY=y
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_INTEL_IDXD_COMPAT is not set
CONFIG_INTEL_IDXD=m
-# CONFIG_INTEL_IFS is not set
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -2614,7 +2634,7 @@ CONFIG_KGDB=y
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2624,6 +2644,8 @@ CONFIG_KUNIT_EXAMPLE_TEST=m
CONFIG_KUNIT=m
CONFIG_KUNIT_TEST=m
CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM=m
# CONFIG_KVM_S390_UCONTROL is not set
# CONFIG_KVM_XEN is not set
@@ -2743,6 +2765,7 @@ CONFIG_LLC=m
# CONFIG_LMK04832 is not set
# CONFIG_LMP91000 is not set
CONFIG_LOAD_IPL_KEYS=y
+CONFIG_LOAD_UEFI_KEYS=y
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_LOCKDEP_BITS=16
@@ -2857,7 +2880,7 @@ CONFIG_MARVELL_10G_PHY=m
# CONFIG_MAX5821 is not set
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
CONFIG_MAX_PHYSMEM_BITS=46
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
@@ -2964,7 +2987,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3582,6 +3605,7 @@ CONFIG_NET_VENDOR_SOLARFLARE=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3622,6 +3646,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3713,6 +3738,7 @@ CONFIG_N_GSM=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3801,6 +3827,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -3809,6 +3836,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4062,6 +4090,7 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_STD_PARTITION="/dev/jokes"
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4069,6 +4098,7 @@ CONFIG_PNFS_BLOCK=m
CONFIG_PNFS_FILE_LAYOUT=m
CONFIG_POSIX_MQUEUE=y
# CONFIG_POWERCAP is not set
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_OP_PANEL=m
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -4163,6 +4193,7 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_MMIO is not set
# CONFIG_PVPANIC_PCI is not set
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4185,6 +4216,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
# CONFIG_QCOM_GPI_DMA is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LMH is not set
@@ -4273,6 +4305,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4347,16 +4380,14 @@ CONFIG_RENESAS_PHY=m
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
-CONFIG_RETHUNK=y
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
# CONFIG_RFKILL_GPIO is not set
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4456,6 +4487,7 @@ CONFIG_RTC_DRV_MAX6900=m
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
@@ -4529,6 +4561,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S390_AP_IOMMU=y
CONFIG_S390_CCW_IOMMU=y
@@ -4711,12 +4744,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
# CONFIG_SDIO_UART is not set
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -4856,6 +4890,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_LT7182S is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -4976,7 +5011,6 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5011,7 +5045,6 @@ CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_LANTIQ is not set
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_SERIAL_RP2 is not set
# CONFIG_SERIAL_SC16IS7XX is not set
@@ -5044,6 +5077,7 @@ CONFIG_SFC_MCDI_LOGGING=y
CONFIG_SGETMASK_SYSCALL=y
# CONFIG_SGI_PARTITION is not set
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5116,6 +5150,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5277,6 +5313,7 @@ CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
# CONFIG_SND_SOC_AMD_RENOIR is not set
# CONFIG_SND_SOC_AMD_RENOIR_MACH is not set
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
# CONFIG_SND_SOC_AMD_RV_RT5682_MACH is not set
# CONFIG_SND_SOC_AMD_VANGOGH_MACH is not set
# CONFIG_SND_SOC_AMD_YC_MACH is not set
@@ -5352,6 +5389,18 @@ CONFIG_SND_SOC_CX2072X=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_INTEL_AVS is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
# CONFIG_SND_SOC_INTEL_BROADWELL_MACH is not set
@@ -5518,6 +5567,7 @@ CONFIG_SND_SOC_SOF_HDA_PROBES=m
# CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL is not set
# CONFIG_SND_SOC_SOF_JASPERLAKE is not set
# CONFIG_SND_SOC_SOF_MERRIFIELD is not set
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
# CONFIG_SND_SOC_SOF_TIGERLAKE is not set
@@ -5540,6 +5590,7 @@ CONFIG_SND_SOC_SOF_TOPLEVEL=y
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5619,6 +5670,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5691,7 +5743,6 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
-CONFIG_SPECULATION_MITIGATIONS=y
# CONFIG_SPI_ALTERA_CORE is not set
# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_AMD=y
@@ -5702,7 +5753,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5711,6 +5761,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -5799,7 +5850,7 @@ CONFIG_SYNTH_EVENT_GEN_TEST=m
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYSTEM76_ACPI is not set
CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE=y
@@ -5833,8 +5884,10 @@ CONFIG_TCG_CRB=y
# CONFIG_TCG_TIS_I2C_ATMEL is not set
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
+CONFIG_TCG_TIS_I2C=m
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
-# CONFIG_TCG_TIS_SPI is not set
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -5869,6 +5922,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
@@ -5877,6 +5931,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
CONFIG_TEST_FPU=m
@@ -5903,7 +5958,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
CONFIG_TEST_STRING_HELPERS=m
@@ -6071,6 +6126,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6103,6 +6159,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6129,6 +6187,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
# CONFIG_UEVENT_HELPER is not set
@@ -6310,6 +6369,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6447,6 +6507,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6455,6 +6516,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_AP=m
@@ -6465,6 +6527,7 @@ CONFIG_VFIO_MDEV=m
# CONFIG_VFIO_NOIOMMU is not set
# CONFIG_VFIO_PCI_IGD is not set
CONFIG_VFIO_PCI=m
+CONFIG_VFIO_PCI_ZDEV_KVM=y
CONFIG_VGA_ARB_MAX_GPUS=64
CONFIG_VGA_ARB=y
CONFIG_VGA_CONSOLE=y
@@ -6479,6 +6542,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6523,6 +6587,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -6726,7 +6791,6 @@ CONFIG_WWAN=y
# CONFIG_X25 is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_X86_IOPL_IOPERM=y
-# CONFIG_X86_KERNEL_IBT is not set
CONFIG_X86_PMEM_LEGACY_DEVICE=y
CONFIG_X86_PMEM_LEGACY=m
CONFIG_X86_SGX_KVM=y
@@ -6833,8 +6897,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-s390x-fedora.config b/SOURCES/kernel-s390x-fedora.config
index 1901b81..3ecbb7a 100644
--- a/SOURCES/kernel-s390x-fedora.config
+++ b/SOURCES/kernel-s390x-fedora.config
@@ -72,6 +72,7 @@ CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TAD=m
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -229,9 +230,8 @@ CONFIG_AMD_PMC=m
CONFIG_AMT=m
CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
-CONFIG_ANDROID_BINDER_IPC=y
-# CONFIG_ANDROID is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
# CONFIG_APDS9802ALS is not set
@@ -281,8 +281,9 @@ CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -499,7 +500,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -537,6 +538,7 @@ CONFIG_BLK_DEV_SR=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -699,6 +701,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -707,6 +710,7 @@ CONFIG_CAN_CTUCANFD_PLATFORM=m
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -727,6 +731,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -782,6 +787,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CGROUP_MISC=y
@@ -925,7 +931,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -956,6 +962,7 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_IDLE is not set
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -984,6 +991,7 @@ CONFIG_CROS_EC_RPMSG=m
CONFIG_CROS_EC_SENSORHUB=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -995,6 +1003,7 @@ CONFIG_CRYPTO_AES_S390=m
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=y
CONFIG_CRYPTO_BLAKE2S=m
@@ -1045,7 +1054,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
# CONFIG_CRYPTO_DEV_SP_CCP is not set
CONFIG_CRYPTO_DEV_VIRTIO=m
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1064,6 +1073,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_S390=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1146,6 +1156,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1243,8 +1254,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DETECT_HUNG_TASK is not set
CONFIG_DEV_APPLETALK=m
CONFIG_DEV_DAX_HMEM=m
@@ -1260,8 +1269,8 @@ CONFIG_DIAG288_WATCHDOG=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
# CONFIG_DMA_API_DEBUG is not set
@@ -1377,11 +1386,13 @@ CONFIG_DRM_HYPERV=m
# CONFIG_DRM_I2C_NXP_TDA9950 is not set
# CONFIG_DRM_I2C_NXP_TDA998X is not set
# CONFIG_DRM_I2C_SIL164 is not set
+# CONFIG_DRM_IMX_LCDIF is not set
CONFIG_DRM_ITE_IT6505=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1403,6 +1414,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_EDP is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1487,6 +1499,7 @@ CONFIG_DRM_SSD130X_I2C=m
CONFIG_DRM_SSD130X=m
CONFIG_DRM_SSD130X_SPI=m
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -1812,10 +1825,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -1930,7 +1945,6 @@ CONFIG_GPIO_AGGREGATOR=m
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_FTGPIO010 is not set
@@ -2111,6 +2125,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2222,13 +2237,13 @@ CONFIG_I2C_CP2615=m
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
# CONFIG_I2C_GPIO is not set
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2321,11 +2336,13 @@ CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
# CONFIG_IIO is not set
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
# CONFIG_IIO_SSP_SENSORHUB is not set
@@ -2397,6 +2414,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
# CONFIG_INFINIBAND_CXGB4 is not set
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
CONFIG_INFINIBAND_IPOIB_DEBUG=y
@@ -2426,8 +2444,8 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -2516,6 +2534,7 @@ CONFIG_INTEL_SOC_PMIC_CHTDC_TI=y
CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set
CONFIG_INTEL_XWAY_PHY=m
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT=y
# CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_INV_ICM42600_I2C=m
@@ -2884,7 +2903,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
# CONFIG_KS8842 is not set
@@ -3119,7 +3138,7 @@ CONFIG_MAGIC_SYSRQ=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
# CONFIG_MARCH_Z10 is not set
-# CONFIG_MARCH_Z13 is not set
+CONFIG_MARCH_Z13=y
# CONFIG_MARCH_Z14 is not set
# CONFIG_MARCH_Z15 is not set
# CONFIG_MARCH_Z16 is not set
@@ -3127,7 +3146,7 @@ CONFIG_MANTIS_CORE=m
# CONFIG_MARCH_Z900 is not set
# CONFIG_MARCH_Z9_109 is not set
# CONFIG_MARCH_Z990 is not set
-CONFIG_MARCH_ZEC12=y
+# CONFIG_MARCH_ZEC12 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3274,7 +3293,7 @@ CONFIG_MFD_CORE=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
@@ -3725,6 +3744,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -3746,6 +3766,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -3992,6 +4013,7 @@ CONFIG_NET_VENDOR_PENSANDO=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
# CONFIG_NET_VENDOR_VIA is not set
+CONFIG_NET_VENDOR_WANGXUN=y
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_NET_VENDOR_XILINX=y
# CONFIG_NET_VENDOR_XIRCOM is not set
@@ -4064,6 +4086,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4153,6 +4176,7 @@ CONFIG_N_HDLC=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4237,6 +4261,7 @@ CONFIG_NUMA_EMU=y
CONFIG_NUMA=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -4245,6 +4270,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4530,6 +4556,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4539,6 +4566,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
# CONFIG_POWER_RESET is not set
@@ -4586,7 +4614,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -4638,11 +4666,13 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
CONFIG_PWM_DWC=m
# CONFIG_PWM_FSL_FTM is not set
CONFIG_PWM_HIBVT=m
# CONFIG_PWM is not set
+CONFIG_PWM_OMAP_DMTIMER=m
# CONFIG_PWM_PCA9685 is not set
# CONFIG_PWM_XILINX is not set
CONFIG_PWRSEQ_EMMC=m
@@ -4745,6 +4775,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_REF_SCALE_TEST is not set
# CONFIG_RCU_SCALE_TEST is not set
@@ -4856,14 +4887,13 @@ CONFIG_REMOTEPROC=y
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
# CONFIG_RFKILL is not set
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4979,6 +5009,7 @@ CONFIG_RTC_DRV_MAX6916=m
CONFIG_RTC_DRV_MAX77686=m
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF85063=m
@@ -5059,6 +5090,7 @@ CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
CONFIG_S390_AP_IOMMU=y
@@ -5374,6 +5406,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -5494,7 +5527,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
@@ -5565,6 +5597,7 @@ CONFIG_SFC_FALCON_MTD=y
CONFIG_SFP=m
# CONFIG_SGI_PARTITION is not set
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5649,6 +5682,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5874,6 +5909,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_ICS43432 is not set
# CONFIG_SND_SOC_IMG is not set
@@ -6077,6 +6113,7 @@ CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -6156,6 +6193,7 @@ CONFIG_SND_SOC_WM8940=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -6238,7 +6276,6 @@ CONFIG_SPI_AX88796C=m
# CONFIG_SPI_CADENCE_XSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
@@ -6248,6 +6285,7 @@ CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6336,8 +6374,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -6399,6 +6439,7 @@ CONFIG_TCG_NSC=m
# CONFIG_TCG_TIS_I2C_ATMEL is not set
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
+CONFIG_TCG_TIS_I2C=m
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -6445,6 +6486,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6471,7 +6513,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6646,6 +6688,7 @@ CONFIG_TPM_KEY_PARSER=m
# CONFIG_TPS68470_PMIC_OPREGION is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6683,6 +6726,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -6715,6 +6760,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -6748,6 +6794,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4_NET=m
CONFIG_USB4=y
CONFIG_USB_ACM=m
@@ -6941,6 +6988,7 @@ CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_OTG is not set
@@ -7090,6 +7138,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -7108,6 +7157,7 @@ CONFIG_VFIO=m
CONFIG_VFIO_MDEV=m
# CONFIG_VFIO_NOIOMMU is not set
CONFIG_VFIO_PCI=m
+CONFIG_VFIO_PCI_ZDEV_KVM=y
CONFIG_VGA_ARB_MAX_GPUS=16
CONFIG_VGA_ARB=y
CONFIG_VGA_CONSOLE=y
@@ -7124,6 +7174,7 @@ CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_ADP1653=m
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_AK7375=m
+CONFIG_VIDEO_AR0521=m
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -7259,6 +7310,7 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
# CONFIG_VIDEO_TEGRA_TPG is not set
CONFIG_VIDEO_TM6000_ALSA=m
@@ -7444,6 +7496,7 @@ CONFIG_XEN_PRIVCMD=m
# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM_GUEST=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XFRM_INTERFACE=m
CONFIG_XFRM_MIGRATE=y
@@ -7540,8 +7593,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-s390x-rhel.config b/SOURCES/kernel-s390x-rhel.config
index c0c45bd..d905eea 100644
--- a/SOURCES/kernel-s390x-rhel.config
+++ b/SOURCES/kernel-s390x-rhel.config
@@ -11,11 +11,11 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_ACORN_PARTITION is not set
CONFIG_ACPI_AC=y
-CONFIG_ACPI_AGDI=y
# CONFIG_ACPI_ALS is not set
CONFIG_ACPI_APEI_EINJ=m
# CONFIG_ACPI_APEI_ERST_DEBUG is not set
@@ -52,6 +52,7 @@ CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -194,7 +195,7 @@ CONFIG_AMD_PMC=m
# CONFIG_AMDTEE is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
# CONFIG_APDS9802ALS is not set
@@ -214,12 +215,14 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BITMAIN is not set
# CONFIG_ARCH_KEEMBAY is not set
# CONFIG_ARCH_LG1K is not set
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
# CONFIG_ARCH_S32 is not set
@@ -242,13 +245,15 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
-CONFIG_ARM64_SME=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -396,7 +401,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -431,6 +436,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -575,6 +581,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -583,6 +590,7 @@ CONFIG_CAN_CALC_BITTIMING=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -603,6 +611,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -648,6 +657,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -779,7 +789,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -802,17 +812,15 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-CONFIG_CPU_IBPB_ENTRY=y
-CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_CPU_IDLE_GOV_HALTPOLL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE_GOV_TEO is not set
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
-CONFIG_CPU_UNRET_ENTRY=y
# CONFIG_CRAMFS is not set
# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
@@ -843,6 +851,7 @@ CONFIG_CRYPTO_AES_S390=m
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -895,7 +904,7 @@ CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -915,6 +924,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_S390=m
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -939,6 +949,8 @@ CONFIG_CRYPTO_PAES_S390=m
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -998,6 +1010,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1097,8 +1110,6 @@ CONFIG_DEFAULT_NET_SCH="fq_codel"
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFAULT_SFQ is not set
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEV_DAX_HMEM=m
CONFIG_DEV_DAX_KMEM=m
@@ -1115,8 +1126,8 @@ CONFIG_DIAG288_WATCHDOG=m
CONFIG_DIMLIB=y
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_DMA_API_DEBUG_SG is not set
@@ -1171,6 +1182,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1231,12 +1243,14 @@ CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1295,6 +1309,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SIMPLEDRM is not set
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1467,6 +1482,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
CONFIG_EPIC100=m
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1704,7 +1720,6 @@ CONFIG_GLOB=y
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -1876,6 +1891,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -1909,6 +1925,7 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
CONFIG_HMC_DRV=m
# CONFIG_HNS3 is not set
+# CONFIG_HNS3_PMU is not set
# CONFIG_HOLTEK_FF is not set
CONFIG_HOTPLUG_CPU=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
@@ -1922,6 +1939,7 @@ CONFIG_HOTPLUG_PCI=y
# CONFIG_HP206C is not set
# CONFIG_HPFS_FS is not set
# CONFIG_HP_ILO is not set
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -1993,12 +2011,12 @@ CONFIG_I2C_ALGOBIT=m
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set
# CONFIG_I2C_GPIO is not set
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2087,6 +2105,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
# CONFIG_IIO is not set
# CONFIG_IIO_MUX is not set
@@ -2152,6 +2171,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
@@ -2237,6 +2257,7 @@ CONFIG_INPUT_YEALINK=m
# CONFIG_INT3406_THERMAL is not set
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2245,7 +2266,6 @@ CONFIG_INTEGRITY=y
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_INTEL_IDXD_COMPAT is not set
CONFIG_INTEL_IDXD=m
-# CONFIG_INTEL_IFS is not set
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -2594,7 +2614,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2604,6 +2624,8 @@ CONFIG_KUNIT_EXAMPLE_TEST=m
CONFIG_KUNIT=m
CONFIG_KUNIT_TEST=m
CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM=m
# CONFIG_KVM_S390_UCONTROL is not set
# CONFIG_KVM_XEN is not set
@@ -2723,6 +2745,7 @@ CONFIG_LLC=m
# CONFIG_LMK04832 is not set
# CONFIG_LMP91000 is not set
CONFIG_LOAD_IPL_KEYS=y
+CONFIG_LOAD_UEFI_KEYS=y
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_LOCKDEP_BITS=16
@@ -2837,7 +2860,7 @@ CONFIG_MARVELL_10G_PHY=m
# CONFIG_MAX5821 is not set
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
CONFIG_MAX_PHYSMEM_BITS=46
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
@@ -2944,7 +2967,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3562,6 +3585,7 @@ CONFIG_NET_VENDOR_SOLARFLARE=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3602,6 +3626,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3693,6 +3718,7 @@ CONFIG_N_GSM=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3781,6 +3807,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -3789,6 +3816,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4041,6 +4069,7 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_STD_PARTITION="/dev/jokes"
# CONFIG_PM_TEST_SUSPEND is not set
# CONFIG_PM_TRACE_RTC is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4048,6 +4077,7 @@ CONFIG_PNFS_BLOCK=m
CONFIG_PNFS_FILE_LAYOUT=m
CONFIG_POSIX_MQUEUE=y
# CONFIG_POWERCAP is not set
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_OP_PANEL=m
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -4142,6 +4172,7 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_MMIO is not set
# CONFIG_PVPANIC_PCI is not set
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4164,6 +4195,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
# CONFIG_QCOM_GPI_DMA is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LMH is not set
@@ -4252,6 +4284,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4326,16 +4359,14 @@ CONFIG_RENESAS_PHY=m
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
-CONFIG_RETHUNK=y
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
# CONFIG_RFKILL_GPIO is not set
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4435,6 +4466,7 @@ CONFIG_RTC_DRV_MAX6900=m
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
@@ -4508,6 +4540,7 @@ CONFIG_RTW89_8852AE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S390_AP_IOMMU=y
CONFIG_S390_CCW_IOMMU=y
@@ -4690,12 +4723,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
# CONFIG_SDIO_UART is not set
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -4835,6 +4869,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_LT7182S is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -4955,7 +4990,6 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -4990,7 +5024,6 @@ CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_LANTIQ is not set
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_SERIAL_RP2 is not set
# CONFIG_SERIAL_SC16IS7XX is not set
@@ -5023,6 +5056,7 @@ CONFIG_SFC_MCDI_LOGGING=y
CONFIG_SGETMASK_SYSCALL=y
# CONFIG_SGI_PARTITION is not set
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5095,6 +5129,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5255,6 +5291,7 @@ CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
# CONFIG_SND_SOC_AMD_RENOIR is not set
# CONFIG_SND_SOC_AMD_RENOIR_MACH is not set
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
# CONFIG_SND_SOC_AMD_RV_RT5682_MACH is not set
# CONFIG_SND_SOC_AMD_VANGOGH_MACH is not set
# CONFIG_SND_SOC_AMD_YC_MACH is not set
@@ -5330,6 +5367,18 @@ CONFIG_SND_SOC_CX2072X=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_INTEL_AVS is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
# CONFIG_SND_SOC_INTEL_BROADWELL_MACH is not set
@@ -5495,6 +5544,7 @@ CONFIG_SND_SOC_SOF_ACPI=m
# CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL is not set
# CONFIG_SND_SOC_SOF_JASPERLAKE is not set
# CONFIG_SND_SOC_SOF_MERRIFIELD is not set
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
# CONFIG_SND_SOC_SOF_TIGERLAKE is not set
@@ -5517,6 +5567,7 @@ CONFIG_SND_SOC_SOF_TOPLEVEL=y
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5596,6 +5647,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5668,7 +5720,6 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
-CONFIG_SPECULATION_MITIGATIONS=y
# CONFIG_SPI_ALTERA_CORE is not set
# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_AMD=y
@@ -5679,7 +5730,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5688,6 +5738,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -5776,7 +5827,7 @@ CONFIG_SYN_COOKIES=y
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYSTEM76_ACPI is not set
CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE=y
@@ -5810,8 +5861,10 @@ CONFIG_TCG_CRB=y
# CONFIG_TCG_TIS_I2C_ATMEL is not set
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
+CONFIG_TCG_TIS_I2C=m
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
-# CONFIG_TCG_TIS_SPI is not set
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -5846,6 +5899,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
@@ -5854,6 +5908,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -5880,7 +5935,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6048,6 +6103,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6080,6 +6136,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6106,6 +6164,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
# CONFIG_UEVENT_HELPER is not set
@@ -6287,6 +6346,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6424,6 +6484,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6432,6 +6493,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_AP=m
@@ -6442,6 +6504,7 @@ CONFIG_VFIO_MDEV=m
# CONFIG_VFIO_NOIOMMU is not set
# CONFIG_VFIO_PCI_IGD is not set
CONFIG_VFIO_PCI=m
+CONFIG_VFIO_PCI_ZDEV_KVM=y
CONFIG_VGA_ARB_MAX_GPUS=64
CONFIG_VGA_ARB=y
CONFIG_VGA_CONSOLE=y
@@ -6456,6 +6519,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6500,6 +6564,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -6703,7 +6768,6 @@ CONFIG_WWAN=y
# CONFIG_X25 is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_X86_IOPL_IOPERM=y
-# CONFIG_X86_KERNEL_IBT is not set
CONFIG_X86_PMEM_LEGACY_DEVICE=y
CONFIG_X86_PMEM_LEGACY=m
CONFIG_X86_SGX_KVM=y
@@ -6810,8 +6874,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-s390x-zfcpdump-rhel.config b/SOURCES/kernel-s390x-zfcpdump-rhel.config
index 9d1e14e..b48ee5e 100644
--- a/SOURCES/kernel-s390x-zfcpdump-rhel.config
+++ b/SOURCES/kernel-s390x-zfcpdump-rhel.config
@@ -11,11 +11,11 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
# CONFIG_ACCESSIBILITY is not set
# CONFIG_ACORN_PARTITION is not set
CONFIG_ACPI_AC=y
-CONFIG_ACPI_AGDI=y
# CONFIG_ACPI_ALS is not set
CONFIG_ACPI_APEI_EINJ=m
# CONFIG_ACPI_APEI_ERST_DEBUG is not set
@@ -52,6 +52,7 @@ CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_VIDEO is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
@@ -194,7 +195,7 @@ CONFIG_AMD_PMC=m
# CONFIG_AMDTEE is not set
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
# CONFIG_APDS9802ALS is not set
@@ -214,12 +215,14 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BITMAIN is not set
# CONFIG_ARCH_KEEMBAY is not set
# CONFIG_ARCH_LG1K is not set
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
# CONFIG_ARCH_S32 is not set
@@ -242,13 +245,15 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
-CONFIG_ARM64_SME=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -400,7 +405,7 @@ CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -435,6 +440,7 @@ CONFIG_BLK_DEV_SD=y
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -580,6 +586,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -588,6 +595,7 @@ CONFIG_CAN_CALC_BITTIMING=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -608,6 +616,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -653,6 +662,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -784,7 +794,7 @@ CONFIG_CONFIGFS_FS=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=y
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -807,17 +817,15 @@ CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
-CONFIG_CPU_IBPB_ENTRY=y
-CONFIG_CPU_IBRS_ENTRY=y
# CONFIG_CPU_IDLE_GOV_HALTPOLL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE_GOV_TEO is not set
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
# CONFIG_CPUSETS is not set
# CONFIG_CPU_THERMAL is not set
-CONFIG_CPU_UNRET_ENTRY=y
# CONFIG_CRAMFS is not set
# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
@@ -848,6 +856,7 @@ CONFIG_CRYPTO_AES_S390=y
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=y
+# CONFIG_CRYPTO_ARIA is not set
# CONFIG_CRYPTO_AUTHENC is not set
CONFIG_CRYPTO_BLAKE2B=y
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -900,7 +909,7 @@ CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -920,6 +929,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_S390=y
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -944,6 +954,8 @@ CONFIG_CRYPTO_PAES_S390=m
CONFIG_CRYPTO_PCBC=y
CONFIG_CRYPTO_PCRYPT=y
CONFIG_CRYPTO_POLY1305=y
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=y
# CONFIG_CRYPTO_RSA is not set
CONFIG_CRYPTO_SEQIV=y
@@ -1003,6 +1015,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1102,8 +1115,6 @@ CONFIG_DEFAULT_SECURITY_DAC=y
# CONFIG_DEFAULT_SECURITY_SELINUX is not set
# CONFIG_DEFAULT_SFQ is not set
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
-# CONFIG_DELL_WMI_PRIVACY is not set
-CONFIG_DELL_WMI_SYSMAN=m
# CONFIG_DETECT_HUNG_TASK is not set
CONFIG_DEV_DAX_HMEM=m
CONFIG_DEV_DAX_KMEM=m
@@ -1120,8 +1131,8 @@ CONFIG_DIAG288_WATCHDOG=m
CONFIG_DIMLIB=y
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_DMA_API_DEBUG_SG is not set
@@ -1176,6 +1187,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1236,12 +1248,14 @@ CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1300,6 +1314,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SIMPLEDRM is not set
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1473,6 +1488,7 @@ CONFIG_ENCLOSURE_SERVICES=y
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
CONFIG_EPIC100=m
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1713,7 +1729,6 @@ CONFIG_GLOB=y
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -1885,6 +1900,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -1918,6 +1934,7 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
CONFIG_HMC_DRV=y
# CONFIG_HNS3 is not set
+# CONFIG_HNS3_PMU is not set
# CONFIG_HOLTEK_FF is not set
CONFIG_HOTPLUG_CPU=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
@@ -1931,6 +1948,7 @@ CONFIG_HOTPLUG_PCI=y
# CONFIG_HP206C is not set
# CONFIG_HPFS_FS is not set
# CONFIG_HP_ILO is not set
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2003,12 +2021,12 @@ CONFIG_I2C_ALGOBIT=m
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set
# CONFIG_I2C_GPIO is not set
# CONFIG_I2C_HELPER_AUTO is not set
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2097,6 +2115,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
# CONFIG_IIO is not set
# CONFIG_IIO_MUX is not set
@@ -2162,6 +2181,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_BNXT_RE is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
@@ -2248,6 +2268,7 @@ CONFIG_INPUT_YEALINK=m
# CONFIG_INT3406_THERMAL is not set
# CONFIG_INTEGRITY_ASYMMETRIC_KEYS is not set
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
# CONFIG_INTEGRITY_PLATFORM_KEYRING is not set
# CONFIG_INTEGRITY_SIGNATURE is not set
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2256,7 +2277,6 @@ CONFIG_INTEGRITY=y
# CONFIG_INTEL_IDMA64 is not set
# CONFIG_INTEL_IDXD_COMPAT is not set
CONFIG_INTEL_IDXD=m
-# CONFIG_INTEL_IFS is not set
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -2605,7 +2625,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
# CONFIG_KSM is not set
@@ -2615,6 +2635,8 @@ CONFIG_KUNIT_EXAMPLE_TEST=m
# CONFIG_KUNIT is not set
CONFIG_KUNIT_TEST=m
CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
# CONFIG_KVM is not set
# CONFIG_KVM_S390_UCONTROL is not set
# CONFIG_KVM_XEN is not set
@@ -2734,6 +2756,7 @@ CONFIG_LLC=m
# CONFIG_LMK04832 is not set
# CONFIG_LMP91000 is not set
# CONFIG_LOAD_IPL_KEYS is not set
+CONFIG_LOAD_UEFI_KEYS=y
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_LOCKDEP_BITS=16
@@ -2849,7 +2872,7 @@ CONFIG_MARVELL_10G_PHY=m
# CONFIG_MAX5821 is not set
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
CONFIG_MAX_PHYSMEM_BITS=46
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
@@ -2956,7 +2979,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3575,6 +3598,7 @@ CONFIG_NET_VENDOR_SOLARFLARE=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3616,6 +3640,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3707,6 +3732,7 @@ CONFIG_N_GSM=y
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3795,6 +3821,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
# CONFIG_NVME_FC is not set
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -3803,6 +3830,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
# CONFIG_NVME_TARGET is not set
@@ -4056,12 +4084,14 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_STD_PARTITION="/dev/jokes"
# CONFIG_PM_TEST_SUSPEND is not set
# CONFIG_PM_TRACE_RTC is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PNFS_BLOCK=m
CONFIG_PNFS_FILE_LAYOUT=m
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_POWERCAP is not set
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_OP_PANEL=m
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -4157,6 +4187,7 @@ CONFIG_PTP_1588_CLOCK=y
# CONFIG_PVPANIC_MMIO is not set
# CONFIG_PVPANIC_PCI is not set
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4179,6 +4210,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
# CONFIG_QCOM_GPI_DMA is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LMH is not set
@@ -4267,6 +4299,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_REF_SCALE_TEST is not set
# CONFIG_RCU_SCALE_TEST is not set
@@ -4341,16 +4374,14 @@ CONFIG_RENESAS_PHY=m
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
-CONFIG_RETHUNK=y
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
# CONFIG_RFKILL_GPIO is not set
CONFIG_RFKILL_INPUT=y
# CONFIG_RFKILL is not set
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4450,6 +4481,7 @@ CONFIG_RTC_DRV_MAX6900=m
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
@@ -4524,6 +4556,7 @@ CONFIG_RTW89_8852AE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S390_AP_IOMMU=y
CONFIG_S390_CCW_IOMMU=y
@@ -4709,12 +4742,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
# CONFIG_SDIO_UART is not set
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -4854,6 +4888,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_LT7182S is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -4974,7 +5009,6 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5009,7 +5043,6 @@ CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_LANTIQ is not set
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_SERIAL_RP2 is not set
# CONFIG_SERIAL_SC16IS7XX is not set
@@ -5043,6 +5076,7 @@ CONFIG_SGETMASK_SYSCALL=y
# CONFIG_SGI_PARTITION is not set
# CONFIG_SHADOW_CALL_STACK is not set
CONFIG_SHMEM=y
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5115,6 +5149,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5275,6 +5311,7 @@ CONFIG_SND_SEQUENCER=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
# CONFIG_SND_SOC_AMD_RENOIR is not set
# CONFIG_SND_SOC_AMD_RENOIR_MACH is not set
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
# CONFIG_SND_SOC_AMD_RV_RT5682_MACH is not set
# CONFIG_SND_SOC_AMD_VANGOGH_MACH is not set
# CONFIG_SND_SOC_AMD_YC_MACH is not set
@@ -5350,6 +5387,18 @@ CONFIG_SND_SOC_CX2072X=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_INTEL_AVS is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH is not set
# CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH is not set
# CONFIG_SND_SOC_INTEL_BROADWELL_MACH is not set
@@ -5515,6 +5564,7 @@ CONFIG_SND_SOC_SOF_ACPI=m
# CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL is not set
# CONFIG_SND_SOC_SOF_JASPERLAKE is not set
# CONFIG_SND_SOC_SOF_MERRIFIELD is not set
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
# CONFIG_SND_SOC_SOF_TIGERLAKE is not set
@@ -5537,6 +5587,7 @@ CONFIG_SND_SOC_SOF_TOPLEVEL=y
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5616,6 +5667,7 @@ CONFIG_SND_SOC_WM8804_I2C=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5688,7 +5740,6 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
-CONFIG_SPECULATION_MITIGATIONS=y
# CONFIG_SPI_ALTERA_CORE is not set
# CONFIG_SPI_ALTERA is not set
CONFIG_SPI_AMD=y
@@ -5699,7 +5750,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5708,6 +5758,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LANTIQ_SSC is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -5799,7 +5850,7 @@ CONFIG_SYN_COOKIES=y
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
CONFIG_SYSFS=y
# CONFIG_SYS_HYPERVISOR is not set
@@ -5835,8 +5886,10 @@ CONFIG_TCG_CRB=y
# CONFIG_TCG_TIS_I2C_ATMEL is not set
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
+CONFIG_TCG_TIS_I2C=m
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
-# CONFIG_TCG_TIS_SPI is not set
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -5871,6 +5924,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
@@ -5879,6 +5933,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -5905,7 +5960,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6074,6 +6129,7 @@ CONFIG_TOUCHSCREEN_WACOM_I2C=m
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6106,6 +6162,8 @@ CONFIG_TUNE_Z15=y
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6132,6 +6190,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
# CONFIG_UDF_FS is not set
# CONFIG_UDMABUF is not set
# CONFIG_UEVENT_HELPER is not set
@@ -6313,6 +6372,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6450,6 +6510,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
# CONFIG_VDPA is not set
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6458,6 +6519,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
# CONFIG_VFAT_FS is not set
CONFIG_VFIO_AP=m
@@ -6468,6 +6530,7 @@ CONFIG_VFIO_MDEV=m
# CONFIG_VFIO_NOIOMMU is not set
# CONFIG_VFIO_PCI_IGD is not set
CONFIG_VFIO_PCI=m
+CONFIG_VFIO_PCI_ZDEV_KVM=y
CONFIG_VGA_ARB_MAX_GPUS=64
CONFIG_VGA_ARB=y
CONFIG_VGA_CONSOLE=y
@@ -6482,6 +6545,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6526,6 +6590,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -6730,7 +6795,6 @@ CONFIG_WWAN=y
# CONFIG_X25 is not set
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_X86_IOPL_IOPERM=y
-# CONFIG_X86_KERNEL_IBT is not set
CONFIG_X86_PMEM_LEGACY_DEVICE=y
CONFIG_X86_PMEM_LEGACY=m
CONFIG_X86_SGX_KVM=y
@@ -6837,8 +6901,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-x86_64-debug-fedora.config b/SOURCES/kernel-x86_64-debug-fedora.config
index d8e3b1f..38fc25a 100644
--- a/SOURCES/kernel-x86_64-debug-fedora.config
+++ b/SOURCES/kernel-x86_64-debug-fedora.config
@@ -268,7 +268,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -317,8 +316,9 @@ CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
CONFIG_ARM_PTDUMP_DEBUGFS=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -547,7 +547,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -585,6 +585,7 @@ CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -751,6 +752,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -759,6 +761,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -779,6 +782,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -832,6 +836,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -985,7 +990,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -1019,6 +1024,7 @@ CONFIG_CPU_IDLE_GOV_HALTPOLL=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -1041,7 +1047,7 @@ CONFIG_CRC_CCITT=y
CONFIG_CRC_ITU_T=m
CONFIG_CRC_T10DIF=y
CONFIG_CROS_EC_CHARDEV=m
-# CONFIG_CROS_EC_DEBUGFS is not set
+CONFIG_CROS_EC_DEBUGFS=m
CONFIG_CROS_EC_I2C=m
# CONFIG_CROS_EC_ISHTP is not set
CONFIG_CROS_EC_LIGHTBAR=m
@@ -1055,6 +1061,7 @@ CONFIG_CROS_EC_SPI=m
CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1067,6 +1074,7 @@ CONFIG_CRYPTO_AES_NI_INTEL=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=y
CONFIG_CRYPTO_BLAKE2S=m
@@ -1134,7 +1142,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
CONFIG_CRYPTO_DEV_VIRTIO=m
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1153,6 +1161,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1179,6 +1188,7 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_X86_64=y
+CONFIG_CRYPTO_POLYVAL_CLMUL_NI=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1242,6 +1252,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1280,7 +1291,7 @@ CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_IRQFLAGS is not set
# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP is not set
+CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP=y
CONFIG_DEBUG_KMAP_LOCAL=y
# CONFIG_DEBUG_KMEMLEAK_AUTO_SCAN is not set
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
@@ -1308,7 +1319,7 @@ CONFIG_DEBUG_OBJECTS_WORK=y
CONFIG_DEBUG_OBJECTS=y
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_DEBUG_PAGE_REF is not set
-CONFIG_DEBUG_PER_CPU_MAPS=y
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
CONFIG_DEBUG_PERF_USE_VMALLOC=y
# CONFIG_DEBUG_PINCTRL is not set
# CONFIG_DEBUG_PLIST is not set
@@ -1373,8 +1384,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
CONFIG_DMA_API_DEBUG_SG=y
@@ -1503,11 +1514,13 @@ CONFIG_DRM_I915_GVT=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_PXP=y
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
CONFIG_DRM_ITE_IT6505=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1529,6 +1542,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_EDP is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1613,6 +1627,7 @@ CONFIG_DRM_SSD130X_I2C=m
CONFIG_DRM_SSD130X=m
CONFIG_DRM_SSD130X_SPI=m
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -1992,10 +2007,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -2119,7 +2136,6 @@ CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_CRYSTAL_COVE=y
# CONFIG_GPIO_CS5535 is not set
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_F7188X is not set
@@ -2309,6 +2325,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2401,7 +2418,7 @@ CONFIG_HYPERV_KEYBOARD=m
CONFIG_HYPERV=m
CONFIG_HYPERV_NET=m
CONFIG_HYPERV_STORAGE=m
-# CONFIG_HYPERV_TESTING is not set
+CONFIG_HYPERV_TESTING=y
CONFIG_HYPERV_UTILS=m
CONFIG_HYPERV_VSOCKETS=m
CONFIG_HZ_1000=y
@@ -2440,13 +2457,13 @@ CONFIG_I2C_DESIGNWARE_PCI=y
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2556,11 +2573,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
# CONFIG_IIO_SSP_SENSORHUB is not set
@@ -2633,6 +2652,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
CONFIG_INFINIBAND_HFI1=m
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
@@ -2664,8 +2684,8 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -2822,6 +2842,7 @@ CONFIG_INTEL_VSEC=m
CONFIG_INTEL_WMI_SBL_FW_UPDATE=m
CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT=y
# CONFIG_INTERRUPT_CNT is not set
# CONFIG_INTERVAL_TREE_TEST is not set
@@ -3199,7 +3220,7 @@ CONFIG_KGDB=y
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KS0108_DELAY=2
CONFIG_KS0108=m
@@ -3444,6 +3465,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3592,7 +3614,7 @@ CONFIG_MFD_CROS_EC_DEV=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
@@ -4070,6 +4092,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4091,6 +4114,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4337,6 +4361,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
CONFIG_NET_VENDOR_WIZNET=y
CONFIG_NET_VENDOR_XILINX=y
CONFIG_NET_VENDOR_XIRCOM=y
@@ -4412,6 +4437,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4502,6 +4528,7 @@ CONFIG_NIC7018_WDT=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4598,6 +4625,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
CONFIG_NVIDIA_WMI_EC_BACKLIGHT=m
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -4606,6 +4634,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4879,6 +4908,7 @@ CONFIG_PINCTRL_LEWISBURG=m
CONFIG_PINCTRL_LYNXPOINT=m
# CONFIG_PINCTRL_MCP23S08 is not set
CONFIG_PINCTRL_MESON=y
+CONFIG_PINCTRL_METEORLAKE=m
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
# CONFIG_PINCTRL_MSM8226 is not set
# CONFIG_PINCTRL_MSM8953 is not set
@@ -4945,6 +4975,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4957,6 +4988,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
# CONFIG_POWER_RESET_LINKSTATION is not set
@@ -5005,7 +5037,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5060,6 +5092,7 @@ CONFIG_PVPANIC_MMIO=m
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
CONFIG_PWM_CRC=y
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
@@ -5069,6 +5102,7 @@ CONFIG_PWM_HIBVT=m
# CONFIG_PWM_INTEL_LGM is not set
CONFIG_PWM_LPSS_PCI=m
CONFIG_PWM_LPSS_PLATFORM=m
+CONFIG_PWM_OMAP_DMTIMER=m
# CONFIG_PWM_PCA9685 is not set
# CONFIG_PWM_XILINX is not set
CONFIG_PWM=y
@@ -5170,6 +5204,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
# CONFIG_RCU_SCALE_TEST is not set
@@ -5284,7 +5319,8 @@ CONFIG_REMOTEPROC=y
# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETHUNK=y
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
@@ -5292,8 +5328,6 @@ CONFIG_RETPOLINE=y
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -5410,6 +5444,7 @@ CONFIG_RTC_DRV_MAX6916=m
CONFIG_RTC_DRV_MAX77686=m
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF85063=m
@@ -5490,6 +5525,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -5806,6 +5842,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -5927,7 +5964,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
@@ -6013,6 +6049,7 @@ CONFIG_SGI_GRU=m
CONFIG_SGI_PARTITION=y
CONFIG_SGI_XP=m
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6096,6 +6133,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -6262,7 +6301,9 @@ CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m
CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
CONFIG_SND_SOC_AMD_RENOIR=m
CONFIG_SND_SOC_AMD_RENOIR_MACH=m
+CONFIG_SND_SOC_AMD_RPL_ACP6x=m
CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m
+CONFIG_SND_SOC_AMD_ST_ES8336_MACH=m
CONFIG_SND_SOC_AMD_VANGOGH_MACH=m
CONFIG_SND_SOC_AMD_YC_MACH=m
# CONFIG_SND_SOC_APQ8016_SBC is not set
@@ -6322,6 +6363,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_ICS43432 is not set
# CONFIG_SND_SOC_IMG is not set
@@ -6337,6 +6379,18 @@ CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
CONFIG_SND_SOC_INTEL_AVS=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT274=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT286=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT298=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567=m
CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH=m
CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH=m
CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m
@@ -6505,6 +6559,7 @@ CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE=m
CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y
CONFIG_SND_SOC_SOF_JASPERLAKE=m
CONFIG_SND_SOC_SOF_MERRIFIELD=m
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_MT8195 is not set
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
@@ -6528,6 +6583,7 @@ CONFIG_SND_SOC_SSM4567=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -6607,6 +6663,7 @@ CONFIG_SND_SOC_WM8940=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -6698,7 +6755,6 @@ CONFIG_SPI_AX88796C=m
# CONFIG_SPI_CADENCE_XSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
@@ -6709,6 +6765,7 @@ CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_LOOPBACK_TEST is not set
CONFIG_SPI_MASTER=y
# CONFIG_SPI_MEM is not set
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6808,8 +6865,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -6871,6 +6930,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -6917,6 +6977,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6943,7 +7004,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -7124,6 +7185,7 @@ CONFIG_TPM_KEY_PARSER=m
CONFIG_TQMX86_WDT=m
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -7151,6 +7213,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -7184,6 +7248,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -7219,6 +7284,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4=m
CONFIG_USB4_NET=m
CONFIG_USB_ACM=m
@@ -7414,6 +7480,7 @@ CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_OTG is not set
@@ -7568,6 +7635,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -7604,6 +7672,7 @@ CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_ADP1653=m
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_AK7375=m
+CONFIG_VIDEO_AR0521=m
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -7741,6 +7810,7 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
# CONFIG_VIDEO_TEGRA_TPG is not set
CONFIG_VIDEO_TM6000_ALSA=m
@@ -8013,7 +8083,7 @@ CONFIG_XEN_SCSI_FRONTEND=m
CONFIG_XEN_SYMS=y
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
-CONFIG_XEN_VIRTIO_FORCE_GRANT=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XEN_WDT=m
CONFIG_XEN=y
@@ -8113,8 +8183,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-x86_64-debug-rhel.config b/SOURCES/kernel-x86_64-debug-rhel.config
index e66803e..6e172ad 100644
--- a/SOURCES/kernel-x86_64-debug-rhel.config
+++ b/SOURCES/kernel-x86_64-debug-rhel.config
@@ -11,6 +11,7 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
CONFIG_ACCESSIBILITY=y
# CONFIG_ACERHDF is not set
@@ -18,7 +19,6 @@ CONFIG_ACER_WIRELESS=m
CONFIG_ACER_WMI=m
# CONFIG_ACORN_PARTITION is not set
CONFIG_ACPI_AC=y
-CONFIG_ACPI_AGDI=y
# CONFIG_ACPI_ALS is not set
CONFIG_ACPI_APEI_EINJ=m
CONFIG_ACPI_APEI_ERST_DEBUG=m
@@ -220,7 +220,7 @@ CONFIG_AMD_XGBE=m
# CONFIG_AMIGA_PARTITION is not set
CONFIG_AMILO_RFKILL=m
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -237,6 +237,7 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BITMAIN is not set
# CONFIG_ARCH_KEEMBAY is not set
# CONFIG_ARCH_LG1K is not set
@@ -244,6 +245,7 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
# CONFIG_ARCH_S32 is not set
@@ -266,13 +268,15 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
-CONFIG_ARM64_SME=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -424,7 +428,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -459,6 +463,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -603,6 +608,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -611,6 +617,7 @@ CONFIG_CAN_DEBUG_DEVICES=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -631,6 +638,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -673,6 +681,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_DEBUG=y
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -808,7 +817,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -841,6 +850,7 @@ CONFIG_CPU_IDLE_GOV_MENU=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -875,6 +885,7 @@ CONFIG_CRYPTO_AES_NI_INTEL=y
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -942,7 +953,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -962,6 +973,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -988,6 +1000,8 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_X86_64=y
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1050,6 +1064,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1186,8 +1201,8 @@ CONFIG_DIMLIB=y
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
CONFIG_DMA_API_DEBUG_SG=y
CONFIG_DMA_API_DEBUG=y
@@ -1242,6 +1257,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1308,12 +1324,14 @@ CONFIG_DRM_I915_GVT_KVMGT=m
CONFIG_DRM_I915_GVT=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1372,6 +1390,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SIMPLEDRM is not set
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1573,6 +1592,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
CONFIG_EPIC100=m
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1819,7 +1839,6 @@ CONFIG_GPIO_AMDPT=m
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -2005,6 +2024,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -2039,6 +2059,7 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
CONFIG_HMM_MIRROR=y
# CONFIG_HNS3 is not set
+# CONFIG_HNS3_PMU is not set
# CONFIG_HOLTEK_FF is not set
CONFIG_HOTPLUG_CPU=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
@@ -2059,6 +2080,7 @@ CONFIG_HP_ILO=m
CONFIG_HP_WATCHDOG=m
CONFIG_HPWDT_NMI_DECODING=y
CONFIG_HP_WMI=m
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2101,7 +2123,7 @@ CONFIG_HYPERV_KEYBOARD=m
CONFIG_HYPERV=m
CONFIG_HYPERV_NET=m
CONFIG_HYPERV_STORAGE=m
-# CONFIG_HYPERV_TESTING is not set
+CONFIG_HYPERV_TESTING=y
CONFIG_HYPERV_UTILS=m
CONFIG_HYPERV_VSOCKETS=m
CONFIG_HZ_1000=y
@@ -2135,12 +2157,12 @@ CONFIG_I2C_DESIGNWARE_BAYTRAIL=y
CONFIG_I2C_DESIGNWARE_PLATFORM=m
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
CONFIG_I2C_GPIO_FAULT_INJECTOR=y
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2236,6 +2258,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
CONFIG_IIO=m
# CONFIG_IIO_MUX is not set
@@ -2302,6 +2325,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
CONFIG_INFINIBAND_HFI1=m
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
@@ -2392,6 +2416,7 @@ CONFIG_INPUT_YEALINK=m
CONFIG_INT340X_THERMAL=m
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2405,7 +2430,7 @@ CONFIG_INTEL_IDMA64=m
CONFIG_INTEL_IDXD=m
CONFIG_INTEL_IDXD_PERFMON=y
CONFIG_INTEL_IDXD_SVM=y
-# CONFIG_INTEL_IFS is not set
+CONFIG_INTEL_IFS=m
# CONFIG_INTEL_INT0002_VGPIO is not set
CONFIG_INTEL_IOATDMA=m
CONFIG_INTEL_IOMMU_DEBUGFS=y
@@ -2788,7 +2813,7 @@ CONFIG_KGDB=y
CONFIG_KPROBE_EVENT_GEN_TEST=m
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2799,6 +2824,8 @@ CONFIG_KUNIT=m
CONFIG_KUNIT_TEST=m
CONFIG_KVM_AMD=m
CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM_GUEST=y
CONFIG_KVM_INTEL=m
CONFIG_KVM=m
@@ -3028,7 +3055,7 @@ CONFIG_MARVELL_PHY=m
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAX9611 is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
CONFIG_MAXSMP=y
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
@@ -3135,7 +3162,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3769,6 +3796,7 @@ CONFIG_NET_VENDOR_STMICRO=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3809,6 +3837,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3900,6 +3929,7 @@ CONFIG_N_HDLC=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3991,6 +4021,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -3999,6 +4030,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4240,6 +4272,7 @@ CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_LYNXPOINT is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_METEORLAKE is not set
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
# CONFIG_PINCTRL_MSM8226 is not set
# CONFIG_PINCTRL_MSM8976 is not set
@@ -4282,6 +4315,7 @@ CONFIG_PM_SLEEP_DEBUG=y
CONFIG_PM_STD_PARTITION=""
# CONFIG_PM_TEST_SUSPEND is not set
CONFIG_PM_TRACE_RTC=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4292,6 +4326,7 @@ CONFIG_PNPACPI=y
CONFIG_PNP=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POWERCAP=y
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_OP_PANEL=m
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -4389,6 +4424,7 @@ CONFIG_PVPANIC_MMIO=m
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4413,6 +4449,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
# CONFIG_QCOM_GPI_DMA is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LMH is not set
@@ -4496,6 +4533,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4570,7 +4608,8 @@ CONFIG_RESET_CONTROLLER=y
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETHUNK=y
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
@@ -4578,8 +4617,6 @@ CONFIG_RETPOLINE=y
# CONFIG_RFKILL_GPIO is not set
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4679,6 +4716,7 @@ CONFIG_RTC_DRV_MAX6900=m
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
@@ -4753,6 +4791,7 @@ CONFIG_RTW89_DEBUGFS=y
CONFIG_RTW89_DEBUGMSG=y
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
# CONFIG_S390_MODULES_SANITY_TEST is not set
@@ -4918,12 +4957,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
CONFIG_SDIO_UART=m
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -5065,6 +5105,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_LT7182S is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -5185,7 +5226,6 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5221,7 +5261,7 @@ CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_LANTIQ is not set
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
+CONFIG_SERIAL_MULTI_INSTANTIATE=m
CONFIG_SERIAL_NONSTANDARD=y
# CONFIG_SERIAL_RP2 is not set
# CONFIG_SERIAL_SC16IS7XX is not set
@@ -5265,6 +5305,7 @@ CONFIG_SGI_GRU=m
CONFIG_SGI_PARTITION=y
CONFIG_SGI_XP=m
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5335,6 +5376,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+CONFIG_SND_CTL_DEBUG=y
+CONFIG_SND_CTL_INPUT_VALIDATION=y
CONFIG_SND_CTL_VALIDATION=y
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5498,6 +5541,7 @@ CONFIG_SND_SOC_AMD_ACP6x=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
CONFIG_SND_SOC_AMD_RENOIR=m
CONFIG_SND_SOC_AMD_RENOIR_MACH=m
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m
CONFIG_SND_SOC_AMD_VANGOGH_MACH=m
CONFIG_SND_SOC_AMD_YC_MACH=m
@@ -5573,6 +5617,18 @@ CONFIG_SND_SOC_HDAC_HDMI=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
CONFIG_SND_SOC_INTEL_AVS=m
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH=m
CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH=m
CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m
@@ -5740,6 +5796,7 @@ CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE=m
CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y
CONFIG_SND_SOC_SOF_JASPERLAKE=m
CONFIG_SND_SOC_SOF_MERRIFIELD=m
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
CONFIG_SND_SOC_SOF_TIGERLAKE=m
@@ -5762,6 +5819,7 @@ CONFIG_SND_SOC_SSM4567=m
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5841,6 +5899,7 @@ CONFIG_SND_SOC_WM8804=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5928,7 +5987,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5937,6 +5995,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LM70_LLP is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6040,7 +6099,7 @@ CONFIG_SYNTH_EVENT_GEN_TEST=m
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYSTEM76_ACPI is not set
CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE=y
@@ -6074,7 +6133,9 @@ CONFIG_TCG_CRB=y
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
CONFIG_TCG_TIS_I2C_NUVOTON=m
-# CONFIG_TCG_TIS_SPI is not set
+CONFIG_TCG_TIS_I2C=y
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -6109,6 +6170,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
@@ -6117,6 +6179,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
CONFIG_TEST_FPU=m
@@ -6143,7 +6206,7 @@ CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
CONFIG_TEST_STRING_HELPERS=m
@@ -6316,6 +6379,7 @@ CONFIG_TOUCHSCREEN_WACOM_W8001=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6338,6 +6402,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6364,6 +6430,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
# CONFIG_UEVENT_HELPER is not set
@@ -6547,6 +6614,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6688,6 +6756,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6696,6 +6765,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_IOMMU_TYPE1=m
@@ -6720,6 +6790,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6764,6 +6835,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -7138,8 +7210,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-x86_64-fedora.config b/SOURCES/kernel-x86_64-fedora.config
index 0ef3b03..6732a4f 100644
--- a/SOURCES/kernel-x86_64-fedora.config
+++ b/SOURCES/kernel-x86_64-fedora.config
@@ -268,7 +268,6 @@ CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
CONFIG_ANDROID_BINDERFS=y
# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -316,8 +315,9 @@ CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -546,7 +546,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
CONFIG_BLK_CGROUP_IOCOST=y
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -584,6 +584,7 @@ CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SX8=m
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+CONFIG_BLK_DEV_UBLK=m
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION_FALLBACK is not set
@@ -750,6 +751,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+CONFIG_CAN_CAN327=m
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
CONFIG_CAN_CTUCANFD_PCI=m
@@ -758,6 +760,7 @@ CONFIG_CAN_CTUCANFD_PLATFORM=m
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_ESD_USB=m
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -778,6 +781,7 @@ CONFIG_CAN_MCBA_USB=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -831,6 +835,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -984,7 +989,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=3
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -1018,6 +1023,7 @@ CONFIG_CPU_IDLE_GOV_HALTPOLL=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -1054,6 +1060,7 @@ CONFIG_CROS_EC_SPI=m
CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC=m
CONFIG_CROS_KBD_LED_BACKLIGHT=m
+CONFIG_CROS_KUNIT=m
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CROS_USBPD_LOGGER=m
CONFIG_CROS_USBPD_NOTIFY=m
@@ -1066,6 +1073,7 @@ CONFIG_CRYPTO_AES_NI_INTEL=y
CONFIG_CRYPTO_AES_TI=m
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=y
CONFIG_CRYPTO_BLAKE2S=m
@@ -1133,7 +1141,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
CONFIG_CRYPTO_DEV_VIRTIO=m
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -1152,6 +1160,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
CONFIG_CRYPTO_GHASH=y
+CONFIG_CRYPTO_HCTR2=m
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_KEYWRAP=m
@@ -1178,6 +1187,7 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_X86_64=y
+CONFIG_CRYPTO_POLYVAL_CLMUL_NI=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1241,6 +1251,7 @@ CONFIG_CXL_PMEM=m
CONFIG_DA280=m
CONFIG_DA311=m
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1365,8 +1376,8 @@ CONFIG_DHT11=m
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
CONFIG_DM9051=m
CONFIG_DM9102=m
# CONFIG_DMA_API_DEBUG is not set
@@ -1494,11 +1505,13 @@ CONFIG_DRM_I915_GVT=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_PXP=y
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
CONFIG_DRM_ITE_IT6505=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
CONFIG_DRM_LONTIUM_LT8912B=m
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1520,6 +1533,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_BRIDGE=y
CONFIG_DRM_PANEL_DSI_CM=m
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_EDP is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -1604,6 +1618,7 @@ CONFIG_DRM_SSD130X_I2C=m
CONFIG_DRM_SSD130X=m
CONFIG_DRM_SSD130X_SPI=m
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+CONFIG_DRM_TI_DLPC3433=m
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
CONFIG_DRM_TI_SN65DSI86=m
@@ -1975,10 +1990,12 @@ CONFIG_FPGA_DFL=m
CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000=m
CONFIG_FPGA_DFL_PCI=m
CONFIG_FPGA=m
+CONFIG_FPGA_M10_BMC_SEC_UPDATE=m
CONFIG_FPGA_MGR_ALTERA_CVP=m
CONFIG_FPGA_MGR_ALTERA_PS_SPI=m
CONFIG_FPGA_MGR_ICE40_SPI=m
CONFIG_FPGA_MGR_MACHXO2_SPI=m
+# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
CONFIG_FPGA_MGR_XILINX_SPI=m
CONFIG_FPGA_MGR_ZYNQ_FPGA=m
CONFIG_FPGA_REGION=m
@@ -2102,7 +2119,6 @@ CONFIG_GPIO_CADENCE=m
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_CRYSTAL_COVE=y
# CONFIG_GPIO_CS5535 is not set
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_F7188X is not set
@@ -2292,6 +2308,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_U2FZERO=m
@@ -2423,13 +2440,13 @@ CONFIG_I2C_DESIGNWARE_PCI=y
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_SLAVE=y
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_FSI is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF_ELAN=m
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2539,11 +2556,13 @@ CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO=m
CONFIG_IIO_MUX=m
+CONFIG_IIO_RESCALE_KUNIT_TEST=m
CONFIG_IIO_RESCALE=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
# CONFIG_IIO_SSP_SENSORHUB is not set
@@ -2616,6 +2635,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+CONFIG_INFINIBAND_ERDMA=m
CONFIG_INFINIBAND_HFI1=m
CONFIG_INFINIBAND_IPOIB_CM=y
CONFIG_INFINIBAND_IPOIB_DEBUG_DATA=y
@@ -2647,8 +2667,8 @@ CONFIG_INFINIBAND_USNIC=m
# CONFIG_INITRAMFS_PRESERVE_MTIME is not set
CONFIG_INITRAMFS_SOURCE=""
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-CONFIG_INIT_STACK_NONE=y
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
CONFIG_INOTIFY_USER=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_ADXL34X is not set
@@ -2805,6 +2825,7 @@ CONFIG_INTEL_VSEC=m
CONFIG_INTEL_WMI_SBL_FW_UPDATE=m
CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
CONFIG_INTERCONNECT=y
# CONFIG_INTERRUPT_CNT is not set
# CONFIG_INTERVAL_TREE_TEST is not set
@@ -3180,7 +3201,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
CONFIG_KS0108_DELAY=2
CONFIG_KS0108=m
@@ -3425,6 +3446,7 @@ CONFIG_MAGIC_SYSRQ=y
CONFIG_MAILBOX=y
# CONFIG_MANAGER_SBS is not set
CONFIG_MANTIS_CORE=m
+# CONFIG_MARCH_Z16 is not set
CONFIG_MARVELL_10G_PHY=m
CONFIG_MARVELL_88X2222_PHY=m
# CONFIG_MARVELL_CN10K_TAD_PMU is not set
@@ -3573,7 +3595,7 @@ CONFIG_MFD_CROS_EC_DEV=m
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
CONFIG_MFD_ENE_KB3930=m
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
@@ -4051,6 +4073,7 @@ CONFIG_NET_DSA=m
# CONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C is not set
CONFIG_NET_DSA_MICROCHIP_KSZ9477=m
CONFIG_NET_DSA_MICROCHIP_KSZ9477_SPI=m
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
CONFIG_NET_DSA_MT7530=m
# CONFIG_NET_DSA_MV88E6060 is not set
CONFIG_NET_DSA_MV88E6XXX=m
@@ -4072,6 +4095,7 @@ CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_RTL8_4=m
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
CONFIG_NET_DSA_TAG_XRS700X=m
@@ -4318,6 +4342,7 @@ CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_NET_VENDOR_TI=y
CONFIG_NET_VENDOR_VERTEXCOM=y
CONFIG_NET_VENDOR_VIA=y
+CONFIG_NET_VENDOR_WANGXUN=y
CONFIG_NET_VENDOR_WIZNET=y
CONFIG_NET_VENDOR_XILINX=y
CONFIG_NET_VENDOR_XIRCOM=y
@@ -4393,6 +4418,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -4483,6 +4509,7 @@ CONFIG_NIC7018_WDT=m
CONFIG_NILFS2_FS=m
CONFIG_NINTENDO_FF=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST is not set
CONFIG_NIU=m
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
@@ -4579,6 +4606,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
CONFIG_NVIDIA_WMI_EC_BACKLIGHT=m
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
CONFIG_NVME_HWMON=y
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -4587,6 +4615,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4859,6 +4888,7 @@ CONFIG_PINCTRL_LEWISBURG=m
CONFIG_PINCTRL_LYNXPOINT=m
# CONFIG_PINCTRL_MCP23S08 is not set
CONFIG_PINCTRL_MESON=y
+CONFIG_PINCTRL_METEORLAKE=m
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
# CONFIG_PINCTRL_MSM8226 is not set
# CONFIG_PINCTRL_MSM8953 is not set
@@ -4925,6 +4955,7 @@ CONFIG_PM_STD_PARTITION=""
CONFIG_PM_TEST_SUSPEND=y
CONFIG_PM_TRACE_RTC=y
CONFIG_PM_TRACE=y
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4937,6 +4968,7 @@ CONFIG_POSIX_MQUEUE=y
# CONFIG_POWER8_CPU is not set
# CONFIG_POWER9_CPU is not set
CONFIG_POWERCAP=y
+CONFIG_POWER_MLXBF=m
# CONFIG_POWER_RESET_BRCMKONA is not set
# CONFIG_POWER_RESET_BRCMSTB is not set
# CONFIG_POWER_RESET_LINKSTATION is not set
@@ -4985,7 +5017,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_PRIME_NUMBERS is not set
CONFIG_PRINTER=m
# CONFIG_PRINTK_CALLER is not set
-# CONFIG_PRINTK_INDEX is not set
+CONFIG_PRINTK_INDEX=y
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
CONFIG_PRINTK_TIME=y
# CONFIG_PRINT_QUOTA_WARNING is not set
@@ -5040,6 +5072,7 @@ CONFIG_PVPANIC_MMIO=m
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
CONFIG_PWM_CRC=y
CONFIG_PWM_CROS_EC=m
# CONFIG_PWM_DEBUG is not set
@@ -5049,6 +5082,7 @@ CONFIG_PWM_HIBVT=m
# CONFIG_PWM_INTEL_LGM is not set
CONFIG_PWM_LPSS_PCI=m
CONFIG_PWM_LPSS_PLATFORM=m
+CONFIG_PWM_OMAP_DMTIMER=m
# CONFIG_PWM_PCA9685 is not set
# CONFIG_PWM_XILINX is not set
CONFIG_PWM=y
@@ -5150,6 +5184,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_REF_SCALE_TEST is not set
# CONFIG_RCU_SCALE_TEST is not set
@@ -5264,7 +5299,8 @@ CONFIG_REMOTEPROC=y
# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+CONFIG_RESET_TI_TPS380X=m
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETHUNK=y
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
@@ -5272,8 +5308,6 @@ CONFIG_RETPOLINE=y
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-# CONFIG_RH_DISABLE_DEPRECATED is not set
-# CONFIG_RHEL_DIFFERENCES is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -5390,6 +5424,7 @@ CONFIG_RTC_DRV_MAX6916=m
CONFIG_RTC_DRV_MAX77686=m
CONFIG_RTC_DRV_MCP795=m
CONFIG_RTC_DRV_MSM6242=m
+CONFIG_RTC_DRV_NCT3018Y=m
CONFIG_RTC_DRV_PCF2123=m
CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF85063=m
@@ -5470,6 +5505,7 @@ CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
CONFIG_S2IO=m
# CONFIG_S390_KPROBES_SANITY_TEST is not set
@@ -5786,6 +5822,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_LT7182S=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2947_I2C=m
CONFIG_SENSORS_LTC2947_SPI=m
@@ -5907,7 +5944,6 @@ CONFIG_SENSORS_XDPE152=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_CS=m
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
@@ -5993,6 +6029,7 @@ CONFIG_SGI_GRU=m
CONFIG_SGI_PARTITION=y
CONFIG_SGI_XP=m
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -6076,6 +6113,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -6241,7 +6280,9 @@ CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m
CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
CONFIG_SND_SOC_AMD_RENOIR=m
CONFIG_SND_SOC_AMD_RENOIR_MACH=m
+CONFIG_SND_SOC_AMD_RPL_ACP6x=m
CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m
+CONFIG_SND_SOC_AMD_ST_ES8336_MACH=m
CONFIG_SND_SOC_AMD_VANGOGH_MACH=m
CONFIG_SND_SOC_AMD_YC_MACH=m
# CONFIG_SND_SOC_APQ8016_SBC is not set
@@ -6301,6 +6342,7 @@ CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
# CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m
CONFIG_SND_SOC_HDAC_HDMI=m
+CONFIG_SND_SOC_HDA=m
CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_ICS43432 is not set
# CONFIG_SND_SOC_IMG is not set
@@ -6316,6 +6358,18 @@ CONFIG_SND_SOC_HDMI_CODEC=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
CONFIG_SND_SOC_INTEL_AVS=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT274=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT286=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT298=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682=m
+CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567=m
CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH=m
CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH=m
CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m
@@ -6483,6 +6537,7 @@ CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE=m
CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y
CONFIG_SND_SOC_SOF_JASPERLAKE=m
CONFIG_SND_SOC_SOF_MERRIFIELD=m
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_MT8195 is not set
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
@@ -6506,6 +6561,7 @@ CONFIG_SND_SOC_SSM4567=m
CONFIG_SND_SOC_TAS2562=m
CONFIG_SND_SOC_TAS2764=m
CONFIG_SND_SOC_TAS2770=m
+CONFIG_SND_SOC_TAS2780=m
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -6585,6 +6641,7 @@ CONFIG_SND_SOC_WM8940=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA883X=m
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -6676,7 +6733,6 @@ CONFIG_SPI_AX88796C=m
# CONFIG_SPI_CADENCE_XSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
@@ -6687,6 +6743,7 @@ CONFIG_SPI_FSL_LPSPI=m
# CONFIG_SPI_LOOPBACK_TEST is not set
CONFIG_SPI_MASTER=y
# CONFIG_SPI_MEM is not set
+CONFIG_SPI_MICROCHIP_CORE=m
CONFIG_SPI_MUX=m
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6786,8 +6843,10 @@ CONFIG_SURFACE_ACPI_NOTIFY=m
CONFIG_SURFACE_AGGREGATOR_BUS=y
CONFIG_SURFACE_AGGREGATOR_CDEV=m
# CONFIG_SURFACE_AGGREGATOR_ERROR_INJECTION is not set
+CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_AGGREGATOR=m
CONFIG_SURFACE_AGGREGATOR_REGISTRY=m
+CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
CONFIG_SURFACE_DTX=m
CONFIG_SURFACE_GPE=m
CONFIG_SURFACE_HID=m
@@ -6849,6 +6908,7 @@ CONFIG_TCG_NSC=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_CR50=m
CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_TIS_SPI_CR50=y
CONFIG_TCG_TIS_SPI=m
@@ -6895,6 +6955,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6921,7 +6982,7 @@ CONFIG_TEST_KSTRTOX=y
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -7102,6 +7163,7 @@ CONFIG_TPM_KEY_PARSER=m
CONFIG_TQMX86_WDT=m
CONFIG_TRACE_EVAL_MAP_FILE=y
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -7129,6 +7191,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+CONFIG_TXGBE=m
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
@@ -7162,6 +7226,7 @@ CONFIG_UBIFS_FS_XATTR=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_CCG=m
+CONFIG_UCSI_STM32G0=m
CONFIG_UDF_FS=m
CONFIG_UDMABUF=y
# CONFIG_UEVENT_HELPER is not set
@@ -7197,6 +7262,7 @@ CONFIG_UPROBE_EVENTS=y
# CONFIG_US5182D is not set
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+# CONFIG_USB4_KUNIT_TEST is not set
CONFIG_USB4=m
CONFIG_USB4_NET=m
CONFIG_USB_ACM=m
@@ -7392,6 +7458,7 @@ CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
# CONFIG_USB_OHCI_HCD_SSB is not set
CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_ONBOARD_HUB=m
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_OTG is not set
@@ -7546,6 +7613,7 @@ CONFIG_VCHIQ_CDEV=y
CONFIG_VCNL3020=m
# CONFIG_VCNL4000 is not set
CONFIG_VCNL4035=m
+CONFIG_VCPU_STALL_DETECTOR=m
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -7582,6 +7650,7 @@ CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_ADP1653=m
# CONFIG_VIDEO_ADV_DEBUG is not set
CONFIG_VIDEO_AK7375=m
+CONFIG_VIDEO_AR0521=m
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -7719,6 +7788,7 @@ CONFIG_VIDEO_SOLO6X10=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+# CONFIG_VIDEO_STKWEBCAM is not set
CONFIG_VIDEO_STM32_DMA2D=m
# CONFIG_VIDEO_TEGRA_TPG is not set
CONFIG_VIDEO_TM6000_ALSA=m
@@ -7991,7 +8061,7 @@ CONFIG_XEN_SCSI_FRONTEND=m
CONFIG_XEN_SYMS=y
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_XEN_UNPOPULATED_ALLOC=y
-CONFIG_XEN_VIRTIO_FORCE_GRANT=y
+# CONFIG_XEN_VIRTIO_FORCE_GRANT is not set
CONFIG_XEN_VIRTIO=y
CONFIG_XEN_WDT=m
CONFIG_XEN=y
@@ -8091,8 +8161,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/kernel-x86_64-rhel.config b/SOURCES/kernel-x86_64-rhel.config
index d04da29..82301f6 100644
--- a/SOURCES/kernel-x86_64-rhel.config
+++ b/SOURCES/kernel-x86_64-rhel.config
@@ -11,6 +11,7 @@ CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_A11Y_BRAILLE_CONSOLE is not set
+# CONFIG_A64FX_DIAG is not set
# CONFIG_ABP060MG is not set
CONFIG_ACCESSIBILITY=y
# CONFIG_ACERHDF is not set
@@ -18,7 +19,6 @@ CONFIG_ACER_WIRELESS=m
CONFIG_ACER_WMI=m
# CONFIG_ACORN_PARTITION is not set
CONFIG_ACPI_AC=y
-CONFIG_ACPI_AGDI=y
# CONFIG_ACPI_ALS is not set
CONFIG_ACPI_APEI_EINJ=m
# CONFIG_ACPI_APEI_ERST_DEBUG is not set
@@ -220,7 +220,7 @@ CONFIG_AMD_XGBE=m
# CONFIG_AMIGA_PARTITION is not set
CONFIG_AMILO_RFKILL=m
# CONFIG_AMT is not set
-# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_APDS9300 is not set
CONFIG_APDS9802ALS=m
@@ -237,6 +237,7 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
+# CONFIG_ARCH_BCMBCA is not set
# CONFIG_ARCH_BITMAIN is not set
# CONFIG_ARCH_KEEMBAY is not set
# CONFIG_ARCH_LG1K is not set
@@ -244,6 +245,7 @@ CONFIG_AQUANTIA_PHY=m
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MVEBU is not set
# CONFIG_ARCH_MXC is not set
+# CONFIG_ARCH_NPCM is not set
CONFIG_ARCH_RANDOM=y
# CONFIG_ARCH_REALTEK is not set
# CONFIG_ARCH_S32 is not set
@@ -266,13 +268,15 @@ CONFIG_ARM64_ERRATUM_2119858=y
CONFIG_ARM64_ERRATUM_2139208=y
CONFIG_ARM64_ERRATUM_2224489=y
CONFIG_ARM64_ERRATUM_2253138=y
-CONFIG_ARM64_SME=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_USE_LSE_ATOMICS=y
CONFIG_ARM_CMN=m
# CONFIG_ARM_MHU_V2 is not set
-CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# CONFIG_ARM_SCMI_TRANSPORT_MAILBOX is not set
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
CONFIG_ARM_SMCCC_SOC_ID=y
# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
@@ -424,7 +428,7 @@ CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=m
CONFIG_BINFMT_SCRIPT=y
CONFIG_BITFIELD_KUNIT=m
-# CONFIG_BITS_TEST is not set
+CONFIG_BITS_TEST=m
CONFIG_BLK_CGROUP_FC_APPID=y
# CONFIG_BLK_CGROUP_IOCOST is not set
CONFIG_BLK_CGROUP_IOLATENCY=y
@@ -459,6 +463,7 @@ CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_UBLK is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_ZONED=y
# CONFIG_BLK_INLINE_ENCRYPTION is not set
@@ -603,6 +608,7 @@ CONFIG_CACHEFILES=m
CONFIG_CAN_8DEV_USB=m
CONFIG_CAN_BCM=m
CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_CAN327 is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CTUCANFD_PCI is not set
@@ -611,6 +617,7 @@ CONFIG_CAN_CALC_BITTIMING=y
CONFIG_CAN_DEV=m
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
+# CONFIG_CAN_ESD_USB is not set
# CONFIG_CAN_ETAS_ES58X is not set
# CONFIG_CAN_FLEXCAN is not set
# CONFIG_CAN_GRCAN is not set
@@ -631,6 +638,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_MCP251XFD=m
# CONFIG_CAN_MCP251XFD_SANITY is not set
CONFIG_CAN_MCP251X=m
+CONFIG_CAN_NETLINK=y
CONFIG_CAN_PEAK_PCIEFD=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_RAW=m
@@ -673,6 +681,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_CGROUP_CPUACCT=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_DEVICE=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CGROUP_MISC=y
@@ -808,7 +817,7 @@ CONFIG_CONNECTOR=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_CONTEXT_SWITCH_TRACER=y
-# CONFIG_CONTEXT_TRACKING_FORCE is not set
+# CONFIG_CONTEXT_TRACKING_USER_FORCE is not set
CONFIG_CORDIC=m
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
# CONFIG_CORESIGHT_CPU_DEBUG_DEFAULT_ON is not set
@@ -841,6 +850,7 @@ CONFIG_CPU_IDLE_GOV_MENU=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_ISOLATION=y
CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPUMASK_KUNIT_TEST=m
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
@@ -875,6 +885,7 @@ CONFIG_CRYPTO_AES_NI_INTEL=y
# CONFIG_CRYPTO_AES_TI is not set
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_ANSI_CPRNG=m
+# CONFIG_CRYPTO_ARIA is not set
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_BLAKE2B=m
# CONFIG_CRYPTO_BLAKE2S is not set
@@ -942,7 +953,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_DEV_VIRTIO is not set
-# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_DH_RFC7919_GROUPS=y
CONFIG_CRYPTO_DH=y
CONFIG_CRYPTO_DRBG_CTR=y
CONFIG_CRYPTO_DRBG_HASH=y
@@ -962,6 +973,7 @@ CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
CONFIG_CRYPTO_GHASH=y
+# CONFIG_CRYPTO_HCTR2 is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_KEYWRAP is not set
@@ -988,6 +1000,8 @@ CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_POLY1305_X86_64=y
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+# CONFIG_CRYPTO_POLYVAL_CLMUL_NI is not set
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_SEQIV=y
@@ -1050,6 +1064,7 @@ CONFIG_CXL_PMEM=m
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
CONFIG_DAMON_DBGFS=y
+# CONFIG_DAMON_LRU_SORT is not set
CONFIG_DAMON_PADDR=y
CONFIG_DAMON_RECLAIM=y
CONFIG_DAMON_SYSFS=y
@@ -1178,8 +1193,8 @@ CONFIG_DIMLIB=y
CONFIG_DL2K=m
# CONFIG_DLHL60D is not set
CONFIG_DLM_DEBUG=y
+# CONFIG_DLM_DEPRECATED_API is not set
CONFIG_DLM=m
-CONFIG_DLN2_ADC=m
# CONFIG_DM9051 is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_DMA_API_DEBUG_SG is not set
@@ -1234,6 +1249,7 @@ CONFIG_DM_UEVENT=y
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_VERITY_FEC=y
CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y
CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
CONFIG_DM_WRITECACHE=m
CONFIG_DM_ZERO=m
@@ -1300,12 +1316,14 @@ CONFIG_DRM_I915_GVT_KVMGT=m
CONFIG_DRM_I915_GVT=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_USERPTR=y
+# CONFIG_DRM_IMX_LCDIF is not set
# CONFIG_DRM_ITE_IT6505 is not set
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_KOMEDA is not set
# CONFIG_DRM_LEGACY is not set
# CONFIG_DRM_LIMA is not set
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+# CONFIG_DRM_LOGICVC is not set
# CONFIG_DRM_LONTIUM_LT8912B is not set
# CONFIG_DRM_LONTIUM_LT9211 is not set
# CONFIG_DRM_LONTIUM_LT9611 is not set
@@ -1364,6 +1382,7 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_SIMPLEDRM is not set
# CONFIG_DRM_SSD130X is not set
# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
# CONFIG_DRM_TIDSS is not set
# CONFIG_DRM_TI_SN65DSI83 is not set
# CONFIG_DRM_TI_SN65DSI86 is not set
@@ -1565,6 +1584,7 @@ CONFIG_ENCLOSURE_SERVICES=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_ENERGY_MODEL=y
CONFIG_ENIC=m
+# CONFIG_ENVELOPE_DETECTOR is not set
CONFIG_EPIC100=m
CONFIG_EPOLL=y
# CONFIG_EQUALIZER is not set
@@ -1803,7 +1823,6 @@ CONFIG_GPIO_AMDPT=m
# CONFIG_GPIO_BT8XX is not set
# CONFIG_GPIO_CADENCE is not set
CONFIG_GPIO_CDEV_V1=y
-CONFIG_GPIO_DLN2=m
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_F7188X is not set
@@ -1989,6 +2008,7 @@ CONFIG_HID_SUNPLUS=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_HID_TIVO=m
+CONFIG_HID_TOPRE=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_TWINHAN=m
# CONFIG_HID_U2FZERO is not set
@@ -2023,6 +2043,7 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
CONFIG_HMM_MIRROR=y
# CONFIG_HNS3 is not set
+# CONFIG_HNS3_PMU is not set
# CONFIG_HOLTEK_FF is not set
CONFIG_HOTPLUG_CPU=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
@@ -2043,6 +2064,7 @@ CONFIG_HP_ILO=m
CONFIG_HP_WATCHDOG=m
CONFIG_HPWDT_NMI_DECODING=y
CONFIG_HP_WMI=m
+CONFIG_HSA_AMD_P2P=y
CONFIG_HSA_AMD_SVM=y
CONFIG_HSA_AMD=y
# CONFIG_HSI is not set
@@ -2119,12 +2141,12 @@ CONFIG_I2C_DESIGNWARE_BAYTRAIL=y
CONFIG_I2C_DESIGNWARE_PLATFORM=m
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DIOLAN_U2C=m
-CONFIG_I2C_DLN2=m
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_HID_ACPI=m
+# CONFIG_I2C_HID_OF_ELAN is not set
# CONFIG_I2C_HID_OF_GOODIX is not set
# CONFIG_I2C_HID_OF is not set
# CONFIG_I2C_HISI is not set
@@ -2220,6 +2242,7 @@ CONFIG_IGC=m
# CONFIG_IIO_CONFIGFS is not set
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set
+CONFIG_IIO_FORMAT_KUNIT_TEST=m
# CONFIG_IIO_INTERRUPT_TRIGGER is not set
CONFIG_IIO=m
# CONFIG_IIO_MUX is not set
@@ -2286,6 +2309,7 @@ CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_BNXT_RE=m
CONFIG_INFINIBAND_CXGB4=m
CONFIG_INFINIBAND_EFA=m
+# CONFIG_INFINIBAND_ERDMA is not set
CONFIG_INFINIBAND_HFI1=m
# CONFIG_INFINIBAND_HNS is not set
CONFIG_INFINIBAND_IPOIB_CM=y
@@ -2376,6 +2400,7 @@ CONFIG_INPUT_YEALINK=m
CONFIG_INT340X_THERMAL=m
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
CONFIG_INTEGRITY_AUDIT=y
+CONFIG_INTEGRITY_MACHINE_KEYRING=y
CONFIG_INTEGRITY_PLATFORM_KEYRING=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_TRUSTED_KEYRING=y
@@ -2389,7 +2414,7 @@ CONFIG_INTEL_IDMA64=m
CONFIG_INTEL_IDXD=m
CONFIG_INTEL_IDXD_PERFMON=y
CONFIG_INTEL_IDXD_SVM=y
-# CONFIG_INTEL_IFS is not set
+CONFIG_INTEL_IFS=m
# CONFIG_INTEL_INT0002_VGPIO is not set
CONFIG_INTEL_IOATDMA=m
# CONFIG_INTEL_IOMMU_DEBUGFS is not set
@@ -2768,7 +2793,7 @@ CONFIG_KGDB=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_KPROBE_EVENTS=y
-# CONFIG_KPROBES_SANITY_TEST is not set
+CONFIG_KPROBES_SANITY_TEST=m
CONFIG_KPROBES=y
# CONFIG_KS7010 is not set
CONFIG_KSM=y
@@ -2779,6 +2804,8 @@ CONFIG_KUNIT=m
CONFIG_KUNIT_TEST=m
CONFIG_KVM_AMD=m
CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_BOOK3S_HV_P8_TIMING is not set
+# CONFIG_KVM_BOOK3S_HV_P9_TIMING is not set
CONFIG_KVM_GUEST=y
CONFIG_KVM_INTEL=m
CONFIG_KVM=m
@@ -3008,7 +3035,7 @@ CONFIG_MARVELL_PHY=m
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAX9611 is not set
# CONFIG_MAXIM_THERMOCOUPLE is not set
-# CONFIG_MAXLINEAR_GPHY is not set
+CONFIG_MAXLINEAR_GPHY=m
CONFIG_MAXSMP=y
# CONFIG_MB1232 is not set
# CONFIG_MC3230 is not set
@@ -3115,7 +3142,7 @@ CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
-CONFIG_MFD_DLN2=m
+# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_GATEWORKS_GSC is not set
# CONFIG_MFD_HI6421_PMIC is not set
# CONFIG_MFD_HI655X_PMIC is not set
@@ -3749,6 +3776,7 @@ CONFIG_NET_VENDOR_STMICRO=y
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XILINX is not set
CONFIG_NET_VRF=m
@@ -3789,6 +3817,7 @@ CONFIG_NF_FLOW_TABLE_INET=m
CONFIG_NF_FLOW_TABLE_IPV4=m
CONFIG_NF_FLOW_TABLE_IPV6=m
CONFIG_NF_FLOW_TABLE=m
+CONFIG_NF_FLOW_TABLE_PROCFS=y
# CONFIG_NFIT_SECURITY_DEBUG is not set
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
@@ -3880,6 +3909,7 @@ CONFIG_N_HDLC=m
# CONFIG_NIC7018_WDT is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NITRO_ENCLAVES=m
+CONFIG_NITRO_ENCLAVES_MISC_DEV_TEST=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_NLMON=m
CONFIG_NLS_ASCII=y
@@ -3971,6 +4001,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
# CONFIG_NVHE_EL2_DEBUG is not set
# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set
+CONFIG_NVME_AUTH=y
CONFIG_NVME_FC=m
# CONFIG_NVME_HWMON is not set
# CONFIG_NVMEM_REBOOT_MODE is not set
@@ -3979,6 +4010,7 @@ CONFIG_NVMEM_SYSFS=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVMEM=y
CONFIG_NVME_RDMA=m
+CONFIG_NVME_TARGET_AUTH=y
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
CONFIG_NVME_TARGET_LOOP=m
@@ -4219,6 +4251,7 @@ CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_LYNXPOINT is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_METEORLAKE is not set
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
# CONFIG_PINCTRL_MSM8226 is not set
# CONFIG_PINCTRL_MSM8976 is not set
@@ -4260,6 +4293,7 @@ CONFIG_PMIC_OPREGION=y
CONFIG_PM_STD_PARTITION=""
# CONFIG_PM_TEST_SUSPEND is not set
# CONFIG_PM_TRACE_RTC is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
# CONFIG_PMU_SYSFS is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
@@ -4270,6 +4304,7 @@ CONFIG_PNPACPI=y
CONFIG_PNP=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POWERCAP=y
+# CONFIG_POWER_MLXBF is not set
CONFIG_POWERNV_CPUFREQ=y
CONFIG_POWERNV_OP_PANEL=m
# CONFIG_POWER_RESET_BRCMSTB is not set
@@ -4367,6 +4402,7 @@ CONFIG_PVPANIC_MMIO=m
# CONFIG_PVPANIC_PCI is not set
CONFIG_PVPANIC=y
# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_DWC is not set
# CONFIG_PWM_FSL_FTM is not set
@@ -4391,6 +4427,7 @@ CONFIG_QCOM_FALKOR_ERRATUM_1009=y
# CONFIG_QCOM_GPI_DMA is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_ICC_BWMON is not set
# CONFIG_QCOM_IOMMU is not set
# CONFIG_QCOM_IPCC is not set
# CONFIG_QCOM_LMH is not set
@@ -4474,6 +4511,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_EQS_DEBUG is not set
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_EXPERT is not set
+# CONFIG_RCU_NOCB_CPU_DEFAULT_ALL is not set
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_REF_SCALE_TEST=m
CONFIG_RCU_SCALE_TEST=m
@@ -4548,7 +4586,8 @@ CONFIG_RESET_CONTROLLER=y
# CONFIG_RESET_INTEL_GW is not set
# CONFIG_RESET_QCOM_PDC is not set
# CONFIG_RESET_TI_SYSCON is not set
-# CONFIG_RESOURCE_KUNIT_TEST is not set
+# CONFIG_RESET_TI_TPS380X is not set
+CONFIG_RESOURCE_KUNIT_TEST=m
CONFIG_RETHUNK=y
CONFIG_RETPOLINE=y
# CONFIG_RFD77402 is not set
@@ -4556,8 +4595,6 @@ CONFIG_RETPOLINE=y
# CONFIG_RFKILL_GPIO is not set
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL=m
-CONFIG_RH_DISABLE_DEPRECATED=y
-CONFIG_RHEL_DIFFERENCES=y
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
@@ -4657,6 +4694,7 @@ CONFIG_RTC_DRV_MAX6900=m
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_DRV_MSM6242=m
+# CONFIG_RTC_DRV_NCT3018Y is not set
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
@@ -4731,6 +4769,7 @@ CONFIG_RTW89_8852AE=m
# CONFIG_RTW89_DEBUGMSG is not set
CONFIG_RTW89=m
CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_RV is not set
CONFIG_RXKAD=y
# CONFIG_S390_KPROBES_SANITY_TEST is not set
# CONFIG_S390_MODULES_SANITY_TEST is not set
@@ -4896,12 +4935,13 @@ CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SD_ADC_MODULATOR is not set
CONFIG_SDIO_UART=m
# CONFIG_SDMA_VERBOSITY is not set
# CONFIG_SDX_GCC_55 is not set
# CONFIG_SECCOMP_CACHE_DEBUG is not set
CONFIG_SECCOMP=y
-# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
@@ -5043,6 +5083,7 @@ CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
+# CONFIG_SENSORS_LT7182S is not set
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2947_I2C is not set
# CONFIG_SENSORS_LTC2947_SPI is not set
@@ -5163,7 +5204,6 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_XGENE is not set
CONFIG_SENSORS_ZL6100=m
# CONFIG_SERIAL_8250_16550A_VARIANTS is not set
-# CONFIG_SERIAL_8250_ASPEED_VUART is not set
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
@@ -5199,7 +5239,7 @@ CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_LANTIQ is not set
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
-# CONFIG_SERIAL_MULTI_INSTANTIATE is not set
+CONFIG_SERIAL_MULTI_INSTANTIATE=m
CONFIG_SERIAL_NONSTANDARD=y
# CONFIG_SERIAL_RP2 is not set
# CONFIG_SERIAL_SC16IS7XX is not set
@@ -5243,6 +5283,7 @@ CONFIG_SGI_GRU=m
CONFIG_SGI_PARTITION=y
CONFIG_SGI_XP=m
# CONFIG_SHADOW_CALL_STACK is not set
+# CONFIG_SHRINKER_DEBUG is not set
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
# CONFIG_SI1133 is not set
# CONFIG_SI1145 is not set
@@ -5313,6 +5354,8 @@ CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
# CONFIG_SND_CS5530 is not set
# CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_CTL_VALIDATION is not set
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
@@ -5475,6 +5518,7 @@ CONFIG_SND_SOC_AMD_ACP6x=m
# CONFIG_SND_SOC_AMD_CZ_RT5645_MACH is not set
CONFIG_SND_SOC_AMD_RENOIR=m
CONFIG_SND_SOC_AMD_RENOIR_MACH=m
+# CONFIG_SND_SOC_AMD_RPL_ACP6x is not set
CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m
CONFIG_SND_SOC_AMD_VANGOGH_MACH=m
CONFIG_SND_SOC_AMD_YC_MACH=m
@@ -5550,6 +5594,18 @@ CONFIG_SND_SOC_HDAC_HDMI=m
# CONFIG_SND_SOC_IMX_SPDIF is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
CONFIG_SND_SOC_INTEL_AVS=m
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DA7219 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_DMIC is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_HDAUDIO is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_I2S_TEST is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98357A is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_MAX98373 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_NAU8825 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT274 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT286 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT298 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_RT5682 is not set
+# CONFIG_SND_SOC_INTEL_AVS_MACH_SSM4567 is not set
CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH=m
CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH=m
CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m
@@ -5716,6 +5772,7 @@ CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE=m
CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y
CONFIG_SND_SOC_SOF_JASPERLAKE=m
CONFIG_SND_SOC_SOF_MERRIFIELD=m
+CONFIG_SND_SOC_SOF_METEORLAKE=m
# CONFIG_SND_SOC_SOF_OF is not set
CONFIG_SND_SOC_SOF_PCI=m
CONFIG_SND_SOC_SOF_TIGERLAKE=m
@@ -5738,6 +5795,7 @@ CONFIG_SND_SOC_SSM4567=m
# CONFIG_SND_SOC_TAS2562 is not set
# CONFIG_SND_SOC_TAS2764 is not set
# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
@@ -5817,6 +5875,7 @@ CONFIG_SND_SOC_WM8804=m
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
# CONFIG_SND_SOC_XILINX_I2S is not set
# CONFIG_SND_SOC_XILINX_SPDIF is not set
@@ -5904,7 +5963,6 @@ CONFIG_SPI_AMD=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DEBUG is not set
# CONFIG_SPI_DESIGNWARE is not set
-CONFIG_SPI_DLN2=m
# CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_HISI_KUNPENG is not set
@@ -5913,6 +5971,7 @@ CONFIG_SPI_DLN2=m
# CONFIG_SPI_LM70_LLP is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_MEM is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MUX is not set
# CONFIG_SPI_MXIC is not set
# CONFIG_SPI_NXP_FLEXSPI is not set
@@ -6016,7 +6075,7 @@ CONFIG_SYN_COOKIES=y
# CONFIG_SYSCON_REBOOT_MODE is not set
CONFIG_SYSCTL_KUNIT_TEST=m
CONFIG_SYSCTL=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_SYSTEM76_ACPI is not set
CONFIG_SYSTEM_BLACKLIST_AUTH_UPDATE=y
@@ -6050,7 +6109,9 @@ CONFIG_TCG_CRB=y
CONFIG_TCG_TIS_I2C_CR50=m
# CONFIG_TCG_TIS_I2C_INFINEON is not set
CONFIG_TCG_TIS_I2C_NUVOTON=m
-# CONFIG_TCG_TIS_SPI is not set
+CONFIG_TCG_TIS_I2C=y
+# CONFIG_TCG_TIS_SPI_CR50 is not set
+CONFIG_TCG_TIS_SPI=y
# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
CONFIG_TCG_TIS=y
@@ -6085,6 +6146,7 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3472 is not set
CONFIG_TEE=m
# CONFIG_TEGRA186_GPC_DMA is not set
+# CONFIG_TEGRA186_TIMER is not set
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
@@ -6093,6 +6155,7 @@ CONFIG_TERANETICS_PHY=m
# CONFIG_TEST_BLACKHOLE_DEV is not set
CONFIG_TEST_BPF=m
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
+CONFIG_TEST_CPUMASK=m
# CONFIG_TEST_DIV64 is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_FPU is not set
@@ -6119,7 +6182,7 @@ CONFIG_TEST_LIVEPATCH=m
# CONFIG_TEST_RHASHTABLE is not set
# CONFIG_TEST_SCANF is not set
# CONFIG_TEST_SIPHASH is not set
-# CONFIG_TEST_SORT is not set
+CONFIG_TEST_SORT=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_STATIC_KEYS is not set
# CONFIG_TEST_STRING_HELPERS is not set
@@ -6292,6 +6355,7 @@ CONFIG_TOUCHSCREEN_WACOM_W8001=m
# CONFIG_TQMX86_WDT is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACER_SNAPSHOT=y
@@ -6314,6 +6378,8 @@ CONFIG_TUN=m
# CONFIG_TUN_VNET_CROSS_LE is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
+# CONFIG_TXGBE is not set
+# CONFIG_TYPEC_ANX7411 is not set
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_FUSB302=m
# CONFIG_TYPEC_HD3SS3220 is not set
@@ -6340,6 +6406,7 @@ CONFIG_UAPI_HEADER_TEST=y
# CONFIG_UCLAMP_TASK is not set
CONFIG_UCSI_ACPI=y
# CONFIG_UCSI_CCG is not set
+# CONFIG_UCSI_STM32G0 is not set
CONFIG_UDF_FS=m
# CONFIG_UDMABUF is not set
# CONFIG_UEVENT_HELPER is not set
@@ -6523,6 +6590,7 @@ CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_OHCI_HCD_PCI=y
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_OHCI_HCD=y
+# CONFIG_USB_ONBOARD_HUB is not set
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OXU210HP_HCD is not set
@@ -6664,6 +6732,7 @@ CONFIG_UV_SYSFS=m
# CONFIG_VCNL3020 is not set
# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
CONFIG_VDPA=m
CONFIG_VDPA_SIM_BLOCK=m
CONFIG_VDPA_SIM=m
@@ -6672,6 +6741,7 @@ CONFIG_VDPA_SIM_NET=m
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
CONFIG_VETH=m
+# CONFIG_VF610_ADC is not set
# CONFIG_VF610_DAC is not set
CONFIG_VFAT_FS=m
CONFIG_VFIO_IOMMU_TYPE1=m
@@ -6696,6 +6766,7 @@ CONFIG_VHOST_VSOCK=m
# CONFIG_VIDEO_ADP1653 is not set
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_AK7375 is not set
+# CONFIG_VIDEO_AR0521 is not set
CONFIG_VIDEO_AU0828=m
# CONFIG_VIDEO_AU0828_RC is not set
CONFIG_VIDEO_AU0828_V4L2=y
@@ -6740,6 +6811,7 @@ CONFIG_VIDEO_HDPVR=m
# CONFIG_VIDEO_HI556 is not set
# CONFIG_VIDEO_HI846 is not set
# CONFIG_VIDEO_HI847 is not set
+# CONFIG_VIDEO_IMX208 is not set
# CONFIG_VIDEO_IMX214 is not set
# CONFIG_VIDEO_IMX219 is not set
# CONFIG_VIDEO_IMX258 is not set
@@ -7114,8 +7186,6 @@ CONFIG_ZENIFY=y
CONFIG_STEAMDECK=y
# Microsoft Surface
CONFIG_MISC_IPTS=m
-CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH=m
-CONFIG_SURFACE_AGGREGATOR_HUB=m
CONFIG_SURFACE_BOOK1_DGPU_SWITCH=y
CONFIG_VIDEO_DW9719=m
diff --git a/SOURCES/linux-surface.patch b/SOURCES/linux-surface.patch
index 5ce705e..64a1d73 100644
--- a/SOURCES/linux-surface.patch
+++ b/SOURCES/linux-surface.patch
@@ -1,4 +1,4 @@
-From 15edbfd10d016c0003cccf20365043ab8dd7ed77 Mon Sep 17 00:00:00 2001
+From cf081f3ccc47f650f1fa8c2f0a35bacf5b177766 Mon Sep 17 00:00:00 2001
From: Tsuchiya Yuto <kitakar@gmail.com>
Date: Sun, 18 Oct 2020 16:42:44 +0900
Subject: [PATCH] (surface3-oemb) add DMI matches for Surface 3 with broken DMI
@@ -58,10 +58,10 @@ index ca4602bcc7de..490b9731068a 100644
{ }
};
diff --git a/sound/soc/codecs/rt5645.c b/sound/soc/codecs/rt5645.c
-index 507aba8de3cc..1f8570e04083 100644
+index 8635bc6567dc..436c9ef78cca 100644
--- a/sound/soc/codecs/rt5645.c
+++ b/sound/soc/codecs/rt5645.c
-@@ -3718,6 +3718,15 @@ static const struct dmi_system_id dmi_platform_data[] = {
+@@ -3717,6 +3717,15 @@ static const struct dmi_system_id dmi_platform_data[] = {
},
.driver_data = (void *)&intel_braswell_platform_data,
},
@@ -97,9 +97,9 @@ index 6beb00858c33..d82d77387a0a 100644
};
--
-2.37.3
+2.38.0
-From 09e192fcba3cb0f58014cbc37bbd24fdf0a0f6c7 Mon Sep 17 00:00:00 2001
+From 7877f4ebb43da4625e635c5f1ce491422a50a05a Mon Sep 17 00:00:00 2001
From: Tsuchiya Yuto <kitakar@gmail.com>
Date: Tue, 29 Sep 2020 17:32:22 +0900
Subject: [PATCH] mwifiex: pcie: add reset_wsid quirk for Surface 3
@@ -129,10 +129,10 @@ Patchset: mwifiex
3 files changed, 99 insertions(+)
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c
-index d5fb29400bad..033648526f16 100644
+index f7f9277602a5..56ae323ca3b5 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie.c
-@@ -2993,6 +2993,16 @@ static void mwifiex_pcie_card_reset_work(struct mwifiex_adapter *adapter)
+@@ -2981,6 +2981,16 @@ static void mwifiex_pcie_card_reset_work(struct mwifiex_adapter *adapter)
{
struct pcie_service_card *card = adapter->card;
@@ -150,12 +150,12 @@ index d5fb29400bad..033648526f16 100644
* can't grab the device lock, maybe we'll get another chance later.
*/
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-index 0234cf3c2974..563dd0d5ac79 100644
+index dd6d21f1dbfd..2175358dc65d 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-@@ -15,10 +15,21 @@
- * this warranty disclaimer.
- */
+@@ -1,10 +1,21 @@
+ // SPDX-License-Identifier: GPL-2.0-only
+ // NXP Wireless LAN device driver: PCIE and platform specific quirks
+#include <linux/acpi.h>
#include <linux/dmi.h>
@@ -175,7 +175,7 @@ index 0234cf3c2974..563dd0d5ac79 100644
/* quirk table based on DMI matching */
static const struct dmi_system_id mwifiex_quirk_table[] = {
{
-@@ -87,6 +98,14 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -73,6 +84,14 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
},
.driver_data = (void *)QUIRK_FW_RST_D3COLD,
},
@@ -190,7 +190,7 @@ index 0234cf3c2974..563dd0d5ac79 100644
{}
};
-@@ -103,6 +122,9 @@ void mwifiex_initialize_quirks(struct pcie_service_card *card)
+@@ -89,6 +108,9 @@ void mwifiex_initialize_quirks(struct pcie_service_card *card)
dev_info(&pdev->dev, "no quirks enabled\n");
if (card->quirks & QUIRK_FW_RST_D3COLD)
dev_info(&pdev->dev, "quirk reset_d3cold enabled\n");
@@ -200,7 +200,7 @@ index 0234cf3c2974..563dd0d5ac79 100644
}
static void mwifiex_pcie_set_power_d3cold(struct pci_dev *pdev)
-@@ -159,3 +181,64 @@ int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev)
+@@ -145,3 +167,64 @@ int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev)
return 0;
}
@@ -266,10 +266,10 @@ index 0234cf3c2974..563dd0d5ac79 100644
+ return 0;
+}
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
-index 8ec4176d698f..25370c5a4f59 100644
+index d6ff964aec5b..40c95ab24bd7 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
+++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
-@@ -19,5 +19,11 @@
+@@ -5,5 +5,11 @@
#define QUIRK_FW_RST_D3COLD BIT(0)
@@ -282,9 +282,9 @@ index 8ec4176d698f..25370c5a4f59 100644
int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev);
+int mwifiex_pcie_reset_wsid_quirk(struct pci_dev *pdev);
--
-2.37.3
+2.38.0
-From 7d7aa81c79552938fcab366108fd6cea0d4e1391 Mon Sep 17 00:00:00 2001
+From a752cce0b4ff03b78c53f4f9889a707bf706f9bc Mon Sep 17 00:00:00 2001
From: Tsuchiya Yuto <kitakar@gmail.com>
Date: Wed, 30 Sep 2020 18:08:24 +0900
Subject: [PATCH] mwifiex: pcie: (OEMB) add quirk for Surface 3 with broken DMI
@@ -324,10 +324,10 @@ Patchset: mwifiex
1 file changed, 9 insertions(+)
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-index 563dd0d5ac79..32e2f000e57b 100644
+index 2175358dc65d..aec48547a88a 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-@@ -106,6 +106,15 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -92,6 +92,15 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
},
.driver_data = (void *)QUIRK_FW_RST_WSID_S3,
},
@@ -344,9 +344,9 @@ index 563dd0d5ac79..32e2f000e57b 100644
};
--
-2.37.3
+2.38.0
-From eac54025ccde2f859610996f4eff5c140551cc02 Mon Sep 17 00:00:00 2001
+From e651da0b596b34da881f2eddb924a36cb31f8ec0 Mon Sep 17 00:00:00 2001
From: Tsuchiya Yuto <kitakar@gmail.com>
Date: Sun, 4 Oct 2020 00:11:49 +0900
Subject: [PATCH] mwifiex: pcie: disable bridge_d3 for Surface gen4+
@@ -368,10 +368,10 @@ Patchset: mwifiex
3 files changed, 27 insertions(+), 8 deletions(-)
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c
-index 033648526f16..ca6bcbe4794c 100644
+index 56ae323ca3b5..3b9a1d97f16e 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie.c
-@@ -380,6 +380,7 @@ static int mwifiex_pcie_probe(struct pci_dev *pdev,
+@@ -368,6 +368,7 @@ static int mwifiex_pcie_probe(struct pci_dev *pdev,
const struct pci_device_id *ent)
{
struct pcie_service_card *card;
@@ -379,7 +379,7 @@ index 033648526f16..ca6bcbe4794c 100644
int ret;
pr_debug("info: vendor=0x%4.04X device=0x%4.04X rev=%d\n",
-@@ -421,6 +422,12 @@ static int mwifiex_pcie_probe(struct pci_dev *pdev,
+@@ -409,6 +410,12 @@ static int mwifiex_pcie_probe(struct pci_dev *pdev,
return -1;
}
@@ -393,10 +393,10 @@ index 033648526f16..ca6bcbe4794c 100644
}
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-index 32e2f000e57b..356401bab59c 100644
+index aec48547a88a..842980db998f 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-@@ -38,7 +38,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -24,7 +24,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Pro 4"),
},
@@ -406,7 +406,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface Pro 5",
-@@ -47,7 +48,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -33,7 +34,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "Surface_Pro_1796"),
},
@@ -416,7 +416,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface Pro 5 (LTE)",
-@@ -56,7 +58,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -42,7 +44,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "Surface_Pro_1807"),
},
@@ -426,7 +426,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface Pro 6",
-@@ -64,7 +67,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -50,7 +53,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Pro 6"),
},
@@ -436,7 +436,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface Book 1",
-@@ -72,7 +76,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -58,7 +62,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Book"),
},
@@ -446,7 +446,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface Book 2",
-@@ -80,7 +85,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -66,7 +71,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Book 2"),
},
@@ -456,7 +456,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface Laptop 1",
-@@ -88,7 +94,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -74,7 +80,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Laptop"),
},
@@ -466,7 +466,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface Laptop 2",
-@@ -96,7 +103,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -82,7 +89,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Laptop 2"),
},
@@ -476,7 +476,7 @@ index 32e2f000e57b..356401bab59c 100644
},
{
.ident = "Surface 3",
-@@ -134,6 +142,9 @@ void mwifiex_initialize_quirks(struct pcie_service_card *card)
+@@ -120,6 +128,9 @@ void mwifiex_initialize_quirks(struct pcie_service_card *card)
if (card->quirks & QUIRK_FW_RST_WSID_S3)
dev_info(&pdev->dev,
"quirk reset_wsid for Surface 3 enabled\n");
@@ -487,10 +487,10 @@ index 32e2f000e57b..356401bab59c 100644
static void mwifiex_pcie_set_power_d3cold(struct pci_dev *pdev)
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
-index 25370c5a4f59..a1de111ad1db 100644
+index 40c95ab24bd7..0162eee0ee3c 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
+++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
-@@ -23,6 +23,7 @@
+@@ -9,6 +9,7 @@
* be handled differently. Currently, only S3 is supported.
*/
#define QUIRK_FW_RST_WSID_S3 BIT(1)
@@ -499,9 +499,9 @@ index 25370c5a4f59..a1de111ad1db 100644
void mwifiex_initialize_quirks(struct pcie_service_card *card);
int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev);
--
-2.37.3
+2.38.0
-From 009a7560924e5e43ac5a196af1757cf38ae6644f Mon Sep 17 00:00:00 2001
+From 3bcb56b5f40e4b16ca8eab0b4548008982c93264 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20Dre=C3=9Fler?= <verdre@v0yd.nl>
Date: Tue, 3 Nov 2020 13:28:04 +0100
Subject: [PATCH] mwifiex: Add quirk resetting the PCI bridge on MS Surface
@@ -535,10 +535,10 @@ Patchset: mwifiex
3 files changed, 31 insertions(+), 8 deletions(-)
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c
-index ca6bcbe4794c..24bcd22a2618 100644
+index 3b9a1d97f16e..f2ced269b543 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie.c
-@@ -1781,9 +1781,21 @@ mwifiex_pcie_send_boot_cmd(struct mwifiex_adapter *adapter, struct sk_buff *skb)
+@@ -1769,9 +1769,21 @@ mwifiex_pcie_send_boot_cmd(struct mwifiex_adapter *adapter, struct sk_buff *skb)
static int mwifiex_pcie_init_fw_port(struct mwifiex_adapter *adapter)
{
struct pcie_service_card *card = adapter->card;
@@ -561,10 +561,10 @@ index ca6bcbe4794c..24bcd22a2618 100644
if (mwifiex_write_reg(adapter, reg->rx_rdptr, card->rxbd_rdptr |
tx_wrap)) {
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-index 356401bab59c..6437f067d07a 100644
+index 842980db998f..dd914393ffcb 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.c
-@@ -39,7 +39,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -25,7 +25,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Pro 4"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -574,7 +574,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface Pro 5",
-@@ -49,7 +50,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -35,7 +36,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "Surface_Pro_1796"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -584,7 +584,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface Pro 5 (LTE)",
-@@ -59,7 +61,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -45,7 +47,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "Surface_Pro_1807"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -594,7 +594,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface Pro 6",
-@@ -68,7 +71,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -54,7 +57,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Pro 6"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -604,7 +604,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface Book 1",
-@@ -77,7 +81,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -63,7 +67,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Book"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -614,7 +614,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface Book 2",
-@@ -86,7 +91,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -72,7 +77,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Book 2"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -624,7 +624,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface Laptop 1",
-@@ -95,7 +101,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -81,7 +87,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Laptop"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -634,7 +634,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface Laptop 2",
-@@ -104,7 +111,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
+@@ -90,7 +97,8 @@ static const struct dmi_system_id mwifiex_quirk_table[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Surface Laptop 2"),
},
.driver_data = (void *)(QUIRK_FW_RST_D3COLD |
@@ -644,7 +644,7 @@ index 356401bab59c..6437f067d07a 100644
},
{
.ident = "Surface 3",
-@@ -145,6 +153,8 @@ void mwifiex_initialize_quirks(struct pcie_service_card *card)
+@@ -131,6 +139,8 @@ void mwifiex_initialize_quirks(struct pcie_service_card *card)
if (card->quirks & QUIRK_NO_BRIDGE_D3)
dev_info(&pdev->dev,
"quirk no_brigde_d3 enabled\n");
@@ -654,10 +654,10 @@ index 356401bab59c..6437f067d07a 100644
static void mwifiex_pcie_set_power_d3cold(struct pci_dev *pdev)
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
-index a1de111ad1db..0e429779bb04 100644
+index 0162eee0ee3c..1b7c1e63ac5d 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
+++ b/drivers/net/wireless/marvell/mwifiex/pcie_quirks.h
-@@ -24,6 +24,7 @@
+@@ -10,6 +10,7 @@
*/
#define QUIRK_FW_RST_WSID_S3 BIT(1)
#define QUIRK_NO_BRIDGE_D3 BIT(2)
@@ -666,9 +666,9 @@ index a1de111ad1db..0e429779bb04 100644
void mwifiex_initialize_quirks(struct pcie_service_card *card);
int mwifiex_pcie_reset_d3cold_quirk(struct pci_dev *pdev);
--
-2.37.3
+2.38.0
-From 65831ef257597e8460c5597705a4f9fab4e40ff1 Mon Sep 17 00:00:00 2001
+From 01adfefa9e7c14a7e77be36d3c5374d252b5de24 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20Dre=C3=9Fler?= <verdre@v0yd.nl>
Date: Thu, 25 Mar 2021 11:33:02 +0100
Subject: [PATCH] Bluetooth: btusb: Lower passive lescan interval on Marvell
@@ -704,7 +704,7 @@ Patchset: mwifiex
1 file changed, 15 insertions(+)
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
-index aaba2d737178..5d29e592cd34 100644
+index 1bb46cbff0fa..8aa8db5d4cde 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -63,6 +63,7 @@ static struct usb_driver btusb_driver;
@@ -723,7 +723,7 @@ index aaba2d737178..5d29e592cd34 100644
/* Intel Bluetooth devices */
{ USB_DEVICE(0x8087, 0x0025), .driver_info = BTUSB_INTEL_COMBINED },
-@@ -3803,6 +3805,19 @@ static int btusb_probe(struct usb_interface *intf,
+@@ -3842,6 +3844,19 @@ static int btusb_probe(struct usb_interface *intf,
if (id->driver_info & BTUSB_MARVELL)
hdev->set_bdaddr = btusb_set_bdaddr_marvell;
@@ -744,9 +744,9 @@ index aaba2d737178..5d29e592cd34 100644
(id->driver_info & BTUSB_MEDIATEK)) {
hdev->setup = btusb_mtk_setup;
--
-2.37.3
+2.38.0
-From c120646a78579db5f700103fc45631153885d055 Mon Sep 17 00:00:00 2001
+From c2ed6cb8f8ff11bb1571797542ae1f863024d2b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20Dre=C3=9Fler?= <verdre@v0yd.nl>
Date: Tue, 10 Nov 2020 12:49:56 +0100
Subject: [PATCH] mwifiex: Use non-posted PCI register writes
@@ -784,10 +784,10 @@ Patchset: mwifiex
1 file changed, 6 insertions(+)
diff --git a/drivers/net/wireless/marvell/mwifiex/pcie.c b/drivers/net/wireless/marvell/mwifiex/pcie.c
-index 24bcd22a2618..b4ad0113a035 100644
+index f2ced269b543..68f827d34b76 100644
--- a/drivers/net/wireless/marvell/mwifiex/pcie.c
+++ b/drivers/net/wireless/marvell/mwifiex/pcie.c
-@@ -238,6 +238,12 @@ static int mwifiex_write_reg(struct mwifiex_adapter *adapter, int reg, u32 data)
+@@ -226,6 +226,12 @@ static int mwifiex_write_reg(struct mwifiex_adapter *adapter, int reg, u32 data)
iowrite32(data, card->pci_mmap1 + reg);
@@ -801,9 +801,9 @@ index 24bcd22a2618..b4ad0113a035 100644
}
--
-2.37.3
+2.38.0
-From 8d94818d00f7a3703981bf10a7b915e906d71c05 Mon Sep 17 00:00:00 2001
+From 850913cd3d364fa006bbc63167ee8a044ac10444 Mon Sep 17 00:00:00 2001
From: Maximilian Luz <luzmaximilian@gmail.com>
Date: Sat, 27 Feb 2021 00:45:52 +0100
Subject: [PATCH] ath10k: Add module parameters to override board files
@@ -825,12 +825,12 @@ Patchset: ath10k
1 file changed, 58 insertions(+)
diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c
-index 688177453b07..e400a0318838 100644
+index d1ac64026cb3..5c883a12d9f8 100644
--- a/drivers/net/wireless/ath/ath10k/core.c
+++ b/drivers/net/wireless/ath/ath10k/core.c
-@@ -36,6 +36,9 @@ static bool skip_otp;
- static bool rawmode;
- static bool fw_diag_log;
+@@ -38,6 +38,9 @@ static bool fw_diag_log;
+ /* frame mode values are mapped as per enum ath10k_hw_txrx_mode */
+ unsigned int ath10k_frame_mode = ATH10K_HW_TXRX_NATIVE_WIFI;
+static char *override_board = "";
+static char *override_board2 = "";
@@ -838,8 +838,8 @@ index 688177453b07..e400a0318838 100644
unsigned long ath10k_coredump_mask = BIT(ATH10K_FW_CRASH_DUMP_REGISTERS) |
BIT(ATH10K_FW_CRASH_DUMP_CE_DATA);
-@@ -48,6 +51,9 @@ module_param(rawmode, bool, 0644);
- module_param(fw_diag_log, bool, 0644);
+@@ -50,6 +53,9 @@ module_param(fw_diag_log, bool, 0644);
+ module_param_named(frame_mode, ath10k_frame_mode, uint, 0644);
module_param_named(coredump_mask, ath10k_coredump_mask, ulong, 0444);
+module_param(override_board, charp, 0644);
@@ -848,7 +848,7 @@ index 688177453b07..e400a0318838 100644
MODULE_PARM_DESC(debug_mask, "Debugging mask");
MODULE_PARM_DESC(uart_print, "Uart target debugging");
MODULE_PARM_DESC(skip_otp, "Skip otp failure for calibration in testmode");
-@@ -56,6 +62,9 @@ MODULE_PARM_DESC(rawmode, "Use raw 802.11 frame datapath");
+@@ -59,6 +65,9 @@ MODULE_PARM_DESC(frame_mode,
MODULE_PARM_DESC(coredump_mask, "Bitfield of what to include in firmware crash file");
MODULE_PARM_DESC(fw_diag_log, "Diag based fw log debugging");
@@ -858,7 +858,7 @@ index 688177453b07..e400a0318838 100644
static const struct ath10k_hw_params ath10k_hw_params_list[] = {
{
.id = QCA988X_HW_2_0_VERSION,
-@@ -876,6 +885,42 @@ static int ath10k_init_configure_target(struct ath10k *ar)
+@@ -895,6 +904,42 @@ static int ath10k_init_configure_target(struct ath10k *ar)
return 0;
}
@@ -901,7 +901,7 @@ index 688177453b07..e400a0318838 100644
static const struct firmware *ath10k_fetch_fw_file(struct ath10k *ar,
const char *dir,
const char *file)
-@@ -890,6 +935,19 @@ static const struct firmware *ath10k_fetch_fw_file(struct ath10k *ar,
+@@ -909,6 +954,19 @@ static const struct firmware *ath10k_fetch_fw_file(struct ath10k *ar,
if (dir == NULL)
dir = ".";
@@ -922,9 +922,9 @@ index 688177453b07..e400a0318838 100644
ret = firmware_request_nowarn(&fw, filename, ar->dev);
ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot fw request '%s': %d\n",
--
-2.37.3
+2.38.0
-From 6b96d12b88e324b0f3a69b3c10a1b9e148269729 Mon Sep 17 00:00:00 2001
+From d6c7ff8753ac6460d826d755f1f3e6386105004e Mon Sep 17 00:00:00 2001
From: Dorian Stoll <dorian.stoll@tmsp.io>
Date: Thu, 30 Jul 2020 13:21:53 +0200
Subject: [PATCH] misc: mei: Add missing IPTS device IDs
@@ -960,9 +960,9 @@ index 5435604327a7..1165ee4f5928 100644
{MEI_PCI_DEVICE(MEI_DEV_ID_TGP_LP, MEI_ME_PCH15_CFG)},
--
-2.37.3
+2.38.0
-From 90a5b4768859cfa8beeedb10a3000eb17425171c Mon Sep 17 00:00:00 2001
+From 19a643df0c2269755fe50e53f2bda8bbf02382d4 Mon Sep 17 00:00:00 2001
From: Dorian Stoll <dorian.stoll@tmsp.io>
Date: Thu, 6 Aug 2020 11:20:41 +0200
Subject: [PATCH] misc: Add support for Intel Precise Touch & Stylus
@@ -973,7 +973,7 @@ Signed-off-by: Dorian Stoll <dorian.stoll@tmsp.io>
Patchset: ipts
---
drivers/misc/Kconfig | 1 +
- drivers/misc/Makefile | 1 +
+ drivers/misc/Makefile | 3 +-
drivers/misc/ipts/Kconfig | 17 ++
drivers/misc/ipts/Makefile | 12 ++
drivers/misc/ipts/context.h | 47 +++++
@@ -987,7 +987,7 @@ Patchset: ipts
drivers/misc/ipts/resources.h | 17 ++
drivers/misc/ipts/uapi.c | 208 ++++++++++++++++++++
drivers/misc/ipts/uapi.h | 47 +++++
- 15 files changed, 1327 insertions(+)
+ 15 files changed, 1328 insertions(+), 1 deletion(-)
create mode 100644 drivers/misc/ipts/Kconfig
create mode 100644 drivers/misc/ipts/Makefile
create mode 100644 drivers/misc/ipts/context.h
@@ -1003,23 +1003,26 @@ Patchset: ipts
create mode 100644 drivers/misc/ipts/uapi.h
diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
-index 41d2bb0ae23a..effb258d4848 100644
+index 94e9fb4cdd76..12230c71fcf3 100644
--- a/drivers/misc/Kconfig
+++ b/drivers/misc/Kconfig
-@@ -500,4 +500,5 @@ source "drivers/misc/cardreader/Kconfig"
+@@ -513,4 +513,5 @@ source "drivers/misc/cardreader/Kconfig"
source "drivers/misc/habanalabs/Kconfig"
source "drivers/misc/uacce/Kconfig"
source "drivers/misc/pvpanic/Kconfig"
+source "drivers/misc/ipts/Kconfig"
endmenu
diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
-index 70e800e9127f..a8d1e9447025 100644
+index 2be8542616dd..9e1a97b8c57e 100644
--- a/drivers/misc/Makefile
+++ b/drivers/misc/Makefile
-@@ -60,3 +60,4 @@ obj-$(CONFIG_XILINX_SDFEC) += xilinx_sdfec.o
+@@ -60,4 +60,5 @@ obj-$(CONFIG_XILINX_SDFEC) += xilinx_sdfec.o
obj-$(CONFIG_HISI_HIKEY_USB) += hisi_hikey_usb.o
obj-$(CONFIG_HI6421V600_IRQ) += hi6421v600-irq.o
obj-$(CONFIG_OPEN_DICE) += open-dice.o
+-obj-$(CONFIG_VCPU_STALL_DETECTOR) += vcpu_stall_detector.o
+\ No newline at end of file
++obj-$(CONFIG_VCPU_STALL_DETECTOR) += vcpu_stall_detector.o
+obj-$(CONFIG_MISC_IPTS) += ipts/
diff --git a/drivers/misc/ipts/Kconfig b/drivers/misc/ipts/Kconfig
new file mode 100644
@@ -2425,9 +2428,9 @@ index 000000000000..53fb86a88f97
+
+#endif /* _IPTS_UAPI_H_ */
--
-2.37.3
+2.38.0
-From 44d9467e52b85dfec0b7f18bae811813852b93ff Mon Sep 17 00:00:00 2001
+From 3f3b7b3bf8c60a9212c0cc2c2cf31d9ca763e1cd Mon Sep 17 00:00:00 2001
From: Liban Hannan <liban.p@gmail.com>
Date: Tue, 12 Apr 2022 23:31:12 +0100
Subject: [PATCH] iommu: ipts: use IOMMU passthrough mode for IPTS
@@ -2449,7 +2452,7 @@ Patchset: ipts
1 file changed, 24 insertions(+)
diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
-index 5c0dce78586a..825b524e81f3 100644
+index 31bc50e538a3..d8ecca292f93 100644
--- a/drivers/iommu/intel/iommu.c
+++ b/drivers/iommu/intel/iommu.c
@@ -37,6 +37,8 @@
@@ -2461,7 +2464,7 @@ index 5c0dce78586a..825b524e81f3 100644
#define IS_AZALIA(pdev) ((pdev)->vendor == 0x8086 && (pdev)->device == 0x3a3e)
#define IOAPIC_RANGE_START (0xfee00000)
-@@ -307,12 +309,14 @@ int intel_iommu_enabled = 0;
+@@ -281,12 +283,14 @@ int intel_iommu_enabled = 0;
EXPORT_SYMBOL_GPL(intel_iommu_enabled);
static int dmar_map_gfx = 1;
@@ -2474,9 +2477,9 @@ index 5c0dce78586a..825b524e81f3 100644
#define IDENTMAP_AZALIA 4
+#define IDENTMAP_IPTS 16
- int intel_iommu_gfx_mapped;
- EXPORT_SYMBOL_GPL(intel_iommu_gfx_mapped);
-@@ -2659,6 +2663,9 @@ static int device_def_domain_type(struct device *dev)
+ const struct iommu_ops intel_iommu_ops;
+
+@@ -2602,6 +2606,9 @@ static int device_def_domain_type(struct device *dev)
if ((iommu_identity_mapping & IDENTMAP_GFX) && IS_GFX_DEVICE(pdev))
return IOMMU_DOMAIN_IDENTITY;
@@ -2486,7 +2489,7 @@ index 5c0dce78586a..825b524e81f3 100644
}
return 0;
-@@ -3095,6 +3102,9 @@ static int __init init_dmars(void)
+@@ -2991,6 +2998,9 @@ static int __init init_dmars(void)
if (!dmar_map_gfx)
iommu_identity_mapping |= IDENTMAP_GFX;
@@ -2496,7 +2499,7 @@ index 5c0dce78586a..825b524e81f3 100644
check_tylersburg_isoch();
ret = si_domain_init(hw_pass_through);
-@@ -4923,6 +4933,17 @@ static void quirk_iommu_igfx(struct pci_dev *dev)
+@@ -4788,6 +4798,17 @@ static void quirk_iommu_igfx(struct pci_dev *dev)
dmar_map_gfx = 0;
}
@@ -2514,7 +2517,7 @@ index 5c0dce78586a..825b524e81f3 100644
/* G4x/GM45 integrated gfx dmar support is totally busted. */
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2a40, quirk_iommu_igfx);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2e00, quirk_iommu_igfx);
-@@ -4958,6 +4979,9 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1632, quirk_iommu_igfx);
+@@ -4823,6 +4844,9 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1632, quirk_iommu_igfx);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x163A, quirk_iommu_igfx);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x163D, quirk_iommu_igfx);
@@ -2525,4712 +2528,9 @@ index 5c0dce78586a..825b524e81f3 100644
{
if (risky_device(dev))
--
-2.37.3
-
-From 343924460b3a9020c8e118da7047eaae33043983 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:36 +0200
-Subject: [PATCH] platform/surface: aggregator: Allow is_ssam_device() to be
- used when CONFIG_SURFACE_AGGREGATOR_BUS is disabled
-
-In SSAM subsystem drivers that handle both ACPI and SSAM-native client
-devices, we may want to check whether we have a SSAM (native) client
-device. Further, we may want to do this even when instantiation thereof
-cannot happen due to CONFIG_SURFACE_AGGREGATOR_BUS=n. Currently, doing
-so causes an error due to an undefined reference error due to
-ssam_device_type being placed in the bus source unit.
-
-Therefore, if CONFIG_SURFACE_AGGREGATOR_BUS is not defined, simply let
-is_ssam_device() return false to prevent this error.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-2-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- include/linux/surface_aggregator/device.h | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
-diff --git a/include/linux/surface_aggregator/device.h b/include/linux/surface_aggregator/device.h
-index cc257097eb05..62b38b4487eb 100644
---- a/include/linux/surface_aggregator/device.h
-+++ b/include/linux/surface_aggregator/device.h
-@@ -177,6 +177,8 @@ struct ssam_device_driver {
- void (*remove)(struct ssam_device *sdev);
- };
-
-+#ifdef CONFIG_SURFACE_AGGREGATOR_BUS
-+
- extern struct bus_type ssam_bus_type;
- extern const struct device_type ssam_device_type;
-
-@@ -193,6 +195,15 @@ static inline bool is_ssam_device(struct device *d)
- return d->type == &ssam_device_type;
- }
-
-+#else /* CONFIG_SURFACE_AGGREGATOR_BUS */
-+
-+static inline bool is_ssam_device(struct device *d)
-+{
-+ return false;
-+}
-+
-+#endif /* CONFIG_SURFACE_AGGREGATOR_BUS */
-+
- /**
- * to_ssam_device() - Casts the given device to a SSAM client device.
- * @d: The device to cast.
---
-2.37.3
-
-From 81b69bf07ee898a7ad0f458e8310f322ac8606e1 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:37 +0200
-Subject: [PATCH] platform/surface: aggregator: Allow devices to be marked as
- hot-removed
-
-Some SSAM devices, notably the keyboard cover (keyboard and touchpad) on
-the Surface Pro 8, can be hot-removed. When this occurs, communication
-with the device may fail and time out. This timeout can unnecessarily
-block and slow down device removal and even cause issues when the
-devices are detached and re-attached quickly. Thus, communication should
-generally be avoided once hot-removal is detected.
-
-While we already remove a device as soon as we detect its (hot-)removal,
-the corresponding device driver may still attempt to communicate with
-the device during teardown. This is especially critical as communication
-failure may also extend to disabling of events, which is typically done
-at that stage.
-
-Add a flag to allow marking devices as hot-removed. This can then be
-used during client driver teardown to check if any communication
-attempts should be avoided.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-3-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- include/linux/surface_aggregator/device.h | 48 +++++++++++++++++++++--
- 1 file changed, 45 insertions(+), 3 deletions(-)
-
-diff --git a/include/linux/surface_aggregator/device.h b/include/linux/surface_aggregator/device.h
-index 62b38b4487eb..6df7c8d4e50e 100644
---- a/include/linux/surface_aggregator/device.h
-+++ b/include/linux/surface_aggregator/device.h
-@@ -148,17 +148,30 @@ struct ssam_device_uid {
- #define SSAM_SDEV(cat, tid, iid, fun) \
- SSAM_DEVICE(SSAM_DOMAIN_SERIALHUB, SSAM_SSH_TC_##cat, tid, iid, fun)
-
-+/*
-+ * enum ssam_device_flags - Flags for SSAM client devices.
-+ * @SSAM_DEVICE_HOT_REMOVED_BIT:
-+ * The device has been hot-removed. Further communication with it may time
-+ * out and should be avoided.
-+ */
-+enum ssam_device_flags {
-+ SSAM_DEVICE_HOT_REMOVED_BIT = 0,
-+};
-+
- /**
- * struct ssam_device - SSAM client device.
-- * @dev: Driver model representation of the device.
-- * @ctrl: SSAM controller managing this device.
-- * @uid: UID identifying the device.
-+ * @dev: Driver model representation of the device.
-+ * @ctrl: SSAM controller managing this device.
-+ * @uid: UID identifying the device.
-+ * @flags: Device state flags, see &enum ssam_device_flags.
- */
- struct ssam_device {
- struct device dev;
- struct ssam_controller *ctrl;
-
- struct ssam_device_uid uid;
-+
-+ unsigned long flags;
- };
-
- /**
-@@ -251,6 +264,35 @@ struct ssam_device *ssam_device_alloc(struct ssam_controller *ctrl,
- int ssam_device_add(struct ssam_device *sdev);
- void ssam_device_remove(struct ssam_device *sdev);
-
-+/**
-+ * ssam_device_mark_hot_removed() - Mark the given device as hot-removed.
-+ * @sdev: The device to mark as hot-removed.
-+ *
-+ * Mark the device as having been hot-removed. This signals drivers using the
-+ * device that communication with the device should be avoided and may lead to
-+ * timeouts.
-+ */
-+static inline void ssam_device_mark_hot_removed(struct ssam_device *sdev)
-+{
-+ dev_dbg(&sdev->dev, "marking device as hot-removed\n");
-+ set_bit(SSAM_DEVICE_HOT_REMOVED_BIT, &sdev->flags);
-+}
-+
-+/**
-+ * ssam_device_is_hot_removed() - Check if the given device has been
-+ * hot-removed.
-+ * @sdev: The device to check.
-+ *
-+ * Checks if the given device has been marked as hot-removed. See
-+ * ssam_device_mark_hot_removed() for more details.
-+ *
-+ * Return: Returns ``true`` if the device has been marked as hot-removed.
-+ */
-+static inline bool ssam_device_is_hot_removed(struct ssam_device *sdev)
-+{
-+ return test_bit(SSAM_DEVICE_HOT_REMOVED_BIT, &sdev->flags);
-+}
-+
- /**
- * ssam_device_get() - Increment reference count of SSAM client device.
- * @sdev: The device to increment the reference count of.
---
-2.37.3
-
-From 8541ae8819b1d7461fc970542261345446e82b7e Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:38 +0200
-Subject: [PATCH] platform/surface: aggregator: Allow notifiers to avoid
- communication on unregistering
-
-When SSAM client devices have been (physically) hot-removed,
-communication attempts with those devices may fail and time out. This
-can even extend to event notifiers, due to which timeouts may occur
-during device removal, slowing down that process.
-
-Add a parameter to the notifier unregister function that allows skipping
-communication with the EC to prevent this. Furthermore, add wrappers for
-registering and unregistering notifiers belonging to SSAM client devices
-that automatically check if the device has been marked as hot-removed
-and communication should be avoided.
-
-Note that non-SSAM client devices can generally not be hot-removed, so
-also add a convenience wrapper for those, defaulting to allow
-communication.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-4-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- .../driver-api/surface_aggregator/client.rst | 6 +-
- .../platform/surface/aggregator/controller.c | 53 ++++++++++-----
- include/linux/surface_aggregator/controller.h | 24 ++++++-
- include/linux/surface_aggregator/device.h | 66 +++++++++++++++++++
- 4 files changed, 128 insertions(+), 21 deletions(-)
-
-diff --git a/Documentation/driver-api/surface_aggregator/client.rst b/Documentation/driver-api/surface_aggregator/client.rst
-index e519d374c378..27f95abdbe99 100644
---- a/Documentation/driver-api/surface_aggregator/client.rst
-+++ b/Documentation/driver-api/surface_aggregator/client.rst
-@@ -17,6 +17,8 @@
- .. |SSAM_DEVICE| replace:: :c:func:`SSAM_DEVICE`
- .. |ssam_notifier_register| replace:: :c:func:`ssam_notifier_register`
- .. |ssam_notifier_unregister| replace:: :c:func:`ssam_notifier_unregister`
-+.. |ssam_device_notifier_register| replace:: :c:func:`ssam_device_notifier_register`
-+.. |ssam_device_notifier_unregister| replace:: :c:func:`ssam_device_notifier_unregister`
- .. |ssam_request_sync| replace:: :c:func:`ssam_request_sync`
- .. |ssam_event_mask| replace:: :c:type:`enum ssam_event_mask <ssam_event_mask>`
-
-@@ -312,7 +314,9 @@ Handling Events
- To receive events from the SAM EC, an event notifier must be registered for
- the desired event via |ssam_notifier_register|. The notifier must be
- unregistered via |ssam_notifier_unregister| once it is not required any
--more.
-+more. For |ssam_device| type clients, the |ssam_device_notifier_register| and
-+|ssam_device_notifier_unregister| wrappers should be preferred as they properly
-+handle hot-removal of client devices.
-
- Event notifiers are registered by providing (at minimum) a callback to call
- in case an event has been received, the registry specifying how the event
-diff --git a/drivers/platform/surface/aggregator/controller.c b/drivers/platform/surface/aggregator/controller.c
-index b8c377b3f932..6de834b52b63 100644
---- a/drivers/platform/surface/aggregator/controller.c
-+++ b/drivers/platform/surface/aggregator/controller.c
-@@ -2199,16 +2199,26 @@ static int ssam_nf_refcount_enable(struct ssam_controller *ctrl,
- }
-
- /**
-- * ssam_nf_refcount_disable_free() - Disable event for reference count entry if it is
-- * no longer in use and free the corresponding entry.
-+ * ssam_nf_refcount_disable_free() - Disable event for reference count entry if
-+ * it is no longer in use and free the corresponding entry.
- * @ctrl: The controller to disable the event on.
- * @entry: The reference count entry for the event to be disabled.
- * @flags: The flags used for enabling the event on the EC.
-+ * @ec: Flag specifying if the event should actually be disabled on the EC.
- *
-- * If the reference count equals zero, i.e. the event is no longer requested by
-- * any client, the event will be disabled and the corresponding reference count
-- * entry freed. The reference count entry must not be used any more after a
-- * call to this function.
-+ * If ``ec`` equals ``true`` and the reference count equals zero (i.e. the
-+ * event is no longer requested by any client), the specified event will be
-+ * disabled on the EC via the corresponding request.
-+ *
-+ * If ``ec`` equals ``false``, no request will be sent to the EC and the event
-+ * can be considered in a detached state (i.e. no longer used but still
-+ * enabled). Disabling an event via this method may be required for
-+ * hot-removable devices, where event disable requests may time out after the
-+ * device has been physically removed.
-+ *
-+ * In both cases, if the reference count equals zero, the corresponding
-+ * reference count entry will be freed. The reference count entry must not be
-+ * used any more after a call to this function.
- *
- * Also checks if the flags used for disabling the event match the flags used
- * for enabling the event and warns if they do not (regardless of reference
-@@ -2223,7 +2233,7 @@ static int ssam_nf_refcount_enable(struct ssam_controller *ctrl,
- * returns the status of the event-enable EC command.
- */
- static int ssam_nf_refcount_disable_free(struct ssam_controller *ctrl,
-- struct ssam_nf_refcount_entry *entry, u8 flags)
-+ struct ssam_nf_refcount_entry *entry, u8 flags, bool ec)
- {
- const struct ssam_event_registry reg = entry->key.reg;
- const struct ssam_event_id id = entry->key.id;
-@@ -2232,8 +2242,9 @@ static int ssam_nf_refcount_disable_free(struct ssam_controller *ctrl,
-
- lockdep_assert_held(&nf->lock);
-
-- ssam_dbg(ctrl, "disabling event (reg: %#04x, tc: %#04x, iid: %#04x, rc: %d)\n",
-- reg.target_category, id.target_category, id.instance, entry->refcount);
-+ ssam_dbg(ctrl, "%s event (reg: %#04x, tc: %#04x, iid: %#04x, rc: %d)\n",
-+ ec ? "disabling" : "detaching", reg.target_category, id.target_category,
-+ id.instance, entry->refcount);
-
- if (entry->flags != flags) {
- ssam_warn(ctrl,
-@@ -2242,7 +2253,7 @@ static int ssam_nf_refcount_disable_free(struct ssam_controller *ctrl,
- id.instance);
- }
-
-- if (entry->refcount == 0) {
-+ if (ec && entry->refcount == 0) {
- status = ssam_ssh_event_disable(ctrl, reg, id, flags);
- kfree(entry);
- }
-@@ -2322,20 +2333,26 @@ int ssam_notifier_register(struct ssam_controller *ctrl, struct ssam_event_notif
- EXPORT_SYMBOL_GPL(ssam_notifier_register);
-
- /**
-- * ssam_notifier_unregister() - Unregister an event notifier.
-- * @ctrl: The controller the notifier has been registered on.
-- * @n: The event notifier to unregister.
-+ * __ssam_notifier_unregister() - Unregister an event notifier.
-+ * @ctrl: The controller the notifier has been registered on.
-+ * @n: The event notifier to unregister.
-+ * @disable: Whether to disable the corresponding event on the EC.
- *
- * Unregister an event notifier. Decrement the usage counter of the associated
- * SAM event if the notifier is not marked as an observer. If the usage counter
-- * reaches zero, the event will be disabled.
-+ * reaches zero and ``disable`` equals ``true``, the event will be disabled.
-+ *
-+ * Useful for hot-removable devices, where communication may fail once the
-+ * device has been physically removed. In that case, specifying ``disable`` as
-+ * ``false`` avoids communication with the EC.
- *
- * Return: Returns zero on success, %-ENOENT if the given notifier block has
- * not been registered on the controller. If the given notifier block was the
- * last one associated with its specific event, returns the status of the
- * event-disable EC-command.
- */
--int ssam_notifier_unregister(struct ssam_controller *ctrl, struct ssam_event_notifier *n)
-+int __ssam_notifier_unregister(struct ssam_controller *ctrl, struct ssam_event_notifier *n,
-+ bool disable)
- {
- u16 rqid = ssh_tc_to_rqid(n->event.id.target_category);
- struct ssam_nf_refcount_entry *entry;
-@@ -2373,7 +2390,7 @@ int ssam_notifier_unregister(struct ssam_controller *ctrl, struct ssam_event_not
- goto remove;
- }
-
-- status = ssam_nf_refcount_disable_free(ctrl, entry, n->event.flags);
-+ status = ssam_nf_refcount_disable_free(ctrl, entry, n->event.flags, disable);
- }
-
- remove:
-@@ -2383,7 +2400,7 @@ int ssam_notifier_unregister(struct ssam_controller *ctrl, struct ssam_event_not
-
- return status;
- }
--EXPORT_SYMBOL_GPL(ssam_notifier_unregister);
-+EXPORT_SYMBOL_GPL(__ssam_notifier_unregister);
-
- /**
- * ssam_controller_event_enable() - Enable the specified event.
-@@ -2477,7 +2494,7 @@ int ssam_controller_event_disable(struct ssam_controller *ctrl,
- return -ENOENT;
- }
-
-- status = ssam_nf_refcount_disable_free(ctrl, entry, flags);
-+ status = ssam_nf_refcount_disable_free(ctrl, entry, flags, true);
-
- mutex_unlock(&nf->lock);
- return status;
-diff --git a/include/linux/surface_aggregator/controller.h b/include/linux/surface_aggregator/controller.h
-index 74bfdffaf7b0..50a2b4926c06 100644
---- a/include/linux/surface_aggregator/controller.h
-+++ b/include/linux/surface_aggregator/controller.h
-@@ -835,8 +835,28 @@ struct ssam_event_notifier {
- int ssam_notifier_register(struct ssam_controller *ctrl,
- struct ssam_event_notifier *n);
-
--int ssam_notifier_unregister(struct ssam_controller *ctrl,
-- struct ssam_event_notifier *n);
-+int __ssam_notifier_unregister(struct ssam_controller *ctrl,
-+ struct ssam_event_notifier *n, bool disable);
-+
-+/**
-+ * ssam_notifier_unregister() - Unregister an event notifier.
-+ * @ctrl: The controller the notifier has been registered on.
-+ * @n: The event notifier to unregister.
-+ *
-+ * Unregister an event notifier. Decrement the usage counter of the associated
-+ * SAM event if the notifier is not marked as an observer. If the usage counter
-+ * reaches zero, the event will be disabled.
-+ *
-+ * Return: Returns zero on success, %-ENOENT if the given notifier block has
-+ * not been registered on the controller. If the given notifier block was the
-+ * last one associated with its specific event, returns the status of the
-+ * event-disable EC-command.
-+ */
-+static inline int ssam_notifier_unregister(struct ssam_controller *ctrl,
-+ struct ssam_event_notifier *n)
-+{
-+ return __ssam_notifier_unregister(ctrl, n, true);
-+}
-
- int ssam_controller_event_enable(struct ssam_controller *ctrl,
- struct ssam_event_registry reg,
-diff --git a/include/linux/surface_aggregator/device.h b/include/linux/surface_aggregator/device.h
-index 6df7c8d4e50e..c418f7f2732d 100644
---- a/include/linux/surface_aggregator/device.h
-+++ b/include/linux/surface_aggregator/device.h
-@@ -483,4 +483,70 @@ static inline void ssam_remove_clients(struct device *dev) {}
- sdev->uid.instance, ret); \
- }
-
-+
-+/* -- Helpers for client-device notifiers. ---------------------------------- */
-+
-+/**
-+ * ssam_device_notifier_register() - Register an event notifier for the
-+ * specified client device.
-+ * @sdev: The device the notifier should be registered on.
-+ * @n: The event notifier to register.
-+ *
-+ * Register an event notifier. Increment the usage counter of the associated
-+ * SAM event if the notifier is not marked as an observer. If the event is not
-+ * marked as an observer and is currently not enabled, it will be enabled
-+ * during this call. If the notifier is marked as an observer, no attempt will
-+ * be made at enabling any event and no reference count will be modified.
-+ *
-+ * Notifiers marked as observers do not need to be associated with one specific
-+ * event, i.e. as long as no event matching is performed, only the event target
-+ * category needs to be set.
-+ *
-+ * Return: Returns zero on success, %-ENOSPC if there have already been
-+ * %INT_MAX notifiers for the event ID/type associated with the notifier block
-+ * registered, %-ENOMEM if the corresponding event entry could not be
-+ * allocated, %-ENODEV if the device is marked as hot-removed. If this is the
-+ * first time that a notifier block is registered for the specific associated
-+ * event, returns the status of the event-enable EC-command.
-+ */
-+static inline int ssam_device_notifier_register(struct ssam_device *sdev,
-+ struct ssam_event_notifier *n)
-+{
-+ /*
-+ * Note that this check does not provide any guarantees whatsoever as
-+ * hot-removal could happen at any point and we can't protect against
-+ * it. Nevertheless, if we can detect hot-removal, bail early to avoid
-+ * communication timeouts.
-+ */
-+ if (ssam_device_is_hot_removed(sdev))
-+ return -ENODEV;
-+
-+ return ssam_notifier_register(sdev->ctrl, n);
-+}
-+
-+/**
-+ * ssam_device_notifier_unregister() - Unregister an event notifier for the
-+ * specified client device.
-+ * @sdev: The device the notifier has been registered on.
-+ * @n: The event notifier to unregister.
-+ *
-+ * Unregister an event notifier. Decrement the usage counter of the associated
-+ * SAM event if the notifier is not marked as an observer. If the usage counter
-+ * reaches zero, the event will be disabled.
-+ *
-+ * In case the device has been marked as hot-removed, the event will not be
-+ * disabled on the EC, as in those cases any attempt at doing so may time out.
-+ *
-+ * Return: Returns zero on success, %-ENOENT if the given notifier block has
-+ * not been registered on the controller. If the given notifier block was the
-+ * last one associated with its specific event, returns the status of the
-+ * event-disable EC-command.
-+ */
-+static inline int ssam_device_notifier_unregister(struct ssam_device *sdev,
-+ struct ssam_event_notifier *n)
-+{
-+ return __ssam_notifier_unregister(sdev->ctrl, n,
-+ !ssam_device_is_hot_removed(sdev));
-+}
-+
- #endif /* _LINUX_SURFACE_AGGREGATOR_DEVICE_H */
---
-2.37.3
-
-From 5327cf4cbc40cf7a654ed1d826634a565709c73f Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:39 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Use client device
- wrappers for notifier registration
-
-Use newly introduced client device wrapper functions for notifier
-registration and unregistration.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-5-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/surface_aggregator_registry.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index ce2bd88feeaa..9f630e890ff7 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -468,7 +468,7 @@ static int ssam_base_hub_probe(struct ssam_device *sdev)
-
- ssam_device_set_drvdata(sdev, hub);
-
-- status = ssam_notifier_register(sdev->ctrl, &hub->notif);
-+ status = ssam_device_notifier_register(sdev, &hub->notif);
- if (status)
- return status;
-
-@@ -480,7 +480,7 @@ static int ssam_base_hub_probe(struct ssam_device *sdev)
- return 0;
-
- err:
-- ssam_notifier_unregister(sdev->ctrl, &hub->notif);
-+ ssam_device_notifier_unregister(sdev, &hub->notif);
- cancel_delayed_work_sync(&hub->update_work);
- ssam_remove_clients(&sdev->dev);
- return status;
-@@ -492,7 +492,7 @@ static void ssam_base_hub_remove(struct ssam_device *sdev)
-
- sysfs_remove_group(&sdev->dev.kobj, &ssam_base_hub_group);
-
-- ssam_notifier_unregister(sdev->ctrl, &hub->notif);
-+ ssam_device_notifier_unregister(sdev, &hub->notif);
- cancel_delayed_work_sync(&hub->update_work);
- ssam_remove_clients(&sdev->dev);
- }
---
-2.37.3
-
-From 7e1e2cbb7b039e420c6c55052404417c5bcb14df Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:40 +0200
-Subject: [PATCH] power/supply: surface_charger: Use client device wrappers for
- notifier registration
-
-Use newly introduced client device wrapper functions for notifier
-registration and unregistration.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-6-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/power/supply/surface_charger.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/power/supply/surface_charger.c b/drivers/power/supply/surface_charger.c
-index a060c36c7766..59182d55742d 100644
---- a/drivers/power/supply/surface_charger.c
-+++ b/drivers/power/supply/surface_charger.c
-@@ -216,7 +216,7 @@ static int spwr_ac_register(struct spwr_ac_device *ac)
- if (IS_ERR(ac->psy))
- return PTR_ERR(ac->psy);
-
-- return ssam_notifier_register(ac->sdev->ctrl, &ac->notif);
-+ return ssam_device_notifier_register(ac->sdev, &ac->notif);
- }
-
-
-@@ -251,7 +251,7 @@ static void surface_ac_remove(struct ssam_device *sdev)
- {
- struct spwr_ac_device *ac = ssam_device_get_drvdata(sdev);
-
-- ssam_notifier_unregister(sdev->ctrl, &ac->notif);
-+ ssam_device_notifier_unregister(sdev, &ac->notif);
- }
-
- static const struct spwr_psy_properties spwr_psy_props_adp1 = {
---
-2.37.3
-
-From 6f4e94f193ff0af818c95b26f6ff9fa2ba801480 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:41 +0200
-Subject: [PATCH] power/supply: surface_battery: Use client device wrappers for
- notifier registration
-
-Use newly introduced client device wrapper functions for notifier
-registration and unregistration.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-7-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/power/supply/surface_battery.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/power/supply/surface_battery.c b/drivers/power/supply/surface_battery.c
-index 5ec2e6bb2465..540707882bb0 100644
---- a/drivers/power/supply/surface_battery.c
-+++ b/drivers/power/supply/surface_battery.c
-@@ -802,7 +802,7 @@ static int spwr_battery_register(struct spwr_battery_device *bat)
- if (IS_ERR(bat->psy))
- return PTR_ERR(bat->psy);
-
-- return ssam_notifier_register(bat->sdev->ctrl, &bat->notif);
-+ return ssam_device_notifier_register(bat->sdev, &bat->notif);
- }
-
-
-@@ -837,7 +837,7 @@ static void surface_battery_remove(struct ssam_device *sdev)
- {
- struct spwr_battery_device *bat = ssam_device_get_drvdata(sdev);
-
-- ssam_notifier_unregister(sdev->ctrl, &bat->notif);
-+ ssam_device_notifier_unregister(sdev, &bat->notif);
- cancel_delayed_work_sync(&bat->update_work);
- }
-
---
-2.37.3
-
-From 895fb2dab19c9ab2fe25968f88afe9e250d25e40 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:42 +0200
-Subject: [PATCH] HID: surface-hid: Add support for hot-removal
-
-Add support for hot-removal of SSAM HID client devices.
-
-Once a device has been hot-removed, further communication with it should
-be avoided as it may fail and time out. While the device will be removed
-as soon as we detect hot-removal, communication may still occur during
-teardown, especially when unregistering notifiers.
-
-While hot-removal is a surprise event that can happen at any time, try
-to avoid communication as much as possible once it has been detected to
-prevent timeouts that can slow down device removal and cause issues,
-e.g. when quickly re-attaching the device.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-8-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/hid/surface-hid/surface_hid_core.c | 38 +++++++++++++++++++++-
- 1 file changed, 37 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/hid/surface-hid/surface_hid_core.c b/drivers/hid/surface-hid/surface_hid_core.c
-index e46330b2e561..87637f813de2 100644
---- a/drivers/hid/surface-hid/surface_hid_core.c
-+++ b/drivers/hid/surface-hid/surface_hid_core.c
-@@ -19,12 +19,30 @@
- #include "surface_hid_core.h"
-
-
-+/* -- Utility functions. ---------------------------------------------------- */
-+
-+static bool surface_hid_is_hot_removed(struct surface_hid_device *shid)
-+{
-+ /*
-+ * Non-ssam client devices, i.e. platform client devices, cannot be
-+ * hot-removed.
-+ */
-+ if (!is_ssam_device(shid->dev))
-+ return false;
-+
-+ return ssam_device_is_hot_removed(to_ssam_device(shid->dev));
-+}
-+
-+
- /* -- Device descriptor access. --------------------------------------------- */
-
- static int surface_hid_load_hid_descriptor(struct surface_hid_device *shid)
- {
- int status;
-
-+ if (surface_hid_is_hot_removed(shid))
-+ return -ENODEV;
-+
- status = shid->ops.get_descriptor(shid, SURFACE_HID_DESC_HID,
- (u8 *)&shid->hid_desc, sizeof(shid->hid_desc));
- if (status)
-@@ -61,6 +79,9 @@ static int surface_hid_load_device_attributes(struct surface_hid_device *shid)
- {
- int status;
-
-+ if (surface_hid_is_hot_removed(shid))
-+ return -ENODEV;
-+
- status = shid->ops.get_descriptor(shid, SURFACE_HID_DESC_ATTRS,
- (u8 *)&shid->attrs, sizeof(shid->attrs));
- if (status)
-@@ -88,9 +109,18 @@ static int surface_hid_start(struct hid_device *hid)
- static void surface_hid_stop(struct hid_device *hid)
- {
- struct surface_hid_device *shid = hid->driver_data;
-+ bool hot_removed;
-+
-+ /*
-+ * Communication may fail for devices that have been hot-removed. This
-+ * also includes unregistration of HID events, so we need to check this
-+ * here. Only if the device has not been marked as hot-removed, we can
-+ * safely disable events.
-+ */
-+ hot_removed = surface_hid_is_hot_removed(shid);
-
- /* Note: This call will log errors for us, so ignore them here. */
-- ssam_notifier_unregister(shid->ctrl, &shid->notif);
-+ __ssam_notifier_unregister(shid->ctrl, &shid->notif, !hot_removed);
- }
-
- static int surface_hid_open(struct hid_device *hid)
-@@ -109,6 +139,9 @@ static int surface_hid_parse(struct hid_device *hid)
- u8 *buf;
- int status;
-
-+ if (surface_hid_is_hot_removed(shid))
-+ return -ENODEV;
-+
- buf = kzalloc(len, GFP_KERNEL);
- if (!buf)
- return -ENOMEM;
-@@ -126,6 +159,9 @@ static int surface_hid_raw_request(struct hid_device *hid, unsigned char reportn
- {
- struct surface_hid_device *shid = hid->driver_data;
-
-+ if (surface_hid_is_hot_removed(shid))
-+ return -ENODEV;
-+
- if (rtype == HID_OUTPUT_REPORT && reqtype == HID_REQ_SET_REPORT)
- return shid->ops.output_report(shid, reportnum, buf, len);
-
---
-2.37.3
-
-From 2a2d9f4bd42194af647055b3e176ecb9ec7aeeec Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:43 +0200
-Subject: [PATCH] platform/surface: aggregator: Add comment for KIP subsystem
- category
-
-The KIP subsystem (full name unknown, abbreviation has been obtained
-through reverse engineering) handles detachable peripherals such as the
-keyboard cover on the Surface Pro X and Surface Pro 8.
-
-It is currently not entirely clear what this subsystem entails, but at
-the very least it provides event notifications for when the keyboard
-cover on the Surface Pro X and Surface Pro 8 have been detached or
-re-attached, as well as the state that the keyboard cover is currently
-in (e.g. folded-back, folded laptop-like, closed, etc.).
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-9-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- include/linux/surface_aggregator/serial_hub.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/linux/surface_aggregator/serial_hub.h b/include/linux/surface_aggregator/serial_hub.h
-index c3de43edcffa..26b95ec12733 100644
---- a/include/linux/surface_aggregator/serial_hub.h
-+++ b/include/linux/surface_aggregator/serial_hub.h
-@@ -306,7 +306,7 @@ enum ssam_ssh_tc {
- SSAM_SSH_TC_LPC = 0x0b,
- SSAM_SSH_TC_TCL = 0x0c,
- SSAM_SSH_TC_SFL = 0x0d,
-- SSAM_SSH_TC_KIP = 0x0e,
-+ SSAM_SSH_TC_KIP = 0x0e, /* Manages detachable peripherals (Pro X/8 keyboard cover) */
- SSAM_SSH_TC_EXT = 0x0f,
- SSAM_SSH_TC_BLD = 0x10,
- SSAM_SSH_TC_BAS = 0x11, /* Detachment system (Surface Book 2/3). */
---
-2.37.3
-
-From a5c7fa614688bf6a42b2391d87f9709a30c62d45 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:44 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Generify subsystem hub
- functionality
-
-The Surface System Aggregator Module (SSAM) has multiple subsystems that
-can manage detachable devices. At the moment, we only support the "base"
-(BAS/0x11) subsystem, which is used on the Surface Book 3 to manage
-devices (including keyboard, touchpad, and secondary battery) connected
-to the base of the device.
-
-The Surface Pro 8 has a new type-cover with keyboard and touchpad, which
-is managed via the KIP/0x0e subsystem. The general procedure is the
-same, but with slightly different events and setup. To make
-implementation of the KIP hub easier and prevent duplication, generify
-the parts of the base hub that we can use for the KIP hub (or any
-potential future subsystem hubs).
-
-This also switches over to use the newly introduced "hot-remove"
-functionality, which should prevent communication issues when devices
-have been detached.
-
-Lastly, also drop the undocumented and unused sysfs "state" attribute of
-the base hub. It has at best been useful for debugging.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-10-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- .../surface/surface_aggregator_registry.c | 269 ++++++++++--------
- 1 file changed, 153 insertions(+), 116 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index 9f630e890ff7..09cbeee2428b 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -308,30 +308,159 @@ static int ssam_hub_register_clients(struct device *parent, struct ssam_controll
- }
-
-
--/* -- SSAM base-hub driver. ------------------------------------------------- */
-+/* -- SSAM generic subsystem hub driver framework. -------------------------- */
-
--/*
-- * Some devices (especially battery) may need a bit of time to be fully usable
-- * after being (re-)connected. This delay has been determined via
-- * experimentation.
-- */
--#define SSAM_BASE_UPDATE_CONNECT_DELAY msecs_to_jiffies(2500)
-+enum ssam_hub_state {
-+ SSAM_HUB_UNINITIALIZED, /* Only set during initialization. */
-+ SSAM_HUB_CONNECTED,
-+ SSAM_HUB_DISCONNECTED,
-+};
-
--enum ssam_base_hub_state {
-- SSAM_BASE_HUB_UNINITIALIZED,
-- SSAM_BASE_HUB_CONNECTED,
-- SSAM_BASE_HUB_DISCONNECTED,
-+enum ssam_hub_flags {
-+ SSAM_HUB_HOT_REMOVED,
- };
-
--struct ssam_base_hub {
-+struct ssam_hub {
- struct ssam_device *sdev;
-
-- enum ssam_base_hub_state state;
-+ enum ssam_hub_state state;
-+ unsigned long flags;
-+
- struct delayed_work update_work;
-+ unsigned long connect_delay;
-
- struct ssam_event_notifier notif;
-+
-+ int (*get_state)(struct ssam_hub *hub, enum ssam_hub_state *state);
- };
-
-+static void ssam_hub_update_workfn(struct work_struct *work)
-+{
-+ struct ssam_hub *hub = container_of(work, struct ssam_hub, update_work.work);
-+ struct fwnode_handle *node = dev_fwnode(&hub->sdev->dev);
-+ enum ssam_hub_state state;
-+ int status = 0;
-+
-+ status = hub->get_state(hub, &state);
-+ if (status)
-+ return;
-+
-+ /*
-+ * There is a small possibility that hub devices were hot-removed and
-+ * re-added before we were able to remove them here. In that case, both
-+ * the state returned by get_state() and the state of the hub will
-+ * equal SSAM_HUB_CONNECTED and we would bail early below, which would
-+ * leave child devices without proper (re-)initialization and the
-+ * hot-remove flag set.
-+ *
-+ * Therefore, we check whether devices have been hot-removed via an
-+ * additional flag on the hub and, in this case, override the returned
-+ * hub state. In case of a missed disconnect (i.e. get_state returned
-+ * "connected"), we further need to re-schedule this work (with the
-+ * appropriate delay) as the actual connect work submission might have
-+ * been merged with this one.
-+ *
-+ * This then leads to one of two cases: Either we submit an unnecessary
-+ * work item (which will get ignored via either the queue or the state
-+ * checks) or, in the unlikely case that the work is actually required,
-+ * double the normal connect delay.
-+ */
-+ if (test_and_clear_bit(SSAM_HUB_HOT_REMOVED, &hub->flags)) {
-+ if (state == SSAM_HUB_CONNECTED)
-+ schedule_delayed_work(&hub->update_work, hub->connect_delay);
-+
-+ state = SSAM_HUB_DISCONNECTED;
-+ }
-+
-+ if (hub->state == state)
-+ return;
-+ hub->state = state;
-+
-+ if (hub->state == SSAM_HUB_CONNECTED)
-+ status = ssam_hub_register_clients(&hub->sdev->dev, hub->sdev->ctrl, node);
-+ else
-+ ssam_remove_clients(&hub->sdev->dev);
-+
-+ if (status)
-+ dev_err(&hub->sdev->dev, "failed to update hub child devices: %d\n", status);
-+}
-+
-+static int ssam_hub_mark_hot_removed(struct device *dev, void *_data)
-+{
-+ struct ssam_device *sdev = to_ssam_device(dev);
-+
-+ if (is_ssam_device(dev))
-+ ssam_device_mark_hot_removed(sdev);
-+
-+ return 0;
-+}
-+
-+static void ssam_hub_update(struct ssam_hub *hub, bool connected)
-+{
-+ unsigned long delay;
-+
-+ /* Mark devices as hot-removed before we remove any. */
-+ if (!connected) {
-+ set_bit(SSAM_HUB_HOT_REMOVED, &hub->flags);
-+ device_for_each_child_reverse(&hub->sdev->dev, NULL, ssam_hub_mark_hot_removed);
-+ }
-+
-+ /*
-+ * Delay update when the base/keyboard cover is being connected to give
-+ * devices/EC some time to set up.
-+ */
-+ delay = connected ? hub->connect_delay : 0;
-+
-+ schedule_delayed_work(&hub->update_work, delay);
-+}
-+
-+static int __maybe_unused ssam_hub_resume(struct device *dev)
-+{
-+ struct ssam_hub *hub = dev_get_drvdata(dev);
-+
-+ schedule_delayed_work(&hub->update_work, 0);
-+ return 0;
-+}
-+static SIMPLE_DEV_PM_OPS(ssam_hub_pm_ops, NULL, ssam_hub_resume);
-+
-+static int ssam_hub_setup(struct ssam_device *sdev, struct ssam_hub *hub)
-+{
-+ int status;
-+
-+ hub->sdev = sdev;
-+ hub->state = SSAM_HUB_UNINITIALIZED;
-+
-+ INIT_DELAYED_WORK(&hub->update_work, ssam_hub_update_workfn);
-+
-+ ssam_device_set_drvdata(sdev, hub);
-+
-+ status = ssam_device_notifier_register(sdev, &hub->notif);
-+ if (status)
-+ return status;
-+
-+ schedule_delayed_work(&hub->update_work, 0);
-+ return 0;
-+}
-+
-+static void ssam_hub_remove(struct ssam_device *sdev)
-+{
-+ struct ssam_hub *hub = ssam_device_get_drvdata(sdev);
-+
-+ ssam_device_notifier_unregister(sdev, &hub->notif);
-+ cancel_delayed_work_sync(&hub->update_work);
-+ ssam_remove_clients(&sdev->dev);
-+}
-+
-+
-+/* -- SSAM base-hub driver. ------------------------------------------------- */
-+
-+/*
-+ * Some devices (especially battery) may need a bit of time to be fully usable
-+ * after being (re-)connected. This delay has been determined via
-+ * experimentation.
-+ */
-+#define SSAM_BASE_UPDATE_CONNECT_DELAY msecs_to_jiffies(2500)
-+
- SSAM_DEFINE_SYNC_REQUEST_R(ssam_bas_query_opmode, u8, {
- .target_category = SSAM_SSH_TC_BAS,
- .target_id = 0x01,
-@@ -342,7 +471,7 @@ SSAM_DEFINE_SYNC_REQUEST_R(ssam_bas_query_opmode, u8, {
- #define SSAM_BAS_OPMODE_TABLET 0x00
- #define SSAM_EVENT_BAS_CID_CONNECTION 0x0c
-
--static int ssam_base_hub_query_state(struct ssam_base_hub *hub, enum ssam_base_hub_state *state)
-+static int ssam_base_hub_query_state(struct ssam_hub *hub, enum ssam_hub_state *state)
- {
- u8 opmode;
- int status;
-@@ -354,62 +483,16 @@ static int ssam_base_hub_query_state(struct ssam_base_hub *hub, enum ssam_base_h
- }
-
- if (opmode != SSAM_BAS_OPMODE_TABLET)
-- *state = SSAM_BASE_HUB_CONNECTED;
-+ *state = SSAM_HUB_CONNECTED;
- else
-- *state = SSAM_BASE_HUB_DISCONNECTED;
-+ *state = SSAM_HUB_DISCONNECTED;
-
- return 0;
- }
-
--static ssize_t ssam_base_hub_state_show(struct device *dev, struct device_attribute *attr,
-- char *buf)
--{
-- struct ssam_base_hub *hub = dev_get_drvdata(dev);
-- bool connected = hub->state == SSAM_BASE_HUB_CONNECTED;
--
-- return sysfs_emit(buf, "%d\n", connected);
--}
--
--static struct device_attribute ssam_base_hub_attr_state =
-- __ATTR(state, 0444, ssam_base_hub_state_show, NULL);
--
--static struct attribute *ssam_base_hub_attrs[] = {
-- &ssam_base_hub_attr_state.attr,
-- NULL,
--};
--
--static const struct attribute_group ssam_base_hub_group = {
-- .attrs = ssam_base_hub_attrs,
--};
--
--static void ssam_base_hub_update_workfn(struct work_struct *work)
--{
-- struct ssam_base_hub *hub = container_of(work, struct ssam_base_hub, update_work.work);
-- struct fwnode_handle *node = dev_fwnode(&hub->sdev->dev);
-- enum ssam_base_hub_state state;
-- int status = 0;
--
-- status = ssam_base_hub_query_state(hub, &state);
-- if (status)
-- return;
--
-- if (hub->state == state)
-- return;
-- hub->state = state;
--
-- if (hub->state == SSAM_BASE_HUB_CONNECTED)
-- status = ssam_hub_register_clients(&hub->sdev->dev, hub->sdev->ctrl, node);
-- else
-- ssam_remove_clients(&hub->sdev->dev);
--
-- if (status)
-- dev_err(&hub->sdev->dev, "failed to update base-hub devices: %d\n", status);
--}
--
- static u32 ssam_base_hub_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
- {
-- struct ssam_base_hub *hub = container_of(nf, struct ssam_base_hub, notif);
-- unsigned long delay;
-+ struct ssam_hub *hub = container_of(nf, struct ssam_hub, notif);
-
- if (event->command_id != SSAM_EVENT_BAS_CID_CONNECTION)
- return 0;
-@@ -419,13 +502,7 @@ static u32 ssam_base_hub_notif(struct ssam_event_notifier *nf, const struct ssam
- return 0;
- }
-
-- /*
-- * Delay update when the base is being connected to give devices/EC
-- * some time to set up.
-- */
-- delay = event->data[0] ? SSAM_BASE_UPDATE_CONNECT_DELAY : 0;
--
-- schedule_delayed_work(&hub->update_work, delay);
-+ ssam_hub_update(hub, event->data[0]);
-
- /*
- * Do not return SSAM_NOTIF_HANDLED: The event should be picked up and
-@@ -435,27 +512,14 @@ static u32 ssam_base_hub_notif(struct ssam_event_notifier *nf, const struct ssam
- return 0;
- }
-
--static int __maybe_unused ssam_base_hub_resume(struct device *dev)
--{
-- struct ssam_base_hub *hub = dev_get_drvdata(dev);
--
-- schedule_delayed_work(&hub->update_work, 0);
-- return 0;
--}
--static SIMPLE_DEV_PM_OPS(ssam_base_hub_pm_ops, NULL, ssam_base_hub_resume);
--
- static int ssam_base_hub_probe(struct ssam_device *sdev)
- {
-- struct ssam_base_hub *hub;
-- int status;
-+ struct ssam_hub *hub;
-
- hub = devm_kzalloc(&sdev->dev, sizeof(*hub), GFP_KERNEL);
- if (!hub)
- return -ENOMEM;
-
-- hub->sdev = sdev;
-- hub->state = SSAM_BASE_HUB_UNINITIALIZED;
--
- hub->notif.base.priority = INT_MAX; /* This notifier should run first. */
- hub->notif.base.fn = ssam_base_hub_notif;
- hub->notif.event.reg = SSAM_EVENT_REGISTRY_SAM;
-@@ -464,37 +528,10 @@ static int ssam_base_hub_probe(struct ssam_device *sdev)
- hub->notif.event.mask = SSAM_EVENT_MASK_NONE;
- hub->notif.event.flags = SSAM_EVENT_SEQUENCED;
-
-- INIT_DELAYED_WORK(&hub->update_work, ssam_base_hub_update_workfn);
--
-- ssam_device_set_drvdata(sdev, hub);
--
-- status = ssam_device_notifier_register(sdev, &hub->notif);
-- if (status)
-- return status;
--
-- status = sysfs_create_group(&sdev->dev.kobj, &ssam_base_hub_group);
-- if (status)
-- goto err;
--
-- schedule_delayed_work(&hub->update_work, 0);
-- return 0;
-+ hub->connect_delay = SSAM_BASE_UPDATE_CONNECT_DELAY;
-+ hub->get_state = ssam_base_hub_query_state;
-
--err:
-- ssam_device_notifier_unregister(sdev, &hub->notif);
-- cancel_delayed_work_sync(&hub->update_work);
-- ssam_remove_clients(&sdev->dev);
-- return status;
--}
--
--static void ssam_base_hub_remove(struct ssam_device *sdev)
--{
-- struct ssam_base_hub *hub = ssam_device_get_drvdata(sdev);
--
-- sysfs_remove_group(&sdev->dev.kobj, &ssam_base_hub_group);
--
-- ssam_device_notifier_unregister(sdev, &hub->notif);
-- cancel_delayed_work_sync(&hub->update_work);
-- ssam_remove_clients(&sdev->dev);
-+ return ssam_hub_setup(sdev, hub);
- }
-
- static const struct ssam_device_id ssam_base_hub_match[] = {
-@@ -504,12 +541,12 @@ static const struct ssam_device_id ssam_base_hub_match[] = {
-
- static struct ssam_device_driver ssam_base_hub_driver = {
- .probe = ssam_base_hub_probe,
-- .remove = ssam_base_hub_remove,
-+ .remove = ssam_hub_remove,
- .match_table = ssam_base_hub_match,
- .driver = {
- .name = "surface_aggregator_base_hub",
- .probe_type = PROBE_PREFER_ASYNCHRONOUS,
-- .pm = &ssam_base_hub_pm_ops,
-+ .pm = &ssam_hub_pm_ops,
- },
- };
-
---
-2.37.3
-
-From 914afdc9a4ddd402904039546ac2f1161a5535a2 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:45 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Change device ID for
- base hub
-
-Use the target category of the (base) hub as instance id in the
-(virtual) hub device UID. This makes association of the hub with the
-respective subsystem easier.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-11-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/surface_aggregator_registry.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index 09cbeee2428b..b11ce87c7184 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -43,7 +43,7 @@ static const struct software_node ssam_node_root = {
-
- /* Base device hub (devices attached to Surface Book 3 base). */
- static const struct software_node ssam_node_hub_base = {
-- .name = "ssam:00:00:02:00:00",
-+ .name = "ssam:00:00:02:11:00",
- .parent = &ssam_node_root,
- };
-
-@@ -535,7 +535,7 @@ static int ssam_base_hub_probe(struct ssam_device *sdev)
- }
-
- static const struct ssam_device_id ssam_base_hub_match[] = {
-- { SSAM_VDEV(HUB, 0x02, SSAM_ANY_IID, 0x00) },
-+ { SSAM_VDEV(HUB, 0x02, SSAM_SSH_TC_BAS, 0x00) },
- { },
- };
-
---
-2.37.3
-
-From 07bb747d9ad79840bef5b2f922cc0691ffa3db7e Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:46 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Add KIP device hub
-
-Add a Surface System Aggregator Module (SSAM) client device hub for
-hot-removable devices managed via the KIP subsystem.
-
-The KIP subsystem (full name unknown, abbreviation has been obtained
-through reverse engineering) is a subsystem that manages hot-removable
-SSAM client devices. Specifically, it manages HID input devices
-contained in the detachable keyboard cover of the Surface Pro 8 and
-Surface Pro X.
-
-The KIP subsystem handles a single group of devices (e.g. all devices
-contained in the keyboard cover) and cannot handle devices individually.
-Thus we model it as a client device hub, which (hot-)removes all devices
-contained under it once removal of the hub (e.g. keyboard cover) has
-been detected and (re-)adds all devices once the physical hub device has
-been (re-)attached. To do this, use the previously generified SSAM
-subsystem hub framework.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-12-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- .../surface/surface_aggregator_registry.c | 103 +++++++++++++++++-
- 1 file changed, 101 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index b11ce87c7184..f15cef60630f 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -551,6 +551,93 @@ static struct ssam_device_driver ssam_base_hub_driver = {
- };
-
-
-+/* -- SSAM KIP-subsystem hub driver. ---------------------------------------- */
-+
-+/*
-+ * Some devices may need a bit of time to be fully usable after being
-+ * (re-)connected. This delay has been determined via experimentation.
-+ */
-+#define SSAM_KIP_UPDATE_CONNECT_DELAY msecs_to_jiffies(250)
-+
-+#define SSAM_EVENT_KIP_CID_CONNECTION 0x2c
-+
-+SSAM_DEFINE_SYNC_REQUEST_R(__ssam_kip_get_connection_state, u8, {
-+ .target_category = SSAM_SSH_TC_KIP,
-+ .target_id = 0x01,
-+ .command_id = 0x2c,
-+ .instance_id = 0x00,
-+});
-+
-+static int ssam_kip_get_connection_state(struct ssam_hub *hub, enum ssam_hub_state *state)
-+{
-+ int status;
-+ u8 connected;
-+
-+ status = ssam_retry(__ssam_kip_get_connection_state, hub->sdev->ctrl, &connected);
-+ if (status < 0) {
-+ dev_err(&hub->sdev->dev, "failed to query KIP connection state: %d\n", status);
-+ return status;
-+ }
-+
-+ *state = connected ? SSAM_HUB_CONNECTED : SSAM_HUB_DISCONNECTED;
-+ return 0;
-+}
-+
-+static u32 ssam_kip_hub_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
-+{
-+ struct ssam_hub *hub = container_of(nf, struct ssam_hub, notif);
-+
-+ if (event->command_id != SSAM_EVENT_KIP_CID_CONNECTION)
-+ return 0; /* Return "unhandled". */
-+
-+ if (event->length < 1) {
-+ dev_err(&hub->sdev->dev, "unexpected payload size: %u\n", event->length);
-+ return 0;
-+ }
-+
-+ ssam_hub_update(hub, event->data[0]);
-+ return SSAM_NOTIF_HANDLED;
-+}
-+
-+static int ssam_kip_hub_probe(struct ssam_device *sdev)
-+{
-+ struct ssam_hub *hub;
-+
-+ hub = devm_kzalloc(&sdev->dev, sizeof(*hub), GFP_KERNEL);
-+ if (!hub)
-+ return -ENOMEM;
-+
-+ hub->notif.base.priority = INT_MAX; /* This notifier should run first. */
-+ hub->notif.base.fn = ssam_kip_hub_notif;
-+ hub->notif.event.reg = SSAM_EVENT_REGISTRY_SAM;
-+ hub->notif.event.id.target_category = SSAM_SSH_TC_KIP,
-+ hub->notif.event.id.instance = 0,
-+ hub->notif.event.mask = SSAM_EVENT_MASK_TARGET;
-+ hub->notif.event.flags = SSAM_EVENT_SEQUENCED;
-+
-+ hub->connect_delay = SSAM_KIP_UPDATE_CONNECT_DELAY;
-+ hub->get_state = ssam_kip_get_connection_state;
-+
-+ return ssam_hub_setup(sdev, hub);
-+}
-+
-+static const struct ssam_device_id ssam_kip_hub_match[] = {
-+ { SSAM_VDEV(HUB, 0x01, SSAM_SSH_TC_KIP, 0x00) },
-+ { },
-+};
-+
-+static struct ssam_device_driver ssam_kip_hub_driver = {
-+ .probe = ssam_kip_hub_probe,
-+ .remove = ssam_hub_remove,
-+ .match_table = ssam_kip_hub_match,
-+ .driver = {
-+ .name = "surface_kip_hub",
-+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
-+ .pm = &ssam_hub_pm_ops,
-+ },
-+};
-+
-+
- /* -- SSAM platform/meta-hub driver. ---------------------------------------- */
-
- static const struct acpi_device_id ssam_platform_hub_match[] = {
-@@ -673,18 +760,30 @@ static int __init ssam_device_hub_init(void)
-
- status = platform_driver_register(&ssam_platform_hub_driver);
- if (status)
-- return status;
-+ goto err_platform;
-
- status = ssam_device_driver_register(&ssam_base_hub_driver);
- if (status)
-- platform_driver_unregister(&ssam_platform_hub_driver);
-+ goto err_base;
-+
-+ status = ssam_device_driver_register(&ssam_kip_hub_driver);
-+ if (status)
-+ goto err_kip;
-
-+ return 0;
-+
-+err_kip:
-+ ssam_device_driver_unregister(&ssam_base_hub_driver);
-+err_base:
-+ platform_driver_unregister(&ssam_platform_hub_driver);
-+err_platform:
- return status;
- }
- module_init(ssam_device_hub_init);
-
- static void __exit ssam_device_hub_exit(void)
- {
-+ ssam_device_driver_unregister(&ssam_kip_hub_driver);
- ssam_device_driver_unregister(&ssam_base_hub_driver);
- platform_driver_unregister(&ssam_platform_hub_driver);
- }
---
-2.37.3
-
-From 33f616b388ac8845bdd3aadb8c1a5e41e5eb86d8 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 27 May 2022 04:34:47 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Add support for
- keyboard cover on Surface Pro 8
-
-Add support for the detachable keyboard cover on the Surface Pro 8.
-
-The keyboard cover on the Surface Pro 8 is, unlike the keyboard covers
-of earlier Surface Pro generations, handled via the Surface System
-Aggregator Module (SSAM). The keyboard and touchpad (as well as other
-HID input devices) of this cover are standard SSAM HID client devices
-(just like keyboard and touchpad on e.g. the Surface Laptop 3 and 4),
-however, some care needs to be taken as they can be physically detached
-(similarly to the Surface Book 3). Specifically, the respective SSAM
-client devices need to be removed when the keyboard cover has been
-detached and (re-)initialized when the keyboard cover has been
-(re-)attached.
-
-On the Surface Pro 8, detachment of the keyboard cover (and by extension
-its devices) is managed via the KIP subsystem. Therefore, said devices
-need to be registered under the KIP device hub, which in turn will
-remove and re-create/re-initialize those devices as needed.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220527023447.2460025-13-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- .../surface/surface_aggregator_registry.c | 37 ++++++++++++++++++-
- 1 file changed, 36 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index f15cef60630f..bf3303f1aa71 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -41,6 +41,12 @@ static const struct software_node ssam_node_root = {
- .name = "ssam_platform_hub",
- };
-
-+/* KIP device hub (connects keyboard cover devices on Surface Pro 8). */
-+static const struct software_node ssam_node_hub_kip = {
-+ .name = "ssam:00:00:01:0e:00",
-+ .parent = &ssam_node_root,
-+};
-+
- /* Base device hub (devices attached to Surface Book 3 base). */
- static const struct software_node ssam_node_hub_base = {
- .name = "ssam:00:00:02:11:00",
-@@ -155,6 +161,30 @@ static const struct software_node ssam_node_hid_base_iid6 = {
- .parent = &ssam_node_hub_base,
- };
-
-+/* HID keyboard (KIP hub). */
-+static const struct software_node ssam_node_hid_kip_keyboard = {
-+ .name = "ssam:01:15:02:01:00",
-+ .parent = &ssam_node_hub_kip,
-+};
-+
-+/* HID pen stash (KIP hub; pen taken / stashed away evens). */
-+static const struct software_node ssam_node_hid_kip_penstash = {
-+ .name = "ssam:01:15:02:02:00",
-+ .parent = &ssam_node_hub_kip,
-+};
-+
-+/* HID touchpad (KIP hub). */
-+static const struct software_node ssam_node_hid_kip_touchpad = {
-+ .name = "ssam:01:15:02:03:00",
-+ .parent = &ssam_node_hub_kip,
-+};
-+
-+/* HID device instance 5 (KIP hub, unknown HID device). */
-+static const struct software_node ssam_node_hid_kip_iid5 = {
-+ .name = "ssam:01:15:02:05:00",
-+ .parent = &ssam_node_hub_kip,
-+};
-+
- /*
- * Devices for 5th- and 6th-generations models:
- * - Surface Book 2,
-@@ -230,10 +260,15 @@ static const struct software_node *ssam_node_group_sp7[] = {
-
- static const struct software_node *ssam_node_group_sp8[] = {
- &ssam_node_root,
-+ &ssam_node_hub_kip,
- &ssam_node_bat_ac,
- &ssam_node_bat_main,
- &ssam_node_tmp_pprof,
-- /* TODO: Add support for keyboard cover. */
-+ &ssam_node_hid_kip_keyboard,
-+ &ssam_node_hid_kip_penstash,
-+ &ssam_node_hid_kip_touchpad,
-+ &ssam_node_hid_kip_iid5,
-+ /* TODO: Add support for tablet mode switch. */
- NULL,
- };
-
---
-2.37.3
-
-From e52704dc9d78c8c7bc2cb192063f0498a10e8655 Mon Sep 17 00:00:00 2001
-From: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
-Date: Fri, 10 Jun 2022 14:41:58 +0900
-Subject: [PATCH] platform/surface: avoid flush_scheduled_work() usage
-
-Use local wq in order to avoid flush_scheduled_work() usage.
-
-Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
-Reviewed-by: Maximilian Luz <luzmaximilian@gmail.com>
-Tested-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/63ec2d45-c67c-1134-f6d3-490c8ba67a01@I-love.SAKURA.ne.jp
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- .../platform/surface/surface_acpi_notify.c | 27 ++++++++++++++++---
- 1 file changed, 24 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_acpi_notify.c b/drivers/platform/surface/surface_acpi_notify.c
-index 7b758f8cc137..c0e12f0b9b79 100644
---- a/drivers/platform/surface/surface_acpi_notify.c
-+++ b/drivers/platform/surface/surface_acpi_notify.c
-@@ -37,6 +37,7 @@ struct san_data {
- #define to_san_data(ptr, member) \
- container_of(ptr, struct san_data, member)
-
-+static struct workqueue_struct *san_wq;
-
- /* -- dGPU notifier interface. ---------------------------------------------- */
-
-@@ -356,7 +357,7 @@ static u32 san_evt_bat_nf(struct ssam_event_notifier *nf,
-
- memcpy(&work->event, event, sizeof(struct ssam_event) + event->length);
-
-- schedule_delayed_work(&work->work, delay);
-+ queue_delayed_work(san_wq, &work->work, delay);
- return SSAM_NOTIF_HANDLED;
- }
-
-@@ -861,7 +862,7 @@ static int san_remove(struct platform_device *pdev)
- * We have unregistered our event sources. Now we need to ensure that
- * all delayed works they may have spawned are run to completion.
- */
-- flush_scheduled_work();
-+ flush_workqueue(san_wq);
-
- return 0;
- }
-@@ -881,7 +882,27 @@ static struct platform_driver surface_acpi_notify = {
- .probe_type = PROBE_PREFER_ASYNCHRONOUS,
- },
- };
--module_platform_driver(surface_acpi_notify);
-+
-+static int __init san_init(void)
-+{
-+ int ret;
-+
-+ san_wq = alloc_workqueue("san_wq", 0, 0);
-+ if (!san_wq)
-+ return -ENOMEM;
-+ ret = platform_driver_register(&surface_acpi_notify);
-+ if (ret)
-+ destroy_workqueue(san_wq);
-+ return ret;
-+}
-+module_init(san_init);
-+
-+static void __exit san_exit(void)
-+{
-+ platform_driver_unregister(&surface_acpi_notify);
-+ destroy_workqueue(san_wq);
-+}
-+module_exit(san_exit);
-
- MODULE_AUTHOR("Maximilian Luz <luzmaximilian@gmail.com>");
- MODULE_DESCRIPTION("Surface ACPI Notify driver for Surface System Aggregator Module");
---
-2.37.3
-
-From 23b3d5bdf836ab4e155c9c95d860e35822aabd7e Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Tue, 14 Jun 2022 21:41:17 +0200
-Subject: [PATCH] platform/surface: aggregator: Reserve more event- and
- target-categories
-
-With the introduction of the Surface Laptop Studio, more event- and
-target categories have been added. Therefore, increase the number of
-reserved events and extend the enum of know target categories to
-accommodate this.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220614194117.4118897-1-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/aggregator/trace.h | 80 +++++++++++--------
- include/linux/surface_aggregator/serial_hub.h | 75 +++++++++--------
- 2 files changed, 85 insertions(+), 70 deletions(-)
-
-diff --git a/drivers/platform/surface/aggregator/trace.h b/drivers/platform/surface/aggregator/trace.h
-index de64cf169060..cc9e73fbc18e 100644
---- a/drivers/platform/surface/aggregator/trace.h
-+++ b/drivers/platform/surface/aggregator/trace.h
-@@ -76,7 +76,7 @@ TRACE_DEFINE_ENUM(SSAM_SSH_TC_HID);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_TCH);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_BKL);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_TAM);
--TRACE_DEFINE_ENUM(SSAM_SSH_TC_ACC);
-+TRACE_DEFINE_ENUM(SSAM_SSH_TC_ACC0);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_UFI);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_USC);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_PEN);
-@@ -85,6 +85,11 @@ TRACE_DEFINE_ENUM(SSAM_SSH_TC_AUD);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_SMC);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_KPD);
- TRACE_DEFINE_ENUM(SSAM_SSH_TC_REG);
-+TRACE_DEFINE_ENUM(SSAM_SSH_TC_SPT);
-+TRACE_DEFINE_ENUM(SSAM_SSH_TC_SYS);
-+TRACE_DEFINE_ENUM(SSAM_SSH_TC_ACC1);
-+TRACE_DEFINE_ENUM(SSAM_SSH_TC_SHB);
-+TRACE_DEFINE_ENUM(SSAM_SSH_TC_POS);
-
- #define SSAM_PTR_UID_LEN 9
- #define SSAM_U8_FIELD_NOT_APPLICABLE ((u16)-1)
-@@ -229,40 +234,45 @@ static inline u32 ssam_trace_get_request_tc(const struct ssh_packet *p)
-
- #define ssam_show_ssh_tc(rqid) \
- __print_symbolic(rqid, \
-- { SSAM_SSH_TC_NOT_APPLICABLE, "N/A" }, \
-- { SSAM_SSH_TC_SAM, "SAM" }, \
-- { SSAM_SSH_TC_BAT, "BAT" }, \
-- { SSAM_SSH_TC_TMP, "TMP" }, \
-- { SSAM_SSH_TC_PMC, "PMC" }, \
-- { SSAM_SSH_TC_FAN, "FAN" }, \
-- { SSAM_SSH_TC_PoM, "PoM" }, \
-- { SSAM_SSH_TC_DBG, "DBG" }, \
-- { SSAM_SSH_TC_KBD, "KBD" }, \
-- { SSAM_SSH_TC_FWU, "FWU" }, \
-- { SSAM_SSH_TC_UNI, "UNI" }, \
-- { SSAM_SSH_TC_LPC, "LPC" }, \
-- { SSAM_SSH_TC_TCL, "TCL" }, \
-- { SSAM_SSH_TC_SFL, "SFL" }, \
-- { SSAM_SSH_TC_KIP, "KIP" }, \
-- { SSAM_SSH_TC_EXT, "EXT" }, \
-- { SSAM_SSH_TC_BLD, "BLD" }, \
-- { SSAM_SSH_TC_BAS, "BAS" }, \
-- { SSAM_SSH_TC_SEN, "SEN" }, \
-- { SSAM_SSH_TC_SRQ, "SRQ" }, \
-- { SSAM_SSH_TC_MCU, "MCU" }, \
-- { SSAM_SSH_TC_HID, "HID" }, \
-- { SSAM_SSH_TC_TCH, "TCH" }, \
-- { SSAM_SSH_TC_BKL, "BKL" }, \
-- { SSAM_SSH_TC_TAM, "TAM" }, \
-- { SSAM_SSH_TC_ACC, "ACC" }, \
-- { SSAM_SSH_TC_UFI, "UFI" }, \
-- { SSAM_SSH_TC_USC, "USC" }, \
-- { SSAM_SSH_TC_PEN, "PEN" }, \
-- { SSAM_SSH_TC_VID, "VID" }, \
-- { SSAM_SSH_TC_AUD, "AUD" }, \
-- { SSAM_SSH_TC_SMC, "SMC" }, \
-- { SSAM_SSH_TC_KPD, "KPD" }, \
-- { SSAM_SSH_TC_REG, "REG" } \
-+ { SSAM_SSH_TC_NOT_APPLICABLE, "N/A" }, \
-+ { SSAM_SSH_TC_SAM, "SAM" }, \
-+ { SSAM_SSH_TC_BAT, "BAT" }, \
-+ { SSAM_SSH_TC_TMP, "TMP" }, \
-+ { SSAM_SSH_TC_PMC, "PMC" }, \
-+ { SSAM_SSH_TC_FAN, "FAN" }, \
-+ { SSAM_SSH_TC_PoM, "PoM" }, \
-+ { SSAM_SSH_TC_DBG, "DBG" }, \
-+ { SSAM_SSH_TC_KBD, "KBD" }, \
-+ { SSAM_SSH_TC_FWU, "FWU" }, \
-+ { SSAM_SSH_TC_UNI, "UNI" }, \
-+ { SSAM_SSH_TC_LPC, "LPC" }, \
-+ { SSAM_SSH_TC_TCL, "TCL" }, \
-+ { SSAM_SSH_TC_SFL, "SFL" }, \
-+ { SSAM_SSH_TC_KIP, "KIP" }, \
-+ { SSAM_SSH_TC_EXT, "EXT" }, \
-+ { SSAM_SSH_TC_BLD, "BLD" }, \
-+ { SSAM_SSH_TC_BAS, "BAS" }, \
-+ { SSAM_SSH_TC_SEN, "SEN" }, \
-+ { SSAM_SSH_TC_SRQ, "SRQ" }, \
-+ { SSAM_SSH_TC_MCU, "MCU" }, \
-+ { SSAM_SSH_TC_HID, "HID" }, \
-+ { SSAM_SSH_TC_TCH, "TCH" }, \
-+ { SSAM_SSH_TC_BKL, "BKL" }, \
-+ { SSAM_SSH_TC_TAM, "TAM" }, \
-+ { SSAM_SSH_TC_ACC0, "ACC0" }, \
-+ { SSAM_SSH_TC_UFI, "UFI" }, \
-+ { SSAM_SSH_TC_USC, "USC" }, \
-+ { SSAM_SSH_TC_PEN, "PEN" }, \
-+ { SSAM_SSH_TC_VID, "VID" }, \
-+ { SSAM_SSH_TC_AUD, "AUD" }, \
-+ { SSAM_SSH_TC_SMC, "SMC" }, \
-+ { SSAM_SSH_TC_KPD, "KPD" }, \
-+ { SSAM_SSH_TC_REG, "REG" }, \
-+ { SSAM_SSH_TC_SPT, "SPT" }, \
-+ { SSAM_SSH_TC_SYS, "SYS" }, \
-+ { SSAM_SSH_TC_ACC1, "ACC1" }, \
-+ { SSAM_SSH_TC_SHB, "SMB" }, \
-+ { SSAM_SSH_TC_POS, "POS" } \
- )
-
- DECLARE_EVENT_CLASS(ssam_frame_class,
-diff --git a/include/linux/surface_aggregator/serial_hub.h b/include/linux/surface_aggregator/serial_hub.h
-index 26b95ec12733..45501b6e54e8 100644
---- a/include/linux/surface_aggregator/serial_hub.h
-+++ b/include/linux/surface_aggregator/serial_hub.h
-@@ -201,7 +201,7 @@ static inline u16 ssh_crc(const u8 *buf, size_t len)
- * exception of zero, which is not an event ID. Thus, this is also the
- * absolute maximum number of event handlers that can be registered.
- */
--#define SSH_NUM_EVENTS 34
-+#define SSH_NUM_EVENTS 38
-
- /*
- * SSH_NUM_TARGETS - The number of communication targets used in the protocol.
-@@ -292,40 +292,45 @@ struct ssam_span {
- * Windows driver.
- */
- enum ssam_ssh_tc {
-- /* Category 0x00 is invalid for EC use. */
-- SSAM_SSH_TC_SAM = 0x01, /* Generic system functionality, real-time clock. */
-- SSAM_SSH_TC_BAT = 0x02, /* Battery/power subsystem. */
-- SSAM_SSH_TC_TMP = 0x03, /* Thermal subsystem. */
-- SSAM_SSH_TC_PMC = 0x04,
-- SSAM_SSH_TC_FAN = 0x05,
-- SSAM_SSH_TC_PoM = 0x06,
-- SSAM_SSH_TC_DBG = 0x07,
-- SSAM_SSH_TC_KBD = 0x08, /* Legacy keyboard (Laptop 1/2). */
-- SSAM_SSH_TC_FWU = 0x09,
-- SSAM_SSH_TC_UNI = 0x0a,
-- SSAM_SSH_TC_LPC = 0x0b,
-- SSAM_SSH_TC_TCL = 0x0c,
-- SSAM_SSH_TC_SFL = 0x0d,
-- SSAM_SSH_TC_KIP = 0x0e, /* Manages detachable peripherals (Pro X/8 keyboard cover) */
-- SSAM_SSH_TC_EXT = 0x0f,
-- SSAM_SSH_TC_BLD = 0x10,
-- SSAM_SSH_TC_BAS = 0x11, /* Detachment system (Surface Book 2/3). */
-- SSAM_SSH_TC_SEN = 0x12,
-- SSAM_SSH_TC_SRQ = 0x13,
-- SSAM_SSH_TC_MCU = 0x14,
-- SSAM_SSH_TC_HID = 0x15, /* Generic HID input subsystem. */
-- SSAM_SSH_TC_TCH = 0x16,
-- SSAM_SSH_TC_BKL = 0x17,
-- SSAM_SSH_TC_TAM = 0x18,
-- SSAM_SSH_TC_ACC = 0x19,
-- SSAM_SSH_TC_UFI = 0x1a,
-- SSAM_SSH_TC_USC = 0x1b,
-- SSAM_SSH_TC_PEN = 0x1c,
-- SSAM_SSH_TC_VID = 0x1d,
-- SSAM_SSH_TC_AUD = 0x1e,
-- SSAM_SSH_TC_SMC = 0x1f,
-- SSAM_SSH_TC_KPD = 0x20,
-- SSAM_SSH_TC_REG = 0x21, /* Extended event registry. */
-+ /* Category 0x00 is invalid for EC use. */
-+ SSAM_SSH_TC_SAM = 0x01, /* Generic system functionality, real-time clock. */
-+ SSAM_SSH_TC_BAT = 0x02, /* Battery/power subsystem. */
-+ SSAM_SSH_TC_TMP = 0x03, /* Thermal subsystem. */
-+ SSAM_SSH_TC_PMC = 0x04,
-+ SSAM_SSH_TC_FAN = 0x05,
-+ SSAM_SSH_TC_PoM = 0x06,
-+ SSAM_SSH_TC_DBG = 0x07,
-+ SSAM_SSH_TC_KBD = 0x08, /* Legacy keyboard (Laptop 1/2). */
-+ SSAM_SSH_TC_FWU = 0x09,
-+ SSAM_SSH_TC_UNI = 0x0a,
-+ SSAM_SSH_TC_LPC = 0x0b,
-+ SSAM_SSH_TC_TCL = 0x0c,
-+ SSAM_SSH_TC_SFL = 0x0d,
-+ SSAM_SSH_TC_KIP = 0x0e, /* Manages detachable peripherals (Pro X/8 keyboard cover) */
-+ SSAM_SSH_TC_EXT = 0x0f,
-+ SSAM_SSH_TC_BLD = 0x10,
-+ SSAM_SSH_TC_BAS = 0x11, /* Detachment system (Surface Book 2/3). */
-+ SSAM_SSH_TC_SEN = 0x12,
-+ SSAM_SSH_TC_SRQ = 0x13,
-+ SSAM_SSH_TC_MCU = 0x14,
-+ SSAM_SSH_TC_HID = 0x15, /* Generic HID input subsystem. */
-+ SSAM_SSH_TC_TCH = 0x16,
-+ SSAM_SSH_TC_BKL = 0x17,
-+ SSAM_SSH_TC_TAM = 0x18,
-+ SSAM_SSH_TC_ACC0 = 0x19,
-+ SSAM_SSH_TC_UFI = 0x1a,
-+ SSAM_SSH_TC_USC = 0x1b,
-+ SSAM_SSH_TC_PEN = 0x1c,
-+ SSAM_SSH_TC_VID = 0x1d,
-+ SSAM_SSH_TC_AUD = 0x1e,
-+ SSAM_SSH_TC_SMC = 0x1f,
-+ SSAM_SSH_TC_KPD = 0x20,
-+ SSAM_SSH_TC_REG = 0x21, /* Extended event registry. */
-+ SSAM_SSH_TC_SPT = 0x22,
-+ SSAM_SSH_TC_SYS = 0x23,
-+ SSAM_SSH_TC_ACC1 = 0x24,
-+ SSAM_SSH_TC_SHB = 0x25,
-+ SSAM_SSH_TC_POS = 0x26, /* For obtaining Laptop Studio screen position. */
- };
-
-
---
-2.37.3
-
-From c7d12cb78b2beb6cac2ccea84707dbcc4111b3d6 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 24 Jun 2022 20:36:39 +0200
-Subject: [PATCH] platform/surface: aggregator: Add helper macros for requests
- with argument and return value
-
-Add helper macros for synchronous stack-allocated Surface Aggregator
-request with both argument and return value, similar to the current
-argument-only and return-value-only ones.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220624183642.910893-2-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- include/linux/surface_aggregator/controller.h | 125 ++++++++++++++++++
- include/linux/surface_aggregator/device.h | 36 +++++
- 2 files changed, 161 insertions(+)
-
-diff --git a/include/linux/surface_aggregator/controller.h b/include/linux/surface_aggregator/controller.h
-index 50a2b4926c06..d11a1c6e3186 100644
---- a/include/linux/surface_aggregator/controller.h
-+++ b/include/linux/surface_aggregator/controller.h
-@@ -469,6 +469,67 @@ struct ssam_request_spec_md {
- return 0; \
- }
-
-+/**
-+ * SSAM_DEFINE_SYNC_REQUEST_WR() - Define synchronous SAM request function with
-+ * both argument and return value.
-+ * @name: Name of the generated function.
-+ * @atype: Type of the request's argument.
-+ * @rtype: Type of the request's return value.
-+ * @spec: Specification (&struct ssam_request_spec) defining the request.
-+ *
-+ * Defines a function executing the synchronous SAM request specified by @spec,
-+ * with the request taking an argument of type @atype and having a return value
-+ * of type @rtype. The generated function takes care of setting up the request
-+ * and response structs, buffer allocation, as well as execution of the request
-+ * itself, returning once the request has been fully completed. The required
-+ * transport buffer will be allocated on the stack.
-+ *
-+ * The generated function is defined as ``static int name(struct
-+ * ssam_controller *ctrl, const atype *arg, rtype *ret)``, returning the status
-+ * of the request, which is zero on success and negative on failure. The
-+ * ``ctrl`` parameter is the controller via which the request is sent. The
-+ * request argument is specified via the ``arg`` pointer. The request's return
-+ * value is written to the memory pointed to by the ``ret`` parameter.
-+ *
-+ * Refer to ssam_request_sync_onstack() for more details on the behavior of
-+ * the generated function.
-+ */
-+#define SSAM_DEFINE_SYNC_REQUEST_WR(name, atype, rtype, spec...) \
-+ static int name(struct ssam_controller *ctrl, const atype *arg, rtype *ret) \
-+ { \
-+ struct ssam_request_spec s = (struct ssam_request_spec)spec; \
-+ struct ssam_request rqst; \
-+ struct ssam_response rsp; \
-+ int status; \
-+ \
-+ rqst.target_category = s.target_category; \
-+ rqst.target_id = s.target_id; \
-+ rqst.command_id = s.command_id; \
-+ rqst.instance_id = s.instance_id; \
-+ rqst.flags = s.flags | SSAM_REQUEST_HAS_RESPONSE; \
-+ rqst.length = sizeof(atype); \
-+ rqst.payload = (u8 *)arg; \
-+ \
-+ rsp.capacity = sizeof(rtype); \
-+ rsp.length = 0; \
-+ rsp.pointer = (u8 *)ret; \
-+ \
-+ status = ssam_request_sync_onstack(ctrl, &rqst, &rsp, sizeof(atype)); \
-+ if (status) \
-+ return status; \
-+ \
-+ if (rsp.length != sizeof(rtype)) { \
-+ struct device *dev = ssam_controller_device(ctrl); \
-+ dev_err(dev, \
-+ "rqst: invalid response length, expected %zu, got %zu (tc: %#04x, cid: %#04x)", \
-+ sizeof(rtype), rsp.length, rqst.target_category,\
-+ rqst.command_id); \
-+ return -EIO; \
-+ } \
-+ \
-+ return 0; \
-+ }
-+
- /**
- * SSAM_DEFINE_SYNC_REQUEST_MD_N() - Define synchronous multi-device SAM
- * request function with neither argument nor return value.
-@@ -613,6 +674,70 @@ struct ssam_request_spec_md {
- return 0; \
- }
-
-+/**
-+ * SSAM_DEFINE_SYNC_REQUEST_MD_WR() - Define synchronous multi-device SAM
-+ * request function with both argument and return value.
-+ * @name: Name of the generated function.
-+ * @atype: Type of the request's argument.
-+ * @rtype: Type of the request's return value.
-+ * @spec: Specification (&struct ssam_request_spec_md) defining the request.
-+ *
-+ * Defines a function executing the synchronous SAM request specified by @spec,
-+ * with the request taking an argument of type @atype and having a return value
-+ * of type @rtype. Device specifying parameters are not hard-coded, but instead
-+ * must be provided to the function. The generated function takes care of
-+ * setting up the request and response structs, buffer allocation, as well as
-+ * execution of the request itself, returning once the request has been fully
-+ * completed. The required transport buffer will be allocated on the stack.
-+ *
-+ * The generated function is defined as ``static int name(struct
-+ * ssam_controller *ctrl, u8 tid, u8 iid, const atype *arg, rtype *ret)``,
-+ * returning the status of the request, which is zero on success and negative
-+ * on failure. The ``ctrl`` parameter is the controller via which the request
-+ * is sent, ``tid`` the target ID for the request, and ``iid`` the instance ID.
-+ * The request argument is specified via the ``arg`` pointer. The request's
-+ * return value is written to the memory pointed to by the ``ret`` parameter.
-+ *
-+ * Refer to ssam_request_sync_onstack() for more details on the behavior of
-+ * the generated function.
-+ */
-+#define SSAM_DEFINE_SYNC_REQUEST_MD_WR(name, atype, rtype, spec...) \
-+ static int name(struct ssam_controller *ctrl, u8 tid, u8 iid, \
-+ const atype *arg, rtype *ret) \
-+ { \
-+ struct ssam_request_spec_md s = (struct ssam_request_spec_md)spec; \
-+ struct ssam_request rqst; \
-+ struct ssam_response rsp; \
-+ int status; \
-+ \
-+ rqst.target_category = s.target_category; \
-+ rqst.target_id = tid; \
-+ rqst.command_id = s.command_id; \
-+ rqst.instance_id = iid; \
-+ rqst.flags = s.flags | SSAM_REQUEST_HAS_RESPONSE; \
-+ rqst.length = sizeof(atype); \
-+ rqst.payload = (u8 *)arg; \
-+ \
-+ rsp.capacity = sizeof(rtype); \
-+ rsp.length = 0; \
-+ rsp.pointer = (u8 *)ret; \
-+ \
-+ status = ssam_request_sync_onstack(ctrl, &rqst, &rsp, sizeof(atype)); \
-+ if (status) \
-+ return status; \
-+ \
-+ if (rsp.length != sizeof(rtype)) { \
-+ struct device *dev = ssam_controller_device(ctrl); \
-+ dev_err(dev, \
-+ "rqst: invalid response length, expected %zu, got %zu (tc: %#04x, cid: %#04x)", \
-+ sizeof(rtype), rsp.length, rqst.target_category,\
-+ rqst.command_id); \
-+ return -EIO; \
-+ } \
-+ \
-+ return 0; \
-+ }
-+
-
- /* -- Event notifier/callbacks. --------------------------------------------- */
-
-diff --git a/include/linux/surface_aggregator/device.h b/include/linux/surface_aggregator/device.h
-index c418f7f2732d..6cf7e80312d5 100644
---- a/include/linux/surface_aggregator/device.h
-+++ b/include/linux/surface_aggregator/device.h
-@@ -483,6 +483,42 @@ static inline void ssam_remove_clients(struct device *dev) {}
- sdev->uid.instance, ret); \
- }
-
-+/**
-+ * SSAM_DEFINE_SYNC_REQUEST_CL_WR() - Define synchronous client-device SAM
-+ * request function with argument and return value.
-+ * @name: Name of the generated function.
-+ * @atype: Type of the request's argument.
-+ * @rtype: Type of the request's return value.
-+ * @spec: Specification (&struct ssam_request_spec_md) defining the request.
-+ *
-+ * Defines a function executing the synchronous SAM request specified by @spec,
-+ * with the request taking an argument of type @atype and having a return value
-+ * of type @rtype. Device specifying parameters are not hard-coded, but instead
-+ * are provided via the client device, specifically its UID, supplied when
-+ * calling this function. The generated function takes care of setting up the
-+ * request struct, buffer allocation, as well as execution of the request
-+ * itself, returning once the request has been fully completed. The required
-+ * transport buffer will be allocated on the stack.
-+ *
-+ * The generated function is defined as ``static int name(struct ssam_device
-+ * *sdev, const atype *arg, rtype *ret)``, returning the status of the request,
-+ * which is zero on success and negative on failure. The ``sdev`` parameter
-+ * specifies both the target device of the request and by association the
-+ * controller via which the request is sent. The request's argument is
-+ * specified via the ``arg`` pointer. The request's return value is written to
-+ * the memory pointed to by the ``ret`` parameter.
-+ *
-+ * Refer to ssam_request_sync_onstack() for more details on the behavior of
-+ * the generated function.
-+ */
-+#define SSAM_DEFINE_SYNC_REQUEST_CL_WR(name, atype, rtype, spec...) \
-+ SSAM_DEFINE_SYNC_REQUEST_MD_WR(__raw_##name, atype, rtype, spec) \
-+ static int name(struct ssam_device *sdev, const atype *arg, rtype *ret) \
-+ { \
-+ return __raw_##name(sdev->ctrl, sdev->uid.target, \
-+ sdev->uid.instance, arg, ret); \
-+ }
-+
-
- /* -- Helpers for client-device notifiers. ---------------------------------- */
-
---
-2.37.3
-
-From c133afbb407d272327b236ec809e025407335165 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 24 Jun 2022 20:36:40 +0200
-Subject: [PATCH] platform/surface: Add KIP/POS tablet-mode switch driver
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Add a driver providing a tablet-mode switch input device for Microsoft
-Surface devices using the Surface Aggregator KIP subsystem (to manage
-detachable peripherals) or POS subsystem (to obtain device posture
-information).
-
-The KIP (full name unknown, abbreviation found through reverse
-engineering) subsystem is used on the Surface Pro 8 and Surface Pro X to
-manage the keyboard cover. Among other things, it provides information
-on the positioning (posture) of the cover (closed, laptop-style,
-detached, folded-back, ...), which can be used to implement an input
-device providing the SW_TABLET_MODE event. Similarly, the POS (posture
-information) subsystem provides such information on the Surface Laptop
-Studio, with the difference being that the keyboard is not detachable.
-
-As implementing the tablet-mode switch for both subsystems is largely
-similar, the driver proposed in this commit, in large, acts as a generic
-tablet mode switch driver framework for the Surface Aggregator Module.
-Specific implementations using this framework are provided for the KIP
-and POS subsystems, adding tablet-mode switch support to the
-aforementioned devices.
-
-A few more notes on the Surface Laptop Studio:
-
-A peculiarity of the Surface Laptop Studio is its "slate/tent" mode
-(symbolized: user> _/\). In this mode, the screen covers the keyboard
-but leaves the touchpad exposed. This is essentially a mode in-between
-tablet and laptop, and it is debatable whether tablet-mode should be
-enabled in this mode. We therefore let the user decide this via a module
-parameter.
-
-In particular, tablet-mode may bring up the on-screen touch keyboard
-more easily, which would be desirable in this mode. However, some
-user-space software currently also decides to disable keyboard and, more
-importantly, touchpad input, while the touchpad is still accessible in
-the "slate/tent" mode. Furthermore, this mode shares its identifier with
-"slate/flipped" mode where the screen is flipped 180° and the keyboard
-points away from the user (symbolized: user> /_). In this mode we would
-like to enable auto-rotation, something that user-space software may
-only do when tablet-mode is enabled. We therefore default to the
-slate-mode enabling the tablet-mode switch.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220624183642.910893-3-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- .../sysfs-bus-surface_aggregator-tabletsw | 57 ++
- MAINTAINERS | 6 +
- drivers/platform/surface/Kconfig | 23 +
- drivers/platform/surface/Makefile | 1 +
- .../surface/surface_aggregator_tabletsw.c | 533 ++++++++++++++++++
- 5 files changed, 620 insertions(+)
- create mode 100644 Documentation/ABI/testing/sysfs-bus-surface_aggregator-tabletsw
- create mode 100644 drivers/platform/surface/surface_aggregator_tabletsw.c
-
-diff --git a/Documentation/ABI/testing/sysfs-bus-surface_aggregator-tabletsw b/Documentation/ABI/testing/sysfs-bus-surface_aggregator-tabletsw
-new file mode 100644
-index 000000000000..74cd9d754e60
---- /dev/null
-+++ b/Documentation/ABI/testing/sysfs-bus-surface_aggregator-tabletsw
-@@ -0,0 +1,57 @@
-+What: /sys/bus/surface_aggregator/devices/01:0e:01:00:01/state
-+Date: July 2022
-+KernelVersion: 5.20
-+Contact: Maximilian Luz <luzmaximilian@gmail.com>
-+Description:
-+ This attribute returns a string with the current type-cover
-+ or device posture, as indicated by the embedded controller.
-+ Currently returned posture states are:
-+
-+ - "disconnected": The type-cover has been disconnected.
-+
-+ - "closed": The type-cover has been folded closed and lies on
-+ top of the display.
-+
-+ - "laptop": The type-cover is open and in laptop-mode, i.e.,
-+ ready for normal use.
-+
-+ - "folded-canvas": The type-cover has been folded back
-+ part-ways, but does not lie flush with the back side of the
-+ device. In general, this means that the kick-stand is used
-+ and extended atop of the cover.
-+
-+ - "folded-back": The type cover has been fully folded back and
-+ lies flush with the back side of the device.
-+
-+ - "<unknown>": The current state is unknown to the driver, for
-+ example due to newer as-of-yet unsupported hardware.
-+
-+ New states may be introduced with new hardware. Users therefore
-+ must not rely on this list of states being exhaustive and
-+ gracefully handle unknown states.
-+
-+What: /sys/bus/surface_aggregator/devices/01:26:01:00:01/state
-+Date: July 2022
-+KernelVersion: 5.20
-+Contact: Maximilian Luz <luzmaximilian@gmail.com>
-+Description:
-+ This attribute returns a string with the current device posture, as indicated by the embedded controller. Currently
-+ returned posture states are:
-+
-+ - "closed": The lid of the device is closed.
-+
-+ - "laptop": The lid of the device is opened and the device
-+ operates as a normal laptop.
-+
-+ - "slate": The screen covers the keyboard or has been flipped
-+ back and the device operates mainly based on touch input.
-+
-+ - "tablet": The device operates as tablet and exclusively
-+ relies on touch input (or external peripherals).
-+
-+ - "<unknown>": The current state is unknown to the driver, for
-+ example due to newer as-of-yet unsupported hardware.
-+
-+ New states may be introduced with new hardware. Users therefore
-+ must not rely on this list of states being exhaustive and
-+ gracefully handle unknown states.
-diff --git a/MAINTAINERS b/MAINTAINERS
-index 08620b9a44fc..773eb8387f4a 100644
---- a/MAINTAINERS
-+++ b/MAINTAINERS
-@@ -13299,6 +13299,12 @@ F: drivers/scsi/smartpqi/smartpqi*.[ch]
- F: include/linux/cciss*.h
- F: include/uapi/linux/cciss*.h
-
-+MICROSOFT SURFACE AGGREGATOR TABLET-MODE SWITCH
-+M: Maximilian Luz <luzmaximilian@gmail.com>
-+L: platform-driver-x86@vger.kernel.org
-+S: Maintained
-+F: drivers/platform/surface/surface_aggregator_tablet_switch.c
-+
- MICROSOFT SURFACE BATTERY AND AC DRIVERS
- M: Maximilian Luz <luzmaximilian@gmail.com>
- L: linux-pm@vger.kernel.org
-diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
-index eb79fbed8059..b152e930cc84 100644
---- a/drivers/platform/surface/Kconfig
-+++ b/drivers/platform/surface/Kconfig
-@@ -99,6 +99,29 @@ config SURFACE_AGGREGATOR_REGISTRY
- the respective client devices. Drivers for these devices still need to
- be selected via the other options.
-
-+config SURFACE_AGGREGATOR_TABLET_SWITCH
-+ tristate "Surface Aggregator Generic Tablet-Mode Switch Driver"
-+ depends on SURFACE_AGGREGATOR
-+ depends on SURFACE_AGGREGATOR_BUS
-+ depends on INPUT
-+ help
-+ Provides a tablet-mode switch input device on Microsoft Surface models
-+ using the KIP subsystem for detachable keyboards (e.g. keyboard covers)
-+ or the POS subsystem for device/screen posture changes.
-+
-+ The KIP subsystem is used on newer Surface generations to handle
-+ detachable input peripherals, specifically the keyboard cover (containing
-+ keyboard and touchpad) on the Surface Pro 8 and Surface Pro X. The POS
-+ subsystem is used for device posture change notifications on the Surface
-+ Laptop Studio. This module provides a driver to let user-space know when
-+ the device should be considered in tablet-mode due to the keyboard cover
-+ being detached or folded back (essentially signaling when the keyboard is
-+ not available for input). It does so by creating a tablet-mode switch
-+ input device, sending the standard SW_TABLET_MODE event on mode change.
-+
-+ Select M or Y here, if you want to provide tablet-mode switch input
-+ events on the Surface Pro 8, Surface Pro X, and Surface Laptop Studio.
-+
- config SURFACE_DTX
- tristate "Surface DTX (Detachment System) Driver"
- depends on SURFACE_AGGREGATOR
-diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
-index 0fc9cd3e4dd9..18b27898543e 100644
---- a/drivers/platform/surface/Makefile
-+++ b/drivers/platform/surface/Makefile
-@@ -10,6 +10,7 @@ obj-$(CONFIG_SURFACE_ACPI_NOTIFY) += surface_acpi_notify.o
- obj-$(CONFIG_SURFACE_AGGREGATOR) += aggregator/
- obj-$(CONFIG_SURFACE_AGGREGATOR_CDEV) += surface_aggregator_cdev.o
- obj-$(CONFIG_SURFACE_AGGREGATOR_REGISTRY) += surface_aggregator_registry.o
-+obj-$(CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH) += surface_aggregator_tabletsw.o
- obj-$(CONFIG_SURFACE_DTX) += surface_dtx.o
- obj-$(CONFIG_SURFACE_GPE) += surface_gpe.o
- obj-$(CONFIG_SURFACE_HOTPLUG) += surface_hotplug.o
-diff --git a/drivers/platform/surface/surface_aggregator_tabletsw.c b/drivers/platform/surface/surface_aggregator_tabletsw.c
-new file mode 100644
-index 000000000000..596ca6c80681
---- /dev/null
-+++ b/drivers/platform/surface/surface_aggregator_tabletsw.c
-@@ -0,0 +1,533 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Surface System Aggregator Module (SSAM) tablet mode switch driver.
-+ *
-+ * Copyright (C) 2022 Maximilian Luz <luzmaximilian@gmail.com>
-+ */
-+
-+#include <asm/unaligned.h>
-+#include <linux/input.h>
-+#include <linux/kernel.h>
-+#include <linux/module.h>
-+#include <linux/types.h>
-+#include <linux/workqueue.h>
-+
-+#include <linux/surface_aggregator/controller.h>
-+#include <linux/surface_aggregator/device.h>
-+
-+
-+/* -- SSAM generic tablet switch driver framework. -------------------------- */
-+
-+struct ssam_tablet_sw;
-+
-+struct ssam_tablet_sw_ops {
-+ int (*get_state)(struct ssam_tablet_sw *sw, u32 *state);
-+ const char *(*state_name)(struct ssam_tablet_sw *sw, u32 state);
-+ bool (*state_is_tablet_mode)(struct ssam_tablet_sw *sw, u32 state);
-+};
-+
-+struct ssam_tablet_sw {
-+ struct ssam_device *sdev;
-+
-+ u32 state;
-+ struct work_struct update_work;
-+ struct input_dev *mode_switch;
-+
-+ struct ssam_tablet_sw_ops ops;
-+ struct ssam_event_notifier notif;
-+};
-+
-+struct ssam_tablet_sw_desc {
-+ struct {
-+ const char *name;
-+ const char *phys;
-+ } dev;
-+
-+ struct {
-+ u32 (*notify)(struct ssam_event_notifier *nf, const struct ssam_event *event);
-+ int (*get_state)(struct ssam_tablet_sw *sw, u32 *state);
-+ const char *(*state_name)(struct ssam_tablet_sw *sw, u32 state);
-+ bool (*state_is_tablet_mode)(struct ssam_tablet_sw *sw, u32 state);
-+ } ops;
-+
-+ struct {
-+ struct ssam_event_registry reg;
-+ struct ssam_event_id id;
-+ enum ssam_event_mask mask;
-+ u8 flags;
-+ } event;
-+};
-+
-+static ssize_t state_show(struct device *dev, struct device_attribute *attr, char *buf)
-+{
-+ struct ssam_tablet_sw *sw = dev_get_drvdata(dev);
-+ const char *state = sw->ops.state_name(sw, sw->state);
-+
-+ return sysfs_emit(buf, "%s\n", state);
-+}
-+static DEVICE_ATTR_RO(state);
-+
-+static struct attribute *ssam_tablet_sw_attrs[] = {
-+ &dev_attr_state.attr,
-+ NULL,
-+};
-+
-+static const struct attribute_group ssam_tablet_sw_group = {
-+ .attrs = ssam_tablet_sw_attrs,
-+};
-+
-+static void ssam_tablet_sw_update_workfn(struct work_struct *work)
-+{
-+ struct ssam_tablet_sw *sw = container_of(work, struct ssam_tablet_sw, update_work);
-+ int tablet, status;
-+ u32 state;
-+
-+ status = sw->ops.get_state(sw, &state);
-+ if (status)
-+ return;
-+
-+ if (sw->state == state)
-+ return;
-+ sw->state = state;
-+
-+ /* Send SW_TABLET_MODE event. */
-+ tablet = sw->ops.state_is_tablet_mode(sw, state);
-+ input_report_switch(sw->mode_switch, SW_TABLET_MODE, tablet);
-+ input_sync(sw->mode_switch);
-+}
-+
-+static int __maybe_unused ssam_tablet_sw_resume(struct device *dev)
-+{
-+ struct ssam_tablet_sw *sw = dev_get_drvdata(dev);
-+
-+ schedule_work(&sw->update_work);
-+ return 0;
-+}
-+static SIMPLE_DEV_PM_OPS(ssam_tablet_sw_pm_ops, NULL, ssam_tablet_sw_resume);
-+
-+static int ssam_tablet_sw_probe(struct ssam_device *sdev)
-+{
-+ const struct ssam_tablet_sw_desc *desc;
-+ struct ssam_tablet_sw *sw;
-+ int tablet, status;
-+
-+ desc = ssam_device_get_match_data(sdev);
-+ if (!desc) {
-+ WARN(1, "no driver match data specified");
-+ return -EINVAL;
-+ }
-+
-+ sw = devm_kzalloc(&sdev->dev, sizeof(*sw), GFP_KERNEL);
-+ if (!sw)
-+ return -ENOMEM;
-+
-+ sw->sdev = sdev;
-+
-+ sw->ops.get_state = desc->ops.get_state;
-+ sw->ops.state_name = desc->ops.state_name;
-+ sw->ops.state_is_tablet_mode = desc->ops.state_is_tablet_mode;
-+
-+ INIT_WORK(&sw->update_work, ssam_tablet_sw_update_workfn);
-+
-+ ssam_device_set_drvdata(sdev, sw);
-+
-+ /* Get initial state. */
-+ status = sw->ops.get_state(sw, &sw->state);
-+ if (status)
-+ return status;
-+
-+ /* Set up tablet mode switch. */
-+ sw->mode_switch = devm_input_allocate_device(&sdev->dev);
-+ if (!sw->mode_switch)
-+ return -ENOMEM;
-+
-+ sw->mode_switch->name = desc->dev.name;
-+ sw->mode_switch->phys = desc->dev.phys;
-+ sw->mode_switch->id.bustype = BUS_HOST;
-+ sw->mode_switch->dev.parent = &sdev->dev;
-+
-+ tablet = sw->ops.state_is_tablet_mode(sw, sw->state);
-+ input_set_capability(sw->mode_switch, EV_SW, SW_TABLET_MODE);
-+ input_report_switch(sw->mode_switch, SW_TABLET_MODE, tablet);
-+
-+ status = input_register_device(sw->mode_switch);
-+ if (status)
-+ return status;
-+
-+ /* Set up notifier. */
-+ sw->notif.base.priority = 0;
-+ sw->notif.base.fn = desc->ops.notify;
-+ sw->notif.event.reg = desc->event.reg;
-+ sw->notif.event.id = desc->event.id;
-+ sw->notif.event.mask = desc->event.mask;
-+ sw->notif.event.flags = SSAM_EVENT_SEQUENCED;
-+
-+ status = ssam_device_notifier_register(sdev, &sw->notif);
-+ if (status)
-+ return status;
-+
-+ status = sysfs_create_group(&sdev->dev.kobj, &ssam_tablet_sw_group);
-+ if (status)
-+ goto err;
-+
-+ /* We might have missed events during setup, so check again. */
-+ schedule_work(&sw->update_work);
-+ return 0;
-+
-+err:
-+ ssam_device_notifier_unregister(sdev, &sw->notif);
-+ cancel_work_sync(&sw->update_work);
-+ return status;
-+}
-+
-+static void ssam_tablet_sw_remove(struct ssam_device *sdev)
-+{
-+ struct ssam_tablet_sw *sw = ssam_device_get_drvdata(sdev);
-+
-+ sysfs_remove_group(&sdev->dev.kobj, &ssam_tablet_sw_group);
-+
-+ ssam_device_notifier_unregister(sdev, &sw->notif);
-+ cancel_work_sync(&sw->update_work);
-+}
-+
-+
-+/* -- SSAM KIP tablet switch implementation. -------------------------------- */
-+
-+#define SSAM_EVENT_KIP_CID_COVER_STATE_CHANGED 0x1d
-+
-+enum ssam_kip_cover_state {
-+ SSAM_KIP_COVER_STATE_DISCONNECTED = 0x01,
-+ SSAM_KIP_COVER_STATE_CLOSED = 0x02,
-+ SSAM_KIP_COVER_STATE_LAPTOP = 0x03,
-+ SSAM_KIP_COVER_STATE_FOLDED_CANVAS = 0x04,
-+ SSAM_KIP_COVER_STATE_FOLDED_BACK = 0x05,
-+};
-+
-+static const char *ssam_kip_cover_state_name(struct ssam_tablet_sw *sw, u32 state)
-+{
-+ switch (state) {
-+ case SSAM_KIP_COVER_STATE_DISCONNECTED:
-+ return "disconnected";
-+
-+ case SSAM_KIP_COVER_STATE_CLOSED:
-+ return "closed";
-+
-+ case SSAM_KIP_COVER_STATE_LAPTOP:
-+ return "laptop";
-+
-+ case SSAM_KIP_COVER_STATE_FOLDED_CANVAS:
-+ return "folded-canvas";
-+
-+ case SSAM_KIP_COVER_STATE_FOLDED_BACK:
-+ return "folded-back";
-+
-+ default:
-+ dev_warn(&sw->sdev->dev, "unknown KIP cover state: %u\n", state);
-+ return "<unknown>";
-+ }
-+}
-+
-+static bool ssam_kip_cover_state_is_tablet_mode(struct ssam_tablet_sw *sw, u32 state)
-+{
-+ switch (state) {
-+ case SSAM_KIP_COVER_STATE_DISCONNECTED:
-+ case SSAM_KIP_COVER_STATE_FOLDED_CANVAS:
-+ case SSAM_KIP_COVER_STATE_FOLDED_BACK:
-+ return true;
-+
-+ case SSAM_KIP_COVER_STATE_CLOSED:
-+ case SSAM_KIP_COVER_STATE_LAPTOP:
-+ return false;
-+
-+ default:
-+ dev_warn(&sw->sdev->dev, "unknown KIP cover state: %d\n", sw->state);
-+ return true;
-+ }
-+}
-+
-+SSAM_DEFINE_SYNC_REQUEST_R(__ssam_kip_get_cover_state, u8, {
-+ .target_category = SSAM_SSH_TC_KIP,
-+ .target_id = 0x01,
-+ .command_id = 0x1d,
-+ .instance_id = 0x00,
-+});
-+
-+static int ssam_kip_get_cover_state(struct ssam_tablet_sw *sw, u32 *state)
-+{
-+ int status;
-+ u8 raw;
-+
-+ status = ssam_retry(__ssam_kip_get_cover_state, sw->sdev->ctrl, &raw);
-+ if (status < 0) {
-+ dev_err(&sw->sdev->dev, "failed to query KIP lid state: %d\n", status);
-+ return status;
-+ }
-+
-+ *state = raw;
-+ return 0;
-+}
-+
-+static u32 ssam_kip_sw_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
-+{
-+ struct ssam_tablet_sw *sw = container_of(nf, struct ssam_tablet_sw, notif);
-+
-+ if (event->command_id != SSAM_EVENT_KIP_CID_COVER_STATE_CHANGED)
-+ return 0; /* Return "unhandled". */
-+
-+ if (event->length < 1)
-+ dev_warn(&sw->sdev->dev, "unexpected payload size: %u\n", event->length);
-+
-+ schedule_work(&sw->update_work);
-+ return SSAM_NOTIF_HANDLED;
-+}
-+
-+static const struct ssam_tablet_sw_desc ssam_kip_sw_desc = {
-+ .dev = {
-+ .name = "Microsoft Surface KIP Tablet Mode Switch",
-+ .phys = "ssam/01:0e:01:00:01/input0",
-+ },
-+ .ops = {
-+ .notify = ssam_kip_sw_notif,
-+ .get_state = ssam_kip_get_cover_state,
-+ .state_name = ssam_kip_cover_state_name,
-+ .state_is_tablet_mode = ssam_kip_cover_state_is_tablet_mode,
-+ },
-+ .event = {
-+ .reg = SSAM_EVENT_REGISTRY_SAM,
-+ .id = {
-+ .target_category = SSAM_SSH_TC_KIP,
-+ .instance = 0,
-+ },
-+ .mask = SSAM_EVENT_MASK_TARGET,
-+ },
-+};
-+
-+
-+/* -- SSAM POS tablet switch implementation. -------------------------------- */
-+
-+static bool tablet_mode_in_slate_state = true;
-+module_param(tablet_mode_in_slate_state, bool, 0644);
-+MODULE_PARM_DESC(tablet_mode_in_slate_state, "Enable tablet mode in slate device posture, default is 'true'");
-+
-+#define SSAM_EVENT_POS_CID_POSTURE_CHANGED 0x03
-+#define SSAM_POS_MAX_SOURCES 4
-+
-+enum ssam_pos_state {
-+ SSAM_POS_POSTURE_LID_CLOSED = 0x00,
-+ SSAM_POS_POSTURE_LAPTOP = 0x01,
-+ SSAM_POS_POSTURE_SLATE = 0x02,
-+ SSAM_POS_POSTURE_TABLET = 0x03,
-+};
-+
-+struct ssam_sources_list {
-+ __le32 count;
-+ __le32 id[SSAM_POS_MAX_SOURCES];
-+} __packed;
-+
-+static const char *ssam_pos_state_name(struct ssam_tablet_sw *sw, u32 state)
-+{
-+ switch (state) {
-+ case SSAM_POS_POSTURE_LID_CLOSED:
-+ return "closed";
-+
-+ case SSAM_POS_POSTURE_LAPTOP:
-+ return "laptop";
-+
-+ case SSAM_POS_POSTURE_SLATE:
-+ return "slate";
-+
-+ case SSAM_POS_POSTURE_TABLET:
-+ return "tablet";
-+
-+ default:
-+ dev_warn(&sw->sdev->dev, "unknown device posture: %u\n", state);
-+ return "<unknown>";
-+ }
-+}
-+
-+static bool ssam_pos_state_is_tablet_mode(struct ssam_tablet_sw *sw, u32 state)
-+{
-+ switch (state) {
-+ case SSAM_POS_POSTURE_LAPTOP:
-+ case SSAM_POS_POSTURE_LID_CLOSED:
-+ return false;
-+
-+ case SSAM_POS_POSTURE_SLATE:
-+ return tablet_mode_in_slate_state;
-+
-+ case SSAM_POS_POSTURE_TABLET:
-+ return true;
-+
-+ default:
-+ dev_warn(&sw->sdev->dev, "unknown device posture: %u\n", state);
-+ return true;
-+ }
-+}
-+
-+static int ssam_pos_get_sources_list(struct ssam_tablet_sw *sw, struct ssam_sources_list *sources)
-+{
-+ struct ssam_request rqst;
-+ struct ssam_response rsp;
-+ int status;
-+
-+ rqst.target_category = SSAM_SSH_TC_POS;
-+ rqst.target_id = 0x01;
-+ rqst.command_id = 0x01;
-+ rqst.instance_id = 0x00;
-+ rqst.flags = SSAM_REQUEST_HAS_RESPONSE;
-+ rqst.length = 0;
-+ rqst.payload = NULL;
-+
-+ rsp.capacity = sizeof(*sources);
-+ rsp.length = 0;
-+ rsp.pointer = (u8 *)sources;
-+
-+ status = ssam_retry(ssam_request_sync_onstack, sw->sdev->ctrl, &rqst, &rsp, 0);
-+ if (status)
-+ return status;
-+
-+ /* We need at least the 'sources->count' field. */
-+ if (rsp.length < sizeof(__le32)) {
-+ dev_err(&sw->sdev->dev, "received source list response is too small\n");
-+ return -EPROTO;
-+ }
-+
-+ /* Make sure 'sources->count' matches with the response length. */
-+ if (get_unaligned_le32(&sources->count) * sizeof(__le32) + sizeof(__le32) != rsp.length) {
-+ dev_err(&sw->sdev->dev, "mismatch between number of sources and response size\n");
-+ return -EPROTO;
-+ }
-+
-+ return 0;
-+}
-+
-+static int ssam_pos_get_source(struct ssam_tablet_sw *sw, u32 *source_id)
-+{
-+ struct ssam_sources_list sources = {};
-+ int status;
-+
-+ status = ssam_pos_get_sources_list(sw, &sources);
-+ if (status)
-+ return status;
-+
-+ if (sources.count == 0) {
-+ dev_err(&sw->sdev->dev, "no posture sources found\n");
-+ return -ENODEV;
-+ }
-+
-+ /*
-+ * We currently don't know what to do with more than one posture
-+ * source. At the moment, only one source seems to be used/provided.
-+ * The WARN_ON() here should hopefully let us know quickly once there
-+ * is a device that provides multiple sources, at which point we can
-+ * then try to figure out how to handle them.
-+ */
-+ WARN_ON(sources.count > 1);
-+
-+ *source_id = get_unaligned_le32(&sources.id[0]);
-+ return 0;
-+}
-+
-+SSAM_DEFINE_SYNC_REQUEST_WR(__ssam_pos_get_posture_for_source, __le32, __le32, {
-+ .target_category = SSAM_SSH_TC_POS,
-+ .target_id = 0x01,
-+ .command_id = 0x02,
-+ .instance_id = 0x00,
-+});
-+
-+static int ssam_pos_get_posture_for_source(struct ssam_tablet_sw *sw, u32 source_id, u32 *posture)
-+{
-+ __le32 source_le = cpu_to_le32(source_id);
-+ __le32 rspval_le = 0;
-+ int status;
-+
-+ status = ssam_retry(__ssam_pos_get_posture_for_source, sw->sdev->ctrl,
-+ &source_le, &rspval_le);
-+ if (status)
-+ return status;
-+
-+ *posture = le32_to_cpu(rspval_le);
-+ return 0;
-+}
-+
-+static int ssam_pos_get_posture(struct ssam_tablet_sw *sw, u32 *state)
-+{
-+ u32 source_id;
-+ int status;
-+
-+ status = ssam_pos_get_source(sw, &source_id);
-+ if (status) {
-+ dev_err(&sw->sdev->dev, "failed to get posture source ID: %d\n", status);
-+ return status;
-+ }
-+
-+ status = ssam_pos_get_posture_for_source(sw, source_id, state);
-+ if (status) {
-+ dev_err(&sw->sdev->dev, "failed to get posture value for source %u: %d\n",
-+ source_id, status);
-+ return status;
-+ }
-+
-+ return 0;
-+}
-+
-+static u32 ssam_pos_sw_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
-+{
-+ struct ssam_tablet_sw *sw = container_of(nf, struct ssam_tablet_sw, notif);
-+
-+ if (event->command_id != SSAM_EVENT_POS_CID_POSTURE_CHANGED)
-+ return 0; /* Return "unhandled". */
-+
-+ if (event->length != sizeof(__le32) * 3)
-+ dev_warn(&sw->sdev->dev, "unexpected payload size: %u\n", event->length);
-+
-+ schedule_work(&sw->update_work);
-+ return SSAM_NOTIF_HANDLED;
-+}
-+
-+static const struct ssam_tablet_sw_desc ssam_pos_sw_desc = {
-+ .dev = {
-+ .name = "Microsoft Surface POS Tablet Mode Switch",
-+ .phys = "ssam/01:26:01:00:01/input0",
-+ },
-+ .ops = {
-+ .notify = ssam_pos_sw_notif,
-+ .get_state = ssam_pos_get_posture,
-+ .state_name = ssam_pos_state_name,
-+ .state_is_tablet_mode = ssam_pos_state_is_tablet_mode,
-+ },
-+ .event = {
-+ .reg = SSAM_EVENT_REGISTRY_SAM,
-+ .id = {
-+ .target_category = SSAM_SSH_TC_POS,
-+ .instance = 0,
-+ },
-+ .mask = SSAM_EVENT_MASK_TARGET,
-+ },
-+};
-+
-+
-+/* -- Driver registration. -------------------------------------------------- */
-+
-+static const struct ssam_device_id ssam_tablet_sw_match[] = {
-+ { SSAM_SDEV(KIP, 0x01, 0x00, 0x01), (unsigned long)&ssam_kip_sw_desc },
-+ { SSAM_SDEV(POS, 0x01, 0x00, 0x01), (unsigned long)&ssam_pos_sw_desc },
-+ { },
-+};
-+MODULE_DEVICE_TABLE(ssam, ssam_tablet_sw_match);
-+
-+static struct ssam_device_driver ssam_tablet_sw_driver = {
-+ .probe = ssam_tablet_sw_probe,
-+ .remove = ssam_tablet_sw_remove,
-+ .match_table = ssam_tablet_sw_match,
-+ .driver = {
-+ .name = "surface_aggregator_tablet_mode_switch",
-+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
-+ .pm = &ssam_tablet_sw_pm_ops,
-+ },
-+};
-+module_ssam_device_driver(ssam_tablet_sw_driver);
-+
-+MODULE_AUTHOR("Maximilian Luz <luzmaximilian@gmail.com>");
-+MODULE_DESCRIPTION("Tablet mode switch driver for Surface devices using the Surface Aggregator Module");
-+MODULE_LICENSE("GPL");
---
-2.37.3
-
-From 4c7ffca61c7b8d0e61817a7b3b33a1de211e7fe0 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 24 Jun 2022 20:36:41 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Add support for tablet
- mode switch on Surface Pro 8
-
-Add a KIP subsystem tablet-mode switch device for the Surface Pro 8.
-The respective driver for this device provides SW_TABLET_MODE input
-events for user-space based on the state of the keyboard cover (e.g.
-detached, folded-back, normal/laptop mode).
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220624183642.910893-4-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/surface_aggregator_registry.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index bf3303f1aa71..8f249df673a4 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -77,6 +77,12 @@ static const struct software_node ssam_node_tmp_pprof = {
- .parent = &ssam_node_root,
- };
-
-+/* Tablet-mode switch via KIP subsystem. */
-+static const struct software_node ssam_node_kip_tablet_switch = {
-+ .name = "ssam:01:0e:01:00:01",
-+ .parent = &ssam_node_root,
-+};
-+
- /* DTX / detachment-system device (Surface Book 3). */
- static const struct software_node ssam_node_bas_dtx = {
- .name = "ssam:01:11:01:00:00",
-@@ -264,11 +270,11 @@ static const struct software_node *ssam_node_group_sp8[] = {
- &ssam_node_bat_ac,
- &ssam_node_bat_main,
- &ssam_node_tmp_pprof,
-+ &ssam_node_kip_tablet_switch,
- &ssam_node_hid_kip_keyboard,
- &ssam_node_hid_kip_penstash,
- &ssam_node_hid_kip_touchpad,
- &ssam_node_hid_kip_iid5,
-- /* TODO: Add support for tablet mode switch. */
- NULL,
- };
-
---
-2.37.3
-
-From 6ba6d1fcf6051cb53a77699f48c16eae657af1da Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 24 Jun 2022 20:36:42 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Add support for tablet
- mode switch on Surface Laptop Studio
-
-Add a POS subsystem tablet-mode switch device for the Surface Laptop
-Studio. The respective driver for this device provides SW_TABLET_MODE
-input events for user-space based on the posture of the screen.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220624183642.910893-5-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/surface_aggregator_registry.c | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index 8f249df673a4..f1c5905f1c16 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -191,6 +191,12 @@ static const struct software_node ssam_node_hid_kip_iid5 = {
- .parent = &ssam_node_hub_kip,
- };
-
-+/* Tablet-mode switch via POS subsystem. */
-+static const struct software_node ssam_node_pos_tablet_switch = {
-+ .name = "ssam:01:26:01:00:01",
-+ .parent = &ssam_node_root,
-+};
-+
- /*
- * Devices for 5th- and 6th-generations models:
- * - Surface Book 2,
-@@ -237,6 +243,7 @@ static const struct software_node *ssam_node_group_sls[] = {
- &ssam_node_bat_ac,
- &ssam_node_bat_main,
- &ssam_node_tmp_pprof,
-+ &ssam_node_pos_tablet_switch,
- &ssam_node_hid_tid1_keyboard,
- &ssam_node_hid_tid1_penstash,
- &ssam_node_hid_tid1_touchpad,
---
-2.37.3
-
-From cc428a2c4526883ee235656522c24e5db1a1ed0c Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 24 Jun 2022 22:57:58 +0200
-Subject: [PATCH] platform/surface: aggregator: Move device registry helper
- functions to core module
-
-Move helper functions for client device registration to the core module.
-This simplifies addition of future DT/OF support and also allows us to
-split out the device hub drivers into their own module.
-
-At the same time, also improve device node validation a bit by not
-silently skipping devices with invalid device UID specifiers. Further,
-ensure proper lifetime management for the firmware/software nodes
-associated with the added devices.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220624205800.1355621-2-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/aggregator/bus.c | 149 ++++++++++++++++--
- .../surface/surface_aggregator_registry.c | 75 +--------
- include/linux/surface_aggregator/device.h | 52 ++++++
- 3 files changed, 187 insertions(+), 89 deletions(-)
-
-diff --git a/drivers/platform/surface/aggregator/bus.c b/drivers/platform/surface/aggregator/bus.c
-index abbbb5b08b07..e0b0381a2834 100644
---- a/drivers/platform/surface/aggregator/bus.c
-+++ b/drivers/platform/surface/aggregator/bus.c
-@@ -6,6 +6,7 @@
- */
-
- #include <linux/device.h>
-+#include <linux/property.h>
- #include <linux/slab.h>
-
- #include <linux/surface_aggregator/controller.h>
-@@ -14,6 +15,9 @@
- #include "bus.h"
- #include "controller.h"
-
-+
-+/* -- Device and bus functions. --------------------------------------------- */
-+
- static ssize_t modalias_show(struct device *dev, struct device_attribute *attr,
- char *buf)
- {
-@@ -46,6 +50,7 @@ static void ssam_device_release(struct device *dev)
- struct ssam_device *sdev = to_ssam_device(dev);
-
- ssam_controller_put(sdev->ctrl);
-+ fwnode_handle_put(sdev->dev.fwnode);
- kfree(sdev);
- }
-
-@@ -363,6 +368,134 @@ void ssam_device_driver_unregister(struct ssam_device_driver *sdrv)
- }
- EXPORT_SYMBOL_GPL(ssam_device_driver_unregister);
-
-+
-+/* -- Bus registration. ----------------------------------------------------- */
-+
-+/**
-+ * ssam_bus_register() - Register and set-up the SSAM client device bus.
-+ */
-+int ssam_bus_register(void)
-+{
-+ return bus_register(&ssam_bus_type);
-+}
-+
-+/**
-+ * ssam_bus_unregister() - Unregister the SSAM client device bus.
-+ */
-+void ssam_bus_unregister(void)
-+{
-+ return bus_unregister(&ssam_bus_type);
-+}
-+
-+
-+/* -- Helpers for controller and hub devices. ------------------------------- */
-+
-+static int ssam_device_uid_from_string(const char *str, struct ssam_device_uid *uid)
-+{
-+ u8 d, tc, tid, iid, fn;
-+ int n;
-+
-+ n = sscanf(str, "%hhx:%hhx:%hhx:%hhx:%hhx", &d, &tc, &tid, &iid, &fn);
-+ if (n != 5)
-+ return -EINVAL;
-+
-+ uid->domain = d;
-+ uid->category = tc;
-+ uid->target = tid;
-+ uid->instance = iid;
-+ uid->function = fn;
-+
-+ return 0;
-+}
-+
-+static int ssam_get_uid_for_node(struct fwnode_handle *node, struct ssam_device_uid *uid)
-+{
-+ const char *str = fwnode_get_name(node);
-+
-+ /*
-+ * To simplify definitions of firmware nodes, we set the device name
-+ * based on the UID of the device, prefixed with "ssam:".
-+ */
-+ if (strncmp(str, "ssam:", strlen("ssam:")) != 0)
-+ return -ENODEV;
-+
-+ str += strlen("ssam:");
-+ return ssam_device_uid_from_string(str, uid);
-+}
-+
-+static int ssam_add_client_device(struct device *parent, struct ssam_controller *ctrl,
-+ struct fwnode_handle *node)
-+{
-+ struct ssam_device_uid uid;
-+ struct ssam_device *sdev;
-+ int status;
-+
-+ status = ssam_get_uid_for_node(node, &uid);
-+ if (status)
-+ return status;
-+
-+ sdev = ssam_device_alloc(ctrl, uid);
-+ if (!sdev)
-+ return -ENOMEM;
-+
-+ sdev->dev.parent = parent;
-+ sdev->dev.fwnode = fwnode_handle_get(node);
-+
-+ status = ssam_device_add(sdev);
-+ if (status)
-+ ssam_device_put(sdev);
-+
-+ return status;
-+}
-+
-+/**
-+ * __ssam_register_clients() - Register client devices defined under the
-+ * given firmware node as children of the given device.
-+ * @parent: The parent device under which clients should be registered.
-+ * @ctrl: The controller with which client should be registered.
-+ * @node: The firmware node holding definitions of the devices to be added.
-+ *
-+ * Register all clients that have been defined as children of the given root
-+ * firmware node as children of the given parent device. The respective child
-+ * firmware nodes will be associated with the correspondingly created child
-+ * devices.
-+ *
-+ * The given controller will be used to instantiate the new devices. See
-+ * ssam_device_add() for details.
-+ *
-+ * Note that, generally, the use of either ssam_device_register_clients() or
-+ * ssam_register_clients() should be preferred as they directly use the
-+ * firmware node and/or controller associated with the given device. This
-+ * function is only intended for use when different device specifications (e.g.
-+ * ACPI and firmware nodes) need to be combined (as is done in the platform hub
-+ * of the device registry).
-+ *
-+ * Return: Returns zero on success, nonzero on failure.
-+ */
-+int __ssam_register_clients(struct device *parent, struct ssam_controller *ctrl,
-+ struct fwnode_handle *node)
-+{
-+ struct fwnode_handle *child;
-+ int status;
-+
-+ fwnode_for_each_child_node(node, child) {
-+ /*
-+ * Try to add the device specified in the firmware node. If
-+ * this fails with -ENODEV, the node does not specify any SSAM
-+ * device, so ignore it and continue with the next one.
-+ */
-+ status = ssam_add_client_device(parent, ctrl, child);
-+ if (status && status != -ENODEV)
-+ goto err;
-+ }
-+
-+ return 0;
-+err:
-+ ssam_remove_clients(parent);
-+ return status;
-+}
-+EXPORT_SYMBOL_GPL(__ssam_register_clients);
-+
- static int ssam_remove_device(struct device *dev, void *_data)
- {
- struct ssam_device *sdev = to_ssam_device(dev);
-@@ -387,19 +520,3 @@ void ssam_remove_clients(struct device *dev)
- device_for_each_child_reverse(dev, NULL, ssam_remove_device);
- }
- EXPORT_SYMBOL_GPL(ssam_remove_clients);
--
--/**
-- * ssam_bus_register() - Register and set-up the SSAM client device bus.
-- */
--int ssam_bus_register(void)
--{
-- return bus_register(&ssam_bus_type);
--}
--
--/**
-- * ssam_bus_unregister() - Unregister the SSAM client device bus.
-- */
--void ssam_bus_unregister(void)
--{
-- return bus_unregister(&ssam_bus_type);
--}
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index f1c5905f1c16..c680792a037e 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -286,76 +286,6 @@ static const struct software_node *ssam_node_group_sp8[] = {
- };
-
-
--/* -- Device registry helper functions. ------------------------------------- */
--
--static int ssam_uid_from_string(const char *str, struct ssam_device_uid *uid)
--{
-- u8 d, tc, tid, iid, fn;
-- int n;
--
-- n = sscanf(str, "ssam:%hhx:%hhx:%hhx:%hhx:%hhx", &d, &tc, &tid, &iid, &fn);
-- if (n != 5)
-- return -EINVAL;
--
-- uid->domain = d;
-- uid->category = tc;
-- uid->target = tid;
-- uid->instance = iid;
-- uid->function = fn;
--
-- return 0;
--}
--
--static int ssam_hub_add_device(struct device *parent, struct ssam_controller *ctrl,
-- struct fwnode_handle *node)
--{
-- struct ssam_device_uid uid;
-- struct ssam_device *sdev;
-- int status;
--
-- status = ssam_uid_from_string(fwnode_get_name(node), &uid);
-- if (status)
-- return status;
--
-- sdev = ssam_device_alloc(ctrl, uid);
-- if (!sdev)
-- return -ENOMEM;
--
-- sdev->dev.parent = parent;
-- sdev->dev.fwnode = node;
--
-- status = ssam_device_add(sdev);
-- if (status)
-- ssam_device_put(sdev);
--
-- return status;
--}
--
--static int ssam_hub_register_clients(struct device *parent, struct ssam_controller *ctrl,
-- struct fwnode_handle *node)
--{
-- struct fwnode_handle *child;
-- int status;
--
-- fwnode_for_each_child_node(node, child) {
-- /*
-- * Try to add the device specified in the firmware node. If
-- * this fails with -EINVAL, the node does not specify any SSAM
-- * device, so ignore it and continue with the next one.
-- */
--
-- status = ssam_hub_add_device(parent, ctrl, child);
-- if (status && status != -EINVAL)
-- goto err;
-- }
--
-- return 0;
--err:
-- ssam_remove_clients(parent);
-- return status;
--}
--
--
- /* -- SSAM generic subsystem hub driver framework. -------------------------- */
-
- enum ssam_hub_state {
-@@ -385,7 +315,6 @@ struct ssam_hub {
- static void ssam_hub_update_workfn(struct work_struct *work)
- {
- struct ssam_hub *hub = container_of(work, struct ssam_hub, update_work.work);
-- struct fwnode_handle *node = dev_fwnode(&hub->sdev->dev);
- enum ssam_hub_state state;
- int status = 0;
-
-@@ -425,7 +354,7 @@ static void ssam_hub_update_workfn(struct work_struct *work)
- hub->state = state;
-
- if (hub->state == SSAM_HUB_CONNECTED)
-- status = ssam_hub_register_clients(&hub->sdev->dev, hub->sdev->ctrl, node);
-+ status = ssam_device_register_clients(hub->sdev);
- else
- ssam_remove_clients(&hub->sdev->dev);
-
-@@ -769,7 +698,7 @@ static int ssam_platform_hub_probe(struct platform_device *pdev)
-
- set_secondary_fwnode(&pdev->dev, root);
-
-- status = ssam_hub_register_clients(&pdev->dev, ctrl, root);
-+ status = __ssam_register_clients(&pdev->dev, ctrl, root);
- if (status) {
- set_secondary_fwnode(&pdev->dev, NULL);
- software_node_unregister_node_group(nodes);
-diff --git a/include/linux/surface_aggregator/device.h b/include/linux/surface_aggregator/device.h
-index 6cf7e80312d5..46c45d1b6368 100644
---- a/include/linux/surface_aggregator/device.h
-+++ b/include/linux/surface_aggregator/device.h
-@@ -15,6 +15,7 @@
-
- #include <linux/device.h>
- #include <linux/mod_devicetable.h>
-+#include <linux/property.h>
- #include <linux/types.h>
-
- #include <linux/surface_aggregator/controller.h>
-@@ -375,11 +376,62 @@ void ssam_device_driver_unregister(struct ssam_device_driver *d);
- /* -- Helpers for controller and hub devices. ------------------------------- */
-
- #ifdef CONFIG_SURFACE_AGGREGATOR_BUS
-+
-+int __ssam_register_clients(struct device *parent, struct ssam_controller *ctrl,
-+ struct fwnode_handle *node);
- void ssam_remove_clients(struct device *dev);
-+
- #else /* CONFIG_SURFACE_AGGREGATOR_BUS */
-+
-+static inline int __ssam_register_clients(struct device *parent, struct ssam_controller *ctrl,
-+ struct fwnode_handle *node)
-+{
-+ return 0;
-+}
-+
- static inline void ssam_remove_clients(struct device *dev) {}
-+
- #endif /* CONFIG_SURFACE_AGGREGATOR_BUS */
-
-+/**
-+ * ssam_register_clients() - Register all client devices defined under the
-+ * given parent device.
-+ * @dev: The parent device under which clients should be registered.
-+ * @ctrl: The controller with which client should be registered.
-+ *
-+ * Register all clients that have via firmware nodes been defined as children
-+ * of the given (parent) device. The respective child firmware nodes will be
-+ * associated with the correspondingly created child devices.
-+ *
-+ * The given controller will be used to instantiate the new devices. See
-+ * ssam_device_add() for details.
-+ *
-+ * Return: Returns zero on success, nonzero on failure.
-+ */
-+static inline int ssam_register_clients(struct device *dev, struct ssam_controller *ctrl)
-+{
-+ return __ssam_register_clients(dev, ctrl, dev_fwnode(dev));
-+}
-+
-+/**
-+ * ssam_device_register_clients() - Register all client devices defined under
-+ * the given SSAM parent device.
-+ * @sdev: The parent device under which clients should be registered.
-+ *
-+ * Register all clients that have via firmware nodes been defined as children
-+ * of the given (parent) device. The respective child firmware nodes will be
-+ * associated with the correspondingly created child devices.
-+ *
-+ * The controller used by the parent device will be used to instantiate the new
-+ * devices. See ssam_device_add() for details.
-+ *
-+ * Return: Returns zero on success, nonzero on failure.
-+ */
-+static inline int ssam_device_register_clients(struct ssam_device *sdev)
-+{
-+ return ssam_register_clients(&sdev->dev, sdev->ctrl);
-+}
-+
-
- /* -- Helpers for client-device requests. ----------------------------------- */
-
---
-2.37.3
-
-From 27f8c2755977e980995a6c1a1fc4f310e7fd845d Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 24 Jun 2022 22:57:59 +0200
-Subject: [PATCH] platform/surface: aggregator: Move subsystem hub drivers to
- their own module
-
-Split out subsystem device hub drivers into their own module. This
-allows us to load the hub drivers separately from the registry, which
-will help future DT/OF support.
-
-While doing so, also remove a small bit of code duplication.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220624205800.1355621-3-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- MAINTAINERS | 6 +
- drivers/platform/surface/Kconfig | 35 +-
- drivers/platform/surface/Makefile | 1 +
- .../platform/surface/surface_aggregator_hub.c | 371 ++++++++++++++++++
- .../surface/surface_aggregator_registry.c | 371 +-----------------
- 5 files changed, 410 insertions(+), 374 deletions(-)
- create mode 100644 drivers/platform/surface/surface_aggregator_hub.c
-
-diff --git a/MAINTAINERS b/MAINTAINERS
-index 773eb8387f4a..55e80354a097 100644
---- a/MAINTAINERS
-+++ b/MAINTAINERS
-@@ -13376,6 +13376,12 @@ F: include/linux/surface_acpi_notify.h
- F: include/linux/surface_aggregator/
- F: include/uapi/linux/surface_aggregator/
-
-+MICROSOFT SURFACE SYSTEM AGGREGATOR HUB DRIVER
-+M: Maximilian Luz <luzmaximilian@gmail.com>
-+L: platform-driver-x86@vger.kernel.org
-+S: Maintained
-+F: drivers/platform/surface/surface_aggregator_hub.c
-+
- MICROTEK X6 SCANNER
- M: Oliver Neukum <oliver@neukum.org>
- S: Maintained
-diff --git a/drivers/platform/surface/Kconfig b/drivers/platform/surface/Kconfig
-index b152e930cc84..b629e82af97c 100644
---- a/drivers/platform/surface/Kconfig
-+++ b/drivers/platform/surface/Kconfig
-@@ -72,18 +72,45 @@ config SURFACE_AGGREGATOR_CDEV
- The provided interface is intended for debugging and development only,
- and should not be used otherwise.
-
-+config SURFACE_AGGREGATOR_HUB
-+ tristate "Surface System Aggregator Module Subsystem Device Hubs"
-+ depends on SURFACE_AGGREGATOR
-+ depends on SURFACE_AGGREGATOR_BUS
-+ help
-+ Device-hub drivers for Surface System Aggregator Module (SSAM) subsystem
-+ devices.
-+
-+ Provides subsystem hub drivers which manage client devices on various
-+ SSAM subsystems. In some subsystems, notably the BAS subsystem managing
-+ devices contained in the base of the Surface Book 3 and the KIP subsystem
-+ managing type-cover devices in the Surface Pro 8 and Surface Pro X,
-+ devices can be (hot-)removed. Hub devices and drivers are required to
-+ manage these subdevices.
-+
-+ Devices managed via these hubs are:
-+ - Battery/AC devices (Surface Book 3).
-+ - HID input devices (7th-generation and later models with detachable
-+ input devices).
-+
-+ Select M (recommended) or Y here if you want support for the above
-+ mentioned devices on the corresponding Surface models. Without this
-+ module, the respective devices mentioned above will not be instantiated
-+ and thus any functionality provided by them will be missing, even when
-+ drivers for these devices are present. This module only provides the
-+ respective subsystem hubs. Both drivers and device specification (e.g.
-+ via the Surface Aggregator Registry) for these devices still need to be
-+ selected via other options.
-+
- config SURFACE_AGGREGATOR_REGISTRY
- tristate "Surface System Aggregator Module Device Registry"
- depends on SURFACE_AGGREGATOR
- depends on SURFACE_AGGREGATOR_BUS
- help
-- Device-registry and device-hubs for Surface System Aggregator Module
-- (SSAM) devices.
-+ Device-registry for Surface System Aggregator Module (SSAM) devices.
-
- Provides a module and driver which act as a device-registry for SSAM
- client devices that cannot be detected automatically, e.g. via ACPI.
-- Such devices are instead provided via this registry and attached via
-- device hubs, also provided in this module.
-+ Such devices are instead provided and managed via this registry.
-
- Devices provided via this registry are:
- - Platform profile (performance-/cooling-mode) device (5th- and later
-diff --git a/drivers/platform/surface/Makefile b/drivers/platform/surface/Makefile
-index 18b27898543e..53344330939b 100644
---- a/drivers/platform/surface/Makefile
-+++ b/drivers/platform/surface/Makefile
-@@ -9,6 +9,7 @@ obj-$(CONFIG_SURFACE_3_POWER_OPREGION) += surface3_power.o
- obj-$(CONFIG_SURFACE_ACPI_NOTIFY) += surface_acpi_notify.o
- obj-$(CONFIG_SURFACE_AGGREGATOR) += aggregator/
- obj-$(CONFIG_SURFACE_AGGREGATOR_CDEV) += surface_aggregator_cdev.o
-+obj-$(CONFIG_SURFACE_AGGREGATOR_HUB) += surface_aggregator_hub.o
- obj-$(CONFIG_SURFACE_AGGREGATOR_REGISTRY) += surface_aggregator_registry.o
- obj-$(CONFIG_SURFACE_AGGREGATOR_TABLET_SWITCH) += surface_aggregator_tabletsw.o
- obj-$(CONFIG_SURFACE_DTX) += surface_dtx.o
-diff --git a/drivers/platform/surface/surface_aggregator_hub.c b/drivers/platform/surface/surface_aggregator_hub.c
-new file mode 100644
-index 000000000000..43061514be38
---- /dev/null
-+++ b/drivers/platform/surface/surface_aggregator_hub.c
-@@ -0,0 +1,371 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+/*
-+ * Driver for Surface System Aggregator Module (SSAM) subsystem device hubs.
-+ *
-+ * Provides a driver for SSAM subsystems device hubs. This driver performs
-+ * instantiation of the devices managed by said hubs and takes care of
-+ * (hot-)removal.
-+ *
-+ * Copyright (C) 2020-2022 Maximilian Luz <luzmaximilian@gmail.com>
-+ */
-+
-+#include <linux/kernel.h>
-+#include <linux/limits.h>
-+#include <linux/module.h>
-+#include <linux/types.h>
-+#include <linux/workqueue.h>
-+
-+#include <linux/surface_aggregator/device.h>
-+
-+
-+/* -- SSAM generic subsystem hub driver framework. -------------------------- */
-+
-+enum ssam_hub_state {
-+ SSAM_HUB_UNINITIALIZED, /* Only set during initialization. */
-+ SSAM_HUB_CONNECTED,
-+ SSAM_HUB_DISCONNECTED,
-+};
-+
-+enum ssam_hub_flags {
-+ SSAM_HUB_HOT_REMOVED,
-+};
-+
-+struct ssam_hub;
-+
-+struct ssam_hub_ops {
-+ int (*get_state)(struct ssam_hub *hub, enum ssam_hub_state *state);
-+};
-+
-+struct ssam_hub {
-+ struct ssam_device *sdev;
-+
-+ enum ssam_hub_state state;
-+ unsigned long flags;
-+
-+ struct delayed_work update_work;
-+ unsigned long connect_delay;
-+
-+ struct ssam_event_notifier notif;
-+ struct ssam_hub_ops ops;
-+};
-+
-+struct ssam_hub_desc {
-+ struct {
-+ struct ssam_event_registry reg;
-+ struct ssam_event_id id;
-+ enum ssam_event_mask mask;
-+ } event;
-+
-+ struct {
-+ u32 (*notify)(struct ssam_event_notifier *nf, const struct ssam_event *event);
-+ int (*get_state)(struct ssam_hub *hub, enum ssam_hub_state *state);
-+ } ops;
-+
-+ unsigned long connect_delay_ms;
-+};
-+
-+static void ssam_hub_update_workfn(struct work_struct *work)
-+{
-+ struct ssam_hub *hub = container_of(work, struct ssam_hub, update_work.work);
-+ enum ssam_hub_state state;
-+ int status = 0;
-+
-+ status = hub->ops.get_state(hub, &state);
-+ if (status)
-+ return;
-+
-+ /*
-+ * There is a small possibility that hub devices were hot-removed and
-+ * re-added before we were able to remove them here. In that case, both
-+ * the state returned by get_state() and the state of the hub will
-+ * equal SSAM_HUB_CONNECTED and we would bail early below, which would
-+ * leave child devices without proper (re-)initialization and the
-+ * hot-remove flag set.
-+ *
-+ * Therefore, we check whether devices have been hot-removed via an
-+ * additional flag on the hub and, in this case, override the returned
-+ * hub state. In case of a missed disconnect (i.e. get_state returned
-+ * "connected"), we further need to re-schedule this work (with the
-+ * appropriate delay) as the actual connect work submission might have
-+ * been merged with this one.
-+ *
-+ * This then leads to one of two cases: Either we submit an unnecessary
-+ * work item (which will get ignored via either the queue or the state
-+ * checks) or, in the unlikely case that the work is actually required,
-+ * double the normal connect delay.
-+ */
-+ if (test_and_clear_bit(SSAM_HUB_HOT_REMOVED, &hub->flags)) {
-+ if (state == SSAM_HUB_CONNECTED)
-+ schedule_delayed_work(&hub->update_work, hub->connect_delay);
-+
-+ state = SSAM_HUB_DISCONNECTED;
-+ }
-+
-+ if (hub->state == state)
-+ return;
-+ hub->state = state;
-+
-+ if (hub->state == SSAM_HUB_CONNECTED)
-+ status = ssam_device_register_clients(hub->sdev);
-+ else
-+ ssam_remove_clients(&hub->sdev->dev);
-+
-+ if (status)
-+ dev_err(&hub->sdev->dev, "failed to update hub child devices: %d\n", status);
-+}
-+
-+static int ssam_hub_mark_hot_removed(struct device *dev, void *_data)
-+{
-+ struct ssam_device *sdev = to_ssam_device(dev);
-+
-+ if (is_ssam_device(dev))
-+ ssam_device_mark_hot_removed(sdev);
-+
-+ return 0;
-+}
-+
-+static void ssam_hub_update(struct ssam_hub *hub, bool connected)
-+{
-+ unsigned long delay;
-+
-+ /* Mark devices as hot-removed before we remove any. */
-+ if (!connected) {
-+ set_bit(SSAM_HUB_HOT_REMOVED, &hub->flags);
-+ device_for_each_child_reverse(&hub->sdev->dev, NULL, ssam_hub_mark_hot_removed);
-+ }
-+
-+ /*
-+ * Delay update when the base/keyboard cover is being connected to give
-+ * devices/EC some time to set up.
-+ */
-+ delay = connected ? hub->connect_delay : 0;
-+
-+ schedule_delayed_work(&hub->update_work, delay);
-+}
-+
-+static int __maybe_unused ssam_hub_resume(struct device *dev)
-+{
-+ struct ssam_hub *hub = dev_get_drvdata(dev);
-+
-+ schedule_delayed_work(&hub->update_work, 0);
-+ return 0;
-+}
-+static SIMPLE_DEV_PM_OPS(ssam_hub_pm_ops, NULL, ssam_hub_resume);
-+
-+static int ssam_hub_probe(struct ssam_device *sdev)
-+{
-+ const struct ssam_hub_desc *desc;
-+ struct ssam_hub *hub;
-+ int status;
-+
-+ desc = ssam_device_get_match_data(sdev);
-+ if (!desc) {
-+ WARN(1, "no driver match data specified");
-+ return -EINVAL;
-+ }
-+
-+ hub = devm_kzalloc(&sdev->dev, sizeof(*hub), GFP_KERNEL);
-+ if (!hub)
-+ return -ENOMEM;
-+
-+ hub->sdev = sdev;
-+ hub->state = SSAM_HUB_UNINITIALIZED;
-+
-+ hub->notif.base.priority = INT_MAX; /* This notifier should run first. */
-+ hub->notif.base.fn = desc->ops.notify;
-+ hub->notif.event.reg = desc->event.reg;
-+ hub->notif.event.id = desc->event.id;
-+ hub->notif.event.mask = desc->event.mask;
-+ hub->notif.event.flags = SSAM_EVENT_SEQUENCED;
-+
-+ hub->connect_delay = msecs_to_jiffies(desc->connect_delay_ms);
-+ hub->ops.get_state = desc->ops.get_state;
-+
-+ INIT_DELAYED_WORK(&hub->update_work, ssam_hub_update_workfn);
-+
-+ ssam_device_set_drvdata(sdev, hub);
-+
-+ status = ssam_device_notifier_register(sdev, &hub->notif);
-+ if (status)
-+ return status;
-+
-+ schedule_delayed_work(&hub->update_work, 0);
-+ return 0;
-+}
-+
-+static void ssam_hub_remove(struct ssam_device *sdev)
-+{
-+ struct ssam_hub *hub = ssam_device_get_drvdata(sdev);
-+
-+ ssam_device_notifier_unregister(sdev, &hub->notif);
-+ cancel_delayed_work_sync(&hub->update_work);
-+ ssam_remove_clients(&sdev->dev);
-+}
-+
-+
-+/* -- SSAM base-subsystem hub driver. --------------------------------------- */
-+
-+/*
-+ * Some devices (especially battery) may need a bit of time to be fully usable
-+ * after being (re-)connected. This delay has been determined via
-+ * experimentation.
-+ */
-+#define SSAM_BASE_UPDATE_CONNECT_DELAY 2500
-+
-+SSAM_DEFINE_SYNC_REQUEST_R(ssam_bas_query_opmode, u8, {
-+ .target_category = SSAM_SSH_TC_BAS,
-+ .target_id = 0x01,
-+ .command_id = 0x0d,
-+ .instance_id = 0x00,
-+});
-+
-+#define SSAM_BAS_OPMODE_TABLET 0x00
-+#define SSAM_EVENT_BAS_CID_CONNECTION 0x0c
-+
-+static int ssam_base_hub_query_state(struct ssam_hub *hub, enum ssam_hub_state *state)
-+{
-+ u8 opmode;
-+ int status;
-+
-+ status = ssam_retry(ssam_bas_query_opmode, hub->sdev->ctrl, &opmode);
-+ if (status < 0) {
-+ dev_err(&hub->sdev->dev, "failed to query base state: %d\n", status);
-+ return status;
-+ }
-+
-+ if (opmode != SSAM_BAS_OPMODE_TABLET)
-+ *state = SSAM_HUB_CONNECTED;
-+ else
-+ *state = SSAM_HUB_DISCONNECTED;
-+
-+ return 0;
-+}
-+
-+static u32 ssam_base_hub_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
-+{
-+ struct ssam_hub *hub = container_of(nf, struct ssam_hub, notif);
-+
-+ if (event->command_id != SSAM_EVENT_BAS_CID_CONNECTION)
-+ return 0;
-+
-+ if (event->length < 1) {
-+ dev_err(&hub->sdev->dev, "unexpected payload size: %u\n", event->length);
-+ return 0;
-+ }
-+
-+ ssam_hub_update(hub, event->data[0]);
-+
-+ /*
-+ * Do not return SSAM_NOTIF_HANDLED: The event should be picked up and
-+ * consumed by the detachment system driver. We're just a (more or less)
-+ * silent observer.
-+ */
-+ return 0;
-+}
-+
-+static const struct ssam_hub_desc base_hub = {
-+ .event = {
-+ .reg = SSAM_EVENT_REGISTRY_SAM,
-+ .id = {
-+ .target_category = SSAM_SSH_TC_BAS,
-+ .instance = 0,
-+ },
-+ .mask = SSAM_EVENT_MASK_NONE,
-+ },
-+ .ops = {
-+ .notify = ssam_base_hub_notif,
-+ .get_state = ssam_base_hub_query_state,
-+ },
-+ .connect_delay_ms = SSAM_BASE_UPDATE_CONNECT_DELAY,
-+};
-+
-+
-+/* -- SSAM KIP-subsystem hub driver. ---------------------------------------- */
-+
-+/*
-+ * Some devices may need a bit of time to be fully usable after being
-+ * (re-)connected. This delay has been determined via experimentation.
-+ */
-+#define SSAM_KIP_UPDATE_CONNECT_DELAY 250
-+
-+#define SSAM_EVENT_KIP_CID_CONNECTION 0x2c
-+
-+SSAM_DEFINE_SYNC_REQUEST_R(__ssam_kip_query_state, u8, {
-+ .target_category = SSAM_SSH_TC_KIP,
-+ .target_id = 0x01,
-+ .command_id = 0x2c,
-+ .instance_id = 0x00,
-+});
-+
-+static int ssam_kip_hub_query_state(struct ssam_hub *hub, enum ssam_hub_state *state)
-+{
-+ int status;
-+ u8 connected;
-+
-+ status = ssam_retry(__ssam_kip_query_state, hub->sdev->ctrl, &connected);
-+ if (status < 0) {
-+ dev_err(&hub->sdev->dev, "failed to query KIP connection state: %d\n", status);
-+ return status;
-+ }
-+
-+ *state = connected ? SSAM_HUB_CONNECTED : SSAM_HUB_DISCONNECTED;
-+ return 0;
-+}
-+
-+static u32 ssam_kip_hub_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
-+{
-+ struct ssam_hub *hub = container_of(nf, struct ssam_hub, notif);
-+
-+ if (event->command_id != SSAM_EVENT_KIP_CID_CONNECTION)
-+ return 0; /* Return "unhandled". */
-+
-+ if (event->length < 1) {
-+ dev_err(&hub->sdev->dev, "unexpected payload size: %u\n", event->length);
-+ return 0;
-+ }
-+
-+ ssam_hub_update(hub, event->data[0]);
-+ return SSAM_NOTIF_HANDLED;
-+}
-+
-+static const struct ssam_hub_desc kip_hub = {
-+ .event = {
-+ .reg = SSAM_EVENT_REGISTRY_SAM,
-+ .id = {
-+ .target_category = SSAM_SSH_TC_KIP,
-+ .instance = 0,
-+ },
-+ .mask = SSAM_EVENT_MASK_TARGET,
-+ },
-+ .ops = {
-+ .notify = ssam_kip_hub_notif,
-+ .get_state = ssam_kip_hub_query_state,
-+ },
-+ .connect_delay_ms = SSAM_KIP_UPDATE_CONNECT_DELAY,
-+};
-+
-+
-+/* -- Driver registration. -------------------------------------------------- */
-+
-+static const struct ssam_device_id ssam_hub_match[] = {
-+ { SSAM_VDEV(HUB, 0x01, SSAM_SSH_TC_KIP, 0x00), (unsigned long)&kip_hub },
-+ { SSAM_VDEV(HUB, 0x02, SSAM_SSH_TC_BAS, 0x00), (unsigned long)&base_hub },
-+ { }
-+};
-+MODULE_DEVICE_TABLE(ssam, ssam_hub_match);
-+
-+static struct ssam_device_driver ssam_subsystem_hub_driver = {
-+ .probe = ssam_hub_probe,
-+ .remove = ssam_hub_remove,
-+ .match_table = ssam_hub_match,
-+ .driver = {
-+ .name = "surface_aggregator_subsystem_hub",
-+ .probe_type = PROBE_PREFER_ASYNCHRONOUS,
-+ .pm = &ssam_hub_pm_ops,
-+ },
-+};
-+module_ssam_device_driver(ssam_subsystem_hub_driver);
-+
-+MODULE_AUTHOR("Maximilian Luz <luzmaximilian@gmail.com>");
-+MODULE_DESCRIPTION("Subsystem device hub driver for Surface System Aggregator Module");
-+MODULE_LICENSE("GPL");
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index c680792a037e..0cbb7f3a6b2d 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -11,14 +11,11 @@
-
- #include <linux/acpi.h>
- #include <linux/kernel.h>
--#include <linux/limits.h>
- #include <linux/module.h>
- #include <linux/platform_device.h>
- #include <linux/property.h>
- #include <linux/types.h>
--#include <linux/workqueue.h>
-
--#include <linux/surface_aggregator/controller.h>
- #include <linux/surface_aggregator/device.h>
-
-
-@@ -286,335 +283,6 @@ static const struct software_node *ssam_node_group_sp8[] = {
- };
-
-
--/* -- SSAM generic subsystem hub driver framework. -------------------------- */
--
--enum ssam_hub_state {
-- SSAM_HUB_UNINITIALIZED, /* Only set during initialization. */
-- SSAM_HUB_CONNECTED,
-- SSAM_HUB_DISCONNECTED,
--};
--
--enum ssam_hub_flags {
-- SSAM_HUB_HOT_REMOVED,
--};
--
--struct ssam_hub {
-- struct ssam_device *sdev;
--
-- enum ssam_hub_state state;
-- unsigned long flags;
--
-- struct delayed_work update_work;
-- unsigned long connect_delay;
--
-- struct ssam_event_notifier notif;
--
-- int (*get_state)(struct ssam_hub *hub, enum ssam_hub_state *state);
--};
--
--static void ssam_hub_update_workfn(struct work_struct *work)
--{
-- struct ssam_hub *hub = container_of(work, struct ssam_hub, update_work.work);
-- enum ssam_hub_state state;
-- int status = 0;
--
-- status = hub->get_state(hub, &state);
-- if (status)
-- return;
--
-- /*
-- * There is a small possibility that hub devices were hot-removed and
-- * re-added before we were able to remove them here. In that case, both
-- * the state returned by get_state() and the state of the hub will
-- * equal SSAM_HUB_CONNECTED and we would bail early below, which would
-- * leave child devices without proper (re-)initialization and the
-- * hot-remove flag set.
-- *
-- * Therefore, we check whether devices have been hot-removed via an
-- * additional flag on the hub and, in this case, override the returned
-- * hub state. In case of a missed disconnect (i.e. get_state returned
-- * "connected"), we further need to re-schedule this work (with the
-- * appropriate delay) as the actual connect work submission might have
-- * been merged with this one.
-- *
-- * This then leads to one of two cases: Either we submit an unnecessary
-- * work item (which will get ignored via either the queue or the state
-- * checks) or, in the unlikely case that the work is actually required,
-- * double the normal connect delay.
-- */
-- if (test_and_clear_bit(SSAM_HUB_HOT_REMOVED, &hub->flags)) {
-- if (state == SSAM_HUB_CONNECTED)
-- schedule_delayed_work(&hub->update_work, hub->connect_delay);
--
-- state = SSAM_HUB_DISCONNECTED;
-- }
--
-- if (hub->state == state)
-- return;
-- hub->state = state;
--
-- if (hub->state == SSAM_HUB_CONNECTED)
-- status = ssam_device_register_clients(hub->sdev);
-- else
-- ssam_remove_clients(&hub->sdev->dev);
--
-- if (status)
-- dev_err(&hub->sdev->dev, "failed to update hub child devices: %d\n", status);
--}
--
--static int ssam_hub_mark_hot_removed(struct device *dev, void *_data)
--{
-- struct ssam_device *sdev = to_ssam_device(dev);
--
-- if (is_ssam_device(dev))
-- ssam_device_mark_hot_removed(sdev);
--
-- return 0;
--}
--
--static void ssam_hub_update(struct ssam_hub *hub, bool connected)
--{
-- unsigned long delay;
--
-- /* Mark devices as hot-removed before we remove any. */
-- if (!connected) {
-- set_bit(SSAM_HUB_HOT_REMOVED, &hub->flags);
-- device_for_each_child_reverse(&hub->sdev->dev, NULL, ssam_hub_mark_hot_removed);
-- }
--
-- /*
-- * Delay update when the base/keyboard cover is being connected to give
-- * devices/EC some time to set up.
-- */
-- delay = connected ? hub->connect_delay : 0;
--
-- schedule_delayed_work(&hub->update_work, delay);
--}
--
--static int __maybe_unused ssam_hub_resume(struct device *dev)
--{
-- struct ssam_hub *hub = dev_get_drvdata(dev);
--
-- schedule_delayed_work(&hub->update_work, 0);
-- return 0;
--}
--static SIMPLE_DEV_PM_OPS(ssam_hub_pm_ops, NULL, ssam_hub_resume);
--
--static int ssam_hub_setup(struct ssam_device *sdev, struct ssam_hub *hub)
--{
-- int status;
--
-- hub->sdev = sdev;
-- hub->state = SSAM_HUB_UNINITIALIZED;
--
-- INIT_DELAYED_WORK(&hub->update_work, ssam_hub_update_workfn);
--
-- ssam_device_set_drvdata(sdev, hub);
--
-- status = ssam_device_notifier_register(sdev, &hub->notif);
-- if (status)
-- return status;
--
-- schedule_delayed_work(&hub->update_work, 0);
-- return 0;
--}
--
--static void ssam_hub_remove(struct ssam_device *sdev)
--{
-- struct ssam_hub *hub = ssam_device_get_drvdata(sdev);
--
-- ssam_device_notifier_unregister(sdev, &hub->notif);
-- cancel_delayed_work_sync(&hub->update_work);
-- ssam_remove_clients(&sdev->dev);
--}
--
--
--/* -- SSAM base-hub driver. ------------------------------------------------- */
--
--/*
-- * Some devices (especially battery) may need a bit of time to be fully usable
-- * after being (re-)connected. This delay has been determined via
-- * experimentation.
-- */
--#define SSAM_BASE_UPDATE_CONNECT_DELAY msecs_to_jiffies(2500)
--
--SSAM_DEFINE_SYNC_REQUEST_R(ssam_bas_query_opmode, u8, {
-- .target_category = SSAM_SSH_TC_BAS,
-- .target_id = 0x01,
-- .command_id = 0x0d,
-- .instance_id = 0x00,
--});
--
--#define SSAM_BAS_OPMODE_TABLET 0x00
--#define SSAM_EVENT_BAS_CID_CONNECTION 0x0c
--
--static int ssam_base_hub_query_state(struct ssam_hub *hub, enum ssam_hub_state *state)
--{
-- u8 opmode;
-- int status;
--
-- status = ssam_retry(ssam_bas_query_opmode, hub->sdev->ctrl, &opmode);
-- if (status < 0) {
-- dev_err(&hub->sdev->dev, "failed to query base state: %d\n", status);
-- return status;
-- }
--
-- if (opmode != SSAM_BAS_OPMODE_TABLET)
-- *state = SSAM_HUB_CONNECTED;
-- else
-- *state = SSAM_HUB_DISCONNECTED;
--
-- return 0;
--}
--
--static u32 ssam_base_hub_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
--{
-- struct ssam_hub *hub = container_of(nf, struct ssam_hub, notif);
--
-- if (event->command_id != SSAM_EVENT_BAS_CID_CONNECTION)
-- return 0;
--
-- if (event->length < 1) {
-- dev_err(&hub->sdev->dev, "unexpected payload size: %u\n", event->length);
-- return 0;
-- }
--
-- ssam_hub_update(hub, event->data[0]);
--
-- /*
-- * Do not return SSAM_NOTIF_HANDLED: The event should be picked up and
-- * consumed by the detachment system driver. We're just a (more or less)
-- * silent observer.
-- */
-- return 0;
--}
--
--static int ssam_base_hub_probe(struct ssam_device *sdev)
--{
-- struct ssam_hub *hub;
--
-- hub = devm_kzalloc(&sdev->dev, sizeof(*hub), GFP_KERNEL);
-- if (!hub)
-- return -ENOMEM;
--
-- hub->notif.base.priority = INT_MAX; /* This notifier should run first. */
-- hub->notif.base.fn = ssam_base_hub_notif;
-- hub->notif.event.reg = SSAM_EVENT_REGISTRY_SAM;
-- hub->notif.event.id.target_category = SSAM_SSH_TC_BAS,
-- hub->notif.event.id.instance = 0,
-- hub->notif.event.mask = SSAM_EVENT_MASK_NONE;
-- hub->notif.event.flags = SSAM_EVENT_SEQUENCED;
--
-- hub->connect_delay = SSAM_BASE_UPDATE_CONNECT_DELAY;
-- hub->get_state = ssam_base_hub_query_state;
--
-- return ssam_hub_setup(sdev, hub);
--}
--
--static const struct ssam_device_id ssam_base_hub_match[] = {
-- { SSAM_VDEV(HUB, 0x02, SSAM_SSH_TC_BAS, 0x00) },
-- { },
--};
--
--static struct ssam_device_driver ssam_base_hub_driver = {
-- .probe = ssam_base_hub_probe,
-- .remove = ssam_hub_remove,
-- .match_table = ssam_base_hub_match,
-- .driver = {
-- .name = "surface_aggregator_base_hub",
-- .probe_type = PROBE_PREFER_ASYNCHRONOUS,
-- .pm = &ssam_hub_pm_ops,
-- },
--};
--
--
--/* -- SSAM KIP-subsystem hub driver. ---------------------------------------- */
--
--/*
-- * Some devices may need a bit of time to be fully usable after being
-- * (re-)connected. This delay has been determined via experimentation.
-- */
--#define SSAM_KIP_UPDATE_CONNECT_DELAY msecs_to_jiffies(250)
--
--#define SSAM_EVENT_KIP_CID_CONNECTION 0x2c
--
--SSAM_DEFINE_SYNC_REQUEST_R(__ssam_kip_get_connection_state, u8, {
-- .target_category = SSAM_SSH_TC_KIP,
-- .target_id = 0x01,
-- .command_id = 0x2c,
-- .instance_id = 0x00,
--});
--
--static int ssam_kip_get_connection_state(struct ssam_hub *hub, enum ssam_hub_state *state)
--{
-- int status;
-- u8 connected;
--
-- status = ssam_retry(__ssam_kip_get_connection_state, hub->sdev->ctrl, &connected);
-- if (status < 0) {
-- dev_err(&hub->sdev->dev, "failed to query KIP connection state: %d\n", status);
-- return status;
-- }
--
-- *state = connected ? SSAM_HUB_CONNECTED : SSAM_HUB_DISCONNECTED;
-- return 0;
--}
--
--static u32 ssam_kip_hub_notif(struct ssam_event_notifier *nf, const struct ssam_event *event)
--{
-- struct ssam_hub *hub = container_of(nf, struct ssam_hub, notif);
--
-- if (event->command_id != SSAM_EVENT_KIP_CID_CONNECTION)
-- return 0; /* Return "unhandled". */
--
-- if (event->length < 1) {
-- dev_err(&hub->sdev->dev, "unexpected payload size: %u\n", event->length);
-- return 0;
-- }
--
-- ssam_hub_update(hub, event->data[0]);
-- return SSAM_NOTIF_HANDLED;
--}
--
--static int ssam_kip_hub_probe(struct ssam_device *sdev)
--{
-- struct ssam_hub *hub;
--
-- hub = devm_kzalloc(&sdev->dev, sizeof(*hub), GFP_KERNEL);
-- if (!hub)
-- return -ENOMEM;
--
-- hub->notif.base.priority = INT_MAX; /* This notifier should run first. */
-- hub->notif.base.fn = ssam_kip_hub_notif;
-- hub->notif.event.reg = SSAM_EVENT_REGISTRY_SAM;
-- hub->notif.event.id.target_category = SSAM_SSH_TC_KIP,
-- hub->notif.event.id.instance = 0,
-- hub->notif.event.mask = SSAM_EVENT_MASK_TARGET;
-- hub->notif.event.flags = SSAM_EVENT_SEQUENCED;
--
-- hub->connect_delay = SSAM_KIP_UPDATE_CONNECT_DELAY;
-- hub->get_state = ssam_kip_get_connection_state;
--
-- return ssam_hub_setup(sdev, hub);
--}
--
--static const struct ssam_device_id ssam_kip_hub_match[] = {
-- { SSAM_VDEV(HUB, 0x01, SSAM_SSH_TC_KIP, 0x00) },
-- { },
--};
--
--static struct ssam_device_driver ssam_kip_hub_driver = {
-- .probe = ssam_kip_hub_probe,
-- .remove = ssam_hub_remove,
-- .match_table = ssam_kip_hub_match,
-- .driver = {
-- .name = "surface_kip_hub",
-- .probe_type = PROBE_PREFER_ASYNCHRONOUS,
-- .pm = &ssam_hub_pm_ops,
-- },
--};
--
--
- /* -- SSAM platform/meta-hub driver. ---------------------------------------- */
-
- static const struct acpi_device_id ssam_platform_hub_match[] = {
-@@ -727,44 +395,7 @@ static struct platform_driver ssam_platform_hub_driver = {
- .probe_type = PROBE_PREFER_ASYNCHRONOUS,
- },
- };
--
--
--/* -- Module initialization. ------------------------------------------------ */
--
--static int __init ssam_device_hub_init(void)
--{
-- int status;
--
-- status = platform_driver_register(&ssam_platform_hub_driver);
-- if (status)
-- goto err_platform;
--
-- status = ssam_device_driver_register(&ssam_base_hub_driver);
-- if (status)
-- goto err_base;
--
-- status = ssam_device_driver_register(&ssam_kip_hub_driver);
-- if (status)
-- goto err_kip;
--
-- return 0;
--
--err_kip:
-- ssam_device_driver_unregister(&ssam_base_hub_driver);
--err_base:
-- platform_driver_unregister(&ssam_platform_hub_driver);
--err_platform:
-- return status;
--}
--module_init(ssam_device_hub_init);
--
--static void __exit ssam_device_hub_exit(void)
--{
-- ssam_device_driver_unregister(&ssam_kip_hub_driver);
-- ssam_device_driver_unregister(&ssam_base_hub_driver);
-- platform_driver_unregister(&ssam_platform_hub_driver);
--}
--module_exit(ssam_device_hub_exit);
-+module_platform_driver(ssam_platform_hub_driver);
-
- MODULE_AUTHOR("Maximilian Luz <luzmaximilian@gmail.com>");
- MODULE_DESCRIPTION("Device-registry for Surface System Aggregator Module");
---
-2.37.3
-
-From 98864856924810e997eca629da2544485183a9ae Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Fri, 24 Jun 2022 22:58:00 +0200
-Subject: [PATCH] platform/surface: Update copyright year of various drivers
-
-Update the copyright of various Surface drivers to the current year.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220624205800.1355621-4-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/aggregator/Kconfig | 2 +-
- drivers/platform/surface/aggregator/Makefile | 2 +-
- drivers/platform/surface/aggregator/bus.c | 2 +-
- drivers/platform/surface/aggregator/bus.h | 2 +-
- drivers/platform/surface/aggregator/controller.c | 2 +-
- drivers/platform/surface/aggregator/controller.h | 2 +-
- drivers/platform/surface/aggregator/core.c | 2 +-
- drivers/platform/surface/aggregator/ssh_msgb.h | 2 +-
- drivers/platform/surface/aggregator/ssh_packet_layer.c | 2 +-
- drivers/platform/surface/aggregator/ssh_packet_layer.h | 2 +-
- drivers/platform/surface/aggregator/ssh_parser.c | 2 +-
- drivers/platform/surface/aggregator/ssh_parser.h | 2 +-
- drivers/platform/surface/aggregator/ssh_request_layer.c | 2 +-
- drivers/platform/surface/aggregator/ssh_request_layer.h | 2 +-
- drivers/platform/surface/aggregator/trace.h | 2 +-
- drivers/platform/surface/surface_acpi_notify.c | 2 +-
- drivers/platform/surface/surface_aggregator_cdev.c | 2 +-
- drivers/platform/surface/surface_aggregator_registry.c | 2 +-
- drivers/platform/surface/surface_dtx.c | 2 +-
- drivers/platform/surface/surface_gpe.c | 2 +-
- drivers/platform/surface/surface_hotplug.c | 2 +-
- drivers/platform/surface/surface_platform_profile.c | 2 +-
- 22 files changed, 22 insertions(+), 22 deletions(-)
-
-diff --git a/drivers/platform/surface/aggregator/Kconfig b/drivers/platform/surface/aggregator/Kconfig
-index cab020324256..c114f9dd5fe1 100644
---- a/drivers/platform/surface/aggregator/Kconfig
-+++ b/drivers/platform/surface/aggregator/Kconfig
-@@ -1,5 +1,5 @@
- # SPDX-License-Identifier: GPL-2.0+
--# Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+# Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
-
- menuconfig SURFACE_AGGREGATOR
- tristate "Microsoft Surface System Aggregator Module Subsystem and Drivers"
-diff --git a/drivers/platform/surface/aggregator/Makefile b/drivers/platform/surface/aggregator/Makefile
-index c0d550eda5cd..fdf664a217f9 100644
---- a/drivers/platform/surface/aggregator/Makefile
-+++ b/drivers/platform/surface/aggregator/Makefile
-@@ -1,5 +1,5 @@
- # SPDX-License-Identifier: GPL-2.0+
--# Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+# Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
-
- # For include/trace/define_trace.h to include trace.h
- CFLAGS_core.o = -I$(src)
-diff --git a/drivers/platform/surface/aggregator/bus.c b/drivers/platform/surface/aggregator/bus.c
-index e0b0381a2834..de539938896e 100644
---- a/drivers/platform/surface/aggregator/bus.c
-+++ b/drivers/platform/surface/aggregator/bus.c
-@@ -2,7 +2,7 @@
- /*
- * Surface System Aggregator Module bus and device integration.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <linux/device.h>
-diff --git a/drivers/platform/surface/aggregator/bus.h b/drivers/platform/surface/aggregator/bus.h
-index 6964ee84e79c..5b4dbf21906c 100644
---- a/drivers/platform/surface/aggregator/bus.h
-+++ b/drivers/platform/surface/aggregator/bus.h
-@@ -2,7 +2,7 @@
- /*
- * Surface System Aggregator Module bus and device integration.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #ifndef _SURFACE_AGGREGATOR_BUS_H
-diff --git a/drivers/platform/surface/aggregator/controller.c b/drivers/platform/surface/aggregator/controller.c
-index 6de834b52b63..43e765199137 100644
---- a/drivers/platform/surface/aggregator/controller.c
-+++ b/drivers/platform/surface/aggregator/controller.c
-@@ -2,7 +2,7 @@
- /*
- * Main SSAM/SSH controller structure and functionality.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <linux/acpi.h>
-diff --git a/drivers/platform/surface/aggregator/controller.h b/drivers/platform/surface/aggregator/controller.h
-index a0963c3562ff..f0d987abc51e 100644
---- a/drivers/platform/surface/aggregator/controller.h
-+++ b/drivers/platform/surface/aggregator/controller.h
-@@ -2,7 +2,7 @@
- /*
- * Main SSAM/SSH controller structure and functionality.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #ifndef _SURFACE_AGGREGATOR_CONTROLLER_H
-diff --git a/drivers/platform/surface/aggregator/core.c b/drivers/platform/surface/aggregator/core.c
-index a62c5dfe42d6..1a6373dea109 100644
---- a/drivers/platform/surface/aggregator/core.c
-+++ b/drivers/platform/surface/aggregator/core.c
-@@ -7,7 +7,7 @@
- * Handles communication via requests as well as enabling, disabling, and
- * relaying of events.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <linux/acpi.h>
-diff --git a/drivers/platform/surface/aggregator/ssh_msgb.h b/drivers/platform/surface/aggregator/ssh_msgb.h
-index e562958ffdf0..f3ecad92eefd 100644
---- a/drivers/platform/surface/aggregator/ssh_msgb.h
-+++ b/drivers/platform/surface/aggregator/ssh_msgb.h
-@@ -2,7 +2,7 @@
- /*
- * SSH message builder functions.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #ifndef _SURFACE_AGGREGATOR_SSH_MSGB_H
-diff --git a/drivers/platform/surface/aggregator/ssh_packet_layer.c b/drivers/platform/surface/aggregator/ssh_packet_layer.c
-index 8a4451c1ffe5..6748fe4ac5d5 100644
---- a/drivers/platform/surface/aggregator/ssh_packet_layer.c
-+++ b/drivers/platform/surface/aggregator/ssh_packet_layer.c
-@@ -2,7 +2,7 @@
- /*
- * SSH packet transport layer.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <asm/unaligned.h>
-diff --git a/drivers/platform/surface/aggregator/ssh_packet_layer.h b/drivers/platform/surface/aggregator/ssh_packet_layer.h
-index 2eb329f0b91a..64633522f971 100644
---- a/drivers/platform/surface/aggregator/ssh_packet_layer.h
-+++ b/drivers/platform/surface/aggregator/ssh_packet_layer.h
-@@ -2,7 +2,7 @@
- /*
- * SSH packet transport layer.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #ifndef _SURFACE_AGGREGATOR_SSH_PACKET_LAYER_H
-diff --git a/drivers/platform/surface/aggregator/ssh_parser.c b/drivers/platform/surface/aggregator/ssh_parser.c
-index b77912f8f13b..a6f668694365 100644
---- a/drivers/platform/surface/aggregator/ssh_parser.c
-+++ b/drivers/platform/surface/aggregator/ssh_parser.c
-@@ -2,7 +2,7 @@
- /*
- * SSH message parser.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <asm/unaligned.h>
-diff --git a/drivers/platform/surface/aggregator/ssh_parser.h b/drivers/platform/surface/aggregator/ssh_parser.h
-index 3bd6e180fd16..801d8fa69fb5 100644
---- a/drivers/platform/surface/aggregator/ssh_parser.h
-+++ b/drivers/platform/surface/aggregator/ssh_parser.h
-@@ -2,7 +2,7 @@
- /*
- * SSH message parser.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #ifndef _SURFACE_AGGREGATOR_SSH_PARSER_H
-diff --git a/drivers/platform/surface/aggregator/ssh_request_layer.c b/drivers/platform/surface/aggregator/ssh_request_layer.c
-index 790f7f0eee98..f5565570f16c 100644
---- a/drivers/platform/surface/aggregator/ssh_request_layer.c
-+++ b/drivers/platform/surface/aggregator/ssh_request_layer.c
-@@ -2,7 +2,7 @@
- /*
- * SSH request transport layer.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <asm/unaligned.h>
-diff --git a/drivers/platform/surface/aggregator/ssh_request_layer.h b/drivers/platform/surface/aggregator/ssh_request_layer.h
-index 9c3cbae2d4bd..4e387a031351 100644
---- a/drivers/platform/surface/aggregator/ssh_request_layer.h
-+++ b/drivers/platform/surface/aggregator/ssh_request_layer.h
-@@ -2,7 +2,7 @@
- /*
- * SSH request transport layer.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #ifndef _SURFACE_AGGREGATOR_SSH_REQUEST_LAYER_H
-diff --git a/drivers/platform/surface/aggregator/trace.h b/drivers/platform/surface/aggregator/trace.h
-index cc9e73fbc18e..2a2c17771d01 100644
---- a/drivers/platform/surface/aggregator/trace.h
-+++ b/drivers/platform/surface/aggregator/trace.h
-@@ -2,7 +2,7 @@
- /*
- * Trace points for SSAM/SSH.
- *
-- * Copyright (C) 2020-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2020-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #undef TRACE_SYSTEM
-diff --git a/drivers/platform/surface/surface_acpi_notify.c b/drivers/platform/surface/surface_acpi_notify.c
-index c0e12f0b9b79..44e317970557 100644
---- a/drivers/platform/surface/surface_acpi_notify.c
-+++ b/drivers/platform/surface/surface_acpi_notify.c
-@@ -8,7 +8,7 @@
- * notifications sent from ACPI via the SAN interface by providing them to any
- * registered external driver.
- *
-- * Copyright (C) 2019-2020 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <asm/unaligned.h>
-diff --git a/drivers/platform/surface/surface_aggregator_cdev.c b/drivers/platform/surface/surface_aggregator_cdev.c
-index 30fb50fde450..492c82e69182 100644
---- a/drivers/platform/surface/surface_aggregator_cdev.c
-+++ b/drivers/platform/surface/surface_aggregator_cdev.c
-@@ -3,7 +3,7 @@
- * Provides user-space access to the SSAM EC via the /dev/surface/aggregator
- * misc device. Intended for debugging and development.
- *
-- * Copyright (C) 2020-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2020-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <linux/fs.h>
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index 0cbb7f3a6b2d..d5655f6a4a41 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -6,7 +6,7 @@
- * cannot be auto-detected. Provides device-hubs and performs instantiation
- * for these devices.
- *
-- * Copyright (C) 2020-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2020-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <linux/acpi.h>
-diff --git a/drivers/platform/surface/surface_dtx.c b/drivers/platform/surface/surface_dtx.c
-index 1203b9a82993..ed36944467f9 100644
---- a/drivers/platform/surface/surface_dtx.c
-+++ b/drivers/platform/surface/surface_dtx.c
-@@ -8,7 +8,7 @@
- * acknowledge (to speed things up), abort (e.g. in case the dGPU is still in
- * use), or request detachment via user-space.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <linux/fs.h>
-diff --git a/drivers/platform/surface/surface_gpe.c b/drivers/platform/surface/surface_gpe.c
-index ec66fde28e75..27365cbe1ee9 100644
---- a/drivers/platform/surface/surface_gpe.c
-+++ b/drivers/platform/surface/surface_gpe.c
-@@ -4,7 +4,7 @@
- * properly configuring the respective GPEs. Required for wakeup via lid on
- * newer Intel-based Microsoft Surface devices.
- *
-- * Copyright (C) 2020 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2020-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
-diff --git a/drivers/platform/surface/surface_hotplug.c b/drivers/platform/surface/surface_hotplug.c
-index cfcc15cfbacb..f004a2495201 100644
---- a/drivers/platform/surface/surface_hotplug.c
-+++ b/drivers/platform/surface/surface_hotplug.c
-@@ -10,7 +10,7 @@
- * Event signaling is handled via ACPI, which will generate the appropriate
- * device-check notifications to be picked up by the PCIe hot-plug driver.
- *
-- * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2019-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <linux/acpi.h>
-diff --git a/drivers/platform/surface/surface_platform_profile.c b/drivers/platform/surface/surface_platform_profile.c
-index 6373d3b5eb7f..fbf2e11fd6ce 100644
---- a/drivers/platform/surface/surface_platform_profile.c
-+++ b/drivers/platform/surface/surface_platform_profile.c
-@@ -3,7 +3,7 @@
- * Surface Platform Profile / Performance Mode driver for Surface System
- * Aggregator Module (thermal subsystem).
- *
-- * Copyright (C) 2021 Maximilian Luz <luzmaximilian@gmail.com>
-+ * Copyright (C) 2021-2022 Maximilian Luz <luzmaximilian@gmail.com>
- */
-
- #include <asm/unaligned.h>
---
-2.37.3
-
-From af14813f2c2c1571196481fa564649e0e92dc503 Mon Sep 17 00:00:00 2001
-From: Lukas Bulwahn <lukas.bulwahn@gmail.com>
-Date: Wed, 13 Jul 2022 06:09:16 +0200
-Subject: [PATCH] MAINTAINERS: repair file entry in MICROSOFT SURFACE
- AGGREGATOR TABLET-MODE SWITCH
-
-Commit 9f794056db5b ("platform/surface: Add KIP/POS tablet-mode switch
-driver") adds the section MICROSOFT SURFACE AGGREGATOR TABLET-MODE SWITCH
-with a file entry, but the file that is added with this commit is actually
-named slightly differently.
-
- file entry name: drivers/platform/surface/surface_aggregator_tablet_switch.c
- added file name: drivers/platform/surface/surface_aggregator_tabletsw.c
-
-Hence, ./scripts/get_maintainer.pl --self-test=patterns complains about a
-broken reference.
-
-Repair this file entry to the actual file name added with the commit above.
-
-Fixes: 9f794056db5b ("platform/surface: Add KIP/POS tablet-mode switch driver")
-Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
-Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
-Reviewed-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220713040916.1767-1-lukas.bulwahn@gmail.com
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- MAINTAINERS | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/MAINTAINERS b/MAINTAINERS
-index 55e80354a097..6772c9d0eccc 100644
---- a/MAINTAINERS
-+++ b/MAINTAINERS
-@@ -13303,7 +13303,7 @@ MICROSOFT SURFACE AGGREGATOR TABLET-MODE SWITCH
- M: Maximilian Luz <luzmaximilian@gmail.com>
- L: platform-driver-x86@vger.kernel.org
- S: Maintained
--F: drivers/platform/surface/surface_aggregator_tablet_switch.c
-+F: drivers/platform/surface/surface_aggregator_tabletsw.c
-
- MICROSOFT SURFACE BATTERY AND AC DRIVERS
- M: Maximilian Luz <luzmaximilian@gmail.com>
---
-2.37.3
-
-From 799b65f7dd3e013e1b5cd57877cc08c0b8298504 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Sun, 17 Jul 2022 14:07:35 +0200
-Subject: [PATCH] platform/surface: tabletsw: Fix __le32 integer access
-
-The sources.count field is a __le32 inside a packed struct. So use the
-proper functions to access it.
-
-Reported-by: kernel test robot <lkp@intel.com>
-Fixes: 9f794056db5b ("platform/surface: Add KIP/POS tablet-mode switch driver")
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220717120735.2052160-1-luzmaximilian@gmail.com
-Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-sam
----
- drivers/platform/surface/surface_aggregator_tabletsw.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_tabletsw.c b/drivers/platform/surface/surface_aggregator_tabletsw.c
-index 596ca6c80681..27d95a6a7851 100644
---- a/drivers/platform/surface/surface_aggregator_tabletsw.c
-+++ b/drivers/platform/surface/surface_aggregator_tabletsw.c
-@@ -410,7 +410,7 @@ static int ssam_pos_get_source(struct ssam_tablet_sw *sw, u32 *source_id)
- if (status)
- return status;
-
-- if (sources.count == 0) {
-+ if (get_unaligned_le32(&sources.count) == 0) {
- dev_err(&sw->sdev->dev, "no posture sources found\n");
- return -ENODEV;
- }
-@@ -422,7 +422,7 @@ static int ssam_pos_get_source(struct ssam_tablet_sw *sw, u32 *source_id)
- * is a device that provides multiple sources, at which point we can
- * then try to figure out how to handle them.
- */
-- WARN_ON(sources.count > 1);
-+ WARN_ON(get_unaligned_le32(&sources.count) > 1);
-
- *source_id = get_unaligned_le32(&sources.id[0]);
- return 0;
---
-2.37.3
-
-From edc6a485b06125a928c62c7d149861ca4d603ccd Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Sat, 25 Jun 2022 20:42:00 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Rename HID device
- nodes based on their function
-
-Rename HID device nodes based on their function. In particular, these
-are nodes for firmware updates via the CFU mechanism (component firmware
-update), HID based sensors, and a USB-C UCSI client.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Patchset: surface-sam
----
- .../surface/surface_aggregator_registry.c | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index 93ab62eb393d..7d82398f55b1 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -104,14 +104,14 @@ static const struct software_node ssam_node_hid_tid1_touchpad = {
- .parent = &ssam_node_root,
- };
-
--/* HID device instance 6 (TID1, unknown HID device). */
--static const struct software_node ssam_node_hid_tid1_iid6 = {
-+/* HID device instance 6 (TID1, HID sensor collection). */
-+static const struct software_node ssam_node_hid_tid1_sensors = {
- .name = "ssam:01:15:01:06:00",
- .parent = &ssam_node_root,
- };
-
--/* HID device instance 7 (TID1, unknown HID device). */
--static const struct software_node ssam_node_hid_tid1_iid7 = {
-+/* HID device instance 7 (TID1, UCM UCSI HID client). */
-+static const struct software_node ssam_node_hid_tid1_ucm_ucsi = {
- .name = "ssam:01:15:01:07:00",
- .parent = &ssam_node_root,
- };
-@@ -182,8 +182,8 @@ static const struct software_node ssam_node_hid_kip_touchpad = {
- .parent = &ssam_node_hub_kip,
- };
-
--/* HID device instance 5 (KIP hub, unknown HID device). */
--static const struct software_node ssam_node_hid_kip_iid5 = {
-+/* HID device instance 5 (KIP hub, type-cover firmware update). */
-+static const struct software_node ssam_node_hid_kip_fwupd = {
- .name = "ssam:01:15:02:05:00",
- .parent = &ssam_node_hub_kip,
- };
-@@ -244,8 +244,8 @@ static const struct software_node *ssam_node_group_sls[] = {
- &ssam_node_hid_tid1_keyboard,
- &ssam_node_hid_tid1_penstash,
- &ssam_node_hid_tid1_touchpad,
-- &ssam_node_hid_tid1_iid6,
-- &ssam_node_hid_tid1_iid7,
-+ &ssam_node_hid_tid1_sensors,
-+ &ssam_node_hid_tid1_ucm_ucsi,
- &ssam_node_hid_tid1_sysctrl,
- NULL,
- };
-@@ -278,7 +278,7 @@ static const struct software_node *ssam_node_group_sp8[] = {
- &ssam_node_hid_kip_keyboard,
- &ssam_node_hid_kip_penstash,
- &ssam_node_hid_kip_touchpad,
-- &ssam_node_hid_kip_iid5,
-+ &ssam_node_hid_kip_fwupd,
- NULL,
- };
-
---
-2.37.3
+2.38.0
-From a92cc0122356f6015bb73773038b61a5e269a0bd Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Sat, 25 Jun 2022 20:52:47 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Rename HID device
- nodes based on new findings
-
-On Windows, the HID devices with target ID 1 are grouped as "Surface Hot
-Plug - SAM". Rename their device nodes in the registry to reflect that
-and update the comments accordingly.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Patchset: surface-sam
----
- .../surface/surface_aggregator_registry.c | 36 +++++++++----------
- 1 file changed, 18 insertions(+), 18 deletions(-)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index 7d82398f55b1..9970f89b1411 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -86,38 +86,38 @@ static const struct software_node ssam_node_bas_dtx = {
- .parent = &ssam_node_root,
- };
-
--/* HID keyboard (TID1). */
--static const struct software_node ssam_node_hid_tid1_keyboard = {
-+/* HID keyboard (SAM, TID=1). */
-+static const struct software_node ssam_node_hid_sam_keyboard = {
- .name = "ssam:01:15:01:01:00",
- .parent = &ssam_node_root,
- };
-
--/* HID pen stash (TID1; pen taken / stashed away evens). */
--static const struct software_node ssam_node_hid_tid1_penstash = {
-+/* HID pen stash (SAM, TID=1; pen taken / stashed away evens). */
-+static const struct software_node ssam_node_hid_sam_penstash = {
- .name = "ssam:01:15:01:02:00",
- .parent = &ssam_node_root,
- };
-
--/* HID touchpad (TID1). */
--static const struct software_node ssam_node_hid_tid1_touchpad = {
-+/* HID touchpad (SAM, TID=1). */
-+static const struct software_node ssam_node_hid_sam_touchpad = {
- .name = "ssam:01:15:01:03:00",
- .parent = &ssam_node_root,
- };
-
--/* HID device instance 6 (TID1, HID sensor collection). */
--static const struct software_node ssam_node_hid_tid1_sensors = {
-+/* HID device instance 6 (SAM, TID=1, HID sensor collection). */
-+static const struct software_node ssam_node_hid_sam_sensors = {
- .name = "ssam:01:15:01:06:00",
- .parent = &ssam_node_root,
- };
-
--/* HID device instance 7 (TID1, UCM UCSI HID client). */
--static const struct software_node ssam_node_hid_tid1_ucm_ucsi = {
-+/* HID device instance 7 (SAM, TID=1, UCM UCSI HID client). */
-+static const struct software_node ssam_node_hid_sam_ucm_ucsi = {
- .name = "ssam:01:15:01:07:00",
- .parent = &ssam_node_root,
- };
-
--/* HID system controls (TID1). */
--static const struct software_node ssam_node_hid_tid1_sysctrl = {
-+/* HID system controls (SAM, TID=1). */
-+static const struct software_node ssam_node_hid_sam_sysctrl = {
- .name = "ssam:01:15:01:08:00",
- .parent = &ssam_node_root,
- };
-@@ -241,12 +241,12 @@ static const struct software_node *ssam_node_group_sls[] = {
- &ssam_node_bat_main,
- &ssam_node_tmp_pprof,
- &ssam_node_pos_tablet_switch,
-- &ssam_node_hid_tid1_keyboard,
-- &ssam_node_hid_tid1_penstash,
-- &ssam_node_hid_tid1_touchpad,
-- &ssam_node_hid_tid1_sensors,
-- &ssam_node_hid_tid1_ucm_ucsi,
-- &ssam_node_hid_tid1_sysctrl,
-+ &ssam_node_hid_sam_keyboard,
-+ &ssam_node_hid_sam_penstash,
-+ &ssam_node_hid_sam_touchpad,
-+ &ssam_node_hid_sam_sensors,
-+ &ssam_node_hid_sam_ucm_ucsi,
-+ &ssam_node_hid_sam_sysctrl,
- NULL,
- };
-
---
-2.37.3
-
-From 2b28caa61d0783215ce24c418e435214f867c0dd Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Sat, 25 Jun 2022 20:54:59 +0200
-Subject: [PATCH] platform/surface: aggregator_registry: Add HID devices for
- sensors and UCSI client to SP8
-
-Add software nodes for the HID sensor collection and the UCM UCSI HID
-client to the Surface Pro 8. In contrast to the type-cover devices,
-these devices are directly attached to the SAM controller, without any
-hub.
-
-This enables support for HID-based sensors, including the ones used for
-automatic screen rotation, on the Surface Pro 8.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Patchset: surface-sam
----
- drivers/platform/surface/surface_aggregator_registry.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/drivers/platform/surface/surface_aggregator_registry.c b/drivers/platform/surface/surface_aggregator_registry.c
-index 9970f89b1411..585911020cea 100644
---- a/drivers/platform/surface/surface_aggregator_registry.c
-+++ b/drivers/platform/surface/surface_aggregator_registry.c
-@@ -279,6 +279,8 @@ static const struct software_node *ssam_node_group_sp8[] = {
- &ssam_node_hid_kip_penstash,
- &ssam_node_hid_kip_touchpad,
- &ssam_node_hid_kip_fwupd,
-+ &ssam_node_hid_sam_sensors,
-+ &ssam_node_hid_sam_ucm_ucsi,
- NULL,
- };
-
---
-2.37.3
-
-From 749702e2ed1883c23763cc434f2ce1ddcdd0f336 Mon Sep 17 00:00:00 2001
+From aea7c2d43bb6419f5abc89441fa6dddea59b414c Mon Sep 17 00:00:00 2001
From: Maximilian Luz <luzmaximilian@gmail.com>
Date: Sat, 25 Jul 2020 17:19:53 +0200
Subject: [PATCH] i2c: acpi: Implement RawBytes read access
@@ -7340,9 +2640,9 @@ index 08b561f0709d..d7c397bce0f0 100644
dev_warn(&adapter->dev, "protocol 0x%02x not supported for client 0x%02x\n",
accessor_type, client->addr);
--
-2.37.3
+2.38.0
-From bcb73e7e4c52a3c430e252d090614d18bad7e044 Mon Sep 17 00:00:00 2001
+From 6f7f7ad9af793bcb4b60564b5a5da353b0690960 Mon Sep 17 00:00:00 2001
From: Maximilian Luz <luzmaximilian@gmail.com>
Date: Sat, 13 Feb 2021 16:41:18 +0100
Subject: [PATCH] platform/surface: Add driver for Surface Book 1 dGPU switch
@@ -7563,9 +2863,9 @@ index 000000000000..8b816ed8f35c
+MODULE_DESCRIPTION("Discrete GPU Power-Switch for Surface Book 1");
+MODULE_LICENSE("GPL");
--
-2.37.3
+2.38.0
-From 48e1c1ac0c69aa95a8c9f19307fffb4b77cf2170 Mon Sep 17 00:00:00 2001
+From 5cf259bfcbbe641c70ad6c5eea62ebc1e6e07bd9 Mon Sep 17 00:00:00 2001
From: Sachi King <nakato@nakato.io>
Date: Tue, 5 Oct 2021 00:05:09 +1100
Subject: [PATCH] Input: soc_button_array - support AMD variant Surface devices
@@ -7640,9 +2940,9 @@ index 480476121c01..36e1bf7b7a01 100644
/*
--
-2.37.3
+2.38.0
-From df10e0afc475ed5177cfa692db6dbfea28d7a9fe Mon Sep 17 00:00:00 2001
+From 1bdc0fbcda34412b4a4bf0372d4cf776c7ca43a3 Mon Sep 17 00:00:00 2001
From: Sachi King <nakato@nakato.io>
Date: Tue, 5 Oct 2021 00:22:57 +1100
Subject: [PATCH] platform/surface: surfacepro3_button: don't load on amd
@@ -7712,9 +3012,9 @@ index 242fb690dcaf..30eea54dbb47 100644
--
-2.37.3
+2.38.0
-From 62a4fddab3c7a44dc5b17633ccc7f125f59ee3f9 Mon Sep 17 00:00:00 2001
+From 1ffe7e9746dba16ca1936198703166d8c27e1649 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20Dre=C3=9Fler?= <verdre@v0yd.nl>
Date: Thu, 5 Nov 2020 13:09:45 +0100
Subject: [PATCH] hid/multitouch: Turn off Type Cover keyboard backlight when
@@ -7750,7 +3050,7 @@ Patchset: surface-typecover
1 file changed, 98 insertions(+), 2 deletions(-)
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
-index 2e72922e36f5..15f5f11c4b85 100644
+index 91a4d3fc30e0..458537bf4a8e 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -34,7 +34,10 @@
@@ -7823,7 +3123,7 @@ index 2e72922e36f5..15f5f11c4b85 100644
};
@@ -1706,6 +1726,69 @@ static void mt_expired_timeout(struct timer_list *t)
- clear_bit(MT_IO_FLAGS_RUNNING, &td->mt_io_flags);
+ clear_bit_unlock(MT_IO_FLAGS_RUNNING, &td->mt_io_flags);
}
+static void get_type_cover_backlight_field(struct hid_device *hdev,
@@ -7945,9 +3245,9 @@ index 2e72922e36f5..15f5f11c4b85 100644
{ .driver_data = MT_CLS_GOOGLE,
HID_DEVICE(HID_BUS_ANY, HID_GROUP_ANY, USB_VENDOR_ID_GOOGLE,
--
-2.37.3
+2.38.0
-From 2b1d157b58d6a192e147dbfc84526e7ffa9ae2c1 Mon Sep 17 00:00:00 2001
+From 7f0b06e3e5b7df1ddcb954906f651f727f10717d Mon Sep 17 00:00:00 2001
From: PJungkamp <p.jungkamp@gmail.com>
Date: Fri, 25 Feb 2022 12:04:25 +0100
Subject: [PATCH] hid/multitouch: Add support for surface pro type cover tablet
@@ -7976,7 +3276,7 @@ Patchset: surface-typecover
1 file changed, 122 insertions(+), 26 deletions(-)
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
-index 15f5f11c4b85..69202575ce19 100644
+index 458537bf4a8e..3d7d002a662f 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -76,6 +76,7 @@ MODULE_LICENSE("GPL");
@@ -8144,7 +3444,7 @@ index 15f5f11c4b85..69202575ce19 100644
suffix = "UNKNOWN";
break;
@@ -1726,30 +1815,6 @@ static void mt_expired_timeout(struct timer_list *t)
- clear_bit(MT_IO_FLAGS_RUNNING, &td->mt_io_flags);
+ clear_bit_unlock(MT_IO_FLAGS_RUNNING, &td->mt_io_flags);
}
-static void get_type_cover_backlight_field(struct hid_device *hdev,
@@ -8245,52 +3545,9 @@ index 15f5f11c4b85..69202575ce19 100644
unregister_pm_notifier(&td->pm_notifier);
del_timer_sync(&td->release_timer);
--
-2.37.3
-
-From 716290db6ffaeb61e78eb40d6b466e05bb983990 Mon Sep 17 00:00:00 2001
-From: Maximilian Luz <luzmaximilian@gmail.com>
-Date: Thu, 21 Jul 2022 14:11:20 +0200
-Subject: [PATCH] platform/surface: gpe: Add support for 13" Intel version of
- Surface Laptop 4
-
-The 13" Intel version of the Surface Laptop 4 uses the same GPE as the
-Surface Laptop Studio for wakeups via the lid. Set it up accordingly.
-
-Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
-Link: https://lore.kernel.org/r/20220721121120.2002430-1-luzmaximilian@gmail.com
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Patchset: surface-gpe
----
- drivers/platform/surface/surface_gpe.c | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
-
-diff --git a/drivers/platform/surface/surface_gpe.c b/drivers/platform/surface/surface_gpe.c
-index 27365cbe1ee9..c219b840d491 100644
---- a/drivers/platform/surface/surface_gpe.c
-+++ b/drivers/platform/surface/surface_gpe.c
-@@ -171,6 +171,18 @@ static const struct dmi_system_id dmi_lid_device_table[] = {
- },
- .driver_data = (void *)lid_device_props_l4D,
- },
-+ {
-+ .ident = "Surface Laptop 4 (Intel 13\")",
-+ .matches = {
-+ /*
-+ * We match for SKU here due to different variants: The
-+ * AMD (15") version does not rely on GPEs.
-+ */
-+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
-+ DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "Surface_Laptop_4_1950:1951"),
-+ },
-+ .driver_data = (void *)lid_device_props_l4B,
-+ },
- {
- .ident = "Surface Laptop Studio",
- .matches = {
---
-2.37.3
+2.38.0
-From 63aeabc28778964d2ff7f33c81394d82945beae4 Mon Sep 17 00:00:00 2001
+From f7a93cc0fd6be37a77b98c2abc57211d8269730e Mon Sep 17 00:00:00 2001
From: Hans de Goede <hdegoede@redhat.com>
Date: Sun, 10 Oct 2021 20:56:57 +0200
Subject: [PATCH] ACPI: delay enumeration of devices with a _DEP pointing to an
@@ -8350,10 +3607,10 @@ Patchset: cameras
1 file changed, 3 insertions(+)
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
-index 762b61f67e6c..2c0f39a7f2a1 100644
+index 42cec8120f18..72d0e599120f 100644
--- a/drivers/acpi/scan.c
+++ b/drivers/acpi/scan.c
-@@ -2122,6 +2122,9 @@ static acpi_status acpi_bus_check_add_2(acpi_handle handle, u32 lvl_not_used,
+@@ -2108,6 +2108,9 @@ static acpi_status acpi_bus_check_add_2(acpi_handle handle, u32 lvl_not_used,
static void acpi_default_enumeration(struct acpi_device *device)
{
@@ -8364,9 +3621,9 @@ index 762b61f67e6c..2c0f39a7f2a1 100644
* Do not enumerate devices with enumeration_by_parent flag set as
* they will be enumerated by their respective parents.
--
-2.37.3
+2.38.0
-From 0a1366c998d0bbd976995ddedb3c1fca8665db6c Mon Sep 17 00:00:00 2001
+From e53ff4336793833ca7475d11409cf61203370f05 Mon Sep 17 00:00:00 2001
From: zouxiaoh <xiaohong.zou@intel.com>
Date: Fri, 25 Jun 2021 08:52:59 +0800
Subject: [PATCH] iommu: intel-ipu: use IOMMU passthrough mode for Intel IPUs
@@ -8392,7 +3649,7 @@ Patchset: cameras
1 file changed, 30 insertions(+)
diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
-index 825b524e81f3..095d566c058f 100644
+index d8ecca292f93..e3b37a19b6bc 100644
--- a/drivers/iommu/intel/iommu.c
+++ b/drivers/iommu/intel/iommu.c
@@ -37,6 +37,12 @@
@@ -8408,7 +3665,7 @@ index 825b524e81f3..095d566c058f 100644
#define IS_IPTS(pdev) ((pdev)->vendor == PCI_VENDOR_ID_INTEL && \
((pdev)->device == 0x9d3e))
#define IS_AZALIA(pdev) ((pdev)->vendor == 0x8086 && (pdev)->device == 0x3a3e)
-@@ -310,12 +316,14 @@ EXPORT_SYMBOL_GPL(intel_iommu_enabled);
+@@ -284,12 +290,14 @@ EXPORT_SYMBOL_GPL(intel_iommu_enabled);
static int dmar_map_gfx = 1;
static int dmar_map_ipts = 1;
@@ -8422,8 +3679,8 @@ index 825b524e81f3..095d566c058f 100644
+#define IDENTMAP_IPU 8
#define IDENTMAP_IPTS 16
- int intel_iommu_gfx_mapped;
-@@ -2664,6 +2672,9 @@ static int device_def_domain_type(struct device *dev)
+ const struct iommu_ops intel_iommu_ops;
+@@ -2607,6 +2615,9 @@ static int device_def_domain_type(struct device *dev)
if ((iommu_identity_mapping & IDENTMAP_GFX) && IS_GFX_DEVICE(pdev))
return IOMMU_DOMAIN_IDENTITY;
@@ -8433,7 +3690,7 @@ index 825b524e81f3..095d566c058f 100644
if ((iommu_identity_mapping & IDENTMAP_IPTS) && IS_IPTS(pdev))
return IOMMU_DOMAIN_IDENTITY;
}
-@@ -3102,6 +3113,9 @@ static int __init init_dmars(void)
+@@ -2998,6 +3009,9 @@ static int __init init_dmars(void)
if (!dmar_map_gfx)
iommu_identity_mapping |= IDENTMAP_GFX;
@@ -8443,7 +3700,7 @@ index 825b524e81f3..095d566c058f 100644
if (!dmar_map_ipts)
iommu_identity_mapping |= IDENTMAP_IPTS;
-@@ -4933,6 +4947,18 @@ static void quirk_iommu_igfx(struct pci_dev *dev)
+@@ -4798,6 +4812,18 @@ static void quirk_iommu_igfx(struct pci_dev *dev)
dmar_map_gfx = 0;
}
@@ -8462,7 +3719,7 @@ index 825b524e81f3..095d566c058f 100644
static void quirk_iommu_ipts(struct pci_dev *dev)
{
if (!IS_IPTS(dev))
-@@ -4944,6 +4970,7 @@ static void quirk_iommu_ipts(struct pci_dev *dev)
+@@ -4809,6 +4835,7 @@ static void quirk_iommu_ipts(struct pci_dev *dev)
pci_info(dev, "Passthrough IOMMU for IPTS\n");
dmar_map_ipts = 0;
}
@@ -8470,7 +3727,7 @@ index 825b524e81f3..095d566c058f 100644
/* G4x/GM45 integrated gfx dmar support is totally busted. */
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2a40, quirk_iommu_igfx);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2e00, quirk_iommu_igfx);
-@@ -4979,6 +5006,9 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1632, quirk_iommu_igfx);
+@@ -4844,6 +4871,9 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1632, quirk_iommu_igfx);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x163A, quirk_iommu_igfx);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x163D, quirk_iommu_igfx);
@@ -8481,9 +3738,9 @@ index 825b524e81f3..095d566c058f 100644
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x9D3E, quirk_iommu_ipts);
--
-2.37.3
+2.38.0
-From 23350bbaa1baea7694766c9aeeeecacd67d5a877 Mon Sep 17 00:00:00 2001
+From 62a30b7c7a3c825600efe1a70f6c670a655ea5e2 Mon Sep 17 00:00:00 2001
From: Daniel Scally <djrscally@gmail.com>
Date: Sun, 10 Oct 2021 20:57:02 +0200
Subject: [PATCH] platform/x86: int3472: Enable I2c daisy chain
@@ -8518,9 +3775,9 @@ index 22f61b47f9e5..e1de1ff40bba 100644
return 0;
--
-2.37.3
+2.38.0
-From 247beedc634caa1a965f462451641d7f37f07d74 Mon Sep 17 00:00:00 2001
+From 16fff23e17f0a0bde5e484e2aaba0940aff63ce1 Mon Sep 17 00:00:00 2001
From: Daniel Scally <djrscally@gmail.com>
Date: Thu, 28 Oct 2021 21:55:16 +0100
Subject: [PATCH] media: i2c: Add driver for DW9719 VCM
@@ -8539,10 +3796,10 @@ Patchset: cameras
create mode 100644 drivers/media/i2c/dw9719.c
diff --git a/MAINTAINERS b/MAINTAINERS
-index 6772c9d0eccc..a639e7ff0402 100644
+index 72b9654f764c..cecb621a6581 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -6163,6 +6163,13 @@ T: git git://linuxtv.org/media_tree.git
+@@ -6250,6 +6250,13 @@ T: git git://linuxtv.org/media_tree.git
F: Documentation/devicetree/bindings/media/i2c/dongwoon,dw9714.txt
F: drivers/media/i2c/dw9714.c
@@ -8557,10 +3814,10 @@ index 6772c9d0eccc..a639e7ff0402 100644
M: Dongchun Zhu <dongchun.zhu@mediatek.com>
L: linux-media@vger.kernel.org
diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig
-index c926e5d43820..5c245f642ae3 100644
+index 7806d4b81716..98d081efeef7 100644
--- a/drivers/media/i2c/Kconfig
+++ b/drivers/media/i2c/Kconfig
-@@ -806,6 +806,17 @@ config VIDEO_DW9714
+@@ -821,6 +821,17 @@ config VIDEO_DW9714
capability. This is designed for linear control of
voice coil motors, controlled via I2C serial interface.
@@ -8579,10 +3836,10 @@ index c926e5d43820..5c245f642ae3 100644
tristate "DW9768 lens voice coil support"
depends on I2C && VIDEO_DEV
diff --git a/drivers/media/i2c/Makefile b/drivers/media/i2c/Makefile
-index 3e1696963e7f..9dfda069e006 100644
+index 0a2933103dd9..b82a07c76388 100644
--- a/drivers/media/i2c/Makefile
+++ b/drivers/media/i2c/Makefile
-@@ -29,6 +29,7 @@ obj-$(CONFIG_VIDEO_CS5345) += cs5345.o
+@@ -30,6 +30,7 @@ obj-$(CONFIG_VIDEO_CS5345) += cs5345.o
obj-$(CONFIG_VIDEO_CS53L32A) += cs53l32a.o
obj-$(CONFIG_VIDEO_CX25840) += cx25840/
obj-$(CONFIG_VIDEO_DW9714) += dw9714.o
@@ -9024,9 +4281,9 @@ index 000000000000..8451c75b696b
+MODULE_DESCRIPTION("DW9719 VCM Driver");
+MODULE_LICENSE("GPL");
--
-2.37.3
+2.38.0
-From 131a1b6b516582eeeba78853894a168c0a4604fd Mon Sep 17 00:00:00 2001
+From ed77e610029cf5cdcbed647670d963a8ade49d10 Mon Sep 17 00:00:00 2001
From: Daniel Scally <djrscally@gmail.com>
Date: Wed, 4 May 2022 23:21:45 +0100
Subject: [PATCH] media: ipu3-cio2: Move functionality from .complete() to
@@ -9045,7 +4302,7 @@ Patchset: cameras
1 file changed, 23 insertions(+), 42 deletions(-)
diff --git a/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c b/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
-index dbdbdb648a0d..d0715144bf3e 100644
+index a3fe547b7fce..5648f29ced7b 100644
--- a/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
+++ b/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
@@ -1383,7 +1383,10 @@ static int cio2_notifier_bound(struct v4l2_async_notifier *notifier,
@@ -9139,9 +4396,9 @@ index dbdbdb648a0d..d0715144bf3e 100644
static int cio2_parse_firmware(struct cio2_device *cio2)
--
-2.37.3
+2.38.0
-From 82abd409bf7173da2ed6b76d95410f1f60e714fa Mon Sep 17 00:00:00 2001
+From bac377c1e75c9aea4f7fcee09db02c7c0be1e40d Mon Sep 17 00:00:00 2001
From: Daniel Scally <djrscally@gmail.com>
Date: Thu, 2 Jun 2022 22:15:56 +0100
Subject: [PATCH] media: ipu3-cio2: Re-add .complete() to ipu3-cio2
@@ -9159,7 +4416,7 @@ Patchset: cameras
1 file changed, 9 insertions(+)
diff --git a/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c b/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
-index d0715144bf3e..3a25dfc696b2 100644
+index 5648f29ced7b..957a30cd369d 100644
--- a/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
+++ b/drivers/media/pci/intel/ipu3/ipu3-cio2-main.c
@@ -1430,9 +1430,18 @@ static void cio2_notifier_unbind(struct v4l2_async_notifier *notifier,
@@ -9182,9 +4439,9 @@ index d0715144bf3e..3a25dfc696b2 100644
static int cio2_parse_firmware(struct cio2_device *cio2)
--
-2.37.3
+2.38.0
-From 1abd24d4d11a1842c20c2d7feed35b39c4061745 Mon Sep 17 00:00:00 2001
+From 2cdd92525b8a27fd8c8edf6cb1e1c5d3cb233b92 Mon Sep 17 00:00:00 2001
From: Maximilian Luz <luzmaximilian@gmail.com>
Date: Fri, 15 Jul 2022 23:48:00 +0200
Subject: [PATCH] drivers/media/i2c: Fix DW9719 dependencies
@@ -9198,10 +4455,10 @@ Patchset: cameras
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig
-index 5c245f642ae3..50ea62e63784 100644
+index 98d081efeef7..c67966cafe10 100644
--- a/drivers/media/i2c/Kconfig
+++ b/drivers/media/i2c/Kconfig
-@@ -808,7 +808,7 @@ config VIDEO_DW9714
+@@ -823,7 +823,7 @@ config VIDEO_DW9714
config VIDEO_DW9719
tristate "DW9719 lens voice coil support"
@@ -9211,9 +4468,9 @@ index 5c245f642ae3..50ea62e63784 100644
select VIDEO_V4L2_SUBDEV_API
select V4L2_ASYNC
--
-2.37.3
+2.38.0
-From 86f47552d0d743f3100b07c6f859033c031db588 Mon Sep 17 00:00:00 2001
+From a3051d35806d33fe6fb31040ff6c0a1f81a31e37 Mon Sep 17 00:00:00 2001
From: Sakari Ailus <sakari.ailus@linux.intel.com>
Date: Thu, 25 Aug 2022 21:36:37 +0300
Subject: [PATCH] ipu3-imgu: Fix NULL pointer dereference in active selection
@@ -9292,9 +4549,9 @@ index d1c539cefba8..2234bb8d48b3 100644
static int imgu_subdev_set_selection(struct v4l2_subdev *sd,
--
-2.37.3
+2.38.0
-From 90d952acdd44a833c8131cd63df69a43453763fe Mon Sep 17 00:00:00 2001
+From 07342c91ee73cfa7e1d25cecd6aa4e0b5961659b Mon Sep 17 00:00:00 2001
From: Maximilian Luz <luzmaximilian@gmail.com>
Date: Wed, 7 Sep 2022 15:38:08 +0200
Subject: [PATCH] ipu3-imgu: Fix NULL pointer dereference in
@@ -9423,9 +4680,9 @@ index 2234bb8d48b3..490ba0eb249b 100644
}
--
-2.37.3
+2.38.0
-From f48f910254bcbc02338128293f8199e832b07fcb Mon Sep 17 00:00:00 2001
+From 7f05ef4c0b13280490b8ec2e57b2c030e4f52be3 Mon Sep 17 00:00:00 2001
From: Sachi King <nakato@nakato.io>
Date: Sat, 29 May 2021 17:47:38 +1000
Subject: [PATCH] ACPI: Add quirk for Surface Laptop 4 AMD missing irq 7
@@ -9490,9 +4747,9 @@ index 907cc98b1938..0116d27b29ea 100644
mp_config_acpi_legacy_irqs();
--
-2.37.3
+2.38.0
-From 324a9a147dda942ca3f96b1d10edab524ea47193 Mon Sep 17 00:00:00 2001
+From c9cb2f9530fa98146ae22dc43e0bed4d317c0808 Mon Sep 17 00:00:00 2001
From: Maximilian Luz <luzmaximilian@gmail.com>
Date: Thu, 3 Jun 2021 14:04:26 +0200
Subject: [PATCH] ACPI: Add AMD 13" Surface Laptop 4 model to irq 7 override
@@ -9532,5 +4789,5 @@ index 0116d27b29ea..af102c6f8e5b 100644
};
--
-2.37.3
+2.38.0
diff --git a/SOURCES/mod-extra.list.fedora b/SOURCES/mod-extra.list.fedora
index 327c7fe..c83fc33 100644
--- a/SOURCES/mod-extra.list.fedora
+++ b/SOURCES/mod-extra.list.fedora
@@ -39,8 +39,6 @@ dccp_probe.ko
diva_idi.ko
divas.ko
dlm.ko
-dln2-adc.ko
-dln2.ko
ds1wm.ko
ds2482.ko
ds2490.ko
@@ -56,7 +54,6 @@ gf2k.ko
gfs2.ko
gigaset.ko
girbil-sir.ko
-gpio-dln2.ko
grip.ko
grip_mp.ko
guillemot.ko
@@ -70,7 +67,6 @@ hysdn.ko
i2400m.ko
i2400m-sdio.ko
i2400m-usb.ko
-i2c-dln2.ko
ieee802154.ko
iforce.ko
interact.ko
@@ -151,7 +147,6 @@ softing_cs.ko
softing.ko
spaceball.ko
spaceorb.ko
-spi-dln2.ko
stinger.ko
sysv.ko
tcp_bic.ko
diff --git a/SOURCES/mod-internal.list b/SOURCES/mod-internal.list
index 9063c97..8141990 100644
--- a/SOURCES/mod-internal.list
+++ b/SOURCES/mod-internal.list
@@ -1,59 +1,60 @@
-dmatest
-kunit
-kunit-test
-ext4-inode-test
-list-test
-sysctl-test
-mptcp_crypto_test
-mptcp_token_test
bitfield_kunit
+clk-gate_test
+clk_test
cmdline_kunit
-property-entry-test
-qos-test
-resource_kunit
-soc-topology-test
-string-stream-test
-test_linear_ranges
-test_bits
-test_kasan
-time_test
-fat_test
-lib_test
-rational-test
-test_list_sort
-slub_kunit
-memcpy_kunit
+cpumask_kunit
+cros_kunit
dev_addr_lists_test
+dmatest
+ext4-inode-test
+fat_test
+iio-test-format
+iio-test-rescale
kfence_test
-test_hash
+kunit
+kunit-test
+lib_test
+list-test
locktorture
mac80211_hwsim
+memcpy_kunit
+mptcp_crypto_test
+mptcp_token_test
+mtty
netdevsim
+overflow_kunit
pktgen
+rational-test
+rcuscale
rcutorture
+refscale
+resource_kunit
rocker
scftorture
+slub_kunit
+soc-topology-test
+soc-utils-test
+stackinit_kunit
+sysctl-test
+test_bits
+test_bpf
+test_hash
+test_hmm
+test_kasan
test_klp_atomic_replace
+test_klp_callbacks_busy
test_klp_callbacks_demo
test_klp_callbacks_demo2
-test_klp_callbacks_busy
test_klp_callbacks_mod
test_klp_livepatch
test_klp_shadow_vars
test_klp_state
test_klp_state2
test_klp_state3
-torture
-refscale
-rcuscale
-memcpy_kunit
-dev_addr_lists_test
-test_hash
-test_bpf
-stackinit_kunit
-overflow_kunit
-clk-gate_test
-clk_test
-mtty
-test_hmm
+test_kprobes
+test_linear_ranges
+test_list_sort
+test_sort
test_vmalloc
+time_test
+torture
diff --git a/SOURCES/patch-5.19-redhat.patch b/SOURCES/patch-5.19-redhat.patch
deleted file mode 100644
index 3a8675f..0000000
--- a/SOURCES/patch-5.19-redhat.patch
+++ /dev/null
@@ -1,3516 +0,0 @@
- .../devicetree/bindings/gpu/brcm,bcm-v3d.yaml | 1 +
- .../bindings/soc/bcm/brcm,bcm2835-pm.txt | 46 -
- .../bindings/soc/bcm/brcm,bcm2835-pm.yaml | 86 ++
- Kconfig | 2 +
- Kconfig.redhat | 17 +
- Makefile | 4 +
- arch/arm/Kconfig | 4 +-
- arch/arm/boot/dts/bcm2711-rpi.dtsi | 4 +
- arch/arm/boot/dts/bcm2711.dtsi | 14 +-
- arch/arm/boot/dts/bcm2835-common.dtsi | 1 +
- arch/arm/configs/bcm2835_defconfig | 1 +
- arch/arm/configs/multi_v7_defconfig | 1 +
- arch/arm64/Kconfig | 3 +-
- arch/arm64/configs/defconfig | 1 +
- arch/s390/include/asm/ipl.h | 1 +
- arch/s390/kernel/ipl.c | 5 +
- arch/s390/kernel/setup.c | 4 +
- arch/x86/kernel/setup.c | 22 +-
- drivers/acpi/apei/hest.c | 8 +
- drivers/acpi/irq.c | 17 +-
- drivers/acpi/scan.c | 9 +
- drivers/ata/libahci.c | 18 +
- drivers/char/ipmi/ipmi_dmi.c | 15 +
- drivers/char/ipmi/ipmi_msghandler.c | 16 +-
- drivers/firmware/efi/Makefile | 1 +
- drivers/firmware/efi/efi.c | 124 ++-
- drivers/firmware/efi/secureboot.c | 38 +
- drivers/firmware/sysfb.c | 18 +-
- drivers/gpu/drm/drm_ioctl.c | 8 +-
- drivers/gpu/drm/i915/display/intel_bios.c | 46 +-
- drivers/gpu/drm/i915/display/intel_psr.c | 37 +-
- drivers/gpu/drm/v3d/Kconfig | 5 +-
- drivers/gpu/drm/v3d/v3d_debugfs.c | 18 +-
- drivers/gpu/drm/v3d/v3d_drv.c | 12 +-
- drivers/gpu/drm/v3d/v3d_gem.c | 12 +-
- drivers/gpu/drm/vc4/vc4_hdmi.c | 29 +
- drivers/hid/hid-rmi.c | 64 --
- drivers/hwtracing/coresight/coresight-etm4x-core.c | 19 +
- drivers/input/rmi4/rmi_driver.c | 124 +--
- drivers/iommu/iommu.c | 22 +
- drivers/mfd/bcm2835-pm.c | 74 +-
- drivers/net/phy/Kconfig | 5 +
- drivers/net/phy/Makefile | 1 +
- drivers/net/phy/bcm-phy-lib.h | 19 +
- drivers/net/phy/bcm-phy-ptp.c | 944 +++++++++++++++++++++
- drivers/net/phy/broadcom.c | 33 +-
- drivers/pci/quirks.c | 24 +
- drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 10 +-
- drivers/soc/bcm/bcm2835-power.c | 72 +-
- drivers/usb/core/hub.c | 7 +
- include/linux/efi.h | 22 +-
- include/linux/lsm_hook_defs.h | 2 +
- include/linux/lsm_hooks.h | 6 +
- include/linux/mfd/bcm2835-pm.h | 1 +
- include/linux/rmi.h | 1 +
- include/linux/security.h | 5 +
- init/Kconfig | 2 +-
- kernel/module/signing.c | 9 +-
- net/bluetooth/hci_event.c | 20 +
- net/ipv4/fib_semantics.c | 8 +-
- scripts/pahole-flags.sh | 4 +
- scripts/tags.sh | 2 +
- security/integrity/platform_certs/load_uefi.c | 6 +-
- security/lockdown/Kconfig | 13 +
- security/lockdown/lockdown.c | 1 +
- security/security.c | 6 +
- tools/testing/selftests/net/fib_nexthops.sh | 5 +
- 67 files changed, 1823 insertions(+), 356 deletions(-)
-
-diff --git a/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml b/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
-index e6485f7b046f..217c42874f41 100644
---- a/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
-+++ b/Documentation/devicetree/bindings/gpu/brcm,bcm-v3d.yaml
-@@ -16,6 +16,7 @@ properties:
-
- compatible:
- enum:
-+ - brcm,2711-v3d
- - brcm,7268-v3d
- - brcm,7278-v3d
-
-diff --git a/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.txt b/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.txt
-deleted file mode 100644
-index 72ff033565e5..000000000000
---- a/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.txt
-+++ /dev/null
-@@ -1,46 +0,0 @@
--BCM2835 PM (Power domains, watchdog)
--
--The PM block controls power domains and some reset lines, and includes
--a watchdog timer. This binding supersedes the brcm,bcm2835-pm-wdt
--binding which covered some of PM's register range and functionality.
--
--Required properties:
--
--- compatible: Should be "brcm,bcm2835-pm"
--- reg: Specifies base physical address and size of the two
-- register ranges ("PM" and "ASYNC_BRIDGE" in that
-- order)
--- clocks: a) v3d: The V3D clock from CPRMAN
-- b) peri_image: The PERI_IMAGE clock from CPRMAN
-- c) h264: The H264 clock from CPRMAN
-- d) isp: The ISP clock from CPRMAN
--- #reset-cells: Should be 1. This property follows the reset controller
-- bindings[1].
--- #power-domain-cells: Should be 1. This property follows the power domain
-- bindings[2].
--
--Optional properties:
--
--- timeout-sec: Contains the watchdog timeout in seconds
--- system-power-controller: Whether the watchdog is controlling the
-- system power. This node follows the power controller bindings[3].
--
--[1] Documentation/devicetree/bindings/reset/reset.txt
--[2] Documentation/devicetree/bindings/power/power-domain.yaml
--[3] Documentation/devicetree/bindings/power/power-controller.txt
--
--Example:
--
--pm {
-- compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
-- #power-domain-cells = <1>;
-- #reset-cells = <1>;
-- reg = <0x7e100000 0x114>,
-- <0x7e00a000 0x24>;
-- clocks = <&clocks BCM2835_CLOCK_V3D>,
-- <&clocks BCM2835_CLOCK_PERI_IMAGE>,
-- <&clocks BCM2835_CLOCK_H264>,
-- <&clocks BCM2835_CLOCK_ISP>;
-- clock-names = "v3d", "peri_image", "h264", "isp";
-- system-power-controller;
--};
-diff --git a/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml b/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
-new file mode 100644
-index 000000000000..894786640938
---- /dev/null
-+++ b/Documentation/devicetree/bindings/soc/bcm/brcm,bcm2835-pm.yaml
-@@ -0,0 +1,86 @@
-+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
-+%YAML 1.2
-+---
-+$id: "http://devicetree.org/schemas/soc/bcm/brcm,bcm2835-pm.yaml#"
-+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
-+
-+title: BCM2835 PM (Power domains, watchdog)
-+
-+description: |
-+ The PM block controls power domains and some reset lines, and includes a
-+ watchdog timer.
-+
-+maintainers:
-+ - Nicolas Saenz Julienne <nsaenz@kernel.org>
-+
-+allOf:
-+ - $ref: ../../watchdog/watchdog.yaml#
-+
-+properties:
-+ compatible:
-+ items:
-+ - enum:
-+ - brcm,bcm2835-pm
-+ - brcm,bcm2711-pm
-+ - const: brcm,bcm2835-pm-wdt
-+
-+ reg:
-+ minItems: 2
-+ maxItems: 3
-+
-+ reg-names:
-+ minItems: 2
-+ items:
-+ - const: pm
-+ - const: asb
-+ - const: rpivid_asb
-+
-+ "#power-domain-cells":
-+ const: 1
-+
-+ "#reset-cells":
-+ const: 1
-+
-+ clocks:
-+ minItems: 4
-+ maxItems: 4
-+
-+ clock-names:
-+ items:
-+ - const: v3d
-+ - const: peri_image
-+ - const: h264
-+ - const: isp
-+
-+ system-power-controller:
-+ type: boolean
-+
-+ timeout-sec: true
-+
-+required:
-+ - compatible
-+ - reg
-+ - "#power-domain-cells"
-+ - "#reset-cells"
-+ - clocks
-+
-+additionalProperties: false
-+
-+examples:
-+ - |
-+ #include <dt-bindings/clock/bcm2835.h>
-+
-+ watchdog@7e100000 {
-+ compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
-+ #power-domain-cells = <1>;
-+ #reset-cells = <1>;
-+ reg = <0x7e100000 0x114>,
-+ <0x7e00a000 0x24>;
-+ reg-names = "pm", "asb";
-+ clocks = <&clocks BCM2835_CLOCK_V3D>,
-+ <&clocks BCM2835_CLOCK_PERI_IMAGE>,
-+ <&clocks BCM2835_CLOCK_H264>,
-+ <&clocks BCM2835_CLOCK_ISP>;
-+ clock-names = "v3d", "peri_image", "h264", "isp";
-+ system-power-controller;
-+ };
-diff --git a/Kconfig b/Kconfig
-index 745bc773f567..f57ff40109d7 100644
---- a/Kconfig
-+++ b/Kconfig
-@@ -30,3 +30,5 @@ source "lib/Kconfig"
- source "lib/Kconfig.debug"
-
- source "Documentation/Kconfig"
-+
-+source "Kconfig.redhat"
-diff --git a/Kconfig.redhat b/Kconfig.redhat
-new file mode 100644
-index 000000000000..733a26bd887a
---- /dev/null
-+++ b/Kconfig.redhat
-@@ -0,0 +1,17 @@
-+# SPDX-License-Identifier: GPL-2.0-only
-+#
-+# Red Hat specific options
-+#
-+
-+menu "Red Hat options"
-+
-+config RH_DISABLE_DEPRECATED
-+ bool "Remove support for deprecated features"
-+ help
-+ Red Hat may choose to deprecate certain features in its kernels.
-+ Enable this option to remove support for hardware that is no
-+ longer supported.
-+
-+ Unless you want a restricted kernel, say N here.
-+
-+endmenu
-diff --git a/Makefile b/Makefile
-index a1d1978bbd03..d636b4d23342 100644
---- a/Makefile
-+++ b/Makefile
-@@ -18,6 +18,10 @@ $(if $(filter __%, $(MAKECMDGOALS)), \
- PHONY := __all
- __all:
-
-+# Set RHEL variables
-+# Use this spot to avoid future merge conflicts
-+include Makefile.rhelver
-+
- # We are using a recursive build, so we need to do a little thinking
- # to get the ordering right.
- #
-diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
-index 7630ba9cb6cc..c2e2991edd11 100644
---- a/arch/arm/Kconfig
-+++ b/arch/arm/Kconfig
-@@ -1382,9 +1382,9 @@ config HIGHMEM
- If unsure, say n.
-
- config HIGHPTE
-- bool "Allocate 2nd-level pagetables from highmem" if EXPERT
-+ bool "Allocate 2nd-level pagetables from highmem"
- depends on HIGHMEM
-- default y
-+ default n
- help
- The VM uses one page of physical memory for each page table.
- For systems with a lot of processes, this can use a lot of
-diff --git a/arch/arm/boot/dts/bcm2711-rpi.dtsi b/arch/arm/boot/dts/bcm2711-rpi.dtsi
-index ca266c5d9f9b..98817a6675b9 100644
---- a/arch/arm/boot/dts/bcm2711-rpi.dtsi
-+++ b/arch/arm/boot/dts/bcm2711-rpi.dtsi
-@@ -69,6 +69,10 @@ blconfig: nvram@0 {
- };
- };
-
-+&v3d {
-+ clocks = <&firmware_clocks 5>;
-+};
-+
- &vchiq {
- interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
- };
-diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi
-index 89af57482bc8..941c4d16791b 100644
---- a/arch/arm/boot/dts/bcm2711.dtsi
-+++ b/arch/arm/boot/dts/bcm2711.dtsi
-@@ -107,12 +107,13 @@ dma: dma@7e007000 {
- };
-
- pm: watchdog@7e100000 {
-- compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
-+ compatible = "brcm,bcm2711-pm", "brcm,bcm2835-pm-wdt";
- #power-domain-cells = <1>;
- #reset-cells = <1>;
- reg = <0x7e100000 0x114>,
- <0x7e00a000 0x24>,
- <0x7ec11000 0x20>;
-+ reg-names = "pm", "asb", "rpivid_asb";
- clocks = <&clocks BCM2835_CLOCK_V3D>,
- <&clocks BCM2835_CLOCK_PERI_IMAGE>,
- <&clocks BCM2835_CLOCK_H264>,
-@@ -601,6 +602,17 @@ genet_mdio: mdio@e14 {
- #size-cells = <0x0>;
- };
- };
-+
-+ v3d: gpu@7ec00000 {
-+ compatible = "brcm,2711-v3d";
-+ reg = <0x0 0x7ec00000 0x4000>,
-+ <0x0 0x7ec04000 0x4000>;
-+ reg-names = "hub", "core0";
-+
-+ power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>;
-+ resets = <&pm BCM2835_RESET_V3D>;
-+ interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
-+ };
- };
- };
-
-diff --git a/arch/arm/boot/dts/bcm2835-common.dtsi b/arch/arm/boot/dts/bcm2835-common.dtsi
-index c25e797b9060..a037d2bc5b11 100644
---- a/arch/arm/boot/dts/bcm2835-common.dtsi
-+++ b/arch/arm/boot/dts/bcm2835-common.dtsi
-@@ -62,6 +62,7 @@ pm: watchdog@7e100000 {
- #reset-cells = <1>;
- reg = <0x7e100000 0x114>,
- <0x7e00a000 0x24>;
-+ reg-names = "pm", "asb";
- clocks = <&clocks BCM2835_CLOCK_V3D>,
- <&clocks BCM2835_CLOCK_PERI_IMAGE>,
- <&clocks BCM2835_CLOCK_H264>,
-diff --git a/arch/arm/configs/bcm2835_defconfig b/arch/arm/configs/bcm2835_defconfig
-index a9ed79b7f871..9270512c14ea 100644
---- a/arch/arm/configs/bcm2835_defconfig
-+++ b/arch/arm/configs/bcm2835_defconfig
-@@ -106,6 +106,7 @@ CONFIG_REGULATOR_GPIO=y
- CONFIG_MEDIA_SUPPORT=y
- CONFIG_MEDIA_CAMERA_SUPPORT=y
- CONFIG_DRM=y
-+CONFIG_DRM_V3D=y
- CONFIG_DRM_VC4=y
- CONFIG_FB_SIMPLE=y
- CONFIG_FRAMEBUFFER_CONSOLE=y
-diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
-index ce9826bce29b..948d18e59cf5 100644
---- a/arch/arm/configs/multi_v7_defconfig
-+++ b/arch/arm/configs/multi_v7_defconfig
-@@ -747,6 +747,7 @@ CONFIG_DRM_IMX_PARALLEL_DISPLAY=m
- CONFIG_DRM_IMX_TVE=m
- CONFIG_DRM_IMX_LDB=m
- CONFIG_DRM_IMX_HDMI=m
-+CONFIG_DRM_V3D=m
- CONFIG_DRM_VC4=m
- CONFIG_DRM_ETNAVIV=m
- CONFIG_DRM_MXSFB=m
-diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
-index cc1e7bb49d38..8bb79230ac24 100644
---- a/arch/arm64/Kconfig
-+++ b/arch/arm64/Kconfig
-@@ -1179,7 +1179,7 @@ endchoice
-
- config ARM64_FORCE_52BIT
- bool "Force 52-bit virtual addresses for userspace"
-- depends on ARM64_VA_BITS_52 && EXPERT
-+ depends on ARM64_VA_BITS_52
- help
- For systems with 52-bit userspace VAs enabled, the kernel will attempt
- to maintain compatibility with older software by providing 48-bit VAs
-@@ -1418,6 +1418,7 @@ config XEN
- config FORCE_MAX_ZONEORDER
- int
- default "14" if ARM64_64K_PAGES
-+ default "13" if (ARCH_THUNDER && !ARM64_64K_PAGES)
- default "12" if ARM64_16K_PAGES
- default "11"
- help
-diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
-index 7d1105343bc2..36aace2b5b28 100644
---- a/arch/arm64/configs/defconfig
-+++ b/arch/arm64/configs/defconfig
-@@ -754,6 +754,7 @@ CONFIG_DRM_CDNS_MHDP8546=m
- CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
- CONFIG_DRM_DW_HDMI_CEC=m
- CONFIG_DRM_IMX_DCSS=m
-+CONFIG_DRM_V3D=m
- CONFIG_DRM_VC4=m
- CONFIG_DRM_ETNAVIV=m
- CONFIG_DRM_HISI_HIBMC=m
-diff --git a/arch/s390/include/asm/ipl.h b/arch/s390/include/asm/ipl.h
-index a405b6bb89fb..50827b341fd7 100644
---- a/arch/s390/include/asm/ipl.h
-+++ b/arch/s390/include/asm/ipl.h
-@@ -128,6 +128,7 @@ int ipl_report_add_component(struct ipl_report *report, struct kexec_buf *kbuf,
- unsigned char flags, unsigned short cert);
- int ipl_report_add_certificate(struct ipl_report *report, void *key,
- unsigned long addr, unsigned long len);
-+bool ipl_get_secureboot(void);
-
- /*
- * DIAG 308 support
-diff --git a/arch/s390/kernel/ipl.c b/arch/s390/kernel/ipl.c
-index 1cc85b8ff42e..b7ee128c67ce 100644
---- a/arch/s390/kernel/ipl.c
-+++ b/arch/s390/kernel/ipl.c
-@@ -2216,3 +2216,8 @@ int ipl_report_free(struct ipl_report *report)
- }
-
- #endif
-+
-+bool ipl_get_secureboot(void)
-+{
-+ return !!ipl_secure_flag;
-+}
-diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
-index 3e0361db963e..9b59492fc2f4 100644
---- a/arch/s390/kernel/setup.c
-+++ b/arch/s390/kernel/setup.c
-@@ -49,6 +49,7 @@
- #include <linux/memory.h>
- #include <linux/compat.h>
- #include <linux/start_kernel.h>
-+#include <linux/security.h>
- #include <linux/hugetlb.h>
- #include <linux/kmemleak.h>
-
-@@ -971,6 +972,9 @@ void __init setup_arch(char **cmdline_p)
-
- log_component_list();
-
-+ if (ipl_get_secureboot())
-+ security_lock_kernel_down("Secure IPL mode", LOCKDOWN_INTEGRITY_MAX);
-+
- /* Have one command line that is parsed and saved in /proc/cmdline */
- /* boot_command_line has been already set up in early.c */
- *cmdline_p = boot_command_line;
-diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
-index bd6c6fd373ae..3333b08a778d 100644
---- a/arch/x86/kernel/setup.c
-+++ b/arch/x86/kernel/setup.c
-@@ -20,6 +20,7 @@
- #include <linux/root_dev.h>
- #include <linux/hugetlb.h>
- #include <linux/tboot.h>
-+#include <linux/security.h>
- #include <linux/usb/xhci-dbgp.h>
- #include <linux/static_call.h>
- #include <linux/swiotlb.h>
-@@ -963,6 +964,13 @@ void __init setup_arch(char **cmdline_p)
- if (efi_enabled(EFI_BOOT))
- efi_init();
-
-+ efi_set_secure_boot(boot_params.secure_boot);
-+
-+#ifdef CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT
-+ if (efi_enabled(EFI_SECURE_BOOT))
-+ security_lock_kernel_down("EFI Secure Boot mode", LOCKDOWN_INTEGRITY_MAX);
-+#endif
-+
- dmi_setup();
-
- /*
-@@ -1132,19 +1140,7 @@ void __init setup_arch(char **cmdline_p)
- /* Allocate bigger log buffer */
- setup_log_buf(1);
-
-- if (efi_enabled(EFI_BOOT)) {
-- switch (boot_params.secure_boot) {
-- case efi_secureboot_mode_disabled:
-- pr_info("Secure boot disabled\n");
-- break;
-- case efi_secureboot_mode_enabled:
-- pr_info("Secure boot enabled\n");
-- break;
-- default:
-- pr_info("Secure boot could not be determined\n");
-- break;
-- }
-- }
-+ efi_set_secure_boot(boot_params.secure_boot);
-
- reserve_initrd();
-
-diff --git a/drivers/acpi/apei/hest.c b/drivers/acpi/apei/hest.c
-index 6aef1ee5e1bd..8f146b1b4972 100644
---- a/drivers/acpi/apei/hest.c
-+++ b/drivers/acpi/apei/hest.c
-@@ -96,6 +96,14 @@ static int apei_hest_parse(apei_hest_func_t func, void *data)
- if (hest_disable || !hest_tab)
- return -EINVAL;
-
-+#ifdef CONFIG_ARM64
-+ /* Ignore broken firmware */
-+ if (!strncmp(hest_tab->header.oem_id, "HPE ", 6) &&
-+ !strncmp(hest_tab->header.oem_table_id, "ProLiant", 8) &&
-+ MIDR_IMPLEMENTOR(read_cpuid_id()) == ARM_CPU_IMP_APM)
-+ return -EINVAL;
-+#endif
-+
- hest_hdr = (struct acpi_hest_header *)(hest_tab + 1);
- for (i = 0; i < hest_tab->error_source_count; i++) {
- len = hest_esrc_len(hest_hdr);
-diff --git a/drivers/acpi/irq.c b/drivers/acpi/irq.c
-index c68e694fca26..146cba5ae5bc 100644
---- a/drivers/acpi/irq.c
-+++ b/drivers/acpi/irq.c
-@@ -130,6 +130,7 @@ struct acpi_irq_parse_one_ctx {
- unsigned int index;
- unsigned long *res_flags;
- struct irq_fwspec *fwspec;
-+ bool skip_producer_check;
- };
-
- /**
-@@ -201,7 +202,8 @@ static acpi_status acpi_irq_parse_one_cb(struct acpi_resource *ares,
- return AE_CTRL_TERMINATE;
- case ACPI_RESOURCE_TYPE_EXTENDED_IRQ:
- eirq = &ares->data.extended_irq;
-- if (eirq->producer_consumer == ACPI_PRODUCER)
-+ if (!ctx->skip_producer_check &&
-+ eirq->producer_consumer == ACPI_PRODUCER)
- return AE_OK;
- if (ctx->index >= eirq->interrupt_count) {
- ctx->index -= eirq->interrupt_count;
-@@ -236,8 +238,19 @@ static acpi_status acpi_irq_parse_one_cb(struct acpi_resource *ares,
- static int acpi_irq_parse_one(acpi_handle handle, unsigned int index,
- struct irq_fwspec *fwspec, unsigned long *flags)
- {
-- struct acpi_irq_parse_one_ctx ctx = { -EINVAL, index, flags, fwspec };
-+ struct acpi_irq_parse_one_ctx ctx = { -EINVAL, index, flags, fwspec, false };
-
-+ /*
-+ * Firmware on arm64-based HPE m400 platform incorrectly marks
-+ * its UART interrupt as ACPI_PRODUCER rather than ACPI_CONSUMER.
-+ * Don't do the producer/consumer check for that device.
-+ */
-+ if (IS_ENABLED(CONFIG_ARM64)) {
-+ struct acpi_device *adev = acpi_bus_get_acpi_device(handle);
-+
-+ if (adev && !strcmp(acpi_device_hid(adev), "APMC0D08"))
-+ ctx.skip_producer_check = true;
-+ }
- acpi_walk_resources(handle, METHOD_NAME__CRS, acpi_irq_parse_one_cb, &ctx);
- return ctx.rc;
- }
-diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
-index 762b61f67e6c..3581d4898dc4 100644
---- a/drivers/acpi/scan.c
-+++ b/drivers/acpi/scan.c
-@@ -1766,6 +1766,15 @@ static bool acpi_device_enumeration_by_parent(struct acpi_device *device)
- if (!acpi_match_device_ids(device, ignore_serial_bus_ids))
- return false;
-
-+ /*
-+ * Firmware on some arm64 X-Gene platforms will make the UART
-+ * device appear as both a UART and a slave of that UART. Just
-+ * bail out here for X-Gene UARTs.
-+ */
-+ if (IS_ENABLED(CONFIG_ARM64) &&
-+ !strcmp(acpi_device_hid(device), "APMC0D08"))
-+ return false;
-+
- INIT_LIST_HEAD(&resource_list);
- acpi_dev_get_resources(device, &resource_list,
- acpi_check_serial_bus_slave,
-diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
-index cf8c7fd59ada..28a8189be64f 100644
---- a/drivers/ata/libahci.c
-+++ b/drivers/ata/libahci.c
-@@ -690,6 +690,24 @@ int ahci_stop_engine(struct ata_port *ap)
- tmp &= ~PORT_CMD_START;
- writel(tmp, port_mmio + PORT_CMD);
-
-+#ifdef CONFIG_ARM64
-+ /* Rev Ax of Cavium CN99XX needs a hack for port stop */
-+ if (dev_is_pci(ap->host->dev) &&
-+ to_pci_dev(ap->host->dev)->vendor == 0x14e4 &&
-+ to_pci_dev(ap->host->dev)->device == 0x9027 &&
-+ midr_is_cpu_model_range(read_cpuid_id(),
-+ MIDR_CPU_MODEL(ARM_CPU_IMP_BRCM, BRCM_CPU_PART_VULCAN),
-+ MIDR_CPU_VAR_REV(0, 0),
-+ MIDR_CPU_VAR_REV(0, MIDR_REVISION_MASK))) {
-+ tmp = readl(hpriv->mmio + 0x8000);
-+ udelay(100);
-+ writel(tmp | (1 << 26), hpriv->mmio + 0x8000);
-+ udelay(100);
-+ writel(tmp & ~(1 << 26), hpriv->mmio + 0x8000);
-+ dev_warn(ap->host->dev, "CN99XX SATA reset workaround applied\n");
-+ }
-+#endif
-+
- /* wait for engine to stop. This could be as long as 500 msec */
- tmp = ata_wait_register(ap, port_mmio + PORT_CMD,
- PORT_CMD_LIST_ON, PORT_CMD_LIST_ON, 1, 500);
-diff --git a/drivers/char/ipmi/ipmi_dmi.c b/drivers/char/ipmi/ipmi_dmi.c
-index bbf7029e224b..cf7faa970dd6 100644
---- a/drivers/char/ipmi/ipmi_dmi.c
-+++ b/drivers/char/ipmi/ipmi_dmi.c
-@@ -215,6 +215,21 @@ static int __init scan_for_dmi_ipmi(void)
- {
- const struct dmi_device *dev = NULL;
-
-+#ifdef CONFIG_ARM64
-+ /* RHEL-only
-+ * If this is ARM-based HPE m400, return now, because that platform
-+ * reports the host-side ipmi address as intel port-io space, which
-+ * does not exist in the ARM architecture.
-+ */
-+ const char *dmistr = dmi_get_system_info(DMI_PRODUCT_NAME);
-+
-+ if (dmistr && (strcmp("ProLiant m400 Server", dmistr) == 0)) {
-+ pr_debug("%s does not support host ipmi\n", dmistr);
-+ return 0;
-+ }
-+ /* END RHEL-only */
-+#endif
-+
- while ((dev = dmi_find_device(DMI_DEV_TYPE_IPMI, NULL, dev)))
- dmi_decode_ipmi((const struct dmi_header *) dev->device_data);
-
-diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
-index 703433493c85..6b1b102b9b7d 100644
---- a/drivers/char/ipmi/ipmi_msghandler.c
-+++ b/drivers/char/ipmi/ipmi_msghandler.c
-@@ -35,6 +35,7 @@
- #include <linux/uuid.h>
- #include <linux/nospec.h>
- #include <linux/vmalloc.h>
-+#include <linux/dmi.h>
- #include <linux/delay.h>
-
- #define IPMI_DRIVER_VERSION "39.2"
-@@ -5516,8 +5517,21 @@ static int __init ipmi_init_msghandler_mod(void)
- {
- int rv;
-
-- pr_info("version " IPMI_DRIVER_VERSION "\n");
-+#ifdef CONFIG_ARM64
-+ /* RHEL-only
-+ * If this is ARM-based HPE m400, return now, because that platform
-+ * reports the host-side ipmi address as intel port-io space, which
-+ * does not exist in the ARM architecture.
-+ */
-+ const char *dmistr = dmi_get_system_info(DMI_PRODUCT_NAME);
-
-+ if (dmistr && (strcmp("ProLiant m400 Server", dmistr) == 0)) {
-+ pr_debug("%s does not support host ipmi\n", dmistr);
-+ return -ENOSYS;
-+ }
-+ /* END RHEL-only */
-+#endif
-+ pr_info("version " IPMI_DRIVER_VERSION "\n");
- mutex_lock(&ipmi_interfaces_mutex);
- rv = ipmi_register_driver();
- mutex_unlock(&ipmi_interfaces_mutex);
-diff --git a/drivers/firmware/efi/Makefile b/drivers/firmware/efi/Makefile
-index c02ff25dd477..d860f8eb9a81 100644
---- a/drivers/firmware/efi/Makefile
-+++ b/drivers/firmware/efi/Makefile
-@@ -28,6 +28,7 @@ obj-$(CONFIG_EFI_FAKE_MEMMAP) += fake_map.o
- obj-$(CONFIG_EFI_BOOTLOADER_CONTROL) += efibc.o
- obj-$(CONFIG_EFI_TEST) += test/
- obj-$(CONFIG_EFI_DEV_PATH_PARSER) += dev-path-parser.o
-+obj-$(CONFIG_EFI) += secureboot.o
- obj-$(CONFIG_APPLE_PROPERTIES) += apple-properties.o
- obj-$(CONFIG_EFI_RCI2_TABLE) += rci2-table.o
- obj-$(CONFIG_EFI_EMBEDDED_FIRMWARE) += embedded-firmware.o
-diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
-index 860534bcfdac..96548e72f5df 100644
---- a/drivers/firmware/efi/efi.c
-+++ b/drivers/firmware/efi/efi.c
-@@ -31,6 +31,7 @@
- #include <linux/ucs2_string.h>
- #include <linux/memblock.h>
- #include <linux/security.h>
-+#include <linux/bsearch.h>
-
- #include <asm/early_ioremap.h>
-
-@@ -862,40 +863,101 @@ int efi_mem_type(unsigned long phys_addr)
- }
- #endif
-
-+struct efi_error_code {
-+ efi_status_t status;
-+ int errno;
-+ const char *description;
-+};
-+
-+static const struct efi_error_code efi_error_codes[] = {
-+ { EFI_SUCCESS, 0, "Success"},
-+#if 0
-+ { EFI_LOAD_ERROR, -EPICK_AN_ERRNO, "Load Error"},
-+#endif
-+ { EFI_INVALID_PARAMETER, -EINVAL, "Invalid Parameter"},
-+ { EFI_UNSUPPORTED, -ENOSYS, "Unsupported"},
-+ { EFI_BAD_BUFFER_SIZE, -ENOSPC, "Bad Buffer Size"},
-+ { EFI_BUFFER_TOO_SMALL, -ENOSPC, "Buffer Too Small"},
-+ { EFI_NOT_READY, -EAGAIN, "Not Ready"},
-+ { EFI_DEVICE_ERROR, -EIO, "Device Error"},
-+ { EFI_WRITE_PROTECTED, -EROFS, "Write Protected"},
-+ { EFI_OUT_OF_RESOURCES, -ENOMEM, "Out of Resources"},
-+#if 0
-+ { EFI_VOLUME_CORRUPTED, -EPICK_AN_ERRNO, "Volume Corrupt"},
-+ { EFI_VOLUME_FULL, -EPICK_AN_ERRNO, "Volume Full"},
-+ { EFI_NO_MEDIA, -EPICK_AN_ERRNO, "No Media"},
-+ { EFI_MEDIA_CHANGED, -EPICK_AN_ERRNO, "Media changed"},
-+#endif
-+ { EFI_NOT_FOUND, -ENOENT, "Not Found"},
-+#if 0
-+ { EFI_ACCESS_DENIED, -EPICK_AN_ERRNO, "Access Denied"},
-+ { EFI_NO_RESPONSE, -EPICK_AN_ERRNO, "No Response"},
-+ { EFI_NO_MAPPING, -EPICK_AN_ERRNO, "No mapping"},
-+ { EFI_TIMEOUT, -EPICK_AN_ERRNO, "Time out"},
-+ { EFI_NOT_STARTED, -EPICK_AN_ERRNO, "Not started"},
-+ { EFI_ALREADY_STARTED, -EPICK_AN_ERRNO, "Already started"},
-+#endif
-+ { EFI_ABORTED, -EINTR, "Aborted"},
-+#if 0
-+ { EFI_ICMP_ERROR, -EPICK_AN_ERRNO, "ICMP Error"},
-+ { EFI_TFTP_ERROR, -EPICK_AN_ERRNO, "TFTP Error"},
-+ { EFI_PROTOCOL_ERROR, -EPICK_AN_ERRNO, "Protocol Error"},
-+ { EFI_INCOMPATIBLE_VERSION, -EPICK_AN_ERRNO, "Incompatible Version"},
-+#endif
-+ { EFI_SECURITY_VIOLATION, -EACCES, "Security Policy Violation"},
-+#if 0
-+ { EFI_CRC_ERROR, -EPICK_AN_ERRNO, "CRC Error"},
-+ { EFI_END_OF_MEDIA, -EPICK_AN_ERRNO, "End of Media"},
-+ { EFI_END_OF_FILE, -EPICK_AN_ERRNO, "End of File"},
-+ { EFI_INVALID_LANGUAGE, -EPICK_AN_ERRNO, "Invalid Languages"},
-+ { EFI_COMPROMISED_DATA, -EPICK_AN_ERRNO, "Compromised Data"},
-+
-+ // warnings
-+ { EFI_WARN_UNKOWN_GLYPH, -EPICK_AN_ERRNO, "Warning Unknown Glyph"},
-+ { EFI_WARN_DELETE_FAILURE, -EPICK_AN_ERRNO, "Warning Delete Failure"},
-+ { EFI_WARN_WRITE_FAILURE, -EPICK_AN_ERRNO, "Warning Write Failure"},
-+ { EFI_WARN_BUFFER_TOO_SMALL, -EPICK_AN_ERRNO, "Warning Buffer Too Small"},
-+#endif
-+};
-+
-+static int
-+efi_status_cmp_bsearch(const void *key, const void *item)
-+{
-+ u64 status = (u64)(uintptr_t)key;
-+ struct efi_error_code *code = (struct efi_error_code *)item;
-+
-+ if (status < code->status)
-+ return -1;
-+ if (status > code->status)
-+ return 1;
-+ return 0;
-+}
-+
- int efi_status_to_err(efi_status_t status)
- {
-- int err;
--
-- switch (status) {
-- case EFI_SUCCESS:
-- err = 0;
-- break;
-- case EFI_INVALID_PARAMETER:
-- err = -EINVAL;
-- break;
-- case EFI_OUT_OF_RESOURCES:
-- err = -ENOSPC;
-- break;
-- case EFI_DEVICE_ERROR:
-- err = -EIO;
-- break;
-- case EFI_WRITE_PROTECTED:
-- err = -EROFS;
-- break;
-- case EFI_SECURITY_VIOLATION:
-- err = -EACCES;
-- break;
-- case EFI_NOT_FOUND:
-- err = -ENOENT;
-- break;
-- case EFI_ABORTED:
-- err = -EINTR;
-- break;
-- default:
-- err = -EINVAL;
-- }
-+ struct efi_error_code *found;
-+ size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code);
-
-- return err;
-+ found = bsearch((void *)(uintptr_t)status, efi_error_codes,
-+ sizeof(struct efi_error_code), num,
-+ efi_status_cmp_bsearch);
-+ if (!found)
-+ return -EINVAL;
-+ return found->errno;
-+}
-+
-+const char *
-+efi_status_to_str(efi_status_t status)
-+{
-+ struct efi_error_code *found;
-+ size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code);
-+
-+ found = bsearch((void *)(uintptr_t)status, efi_error_codes,
-+ sizeof(struct efi_error_code), num,
-+ efi_status_cmp_bsearch);
-+ if (!found)
-+ return "Unknown error code";
-+ return found->description;
- }
-
- static DEFINE_SPINLOCK(efi_mem_reserve_persistent_lock);
-diff --git a/drivers/firmware/efi/secureboot.c b/drivers/firmware/efi/secureboot.c
-new file mode 100644
-index 000000000000..de0a3714a5d4
---- /dev/null
-+++ b/drivers/firmware/efi/secureboot.c
-@@ -0,0 +1,38 @@
-+/* Core kernel secure boot support.
-+ *
-+ * Copyright (C) 2017 Red Hat, Inc. All Rights Reserved.
-+ * Written by David Howells (dhowells@redhat.com)
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public Licence
-+ * as published by the Free Software Foundation; either version
-+ * 2 of the Licence, or (at your option) any later version.
-+ */
-+
-+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
-+
-+#include <linux/efi.h>
-+#include <linux/kernel.h>
-+#include <linux/printk.h>
-+
-+/*
-+ * Decide what to do when UEFI secure boot mode is enabled.
-+ */
-+void __init efi_set_secure_boot(enum efi_secureboot_mode mode)
-+{
-+ if (efi_enabled(EFI_BOOT)) {
-+ switch (mode) {
-+ case efi_secureboot_mode_disabled:
-+ pr_info("Secure boot disabled\n");
-+ break;
-+ case efi_secureboot_mode_enabled:
-+ set_bit(EFI_SECURE_BOOT, &efi.flags);
-+ pr_info("Secure boot enabled\n");
-+ break;
-+ default:
-+ pr_warn("Secure boot could not be determined (mode %u)\n",
-+ mode);
-+ break;
-+ }
-+ }
-+}
-diff --git a/drivers/firmware/sysfb.c b/drivers/firmware/sysfb.c
-index 1f276f108cc9..7039ad9bdf7f 100644
---- a/drivers/firmware/sysfb.c
-+++ b/drivers/firmware/sysfb.c
-@@ -34,6 +34,22 @@
- #include <linux/screen_info.h>
- #include <linux/sysfb.h>
-
-+static int skip_simpledrm;
-+
-+static int __init simpledrm_disable(char *opt)
-+{
-+ if (!opt)
-+ return -EINVAL;
-+
-+ get_option(&opt, &skip_simpledrm);
-+
-+ if (skip_simpledrm)
-+ pr_info("The simpledrm driver will not be probed\n");
-+
-+ return 0;
-+}
-+early_param("nvidia-drm.modeset", simpledrm_disable);
-+
- static struct platform_device *pd;
- static DEFINE_MUTEX(disable_lock);
- static bool disabled;
-@@ -83,7 +99,7 @@ static __init int sysfb_init(void)
-
- /* try to create a simple-framebuffer device */
- compatible = sysfb_parse_mode(si, &mode);
-- if (compatible) {
-+ if (compatible && !skip_simpledrm) {
- pd = sysfb_create_simplefb(si, &mode);
- if (!IS_ERR(pd))
- goto unlock_mutex;
-diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
-index 51fcf1298023..7f1097947731 100644
---- a/drivers/gpu/drm/drm_ioctl.c
-+++ b/drivers/gpu/drm/drm_ioctl.c
-@@ -472,7 +472,13 @@ EXPORT_SYMBOL(drm_invalid_op);
- */
- static int drm_copy_field(char __user *buf, size_t *buf_len, const char *value)
- {
-- int len;
-+ size_t len;
-+
-+ /* don't attempt to copy a NULL pointer */
-+ if (WARN_ONCE(!value, "BUG: the value to copy was not set!")) {
-+ *buf_len = 0;
-+ return 0;
-+ }
-
- /* don't overflow userbuf */
- len = strlen(value);
-diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c
-index 91caf4523b34..84c086610235 100644
---- a/drivers/gpu/drm/i915/display/intel_bios.c
-+++ b/drivers/gpu/drm/i915/display/intel_bios.c
-@@ -332,18 +332,6 @@ static bool fixup_lfp_data_ptrs(const void *bdb, void *ptrs_block)
- return validate_lfp_data_ptrs(bdb, ptrs);
- }
-
--static const void *find_fp_timing_terminator(const u8 *data, int size)
--{
-- int i;
--
-- for (i = 0; i < size - 1; i++) {
-- if (data[i] == 0xff && data[i+1] == 0xff)
-- return &data[i];
-- }
--
-- return NULL;
--}
--
- static int make_lfp_data_ptr(struct lvds_lfp_data_ptr_table *table,
- int table_size, int total_size)
- {
-@@ -367,11 +355,22 @@ static void next_lfp_data_ptr(struct lvds_lfp_data_ptr_table *next,
- static void *generate_lfp_data_ptrs(struct drm_i915_private *i915,
- const void *bdb)
- {
-- int i, size, table_size, block_size, offset;
-- const void *t0, *t1, *block;
-+ int i, size, table_size, block_size, offset, fp_timing_size;
- struct bdb_lvds_lfp_data_ptrs *ptrs;
-+ const void *block;
- void *ptrs_block;
-
-+ /*
-+ * The hardcoded fp_timing_size is only valid for
-+ * modernish VBTs. All older VBTs definitely should
-+ * include block 41 and thus we don't need to
-+ * generate one.
-+ */
-+ if (i915->vbt.version < 155)
-+ return NULL;
-+
-+ fp_timing_size = 38;
-+
- block = find_raw_section(bdb, BDB_LVDS_LFP_DATA);
- if (!block)
- return NULL;
-@@ -380,17 +379,8 @@ static void *generate_lfp_data_ptrs(struct drm_i915_private *i915,
-
- block_size = get_blocksize(block);
-
-- size = block_size;
-- t0 = find_fp_timing_terminator(block, size);
-- if (!t0)
-- return NULL;
--
-- size -= t0 - block - 2;
-- t1 = find_fp_timing_terminator(t0 + 2, size);
-- if (!t1)
-- return NULL;
--
-- size = t1 - t0;
-+ size = fp_timing_size + sizeof(struct lvds_dvo_timing) +
-+ sizeof(struct lvds_pnp_id);
- if (size * 16 > block_size)
- return NULL;
-
-@@ -408,7 +398,7 @@ static void *generate_lfp_data_ptrs(struct drm_i915_private *i915,
- table_size = sizeof(struct lvds_dvo_timing);
- size = make_lfp_data_ptr(&ptrs->ptr[0].dvo_timing, table_size, size);
-
-- table_size = t0 - block + 2;
-+ table_size = fp_timing_size;
- size = make_lfp_data_ptr(&ptrs->ptr[0].fp_timing, table_size, size);
-
- if (ptrs->ptr[0].fp_timing.table_size)
-@@ -423,14 +413,14 @@ static void *generate_lfp_data_ptrs(struct drm_i915_private *i915,
- return NULL;
- }
-
-- size = t1 - t0;
-+ size = fp_timing_size + sizeof(struct lvds_dvo_timing) +
-+ sizeof(struct lvds_pnp_id);
- for (i = 1; i < 16; i++) {
- next_lfp_data_ptr(&ptrs->ptr[i].fp_timing, &ptrs->ptr[i-1].fp_timing, size);
- next_lfp_data_ptr(&ptrs->ptr[i].dvo_timing, &ptrs->ptr[i-1].dvo_timing, size);
- next_lfp_data_ptr(&ptrs->ptr[i].panel_pnp_id, &ptrs->ptr[i-1].panel_pnp_id, size);
- }
-
-- size = t1 - t0;
- table_size = sizeof(struct lvds_lfp_panel_name);
-
- if (16 * (size + table_size) <= block_size) {
-diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
-index 06db407e2749..36356893c7ca 100644
---- a/drivers/gpu/drm/i915/display/intel_psr.c
-+++ b/drivers/gpu/drm/i915/display/intel_psr.c
-@@ -1618,8 +1618,12 @@ static void psr2_man_trk_ctl_calc(struct intel_crtc_state *crtc_state,
- }
-
- static void clip_area_update(struct drm_rect *overlap_damage_area,
-- struct drm_rect *damage_area)
-+ struct drm_rect *damage_area,
-+ struct drm_rect *pipe_src)
- {
-+ if (!drm_rect_intersect(damage_area, pipe_src))
-+ return;
-+
- if (overlap_damage_area->y1 == -1) {
- overlap_damage_area->y1 = damage_area->y1;
- overlap_damage_area->y2 = damage_area->y2;
-@@ -1685,6 +1689,7 @@ static bool psr2_sel_fetch_pipe_state_supported(const struct intel_crtc_state *c
- int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
- struct intel_crtc *crtc)
- {
-+ struct drm_i915_private *dev_priv = to_i915(state->base.dev);
- struct intel_crtc_state *crtc_state = intel_atomic_get_new_crtc_state(state, crtc);
- struct drm_rect pipe_clip = { .x1 = 0, .y1 = -1, .x2 = INT_MAX, .y2 = -1 };
- struct intel_plane_state *new_plane_state, *old_plane_state;
-@@ -1708,7 +1713,8 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
- */
- for_each_oldnew_intel_plane_in_state(state, plane, old_plane_state,
- new_plane_state, i) {
-- struct drm_rect src, damaged_area = { .y1 = -1 };
-+ struct drm_rect src, damaged_area = { .x1 = 0, .y1 = -1,
-+ .x2 = INT_MAX };
- struct drm_atomic_helper_damage_iter iter;
- struct drm_rect clip;
-
-@@ -1735,20 +1741,23 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
- if (old_plane_state->uapi.visible) {
- damaged_area.y1 = old_plane_state->uapi.dst.y1;
- damaged_area.y2 = old_plane_state->uapi.dst.y2;
-- clip_area_update(&pipe_clip, &damaged_area);
-+ clip_area_update(&pipe_clip, &damaged_area,
-+ &crtc_state->pipe_src);
- }
-
- if (new_plane_state->uapi.visible) {
- damaged_area.y1 = new_plane_state->uapi.dst.y1;
- damaged_area.y2 = new_plane_state->uapi.dst.y2;
-- clip_area_update(&pipe_clip, &damaged_area);
-+ clip_area_update(&pipe_clip, &damaged_area,
-+ &crtc_state->pipe_src);
- }
- continue;
- } else if (new_plane_state->uapi.alpha != old_plane_state->uapi.alpha) {
- /* If alpha changed mark the whole plane area as damaged */
- damaged_area.y1 = new_plane_state->uapi.dst.y1;
- damaged_area.y2 = new_plane_state->uapi.dst.y2;
-- clip_area_update(&pipe_clip, &damaged_area);
-+ clip_area_update(&pipe_clip, &damaged_area,
-+ &crtc_state->pipe_src);
- continue;
- }
-
-@@ -1759,7 +1768,8 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
- &new_plane_state->uapi);
- drm_atomic_for_each_plane_damage(&iter, &clip) {
- if (drm_rect_intersect(&clip, &src))
-- clip_area_update(&damaged_area, &clip);
-+ clip_area_update(&damaged_area, &clip,
-+ &crtc_state->pipe_src);
- }
-
- if (damaged_area.y1 == -1)
-@@ -1767,7 +1777,20 @@ int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
-
- damaged_area.y1 += new_plane_state->uapi.dst.y1 - src.y1;
- damaged_area.y2 += new_plane_state->uapi.dst.y1 - src.y1;
-- clip_area_update(&pipe_clip, &damaged_area);
-+ clip_area_update(&pipe_clip, &damaged_area, &crtc_state->pipe_src);
-+ }
-+
-+ /*
-+ * TODO: For now we are just using full update in case
-+ * selective fetch area calculation fails. To optimize this we
-+ * should identify cases where this happens and fix the area
-+ * calculation for those.
-+ */
-+ if (pipe_clip.y1 == -1) {
-+ drm_info_once(&dev_priv->drm,
-+ "Selective fetch area calculation failed in pipe %c\n",
-+ pipe_name(crtc->pipe));
-+ full_update = true;
- }
-
- if (full_update)
-diff --git a/drivers/gpu/drm/v3d/Kconfig b/drivers/gpu/drm/v3d/Kconfig
-index e973ec487484..ce62c5908e1d 100644
---- a/drivers/gpu/drm/v3d/Kconfig
-+++ b/drivers/gpu/drm/v3d/Kconfig
-@@ -1,7 +1,7 @@
- # SPDX-License-Identifier: GPL-2.0-only
- config DRM_V3D
- tristate "Broadcom V3D 3.x and newer"
-- depends on ARCH_BCM || ARCH_BRCMSTB || COMPILE_TEST
-+ depends on ARCH_BCM || ARCH_BRCMSTB || ARCH_BCM2835 || COMPILE_TEST
- depends on DRM
- depends on COMMON_CLK
- depends on MMU
-@@ -9,4 +9,5 @@ config DRM_V3D
- select DRM_GEM_SHMEM_HELPER
- help
- Choose this option if you have a system that has a Broadcom
-- V3D 3.x or newer GPU, such as BCM7268.
-+ V3D 3.x or newer GPUs. SoCs supported include the BCM2711,
-+ BCM7268 and BCM7278.
-diff --git a/drivers/gpu/drm/v3d/v3d_debugfs.c b/drivers/gpu/drm/v3d/v3d_debugfs.c
-index 29fd13109e43..efbde124c296 100644
---- a/drivers/gpu/drm/v3d/v3d_debugfs.c
-+++ b/drivers/gpu/drm/v3d/v3d_debugfs.c
-@@ -4,7 +4,6 @@
- #include <linux/circ_buf.h>
- #include <linux/ctype.h>
- #include <linux/debugfs.h>
--#include <linux/pm_runtime.h>
- #include <linux/seq_file.h>
- #include <linux/string_helpers.h>
-
-@@ -131,11 +130,7 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
- struct drm_device *dev = node->minor->dev;
- struct v3d_dev *v3d = to_v3d_dev(dev);
- u32 ident0, ident1, ident2, ident3, cores;
-- int ret, core;
--
-- ret = pm_runtime_get_sync(v3d->drm.dev);
-- if (ret < 0)
-- return ret;
-+ int core;
-
- ident0 = V3D_READ(V3D_HUB_IDENT0);
- ident1 = V3D_READ(V3D_HUB_IDENT1);
-@@ -188,9 +183,6 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
- (misccfg & V3D_MISCCFG_OVRTMUOUT) != 0);
- }
-
-- pm_runtime_mark_last_busy(v3d->drm.dev);
-- pm_runtime_put_autosuspend(v3d->drm.dev);
--
- return 0;
- }
-
-@@ -218,11 +210,6 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
- uint32_t cycles;
- int core = 0;
- int measure_ms = 1000;
-- int ret;
--
-- ret = pm_runtime_get_sync(v3d->drm.dev);
-- if (ret < 0)
-- return ret;
-
- if (v3d->ver >= 40) {
- V3D_CORE_WRITE(core, V3D_V4_PCTR_0_SRC_0_3,
-@@ -246,9 +233,6 @@ static int v3d_measure_clock(struct seq_file *m, void *unused)
- cycles / (measure_ms * 1000),
- (cycles / (measure_ms * 100)) % 10);
-
-- pm_runtime_mark_last_busy(v3d->drm.dev);
-- pm_runtime_put_autosuspend(v3d->drm.dev);
--
- return 0;
- }
-
-diff --git a/drivers/gpu/drm/v3d/v3d_drv.c b/drivers/gpu/drm/v3d/v3d_drv.c
-index 1afcd54fbbd5..8c7f910daa28 100644
---- a/drivers/gpu/drm/v3d/v3d_drv.c
-+++ b/drivers/gpu/drm/v3d/v3d_drv.c
-@@ -19,7 +19,6 @@
- #include <linux/module.h>
- #include <linux/of_platform.h>
- #include <linux/platform_device.h>
--#include <linux/pm_runtime.h>
- #include <linux/reset.h>
-
- #include <drm/drm_drv.h>
-@@ -43,7 +42,6 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
- {
- struct v3d_dev *v3d = to_v3d_dev(dev);
- struct drm_v3d_get_param *args = data;
-- int ret;
- static const u32 reg_map[] = {
- [DRM_V3D_PARAM_V3D_UIFCFG] = V3D_HUB_UIFCFG,
- [DRM_V3D_PARAM_V3D_HUB_IDENT1] = V3D_HUB_IDENT1,
-@@ -69,17 +67,12 @@ static int v3d_get_param_ioctl(struct drm_device *dev, void *data,
- if (args->value != 0)
- return -EINVAL;
-
-- ret = pm_runtime_get_sync(v3d->drm.dev);
-- if (ret < 0)
-- return ret;
- if (args->param >= DRM_V3D_PARAM_V3D_CORE0_IDENT0 &&
- args->param <= DRM_V3D_PARAM_V3D_CORE0_IDENT2) {
- args->value = V3D_CORE_READ(0, offset);
- } else {
- args->value = V3D_READ(offset);
- }
-- pm_runtime_mark_last_busy(v3d->drm.dev);
-- pm_runtime_put_autosuspend(v3d->drm.dev);
- return 0;
- }
-
-@@ -198,6 +191,7 @@ static const struct drm_driver v3d_drm_driver = {
- };
-
- static const struct of_device_id v3d_of_match[] = {
-+ { .compatible = "brcm,2711-v3d" },
- { .compatible = "brcm,7268-v3d" },
- { .compatible = "brcm,7278-v3d" },
- {},
-@@ -280,10 +274,6 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
- return -ENOMEM;
- }
-
-- pm_runtime_use_autosuspend(dev);
-- pm_runtime_set_autosuspend_delay(dev, 50);
-- pm_runtime_enable(dev);
--
- ret = v3d_gem_init(drm);
- if (ret)
- goto dma_free;
-diff --git a/drivers/gpu/drm/v3d/v3d_gem.c b/drivers/gpu/drm/v3d/v3d_gem.c
-index 2352e9640922..725a252e837b 100644
---- a/drivers/gpu/drm/v3d/v3d_gem.c
-+++ b/drivers/gpu/drm/v3d/v3d_gem.c
-@@ -6,7 +6,6 @@
- #include <linux/io.h>
- #include <linux/module.h>
- #include <linux/platform_device.h>
--#include <linux/pm_runtime.h>
- #include <linux/reset.h>
- #include <linux/sched/signal.h>
- #include <linux/uaccess.h>
-@@ -372,9 +371,6 @@ v3d_job_free(struct kref *ref)
- dma_fence_put(job->irq_fence);
- dma_fence_put(job->done_fence);
-
-- pm_runtime_mark_last_busy(job->v3d->drm.dev);
-- pm_runtime_put_autosuspend(job->v3d->drm.dev);
--
- if (job->perfmon)
- v3d_perfmon_put(job->perfmon);
-
-@@ -476,14 +472,10 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
- job->v3d = v3d;
- job->free = free;
-
-- ret = pm_runtime_get_sync(v3d->drm.dev);
-- if (ret < 0)
-- goto fail;
--
- ret = drm_sched_job_init(&job->base, &v3d_priv->sched_entity[queue],
- v3d_priv);
- if (ret)
-- goto fail_job;
-+ goto fail;
-
- if (has_multisync) {
- if (se->in_sync_count && se->wait_stage == queue) {
-@@ -514,8 +506,6 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv,
-
- fail_deps:
- drm_sched_job_cleanup(&job->base);
--fail_job:
-- pm_runtime_put_autosuspend(v3d->drm.dev);
- fail:
- kfree(*container);
- *container = NULL;
-diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
-index 199bc398817f..eb3aaaca2b80 100644
---- a/drivers/gpu/drm/vc4/vc4_hdmi.c
-+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -2889,12 +2889,37 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
- struct vc4_hdmi *vc4_hdmi = dev_get_drvdata(dev);
- unsigned long __maybe_unused flags;
- u32 __maybe_unused value;
-+ unsigned long rate;
- int ret;
-
-+ /*
-+ * The HSM clock is in the HDMI power domain, so we need to set
-+ * its frequency while the power domain is active so that it
-+ * keeps its rate.
-+ */
-+ ret = clk_set_min_rate(vc4_hdmi->hsm_clock, HSM_MIN_CLOCK_FREQ);
-+ if (ret)
-+ return ret;
-+
- ret = clk_prepare_enable(vc4_hdmi->hsm_clock);
- if (ret)
- return ret;
-
-+ /*
-+ * Whenever the RaspberryPi boots without an HDMI monitor
-+ * plugged in, the firmware won't have initialized the HSM clock
-+ * rate and it will be reported as 0.
-+ *
-+ * If we try to access a register of the controller in such a
-+ * case, it will lead to a silent CPU stall. Let's make sure we
-+ * prevent such a case.
-+ */
-+ rate = clk_get_rate(vc4_hdmi->hsm_clock);
-+ if (!rate) {
-+ ret = -EINVAL;
-+ goto err_disable_clk;
-+ }
-+
- if (vc4_hdmi->variant->reset)
- vc4_hdmi->variant->reset(vc4_hdmi);
-
-@@ -2916,6 +2941,10 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
- #endif
-
- return 0;
-+
-+err_disable_clk:
-+ clk_disable_unprepare(vc4_hdmi->hsm_clock);
-+ return ret;
- }
-
- static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data)
-diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
-index 311eee599ce9..2460c6bd46f8 100644
---- a/drivers/hid/hid-rmi.c
-+++ b/drivers/hid/hid-rmi.c
-@@ -322,19 +322,12 @@ static int rmi_input_event(struct hid_device *hdev, u8 *data, int size)
- {
- struct rmi_data *hdata = hid_get_drvdata(hdev);
- struct rmi_device *rmi_dev = hdata->xport.rmi_dev;
-- unsigned long flags;
-
- if (!(test_bit(RMI_STARTED, &hdata->flags)))
- return 0;
-
-- local_irq_save(flags);
--
- rmi_set_attn_data(rmi_dev, data[1], &data[2], size - 2);
-
-- generic_handle_irq(hdata->rmi_irq);
--
-- local_irq_restore(flags);
--
- return 1;
- }
-
-@@ -591,56 +584,6 @@ static const struct rmi_transport_ops hid_rmi_ops = {
- .reset = rmi_hid_reset,
- };
-
--static void rmi_irq_teardown(void *data)
--{
-- struct rmi_data *hdata = data;
-- struct irq_domain *domain = hdata->domain;
--
-- if (!domain)
-- return;
--
-- irq_dispose_mapping(irq_find_mapping(domain, 0));
--
-- irq_domain_remove(domain);
-- hdata->domain = NULL;
-- hdata->rmi_irq = 0;
--}
--
--static int rmi_irq_map(struct irq_domain *h, unsigned int virq,
-- irq_hw_number_t hw_irq_num)
--{
-- irq_set_chip_and_handler(virq, &dummy_irq_chip, handle_simple_irq);
--
-- return 0;
--}
--
--static const struct irq_domain_ops rmi_irq_ops = {
-- .map = rmi_irq_map,
--};
--
--static int rmi_setup_irq_domain(struct hid_device *hdev)
--{
-- struct rmi_data *hdata = hid_get_drvdata(hdev);
-- int ret;
--
-- hdata->domain = irq_domain_create_linear(hdev->dev.fwnode, 1,
-- &rmi_irq_ops, hdata);
-- if (!hdata->domain)
-- return -ENOMEM;
--
-- ret = devm_add_action_or_reset(&hdev->dev, &rmi_irq_teardown, hdata);
-- if (ret)
-- return ret;
--
-- hdata->rmi_irq = irq_create_mapping(hdata->domain, 0);
-- if (hdata->rmi_irq <= 0) {
-- hid_err(hdev, "Can't allocate an IRQ\n");
-- return hdata->rmi_irq < 0 ? hdata->rmi_irq : -ENXIO;
-- }
--
-- return 0;
--}
--
- static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
- {
- struct rmi_data *data = NULL;
-@@ -713,18 +656,11 @@ static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
-
- mutex_init(&data->page_mutex);
-
-- ret = rmi_setup_irq_domain(hdev);
-- if (ret) {
-- hid_err(hdev, "failed to allocate IRQ domain\n");
-- return ret;
-- }
--
- if (data->device_flags & RMI_DEVICE_HAS_PHYS_BUTTONS)
- rmi_hid_pdata.gpio_data.disable = true;
-
- data->xport.dev = hdev->dev.parent;
- data->xport.pdata = rmi_hid_pdata;
-- data->xport.pdata.irq = data->rmi_irq;
- data->xport.proto_name = "hid";
- data->xport.ops = &hid_rmi_ops;
-
-diff --git a/drivers/hwtracing/coresight/coresight-etm4x-core.c b/drivers/hwtracing/coresight/coresight-etm4x-core.c
-index 87299e99dabb..d37b689ad1bf 100644
---- a/drivers/hwtracing/coresight/coresight-etm4x-core.c
-+++ b/drivers/hwtracing/coresight/coresight-etm4x-core.c
-@@ -9,6 +9,7 @@
- #include <linux/init.h>
- #include <linux/types.h>
- #include <linux/device.h>
-+#include <linux/dmi.h>
- #include <linux/io.h>
- #include <linux/err.h>
- #include <linux/fs.h>
-@@ -2123,6 +2124,16 @@ static const struct amba_id etm4_ids[] = {
- {},
- };
-
-+static const struct dmi_system_id broken_coresight[] = {
-+ {
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "HPE"),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "Apollo 70"),
-+ },
-+ },
-+ { } /* terminating entry */
-+};
-+
- MODULE_DEVICE_TABLE(amba, etm4_ids);
-
- static struct amba_driver etm4x_amba_driver = {
-@@ -2156,6 +2167,11 @@ static int __init etm4x_init(void)
- {
- int ret;
-
-+ if (dmi_check_system(broken_coresight)) {
-+ pr_info("ETM4 disabled due to firmware bug\n");
-+ return 0;
-+ }
-+
- ret = etm4_pm_setup();
-
- /* etm4_pm_setup() does its own cleanup - exit on error */
-@@ -2182,6 +2198,9 @@ static int __init etm4x_init(void)
-
- static void __exit etm4x_exit(void)
- {
-+ if (dmi_check_system(broken_coresight))
-+ return;
-+
- amba_driver_unregister(&etm4x_amba_driver);
- platform_driver_unregister(&etm4_platform_driver);
- etm4_pm_clear();
-diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c
-index 258d5fe3d395..f7298e3dc8f3 100644
---- a/drivers/input/rmi4/rmi_driver.c
-+++ b/drivers/input/rmi4/rmi_driver.c
-@@ -182,34 +182,47 @@ void rmi_set_attn_data(struct rmi_device *rmi_dev, unsigned long irq_status,
- attn_data.data = fifo_data;
-
- kfifo_put(&drvdata->attn_fifo, attn_data);
-+
-+ schedule_work(&drvdata->attn_work);
- }
- EXPORT_SYMBOL_GPL(rmi_set_attn_data);
-
--static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
-+static void attn_callback(struct work_struct *work)
- {
-- struct rmi_device *rmi_dev = dev_id;
-- struct rmi_driver_data *drvdata = dev_get_drvdata(&rmi_dev->dev);
-+ struct rmi_driver_data *drvdata = container_of(work,
-+ struct rmi_driver_data,
-+ attn_work);
- struct rmi4_attn_data attn_data = {0};
- int ret, count;
-
- count = kfifo_get(&drvdata->attn_fifo, &attn_data);
-- if (count) {
-- *(drvdata->irq_status) = attn_data.irq_status;
-- drvdata->attn_data = attn_data;
-- }
-+ if (!count)
-+ return;
-
-- ret = rmi_process_interrupt_requests(rmi_dev);
-+ *(drvdata->irq_status) = attn_data.irq_status;
-+ drvdata->attn_data = attn_data;
-+
-+ ret = rmi_process_interrupt_requests(drvdata->rmi_dev);
- if (ret)
-- rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
-+ rmi_dbg(RMI_DEBUG_CORE, &drvdata->rmi_dev->dev,
- "Failed to process interrupt request: %d\n", ret);
-
-- if (count) {
-- kfree(attn_data.data);
-- drvdata->attn_data.data = NULL;
-- }
-+ kfree(attn_data.data);
-+ drvdata->attn_data.data = NULL;
-
- if (!kfifo_is_empty(&drvdata->attn_fifo))
-- return rmi_irq_fn(irq, dev_id);
-+ schedule_work(&drvdata->attn_work);
-+}
-+
-+static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
-+{
-+ struct rmi_device *rmi_dev = dev_id;
-+ int ret;
-+
-+ ret = rmi_process_interrupt_requests(rmi_dev);
-+ if (ret)
-+ rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
-+ "Failed to process interrupt request: %d\n", ret);
-
- return IRQ_HANDLED;
- }
-@@ -217,7 +230,6 @@ static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
- static int rmi_irq_init(struct rmi_device *rmi_dev)
- {
- struct rmi_device_platform_data *pdata = rmi_get_platform_data(rmi_dev);
-- struct rmi_driver_data *data = dev_get_drvdata(&rmi_dev->dev);
- int irq_flags = irq_get_trigger_type(pdata->irq);
- int ret;
-
-@@ -235,8 +247,6 @@ static int rmi_irq_init(struct rmi_device *rmi_dev)
- return ret;
- }
-
-- data->enabled = true;
--
- return 0;
- }
-
-@@ -886,23 +896,27 @@ void rmi_enable_irq(struct rmi_device *rmi_dev, bool clear_wake)
- if (data->enabled)
- goto out;
-
-- enable_irq(irq);
-- data->enabled = true;
-- if (clear_wake && device_may_wakeup(rmi_dev->xport->dev)) {
-- retval = disable_irq_wake(irq);
-- if (retval)
-- dev_warn(&rmi_dev->dev,
-- "Failed to disable irq for wake: %d\n",
-- retval);
-- }
-+ if (irq) {
-+ enable_irq(irq);
-+ data->enabled = true;
-+ if (clear_wake && device_may_wakeup(rmi_dev->xport->dev)) {
-+ retval = disable_irq_wake(irq);
-+ if (retval)
-+ dev_warn(&rmi_dev->dev,
-+ "Failed to disable irq for wake: %d\n",
-+ retval);
-+ }
-
-- /*
-- * Call rmi_process_interrupt_requests() after enabling irq,
-- * otherwise we may lose interrupt on edge-triggered systems.
-- */
-- irq_flags = irq_get_trigger_type(pdata->irq);
-- if (irq_flags & IRQ_TYPE_EDGE_BOTH)
-- rmi_process_interrupt_requests(rmi_dev);
-+ /*
-+ * Call rmi_process_interrupt_requests() after enabling irq,
-+ * otherwise we may lose interrupt on edge-triggered systems.
-+ */
-+ irq_flags = irq_get_trigger_type(pdata->irq);
-+ if (irq_flags & IRQ_TYPE_EDGE_BOTH)
-+ rmi_process_interrupt_requests(rmi_dev);
-+ } else {
-+ data->enabled = true;
-+ }
-
- out:
- mutex_unlock(&data->enabled_mutex);
-@@ -922,20 +936,22 @@ void rmi_disable_irq(struct rmi_device *rmi_dev, bool enable_wake)
- goto out;
-
- data->enabled = false;
-- disable_irq(irq);
-- if (enable_wake && device_may_wakeup(rmi_dev->xport->dev)) {
-- retval = enable_irq_wake(irq);
-- if (retval)
-- dev_warn(&rmi_dev->dev,
-- "Failed to enable irq for wake: %d\n",
-- retval);
-- }
--
-- /* make sure the fifo is clean */
-- while (!kfifo_is_empty(&data->attn_fifo)) {
-- count = kfifo_get(&data->attn_fifo, &attn_data);
-- if (count)
-- kfree(attn_data.data);
-+ if (irq) {
-+ disable_irq(irq);
-+ if (enable_wake && device_may_wakeup(rmi_dev->xport->dev)) {
-+ retval = enable_irq_wake(irq);
-+ if (retval)
-+ dev_warn(&rmi_dev->dev,
-+ "Failed to enable irq for wake: %d\n",
-+ retval);
-+ }
-+ } else {
-+ /* make sure the fifo is clean */
-+ while (!kfifo_is_empty(&data->attn_fifo)) {
-+ count = kfifo_get(&data->attn_fifo, &attn_data);
-+ if (count)
-+ kfree(attn_data.data);
-+ }
- }
-
- out:
-@@ -981,6 +997,8 @@ static int rmi_driver_remove(struct device *dev)
- irq_domain_remove(data->irqdomain);
- data->irqdomain = NULL;
-
-+ cancel_work_sync(&data->attn_work);
-+
- rmi_f34_remove_sysfs(rmi_dev);
- rmi_free_function_list(rmi_dev);
-
-@@ -1219,9 +1237,15 @@ static int rmi_driver_probe(struct device *dev)
- }
- }
-
-- retval = rmi_irq_init(rmi_dev);
-- if (retval < 0)
-- goto err_destroy_functions;
-+ if (pdata->irq) {
-+ retval = rmi_irq_init(rmi_dev);
-+ if (retval < 0)
-+ goto err_destroy_functions;
-+ }
-+
-+ data->enabled = true;
-+
-+ INIT_WORK(&data->attn_work, attn_callback);
-
- if (data->f01_container->dev.driver) {
- /* Driver already bound, so enable ATTN now. */
-diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
-index f113833c3075..09b90271036f 100644
---- a/drivers/iommu/iommu.c
-+++ b/drivers/iommu/iommu.c
-@@ -7,6 +7,7 @@
- #define pr_fmt(fmt) "iommu: " fmt
-
- #include <linux/device.h>
-+#include <linux/dmi.h>
- #include <linux/dma-iommu.h>
- #include <linux/kernel.h>
- #include <linux/bits.h>
-@@ -2856,6 +2857,27 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle)
- }
- EXPORT_SYMBOL_GPL(iommu_sva_get_pasid);
-
-+#ifdef CONFIG_ARM64
-+static int __init iommu_quirks(void)
-+{
-+ const char *vendor, *name;
-+
-+ vendor = dmi_get_system_info(DMI_SYS_VENDOR);
-+ name = dmi_get_system_info(DMI_PRODUCT_NAME);
-+
-+ if (vendor &&
-+ (strncmp(vendor, "GIGABYTE", 8) == 0 && name &&
-+ (strncmp(name, "R120", 4) == 0 ||
-+ strncmp(name, "R270", 4) == 0))) {
-+ pr_warn("Gigabyte %s detected, force iommu passthrough mode", name);
-+ iommu_def_domain_type = IOMMU_DOMAIN_IDENTITY;
-+ }
-+
-+ return 0;
-+}
-+arch_initcall(iommu_quirks);
-+#endif
-+
- /*
- * Changes the default domain of an iommu group that has *only* one device
- *
-diff --git a/drivers/mfd/bcm2835-pm.c b/drivers/mfd/bcm2835-pm.c
-index 42fe67f1538e..49cd1f03884a 100644
---- a/drivers/mfd/bcm2835-pm.c
-+++ b/drivers/mfd/bcm2835-pm.c
-@@ -25,9 +25,52 @@ static const struct mfd_cell bcm2835_power_devs[] = {
- { .name = "bcm2835-power" },
- };
-
-+static int bcm2835_pm_get_pdata(struct platform_device *pdev,
-+ struct bcm2835_pm *pm)
-+{
-+ if (of_find_property(pm->dev->of_node, "reg-names", NULL)) {
-+ struct resource *res;
-+
-+ pm->base = devm_platform_ioremap_resource_byname(pdev, "pm");
-+ if (IS_ERR(pm->base))
-+ return PTR_ERR(pm->base);
-+
-+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "asb");
-+ if (res) {
-+ pm->asb = devm_ioremap_resource(&pdev->dev, res);
-+ if (IS_ERR(pm->asb))
-+ pm->asb = NULL;
-+ }
-+
-+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM,
-+ "rpivid_asb");
-+ if (res) {
-+ pm->rpivid_asb = devm_ioremap_resource(&pdev->dev, res);
-+ if (IS_ERR(pm->rpivid_asb))
-+ pm->rpivid_asb = NULL;
-+ }
-+
-+ return 0;
-+ }
-+
-+ /* If no 'reg-names' property is found we can assume we're using old DTB. */
-+ pm->base = devm_platform_ioremap_resource(pdev, 0);
-+ if (IS_ERR(pm->base))
-+ return PTR_ERR(pm->base);
-+
-+ pm->asb = devm_platform_ioremap_resource(pdev, 1);
-+ if (IS_ERR(pm->asb))
-+ pm->asb = NULL;
-+
-+ pm->rpivid_asb = devm_platform_ioremap_resource(pdev, 2);
-+ if (IS_ERR(pm->rpivid_asb))
-+ pm->rpivid_asb = NULL;
-+
-+ return 0;
-+}
-+
- static int bcm2835_pm_probe(struct platform_device *pdev)
- {
-- struct resource *res;
- struct device *dev = &pdev->dev;
- struct bcm2835_pm *pm;
- int ret;
-@@ -39,10 +82,9 @@ static int bcm2835_pm_probe(struct platform_device *pdev)
-
- pm->dev = dev;
-
-- res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-- pm->base = devm_ioremap_resource(dev, res);
-- if (IS_ERR(pm->base))
-- return PTR_ERR(pm->base);
-+ ret = bcm2835_pm_get_pdata(pdev, pm);
-+ if (ret)
-+ return ret;
-
- ret = devm_mfd_add_devices(dev, -1,
- bcm2835_pm_devs, ARRAY_SIZE(bcm2835_pm_devs),
-@@ -50,30 +92,22 @@ static int bcm2835_pm_probe(struct platform_device *pdev)
- if (ret)
- return ret;
-
-- /* We'll use the presence of the AXI ASB regs in the
-+ /*
-+ * We'll use the presence of the AXI ASB regs in the
- * bcm2835-pm binding as the key for whether we can reference
- * the full PM register range and support power domains.
- */
-- res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
-- if (res) {
-- pm->asb = devm_ioremap_resource(dev, res);
-- if (IS_ERR(pm->asb))
-- return PTR_ERR(pm->asb);
--
-- ret = devm_mfd_add_devices(dev, -1,
-- bcm2835_power_devs,
-- ARRAY_SIZE(bcm2835_power_devs),
-- NULL, 0, NULL);
-- if (ret)
-- return ret;
-- }
--
-+ if (pm->asb)
-+ return devm_mfd_add_devices(dev, -1, bcm2835_power_devs,
-+ ARRAY_SIZE(bcm2835_power_devs),
-+ NULL, 0, NULL);
- return 0;
- }
-
- static const struct of_device_id bcm2835_pm_of_match[] = {
- { .compatible = "brcm,bcm2835-pm-wdt", },
- { .compatible = "brcm,bcm2835-pm", },
-+ { .compatible = "brcm,bcm2711-pm", },
- {},
- };
- MODULE_DEVICE_TABLE(of, bcm2835_pm_of_match);
-diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig
-index 9fee639ee5c8..4bb231013009 100644
---- a/drivers/net/phy/Kconfig
-+++ b/drivers/net/phy/Kconfig
-@@ -104,6 +104,8 @@ config AX88796B_PHY
- config BROADCOM_PHY
- tristate "Broadcom 54XX PHYs"
- select BCM_NET_PHYLIB
-+ select BCM_NET_PHYPTP if NETWORK_PHY_TIMESTAMPING
-+ depends on PTP_1588_CLOCK_OPTIONAL
- help
- Currently supports the BCM5411, BCM5421, BCM5461, BCM54616S, BCM5464,
- BCM5481, BCM54810 and BCM5482 PHYs.
-@@ -160,6 +162,9 @@ config BCM_CYGNUS_PHY
- config BCM_NET_PHYLIB
- tristate
-
-+config BCM_NET_PHYPTP
-+ tristate
-+
- config CICADA_PHY
- tristate "Cicada PHYs"
- help
-diff --git a/drivers/net/phy/Makefile b/drivers/net/phy/Makefile
-index b12b1d86fc99..f7138d3c896b 100644
---- a/drivers/net/phy/Makefile
-+++ b/drivers/net/phy/Makefile
-@@ -47,6 +47,7 @@ obj-$(CONFIG_BCM84881_PHY) += bcm84881.o
- obj-$(CONFIG_BCM87XX_PHY) += bcm87xx.o
- obj-$(CONFIG_BCM_CYGNUS_PHY) += bcm-cygnus.o
- obj-$(CONFIG_BCM_NET_PHYLIB) += bcm-phy-lib.o
-+obj-$(CONFIG_BCM_NET_PHYPTP) += bcm-phy-ptp.o
- obj-$(CONFIG_BROADCOM_PHY) += broadcom.o
- obj-$(CONFIG_CICADA_PHY) += cicada.o
- obj-$(CONFIG_CORTINA_PHY) += cortina.o
-diff --git a/drivers/net/phy/bcm-phy-lib.h b/drivers/net/phy/bcm-phy-lib.h
-index c3842f87c33b..9902fb182099 100644
---- a/drivers/net/phy/bcm-phy-lib.h
-+++ b/drivers/net/phy/bcm-phy-lib.h
-@@ -87,4 +87,23 @@ int bcm_phy_cable_test_start_rdb(struct phy_device *phydev);
- int bcm_phy_cable_test_start(struct phy_device *phydev);
- int bcm_phy_cable_test_get_status(struct phy_device *phydev, bool *finished);
-
-+#if IS_ENABLED(CONFIG_BCM_NET_PHYPTP)
-+struct bcm_ptp_private *bcm_ptp_probe(struct phy_device *phydev);
-+void bcm_ptp_config_init(struct phy_device *phydev);
-+void bcm_ptp_stop(struct bcm_ptp_private *priv);
-+#else
-+static inline struct bcm_ptp_private *bcm_ptp_probe(struct phy_device *phydev)
-+{
-+ return NULL;
-+}
-+
-+static inline void bcm_ptp_config_init(struct phy_device *phydev)
-+{
-+}
-+
-+static inline void bcm_ptp_stop(struct bcm_ptp_private *priv)
-+{
-+}
-+#endif
-+
- #endif /* _LINUX_BCM_PHY_LIB_H */
-diff --git a/drivers/net/phy/bcm-phy-ptp.c b/drivers/net/phy/bcm-phy-ptp.c
-new file mode 100644
-index 000000000000..ef00d6163061
---- /dev/null
-+++ b/drivers/net/phy/bcm-phy-ptp.c
-@@ -0,0 +1,944 @@
-+// SPDX-License-Identifier: GPL-2.0
-+/*
-+ * Copyright (C) 2022 Meta Platforms Inc.
-+ * Copyright (C) 2022 Jonathan Lemon <jonathan.lemon@gmail.com>
-+ */
-+
-+#include <asm/unaligned.h>
-+#include <linux/mii.h>
-+#include <linux/phy.h>
-+#include <linux/ptp_classify.h>
-+#include <linux/ptp_clock_kernel.h>
-+#include <linux/net_tstamp.h>
-+#include <linux/netdevice.h>
-+#include <linux/workqueue.h>
-+
-+#include "bcm-phy-lib.h"
-+
-+/* IEEE 1588 Expansion registers */
-+#define SLICE_CTRL 0x0810
-+#define SLICE_TX_EN BIT(0)
-+#define SLICE_RX_EN BIT(8)
-+#define TX_EVENT_MODE 0x0811
-+#define MODE_TX_UPDATE_CF BIT(0)
-+#define MODE_TX_REPLACE_TS_CF BIT(1)
-+#define MODE_TX_REPLACE_TS GENMASK(1, 0)
-+#define RX_EVENT_MODE 0x0819
-+#define MODE_RX_UPDATE_CF BIT(0)
-+#define MODE_RX_INSERT_TS_48 BIT(1)
-+#define MODE_RX_INSERT_TS_64 GENMASK(1, 0)
-+
-+#define MODE_EVT_SHIFT_SYNC 0
-+#define MODE_EVT_SHIFT_DELAY_REQ 2
-+#define MODE_EVT_SHIFT_PDELAY_REQ 4
-+#define MODE_EVT_SHIFT_PDELAY_RESP 6
-+
-+#define MODE_SEL_SHIFT_PORT 0
-+#define MODE_SEL_SHIFT_CPU 8
-+
-+#define RX_MODE_SEL(sel, evt, act) \
-+ (((MODE_RX_##act) << (MODE_EVT_SHIFT_##evt)) << (MODE_SEL_SHIFT_##sel))
-+
-+#define TX_MODE_SEL(sel, evt, act) \
-+ (((MODE_TX_##act) << (MODE_EVT_SHIFT_##evt)) << (MODE_SEL_SHIFT_##sel))
-+
-+/* needs global TS capture first */
-+#define TX_TS_CAPTURE 0x0821
-+#define TX_TS_CAP_EN BIT(0)
-+#define RX_TS_CAPTURE 0x0822
-+#define RX_TS_CAP_EN BIT(0)
-+
-+#define TIME_CODE_0 0x0854
-+#define TIME_CODE_1 0x0855
-+#define TIME_CODE_2 0x0856
-+#define TIME_CODE_3 0x0857
-+#define TIME_CODE_4 0x0858
-+
-+#define DPLL_SELECT 0x085b
-+#define DPLL_HB_MODE2 BIT(6)
-+
-+#define SHADOW_CTRL 0x085c
-+#define SHADOW_LOAD 0x085d
-+#define TIME_CODE_LOAD BIT(10)
-+#define SYNC_OUT_LOAD BIT(9)
-+#define NCO_TIME_LOAD BIT(7)
-+#define FREQ_LOAD BIT(6)
-+#define INTR_MASK 0x085e
-+#define INTR_STATUS 0x085f
-+#define INTC_FSYNC BIT(0)
-+#define INTC_SOP BIT(1)
-+
-+#define NCO_FREQ_LSB 0x0873
-+#define NCO_FREQ_MSB 0x0874
-+
-+#define NCO_TIME_0 0x0875
-+#define NCO_TIME_1 0x0876
-+#define NCO_TIME_2_CTRL 0x0877
-+#define FREQ_MDIO_SEL BIT(14)
-+
-+#define SYNC_OUT_0 0x0878
-+#define SYNC_OUT_1 0x0879
-+#define SYNC_OUT_2 0x087a
-+
-+#define SYNC_IN_DIVIDER 0x087b
-+
-+#define SYNOUT_TS_0 0x087c
-+#define SYNOUT_TS_1 0x087d
-+#define SYNOUT_TS_2 0x087e
-+
-+#define NSE_CTRL 0x087f
-+#define NSE_GMODE_EN GENMASK(15, 14)
-+#define NSE_CAPTURE_EN BIT(13)
-+#define NSE_INIT BIT(12)
-+#define NSE_CPU_FRAMESYNC BIT(5)
-+#define NSE_SYNC1_FRAMESYNC BIT(3)
-+#define NSE_FRAMESYNC_MASK GENMASK(5, 2)
-+#define NSE_PEROUT_EN BIT(1)
-+#define NSE_ONESHOT_EN BIT(0)
-+#define NSE_SYNC_OUT_MASK GENMASK(1, 0)
-+
-+#define TS_READ_CTRL 0x0885
-+#define TS_READ_START BIT(0)
-+#define TS_READ_END BIT(1)
-+
-+#define HB_REG_0 0x0886
-+#define HB_REG_1 0x0887
-+#define HB_REG_2 0x0888
-+#define HB_REG_3 0x08ec
-+#define HB_REG_4 0x08ed
-+#define HB_STAT_CTRL 0x088e
-+#define HB_READ_START BIT(10)
-+#define HB_READ_END BIT(11)
-+#define HB_READ_MASK GENMASK(11, 10)
-+
-+#define TS_REG_0 0x0889
-+#define TS_REG_1 0x088a
-+#define TS_REG_2 0x088b
-+#define TS_REG_3 0x08c4
-+
-+#define TS_INFO_0 0x088c
-+#define TS_INFO_1 0x088d
-+
-+#define TIMECODE_CTRL 0x08c3
-+#define TX_TIMECODE_SEL GENMASK(7, 0)
-+#define RX_TIMECODE_SEL GENMASK(15, 8)
-+
-+#define TIME_SYNC 0x0ff5
-+#define TIME_SYNC_EN BIT(0)
-+
-+struct bcm_ptp_private {
-+ struct phy_device *phydev;
-+ struct mii_timestamper mii_ts;
-+ struct ptp_clock *ptp_clock;
-+ struct ptp_clock_info ptp_info;
-+ struct ptp_pin_desc pin;
-+ struct mutex mutex;
-+ struct sk_buff_head tx_queue;
-+ int tx_type;
-+ bool hwts_rx;
-+ u16 nse_ctrl;
-+ bool pin_active;
-+ struct delayed_work pin_work;
-+};
-+
-+struct bcm_ptp_skb_cb {
-+ unsigned long timeout;
-+ u16 seq_id;
-+ u8 msgtype;
-+ bool discard;
-+};
-+
-+struct bcm_ptp_capture {
-+ ktime_t hwtstamp;
-+ u16 seq_id;
-+ u8 msgtype;
-+ bool tx_dir;
-+};
-+
-+#define BCM_SKB_CB(skb) ((struct bcm_ptp_skb_cb *)(skb)->cb)
-+#define SKB_TS_TIMEOUT 10 /* jiffies */
-+
-+#define BCM_MAX_PULSE_8NS ((1U << 9) - 1)
-+#define BCM_MAX_PERIOD_8NS ((1U << 30) - 1)
-+
-+#define BRCM_PHY_MODEL(phydev) \
-+ ((phydev)->drv->phy_id & (phydev)->drv->phy_id_mask)
-+
-+static struct bcm_ptp_private *mii2priv(struct mii_timestamper *mii_ts)
-+{
-+ return container_of(mii_ts, struct bcm_ptp_private, mii_ts);
-+}
-+
-+static struct bcm_ptp_private *ptp2priv(struct ptp_clock_info *info)
-+{
-+ return container_of(info, struct bcm_ptp_private, ptp_info);
-+}
-+
-+static void bcm_ptp_get_framesync_ts(struct phy_device *phydev,
-+ struct timespec64 *ts)
-+{
-+ u16 hb[4];
-+
-+ bcm_phy_write_exp(phydev, HB_STAT_CTRL, HB_READ_START);
-+
-+ hb[0] = bcm_phy_read_exp(phydev, HB_REG_0);
-+ hb[1] = bcm_phy_read_exp(phydev, HB_REG_1);
-+ hb[2] = bcm_phy_read_exp(phydev, HB_REG_2);
-+ hb[3] = bcm_phy_read_exp(phydev, HB_REG_3);
-+
-+ bcm_phy_write_exp(phydev, HB_STAT_CTRL, HB_READ_END);
-+ bcm_phy_write_exp(phydev, HB_STAT_CTRL, 0);
-+
-+ ts->tv_sec = (hb[3] << 16) | hb[2];
-+ ts->tv_nsec = (hb[1] << 16) | hb[0];
-+}
-+
-+static u16 bcm_ptp_framesync_disable(struct phy_device *phydev, u16 orig_ctrl)
-+{
-+ u16 ctrl = orig_ctrl & ~(NSE_FRAMESYNC_MASK | NSE_CAPTURE_EN);
-+
-+ bcm_phy_write_exp(phydev, NSE_CTRL, ctrl);
-+
-+ return ctrl;
-+}
-+
-+static void bcm_ptp_framesync_restore(struct phy_device *phydev, u16 orig_ctrl)
-+{
-+ if (orig_ctrl & NSE_FRAMESYNC_MASK)
-+ bcm_phy_write_exp(phydev, NSE_CTRL, orig_ctrl);
-+}
-+
-+static void bcm_ptp_framesync(struct phy_device *phydev, u16 ctrl)
-+{
-+ /* trigger framesync - must have 0->1 transition. */
-+ bcm_phy_write_exp(phydev, NSE_CTRL, ctrl | NSE_CPU_FRAMESYNC);
-+}
-+
-+static int bcm_ptp_framesync_ts(struct phy_device *phydev,
-+ struct ptp_system_timestamp *sts,
-+ struct timespec64 *ts,
-+ u16 orig_ctrl)
-+{
-+ u16 ctrl, reg;
-+ int i;
-+
-+ ctrl = bcm_ptp_framesync_disable(phydev, orig_ctrl);
-+
-+ ptp_read_system_prets(sts);
-+
-+ /* trigger framesync + capture */
-+ bcm_ptp_framesync(phydev, ctrl | NSE_CAPTURE_EN);
-+
-+ ptp_read_system_postts(sts);
-+
-+ /* poll for FSYNC interrupt from TS capture */
-+ for (i = 0; i < 10; i++) {
-+ reg = bcm_phy_read_exp(phydev, INTR_STATUS);
-+ if (reg & INTC_FSYNC) {
-+ bcm_ptp_get_framesync_ts(phydev, ts);
-+ break;
-+ }
-+ }
-+
-+ bcm_ptp_framesync_restore(phydev, orig_ctrl);
-+
-+ return reg & INTC_FSYNC ? 0 : -ETIMEDOUT;
-+}
-+
-+static int bcm_ptp_gettimex(struct ptp_clock_info *info,
-+ struct timespec64 *ts,
-+ struct ptp_system_timestamp *sts)
-+{
-+ struct bcm_ptp_private *priv = ptp2priv(info);
-+ int err;
-+
-+ mutex_lock(&priv->mutex);
-+ err = bcm_ptp_framesync_ts(priv->phydev, sts, ts, priv->nse_ctrl);
-+ mutex_unlock(&priv->mutex);
-+
-+ return err;
-+}
-+
-+static int bcm_ptp_settime_locked(struct bcm_ptp_private *priv,
-+ const struct timespec64 *ts)
-+{
-+ struct phy_device *phydev = priv->phydev;
-+ u16 ctrl;
-+ u64 ns;
-+
-+ ctrl = bcm_ptp_framesync_disable(phydev, priv->nse_ctrl);
-+
-+ /* set up time code */
-+ bcm_phy_write_exp(phydev, TIME_CODE_0, ts->tv_nsec);
-+ bcm_phy_write_exp(phydev, TIME_CODE_1, ts->tv_nsec >> 16);
-+ bcm_phy_write_exp(phydev, TIME_CODE_2, ts->tv_sec);
-+ bcm_phy_write_exp(phydev, TIME_CODE_3, ts->tv_sec >> 16);
-+ bcm_phy_write_exp(phydev, TIME_CODE_4, ts->tv_sec >> 32);
-+
-+ /* set NCO counter to match */
-+ ns = timespec64_to_ns(ts);
-+ bcm_phy_write_exp(phydev, NCO_TIME_0, ns >> 4);
-+ bcm_phy_write_exp(phydev, NCO_TIME_1, ns >> 20);
-+ bcm_phy_write_exp(phydev, NCO_TIME_2_CTRL, (ns >> 36) & 0xfff);
-+
-+ /* set up load on next frame sync (auto-clears due to NSE_INIT) */
-+ bcm_phy_write_exp(phydev, SHADOW_LOAD, TIME_CODE_LOAD | NCO_TIME_LOAD);
-+
-+ /* must have NSE_INIT in order to write time code */
-+ bcm_ptp_framesync(phydev, ctrl | NSE_INIT);
-+
-+ bcm_ptp_framesync_restore(phydev, priv->nse_ctrl);
-+
-+ return 0;
-+}
-+
-+static int bcm_ptp_settime(struct ptp_clock_info *info,
-+ const struct timespec64 *ts)
-+{
-+ struct bcm_ptp_private *priv = ptp2priv(info);
-+ int err;
-+
-+ mutex_lock(&priv->mutex);
-+ err = bcm_ptp_settime_locked(priv, ts);
-+ mutex_unlock(&priv->mutex);
-+
-+ return err;
-+}
-+
-+static int bcm_ptp_adjtime_locked(struct bcm_ptp_private *priv,
-+ s64 delta_ns)
-+{
-+ struct timespec64 ts;
-+ int err;
-+ s64 ns;
-+
-+ err = bcm_ptp_framesync_ts(priv->phydev, NULL, &ts, priv->nse_ctrl);
-+ if (!err) {
-+ ns = timespec64_to_ns(&ts) + delta_ns;
-+ ts = ns_to_timespec64(ns);
-+ err = bcm_ptp_settime_locked(priv, &ts);
-+ }
-+ return err;
-+}
-+
-+static int bcm_ptp_adjtime(struct ptp_clock_info *info, s64 delta_ns)
-+{
-+ struct bcm_ptp_private *priv = ptp2priv(info);
-+ int err;
-+
-+ mutex_lock(&priv->mutex);
-+ err = bcm_ptp_adjtime_locked(priv, delta_ns);
-+ mutex_unlock(&priv->mutex);
-+
-+ return err;
-+}
-+
-+/* A 125Mhz clock should adjust 8ns per pulse.
-+ * The frequency adjustment base is 0x8000 0000, or 8*2^28.
-+ *
-+ * Frequency adjustment is
-+ * adj = scaled_ppm * 8*2^28 / (10^6 * 2^16)
-+ * which simplifies to:
-+ * adj = scaled_ppm * 2^9 / 5^6
-+ */
-+static int bcm_ptp_adjfine(struct ptp_clock_info *info, long scaled_ppm)
-+{
-+ struct bcm_ptp_private *priv = ptp2priv(info);
-+ int neg_adj = 0;
-+ u32 diff, freq;
-+ u16 ctrl;
-+ u64 adj;
-+
-+ if (scaled_ppm < 0) {
-+ neg_adj = 1;
-+ scaled_ppm = -scaled_ppm;
-+ }
-+
-+ adj = scaled_ppm << 9;
-+ diff = div_u64(adj, 15625);
-+ freq = (8 << 28) + (neg_adj ? -diff : diff);
-+
-+ mutex_lock(&priv->mutex);
-+
-+ ctrl = bcm_ptp_framesync_disable(priv->phydev, priv->nse_ctrl);
-+
-+ bcm_phy_write_exp(priv->phydev, NCO_FREQ_LSB, freq);
-+ bcm_phy_write_exp(priv->phydev, NCO_FREQ_MSB, freq >> 16);
-+
-+ bcm_phy_write_exp(priv->phydev, NCO_TIME_2_CTRL, FREQ_MDIO_SEL);
-+
-+ /* load on next framesync */
-+ bcm_phy_write_exp(priv->phydev, SHADOW_LOAD, FREQ_LOAD);
-+
-+ bcm_ptp_framesync(priv->phydev, ctrl);
-+
-+ /* clear load */
-+ bcm_phy_write_exp(priv->phydev, SHADOW_LOAD, 0);
-+
-+ bcm_ptp_framesync_restore(priv->phydev, priv->nse_ctrl);
-+
-+ mutex_unlock(&priv->mutex);
-+
-+ return 0;
-+}
-+
-+static bool bcm_ptp_rxtstamp(struct mii_timestamper *mii_ts,
-+ struct sk_buff *skb, int type)
-+{
-+ struct bcm_ptp_private *priv = mii2priv(mii_ts);
-+ struct skb_shared_hwtstamps *hwts;
-+ struct ptp_header *header;
-+ u32 sec, nsec;
-+ u8 *data;
-+ int off;
-+
-+ if (!priv->hwts_rx)
-+ return false;
-+
-+ header = ptp_parse_header(skb, type);
-+ if (!header)
-+ return false;
-+
-+ data = (u8 *)(header + 1);
-+ sec = get_unaligned_be32(data);
-+ nsec = get_unaligned_be32(data + 4);
-+
-+ hwts = skb_hwtstamps(skb);
-+ hwts->hwtstamp = ktime_set(sec, nsec);
-+
-+ off = data - skb->data + 8;
-+ if (off < skb->len) {
-+ memmove(data, data + 8, skb->len - off);
-+ __pskb_trim(skb, skb->len - 8);
-+ }
-+
-+ return false;
-+}
-+
-+static bool bcm_ptp_get_tstamp(struct bcm_ptp_private *priv,
-+ struct bcm_ptp_capture *capts)
-+{
-+ struct phy_device *phydev = priv->phydev;
-+ u16 ts[4], reg;
-+ u32 sec, nsec;
-+
-+ mutex_lock(&priv->mutex);
-+
-+ reg = bcm_phy_read_exp(phydev, INTR_STATUS);
-+ if ((reg & INTC_SOP) == 0) {
-+ mutex_unlock(&priv->mutex);
-+ return false;
-+ }
-+
-+ bcm_phy_write_exp(phydev, TS_READ_CTRL, TS_READ_START);
-+
-+ ts[0] = bcm_phy_read_exp(phydev, TS_REG_0);
-+ ts[1] = bcm_phy_read_exp(phydev, TS_REG_1);
-+ ts[2] = bcm_phy_read_exp(phydev, TS_REG_2);
-+ ts[3] = bcm_phy_read_exp(phydev, TS_REG_3);
-+
-+ /* not in be32 format for some reason */
-+ capts->seq_id = bcm_phy_read_exp(priv->phydev, TS_INFO_0);
-+
-+ reg = bcm_phy_read_exp(phydev, TS_INFO_1);
-+ capts->msgtype = reg >> 12;
-+ capts->tx_dir = !!(reg & BIT(11));
-+
-+ bcm_phy_write_exp(phydev, TS_READ_CTRL, TS_READ_END);
-+ bcm_phy_write_exp(phydev, TS_READ_CTRL, 0);
-+
-+ mutex_unlock(&priv->mutex);
-+
-+ sec = (ts[3] << 16) | ts[2];
-+ nsec = (ts[1] << 16) | ts[0];
-+ capts->hwtstamp = ktime_set(sec, nsec);
-+
-+ return true;
-+}
-+
-+static void bcm_ptp_match_tstamp(struct bcm_ptp_private *priv,
-+ struct bcm_ptp_capture *capts)
-+{
-+ struct skb_shared_hwtstamps hwts;
-+ struct sk_buff *skb, *ts_skb;
-+ unsigned long flags;
-+ bool first = false;
-+
-+ ts_skb = NULL;
-+ spin_lock_irqsave(&priv->tx_queue.lock, flags);
-+ skb_queue_walk(&priv->tx_queue, skb) {
-+ if (BCM_SKB_CB(skb)->seq_id == capts->seq_id &&
-+ BCM_SKB_CB(skb)->msgtype == capts->msgtype) {
-+ first = skb_queue_is_first(&priv->tx_queue, skb);
-+ __skb_unlink(skb, &priv->tx_queue);
-+ ts_skb = skb;
-+ break;
-+ }
-+ }
-+ spin_unlock_irqrestore(&priv->tx_queue.lock, flags);
-+
-+ /* TX captures one-step packets, discard them if needed. */
-+ if (ts_skb) {
-+ if (BCM_SKB_CB(ts_skb)->discard) {
-+ kfree_skb(ts_skb);
-+ } else {
-+ memset(&hwts, 0, sizeof(hwts));
-+ hwts.hwtstamp = capts->hwtstamp;
-+ skb_complete_tx_timestamp(ts_skb, &hwts);
-+ }
-+ }
-+
-+ /* not first match, try and expire entries */
-+ if (!first) {
-+ while ((skb = skb_dequeue(&priv->tx_queue))) {
-+ if (!time_after(jiffies, BCM_SKB_CB(skb)->timeout)) {
-+ skb_queue_head(&priv->tx_queue, skb);
-+ break;
-+ }
-+ kfree_skb(skb);
-+ }
-+ }
-+}
-+
-+static long bcm_ptp_do_aux_work(struct ptp_clock_info *info)
-+{
-+ struct bcm_ptp_private *priv = ptp2priv(info);
-+ struct bcm_ptp_capture capts;
-+ bool reschedule = false;
-+
-+ while (!skb_queue_empty_lockless(&priv->tx_queue)) {
-+ if (!bcm_ptp_get_tstamp(priv, &capts)) {
-+ reschedule = true;
-+ break;
-+ }
-+ bcm_ptp_match_tstamp(priv, &capts);
-+ }
-+
-+ return reschedule ? 1 : -1;
-+}
-+
-+static int bcm_ptp_cancel_func(struct bcm_ptp_private *priv)
-+{
-+ if (!priv->pin_active)
-+ return 0;
-+
-+ priv->pin_active = false;
-+
-+ priv->nse_ctrl &= ~(NSE_SYNC_OUT_MASK | NSE_SYNC1_FRAMESYNC |
-+ NSE_CAPTURE_EN);
-+ bcm_phy_write_exp(priv->phydev, NSE_CTRL, priv->nse_ctrl);
-+
-+ cancel_delayed_work_sync(&priv->pin_work);
-+
-+ return 0;
-+}
-+
-+static void bcm_ptp_perout_work(struct work_struct *pin_work)
-+{
-+ struct bcm_ptp_private *priv =
-+ container_of(pin_work, struct bcm_ptp_private, pin_work.work);
-+ struct phy_device *phydev = priv->phydev;
-+ struct timespec64 ts;
-+ u64 ns, next;
-+ u16 ctrl;
-+
-+ mutex_lock(&priv->mutex);
-+
-+ /* no longer running */
-+ if (!priv->pin_active) {
-+ mutex_unlock(&priv->mutex);
-+ return;
-+ }
-+
-+ bcm_ptp_framesync_ts(phydev, NULL, &ts, priv->nse_ctrl);
-+
-+ /* this is 1PPS only */
-+ next = NSEC_PER_SEC - ts.tv_nsec;
-+ ts.tv_sec += next < NSEC_PER_MSEC ? 2 : 1;
-+ ts.tv_nsec = 0;
-+
-+ ns = timespec64_to_ns(&ts);
-+
-+ /* force 0->1 transition for ONESHOT */
-+ ctrl = bcm_ptp_framesync_disable(phydev,
-+ priv->nse_ctrl & ~NSE_ONESHOT_EN);
-+
-+ bcm_phy_write_exp(phydev, SYNOUT_TS_0, ns & 0xfff0);
-+ bcm_phy_write_exp(phydev, SYNOUT_TS_1, ns >> 16);
-+ bcm_phy_write_exp(phydev, SYNOUT_TS_2, ns >> 32);
-+
-+ /* load values on next framesync */
-+ bcm_phy_write_exp(phydev, SHADOW_LOAD, SYNC_OUT_LOAD);
-+
-+ bcm_ptp_framesync(phydev, ctrl | NSE_ONESHOT_EN | NSE_INIT);
-+
-+ priv->nse_ctrl |= NSE_ONESHOT_EN;
-+ bcm_ptp_framesync_restore(phydev, priv->nse_ctrl);
-+
-+ mutex_unlock(&priv->mutex);
-+
-+ next = next + NSEC_PER_MSEC;
-+ schedule_delayed_work(&priv->pin_work, nsecs_to_jiffies(next));
-+}
-+
-+static int bcm_ptp_perout_locked(struct bcm_ptp_private *priv,
-+ struct ptp_perout_request *req, int on)
-+{
-+ struct phy_device *phydev = priv->phydev;
-+ u64 period, pulse;
-+ u16 val;
-+
-+ if (!on)
-+ return bcm_ptp_cancel_func(priv);
-+
-+ /* 1PPS */
-+ if (req->period.sec != 1 || req->period.nsec != 0)
-+ return -EINVAL;
-+
-+ period = BCM_MAX_PERIOD_8NS; /* write nonzero value */
-+
-+ if (req->flags & PTP_PEROUT_PHASE)
-+ return -EOPNOTSUPP;
-+
-+ if (req->flags & PTP_PEROUT_DUTY_CYCLE)
-+ pulse = ktime_to_ns(ktime_set(req->on.sec, req->on.nsec));
-+ else
-+ pulse = (u64)BCM_MAX_PULSE_8NS << 3;
-+
-+ /* convert to 8ns units */
-+ pulse >>= 3;
-+
-+ if (!pulse || pulse > period || pulse > BCM_MAX_PULSE_8NS)
-+ return -EINVAL;
-+
-+ bcm_phy_write_exp(phydev, SYNC_OUT_0, period);
-+
-+ val = ((pulse & 0x3) << 14) | ((period >> 16) & 0x3fff);
-+ bcm_phy_write_exp(phydev, SYNC_OUT_1, val);
-+
-+ val = ((pulse >> 2) & 0x7f) | (pulse << 7);
-+ bcm_phy_write_exp(phydev, SYNC_OUT_2, val);
-+
-+ if (priv->pin_active)
-+ cancel_delayed_work_sync(&priv->pin_work);
-+
-+ priv->pin_active = true;
-+ INIT_DELAYED_WORK(&priv->pin_work, bcm_ptp_perout_work);
-+ schedule_delayed_work(&priv->pin_work, 0);
-+
-+ return 0;
-+}
-+
-+static void bcm_ptp_extts_work(struct work_struct *pin_work)
-+{
-+ struct bcm_ptp_private *priv =
-+ container_of(pin_work, struct bcm_ptp_private, pin_work.work);
-+ struct phy_device *phydev = priv->phydev;
-+ struct ptp_clock_event event;
-+ struct timespec64 ts;
-+ u16 reg;
-+
-+ mutex_lock(&priv->mutex);
-+
-+ /* no longer running */
-+ if (!priv->pin_active) {
-+ mutex_unlock(&priv->mutex);
-+ return;
-+ }
-+
-+ reg = bcm_phy_read_exp(phydev, INTR_STATUS);
-+ if ((reg & INTC_FSYNC) == 0)
-+ goto out;
-+
-+ bcm_ptp_get_framesync_ts(phydev, &ts);
-+
-+ event.index = 0;
-+ event.type = PTP_CLOCK_EXTTS;
-+ event.timestamp = timespec64_to_ns(&ts);
-+ ptp_clock_event(priv->ptp_clock, &event);
-+
-+out:
-+ mutex_unlock(&priv->mutex);
-+ schedule_delayed_work(&priv->pin_work, HZ / 4);
-+}
-+
-+static int bcm_ptp_extts_locked(struct bcm_ptp_private *priv, int on)
-+{
-+ struct phy_device *phydev = priv->phydev;
-+
-+ if (!on)
-+ return bcm_ptp_cancel_func(priv);
-+
-+ if (priv->pin_active)
-+ cancel_delayed_work_sync(&priv->pin_work);
-+
-+ bcm_ptp_framesync_disable(phydev, priv->nse_ctrl);
-+
-+ priv->nse_ctrl |= NSE_SYNC1_FRAMESYNC | NSE_CAPTURE_EN;
-+
-+ bcm_ptp_framesync_restore(phydev, priv->nse_ctrl);
-+
-+ priv->pin_active = true;
-+ INIT_DELAYED_WORK(&priv->pin_work, bcm_ptp_extts_work);
-+ schedule_delayed_work(&priv->pin_work, 0);
-+
-+ return 0;
-+}
-+
-+static int bcm_ptp_enable(struct ptp_clock_info *info,
-+ struct ptp_clock_request *rq, int on)
-+{
-+ struct bcm_ptp_private *priv = ptp2priv(info);
-+ int err = -EBUSY;
-+
-+ mutex_lock(&priv->mutex);
-+
-+ switch (rq->type) {
-+ case PTP_CLK_REQ_PEROUT:
-+ if (priv->pin.func == PTP_PF_PEROUT)
-+ err = bcm_ptp_perout_locked(priv, &rq->perout, on);
-+ break;
-+ case PTP_CLK_REQ_EXTTS:
-+ if (priv->pin.func == PTP_PF_EXTTS)
-+ err = bcm_ptp_extts_locked(priv, on);
-+ break;
-+ default:
-+ err = -EOPNOTSUPP;
-+ break;
-+ }
-+
-+ mutex_unlock(&priv->mutex);
-+
-+ return err;
-+}
-+
-+static int bcm_ptp_verify(struct ptp_clock_info *info, unsigned int pin,
-+ enum ptp_pin_function func, unsigned int chan)
-+{
-+ switch (func) {
-+ case PTP_PF_NONE:
-+ case PTP_PF_EXTTS:
-+ case PTP_PF_PEROUT:
-+ break;
-+ default:
-+ return -EOPNOTSUPP;
-+ }
-+ return 0;
-+}
-+
-+static const struct ptp_clock_info bcm_ptp_clock_info = {
-+ .owner = THIS_MODULE,
-+ .name = KBUILD_MODNAME,
-+ .max_adj = 100000000,
-+ .gettimex64 = bcm_ptp_gettimex,
-+ .settime64 = bcm_ptp_settime,
-+ .adjtime = bcm_ptp_adjtime,
-+ .adjfine = bcm_ptp_adjfine,
-+ .enable = bcm_ptp_enable,
-+ .verify = bcm_ptp_verify,
-+ .do_aux_work = bcm_ptp_do_aux_work,
-+ .n_pins = 1,
-+ .n_per_out = 1,
-+ .n_ext_ts = 1,
-+};
-+
-+static void bcm_ptp_txtstamp(struct mii_timestamper *mii_ts,
-+ struct sk_buff *skb, int type)
-+{
-+ struct bcm_ptp_private *priv = mii2priv(mii_ts);
-+ struct ptp_header *hdr;
-+ bool discard = false;
-+ int msgtype;
-+
-+ hdr = ptp_parse_header(skb, type);
-+ if (!hdr)
-+ goto out;
-+ msgtype = ptp_get_msgtype(hdr, type);
-+
-+ switch (priv->tx_type) {
-+ case HWTSTAMP_TX_ONESTEP_P2P:
-+ if (msgtype == PTP_MSGTYPE_PDELAY_RESP)
-+ discard = true;
-+ fallthrough;
-+ case HWTSTAMP_TX_ONESTEP_SYNC:
-+ if (msgtype == PTP_MSGTYPE_SYNC)
-+ discard = true;
-+ fallthrough;
-+ case HWTSTAMP_TX_ON:
-+ BCM_SKB_CB(skb)->timeout = jiffies + SKB_TS_TIMEOUT;
-+ BCM_SKB_CB(skb)->seq_id = be16_to_cpu(hdr->sequence_id);
-+ BCM_SKB_CB(skb)->msgtype = msgtype;
-+ BCM_SKB_CB(skb)->discard = discard;
-+ skb_shinfo(skb)->tx_flags |= SKBTX_IN_PROGRESS;
-+ skb_queue_tail(&priv->tx_queue, skb);
-+ ptp_schedule_worker(priv->ptp_clock, 0);
-+ return;
-+ default:
-+ break;
-+ }
-+
-+out:
-+ kfree_skb(skb);
-+}
-+
-+static int bcm_ptp_hwtstamp(struct mii_timestamper *mii_ts,
-+ struct ifreq *ifr)
-+{
-+ struct bcm_ptp_private *priv = mii2priv(mii_ts);
-+ struct hwtstamp_config cfg;
-+ u16 mode, ctrl;
-+
-+ if (copy_from_user(&cfg, ifr->ifr_data, sizeof(cfg)))
-+ return -EFAULT;
-+
-+ switch (cfg.rx_filter) {
-+ case HWTSTAMP_FILTER_NONE:
-+ priv->hwts_rx = false;
-+ break;
-+ case HWTSTAMP_FILTER_PTP_V2_L4_EVENT:
-+ case HWTSTAMP_FILTER_PTP_V2_L4_SYNC:
-+ case HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ:
-+ case HWTSTAMP_FILTER_PTP_V2_L2_EVENT:
-+ case HWTSTAMP_FILTER_PTP_V2_L2_SYNC:
-+ case HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ:
-+ case HWTSTAMP_FILTER_PTP_V2_EVENT:
-+ case HWTSTAMP_FILTER_PTP_V2_SYNC:
-+ case HWTSTAMP_FILTER_PTP_V2_DELAY_REQ:
-+ cfg.rx_filter = HWTSTAMP_FILTER_PTP_V2_EVENT;
-+ priv->hwts_rx = true;
-+ break;
-+ default:
-+ return -ERANGE;
-+ }
-+
-+ priv->tx_type = cfg.tx_type;
-+
-+ ctrl = priv->hwts_rx ? SLICE_RX_EN : 0;
-+ ctrl |= priv->tx_type != HWTSTAMP_TX_OFF ? SLICE_TX_EN : 0;
-+
-+ mode = TX_MODE_SEL(PORT, SYNC, REPLACE_TS) |
-+ TX_MODE_SEL(PORT, DELAY_REQ, REPLACE_TS) |
-+ TX_MODE_SEL(PORT, PDELAY_REQ, REPLACE_TS) |
-+ TX_MODE_SEL(PORT, PDELAY_RESP, REPLACE_TS);
-+
-+ bcm_phy_write_exp(priv->phydev, TX_EVENT_MODE, mode);
-+
-+ mode = RX_MODE_SEL(PORT, SYNC, INSERT_TS_64) |
-+ RX_MODE_SEL(PORT, DELAY_REQ, INSERT_TS_64) |
-+ RX_MODE_SEL(PORT, PDELAY_REQ, INSERT_TS_64) |
-+ RX_MODE_SEL(PORT, PDELAY_RESP, INSERT_TS_64);
-+
-+ bcm_phy_write_exp(priv->phydev, RX_EVENT_MODE, mode);
-+
-+ bcm_phy_write_exp(priv->phydev, SLICE_CTRL, ctrl);
-+
-+ if (ctrl & SLICE_TX_EN)
-+ bcm_phy_write_exp(priv->phydev, TX_TS_CAPTURE, TX_TS_CAP_EN);
-+ else
-+ ptp_cancel_worker_sync(priv->ptp_clock);
-+
-+ /* purge existing data */
-+ skb_queue_purge(&priv->tx_queue);
-+
-+ return copy_to_user(ifr->ifr_data, &cfg, sizeof(cfg)) ? -EFAULT : 0;
-+}
-+
-+static int bcm_ptp_ts_info(struct mii_timestamper *mii_ts,
-+ struct ethtool_ts_info *ts_info)
-+{
-+ struct bcm_ptp_private *priv = mii2priv(mii_ts);
-+
-+ ts_info->phc_index = ptp_clock_index(priv->ptp_clock);
-+ ts_info->so_timestamping =
-+ SOF_TIMESTAMPING_TX_HARDWARE |
-+ SOF_TIMESTAMPING_RX_HARDWARE |
-+ SOF_TIMESTAMPING_RAW_HARDWARE;
-+ ts_info->tx_types =
-+ BIT(HWTSTAMP_TX_ON) |
-+ BIT(HWTSTAMP_TX_OFF) |
-+ BIT(HWTSTAMP_TX_ONESTEP_SYNC) |
-+ BIT(HWTSTAMP_TX_ONESTEP_P2P);
-+ ts_info->rx_filters =
-+ BIT(HWTSTAMP_FILTER_NONE) |
-+ BIT(HWTSTAMP_FILTER_PTP_V2_EVENT);
-+
-+ return 0;
-+}
-+
-+void bcm_ptp_stop(struct bcm_ptp_private *priv)
-+{
-+ ptp_cancel_worker_sync(priv->ptp_clock);
-+ bcm_ptp_cancel_func(priv);
-+}
-+EXPORT_SYMBOL_GPL(bcm_ptp_stop);
-+
-+void bcm_ptp_config_init(struct phy_device *phydev)
-+{
-+ /* init network sync engine */
-+ bcm_phy_write_exp(phydev, NSE_CTRL, NSE_GMODE_EN | NSE_INIT);
-+
-+ /* enable time sync (TX/RX SOP capture) */
-+ bcm_phy_write_exp(phydev, TIME_SYNC, TIME_SYNC_EN);
-+
-+ /* use sec.nsec heartbeat capture */
-+ bcm_phy_write_exp(phydev, DPLL_SELECT, DPLL_HB_MODE2);
-+
-+ /* use 64 bit timecode for TX */
-+ bcm_phy_write_exp(phydev, TIMECODE_CTRL, TX_TIMECODE_SEL);
-+
-+ /* always allow FREQ_LOAD on framesync */
-+ bcm_phy_write_exp(phydev, SHADOW_CTRL, FREQ_LOAD);
-+
-+ bcm_phy_write_exp(phydev, SYNC_IN_DIVIDER, 1);
-+}
-+EXPORT_SYMBOL_GPL(bcm_ptp_config_init);
-+
-+static void bcm_ptp_init(struct bcm_ptp_private *priv)
-+{
-+ priv->nse_ctrl = NSE_GMODE_EN;
-+
-+ mutex_init(&priv->mutex);
-+ skb_queue_head_init(&priv->tx_queue);
-+
-+ priv->mii_ts.rxtstamp = bcm_ptp_rxtstamp;
-+ priv->mii_ts.txtstamp = bcm_ptp_txtstamp;
-+ priv->mii_ts.hwtstamp = bcm_ptp_hwtstamp;
-+ priv->mii_ts.ts_info = bcm_ptp_ts_info;
-+
-+ priv->phydev->mii_ts = &priv->mii_ts;
-+}
-+
-+struct bcm_ptp_private *bcm_ptp_probe(struct phy_device *phydev)
-+{
-+ struct bcm_ptp_private *priv;
-+ struct ptp_clock *clock;
-+
-+ switch (BRCM_PHY_MODEL(phydev)) {
-+ case PHY_ID_BCM54210E:
-+ break;
-+ default:
-+ return NULL;
-+ }
-+
-+ priv = devm_kzalloc(&phydev->mdio.dev, sizeof(*priv), GFP_KERNEL);
-+ if (!priv)
-+ return ERR_PTR(-ENOMEM);
-+
-+ priv->ptp_info = bcm_ptp_clock_info;
-+
-+ snprintf(priv->pin.name, sizeof(priv->pin.name), "SYNC_OUT");
-+ priv->ptp_info.pin_config = &priv->pin;
-+
-+ clock = ptp_clock_register(&priv->ptp_info, &phydev->mdio.dev);
-+ if (IS_ERR(clock))
-+ return ERR_CAST(clock);
-+ priv->ptp_clock = clock;
-+
-+ priv->phydev = phydev;
-+ bcm_ptp_init(priv);
-+
-+ return priv;
-+}
-+EXPORT_SYMBOL_GPL(bcm_ptp_probe);
-+
-+MODULE_LICENSE("GPL");
-diff --git a/drivers/net/phy/broadcom.c b/drivers/net/phy/broadcom.c
-index e36809aa6d30..876bc45ede60 100644
---- a/drivers/net/phy/broadcom.c
-+++ b/drivers/net/phy/broadcom.c
-@@ -27,6 +27,11 @@ MODULE_DESCRIPTION("Broadcom PHY driver");
- MODULE_AUTHOR("Maciej W. Rozycki");
- MODULE_LICENSE("GPL");
-
-+struct bcm54xx_phy_priv {
-+ u64 *stats;
-+ struct bcm_ptp_private *ptp;
-+};
-+
- static int bcm54xx_config_clock_delay(struct phy_device *phydev)
- {
- int rc, val;
-@@ -313,6 +318,22 @@ static void bcm54xx_adjust_rxrefclk(struct phy_device *phydev)
- bcm_phy_write_shadow(phydev, BCM54XX_SHD_APD, val);
- }
-
-+static void bcm54xx_ptp_stop(struct phy_device *phydev)
-+{
-+ struct bcm54xx_phy_priv *priv = phydev->priv;
-+
-+ if (priv->ptp)
-+ bcm_ptp_stop(priv->ptp);
-+}
-+
-+static void bcm54xx_ptp_config_init(struct phy_device *phydev)
-+{
-+ struct bcm54xx_phy_priv *priv = phydev->priv;
-+
-+ if (priv->ptp)
-+ bcm_ptp_config_init(phydev);
-+}
-+
- static int bcm54xx_config_init(struct phy_device *phydev)
- {
- int reg, err, val;
-@@ -390,6 +411,8 @@ static int bcm54xx_config_init(struct phy_device *phydev)
- bcm_phy_write_exp(phydev, BCM_EXP_MULTICOLOR, val);
- }
-
-+ bcm54xx_ptp_config_init(phydev);
-+
- return 0;
- }
-
-@@ -418,6 +441,8 @@ static int bcm54xx_suspend(struct phy_device *phydev)
- {
- int ret;
-
-+ bcm54xx_ptp_stop(phydev);
-+
- /* We cannot use a read/modify/write here otherwise the PHY gets into
- * a bad state where its LEDs keep flashing, thus defeating the purpose
- * of low power mode.
-@@ -741,10 +766,6 @@ static irqreturn_t brcm_fet_handle_interrupt(struct phy_device *phydev)
- return IRQ_HANDLED;
- }
-
--struct bcm54xx_phy_priv {
-- u64 *stats;
--};
--
- static int bcm54xx_phy_probe(struct phy_device *phydev)
- {
- struct bcm54xx_phy_priv *priv;
-@@ -761,6 +782,10 @@ static int bcm54xx_phy_probe(struct phy_device *phydev)
- if (!priv->stats)
- return -ENOMEM;
-
-+ priv->ptp = bcm_ptp_probe(phydev);
-+ if (IS_ERR(priv->ptp))
-+ return PTR_ERR(priv->ptp);
-+
- return 0;
- }
-
-diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
-index 2e68f50bc7ae..00e1d5bc83a5 100644
---- a/drivers/pci/quirks.c
-+++ b/drivers/pci/quirks.c
-@@ -4285,6 +4285,30 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9000,
- DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9084,
- quirk_bridge_cavm_thrx2_pcie_root);
-
-+/*
-+ * PCI BAR 5 is not setup correctly for the on-board AHCI controller
-+ * on Broadcom's Vulcan processor. Added a quirk to fix BAR 5 by
-+ * using BAR 4's resources which are populated correctly and NOT
-+ * actually used by the AHCI controller.
-+ */
-+static void quirk_fix_vulcan_ahci_bars(struct pci_dev *dev)
-+{
-+ struct resource *r = &dev->resource[4];
-+
-+ if (!(r->flags & IORESOURCE_MEM) || (r->start == 0))
-+ return;
-+
-+ /* Set BAR5 resource to BAR4 */
-+ dev->resource[5] = *r;
-+
-+ /* Update BAR5 in pci config space */
-+ pci_write_config_dword(dev, PCI_BASE_ADDRESS_5, r->start);
-+
-+ /* Clear BAR4's resource */
-+ memset(r, 0, sizeof(*r));
-+}
-+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9027, quirk_fix_vulcan_ahci_bars);
-+
- /*
- * Intersil/Techwell TW686[4589]-based video capture cards have an empty (zero)
- * class code. Fix it.
-diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
-index 5223d4c9afdf..39f14a5b78cd 100644
---- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
-+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
-@@ -1124,7 +1124,7 @@ static int rockchip_usb2phy_otg_port_init(struct rockchip_usb2phy *rphy,
- struct rockchip_usb2phy_port *rport,
- struct device_node *child_np)
- {
-- int ret;
-+ int ret, id;
-
- rport->port_id = USB2PHY_PORT_OTG;
- rport->port_cfg = &rphy->phy_cfg->port_cfgs[USB2PHY_PORT_OTG];
-@@ -1162,13 +1162,15 @@ static int rockchip_usb2phy_otg_port_init(struct rockchip_usb2phy *rphy,
-
- ret = devm_extcon_register_notifier(rphy->dev, rphy->edev,
- EXTCON_USB_HOST, &rport->event_nb);
-- if (ret)
-+ if (ret) {
- dev_err(rphy->dev, "register USB HOST notifier failed\n");
-+ goto out;
-+ }
-
- if (!of_property_read_bool(rphy->dev->of_node, "extcon")) {
- /* do initial sync of usb state */
-- ret = property_enabled(rphy->grf, &rport->port_cfg->utmi_id);
-- extcon_set_state_sync(rphy->edev, EXTCON_USB_HOST, !ret);
-+ id = property_enabled(rphy->grf, &rport->port_cfg->utmi_id);
-+ extcon_set_state_sync(rphy->edev, EXTCON_USB_HOST, !id);
- }
- }
-
-diff --git a/drivers/soc/bcm/bcm2835-power.c b/drivers/soc/bcm/bcm2835-power.c
-index 1e0041ec8132..5bcd047768b6 100644
---- a/drivers/soc/bcm/bcm2835-power.c
-+++ b/drivers/soc/bcm/bcm2835-power.c
-@@ -126,8 +126,7 @@
-
- #define ASB_AXI_BRDG_ID 0x20
-
--#define ASB_READ(reg) readl(power->asb + (reg))
--#define ASB_WRITE(reg, val) writel(PM_PASSWORD | (val), power->asb + (reg))
-+#define BCM2835_BRDG_ID 0x62726467
-
- struct bcm2835_power_domain {
- struct generic_pm_domain base;
-@@ -142,24 +141,41 @@ struct bcm2835_power {
- void __iomem *base;
- /* AXI Async bridge registers. */
- void __iomem *asb;
-+ /* RPiVid bridge registers. */
-+ void __iomem *rpivid_asb;
-
- struct genpd_onecell_data pd_xlate;
- struct bcm2835_power_domain domains[BCM2835_POWER_DOMAIN_COUNT];
- struct reset_controller_dev reset;
- };
-
--static int bcm2835_asb_enable(struct bcm2835_power *power, u32 reg)
-+static int bcm2835_asb_control(struct bcm2835_power *power, u32 reg, bool enable)
- {
-+ void __iomem *base = power->asb;
- u64 start;
-+ u32 val;
-
-- if (!reg)
-+ switch (reg) {
-+ case 0:
- return 0;
-+ case ASB_V3D_S_CTRL:
-+ case ASB_V3D_M_CTRL:
-+ if (power->rpivid_asb)
-+ base = power->rpivid_asb;
-+ break;
-+ }
-
- start = ktime_get_ns();
-
- /* Enable the module's async AXI bridges. */
-- ASB_WRITE(reg, ASB_READ(reg) & ~ASB_REQ_STOP);
-- while (ASB_READ(reg) & ASB_ACK) {
-+ if (enable) {
-+ val = readl(base + reg) & ~ASB_REQ_STOP;
-+ } else {
-+ val = readl(base + reg) | ASB_REQ_STOP;
-+ }
-+ writel(PM_PASSWORD | val, base + reg);
-+
-+ while (readl(base + reg) & ASB_ACK) {
- cpu_relax();
- if (ktime_get_ns() - start >= 1000)
- return -ETIMEDOUT;
-@@ -168,30 +184,24 @@ static int bcm2835_asb_enable(struct bcm2835_power *power, u32 reg)
- return 0;
- }
-
--static int bcm2835_asb_disable(struct bcm2835_power *power, u32 reg)
-+static int bcm2835_asb_enable(struct bcm2835_power *power, u32 reg)
- {
-- u64 start;
--
-- if (!reg)
-- return 0;
--
-- start = ktime_get_ns();
--
-- /* Enable the module's async AXI bridges. */
-- ASB_WRITE(reg, ASB_READ(reg) | ASB_REQ_STOP);
-- while (!(ASB_READ(reg) & ASB_ACK)) {
-- cpu_relax();
-- if (ktime_get_ns() - start >= 1000)
-- return -ETIMEDOUT;
-- }
-+ return bcm2835_asb_control(power, reg, true);
-+}
-
-- return 0;
-+static int bcm2835_asb_disable(struct bcm2835_power *power, u32 reg)
-+{
-+ return bcm2835_asb_control(power, reg, false);
- }
-
- static int bcm2835_power_power_off(struct bcm2835_power_domain *pd, u32 pm_reg)
- {
- struct bcm2835_power *power = pd->power;
-
-+ /* We don't run this on BCM2711 */
-+ if (power->rpivid_asb)
-+ return 0;
-+
- /* Enable functional isolation */
- PM_WRITE(pm_reg, PM_READ(pm_reg) & ~PM_ISFUNC);
-
-@@ -213,6 +223,10 @@ static int bcm2835_power_power_on(struct bcm2835_power_domain *pd, u32 pm_reg)
- int inrush;
- bool powok;
-
-+ /* We don't run this on BCM2711 */
-+ if (power->rpivid_asb)
-+ return 0;
-+
- /* If it was already powered on by the fw, leave it that way. */
- if (PM_READ(pm_reg) & PM_POWUP)
- return 0;
-@@ -626,13 +640,23 @@ static int bcm2835_power_probe(struct platform_device *pdev)
- power->dev = dev;
- power->base = pm->base;
- power->asb = pm->asb;
-+ power->rpivid_asb = pm->rpivid_asb;
-
-- id = ASB_READ(ASB_AXI_BRDG_ID);
-- if (id != 0x62726467 /* "BRDG" */) {
-+ id = readl(power->asb + ASB_AXI_BRDG_ID);
-+ if (id != BCM2835_BRDG_ID /* "BRDG" */) {
- dev_err(dev, "ASB register ID returned 0x%08x\n", id);
- return -ENODEV;
- }
-
-+ if (power->rpivid_asb) {
-+ id = readl(power->rpivid_asb + ASB_AXI_BRDG_ID);
-+ if (id != BCM2835_BRDG_ID /* "BRDG" */) {
-+ dev_err(dev, "RPiVid ASB register ID returned 0x%08x\n",
-+ id);
-+ return -ENODEV;
-+ }
-+ }
-+
- power->pd_xlate.domains = devm_kcalloc(dev,
- ARRAY_SIZE(power_domain_names),
- sizeof(*power->pd_xlate.domains),
-diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
-index 80b29f937c60..8eaebd6a15b8 100644
---- a/drivers/usb/core/hub.c
-+++ b/drivers/usb/core/hub.c
-@@ -5686,6 +5686,13 @@ static void hub_event(struct work_struct *work)
- (u16) hub->change_bits[0],
- (u16) hub->event_bits[0]);
-
-+ /* Don't disconnect USB-SATA on TrimSlice */
-+ if (strcmp(dev_name(hdev->bus->controller), "tegra-ehci.0") == 0) {
-+ if ((hdev->state == 7) && (hub->change_bits[0] == 0) &&
-+ (hub->event_bits[0] == 0x2))
-+ hub->event_bits[0] = 0;
-+ }
-+
- /* Lock the device, then check to see if we were
- * disconnected while waiting for the lock to succeed. */
- usb_lock_device(hdev);
-diff --git a/include/linux/efi.h b/include/linux/efi.h
-index 7d9b0bb47eb3..221776a5377a 100644
---- a/include/linux/efi.h
-+++ b/include/linux/efi.h
-@@ -43,6 +43,8 @@
- #define EFI_ABORTED (21 | (1UL << (BITS_PER_LONG-1)))
- #define EFI_SECURITY_VIOLATION (26 | (1UL << (BITS_PER_LONG-1)))
-
-+#define EFI_IS_ERROR(x) ((x) & (1UL << (BITS_PER_LONG-1)))
-+
- typedef unsigned long efi_status_t;
- typedef u8 efi_bool_t;
- typedef u16 efi_char16_t; /* UNICODE character */
-@@ -849,6 +851,14 @@ extern int __init efi_setup_pcdp_console(char *);
- #define EFI_MEM_ATTR 10 /* Did firmware publish an EFI_MEMORY_ATTRIBUTES table? */
- #define EFI_MEM_NO_SOFT_RESERVE 11 /* Is the kernel configured to ignore soft reservations? */
- #define EFI_PRESERVE_BS_REGIONS 12 /* Are EFI boot-services memory segments available? */
-+#define EFI_SECURE_BOOT 13 /* Are we in Secure Boot mode? */
-+
-+enum efi_secureboot_mode {
-+ efi_secureboot_mode_unset,
-+ efi_secureboot_mode_unknown,
-+ efi_secureboot_mode_disabled,
-+ efi_secureboot_mode_enabled,
-+};
-
- #ifdef CONFIG_EFI
- /*
-@@ -860,6 +870,8 @@ static inline bool efi_enabled(int feature)
- }
- extern void efi_reboot(enum reboot_mode reboot_mode, const char *__unused);
-
-+extern void __init efi_set_secure_boot(enum efi_secureboot_mode mode);
-+
- bool __pure __efi_soft_reserve_enabled(void);
-
- static inline bool __pure efi_soft_reserve_enabled(void)
-@@ -880,6 +892,8 @@ static inline bool efi_enabled(int feature)
- static inline void
- efi_reboot(enum reboot_mode reboot_mode, const char *__unused) {}
-
-+static inline void efi_set_secure_boot(enum efi_secureboot_mode mode) {}
-+
- static inline bool efi_soft_reserve_enabled(void)
- {
- return false;
-@@ -892,6 +906,7 @@ static inline bool efi_rt_services_supported(unsigned int mask)
- #endif
-
- extern int efi_status_to_err(efi_status_t status);
-+extern const char *efi_status_to_str(efi_status_t status);
-
- /*
- * Variable Attributes
-@@ -1144,13 +1159,6 @@ static inline bool efi_runtime_disabled(void) { return true; }
- extern void efi_call_virt_check_flags(unsigned long flags, const char *call);
- extern unsigned long efi_call_virt_save_flags(void);
-
--enum efi_secureboot_mode {
-- efi_secureboot_mode_unset,
-- efi_secureboot_mode_unknown,
-- efi_secureboot_mode_disabled,
-- efi_secureboot_mode_enabled,
--};
--
- static inline
- enum efi_secureboot_mode efi_get_secureboot_mode(efi_get_variable_t *get_var)
- {
-diff --git a/include/linux/lsm_hook_defs.h b/include/linux/lsm_hook_defs.h
-index 4e94755098f1..f97d4de2996f 100644
---- a/include/linux/lsm_hook_defs.h
-+++ b/include/linux/lsm_hook_defs.h
-@@ -394,6 +394,8 @@ LSM_HOOK(void, LSM_RET_VOID, bpf_prog_free_security, struct bpf_prog_aux *aux)
- #endif /* CONFIG_BPF_SYSCALL */
-
- LSM_HOOK(int, 0, locked_down, enum lockdown_reason what)
-+LSM_HOOK(int, 0, lock_kernel_down, const char *where, enum lockdown_reason level)
-+
-
- #ifdef CONFIG_PERF_EVENTS
- LSM_HOOK(int, 0, perf_event_open, struct perf_event_attr *attr, int type)
-diff --git a/include/linux/lsm_hooks.h b/include/linux/lsm_hooks.h
-index b681cfce6190..9cf4ac43050c 100644
---- a/include/linux/lsm_hooks.h
-+++ b/include/linux/lsm_hooks.h
-@@ -1550,6 +1550,12 @@
- *
- * @what: kernel feature being accessed
- *
-+ * @lock_kernel_down
-+ * Put the kernel into lock-down mode.
-+ *
-+ * @where: Where the lock-down is originating from (e.g. command line option)
-+ * @level: The lock-down level (can only increase)
-+ *
- * Security hooks for perf events
- *
- * @perf_event_open:
-diff --git a/include/linux/mfd/bcm2835-pm.h b/include/linux/mfd/bcm2835-pm.h
-index ed37dc40e82a..f70a810c55f7 100644
---- a/include/linux/mfd/bcm2835-pm.h
-+++ b/include/linux/mfd/bcm2835-pm.h
-@@ -9,6 +9,7 @@ struct bcm2835_pm {
- struct device *dev;
- void __iomem *base;
- void __iomem *asb;
-+ void __iomem *rpivid_asb;
- };
-
- #endif /* BCM2835_MFD_PM_H */
-diff --git a/include/linux/rmi.h b/include/linux/rmi.h
-index ab7eea01ab42..fff7c5f737fc 100644
---- a/include/linux/rmi.h
-+++ b/include/linux/rmi.h
-@@ -364,6 +364,7 @@ struct rmi_driver_data {
-
- struct rmi4_attn_data attn_data;
- DECLARE_KFIFO(attn_fifo, struct rmi4_attn_data, 16);
-+ struct work_struct attn_work;
- };
-
- int rmi_register_transport_device(struct rmi_transport_dev *xport);
-diff --git a/include/linux/security.h b/include/linux/security.h
-index 3cc127bb5bfd..2fecdfb03eb5 100644
---- a/include/linux/security.h
-+++ b/include/linux/security.h
-@@ -473,6 +473,7 @@ int security_inode_notifysecctx(struct inode *inode, void *ctx, u32 ctxlen);
- int security_inode_setsecctx(struct dentry *dentry, void *ctx, u32 ctxlen);
- int security_inode_getsecctx(struct inode *inode, void **ctx, u32 *ctxlen);
- int security_locked_down(enum lockdown_reason what);
-+int security_lock_kernel_down(const char *where, enum lockdown_reason level);
- #else /* CONFIG_SECURITY */
-
- static inline int call_blocking_lsm_notifier(enum lsm_event event, void *data)
-@@ -1349,6 +1350,10 @@ static inline int security_locked_down(enum lockdown_reason what)
- {
- return 0;
- }
-+static inline int security_lock_kernel_down(const char *where, enum lockdown_reason level)
-+{
-+ return 0;
-+}
- #endif /* CONFIG_SECURITY */
-
- #if defined(CONFIG_SECURITY) && defined(CONFIG_WATCH_QUEUE)
-diff --git a/init/Kconfig b/init/Kconfig
-index c7900e8975f1..ea721c12c251 100644
---- a/init/Kconfig
-+++ b/init/Kconfig
-@@ -1678,7 +1678,7 @@ config AIO
- this option saves about 7k.
-
- config IO_URING
-- bool "Enable IO uring support" if EXPERT
-+ bool "Enable IO uring support"
- select IO_WQ
- default y
- help
-diff --git a/kernel/module/signing.c b/kernel/module/signing.c
-index a2ff4242e623..f0d2be1ee4f1 100644
---- a/kernel/module/signing.c
-+++ b/kernel/module/signing.c
-@@ -61,10 +61,17 @@ int mod_verify_sig(const void *mod, struct load_info *info)
- modlen -= sig_len + sizeof(ms);
- info->len = modlen;
-
-- return verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
-+ ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
- VERIFY_USE_SECONDARY_KEYRING,
- VERIFYING_MODULE_SIGNATURE,
- NULL, NULL);
-+ if (ret == -ENOKEY && IS_ENABLED(CONFIG_INTEGRITY_PLATFORM_KEYRING)) {
-+ ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
-+ VERIFY_USE_PLATFORM_KEYRING,
-+ VERIFYING_MODULE_SIGNATURE,
-+ NULL, NULL);
-+ }
-+ return ret;
- }
-
- int module_sig_check(struct load_info *info, int flags)
-diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
-index 81e5bcdbbe94..ff74e2a55e8f 100644
---- a/net/bluetooth/hci_event.c
-+++ b/net/bluetooth/hci_event.c
-@@ -3999,6 +3999,26 @@ static void hci_cmd_complete_evt(struct hci_dev *hdev, void *data,
- break;
- }
- }
-+ if (i == ARRAY_SIZE(hci_cc_table)) {
-+ /* Unknown opcode, assume byte 0 contains the status, so
-+ * that e.g. __hci_cmd_sync() properly returns errors
-+ * for vendor specific commands send by HCI drivers.
-+ *
-+ * Note that the specification does not specify that
-+ * byte 0 is the status:
-+ *
-+ * BLUETOOTH CORE SPECIFICATION Version 5.3 | Vol 4, Part E
-+ * page 2189:
-+ *
-+ * Return_Parameters:
-+ * Size: Depends on command
-+ *
-+ * For now using byte 0 seems to work fine, but in the future
-+ * this may need to be updated so that drivers using vendor
-+ * commands can specify their own completion handler.
-+ */
-+ *status = skb->data[0];
-+ }
-
- if (i == ARRAY_SIZE(hci_cc_table)) {
- /* Unknown opcode, assume byte 0 contains the status, so
-diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
-index db7b2503f068..36653cd5964a 100644
---- a/net/ipv4/fib_semantics.c
-+++ b/net/ipv4/fib_semantics.c
-@@ -888,13 +888,13 @@ int fib_nh_match(struct net *net, struct fib_config *cfg, struct fib_info *fi,
- return 1;
- }
-
-+ /* cannot match on nexthop object attributes */
-+ if (fi->nh)
-+ return 1;
-+
- if (cfg->fc_oif || cfg->fc_gw_family) {
- struct fib_nh *nh;
-
-- /* cannot match on nexthop object attributes */
-- if (fi->nh)
-- return 1;
--
- nh = fib_info_nh(fi, 0);
- if (cfg->fc_encap) {
- if (fib_encap_match(net, cfg->fc_encap_type,
-diff --git a/scripts/pahole-flags.sh b/scripts/pahole-flags.sh
-index 0d99ef17e4a5..d4f3d63cb434 100755
---- a/scripts/pahole-flags.sh
-+++ b/scripts/pahole-flags.sh
-@@ -20,4 +20,8 @@ if [ "${pahole_ver}" -ge "122" ]; then
- extra_paholeopt="${extra_paholeopt} -j"
- fi
-
-+if [ "${pahole_ver}" -ge "124" ]; then
-+ extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_enum64"
-+fi
-+
- echo ${extra_paholeopt}
-diff --git a/scripts/tags.sh b/scripts/tags.sh
-index 01fab3d4f90b..2ae5dfc904f9 100755
---- a/scripts/tags.sh
-+++ b/scripts/tags.sh
-@@ -16,6 +16,8 @@ fi
- ignore="$(echo "$RCS_FIND_IGNORE" | sed 's|\\||g' )"
- # tags and cscope files should also ignore MODVERSION *.mod.c files
- ignore="$ignore ( -name *.mod.c ) -prune -o"
-+# RHEL tags and cscope should also ignore redhat/rpm
-+ignore="$ignore ( -path redhat/rpm ) -prune -o"
-
- # Use make KBUILD_ABS_SRCTREE=1 {tags|cscope}
- # to force full paths for a non-O= build
-diff --git a/security/integrity/platform_certs/load_uefi.c b/security/integrity/platform_certs/load_uefi.c
-index b78753d27d8e..f0b37800431a 100644
---- a/security/integrity/platform_certs/load_uefi.c
-+++ b/security/integrity/platform_certs/load_uefi.c
-@@ -73,7 +73,8 @@ static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid,
- return NULL;
-
- if (*status != EFI_BUFFER_TOO_SMALL) {
-- pr_err("Couldn't get size: 0x%lx\n", *status);
-+ pr_err("Couldn't get size: %s (0x%lx)\n",
-+ efi_status_to_str(*status), *status);
- return NULL;
- }
-
-@@ -84,7 +85,8 @@ static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid,
- *status = efi.get_variable(name, guid, NULL, &lsize, db);
- if (*status != EFI_SUCCESS) {
- kfree(db);
-- pr_err("Error reading db var: 0x%lx\n", *status);
-+ pr_err("Error reading db var: %s (0x%lx)\n",
-+ efi_status_to_str(*status), *status);
- return NULL;
- }
-
-diff --git a/security/lockdown/Kconfig b/security/lockdown/Kconfig
-index e84ddf484010..d0501353a4b9 100644
---- a/security/lockdown/Kconfig
-+++ b/security/lockdown/Kconfig
-@@ -16,6 +16,19 @@ config SECURITY_LOCKDOWN_LSM_EARLY
- subsystem is fully initialised. If enabled, lockdown will
- unconditionally be called before any other LSMs.
-
-+config LOCK_DOWN_IN_EFI_SECURE_BOOT
-+ bool "Lock down the kernel in EFI Secure Boot mode"
-+ default n
-+ depends on EFI && SECURITY_LOCKDOWN_LSM_EARLY
-+ help
-+ UEFI Secure Boot provides a mechanism for ensuring that the firmware
-+ will only load signed bootloaders and kernels. Secure boot mode may
-+ be determined from EFI variables provided by the system firmware if
-+ not indicated by the boot parameters.
-+
-+ Enabling this option results in kernel lockdown being triggered if
-+ EFI Secure Boot is set.
-+
- choice
- prompt "Kernel default lockdown mode"
- default LOCK_DOWN_KERNEL_FORCE_NONE
-diff --git a/security/lockdown/lockdown.c b/security/lockdown/lockdown.c
-index 87cbdc64d272..18555cf18da7 100644
---- a/security/lockdown/lockdown.c
-+++ b/security/lockdown/lockdown.c
-@@ -73,6 +73,7 @@ static int lockdown_is_locked_down(enum lockdown_reason what)
-
- static struct security_hook_list lockdown_hooks[] __lsm_ro_after_init = {
- LSM_HOOK_INIT(locked_down, lockdown_is_locked_down),
-+ LSM_HOOK_INIT(lock_kernel_down, lock_kernel_down),
- };
-
- static int __init lockdown_lsm_init(void)
-diff --git a/security/security.c b/security/security.c
-index 8b62654ff3f9..1c03d1cff35c 100644
---- a/security/security.c
-+++ b/security/security.c
-@@ -2617,6 +2617,12 @@ int security_locked_down(enum lockdown_reason what)
- }
- EXPORT_SYMBOL(security_locked_down);
-
-+int security_lock_kernel_down(const char *where, enum lockdown_reason level)
-+{
-+ return call_int_hook(lock_kernel_down, 0, where, level);
-+}
-+EXPORT_SYMBOL(security_lock_kernel_down);
-+
- #ifdef CONFIG_PERF_EVENTS
- int security_perf_event_open(struct perf_event_attr *attr, int type)
- {
-diff --git a/tools/testing/selftests/net/fib_nexthops.sh b/tools/testing/selftests/net/fib_nexthops.sh
-index d5a0dd548989..ee5e98204d3d 100755
---- a/tools/testing/selftests/net/fib_nexthops.sh
-+++ b/tools/testing/selftests/net/fib_nexthops.sh
-@@ -1223,6 +1223,11 @@ ipv4_fcnal()
- log_test $rc 0 "Delete nexthop route warning"
- run_cmd "$IP route delete 172.16.101.1/32 nhid 12"
- run_cmd "$IP nexthop del id 12"
-+
-+ run_cmd "$IP nexthop add id 21 via 172.16.1.6 dev veth1"
-+ run_cmd "$IP ro add 172.16.101.0/24 nhid 21"
-+ run_cmd "$IP ro del 172.16.101.0/24 nexthop via 172.16.1.7 dev veth1 nexthop via 172.16.1.8 dev veth1"
-+ log_test $? 2 "Delete multipath route with only nh id based entry"
- }
-
- ipv4_grp_fcnal()
diff --git a/SOURCES/patch-6.0-redhat.patch b/SOURCES/patch-6.0-redhat.patch
new file mode 100644
index 0000000..b1ab036
--- /dev/null
+++ b/SOURCES/patch-6.0-redhat.patch
@@ -0,0 +1,1573 @@
+ Makefile | 4 +
+ arch/arm/Kconfig | 4 +-
+ arch/arm64/Kconfig | 3 +-
+ arch/s390/include/asm/ipl.h | 1 +
+ arch/s390/kernel/ipl.c | 5 +
+ arch/s390/kernel/setup.c | 4 +
+ arch/x86/kernel/setup.c | 22 ++--
+ drivers/acpi/apei/hest.c | 8 ++
+ drivers/acpi/irq.c | 17 ++-
+ drivers/acpi/scan.c | 9 ++
+ drivers/ata/libahci.c | 18 +++
+ drivers/char/ipmi/ipmi_dmi.c | 15 +++
+ drivers/char/ipmi/ipmi_msghandler.c | 16 ++-
+ drivers/firmware/efi/Makefile | 1 +
+ drivers/firmware/efi/efi.c | 124 +++++++++++++++------
+ drivers/firmware/efi/secureboot.c | 38 +++++++
+ drivers/firmware/sysfb.c | 18 ++-
+ drivers/gpu/drm/vc4/vc4_hdmi.c | 46 +++++++-
+ drivers/gpu/drm/vc4/vc4_hdmi.h | 1 +
+ drivers/hid/hid-rmi.c | 64 -----------
+ drivers/hwtracing/coresight/coresight-etm4x-core.c | 19 ++++
+ drivers/input/rmi4/rmi_driver.c | 124 ++++++++++++---------
+ drivers/iommu/iommu.c | 22 ++++
+ drivers/nvme/host/core.c | 22 +++-
+ drivers/nvme/host/multipath.c | 19 ++--
+ drivers/nvme/host/nvme.h | 4 +
+ drivers/pci/quirks.c | 24 ++++
+ drivers/usb/core/hub.c | 7 ++
+ include/linux/efi.h | 22 ++--
+ include/linux/lsm_hook_defs.h | 2 +
+ include/linux/lsm_hooks.h | 6 +
+ include/linux/rmi.h | 1 +
+ include/linux/security.h | 5 +
+ init/Kconfig | 2 +-
+ kernel/module/signing.c | 9 +-
+ net/ipv4/fib_semantics.c | 8 +-
+ scripts/tags.sh | 2 +
+ security/integrity/platform_certs/load_uefi.c | 6 +-
+ security/lockdown/Kconfig | 13 +++
+ security/lockdown/lockdown.c | 1 +
+ security/security.c | 6 +
+ tools/testing/selftests/net/fib_nexthops.sh | 5 +
+ 42 files changed, 555 insertions(+), 192 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 62a7398c8d06..a4d699f4c09d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -18,6 +18,10 @@ $(if $(filter __%, $(MAKECMDGOALS)), \
+ PHONY := __all
+ __all:
+
++# Set RHEL variables
++# Use this spot to avoid future merge conflicts
++include Makefile.rhelver
++
+ # We are using a recursive build, so we need to do a little thinking
+ # to get the ordering right.
+ #
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index 11ecf09aadc8..5d91c8c3cd49 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -1387,9 +1387,9 @@ config HIGHMEM
+ If unsure, say n.
+
+ config HIGHPTE
+- bool "Allocate 2nd-level pagetables from highmem" if EXPERT
++ bool "Allocate 2nd-level pagetables from highmem"
+ depends on HIGHMEM
+- default y
++ default n
+ help
+ The VM uses one page of physical memory for each page table.
+ For systems with a lot of processes, this can use a lot of
+diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
+index 3795eb5ba1cd..55d299a03150 100644
+--- a/arch/arm64/Kconfig
++++ b/arch/arm64/Kconfig
+@@ -1199,7 +1199,7 @@ endchoice
+
+ config ARM64_FORCE_52BIT
+ bool "Force 52-bit virtual addresses for userspace"
+- depends on ARM64_VA_BITS_52 && EXPERT
++ depends on ARM64_VA_BITS_52
+ help
+ For systems with 52-bit userspace VAs enabled, the kernel will attempt
+ to maintain compatibility with older software by providing 48-bit VAs
+@@ -1438,6 +1438,7 @@ config XEN
+ config FORCE_MAX_ZONEORDER
+ int
+ default "14" if ARM64_64K_PAGES
++ default "13" if (ARCH_THUNDER && !ARM64_64K_PAGES)
+ default "12" if ARM64_16K_PAGES
+ default "11"
+ help
+diff --git a/arch/s390/include/asm/ipl.h b/arch/s390/include/asm/ipl.h
+index a405b6bb89fb..50827b341fd7 100644
+--- a/arch/s390/include/asm/ipl.h
++++ b/arch/s390/include/asm/ipl.h
+@@ -128,6 +128,7 @@ int ipl_report_add_component(struct ipl_report *report, struct kexec_buf *kbuf,
+ unsigned char flags, unsigned short cert);
+ int ipl_report_add_certificate(struct ipl_report *report, void *key,
+ unsigned long addr, unsigned long len);
++bool ipl_get_secureboot(void);
+
+ /*
+ * DIAG 308 support
+diff --git a/arch/s390/kernel/ipl.c b/arch/s390/kernel/ipl.c
+index 1cc85b8ff42e..b7ee128c67ce 100644
+--- a/arch/s390/kernel/ipl.c
++++ b/arch/s390/kernel/ipl.c
+@@ -2216,3 +2216,8 @@ int ipl_report_free(struct ipl_report *report)
+ }
+
+ #endif
++
++bool ipl_get_secureboot(void)
++{
++ return !!ipl_secure_flag;
++}
+diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
+index bbd4bde4f65d..dd60114ae9c1 100644
+--- a/arch/s390/kernel/setup.c
++++ b/arch/s390/kernel/setup.c
+@@ -49,6 +49,7 @@
+ #include <linux/memory.h>
+ #include <linux/compat.h>
+ #include <linux/start_kernel.h>
++#include <linux/security.h>
+ #include <linux/hugetlb.h>
+ #include <linux/kmemleak.h>
+
+@@ -968,6 +969,9 @@ void __init setup_arch(char **cmdline_p)
+
+ log_component_list();
+
++ if (ipl_get_secureboot())
++ security_lock_kernel_down("Secure IPL mode", LOCKDOWN_INTEGRITY_MAX);
++
+ /* Have one command line that is parsed and saved in /proc/cmdline */
+ /* boot_command_line has been already set up in early.c */
+ *cmdline_p = boot_command_line;
+diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
+index 216fee7144ee..55e817aa000d 100644
+--- a/arch/x86/kernel/setup.c
++++ b/arch/x86/kernel/setup.c
+@@ -21,6 +21,7 @@
+ #include <linux/root_dev.h>
+ #include <linux/hugetlb.h>
+ #include <linux/tboot.h>
++#include <linux/security.h>
+ #include <linux/usb/xhci-dbgp.h>
+ #include <linux/static_call.h>
+ #include <linux/swiotlb.h>
+@@ -1036,6 +1037,13 @@ void __init setup_arch(char **cmdline_p)
+ if (efi_enabled(EFI_BOOT))
+ efi_init();
+
++ efi_set_secure_boot(boot_params.secure_boot);
++
++#ifdef CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT
++ if (efi_enabled(EFI_SECURE_BOOT))
++ security_lock_kernel_down("EFI Secure Boot mode", LOCKDOWN_INTEGRITY_MAX);
++#endif
++
+ dmi_setup();
+
+ /*
+@@ -1205,19 +1213,7 @@ void __init setup_arch(char **cmdline_p)
+ /* Allocate bigger log buffer */
+ setup_log_buf(1);
+
+- if (efi_enabled(EFI_BOOT)) {
+- switch (boot_params.secure_boot) {
+- case efi_secureboot_mode_disabled:
+- pr_info("Secure boot disabled\n");
+- break;
+- case efi_secureboot_mode_enabled:
+- pr_info("Secure boot enabled\n");
+- break;
+- default:
+- pr_info("Secure boot could not be determined\n");
+- break;
+- }
+- }
++ efi_set_secure_boot(boot_params.secure_boot);
+
+ reserve_initrd();
+
+diff --git a/drivers/acpi/apei/hest.c b/drivers/acpi/apei/hest.c
+index 6aef1ee5e1bd..8f146b1b4972 100644
+--- a/drivers/acpi/apei/hest.c
++++ b/drivers/acpi/apei/hest.c
+@@ -96,6 +96,14 @@ static int apei_hest_parse(apei_hest_func_t func, void *data)
+ if (hest_disable || !hest_tab)
+ return -EINVAL;
+
++#ifdef CONFIG_ARM64
++ /* Ignore broken firmware */
++ if (!strncmp(hest_tab->header.oem_id, "HPE ", 6) &&
++ !strncmp(hest_tab->header.oem_table_id, "ProLiant", 8) &&
++ MIDR_IMPLEMENTOR(read_cpuid_id()) == ARM_CPU_IMP_APM)
++ return -EINVAL;
++#endif
++
+ hest_hdr = (struct acpi_hest_header *)(hest_tab + 1);
+ for (i = 0; i < hest_tab->error_source_count; i++) {
+ len = hest_esrc_len(hest_hdr);
+diff --git a/drivers/acpi/irq.c b/drivers/acpi/irq.c
+index dabe45eba055..82cf1ddf25d6 100644
+--- a/drivers/acpi/irq.c
++++ b/drivers/acpi/irq.c
+@@ -137,6 +137,7 @@ struct acpi_irq_parse_one_ctx {
+ unsigned int index;
+ unsigned long *res_flags;
+ struct irq_fwspec *fwspec;
++ bool skip_producer_check;
+ };
+
+ /**
+@@ -208,7 +209,8 @@ static acpi_status acpi_irq_parse_one_cb(struct acpi_resource *ares,
+ return AE_CTRL_TERMINATE;
+ case ACPI_RESOURCE_TYPE_EXTENDED_IRQ:
+ eirq = &ares->data.extended_irq;
+- if (eirq->producer_consumer == ACPI_PRODUCER)
++ if (!ctx->skip_producer_check &&
++ eirq->producer_consumer == ACPI_PRODUCER)
+ return AE_OK;
+ if (ctx->index >= eirq->interrupt_count) {
+ ctx->index -= eirq->interrupt_count;
+@@ -244,8 +246,19 @@ static acpi_status acpi_irq_parse_one_cb(struct acpi_resource *ares,
+ static int acpi_irq_parse_one(acpi_handle handle, unsigned int index,
+ struct irq_fwspec *fwspec, unsigned long *flags)
+ {
+- struct acpi_irq_parse_one_ctx ctx = { -EINVAL, index, flags, fwspec };
++ struct acpi_irq_parse_one_ctx ctx = { -EINVAL, index, flags, fwspec, false };
+
++ /*
++ * Firmware on arm64-based HPE m400 platform incorrectly marks
++ * its UART interrupt as ACPI_PRODUCER rather than ACPI_CONSUMER.
++ * Don't do the producer/consumer check for that device.
++ */
++ if (IS_ENABLED(CONFIG_ARM64)) {
++ struct acpi_device *adev = acpi_bus_get_acpi_device(handle);
++
++ if (adev && !strcmp(acpi_device_hid(adev), "APMC0D08"))
++ ctx.skip_producer_check = true;
++ }
+ acpi_walk_resources(handle, METHOD_NAME__CRS, acpi_irq_parse_one_cb, &ctx);
+ return ctx.rc;
+ }
+diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
+index 42cec8120f18..c6dc77dba6b6 100644
+--- a/drivers/acpi/scan.c
++++ b/drivers/acpi/scan.c
+@@ -1752,6 +1752,15 @@ static bool acpi_device_enumeration_by_parent(struct acpi_device *device)
+ if (!acpi_match_device_ids(device, ignore_serial_bus_ids))
+ return false;
+
++ /*
++ * Firmware on some arm64 X-Gene platforms will make the UART
++ * device appear as both a UART and a slave of that UART. Just
++ * bail out here for X-Gene UARTs.
++ */
++ if (IS_ENABLED(CONFIG_ARM64) &&
++ !strcmp(acpi_device_hid(device), "APMC0D08"))
++ return false;
++
+ INIT_LIST_HEAD(&resource_list);
+ acpi_dev_get_resources(device, &resource_list,
+ acpi_check_serial_bus_slave,
+diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
+index cf8c7fd59ada..28a8189be64f 100644
+--- a/drivers/ata/libahci.c
++++ b/drivers/ata/libahci.c
+@@ -690,6 +690,24 @@ int ahci_stop_engine(struct ata_port *ap)
+ tmp &= ~PORT_CMD_START;
+ writel(tmp, port_mmio + PORT_CMD);
+
++#ifdef CONFIG_ARM64
++ /* Rev Ax of Cavium CN99XX needs a hack for port stop */
++ if (dev_is_pci(ap->host->dev) &&
++ to_pci_dev(ap->host->dev)->vendor == 0x14e4 &&
++ to_pci_dev(ap->host->dev)->device == 0x9027 &&
++ midr_is_cpu_model_range(read_cpuid_id(),
++ MIDR_CPU_MODEL(ARM_CPU_IMP_BRCM, BRCM_CPU_PART_VULCAN),
++ MIDR_CPU_VAR_REV(0, 0),
++ MIDR_CPU_VAR_REV(0, MIDR_REVISION_MASK))) {
++ tmp = readl(hpriv->mmio + 0x8000);
++ udelay(100);
++ writel(tmp | (1 << 26), hpriv->mmio + 0x8000);
++ udelay(100);
++ writel(tmp & ~(1 << 26), hpriv->mmio + 0x8000);
++ dev_warn(ap->host->dev, "CN99XX SATA reset workaround applied\n");
++ }
++#endif
++
+ /* wait for engine to stop. This could be as long as 500 msec */
+ tmp = ata_wait_register(ap, port_mmio + PORT_CMD,
+ PORT_CMD_LIST_ON, PORT_CMD_LIST_ON, 1, 500);
+diff --git a/drivers/char/ipmi/ipmi_dmi.c b/drivers/char/ipmi/ipmi_dmi.c
+index bbf7029e224b..cf7faa970dd6 100644
+--- a/drivers/char/ipmi/ipmi_dmi.c
++++ b/drivers/char/ipmi/ipmi_dmi.c
+@@ -215,6 +215,21 @@ static int __init scan_for_dmi_ipmi(void)
+ {
+ const struct dmi_device *dev = NULL;
+
++#ifdef CONFIG_ARM64
++ /* RHEL-only
++ * If this is ARM-based HPE m400, return now, because that platform
++ * reports the host-side ipmi address as intel port-io space, which
++ * does not exist in the ARM architecture.
++ */
++ const char *dmistr = dmi_get_system_info(DMI_PRODUCT_NAME);
++
++ if (dmistr && (strcmp("ProLiant m400 Server", dmistr) == 0)) {
++ pr_debug("%s does not support host ipmi\n", dmistr);
++ return 0;
++ }
++ /* END RHEL-only */
++#endif
++
+ while ((dev = dmi_find_device(DMI_DEV_TYPE_IPMI, NULL, dev)))
+ dmi_decode_ipmi((const struct dmi_header *) dev->device_data);
+
+diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
+index 703433493c85..6b1b102b9b7d 100644
+--- a/drivers/char/ipmi/ipmi_msghandler.c
++++ b/drivers/char/ipmi/ipmi_msghandler.c
+@@ -35,6 +35,7 @@
+ #include <linux/uuid.h>
+ #include <linux/nospec.h>
+ #include <linux/vmalloc.h>
++#include <linux/dmi.h>
+ #include <linux/delay.h>
+
+ #define IPMI_DRIVER_VERSION "39.2"
+@@ -5516,8 +5517,21 @@ static int __init ipmi_init_msghandler_mod(void)
+ {
+ int rv;
+
+- pr_info("version " IPMI_DRIVER_VERSION "\n");
++#ifdef CONFIG_ARM64
++ /* RHEL-only
++ * If this is ARM-based HPE m400, return now, because that platform
++ * reports the host-side ipmi address as intel port-io space, which
++ * does not exist in the ARM architecture.
++ */
++ const char *dmistr = dmi_get_system_info(DMI_PRODUCT_NAME);
+
++ if (dmistr && (strcmp("ProLiant m400 Server", dmistr) == 0)) {
++ pr_debug("%s does not support host ipmi\n", dmistr);
++ return -ENOSYS;
++ }
++ /* END RHEL-only */
++#endif
++ pr_info("version " IPMI_DRIVER_VERSION "\n");
+ mutex_lock(&ipmi_interfaces_mutex);
+ rv = ipmi_register_driver();
+ mutex_unlock(&ipmi_interfaces_mutex);
+diff --git a/drivers/firmware/efi/Makefile b/drivers/firmware/efi/Makefile
+index 8d151e332584..bd29fe4ddbf3 100644
+--- a/drivers/firmware/efi/Makefile
++++ b/drivers/firmware/efi/Makefile
+@@ -27,6 +27,7 @@ obj-$(CONFIG_EFI_FAKE_MEMMAP) += fake_map.o
+ obj-$(CONFIG_EFI_BOOTLOADER_CONTROL) += efibc.o
+ obj-$(CONFIG_EFI_TEST) += test/
+ obj-$(CONFIG_EFI_DEV_PATH_PARSER) += dev-path-parser.o
++obj-$(CONFIG_EFI) += secureboot.o
+ obj-$(CONFIG_APPLE_PROPERTIES) += apple-properties.o
+ obj-$(CONFIG_EFI_RCI2_TABLE) += rci2-table.o
+ obj-$(CONFIG_EFI_EMBEDDED_FIRMWARE) += embedded-firmware.o
+diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
+index aa6d109fac08..a606fcc42649 100644
+--- a/drivers/firmware/efi/efi.c
++++ b/drivers/firmware/efi/efi.c
+@@ -31,6 +31,7 @@
+ #include <linux/ucs2_string.h>
+ #include <linux/memblock.h>
+ #include <linux/security.h>
++#include <linux/bsearch.h>
+
+ #include <asm/early_ioremap.h>
+
+@@ -866,40 +867,101 @@ int efi_mem_type(unsigned long phys_addr)
+ }
+ #endif
+
++struct efi_error_code {
++ efi_status_t status;
++ int errno;
++ const char *description;
++};
++
++static const struct efi_error_code efi_error_codes[] = {
++ { EFI_SUCCESS, 0, "Success"},
++#if 0
++ { EFI_LOAD_ERROR, -EPICK_AN_ERRNO, "Load Error"},
++#endif
++ { EFI_INVALID_PARAMETER, -EINVAL, "Invalid Parameter"},
++ { EFI_UNSUPPORTED, -ENOSYS, "Unsupported"},
++ { EFI_BAD_BUFFER_SIZE, -ENOSPC, "Bad Buffer Size"},
++ { EFI_BUFFER_TOO_SMALL, -ENOSPC, "Buffer Too Small"},
++ { EFI_NOT_READY, -EAGAIN, "Not Ready"},
++ { EFI_DEVICE_ERROR, -EIO, "Device Error"},
++ { EFI_WRITE_PROTECTED, -EROFS, "Write Protected"},
++ { EFI_OUT_OF_RESOURCES, -ENOMEM, "Out of Resources"},
++#if 0
++ { EFI_VOLUME_CORRUPTED, -EPICK_AN_ERRNO, "Volume Corrupt"},
++ { EFI_VOLUME_FULL, -EPICK_AN_ERRNO, "Volume Full"},
++ { EFI_NO_MEDIA, -EPICK_AN_ERRNO, "No Media"},
++ { EFI_MEDIA_CHANGED, -EPICK_AN_ERRNO, "Media changed"},
++#endif
++ { EFI_NOT_FOUND, -ENOENT, "Not Found"},
++#if 0
++ { EFI_ACCESS_DENIED, -EPICK_AN_ERRNO, "Access Denied"},
++ { EFI_NO_RESPONSE, -EPICK_AN_ERRNO, "No Response"},
++ { EFI_NO_MAPPING, -EPICK_AN_ERRNO, "No mapping"},
++ { EFI_TIMEOUT, -EPICK_AN_ERRNO, "Time out"},
++ { EFI_NOT_STARTED, -EPICK_AN_ERRNO, "Not started"},
++ { EFI_ALREADY_STARTED, -EPICK_AN_ERRNO, "Already started"},
++#endif
++ { EFI_ABORTED, -EINTR, "Aborted"},
++#if 0
++ { EFI_ICMP_ERROR, -EPICK_AN_ERRNO, "ICMP Error"},
++ { EFI_TFTP_ERROR, -EPICK_AN_ERRNO, "TFTP Error"},
++ { EFI_PROTOCOL_ERROR, -EPICK_AN_ERRNO, "Protocol Error"},
++ { EFI_INCOMPATIBLE_VERSION, -EPICK_AN_ERRNO, "Incompatible Version"},
++#endif
++ { EFI_SECURITY_VIOLATION, -EACCES, "Security Policy Violation"},
++#if 0
++ { EFI_CRC_ERROR, -EPICK_AN_ERRNO, "CRC Error"},
++ { EFI_END_OF_MEDIA, -EPICK_AN_ERRNO, "End of Media"},
++ { EFI_END_OF_FILE, -EPICK_AN_ERRNO, "End of File"},
++ { EFI_INVALID_LANGUAGE, -EPICK_AN_ERRNO, "Invalid Languages"},
++ { EFI_COMPROMISED_DATA, -EPICK_AN_ERRNO, "Compromised Data"},
++
++ // warnings
++ { EFI_WARN_UNKOWN_GLYPH, -EPICK_AN_ERRNO, "Warning Unknown Glyph"},
++ { EFI_WARN_DELETE_FAILURE, -EPICK_AN_ERRNO, "Warning Delete Failure"},
++ { EFI_WARN_WRITE_FAILURE, -EPICK_AN_ERRNO, "Warning Write Failure"},
++ { EFI_WARN_BUFFER_TOO_SMALL, -EPICK_AN_ERRNO, "Warning Buffer Too Small"},
++#endif
++};
++
++static int
++efi_status_cmp_bsearch(const void *key, const void *item)
++{
++ u64 status = (u64)(uintptr_t)key;
++ struct efi_error_code *code = (struct efi_error_code *)item;
++
++ if (status < code->status)
++ return -1;
++ if (status > code->status)
++ return 1;
++ return 0;
++}
++
+ int efi_status_to_err(efi_status_t status)
+ {
+- int err;
+-
+- switch (status) {
+- case EFI_SUCCESS:
+- err = 0;
+- break;
+- case EFI_INVALID_PARAMETER:
+- err = -EINVAL;
+- break;
+- case EFI_OUT_OF_RESOURCES:
+- err = -ENOSPC;
+- break;
+- case EFI_DEVICE_ERROR:
+- err = -EIO;
+- break;
+- case EFI_WRITE_PROTECTED:
+- err = -EROFS;
+- break;
+- case EFI_SECURITY_VIOLATION:
+- err = -EACCES;
+- break;
+- case EFI_NOT_FOUND:
+- err = -ENOENT;
+- break;
+- case EFI_ABORTED:
+- err = -EINTR;
+- break;
+- default:
+- err = -EINVAL;
+- }
++ struct efi_error_code *found;
++ size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code);
+
+- return err;
++ found = bsearch((void *)(uintptr_t)status, efi_error_codes,
++ sizeof(struct efi_error_code), num,
++ efi_status_cmp_bsearch);
++ if (!found)
++ return -EINVAL;
++ return found->errno;
++}
++
++const char *
++efi_status_to_str(efi_status_t status)
++{
++ struct efi_error_code *found;
++ size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code);
++
++ found = bsearch((void *)(uintptr_t)status, efi_error_codes,
++ sizeof(struct efi_error_code), num,
++ efi_status_cmp_bsearch);
++ if (!found)
++ return "Unknown error code";
++ return found->description;
+ }
+ EXPORT_SYMBOL_GPL(efi_status_to_err);
+
+diff --git a/drivers/firmware/efi/secureboot.c b/drivers/firmware/efi/secureboot.c
+new file mode 100644
+index 000000000000..de0a3714a5d4
+--- /dev/null
++++ b/drivers/firmware/efi/secureboot.c
+@@ -0,0 +1,38 @@
++/* Core kernel secure boot support.
++ *
++ * Copyright (C) 2017 Red Hat, Inc. All Rights Reserved.
++ * Written by David Howells (dhowells@redhat.com)
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public Licence
++ * as published by the Free Software Foundation; either version
++ * 2 of the Licence, or (at your option) any later version.
++ */
++
++#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
++
++#include <linux/efi.h>
++#include <linux/kernel.h>
++#include <linux/printk.h>
++
++/*
++ * Decide what to do when UEFI secure boot mode is enabled.
++ */
++void __init efi_set_secure_boot(enum efi_secureboot_mode mode)
++{
++ if (efi_enabled(EFI_BOOT)) {
++ switch (mode) {
++ case efi_secureboot_mode_disabled:
++ pr_info("Secure boot disabled\n");
++ break;
++ case efi_secureboot_mode_enabled:
++ set_bit(EFI_SECURE_BOOT, &efi.flags);
++ pr_info("Secure boot enabled\n");
++ break;
++ default:
++ pr_warn("Secure boot could not be determined (mode %u)\n",
++ mode);
++ break;
++ }
++ }
++}
+diff --git a/drivers/firmware/sysfb.c b/drivers/firmware/sysfb.c
+index 1f276f108cc9..7039ad9bdf7f 100644
+--- a/drivers/firmware/sysfb.c
++++ b/drivers/firmware/sysfb.c
+@@ -34,6 +34,22 @@
+ #include <linux/screen_info.h>
+ #include <linux/sysfb.h>
+
++static int skip_simpledrm;
++
++static int __init simpledrm_disable(char *opt)
++{
++ if (!opt)
++ return -EINVAL;
++
++ get_option(&opt, &skip_simpledrm);
++
++ if (skip_simpledrm)
++ pr_info("The simpledrm driver will not be probed\n");
++
++ return 0;
++}
++early_param("nvidia-drm.modeset", simpledrm_disable);
++
+ static struct platform_device *pd;
+ static DEFINE_MUTEX(disable_lock);
+ static bool disabled;
+@@ -83,7 +99,7 @@ static __init int sysfb_init(void)
+
+ /* try to create a simple-framebuffer device */
+ compatible = sysfb_parse_mode(si, &mode);
+- if (compatible) {
++ if (compatible && !skip_simpledrm) {
+ pd = sysfb_create_simplefb(si, &mode);
+ if (!IS_ERR(pd))
+ goto unlock_mutex;
+diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
+index 1e5f68704d7d..4e5bba0822a5 100644
+--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
+@@ -2712,9 +2712,16 @@ static int vc4_hdmi_init_resources(struct vc4_hdmi *vc4_hdmi)
+ DRM_ERROR("Failed to get HDMI state machine clock\n");
+ return PTR_ERR(vc4_hdmi->hsm_clock);
+ }
++
+ vc4_hdmi->audio_clock = vc4_hdmi->hsm_clock;
+ vc4_hdmi->cec_clock = vc4_hdmi->hsm_clock;
+
++ vc4_hdmi->hsm_rpm_clock = devm_clk_get(dev, "hdmi");
++ if (IS_ERR(vc4_hdmi->hsm_rpm_clock)) {
++ DRM_ERROR("Failed to get HDMI state machine clock\n");
++ return PTR_ERR(vc4_hdmi->hsm_rpm_clock);
++ }
++
+ return 0;
+ }
+
+@@ -2796,6 +2803,12 @@ static int vc5_hdmi_init_resources(struct vc4_hdmi *vc4_hdmi)
+ return PTR_ERR(vc4_hdmi->hsm_clock);
+ }
+
++ vc4_hdmi->hsm_rpm_clock = devm_clk_get(dev, "hdmi");
++ if (IS_ERR(vc4_hdmi->hsm_rpm_clock)) {
++ DRM_ERROR("Failed to get HDMI state machine clock\n");
++ return PTR_ERR(vc4_hdmi->hsm_rpm_clock);
++ }
++
+ vc4_hdmi->pixel_bvb_clock = devm_clk_get(dev, "bvb");
+ if (IS_ERR(vc4_hdmi->pixel_bvb_clock)) {
+ DRM_ERROR("Failed to get pixel bvb clock\n");
+@@ -2859,7 +2872,7 @@ static int vc4_hdmi_runtime_suspend(struct device *dev)
+ {
+ struct vc4_hdmi *vc4_hdmi = dev_get_drvdata(dev);
+
+- clk_disable_unprepare(vc4_hdmi->hsm_clock);
++ clk_disable_unprepare(vc4_hdmi->hsm_rpm_clock);
+
+ return 0;
+ }
+@@ -2869,12 +2882,37 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
+ struct vc4_hdmi *vc4_hdmi = dev_get_drvdata(dev);
+ unsigned long __maybe_unused flags;
+ u32 __maybe_unused value;
++ unsigned long rate;
+ int ret;
+
+- ret = clk_prepare_enable(vc4_hdmi->hsm_clock);
++ /*
++ * The HSM clock is in the HDMI power domain, so we need to set
++ * its frequency while the power domain is active so that it
++ * keeps its rate.
++ */
++ ret = clk_set_min_rate(vc4_hdmi->hsm_rpm_clock, HSM_MIN_CLOCK_FREQ);
+ if (ret)
+ return ret;
+
++ ret = clk_prepare_enable(vc4_hdmi->hsm_rpm_clock);
++ if (ret)
++ return ret;
++
++ /*
++ * Whenever the RaspberryPi boots without an HDMI monitor
++ * plugged in, the firmware won't have initialized the HSM clock
++ * rate and it will be reported as 0.
++ *
++ * If we try to access a register of the controller in such a
++ * case, it will lead to a silent CPU stall. Let's make sure we
++ * prevent such a case.
++ */
++ rate = clk_get_rate(vc4_hdmi->hsm_rpm_clock);
++ if (!rate) {
++ ret = -EINVAL;
++ goto err_disable_clk;
++ }
++
+ if (vc4_hdmi->variant->reset)
+ vc4_hdmi->variant->reset(vc4_hdmi);
+
+@@ -2896,6 +2934,10 @@ static int vc4_hdmi_runtime_resume(struct device *dev)
+ #endif
+
+ return 0;
++
++err_disable_clk:
++ clk_disable_unprepare(vc4_hdmi->hsm_clock);
++ return ret;
+ }
+
+ static int vc4_hdmi_bind(struct device *dev, struct device *master, void *data)
+diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.h b/drivers/gpu/drm/vc4/vc4_hdmi.h
+index c3ed2b07df23..47f141ec8c40 100644
+--- a/drivers/gpu/drm/vc4/vc4_hdmi.h
++++ b/drivers/gpu/drm/vc4/vc4_hdmi.h
+@@ -171,6 +171,7 @@ struct vc4_hdmi {
+ struct clk *cec_clock;
+ struct clk *pixel_clock;
+ struct clk *hsm_clock;
++ struct clk *hsm_rpm_clock;
+ struct clk *audio_clock;
+ struct clk *pixel_bvb_clock;
+
+diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
+index 311eee599ce9..2460c6bd46f8 100644
+--- a/drivers/hid/hid-rmi.c
++++ b/drivers/hid/hid-rmi.c
+@@ -322,19 +322,12 @@ static int rmi_input_event(struct hid_device *hdev, u8 *data, int size)
+ {
+ struct rmi_data *hdata = hid_get_drvdata(hdev);
+ struct rmi_device *rmi_dev = hdata->xport.rmi_dev;
+- unsigned long flags;
+
+ if (!(test_bit(RMI_STARTED, &hdata->flags)))
+ return 0;
+
+- local_irq_save(flags);
+-
+ rmi_set_attn_data(rmi_dev, data[1], &data[2], size - 2);
+
+- generic_handle_irq(hdata->rmi_irq);
+-
+- local_irq_restore(flags);
+-
+ return 1;
+ }
+
+@@ -591,56 +584,6 @@ static const struct rmi_transport_ops hid_rmi_ops = {
+ .reset = rmi_hid_reset,
+ };
+
+-static void rmi_irq_teardown(void *data)
+-{
+- struct rmi_data *hdata = data;
+- struct irq_domain *domain = hdata->domain;
+-
+- if (!domain)
+- return;
+-
+- irq_dispose_mapping(irq_find_mapping(domain, 0));
+-
+- irq_domain_remove(domain);
+- hdata->domain = NULL;
+- hdata->rmi_irq = 0;
+-}
+-
+-static int rmi_irq_map(struct irq_domain *h, unsigned int virq,
+- irq_hw_number_t hw_irq_num)
+-{
+- irq_set_chip_and_handler(virq, &dummy_irq_chip, handle_simple_irq);
+-
+- return 0;
+-}
+-
+-static const struct irq_domain_ops rmi_irq_ops = {
+- .map = rmi_irq_map,
+-};
+-
+-static int rmi_setup_irq_domain(struct hid_device *hdev)
+-{
+- struct rmi_data *hdata = hid_get_drvdata(hdev);
+- int ret;
+-
+- hdata->domain = irq_domain_create_linear(hdev->dev.fwnode, 1,
+- &rmi_irq_ops, hdata);
+- if (!hdata->domain)
+- return -ENOMEM;
+-
+- ret = devm_add_action_or_reset(&hdev->dev, &rmi_irq_teardown, hdata);
+- if (ret)
+- return ret;
+-
+- hdata->rmi_irq = irq_create_mapping(hdata->domain, 0);
+- if (hdata->rmi_irq <= 0) {
+- hid_err(hdev, "Can't allocate an IRQ\n");
+- return hdata->rmi_irq < 0 ? hdata->rmi_irq : -ENXIO;
+- }
+-
+- return 0;
+-}
+-
+ static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
+ {
+ struct rmi_data *data = NULL;
+@@ -713,18 +656,11 @@ static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
+
+ mutex_init(&data->page_mutex);
+
+- ret = rmi_setup_irq_domain(hdev);
+- if (ret) {
+- hid_err(hdev, "failed to allocate IRQ domain\n");
+- return ret;
+- }
+-
+ if (data->device_flags & RMI_DEVICE_HAS_PHYS_BUTTONS)
+ rmi_hid_pdata.gpio_data.disable = true;
+
+ data->xport.dev = hdev->dev.parent;
+ data->xport.pdata = rmi_hid_pdata;
+- data->xport.pdata.irq = data->rmi_irq;
+ data->xport.proto_name = "hid";
+ data->xport.ops = &hid_rmi_ops;
+
+diff --git a/drivers/hwtracing/coresight/coresight-etm4x-core.c b/drivers/hwtracing/coresight/coresight-etm4x-core.c
+index d39660a3e50c..8e5ffb4325a3 100644
+--- a/drivers/hwtracing/coresight/coresight-etm4x-core.c
++++ b/drivers/hwtracing/coresight/coresight-etm4x-core.c
+@@ -9,6 +9,7 @@
+ #include <linux/init.h>
+ #include <linux/types.h>
+ #include <linux/device.h>
++#include <linux/dmi.h>
+ #include <linux/io.h>
+ #include <linux/err.h>
+ #include <linux/fs.h>
+@@ -2137,6 +2138,16 @@ static const struct amba_id etm4_ids[] = {
+ {},
+ };
+
++static const struct dmi_system_id broken_coresight[] = {
++ {
++ .matches = {
++ DMI_MATCH(DMI_SYS_VENDOR, "HPE"),
++ DMI_MATCH(DMI_PRODUCT_NAME, "Apollo 70"),
++ },
++ },
++ { } /* terminating entry */
++};
++
+ MODULE_DEVICE_TABLE(amba, etm4_ids);
+
+ static struct amba_driver etm4x_amba_driver = {
+@@ -2170,6 +2181,11 @@ static int __init etm4x_init(void)
+ {
+ int ret;
+
++ if (dmi_check_system(broken_coresight)) {
++ pr_info("ETM4 disabled due to firmware bug\n");
++ return 0;
++ }
++
+ ret = etm4_pm_setup();
+
+ /* etm4_pm_setup() does its own cleanup - exit on error */
+@@ -2196,6 +2212,9 @@ static int __init etm4x_init(void)
+
+ static void __exit etm4x_exit(void)
+ {
++ if (dmi_check_system(broken_coresight))
++ return;
++
+ amba_driver_unregister(&etm4x_amba_driver);
+ platform_driver_unregister(&etm4_platform_driver);
+ etm4_pm_clear();
+diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c
+index 258d5fe3d395..f7298e3dc8f3 100644
+--- a/drivers/input/rmi4/rmi_driver.c
++++ b/drivers/input/rmi4/rmi_driver.c
+@@ -182,34 +182,47 @@ void rmi_set_attn_data(struct rmi_device *rmi_dev, unsigned long irq_status,
+ attn_data.data = fifo_data;
+
+ kfifo_put(&drvdata->attn_fifo, attn_data);
++
++ schedule_work(&drvdata->attn_work);
+ }
+ EXPORT_SYMBOL_GPL(rmi_set_attn_data);
+
+-static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
++static void attn_callback(struct work_struct *work)
+ {
+- struct rmi_device *rmi_dev = dev_id;
+- struct rmi_driver_data *drvdata = dev_get_drvdata(&rmi_dev->dev);
++ struct rmi_driver_data *drvdata = container_of(work,
++ struct rmi_driver_data,
++ attn_work);
+ struct rmi4_attn_data attn_data = {0};
+ int ret, count;
+
+ count = kfifo_get(&drvdata->attn_fifo, &attn_data);
+- if (count) {
+- *(drvdata->irq_status) = attn_data.irq_status;
+- drvdata->attn_data = attn_data;
+- }
++ if (!count)
++ return;
+
+- ret = rmi_process_interrupt_requests(rmi_dev);
++ *(drvdata->irq_status) = attn_data.irq_status;
++ drvdata->attn_data = attn_data;
++
++ ret = rmi_process_interrupt_requests(drvdata->rmi_dev);
+ if (ret)
+- rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
++ rmi_dbg(RMI_DEBUG_CORE, &drvdata->rmi_dev->dev,
+ "Failed to process interrupt request: %d\n", ret);
+
+- if (count) {
+- kfree(attn_data.data);
+- drvdata->attn_data.data = NULL;
+- }
++ kfree(attn_data.data);
++ drvdata->attn_data.data = NULL;
+
+ if (!kfifo_is_empty(&drvdata->attn_fifo))
+- return rmi_irq_fn(irq, dev_id);
++ schedule_work(&drvdata->attn_work);
++}
++
++static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
++{
++ struct rmi_device *rmi_dev = dev_id;
++ int ret;
++
++ ret = rmi_process_interrupt_requests(rmi_dev);
++ if (ret)
++ rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
++ "Failed to process interrupt request: %d\n", ret);
+
+ return IRQ_HANDLED;
+ }
+@@ -217,7 +230,6 @@ static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
+ static int rmi_irq_init(struct rmi_device *rmi_dev)
+ {
+ struct rmi_device_platform_data *pdata = rmi_get_platform_data(rmi_dev);
+- struct rmi_driver_data *data = dev_get_drvdata(&rmi_dev->dev);
+ int irq_flags = irq_get_trigger_type(pdata->irq);
+ int ret;
+
+@@ -235,8 +247,6 @@ static int rmi_irq_init(struct rmi_device *rmi_dev)
+ return ret;
+ }
+
+- data->enabled = true;
+-
+ return 0;
+ }
+
+@@ -886,23 +896,27 @@ void rmi_enable_irq(struct rmi_device *rmi_dev, bool clear_wake)
+ if (data->enabled)
+ goto out;
+
+- enable_irq(irq);
+- data->enabled = true;
+- if (clear_wake && device_may_wakeup(rmi_dev->xport->dev)) {
+- retval = disable_irq_wake(irq);
+- if (retval)
+- dev_warn(&rmi_dev->dev,
+- "Failed to disable irq for wake: %d\n",
+- retval);
+- }
++ if (irq) {
++ enable_irq(irq);
++ data->enabled = true;
++ if (clear_wake && device_may_wakeup(rmi_dev->xport->dev)) {
++ retval = disable_irq_wake(irq);
++ if (retval)
++ dev_warn(&rmi_dev->dev,
++ "Failed to disable irq for wake: %d\n",
++ retval);
++ }
+
+- /*
+- * Call rmi_process_interrupt_requests() after enabling irq,
+- * otherwise we may lose interrupt on edge-triggered systems.
+- */
+- irq_flags = irq_get_trigger_type(pdata->irq);
+- if (irq_flags & IRQ_TYPE_EDGE_BOTH)
+- rmi_process_interrupt_requests(rmi_dev);
++ /*
++ * Call rmi_process_interrupt_requests() after enabling irq,
++ * otherwise we may lose interrupt on edge-triggered systems.
++ */
++ irq_flags = irq_get_trigger_type(pdata->irq);
++ if (irq_flags & IRQ_TYPE_EDGE_BOTH)
++ rmi_process_interrupt_requests(rmi_dev);
++ } else {
++ data->enabled = true;
++ }
+
+ out:
+ mutex_unlock(&data->enabled_mutex);
+@@ -922,20 +936,22 @@ void rmi_disable_irq(struct rmi_device *rmi_dev, bool enable_wake)
+ goto out;
+
+ data->enabled = false;
+- disable_irq(irq);
+- if (enable_wake && device_may_wakeup(rmi_dev->xport->dev)) {
+- retval = enable_irq_wake(irq);
+- if (retval)
+- dev_warn(&rmi_dev->dev,
+- "Failed to enable irq for wake: %d\n",
+- retval);
+- }
+-
+- /* make sure the fifo is clean */
+- while (!kfifo_is_empty(&data->attn_fifo)) {
+- count = kfifo_get(&data->attn_fifo, &attn_data);
+- if (count)
+- kfree(attn_data.data);
++ if (irq) {
++ disable_irq(irq);
++ if (enable_wake && device_may_wakeup(rmi_dev->xport->dev)) {
++ retval = enable_irq_wake(irq);
++ if (retval)
++ dev_warn(&rmi_dev->dev,
++ "Failed to enable irq for wake: %d\n",
++ retval);
++ }
++ } else {
++ /* make sure the fifo is clean */
++ while (!kfifo_is_empty(&data->attn_fifo)) {
++ count = kfifo_get(&data->attn_fifo, &attn_data);
++ if (count)
++ kfree(attn_data.data);
++ }
+ }
+
+ out:
+@@ -981,6 +997,8 @@ static int rmi_driver_remove(struct device *dev)
+ irq_domain_remove(data->irqdomain);
+ data->irqdomain = NULL;
+
++ cancel_work_sync(&data->attn_work);
++
+ rmi_f34_remove_sysfs(rmi_dev);
+ rmi_free_function_list(rmi_dev);
+
+@@ -1219,9 +1237,15 @@ static int rmi_driver_probe(struct device *dev)
+ }
+ }
+
+- retval = rmi_irq_init(rmi_dev);
+- if (retval < 0)
+- goto err_destroy_functions;
++ if (pdata->irq) {
++ retval = rmi_irq_init(rmi_dev);
++ if (retval < 0)
++ goto err_destroy_functions;
++ }
++
++ data->enabled = true;
++
++ INIT_WORK(&data->attn_work, attn_callback);
+
+ if (data->f01_container->dev.driver) {
+ /* Driver already bound, so enable ATTN now. */
+diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
+index 3a808146b50f..c1a3f3057921 100644
+--- a/drivers/iommu/iommu.c
++++ b/drivers/iommu/iommu.c
+@@ -7,6 +7,7 @@
+ #define pr_fmt(fmt) "iommu: " fmt
+
+ #include <linux/device.h>
++#include <linux/dmi.h>
+ #include <linux/dma-iommu.h>
+ #include <linux/kernel.h>
+ #include <linux/bits.h>
+@@ -2843,6 +2844,27 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle)
+ }
+ EXPORT_SYMBOL_GPL(iommu_sva_get_pasid);
+
++#ifdef CONFIG_ARM64
++static int __init iommu_quirks(void)
++{
++ const char *vendor, *name;
++
++ vendor = dmi_get_system_info(DMI_SYS_VENDOR);
++ name = dmi_get_system_info(DMI_PRODUCT_NAME);
++
++ if (vendor &&
++ (strncmp(vendor, "GIGABYTE", 8) == 0 && name &&
++ (strncmp(name, "R120", 4) == 0 ||
++ strncmp(name, "R270", 4) == 0))) {
++ pr_warn("Gigabyte %s detected, force iommu passthrough mode", name);
++ iommu_def_domain_type = IOMMU_DOMAIN_IDENTITY;
++ }
++
++ return 0;
++}
++arch_initcall(iommu_quirks);
++#endif
++
+ /*
+ * Changes the default domain of an iommu group that has *only* one device
+ *
+diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
+index 59e4b188fc71..9c6bfc02e6a1 100644
+--- a/drivers/nvme/host/core.c
++++ b/drivers/nvme/host/core.c
+@@ -250,6 +250,9 @@ static void nvme_delete_ctrl_sync(struct nvme_ctrl *ctrl)
+
+ static blk_status_t nvme_error_status(u16 status)
+ {
++ if (unlikely(status & NVME_SC_DNR))
++ return BLK_STS_TARGET;
++
+ switch (status & 0x7ff) {
+ case NVME_SC_SUCCESS:
+ return BLK_STS_OK;
+@@ -340,6 +343,7 @@ enum nvme_disposition {
+ COMPLETE,
+ RETRY,
+ FAILOVER,
++ FAILUP,
+ AUTHENTICATE,
+ };
+
+@@ -351,15 +355,16 @@ static inline enum nvme_disposition nvme_decide_disposition(struct request *req)
+ if ((nvme_req(req)->status & 0x7ff) == NVME_SC_AUTH_REQUIRED)
+ return AUTHENTICATE;
+
+- if (blk_noretry_request(req) ||
++ if ((req->cmd_flags & (REQ_FAILFAST_DEV | REQ_FAILFAST_DRIVER)) ||
+ (nvme_req(req)->status & NVME_SC_DNR) ||
+ nvme_req(req)->retries >= nvme_max_retries)
+ return COMPLETE;
+
+- if (req->cmd_flags & REQ_NVME_MPATH) {
++ if (req->cmd_flags & (REQ_NVME_MPATH | REQ_FAILFAST_TRANSPORT)) {
+ if (nvme_is_path_error(nvme_req(req)->status) ||
+ blk_queue_dying(req->q))
+- return FAILOVER;
++ return (req->cmd_flags & REQ_NVME_MPATH) ?
++ FAILOVER : FAILUP;
+ } else {
+ if (blk_queue_dying(req->q))
+ return COMPLETE;
+@@ -387,6 +392,14 @@ static inline void nvme_end_req(struct request *req)
+ blk_mq_end_request(req, status);
+ }
+
++static inline void nvme_failup_req(struct request *req)
++{
++ nvme_update_ana(req);
++
++ nvme_req(req)->status = NVME_SC_HOST_PATH_ERROR;
++ nvme_end_req(req);
++}
++
+ void nvme_complete_rq(struct request *req)
+ {
+ struct nvme_ctrl *ctrl = nvme_req(req)->ctrl;
+@@ -407,6 +420,9 @@ void nvme_complete_rq(struct request *req)
+ case FAILOVER:
+ nvme_failover_req(req);
+ return;
++ case FAILUP:
++ nvme_failup_req(req);
++ return;
+ case AUTHENTICATE:
+ #ifdef CONFIG_NVME_AUTH
+ queue_work(nvme_wq, &ctrl->dhchap_auth_work);
+diff --git a/drivers/nvme/host/multipath.c b/drivers/nvme/host/multipath.c
+index b9cf17cbbbd5..9aa33fc59f67 100644
+--- a/drivers/nvme/host/multipath.c
++++ b/drivers/nvme/host/multipath.c
+@@ -80,14 +80,10 @@ void nvme_mpath_start_freeze(struct nvme_subsystem *subsys)
+ blk_freeze_queue_start(h->disk->queue);
+ }
+
+-void nvme_failover_req(struct request *req)
++void nvme_update_ana(struct request *req)
+ {
+ struct nvme_ns *ns = req->q->queuedata;
+ u16 status = nvme_req(req)->status & 0x7ff;
+- unsigned long flags;
+- struct bio *bio;
+-
+- nvme_mpath_clear_current_path(ns);
+
+ /*
+ * If we got back an ANA error, we know the controller is alive but not
+@@ -98,6 +94,16 @@ void nvme_failover_req(struct request *req)
+ set_bit(NVME_NS_ANA_PENDING, &ns->flags);
+ queue_work(nvme_wq, &ns->ctrl->ana_work);
+ }
++}
++
++void nvme_failover_req(struct request *req)
++{
++ struct nvme_ns *ns = req->q->queuedata;
++ unsigned long flags;
++ struct bio *bio;
++
++ nvme_mpath_clear_current_path(ns);
++ nvme_update_ana(req);
+
+ spin_lock_irqsave(&ns->head->requeue_lock, flags);
+ for (bio = req->bio; bio; bio = bio->bi_next) {
+@@ -872,8 +878,7 @@ int nvme_mpath_init_identify(struct nvme_ctrl *ctrl, struct nvme_id_ctrl *id)
+ int error = 0;
+
+ /* check if multipath is enabled and we have the capability */
+- if (!multipath || !ctrl->subsys ||
+- !(ctrl->subsys->cmic & NVME_CTRL_CMIC_ANA))
++ if (!ctrl->subsys || !(ctrl->subsys->cmic & NVME_CTRL_CMIC_ANA))
+ return 0;
+
+ if (!ctrl->max_namespaces ||
+diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h
+index a0bf9560cf67..2a226be9b32a 100644
+--- a/drivers/nvme/host/nvme.h
++++ b/drivers/nvme/host/nvme.h
+@@ -844,6 +844,7 @@ void nvme_mpath_wait_freeze(struct nvme_subsystem *subsys);
+ void nvme_mpath_start_freeze(struct nvme_subsystem *subsys);
+ void nvme_mpath_default_iopolicy(struct nvme_subsystem *subsys);
+ void nvme_failover_req(struct request *req);
++void nvme_update_ana(struct request *req);
+ void nvme_kick_requeue_lists(struct nvme_ctrl *ctrl);
+ int nvme_mpath_alloc_disk(struct nvme_ctrl *ctrl,struct nvme_ns_head *head);
+ void nvme_mpath_add_disk(struct nvme_ns *ns, __le32 anagrpid);
+@@ -880,6 +881,9 @@ static inline bool nvme_ctrl_use_ana(struct nvme_ctrl *ctrl)
+ static inline void nvme_failover_req(struct request *req)
+ {
+ }
++static inline void nvme_update_ana(struct request *req)
++{
++}
+ static inline void nvme_kick_requeue_lists(struct nvme_ctrl *ctrl)
+ {
+ }
+diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
+index 4944798e75b5..079a29ef1bf2 100644
+--- a/drivers/pci/quirks.c
++++ b/drivers/pci/quirks.c
+@@ -4296,6 +4296,30 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9000,
+ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9084,
+ quirk_bridge_cavm_thrx2_pcie_root);
+
++/*
++ * PCI BAR 5 is not setup correctly for the on-board AHCI controller
++ * on Broadcom's Vulcan processor. Added a quirk to fix BAR 5 by
++ * using BAR 4's resources which are populated correctly and NOT
++ * actually used by the AHCI controller.
++ */
++static void quirk_fix_vulcan_ahci_bars(struct pci_dev *dev)
++{
++ struct resource *r = &dev->resource[4];
++
++ if (!(r->flags & IORESOURCE_MEM) || (r->start == 0))
++ return;
++
++ /* Set BAR5 resource to BAR4 */
++ dev->resource[5] = *r;
++
++ /* Update BAR5 in pci config space */
++ pci_write_config_dword(dev, PCI_BASE_ADDRESS_5, r->start);
++
++ /* Clear BAR4's resource */
++ memset(r, 0, sizeof(*r));
++}
++DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_BROADCOM, 0x9027, quirk_fix_vulcan_ahci_bars);
++
+ /*
+ * Intersil/Techwell TW686[4589]-based video capture cards have an empty (zero)
+ * class code. Fix it.
+diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
+index bbab424b0d55..ed86042fb57b 100644
+--- a/drivers/usb/core/hub.c
++++ b/drivers/usb/core/hub.c
+@@ -5676,6 +5676,13 @@ static void hub_event(struct work_struct *work)
+ (u16) hub->change_bits[0],
+ (u16) hub->event_bits[0]);
+
++ /* Don't disconnect USB-SATA on TrimSlice */
++ if (strcmp(dev_name(hdev->bus->controller), "tegra-ehci.0") == 0) {
++ if ((hdev->state == 7) && (hub->change_bits[0] == 0) &&
++ (hub->event_bits[0] == 0x2))
++ hub->event_bits[0] = 0;
++ }
++
+ /* Lock the device, then check to see if we were
+ * disconnected while waiting for the lock to succeed. */
+ usb_lock_device(hdev);
+diff --git a/include/linux/efi.h b/include/linux/efi.h
+index 4459794b65db..79735fc77198 100644
+--- a/include/linux/efi.h
++++ b/include/linux/efi.h
+@@ -43,6 +43,8 @@
+ #define EFI_ABORTED (21 | (1UL << (BITS_PER_LONG-1)))
+ #define EFI_SECURITY_VIOLATION (26 | (1UL << (BITS_PER_LONG-1)))
+
++#define EFI_IS_ERROR(x) ((x) & (1UL << (BITS_PER_LONG-1)))
++
+ typedef unsigned long efi_status_t;
+ typedef u8 efi_bool_t;
+ typedef u16 efi_char16_t; /* UNICODE character */
+@@ -849,6 +851,14 @@ extern int __init efi_setup_pcdp_console(char *);
+ #define EFI_MEM_ATTR 10 /* Did firmware publish an EFI_MEMORY_ATTRIBUTES table? */
+ #define EFI_MEM_NO_SOFT_RESERVE 11 /* Is the kernel configured to ignore soft reservations? */
+ #define EFI_PRESERVE_BS_REGIONS 12 /* Are EFI boot-services memory segments available? */
++#define EFI_SECURE_BOOT 13 /* Are we in Secure Boot mode? */
++
++enum efi_secureboot_mode {
++ efi_secureboot_mode_unset,
++ efi_secureboot_mode_unknown,
++ efi_secureboot_mode_disabled,
++ efi_secureboot_mode_enabled,
++};
+
+ #ifdef CONFIG_EFI
+ /*
+@@ -860,6 +870,8 @@ static inline bool efi_enabled(int feature)
+ }
+ extern void efi_reboot(enum reboot_mode reboot_mode, const char *__unused);
+
++extern void __init efi_set_secure_boot(enum efi_secureboot_mode mode);
++
+ bool __pure __efi_soft_reserve_enabled(void);
+
+ static inline bool __pure efi_soft_reserve_enabled(void)
+@@ -881,6 +893,8 @@ static inline bool efi_enabled(int feature)
+ static inline void
+ efi_reboot(enum reboot_mode reboot_mode, const char *__unused) {}
+
++static inline void efi_set_secure_boot(enum efi_secureboot_mode mode) {}
++
+ static inline bool efi_soft_reserve_enabled(void)
+ {
+ return false;
+@@ -895,6 +909,7 @@ static inline void efi_find_mirror(void) {}
+ #endif
+
+ extern int efi_status_to_err(efi_status_t status);
++extern const char *efi_status_to_str(efi_status_t status);
+
+ /*
+ * Variable Attributes
+@@ -1104,13 +1119,6 @@ static inline bool efi_runtime_disabled(void) { return true; }
+ extern void efi_call_virt_check_flags(unsigned long flags, const char *call);
+ extern unsigned long efi_call_virt_save_flags(void);
+
+-enum efi_secureboot_mode {
+- efi_secureboot_mode_unset,
+- efi_secureboot_mode_unknown,
+- efi_secureboot_mode_disabled,
+- efi_secureboot_mode_enabled,
+-};
+-
+ static inline
+ enum efi_secureboot_mode efi_get_secureboot_mode(efi_get_variable_t *get_var)
+ {
+diff --git a/include/linux/lsm_hook_defs.h b/include/linux/lsm_hook_defs.h
+index 60fff133c0b1..fa0aa514c70f 100644
+--- a/include/linux/lsm_hook_defs.h
++++ b/include/linux/lsm_hook_defs.h
+@@ -395,6 +395,8 @@ LSM_HOOK(void, LSM_RET_VOID, bpf_prog_free_security, struct bpf_prog_aux *aux)
+ #endif /* CONFIG_BPF_SYSCALL */
+
+ LSM_HOOK(int, 0, locked_down, enum lockdown_reason what)
++LSM_HOOK(int, 0, lock_kernel_down, const char *where, enum lockdown_reason level)
++
+
+ #ifdef CONFIG_PERF_EVENTS
+ LSM_HOOK(int, 0, perf_event_open, struct perf_event_attr *attr, int type)
+diff --git a/include/linux/lsm_hooks.h b/include/linux/lsm_hooks.h
+index 3aa6030302f5..23b63de268a3 100644
+--- a/include/linux/lsm_hooks.h
++++ b/include/linux/lsm_hooks.h
+@@ -1557,6 +1557,12 @@
+ *
+ * @what: kernel feature being accessed
+ *
++ * @lock_kernel_down
++ * Put the kernel into lock-down mode.
++ *
++ * @where: Where the lock-down is originating from (e.g. command line option)
++ * @level: The lock-down level (can only increase)
++ *
+ * Security hooks for perf events
+ *
+ * @perf_event_open:
+diff --git a/include/linux/rmi.h b/include/linux/rmi.h
+index ab7eea01ab42..fff7c5f737fc 100644
+--- a/include/linux/rmi.h
++++ b/include/linux/rmi.h
+@@ -364,6 +364,7 @@ struct rmi_driver_data {
+
+ struct rmi4_attn_data attn_data;
+ DECLARE_KFIFO(attn_fifo, struct rmi4_attn_data, 16);
++ struct work_struct attn_work;
+ };
+
+ int rmi_register_transport_device(struct rmi_transport_dev *xport);
+diff --git a/include/linux/security.h b/include/linux/security.h
+index 7bd0c490703d..7779eaf1ffa1 100644
+--- a/include/linux/security.h
++++ b/include/linux/security.h
+@@ -475,6 +475,7 @@ int security_inode_notifysecctx(struct inode *inode, void *ctx, u32 ctxlen);
+ int security_inode_setsecctx(struct dentry *dentry, void *ctx, u32 ctxlen);
+ int security_inode_getsecctx(struct inode *inode, void **ctx, u32 *ctxlen);
+ int security_locked_down(enum lockdown_reason what);
++int security_lock_kernel_down(const char *where, enum lockdown_reason level);
+ #else /* CONFIG_SECURITY */
+
+ static inline int call_blocking_lsm_notifier(enum lsm_event event, void *data)
+@@ -1358,6 +1359,10 @@ static inline int security_locked_down(enum lockdown_reason what)
+ {
+ return 0;
+ }
++static inline int security_lock_kernel_down(const char *where, enum lockdown_reason level)
++{
++ return 0;
++}
+ #endif /* CONFIG_SECURITY */
+
+ #if defined(CONFIG_SECURITY) && defined(CONFIG_WATCH_QUEUE)
+diff --git a/init/Kconfig b/init/Kconfig
+index 532362fcfe31..30d547537ea0 100644
+--- a/init/Kconfig
++++ b/init/Kconfig
+@@ -1678,7 +1678,7 @@ config AIO
+ this option saves about 7k.
+
+ config IO_URING
+- bool "Enable IO uring support" if EXPERT
++ bool "Enable IO uring support"
+ select IO_WQ
+ default y
+ help
+diff --git a/kernel/module/signing.c b/kernel/module/signing.c
+index a2ff4242e623..f0d2be1ee4f1 100644
+--- a/kernel/module/signing.c
++++ b/kernel/module/signing.c
+@@ -61,10 +61,17 @@ int mod_verify_sig(const void *mod, struct load_info *info)
+ modlen -= sig_len + sizeof(ms);
+ info->len = modlen;
+
+- return verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
++ ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
+ VERIFY_USE_SECONDARY_KEYRING,
+ VERIFYING_MODULE_SIGNATURE,
+ NULL, NULL);
++ if (ret == -ENOKEY && IS_ENABLED(CONFIG_INTEGRITY_PLATFORM_KEYRING)) {
++ ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
++ VERIFY_USE_PLATFORM_KEYRING,
++ VERIFYING_MODULE_SIGNATURE,
++ NULL, NULL);
++ }
++ return ret;
+ }
+
+ int module_sig_check(struct load_info *info, int flags)
+diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
+index 2dc97583d279..e9a7f70a54df 100644
+--- a/net/ipv4/fib_semantics.c
++++ b/net/ipv4/fib_semantics.c
+@@ -888,13 +888,13 @@ int fib_nh_match(struct net *net, struct fib_config *cfg, struct fib_info *fi,
+ return 1;
+ }
+
++ /* cannot match on nexthop object attributes */
++ if (fi->nh)
++ return 1;
++
+ if (cfg->fc_oif || cfg->fc_gw_family) {
+ struct fib_nh *nh;
+
+- /* cannot match on nexthop object attributes */
+- if (fi->nh)
+- return 1;
+-
+ nh = fib_info_nh(fi, 0);
+ if (cfg->fc_encap) {
+ if (fib_encap_match(net, cfg->fc_encap_type,
+diff --git a/scripts/tags.sh b/scripts/tags.sh
+index e137cf15aae9..2ed2341f7967 100755
+--- a/scripts/tags.sh
++++ b/scripts/tags.sh
+@@ -16,6 +16,8 @@ fi
+ ignore="$(echo "$RCS_FIND_IGNORE" | sed 's|\\||g' )"
+ # tags and cscope files should also ignore MODVERSION *.mod.c files
+ ignore="$ignore ( -name *.mod.c ) -prune -o"
++# RHEL tags and cscope should also ignore redhat/rpm
++ignore="$ignore ( -path redhat/rpm ) -prune -o"
+
+ # Use make KBUILD_ABS_SRCTREE=1 {tags|cscope}
+ # to force full paths for a non-O= build
+diff --git a/security/integrity/platform_certs/load_uefi.c b/security/integrity/platform_certs/load_uefi.c
+index b78753d27d8e..f0b37800431a 100644
+--- a/security/integrity/platform_certs/load_uefi.c
++++ b/security/integrity/platform_certs/load_uefi.c
+@@ -73,7 +73,8 @@ static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid,
+ return NULL;
+
+ if (*status != EFI_BUFFER_TOO_SMALL) {
+- pr_err("Couldn't get size: 0x%lx\n", *status);
++ pr_err("Couldn't get size: %s (0x%lx)\n",
++ efi_status_to_str(*status), *status);
+ return NULL;
+ }
+
+@@ -84,7 +85,8 @@ static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid,
+ *status = efi.get_variable(name, guid, NULL, &lsize, db);
+ if (*status != EFI_SUCCESS) {
+ kfree(db);
+- pr_err("Error reading db var: 0x%lx\n", *status);
++ pr_err("Error reading db var: %s (0x%lx)\n",
++ efi_status_to_str(*status), *status);
+ return NULL;
+ }
+
+diff --git a/security/lockdown/Kconfig b/security/lockdown/Kconfig
+index e84ddf484010..d0501353a4b9 100644
+--- a/security/lockdown/Kconfig
++++ b/security/lockdown/Kconfig
+@@ -16,6 +16,19 @@ config SECURITY_LOCKDOWN_LSM_EARLY
+ subsystem is fully initialised. If enabled, lockdown will
+ unconditionally be called before any other LSMs.
+
++config LOCK_DOWN_IN_EFI_SECURE_BOOT
++ bool "Lock down the kernel in EFI Secure Boot mode"
++ default n
++ depends on EFI && SECURITY_LOCKDOWN_LSM_EARLY
++ help
++ UEFI Secure Boot provides a mechanism for ensuring that the firmware
++ will only load signed bootloaders and kernels. Secure boot mode may
++ be determined from EFI variables provided by the system firmware if
++ not indicated by the boot parameters.
++
++ Enabling this option results in kernel lockdown being triggered if
++ EFI Secure Boot is set.
++
+ choice
+ prompt "Kernel default lockdown mode"
+ default LOCK_DOWN_KERNEL_FORCE_NONE
+diff --git a/security/lockdown/lockdown.c b/security/lockdown/lockdown.c
+index 87cbdc64d272..18555cf18da7 100644
+--- a/security/lockdown/lockdown.c
++++ b/security/lockdown/lockdown.c
+@@ -73,6 +73,7 @@ static int lockdown_is_locked_down(enum lockdown_reason what)
+
+ static struct security_hook_list lockdown_hooks[] __lsm_ro_after_init = {
+ LSM_HOOK_INIT(locked_down, lockdown_is_locked_down),
++ LSM_HOOK_INIT(lock_kernel_down, lock_kernel_down),
+ };
+
+ static int __init lockdown_lsm_init(void)
+diff --git a/security/security.c b/security/security.c
+index 4b95de24bc8d..10047790e96e 100644
+--- a/security/security.c
++++ b/security/security.c
+@@ -2623,6 +2623,12 @@ int security_locked_down(enum lockdown_reason what)
+ }
+ EXPORT_SYMBOL(security_locked_down);
+
++int security_lock_kernel_down(const char *where, enum lockdown_reason level)
++{
++ return call_int_hook(lock_kernel_down, 0, where, level);
++}
++EXPORT_SYMBOL(security_lock_kernel_down);
++
+ #ifdef CONFIG_PERF_EVENTS
+ int security_perf_event_open(struct perf_event_attr *attr, int type)
+ {
+diff --git a/tools/testing/selftests/net/fib_nexthops.sh b/tools/testing/selftests/net/fib_nexthops.sh
+index d5a0dd548989..ee5e98204d3d 100755
+--- a/tools/testing/selftests/net/fib_nexthops.sh
++++ b/tools/testing/selftests/net/fib_nexthops.sh
+@@ -1223,6 +1223,11 @@ ipv4_fcnal()
+ log_test $rc 0 "Delete nexthop route warning"
+ run_cmd "$IP route delete 172.16.101.1/32 nhid 12"
+ run_cmd "$IP nexthop del id 12"
++
++ run_cmd "$IP nexthop add id 21 via 172.16.1.6 dev veth1"
++ run_cmd "$IP ro add 172.16.101.0/24 nhid 21"
++ run_cmd "$IP ro del 172.16.101.0/24 nexthop via 172.16.1.7 dev veth1 nexthop via 172.16.1.8 dev veth1"
++ log_test $? 2 "Delete multipath route with only nh id based entry"
+ }
+
+ ipv4_grp_fcnal()
diff --git a/SOURCES/rpminspect.yaml b/SOURCES/rpminspect.yaml
index 0968d7c..9ed9b77 100644
--- a/SOURCES/rpminspect.yaml
+++ b/SOURCES/rpminspect.yaml
@@ -23,4 +23,4 @@ emptyrpm:
patches:
ignore_list:
- linux-kernel-test.patch
- - patch-5.19-redhat.patch
+ - patch-6.0-redhat.patch
diff --git a/SOURCES/v3-1-7-acpi-x86-s2idle-Move-_HID-handling-for-AMD-systems-into-structures.patch b/SOURCES/v3-1-7-acpi-x86-s2idle-Move-_HID-handling-for-AMD-systems-into-structures.patch
index 4c8a1c5..ce679fd 100644
--- a/SOURCES/v3-1-7-acpi-x86-s2idle-Move-_HID-handling-for-AMD-systems-into-structures.patch
+++ b/SOURCES/v3-1-7-acpi-x86-s2idle-Move-_HID-handling-for-AMD-systems-into-structures.patch
@@ -46,7 +46,7 @@ diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
index c9ee30627b6c..2d1ff7796c34 100644
--- a/drivers/acpi/x86/s2idle.c
+++ b/drivers/acpi/x86/s2idle.c
-@@ -412,31 +412,29 @@ static int lps0_device_attach(struct acpi_device *adev,
+@@ -472,31 +472,27 @@ static int lps0_device_attach(struct acpi_device *adev,
return 0;
if (acpi_s2idle_vendor_amd()) {
@@ -86,13 +86,11 @@ index c9ee30627b6c..2d1ff7796c34 100644
lps0_dsm_func_mask = (lps0_dsm_func_mask << 1) | 0x1;
acpi_handle_debug(adev->handle, "_DSM UUID %s: Adjusted function mask: 0x%x\n",
ACPI_LPS0_DSM_UUID_AMD, lps0_dsm_func_mask);
-- } else if (lps0_dsm_func_mask_microsoft > 0 && !strcmp(hid, "AMDI0007")) {
+- } else if (lps0_dsm_func_mask_microsoft > 0 &&
+ } else if (lps0_dsm_func_mask_microsoft > 0 && data->prefer_amd_guid &&
-+ (!strcmp(hid, "AMDI0007") ||
-+ !strcmp(hid, "AMDI0008"))) {
+ (!strcmp(hid, "AMDI0007") ||
+ !strcmp(hid, "AMDI0008"))) {
lps0_dsm_func_mask_microsoft = -EINVAL;
- acpi_handle_debug(adev->handle, "_DSM Using AMD method\n");
- }
diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
index a8256e5a0e8a..a9b0f2b54a1c 100644