Skip to content

Commit 532355a

Browse files
committed
Merge tag 'hwmon-for-v7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
Pull hwmon updates from Guenter Roeck: "New PMBus drivers: - HiTRON HAC300S power supply - Monolithic MP5926 Hot-Swap Controller - STEF48H28 hot-swap controller Support for new chips in existing drivers - Support for Pro WS TRX50-SAGE WIFI A and ROG MAXIMUS X HERO (asus-ec-sensors) - Support for Dell OptiPlex 7080 (dell-smm) - Support for F81968 (f71882fg) - Support for Micro PC 2 (gpd-fan) - New customer ID for ASRock Z590 Taichi (nct6683) - Support for ASUS Pro WS WRX90E-SAGE SE (nct6775) - Support for SHT85 (sht3x) - Support for P3T1035 and P3T2030 (tmp108) Bug fixes: - Revert "fix" for UAF which didn't fix a UAF but introduced a race condition resulting in a NULL pointer crash (ibmpex) - Fix failure to instantiate driver if the chip is configured for VID mode (pmbus/mpq8785) - Use READ/WRITE_ONCE to avoid compiler optimization induced race (max16065) - Resource leak fixes (nct7363, emc2305) Other notable changes: - Support for temperature limit thresholds (cros_ec) - Add TjMax for Silvermont through Tremont Atoms (coretemp) Various other minor improvements" * tag 'hwmon-for-v7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (42 commits) hwmon: (pmbus/mpq8785) fix VOUT_MODE mismatch during identification Revert "hwmon: (ibmpex) fix use-after-free in high/low store" hwmon: (max16065) Use READ/WRITE_ONCE to avoid compiler optimization induced race hwmon: (nct6775) use sysfs_emit instead of sprintf hwmon: pmbus: fix table in STEF48H28 documentation hwmon: Add support for HiTRON HAC300S PSU dt-bindings: trivial-devices: Add hitron,hac300s hwmon: (cros_ec) Add support for temperature thresholds hwmon: (cros_ec) Move temperature channel params to a macro hwmon: (cros_ec) Add support for fan target speed hwmon: (cros_ec) Split up supported features in the documentation hwmon: (tmp108) Add P3T1035 and P3T2030 support hwmon: (tmp108) Add support for P3T1035 and P3T2030 dt-bindings: hwmon: ti,tmp108: Add P3T1035,P3T2030 hwmon: pmbus: add support for STEF48H28 dt-bindings: hwmon: add STEF48H28 hwmon: (nct7363) Fix a resource leak in nct7363_present_pwm_fanin hwmon: (emc2305) Fix a resource leak in emc2305_of_parse_pwm_child hwmon: (gpd-fan) add support for Micro PC 2 hwmon: (coretemp) Add TjMax for Silvermont through Tremont Atoms ...
2 parents d701782 + 9e33c1d commit 532355a

46 files changed

