nixpkgs/nixos/modules/hardware
Vincent Haupert b88ddadf8b nixos/intel-sgx: add option for Intel SGX DCAP compatibility
The Intel SGX DCAP driver makes the SGX application enclave device and
the SGX provisioning enclave available below the path `/dev/sgx/`. Since
Linux 5.11, a derivation of the DCAP driver is part of the kernel and
available through the X86_SGX config option; NixOS enables this option
by default.

In contrast to the out-of-tree DCAP driver, the in-tree SGX driver uses
a flat hierarchy for the SGX devices resulting in the paths
`/dev/sgx_enclave` for the application enclave device and
`/dev/sgx_provison` for the provisioning enclave device.

As of this commit, even the latest version of the Intel SGX PSW
libraries still tries to open the (legacy) DCAP paths only. This means
that SGX software currently cannot find the required SGX devices even if
the system actually supports SGX through the in-tree driver. Intel wants
to change this behavior in an upcoming release of intel/linux-sgx.

Having said that, SGX software assuming the SGX devices below
`/dev/sgx/` will prevail. Therefore, this commit introduces the NixOS
configuration option `hardware.cpu.intel.sgx.enableDcapCompat` which
creates the necessary symlinks to support existing SGX software. The
option defaults to true as it is currently the only way to support SGX
software. Also, enabling the SGX AESM service enables the option.

The permissions of the devices `/dev/sgx_enclave` and
`/dev/sgx_provison` remain the same, i.e., are not affected regardless
of having the new option enabled or not.
2022-01-11 14:02:16 +01:00
..
cpu nixos/intel-sgx: add option for Intel SGX DCAP compatibility 2022-01-11 14:02:16 +01:00
keyboard nixos/zsa: plugdev group was replaced by uaccess 2021-11-19 10:00:32 +01:00
network kernelPatches: ath driver: allow setting regulatory domain 2021-01-08 02:20:08 +01:00
onlykey onlykey: set the group correctly in the udev rule (#153618) 2022-01-05 10:29:37 -08:00
raid treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
sensor nixos/iio: mention iio-sensor-proxy in option description 2021-07-23 11:10:30 +10:00
video amdgpu-pro: 17.40 -> 21.30 2021-12-21 11:17:34 -04:00
acpilight.nix nixos/acpilight: add to packages 2020-11-12 05:22:18 +03:00
all-firmware.nix firmwareLinuxNonfree -> linux-firmware 2022-01-10 12:28:03 -03:00
bladeRF.nix nixos/*: editorconfig fixes 2020-08-08 10:54:16 +10:00
brillo.nix brillo: init at 1.4.8 2019-11-03 14:42:43 +01:00
ckb-next.nix nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
corectrl.nix nixos/corectrl: init module 2021-06-11 03:00:29 +03:00
device-tree.nix nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
digitalbitbox.nix nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
flirc.nix nixos/flirc: init module 2021-10-28 12:33:27 -04:00
gkraken.nix nixos/gkraken: init 2021-10-03 12:42:55 +02:00
gpgsmartcards.nix nixos/hardware/gpgSmartcard: init udev rules 2021-11-10 16:41:52 -08:00
i2c.nix nixos/i2c: add module to set up i2c permissions 2021-02-06 15:08:13 +01:00
ksm.nix nixos/ksm: remove udev-settle dependency 2021-02-26 22:10:10 +01:00
ledger.nix
logitech.nix nixos/lcd: support for Logitech devices 2020-08-04 20:46:07 +08:00
mcelog.nix
nitrokey.nix module nitrokey: drop option group 2021-01-18 07:36:51 +01:00
opengl.nix nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
openrazer.nix nixos/openrazer: Add a users option 2021-08-07 12:10:43 +03:00
opentabletdriver.nix nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
pcmcia.nix nixos/pcmcia: Type the last option 2021-12-08 11:02:34 +01:00
printers.nix Merge pull request #132713 from ncfavier/cups 2021-10-14 14:54:08 +01:00
rtl-sdr.nix nixos/rtl-sdr: blacklist DVB kernel modules 2021-03-25 00:35:58 +00:00
sata.nix nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
steam-hardware.nix
system-76.nix treewide: set defaultText for options using simple path defaults 2021-12-09 01:12:13 +01:00
tuxedo-keyboard.nix nixos/modules: remove trailing whitespace 2020-08-07 14:45:39 +01:00
ubertooth.nix nixos/hardware/ubertooth: init at 2018-12-R1 2021-01-08 11:15:30 +01:00
uinput.nix xow: 0.2 -> 0.4 2020-03-31 17:24:37 +03:00
usb-wwan.nix
wooting.nix nixos/wooting: add hardware.wooting module 2019-12-19 15:49:19 +00:00
xpadneo.nix maintainers: rename metadark -> kira-bruneau (#124035) 2021-05-22 16:47:40 +02:00