sigil/nixos-modules/hardware/ahci.nix

31 lines
753 B
Nix

{ config, pkgs, lib, ... }:
with lib;
{
options.hardware.genode.ahci = {
enable = lib.mkEnableOption "AHCI (SATA) block driver";
atapiSupport = lib.mkEnableOption "ATAPI support";
};
config = let cfg = config.hardware.genode.ahci;
in {
hardware.genode.platform.policies = lib.optional cfg.enable
(builtins.toFile ("ahci.platform-policy.dhall") ''
let Genode = env:DHALL_GENODE
in Genode.Init.Config.Policy::{
, service = "Platform"
, label = Genode.Init.LabelSelector.prefix "drivers -> ahci"
, content =
[ Genode.Prelude.XML.leaf
{ name = "pci", attributes = toMap { class = "AHCI" } }
]
}
'');
};
}