Lines changed: 1345 additions & 259 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/hwmon/aspeed,ast2400-pwm-tacho.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: ASPEED AST2400/AST2500 PWM and Fan Tacho controller
8+
9+
maintainers:
10+
- Joel Stanley <[email protected]>
11+
- Andrew Jeffery <[email protected]>
12+
13+
description: >
14+
The ASPEED PWM controller can support up to 8 PWM outputs. The ASPEED Fan
15+
Tacho controller can support up to 16 Fan tachometer inputs.
16+
17+
There can be up to 8 fans supported. Each fan can have 1 PWM output and
18+
1-2 Fan tach inputs.
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- aspeed,ast2400-pwm-tacho
24+
- aspeed,ast2500-pwm-tacho
25+
26+
reg:
27+
maxItems: 1
28+
29+
'#address-cells':
30+
const: 1
31+
32+
'#size-cells':
33+
const: 0
34+
35+
'#cooling-cells':
36+
const: 2
37+
38+
clocks:
39+
maxItems: 1
40+
41+
resets:
42+
maxItems: 1
43+
44+
patternProperties:
45+
'^fan@[0-7]$':
46+
description: Fan subnode
47+
type: object
48+
additionalProperties: false
49+
50+
properties:
51+
reg:
52+
description: PWM source port index (0 = PWM A, ..., 7 = PWM H)
53+
maximum: 7
54+
55+
cooling-levels:
56+
description: PWM duty cycle values for cooling states
57+
$ref: /schemas/types.yaml#/definitions/uint8-array
58+
minItems: 1
59+
maxItems: 16 # Should be enough
60+
61+
aspeed,fan-tach-ch:
62+
description: Fan tachometer input channel
63+
$ref: /schemas/types.yaml#/definitions/uint8-array
64+
minItems: 1
65+
maxItems: 2
66+
items:
67+
maximum: 15
68+
69+
required:
70+
- reg
71+
- aspeed,fan-tach-ch
72+
73+
required:
74+
- compatible
75+
- reg
76+
- '#address-cells'
77+
- '#size-cells'
78+
- clocks
79+
- resets
80+
81+
additionalProperties: false
82+
83+
examples:
84+
- |
85+
#include <dt-bindings/clock/aspeed-clock.h>
86+
87+
fan-controller@1e786000 {
88+
compatible = "aspeed,ast2500-pwm-tacho";
89+
reg = <0x1e786000 0x1000>;
90+
#address-cells = <1>;
91+
#size-cells = <0>;
92+
#cooling-cells = <2>;
93+
clocks = <&syscon ASPEED_CLK_APB>;
94+
resets = <&syscon ASPEED_RESET_PWM>;
95+
96+
fan@0 {
97+
reg = <0x00>;
98+
cooling-levels = /bits/ 8 <125 151 177 203 229 255>;
99+
aspeed,fan-tach-ch = /bits/ 8 <0x00>;
100+
};
101+
102+
fan@1 {
103+
reg = <0x01>;
104+
aspeed,fan-tach-ch = /bits/ 8 <0x01 0x02>;
105+
};
106+
};

Documentation/devicetree/bindings/hwmon/aspeed-pwm-tacho.txt

Lines changed: 0 additions & 73 deletions
This file was deleted.

Documentation/devicetree/bindings/hwmon/microchip,sparx5-temp.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,12 @@ description: |
1414
1515
properties:
1616
compatible:
17-
enum:
18-
- microchip,sparx5-temp
17+
oneOf:
18+
- const: microchip,sparx5-temp
19+
- items:
20+
- enum:
21+
- microchip,lan9691-temp
22+
- const: microchip,sparx5-temp
1923

2024
reg:
2125
maxItems: 1

Documentation/devicetree/bindings/hwmon/ti,tmp108.yaml

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,32 @@
44
$id: http://devicetree.org/schemas/hwmon/ti,tmp108.yaml#
55
$schema: http://devicetree.org/meta-schemas/core.yaml#
66

7-
title: TMP108/P3T1085(NXP) temperature sensor
7+
title: TMP108/P3T1035/P3T1085/P3T2030 temperature sensor
88

99
maintainers:
1010
- Krzysztof Kozlowski <[email protected]>
1111

1212
description: |
13-
The TMP108/P3T1085(NXP) is a digital-output temperature sensor with a
14-
dynamically-programmable limit window, and under- and overtemperature
15-
alert functions.
13+
The TMP108 or NXP P3T Family (P3T1035, P3T1085 and P3T2030) is a digital-
14+
output temperature sensor with a dynamically-programmable limit window,
15+
and under- and over-temperature alert functions.
1616
17-
P3T1085(NXP) support I3C.
17+
NXP P3T Family (P3T1035, P3T1085 and P3T2030) supports I3C.
1818
1919
Datasheets:
2020
https://www.ti.com/product/TMP108
2121
https://www.nxp.com/docs/en/data-sheet/P3T1085UK.pdf
22+
https://www.nxp.com/docs/en/data-sheet/P3T1035XUK_P3T2030XUK.pdf
2223
2324
properties:
2425
compatible:
25-
enum:
26-
- nxp,p3t1085
27-
- ti,tmp108
26+
oneOf:
27+
- items:
28+
- const: nxp,p3t2030
29+
- const: nxp,p3t1035
30+
- const: nxp,p3t1035
31+
- const: nxp,p3t1085
32+
- const: ti,tmp108
2833

