diff --git a/flake.nix b/flake.nix index 952eb2c..13a1c41 100644 --- a/flake.nix +++ b/flake.nix @@ -18,6 +18,7 @@ in { nixosModules = { + ryzenSMU = import ./modules/ryzenSMU; }; packages = forAllSystems (system: import ./. { diff --git a/modules/ryzenSMU/default.nix b/modules/ryzenSMU/default.nix new file mode 100644 index 0000000..61fb583 --- /dev/null +++ b/modules/ryzenSMU/default.nix @@ -0,0 +1,19 @@ +{ config, lib, pkgs, ... }: + +let + inherit (config.boot.kernelPackages) kernel; + inherit (lib) mkEnableOption mkIf; + self = pkgs.callPackage ../.. { inherit pkgs; }; + cfg = config.hardware.cpu.amd.ryzenSMU; + +in { + + options.hardware.cpu.amd.ryzenSMU.enable = mkEnableOption '' + access to SMU of AMD Ryzen Mobile processors + ''; + + config = mkIf cfg.enable { + boot.extraModulePackages = [ (self.ryzen_smu.override { inherit kernel; }) ]; + }; + +}