mirror of
https://github.com/NixOS/nixos-hardware
synced 2024-11-23 11:29:42 +01:00
Added dell xps 15-9500, with nvidia gpu.
This commit is contained in:
parent
cc353d439e
commit
6ffcdbacc5
7 changed files with 288 additions and 0 deletions
|
@ -69,6 +69,8 @@ See code for all available configurations.
|
||||||
| [Dell XPS 15 9560][] | `<nixos-hardware/dell/xps/15-9560>` |
|
| [Dell XPS 15 9560][] | `<nixos-hardware/dell/xps/15-9560>` |
|
||||||
| [Dell XPS 15 9560, intel only][] | `<nixos-hardware/dell/xps/15-9560/intel>` |
|
| [Dell XPS 15 9560, intel only][] | `<nixos-hardware/dell/xps/15-9560/intel>` |
|
||||||
| [Dell XPS 15 9560, nvidia only][] | `<nixos-hardware/dell/xps/15-9560/nvidia>` |
|
| [Dell XPS 15 9560, nvidia only][] | `<nixos-hardware/dell/xps/15-9560/nvidia>` |
|
||||||
|
| [Dell XPS 15 9500][] | `<nixos-hardware/dell/xps/15-9500>` |
|
||||||
|
| [Dell XPS 15 9500, nvidia][] | `<nixos-hardware/dell/xps/15-9500/nvidia>` |
|
||||||
| [Google Pixelbook][] | `<nixos-hardware/google/pixelbook>` |
|
| [Google Pixelbook][] | `<nixos-hardware/google/pixelbook>` |
|
||||||
| [Inverse Path USB armory][] | `<nixos-hardware/inversepath/usbarmory>` |
|
| [Inverse Path USB armory][] | `<nixos-hardware/inversepath/usbarmory>` |
|
||||||
| Lenovo IdeaPad Z510 | `<nixos-hardware/lenovo/ideapad/z510>` |
|
| Lenovo IdeaPad Z510 | `<nixos-hardware/lenovo/ideapad/z510>` |
|
||||||
|
|
14
dell/xps/15-9500/README.wiki
Normal file
14
dell/xps/15-9500/README.wiki
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
= Dell XPS 15 9550 =
|
||||||
|
|
||||||
|
== Tested Hardware ==
|
||||||
|
|
||||||
|
* CPU: Intel(R) Core(TM) i7-10875H CPU @ 2.30GHz
|
||||||
|
* RAM: 64 GB
|
||||||
|
* HDD: 1 TiB SSD
|
||||||
|
* Screen: 15" 4k (3840✕2160)
|
||||||
|
* Graphics: NVIDIA Corporation TU117M [GeForce GTX 1650 Ti Mobile], with Intel Graphics too.
|
||||||
|
* Input: Touchscreen and trackpad.
|
||||||
|
|
||||||
|
== Notes ==
|
||||||
|
|
||||||
|
Also tested with Dell WD19TB Thunderbolt Dock.
|
10
dell/xps/15-9500/default.nix
Normal file
10
dell/xps/15-9500/default.nix
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{ lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./xps-common.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# This configuration makes intel default
|
||||||
|
services.xserver.videoDrivers = lib.mkDefault [ "intel" ];
|
||||||
|
}
|
31
dell/xps/15-9500/nvidia/default.nix
Normal file
31
dell/xps/15-9500/nvidia/default.nix
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{ lib, pkgs, ... }:
|
||||||
|
|
||||||
|
# This creates a new 'nvidia-offload' program that runs the application passed to it on the GPU
|
||||||
|
let
|
||||||
|
nvidia-offload = pkgs.writeShellScriptBin "nvidia-offload" ''
|
||||||
|
export __NV_PRIME_RENDER_OFFLOAD=1
|
||||||
|
export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0
|
||||||
|
export __GLX_VENDOR_LIBRARY_NAME=nvidia
|
||||||
|
export __VK_LAYER_NV_optimus=NVIDIA_only
|
||||||
|
exec -a "$0" "$@"
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../xps-common.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
# As per https://nixos.wiki/wiki/Nvidia
|
||||||
|
services.xserver.videoDrivers = lib.mkDefault [ "nvidia" ];
|
||||||
|
environment.systemPackages = [ nvidia-offload ];
|
||||||
|
|
||||||
|
hardware.nvidia.prime = {
|
||||||
|
offload.enable = lib.mkDefault true;
|
||||||
|
|
||||||
|
# Bus ID of the Intel GPU.
|
||||||
|
intelBusId = lib.mkDefault "PCI:0:2:0";
|
||||||
|
|
||||||
|
# Bus ID of the NVIDIA GPU.
|
||||||
|
nvidiaBusId = lib.mkDefault "PCI:1:0:0";
|
||||||
|
};
|
||||||
|
}
|
205
dell/xps/15-9500/thermald-conf.xml
Normal file
205
dell/xps/15-9500/thermald-conf.xml
Normal file
|
@ -0,0 +1,205 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<!-- BEGIN -->
|
||||||
|
<ThermalConfiguration>
|
||||||
|
<Platform>
|
||||||
|
<Name> Auto generated </Name>
|
||||||
|
<ProductName>XPS 15 9500</ProductName>
|
||||||
|
<Preference>QUIET</Preference>
|
||||||
|
<PPCC>
|
||||||
|
<PowerLimitIndex>0</PowerLimitIndex>
|
||||||
|
<PowerLimitMinimum>10000</PowerLimitMinimum>
|
||||||
|
<PowerLimitMaximum>68000</PowerLimitMaximum>
|
||||||
|
<TimeWindowMinimum>56000</TimeWindowMinimum>
|
||||||
|
<TimeWindowMaximum>56000</TimeWindowMaximum>
|
||||||
|
<StepSize>250</StepSize>
|
||||||
|
</PPCC>
|
||||||
|
<ThermalZones>
|
||||||
|
<ThermalZone>
|
||||||
|
<Type>auto_zone_0</Type>
|
||||||
|
<TripPoints>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN2</SensorType>
|
||||||
|
<Temperature>55000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
<TargetState>45000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN2</SensorType>
|
||||||
|
<Temperature>57000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
<TargetState>40000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN2</SensorType>
|
||||||
|
<Temperature>60000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
<TargetState>35000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN2</SensorType>
|
||||||
|
<Temperature>64000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>3</SamplingPeriod>
|
||||||
|
<TargetState>35000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN2</SensorType>
|
||||||
|
<Temperature>68000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>3</SamplingPeriod>
|
||||||
|
<TargetState>20000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN2</SensorType>
|
||||||
|
<Temperature>70000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>3</SamplingPeriod>
|
||||||
|
<TargetState>15000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
</TripPoints>
|
||||||
|
</ThermalZone>
|
||||||
|
<ThermalZone>
|
||||||
|
<Type>auto_zone_1</Type>
|
||||||
|
<TripPoints>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN5</SensorType>
|
||||||
|
<Temperature>38000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
<TargetState>22000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN5</SensorType>
|
||||||
|
<Temperature>39000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
<TargetState>17000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN5</SensorType>
|
||||||
|
<Temperature>40000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>3</SamplingPeriod>
|
||||||
|
<TargetState>12000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>SEN5</SensorType>
|
||||||
|
<Temperature>41000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>3</SamplingPeriod>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
</TripPoints>
|
||||||
|
</ThermalZone>
|
||||||
|
<ThermalZone>
|
||||||
|
<Type>auto_zone_2</Type>
|
||||||
|
<TripPoints>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>VIR1</SensorType>
|
||||||
|
<Temperature>57000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>3</SamplingPeriod>
|
||||||
|
<TargetState>15000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>VIR1</SensorType>
|
||||||
|
<Temperature>60000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>3</SamplingPeriod>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
</TripPoints>
|
||||||
|
</ThermalZone>
|
||||||
|
<ThermalZone>
|
||||||
|
<Type>auto_zone_3</Type>
|
||||||
|
<TripPoints>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>VIR2</SensorType>
|
||||||
|
<Temperature>76000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
</TripPoints>
|
||||||
|
</ThermalZone>
|
||||||
|
<ThermalZone>
|
||||||
|
<Type>auto_zone_4</Type>
|
||||||
|
<TripPoints>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>WRLS</SensorType>
|
||||||
|
<Temperature>80000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
</TripPoints>
|
||||||
|
</ThermalZone>
|
||||||
|
<ThermalZone>
|
||||||
|
<Type>auto_zone_5</Type>
|
||||||
|
<TripPoints>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>STG1</SensorType>
|
||||||
|
<Temperature>66000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
<TargetState>19000000</TargetState>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
<TripPoint>
|
||||||
|
<SensorType>STG1</SensorType>
|
||||||
|
<Temperature>90000</Temperature>
|
||||||
|
<Type>Passive</Type>
|
||||||
|
<CoolingDevice>
|
||||||
|
<Type>B0D4</Type>
|
||||||
|
<SamplingPeriod>1</SamplingPeriod>
|
||||||
|
</CoolingDevice>
|
||||||
|
</TripPoint>
|
||||||
|
</TripPoints>
|
||||||
|
</ThermalZone>
|
||||||
|
</ThermalZones>
|
||||||
|
</Platform>
|
||||||
|
</ThermalConfiguration>
|
||||||
|
<!-- END -->
|
24
dell/xps/15-9500/xps-common.nix
Normal file
24
dell/xps/15-9500/xps-common.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{ lib, ... }:
|
||||||
|
let
|
||||||
|
thermald-conf = ./thermald-conf.xml;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../../common/cpu/intel
|
||||||
|
../../../common/pc/laptop
|
||||||
|
../../../common/pc/laptop/ssd
|
||||||
|
];
|
||||||
|
|
||||||
|
# Boot loader
|
||||||
|
boot.kernelParams = lib.mkDefault [ "acpi_rev_override" ];
|
||||||
|
|
||||||
|
# This will save you money and possibly your life!
|
||||||
|
services.thermald.enable = lib.mkDefault true;
|
||||||
|
|
||||||
|
# Thermald doesn't have a default config for the 9500 yet, the one in this repo was generated with dptfxtract-static:
|
||||||
|
services.thermald.configFile = lib.mkDefault thermald-conf;
|
||||||
|
|
||||||
|
# Set the tlp config to powersave explictly (this should be default). TLP is enabled in common/pc/laptop.
|
||||||
|
services.tlp.extraConfig = lib.mkDefault "CPU_SCALING_GOVERNOR_ON_AC=powersave\nCPU_SCALING_GOVERNOR_ON_BAT=powersave";
|
||||||
|
|
||||||
|
}
|
|
@ -21,6 +21,8 @@
|
||||||
dell-xps-15-9560 = import ./dell/xps/15-9560;
|
dell-xps-15-9560 = import ./dell/xps/15-9560;
|
||||||
dell-xps-15-9560-intel = import ./dell/xps/15-9560/intel;
|
dell-xps-15-9560-intel = import ./dell/xps/15-9560/intel;
|
||||||
dell-xps-15-9560-nvidia = import ./dell/xps/15-9560/nvidia;
|
dell-xps-15-9560-nvidia = import ./dell/xps/15-9560/nvidia;
|
||||||
|
dell-xps-15-9500 = import ./dell/xps/15-9500;
|
||||||
|
dell-xps-15-9500-nvidia = import ./dell/xps/15-9500/nvidia;
|
||||||
google-pixelbook = import ./google/pixelbook;
|
google-pixelbook = import ./google/pixelbook;
|
||||||
inversepath-usbarmory = import ./inversepath/usbarmory;
|
inversepath-usbarmory = import ./inversepath/usbarmory;
|
||||||
lenovo-ideapad-z510 = import ./lenovo/ideapad/z510;
|
lenovo-ideapad-z510 = import ./lenovo/ideapad/z510;
|
||||||
|
|
Loading…
Reference in a new issue