about summary refs log tree commit diff
path: root/pkgs/os-specific/linux/kernel/common-config.nix
AgeCommit message (Collapse)AuthorFilesLines
2024-04-17linux/common-config: fix fallout from #293302K9001-3/+7
- NVME_AUTH must be module if NVME_CORE is module on 6.7+ - NVME_TARGET_PASSTHRU is spelled differently, and does not exist before 5.9 - PCI_P2PDMA does not exist before 4.20
2024-04-16linux: Enable P2P DMA, NVMe Target Passthrough, Fabrics In-Band Auth and TCP ↵Adrian Pistol1-0/+11
TLS.
2024-04-13linux/common-config: enable ZRAM_MULTI_COMP where availableK9001-5/+6
2024-04-10linux/common-config: remove old NFSD options from 5.15 too kernels-20240410K9001-2/+2
2024-04-07linux/common-config: Enable PWM supportAdrian Pistol1-0/+3
Necessary to support the backlight on the GPD Pocket, GPD Win and several other devices.
2024-04-01linux: enable POWER_RESET_GPIO and POWER_RESET_GPIO_RESTART modulesLordMZTE1-0/+4
These modules are very useful for power management via GPIO pins on embedded platforms such as the Raspberry Pi. The POWER_RESET_GPIO module has been tested on a Raspberry Pi 3B+.
2024-03-25linux_testing: 6.8-rc7 -> 6.9-rc1Alyssa Ross1-3/+4
DAMON_DBGFS has been renamed to DAMON_DBGFS_DEPRECATED. Let's just drop it now.
2024-03-23linux/common-config: replace simplefb with simpledrmK9001-7/+11
Arch and Fedora have been shipping it for a while now, we should probably join them in the happy non-fbdev future. Legacy fbdev drivers are still enabled for now, so non-simpledrm-friendly devices don't break.
2024-03-23linux/common-config: enable RC_CORE explicitlyK9001-0/+1
Disabled by default in 5.10, needed by MEDIA_CEC_RC
2024-03-23linux/common-config: reenable schedstatsK9001-1/+1
Was disabled in dbdcb3fad435fc531e0bfc71e1b93cc0ff5b0882 for "powertop" kernel variants, which was then merged into default kernels in 77a8ea6fbd474bca969371506ee663e1517. Not really sure why.
2024-03-22kernel/common-config: throw on duplicate configuration option definitionsAlois Wohlschlager1-7/+1
Previously, when a kernel configuration option was defined multiple times (in different sections), only the first value was honored and all subsequent ones were silently ignored. Remove this footgun by throwing in this situation instead. In addition, fix all instances where an option was in fact defined multiple times. In two cases (`RCU_TORTURE_TEST` and `CRASH_DUMP`), the value was effectively the same both times. In the other two cases (`SCHEDSTATS` and `DRM_SIMPLEDRM`) the value was in fact different; the one that was actually applied was kept here to prevent a rebuild.
2024-03-19kernel/common-config: enable a whole bunch of stuffK9001-10/+163
This is just useful things I've found while diffing our kernel configs with Arch and Fedora. Some of these have a small performance overhead, most are completely free. Switch default performance governor to schedutil, because performance is almost always a bad default.
2024-03-18linux/common-config: set idle timeout to 10s for sound cardsRaito Bezarius1-0/+5
As per https://docs.kernel.org/sound/designs/powersave.html We update our defaults for better power saving on laptops which does not perform powertop --auto-tune, TLP or manual tweaking, e.g. power-profiles-daemon.
2024-03-11kernel/common-config: enable NVK by default when availableK9001-0/+2
2024-03-08kernel/common-config: disable NFSD_V2_ACL on 6.1K9001-1/+1
Upstream disabled NFSD_V2 entirely, so disable this also.
2024-02-29linux: enable CONFIG_BLK_DEV_ZONEDoxalica1-0/+1
This enables support for ZAC/ZBC/ZNS host-managed and host-aware zoned block devices. It also enables zone features in various filesystems including BTRFS and F2FS, and other relative subsystems like nvme and virtio-blk.
2024-02-23linux: enable CONFIG_MAC80211_MESHAndrew Brooks1-0/+1
This enables support for 802.11s mesh networking in drivers that support it.
2024-01-25linux: CONFIG_LED_TRIGGER_PHY=yArtem Ignatyev1-0/+3
2024-01-23Merge master into staging-nextgithub-actions[bot]1-1/+1
2024-01-22linux_testing: 6.7 -> 6.8-rc1Alyssa Ross1-1/+1
2024-01-19Merge master into staging-nextgithub-actions[bot]1-17/+17
2024-01-19Revert "linux: drop XEN on 32-bit"Alyssa Ross1-17/+17
This reverts commit 096639c548e2b0256309c92c53542e052eaa3761. The kernel bug that broke this has now been fixed, and we now set CONFIG_X86_GENERIC, which would have stopped us being affected by it anyway.
2024-01-13Merge pull request #272029 from blitz/rust-for-linuxRyan Lahfa1-0/+10
In-kernel Rust on Linux (Optional) (2nd Attempt)
2024-01-12linux_latest: optionally build Linux 6.7 and onwards with rust supportYureka1-0/+10
With the current patching situation around enabling Linux to build with whatever rustc/bindgen version we have in nixpkgs, it feels like supporting a Rust-by-default build at this time is not fully justified. Co-authored-by: Julian Stecklina <julian.stecklina@cyberus-technology.de>
2024-01-12Merge pull request #279368 from ibbem/reenable-rfkill-inputRyan Lahfa1-0/+1
linux/kernel/common-config: Reenable the rfkill-input module
2024-01-11linux: enable CONFIG_RTC_HCTOSYSTungsten8421-0/+3
2024-01-11linux: set CONFIG_X86_GENERICAlyssa Ross1-0/+1
> This is really intended for distributors who need more generic > optimizations. Apparently it's expected that as a generic distribution, we set this, and if we had we wouldn't have been affected by the recent 32-bit x86 Xen breakage[1][2]: > In normal distro kernels, CONFIG_X86_GENERIC is enabled [1]: https://lore.kernel.org/lkml/20231204084722.3789473-1-arnd@kernel.org/ [2]: 096639c548e2 ("linux: drop XEN on 32-bit")
2024-01-07linux/kernel/common-config: Reenable the rfkill-input moduleibbem1-0/+1
The default value of the RFKILL_INPUT Kconfig option depends on the EXPERT option which was changed in 3b07356d2d55c5eacc7a11eb08c3a8de97884b2f. However, disabling the rfkill-input module was unintentional and causes some airplane mode buttons on laptops to not function [1]. [1]: https://github.com/NixOS/nixpkgs/issues/261880
2024-01-07Merge pull request #279146 from alyssais/udmabufJörg Thalheim1-0/+2
linux: enable UDMABUF
2024-01-07Merge branch 'master' into pr/bcachefsJörg Thalheim1-17/+17
2024-01-06linux: enable UDMABUFAlyssa Ross1-0/+2
> A driver to let userspace turn memfd regions into dma-bufs. > Qemu can use this to create host dmabufs for guest framebuffers. Enabled by Fedora and Arch.
2023-12-09linux: drop XEN on 32-bitVladimír Čunát1-17/+17
It doesn't build anymore and I doubt anyone wants to maintain it: https://hydra.nixos.org/build/243596962/nixlog/1
2023-12-05linux/common-config: add default bcachefs optionsMadoura1-0/+3
2023-11-25kernel: enable support for MT798XLorenz Brun1-0/+6
This adds two kernel config settings, one to make MediaTek network modules visible (so the modules get built) and one to support the SoC-integrated MT7915E variant in the module. This gets the MT798X series of SoCs working with a stock NixOS kernel.
2023-11-13Merge remote-tracking branch 'origin/master' into staging-nextFabián Heredia Montiel1-1/+7
2023-11-13linux_testing: 6.6-rc7 -> 6.7-rc1Alyssa Ross1-1/+0
ZSMALLOC is now the default allocator for ZSWAP, so if the allocator isn't changed, ZSMALLOC must be y on 6.7 (and will default to that). The script will set all options that can be modules to m anyway, so there was no need for us to be explicitly setting it to module before anyway.
2023-11-13linux: enable the NIST SP800-90A DRBG8aed1-0/+7
2023-11-02Merge master into staging-nextgithub-actions[bot]1-0/+24
2023-11-02Merge pull request #255804 from sielicki/kernel-arm-alignment-compatK9001-0/+22
kernel/common-config: arm: configure alignment traps
2023-11-02kernel: fix framebuffer console after 6.6André Vitor de Lima Matos1-0/+2
These options were already enabled in previous versions, but Kconfig changes in 6.6 made NixOS kernel disable them. Therefore, we enable unconditionally, to be explicit that they're needed. Without them, the fbcon/console on systems with DRM devices freeze/blank on early boot, even though the system boots normally.
2023-10-30Merge master into staging-nextgithub-actions[bot]1-0/+4
2023-10-30linux/common-config: enable new security features for 6.6K9001-0/+4
2023-10-26Merge #255683: linux_xanmod*: cleanup extra configVladimír Čunát1-0/+2
...into staging
2023-10-20linux: cleanup common-config after drop of 4.14Fabián Heredia Montiel1-92/+21
Previous (4.9): https://github.com/NixOS/nixpkgs/pull/201845
2023-09-23linux-kernel: Add HP drivers on 6.1+hubofeverything1-0/+1
2023-09-17kernel/common-config: arm: configure alignment trapsNicholas Sielicki1-0/+22
under armv7l, config.gz already had CONFIG_ALIGNMENT_TRAP=y, but explicitly enable it and provide some context for the option. under aarch64, on kernels that are new enough to support it, specify CONFIG_COMPAT_ALIGNMENT_FIXUPS=y to attempt to resolve alignment faults identically to how they are handled under 32-bit kernels. This minimizes the potential for aarch32 userspace to behave differently under an aarch64 kernel.
2023-09-17linux/common-config: enable FSCACHE_STATSAtemu1-0/+2
Exposes /proc/fs/fscache/stats that shows some handy stats about fs caching. Can be useful for debugging, so why not.
2023-09-12linux_testing: 6.5-rc7 -> 6.6-rc1Kiskae1-3/+3
rc1: https://lwn.net/Articles/944122/
2023-08-12Merge master into staging-nextgithub-actions[bot]1-1/+1
2023-08-12linux: disable KUNIT only at 5.5 and laterSergei Trofimovich1-1/+1
`KUNIT` knob was added around 5.5 release: https://github.com/torvalds/linux/commit/914cc63eea6fbe11ed46dba5e4438d81b0cd42d2