hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
Kernel driver ucd9200
=====================
 
Supported chips:
 
  * TI UCD9220, UCD9222, UCD9224, UCD9240, UCD9244, UCD9246, and UCD9248
 
    Prefixes: 'ucd9220', 'ucd9222', 'ucd9224', 'ucd9240', 'ucd9244', 'ucd9246',
    'ucd9248'
 
    Addresses scanned: -
 
    Datasheets:
 
   - http://focus.ti.com/lit/ds/symlink/ucd9220.pdf
   - http://focus.ti.com/lit/ds/symlink/ucd9222.pdf
   - http://focus.ti.com/lit/ds/symlink/ucd9224.pdf
   - http://focus.ti.com/lit/ds/symlink/ucd9240.pdf
   - http://focus.ti.com/lit/ds/symlink/ucd9244.pdf
   - http://focus.ti.com/lit/ds/symlink/ucd9246.pdf
   - http://focus.ti.com/lit/ds/symlink/ucd9248.pdf
 
Author: Guenter Roeck <linux@roeck-us.net>
 
 
Description
-----------
 
[From datasheets] UCD9220, UCD9222, UCD9224, UCD9240, UCD9244, UCD9246, and
UCD9248 are multi-rail, multi-phase synchronous buck digital PWM controllers
designed for non-isolated DC/DC power applications. The devices integrate
dedicated circuitry for DC/DC loop management with flash memory and a serial
interface to support configuration, monitoring and management.
 
This driver is a client driver to the core PMBus driver. Please see
Documentation/hwmon/pmbus.rst for details on PMBus client drivers.
 
 
Usage Notes
-----------
 
This driver does not auto-detect devices. You will have to instantiate the
devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
details.
 
 
Platform data support
---------------------
 
The driver supports standard PMBus driver platform data. Please see
Documentation/hwmon/pmbus.rst for details.
 
 
Sysfs entries
-------------
 
The following attributes are supported. Limits are read-write; all other
attributes are read-only.
 
======================= ========================================================
in1_label        "vin".
in1_input        Measured voltage. From READ_VIN register.
in1_min            Minimum Voltage. From VIN_UV_WARN_LIMIT register.
in1_max            Maximum voltage. From VIN_OV_WARN_LIMIT register.
in1_lcrit        Critical minimum Voltage. VIN_UV_FAULT_LIMIT register.
in1_crit        Critical maximum voltage. From VIN_OV_FAULT_LIMIT
           register.
in1_min_alarm        Voltage low alarm. From VIN_UV_WARNING status.
in1_max_alarm        Voltage high alarm. From VIN_OV_WARNING status.
in1_lcrit_alarm        Voltage critical low alarm. From VIN_UV_FAULT status.
in1_crit_alarm        Voltage critical high alarm. From VIN_OV_FAULT status.
 
in[2-5]_label        "vout[1-4]".
in[2-5]_input        Measured voltage. From READ_VOUT register.
in[2-5]_min        Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
in[2-5]_max        Maximum voltage. From VOUT_OV_WARN_LIMIT register.
in[2-5]_lcrit        Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
in[2-5]_crit        Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
           register.
in[2-5]_min_alarm    Voltage low alarm. From VOLTAGE_UV_WARNING status.
in[2-5]_max_alarm    Voltage high alarm. From VOLTAGE_OV_WARNING status.
in[2-5]_lcrit_alarm    Voltage critical low alarm. From VOLTAGE_UV_FAULT
           status.
in[2-5]_crit_alarm    Voltage critical high alarm. From VOLTAGE_OV_FAULT
           status.
 
curr1_label        "iin".
curr1_input        Measured current. From READ_IIN register.
 
curr[2-5]_label        "iout[1-4]".
curr[2-5]_input        Measured current. From READ_IOUT register.
curr[2-5]_max        Maximum current. From IOUT_OC_WARN_LIMIT register.
curr[2-5]_lcrit        Critical minimum output current. From
           IOUT_UC_FAULT_LIMIT register.
curr[2-5]_crit        Critical maximum current. From IOUT_OC_FAULT_LIMIT
           register.
curr[2-5]_max_alarm    Current high alarm. From IOUT_OC_WARNING status.
curr[2-5]_crit_alarm    Current critical high alarm. From IOUT_OC_FAULT status.
 
power1_input        Measured input power. From READ_PIN register.
power1_label        "pin"
 
power[2-5]_input    Measured output power. From READ_POUT register.
power[2-5]_label    "pout[1-4]"
 
           The number of output voltage, current, and power
           attribute sets is determined by the number of enabled
           rails. See chip datasheets for details.
 
temp[1-5]_input        Measured temperatures. From READ_TEMPERATURE_1 and
           READ_TEMPERATURE_2 registers.
           temp1 is the chip internal temperature. temp[2-5] are
           rail temperatures.  temp[2-5] attributes are only
           created for enabled rails. See chip datasheets for
           details.
temp[1-5]_max        Maximum temperature. From OT_WARN_LIMIT register.
temp[1-5]_crit        Critical high temperature. From OT_FAULT_LIMIT register.
temp[1-5]_max_alarm    Temperature high alarm.
temp[1-5]_crit_alarm    Temperature critical high alarm.
 
fan1_input        Fan RPM. ucd9240 only.
fan1_alarm        Fan alarm. ucd9240 only.
fan1_fault        Fan fault. ucd9240 only.
======================= ========================================================