2934
interrupts:
3035
items:

Documentation/devicetree/bindings/trivial-devices.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,8 @@ properties:
123123
- fsl,mma8450
124124
# MPR121: Proximity Capacitive Touch Sensor Controller
125125
- fsl,mpr121
126+
# HiTRON AC/DC CompactPCI Power Supply
127+
- hitron,hac300s
126128
# Honeywell Humidicon HIH-6130 humidity/temperature sensor
127129
- honeywell,hi6130
128130
# IBM Common Form Factor Power Supply Versions (all versions)
@@ -319,6 +321,8 @@ properties:
319321
- mps,mp5023
320322
# Monolithic Power Systems Inc. multi-phase hot-swap controller mp5920
321323
- mps,mp5920
324+
# Monolithic Power Systems Inc. multi-phase hot-swap controller mp5926
325+
- mps,mp5926
322326
# Monolithic Power Systems Inc. multi-phase hot-swap controller mp5990
323327
- mps,mp5990
324328
# Monolithic Power Systems Inc. multi-phase hot-swap controller mp5998
@@ -416,6 +420,8 @@ properties:
416420
- smsc,emc6d103s
417421
# SparkFun Qwiic Joystick (COM-15168) with i2c interface
418422
- sparkfun,qwiic-joystick
423+
# STMicroelectronics Hot-swap controller stef48h28
424+
- st,stef48h28
419425
# Sierra Wireless mangOH Green SPI IoT interface
420426
- swir,mangoh-iotport-spi
421427
# Synaptics I2C touchpad

Documentation/devicetree/bindings/vendor-prefixes.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -705,6 +705,8 @@ patternProperties:
705705
description: Hitachi Ltd.
706706
"^hitex,.*":
707707
description: Hitex Development Tools
708+
"^hitron,.*":
709+
description: HiTRON Electronics Corporation
708710
"^holt,.*":
709711
description: Holt Integrated Circuits, Inc.
710712
"^holtek,.*":

Documentation/hwmon/asus_ec_sensors.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Supported boards:
1010
* PRIME X670E-PRO WIFI
1111
* PRIME Z270-A
1212
* Pro WS TRX50-SAGE WIFI
13+
* Pro WS TRX50-SAGE WIFI A
1314
* Pro WS X570-ACE
1415
* Pro WS WRX90E-SAGE SE
1516
* ProArt X570-CREATOR WIFI
@@ -23,6 +24,7 @@ Supported boards:
2324
* ROG CROSSHAIR VIII IMPACT
2425
* ROG CROSSHAIR X670E HERO
2526
* ROG CROSSHAIR X670E GENE
27+
* ROG MAXIMUS X HERO
2628
* ROG MAXIMUS XI HERO
2729
* ROG MAXIMUS XI HERO (WI-FI)
2830
* ROG MAXIMUS Z690 FORMULA

Documentation/hwmon/coretemp.rst

Lines changed: 49 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,21 @@ Kernel driver coretemp
22
======================
33

44
Supported chips:
5-
* All Intel Core family
5+
* All Intel Core family and Atom processors with Digital Thermal Sensor (DTS)
66

77
Prefix: 'coretemp'
88

9-
CPUID: family 0x6, models
9+
CPUID: family 0x6, models with X86_FEATURE_DTHERM, including:
1010

