Add Dell XPS 17 9700

Co-authored-by: Ivan Malison <IvanMalison@gmail.com>
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
This commit is contained in:
workflow 2022-04-01 09:42:10 +01:00
parent feceb4d24f
commit 638263b724
7 changed files with 119 additions and 1 deletions

View file

@ -21,7 +21,7 @@ Where possible, use module imports to share code between similar hardware varian
# Performance
Profiles should favor usability and stability, so performance improvements should either be conservative or
Profiles should favor usability and stability, so performance improvements should either be conservative or
be guarded behind additional NixOS module options.
If it makes sense to have a performance-focussed config, it can be declared in a separate profile.

View file

@ -95,6 +95,8 @@ See code for all available configurations.
| [Dell XPS 15 7590](dell/xps/15-7590) | `<nixos-hardware/dell/xps/15-7590>` |
| [Dell XPS 15 9500, nvidia](dell/xps/15-9500/nvidia) | `<nixos-hardware/dell/xps/15-9500/nvidia>` |
| [Dell XPS 15 9500](dell/xps/15-9500) | `<nixos-hardware/dell/xps/15-9500>` |
| [Dell XPS 17 9700, intel](dell/xps/15-9700/intel) | `<nixos-hardware/dell/xps/17-9700/intel` |
| [Dell XPS 17 9700, nvidia](dell/xps/15-9700/nvidia) | `<nixos-hardware/dell/xps/17-9700/nvidia>` |
| [Dell XPS 15 9550, nvidia](dell/xps/15-9550/nvidia) | `<nixos-hardware/dell/xps/15-9550/nvidia>` |
| [Dell XPS 15 9550](dell/xps/15-9550) | `<nixos-hardware/dell/xps/15-9550>` |
| [Dell XPS 15 9560, intel only](dell/xps/15-9560/intel) | `<nixos-hardware/dell/xps/15-9560/intel>` |

View file

@ -0,0 +1,62 @@
= Dell XPS 17 9700 =
== Tested Hardware ==
CPU: Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz
Screen: 17" FHD(1920x1200) InfinityEdge
00:00.0 Host bridge: Intel Corporation 10th Gen Core Processor Host Bridge/DRAM Registers (rev 02)
00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 02)
00:02.0 VGA compatible controller: Intel Corporation CometLake-H GT2 [UHD Graphics] (rev 05)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 02)
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
00:12.0 Signal processing controller: Intel Corporation Comet Lake PCH Thermal Controller
00:13.0 Serial controller: Intel Corporation Device 06fc
00:14.0 USB controller: Intel Corporation Comet Lake USB 3.1 xHCI Host Controller
00:14.2 RAM memory: Intel Corporation Comet Lake PCH Shared SRAM
00:14.3 Network controller: Intel Corporation Comet Lake PCH CNVi WiFi
00:15.0 Serial bus controller [0c80]: Intel Corporation Comet Lake PCH Serial IO I2C Controller #0
00:15.1 Serial bus controller [0c80]: Intel Corporation Comet Lake PCH Serial IO I2C Controller #1
00:16.0 Communication controller: Intel Corporation Comet Lake HECI Controller
00:1b.0 PCI bridge: Intel Corporation Comet Lake PCI Express Root Port #17 (rev f0)
00:1c.0 PCI bridge: Intel Corporation Device 06b8 (rev f0)
00:1c.4 PCI bridge: Intel Corporation Device 06bc (rev f0)
00:1d.0 PCI bridge: Intel Corporation Comet Lake PCI Express Root Port #9 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Device 068e
00:1f.3 Multimedia audio controller: Intel Corporation Comet Lake PCH cAVS
00:1f.4 SMBus: Intel Corporation Comet Lake PCH SMBus Controller
00:1f.5 Serial bus controller [0c80]: Intel Corporation Comet Lake PCH SPI Controller
01:00.0 3D controller: NVIDIA Corporation TU117M [GeForce GTX 1650 Ti Mobile] (rev ff)
02:00.0 Non-Volatile memory controller: SK hynix Device 1639
03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5260 PCI Express Card Reader (rev 01)
04:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:01.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:02.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:04.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
06:00.0 System peripheral: Intel Corporation JHL7540 Thunderbolt 3 NHI [Titan Ridge 4C 2018] (rev 06)
3a:00.0 USB controller: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge 4C 2018] (rev 06)
6e:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
6f:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
6f:01.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
6f:02.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
6f:04.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
70:00.0 System peripheral: Intel Corporation JHL7540 Thunderbolt 3 NHI [Titan Ridge 4C 2018] (rev 06)
a4:00.0 USB controller: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge 4C 2018] (rev 06)
== Firmware Configuration ==
Not much tweaking of NixOS itself was needed. But we currently cannot automate
the firmware setup, so this must be done by hand.
=== Before installation ===
These settings are needed both for booting the final install, and installer
itself. Therefore, they must be done first.
* ''Disable Secure Boot (but keep UEFI Boot).'' Thankfully doing so is as easy as
changing any other simple setting.
* ''Disable Intel hardware RAID and use AHCI instead.'' Intel doesn't seem to
provide a working linux drivr for this. (If you just have SSD it's pointless
and just slows things down needlessly anyways.)

View file

@ -0,0 +1,27 @@
{ lib, pkgs, ... }:
{
# Boot loader
boot.kernelParams = lib.mkDefault [ "acpi_rev_override" ];
boot.kernelModules = lib.mkDefault [ "kvm-intel" ];
hardware.enableRedistributableFirmware = lib.mkDefault true;
# This will save you money and possibly your life!
services.thermald.enable = lib.mkDefault true;
boot.kernelPatches = [{
name = "enable-soundwire-drivers";
patch = null;
extraConfig = ''
SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES y
SND_SOC_INTEL_SOUNDWIRE_SOF_MACH m
SND_SOC_RT1308 m
'';
ignoreConfigErrors = true;
}];
boot.kernelPackages =
lib.mkIf (lib.versionOlder pkgs.linux.version "5.11")
pkgs.linuxPackages_latest;
}

View file

@ -0,0 +1,10 @@
{ lib, pkgs, ... }:
{
imports = [
../../../../common/cpu/intel
../../../../common/pc/laptop
../../../../common/gpu/nvidia-disable.nix
../common.nix
];
}

View file

@ -0,0 +1,15 @@
{ lib, pkgs, ... }:
{
imports = [
../../../../common/cpu/intel
../../../../common/pc/laptop
../../../../common/gpu/nvidia.nix
../common.nix
];
hardware.nvidia.prime = {
nvidiaBusId = lib.mkDefault "PCI:1:0:0";
intelBusId = lib.mkDefault "PCI:0:2:0";
};
}

View file

@ -39,6 +39,8 @@
dell-xps-15-9560 = import ./dell/xps/15-9560;
dell-xps-15-9560-intel = import ./dell/xps/15-9560/intel;
dell-xps-15-9560-nvidia = import ./dell/xps/15-9560/nvidia;
dell-xps-17-9700-intel = import ./dell/xps/17-9700/intel;
dell-xps-17-9700-nvidia = import ./dell/xps/17-9700/nvidia;
dell-xps-17-9710-intel = import ./dell/xps/17-9710/intel;
framework = import ./framework;
friendlyarm-nanopc-t4 = import ./friendlyarm/nanopc-t4;