mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 14:54:29 +01:00
Merge pull request #108725 from veehaitch/ath_regd_optional
kernelPatches: ath driver: allow setting regulatory domain
This commit is contained in:
commit
04af7c02cd
3 changed files with 45 additions and 0 deletions
31
nixos/modules/hardware/network/ath-user-regd.nix
Normal file
31
nixos/modules/hardware/network/ath-user-regd.nix
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
kernelVersion = config.boot.kernelPackages.kernel.version;
|
||||||
|
linuxKernelMinVersion = "5.8";
|
||||||
|
kernelPatch = pkgs.kernelPatches.ath_regd_optional // {
|
||||||
|
extraConfig = ''
|
||||||
|
ATH_USER_REGD y
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.networking.wireless.athUserRegulatoryDomain = mkOption {
|
||||||
|
default = false;
|
||||||
|
type = types.bool;
|
||||||
|
description = ''
|
||||||
|
If enabled, sets the ATH_USER_REGD kernel config switch to true to
|
||||||
|
disable the enforcement of EEPROM regulatory restrictions for ath
|
||||||
|
drivers. Requires at least Linux ${linuxKernelMinVersion}.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf config.networking.wireless.athUserRegulatoryDomain {
|
||||||
|
assertions = singleton {
|
||||||
|
assertion = lessThan 0 (builtins.compareVersions kernelVersion linuxKernelMinVersion);
|
||||||
|
message = "ATH_USER_REGD patch for kernels older than ${linuxKernelMinVersion} not ported yet!";
|
||||||
|
};
|
||||||
|
boot.kernelPatches = [ kernelPatch ];
|
||||||
|
};
|
||||||
|
}
|
|
@ -52,6 +52,7 @@
|
||||||
./hardware/ledger.nix
|
./hardware/ledger.nix
|
||||||
./hardware/logitech.nix
|
./hardware/logitech.nix
|
||||||
./hardware/mcelog.nix
|
./hardware/mcelog.nix
|
||||||
|
./hardware/network/ath-user-regd.nix
|
||||||
./hardware/network/b43.nix
|
./hardware/network/b43.nix
|
||||||
./hardware/network/intel-2200bg.nix
|
./hardware/network/intel-2200bg.nix
|
||||||
./hardware/nitrokey.nix
|
./hardware/nitrokey.nix
|
||||||
|
|
|
@ -1,6 +1,19 @@
|
||||||
{ lib, fetchpatch, fetchurl }:
|
{ lib, fetchpatch, fetchurl }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
ath_regd_optional = rec {
|
||||||
|
name = "ath_regd_optional";
|
||||||
|
patch = fetchpatch {
|
||||||
|
name = name + ".patch";
|
||||||
|
url = "https://github.com/openwrt/openwrt/raw/ed2015c38617ed6624471e77f27fbb0c58c8c660/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch";
|
||||||
|
sha256 = "1ssDXSweHhF+pMZyd6kSrzeW60eb6MO6tlf0il17RC0=";
|
||||||
|
postFetch = ''
|
||||||
|
sed -i 's/CPTCFG_/CONFIG_/g' $out
|
||||||
|
sed -i '/--- a\/local-symbols/,$d' $out
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
bridge_stp_helper =
|
bridge_stp_helper =
|
||||||
{ name = "bridge-stp-helper";
|
{ name = "bridge-stp-helper";
|
||||||
patch = ./bridge-stp-helper.patch;
|
patch = ./bridge-stp-helper.patch;
|
||||||
|
|
Loading…
Reference in a new issue