1111
- 0xe (Pentium M DC), 0xf (Core 2 DC 65nm),
1212
- 0x16 (Core 2 SC 65nm), 0x17 (Penryn 45nm),
1313
- 0x1a (Nehalem), 0x1c (Atom), 0x1e (Lynnfield),
1414
- 0x26 (Tunnel Creek Atom), 0x27 (Medfield Atom),
15-
- 0x36 (Cedar Trail Atom)
15+
- 0x36 (Cedar Trail Atom), 0x37 (Bay Trail Atom),
16+
- 0x4a (Merrifield Atom), 0x4c (Cherry Trail Atom),
17+
- 0x5a (Moorefield Atom), 0x5c (Apollo Lake Atom),
18+
- 0x7a (Gemini Lake Atom),
19+
- 0x96 (Elkhart Lake Atom), 0x9c (Jasper Lake Atom)
1620

1721
Datasheet:
1822

@@ -28,9 +32,9 @@ Description
2832

2933
This driver permits reading the DTS (Digital Temperature Sensor) embedded
3034
inside Intel CPUs. This driver can read both the per-core and per-package
31-
temperature using the appropriate sensors. The per-package sensor is new;
32-
as of now, it is present only in the SandyBridge platform. The driver will
33-
show the temperature of all cores inside a package under a single device
35+
temperature using the appropriate sensors. The per-package sensor is
36+
available on Sandy Bridge and all newer processors. The driver will show
37+
the temperature of all cores inside a package under a single device
3438
directory inside hwmon.
3539

3640
Temperature is measured in degrees Celsius and measurement resolution is
@@ -56,10 +60,11 @@ tempX_label Contains string "Core X", where X is processor
5660
where Y is the package number.
5761
================= ========================================================
5862

59-
On CPU models which support it, TjMax is read from a model-specific register.
60-
On other models, it is set to an arbitrary value based on weak heuristics.
61-
If these heuristics don't work for you, you can pass the correct TjMax value
62-
as a module parameter (tjmax).
63+
On modern CPUs (Nehalem and newer), TjMax is read from the
64+
MSR_IA32_TEMPERATURE_TARGET register. On older models without this MSR,
65+
TjMax is determined using lookup tables or heuristics. If these don't work
66+
for your CPU, you can pass the correct TjMax value as a module parameter
67+
(tjmax).
6368

6469
Appendix A. Known TjMax lists (TBD):
6570
Some information comes from ark.intel.com
@@ -100,6 +105,40 @@ Process Processor TjMax(C)
100105
D2700/2550/2500 100
101106
N2850/2800/2650/2600 100
102107

108+
22nm Atom Processors (Silvermont/Bay Trail)
109+
E3845/3827/3826/3825/3815/3805 110
110+
Z3795/3775/3770/3740/3736/3735/3680 90
111+
112+
22nm Atom Processors (Silvermont/Moorefield)
113+
Z3580/3570/3560/3530 90
114+
115+
14nm Atom Processors (Airmont/Cherry Trail)
116+
x5-Z8550/Z8500/Z8350/Z8330/Z8300 90
117+
x7-Z8750/Z8700 90
118+
119+
14nm Atom Processors (Goldmont/Apollo Lake)
120+
x5-E3940/E3930 105
121+
x7-E3950 105
122+
123+
14nm Celeron/Pentium Processors
124+
(Goldmont/Apollo Lake)
125+
J3455/J3355 105
126+
N3450/N3350 105
127+
N4200 105
128+
129+
14nm Celeron/Pentium Processors
130+
(Goldmont Plus/Gemini Lake)
131+
J4105/J4005 105
132+
N4100/N4000 105
133+
N5000 105
134+
135+
10nm Atom Processors (Tremont/Elkhart Lake)
136+
x6000E 105
137+
138+
10nm Celeron/Pentium Processors
139+
(Tremont/Jasper Lake)
140+
N4500/N5100/N6000 series 105
141+
103142
45nm Xeon Processors 5400 Quad-Core
104143
X5492, X5482, X5472, X5470, X5460, X5450 85
105144
E5472, E5462, E5450/40/30/20/10/05 85

0 commit comments

Comments
 (0)