diff options
-rw-r--r-- | configs/ASRock/B450-Gaming-ITX-ac.conf | 100 | ||||
-rw-r--r-- | configs/ASRock/Z390-Extreme4.conf | 107 | ||||
-rw-r--r-- | configs/Gigabyte/GA-AB350N-GAMING-WIFI-REV1.0.conf | 91 | ||||
-rw-r--r-- | configs/Gigabyte/GA-H170M-D3H.conf | 30 | ||||
-rw-r--r-- | configs/Lenovo/ThinkPad-X1-Carbon.conf | 22 | ||||
-rwxr-xr-x | prog/detect/sensors-detect | 15 | ||||
-rw-r--r-- | prog/init/fancontrol.service | 2 | ||||
-rw-r--r-- | prog/init/sensord.service | 2 |
8 files changed, 360 insertions, 9 deletions
diff --git a/configs/ASRock/B450-Gaming-ITX-ac.conf b/configs/ASRock/B450-Gaming-ITX-ac.conf new file mode 100644 index 00000000..01e7603c --- /dev/null +++ b/configs/ASRock/B450-Gaming-ITX-ac.conf @@ -0,0 +1,100 @@ +# ASRock B450 Gaming-ITX/ac +# manufacturing date July 2019 (came with Zen2-aware BIOS) +# board does have connectors for buzzer and 3 fans (2 case + 1 CPU) +# board does not have a connector for intrusion detection +# dmesg: "nct6775: Found NCT6792D or compatible chip at 0x2e:0x290" + +chip "nct6792-*" + + # beeping appears to not work + set beep_enable 1 + + # voltages + + label in0 "Vcore" + compute in0 @*2, @/2 + set in0_min 0.16 + set in0_max 1.46 + set in0_beep 1 + + label in2 "AVCC" + set in2_min 3.30 * 0.90 + set in2_max 3.30 * 1.10 + + label in3 "+3.3V" + set in3_min 3.30 * 0.90 + set in3_max 3.30 * 1.10 + + label in7 "3VSB" + set in7_min 3.30 * 0.90 + set in7_max 3.30 * 1.10 + + label in8 "VBAT" + set in8_min 3.00 * 0.90 + set in8_max 3.30 * 1.10 + + label in9 "+12V" + compute in9 @*(53/8), @/(53/8) + set in9_min 12 * 0.90 + set in9_max 12 * 1.10 + + label in13 "+5V" + compute in13 @*(24/8), @/(24/8) + set in13_min 5 * 0.90 + set in13_max 5 * 1.10 + + # these are all zero + ignore in1 + ignore in4 + ignore in5 + ignore in6 + ignore in14 + + # these have non-zero input, but are unknown + ignore in10 + ignore in11 + ignore in12 + + # temperatures + # not sure about temp2 and temp3 + label temp2 "VRM(?) temp" + set temp2_max 55 + set temp2_max_hyst 50 + set temp2_beep 1 + label temp3 "MB(?) temp" + set temp3_max 55 + set temp3_max_hyst 50 + set temp3_beep 1 + label temp7 "CPU temp" + + # temp2 has similar readings to temp3 + # other temps are zero or unreasonably high/low + ignore temp1 + ignore temp4 + ignore temp5 + ignore temp6 + ignore temp8 + ignore temp9 + ignore temp10 + + # fans + + label fan1 "CHA_FAN1" + set fan1_min 300 + set fan1_beep 1 + label fan2 "CPU_FAN1" + set fan2_min 600 + set fan2_beep 1 + label fan3 "CHA_FAN2" + set fan3_min 300 + set fan3_beep 1 + + # these are not on the mainboard + ignore fan4 + ignore fan5 + + # misc + + ignore intrusion0 + ignore intrusion1 + diff --git a/configs/ASRock/Z390-Extreme4.conf b/configs/ASRock/Z390-Extreme4.conf new file mode 100644 index 00000000..81e6a832 --- /dev/null +++ b/configs/ASRock/Z390-Extreme4.conf @@ -0,0 +1,107 @@ +# ASRock Z3900 Extreme4 +# 2019, contributed by Alex Cherkayev <doctor64@gmail.com> +# +# dmi: board_name: Z390 Extreme4 +# dmi: board_vendor: ASRock +# dmi: bios_version: P4.00 +# cpu: Intel(R) Core(TM) i7-9700K CPU +chip "nct6791-isa-*" + + # Fans + label fan1 "CHA Fan 3/WP" + label fan2 "CPU Fan 1" + label fan3 "CPU Fan 2/WP" + label fan4 "CHA Fan 1/WP" + label fan5 "CHA Fan 2/WP" + + # Temperatures + label temp1 "Motherboard" + set temp1_max 55 + set temp1_max_hyst 50 + label temp2 "CPU MB" + set temp2_max 100 + set temp2_max_hyst 75 + + # temp3 always 22 + # temp4 102 in idle, 103 under load + # temp5 always 15 + # temp6 always 12 + ignore temp3 + ignore temp4 + ignore temp5 + ignore temp6 + + #PECI Agent 0 match CPU cores temp + label temp7 "CPU Core" + + # PCH_CHIP_CPU_MAX_TEMP PCH_CHIP_TEMP PCH_CPU_TEMP always 0.0C, ignore + ignore temp8 + ignore temp9 + ignore temp10 + + # Voltages + + label in0 "VCore Voltage" + compute in0 @*2, @/2 + set in0_min 0.40 + set in0_max 1.40 + + label in1 "+5V" + # deduced, not confirmed + compute in1 ((20/10)+1)*@, @/((20/10)+1) + set in1_min 5 * 0.95 + set in1_max 5 * 1.05 + + label in4 "+12V" + # deduced, not confirmed + compute in4 @*12, @/12 + set in4_min 12 * 0.95 + set in4_max 12 * 1.05 + + #unknown, always 1.18V just set limits to remove alarm + set in5_min 1.1 + set in5_max 1.3 + + label in6 "PCH +1.0V" + # limit taken from intel 300 series pch datasheet + # set in6_min 0.99 + # set in6_max 1.10 + # verified by changing in bios, limit taken from bios + set in6_min 0.9 + set in6_max 1.3 + + label in9 "VCCST" + # verified by changing in bios, limit taken from bios + set in9_min 0.9 + set in9_max 1.25 + + # unknown, always 0.24V, just set limit to remove alarm + set in10_min 0.1 + set in10_max 0.3 + + label in11 "VCCIO" + # verified by changing in bios, limit taken from bios + # limit taken from bios + set in11_min 0.85 + set in11_max 1.35 + + label in12 "DRAM Voltage" + # verified by changing in bios, limit taken from bios + set in12_min 1.10 + set in12_max 1.40 + + label in13 "DRAM VPP" + # verified by changing in bios, limit taken from bios +- 0.1V + compute in13 @*2, @/2 + set in13_min 2.4 + set in13_max 2.8 + + label in14 "VCCSA" + # verified by changing in bios, limit taken from bios + set in14_min 0.95 + set in14_max 1.35 + + # Potential things to filter + # These inputs are unused unless you have a case intrusion switch connected. + # ignore intrusion0 + # ignore intrusion1 diff --git a/configs/Gigabyte/GA-AB350N-GAMING-WIFI-REV1.0.conf b/configs/Gigabyte/GA-AB350N-GAMING-WIFI-REV1.0.conf new file mode 100644 index 00000000..d1e9f732 --- /dev/null +++ b/configs/Gigabyte/GA-AB350N-GAMING-WIFI-REV1.0.conf @@ -0,0 +1,91 @@ +# GA-AB350N-Gaming WIFI (rev. 1.0) + +# dmi: board_name: AB350N-Gaming WIFI-CF +# dmi: board_vendor: Gigabyte Technology Co., Ltd. +# dmi: board_version: x.x +# dmi: bios_version: F50a + +chip "it8686-isa-0a40" + label temp1 "System 1" + label temp2 "Chipset" + label temp3 "CPU Socket" + label temp4 "PCI-EX16" + label temp5 "VRM MOS" + label temp6 "vSOC MOS" + + label in0 "CPU Vcore" + label in1 "+3.3v" + label in2 "+12v" + label in3 "+5v" + label in4 "CPU Vcore SOC" + label in5 "CPU VDDP" + label in6 "DRAM A/B" + label in7 "3VSB" + label in8 "Battery" + + label fan1 "CPU_FAN" + label fan2 "SYS_FAN1" + + compute in1 @*1.650,@/1.650 + compute in2 @*6,@/6 + compute in3 @*2.5,@/2.5 + + set temp1_min 15 + set temp1_max 65 + set temp2_min 15 + set temp2_max 80 + set temp3_min 15 + set temp3_max 85 + set temp4_min 15 + set temp4_max 30 + set temp5_min 15 + set temp5_max 95 + set temp6_min 15 + set temp6_max 90 + + set in0_min 0.6 + set in0_max 1.45 + set in1_min 3.135 + set in1_max 3.465 + set in2_min 11.400 + set in2_max 12.600 + set in3_min 4.750 + set in3_max 5.250 + set in6_min 1.2 * 0.97 + set in6_max 1.2 * 1.2 + set in7_min 3.3 * 0.97 + set in7_max 3.3 * 1.05 + + set fan1_min 900 + set fan2_min 900 + +chip "it8792-isa-0a60" + label temp1 "PCI-EX8" + label temp2 "Temp 2" + label temp3 "System 2" + + label in0 "CPU Vcore" + label in1 "DDR VTT" + label in2 "Chipset Core" + label in3 "VIN3" + label in4 "CPU VDD18" + label in5 "DDR VPP" + label in7 "3VSB" + label in8 "VBAT" + + set temp1_min 15 + set temp1_max 60 + set temp2_min 15 + set temp2_max 60 + set temp3_min 15 + set temp3_max 60 + + set in0_min 0.6 + set in0_max 1.45 + set in7_min 3.135 + set in7_max 3.465 + + ignore in6 + ignore fan1 + ignore fan2 + ignore fan3 diff --git a/configs/Gigabyte/GA-H170M-D3H.conf b/configs/Gigabyte/GA-H170M-D3H.conf new file mode 100644 index 00000000..0094424c --- /dev/null +++ b/configs/Gigabyte/GA-H170M-D3H.conf @@ -0,0 +1,30 @@ +# Configuration for the Gigabyte GA-H170M-D3H (name from the manual) mainboard. +# Name from dmidecode -s baseboard-product-name: H170M-D3H-CF +# BIOS version: F23f +# Driver: it87 +# added by dokutan, 2020 + +chip "it8628-isa-*" + + ### voltage sensors + ### these labels are mostly determined by comparing the values to the values from the bios + # in1 - 1n5: i have no clue, the bios reports +5V and +12V values, + # the it87 kernel documentation suggests in3 might be internal to the chip + # label in0 "Vcore" # this value scales with CPU load but seems a bit low (~0.7V to 1.2V) + # label in2 "+12V" # in2*6 is exactly the +12V value from the bios + label in6 "Vmemory" # this is stable and the value from the bios + + ### fans + ### the mappings fan to label are all tested + label fan1 "CPU fan" + label fan2 "Case fan 1" + label fan3 "Case fan 2" + ignore fan4 # there are only 3 fan headers + CPU fan on this mainboard + label fan5 "Case fan 3" + + ### temperature sensors + ### these labels are determined by comparison with other sensors under different load scenarios + # temp5 correlates with CPU temp, but stays significantly lower + # temp1, temp4 and temp6 stay relatively low, even under CPU load + ignore temp2 # this always gives a reading of +127.0°C + label temp3 "CPU temp" # this might have a 1-2°C difference to the coretemp package sensor diff --git a/configs/Lenovo/ThinkPad-X1-Carbon.conf b/configs/Lenovo/ThinkPad-X1-Carbon.conf new file mode 100644 index 00000000..54c79a02 --- /dev/null +++ b/configs/Lenovo/ThinkPad-X1-Carbon.conf @@ -0,0 +1,22 @@ +# Tested with Lenovo ThinkPad X1 Carbon Gen 6 + +chip "thinkpad-isa-0000" + # always zero + ignore temp2 + ignore temp3 + ignore temp4 + ignore temp5 + ignore temp6 + ignore temp7 + ignore temp8 + ignore temp9 + ignore temp10 + ignore temp12 + ignore temp13 + ignore temp14 + ignore temp15 + ignore temp16 + + label fan1 "Fan" + label temp1 "CPU" + label temp11 "Power circuitry" diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect index 6fc441aa..fd43db56 100755 --- a/prog/detect/sensors-detect +++ b/prog/detect/sensors-detect @@ -719,11 +719,6 @@ use vars qw(@i2c_adapter_names); i2c_addrs => [0x2c..0x2e], i2c_detect => sub { emc6w201_detect(@_); }, }, { - name => "Winbond WPCD377I", - driver => "not-a-sensor", - i2c_addrs => [0x2c..0x2e], - i2c_detect => sub { lm85_detect(@_, 7); }, - }, { name => "Analog Devices ADT7462", driver => "adt7462", i2c_addrs => [0x5c, 0x58], @@ -1684,6 +1679,10 @@ use vars qw(@i2c_adapter_names); i2c_addrs => [0x2c..0x2f], i2c_detect => sub { w83791sd_detect(@_); }, }, { + name => "Winbond WPCD377I", + i2c_addrs => [0x2c..0x2e], + i2c_detect => sub { lm85_detect(@_, 7); }, + }, { name => "Fintek F75111R/RG/N (GPIO)", i2c_addrs => [0x37, 0x4e], i2c_detect => sub { fintek_detect(@_, 1); }, @@ -2273,7 +2272,7 @@ use constant FEAT_SMBUS => (1 << 7); features => FEAT_IN | FEAT_FAN | FEAT_TEMP, }, { name => "Nuvoton W83677HG-I (NCT5572D/NCT6771F/NCT6772F/NCT6775F) Super IO Sensors", - driver => "w83627ehf", + driver => sub { kernel_version_at_least(3, 10, 0) ? "nct6775" : "w83627ehf" }, devid => 0xB470, devid_mask => 0xFFF0, logdev => 0x0b, @@ -4574,7 +4573,9 @@ sub scan_cpu sub chip_special_cases { # Some chip to driver mappings depend on the environment - foreach my $chip (@chip_ids) { + foreach my $chip (@chip_ids, @superio_ids_natsemi, @superio_ids_smsc, + @superio_ids_smsc_ns, @superio_ids_winbond, + @superio_ids_ite) { if (ref($chip->{driver}) eq 'CODE') { $chip->{driver} = $chip->{driver}->(); } diff --git a/prog/init/fancontrol.service b/prog/init/fancontrol.service index 3ac1ed02..43293141 100644 --- a/prog/init/fancontrol.service +++ b/prog/init/fancontrol.service @@ -5,7 +5,7 @@ After=lm_sensors.service [Service] Type=simple -PIDFile=/var/run/fancontrol.pid +PIDFile=/run/fancontrol.pid ExecStart=/usr/sbin/fancontrol [Install] diff --git a/prog/init/sensord.service b/prog/init/sensord.service index 2448beeb..af2f0ae9 100644 --- a/prog/init/sensord.service +++ b/prog/init/sensord.service @@ -5,7 +5,7 @@ After=lm_sensors.service [Service] EnvironmentFile=/etc/sysconfig/sensord Type=forking -PIDFile=/var/run/sensord.pid +PIDFile=/run/sensord.pid ExecStart=/usr/sbin/sensord -i $INTERVAL -l $LOG_INTERVAL -f daemon [Install] |