Merge pull request #178 from bahaynes/master

This commit is contained in:
Jörg Thalheim
2020-07-30 05:47:09 +01:00
committed by GitHub
7 changed files with 289 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
= 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.
== NVIDIA Offload ==
In order to run a program on the NVIDIA gpu, you can use the `nvidia-offload` function, for example:
```
nvidia-offload `nix-shell -p glxinfo --run 'glxgears'`
```
This is a short bash script that sets the proper environment variables and calls your command.

View File

@@ -0,0 +1,21 @@
{ 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 (https://github.com/intel/dptfxtract)
services.thermald.configFile = lib.mkDefault thermald-conf;
}

View File

@@ -0,0 +1,15 @@
{ lib, pkgs, ... }:
{
imports = [
../default.nix
../../../../common/gpu/nvidia.nix
];
hardware.nvidia.prime = {
# 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";
};
}

View 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 -->