← Documents Documentation/hwmon/ucd9000.rst GitHub 원문 ↗

Linux 6.18.37 · Hardware Monitoring

Kernel driver ucd9000

UCD9000 전원 시퀀서 계열의 레일·ADC·GPIO 구성과 전압·전류·온도·팬 속성을 설명합니다.

Source pathDocumentation/hwmon/ucd9000.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

ucd9000.rst:1-137

UCD9000 계열은 10~32개 전원 레일의 순서를 제어하고 구성에 따라 전압·전류·온도와 팬을 PMBus hwmon 속성으로 제공합니다.

문서 개요
항목
SourceDocumentation/hwmon/ucd9000.rst
분량137 source lines
지원 칩6
최대 레일32

원문 분량과 핵심 기능을 요약합니다.

동작 흐름
장치 명시적 생성칩 변형 판별레일·ADC 구성한계·경보 연결조건별 팬 속성 생성

장치 초기화부터 측정·상태 제공까지의 순서입니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 Kernel driver ucd9000
2 =====================
3
4 Supported chips:
5
6 * TI UCD90120, UCD90124, UCD90160, UCD90320, UCD9090, and UCD90910
7
8 Prefixes: 'ucd90120', 'ucd90124', 'ucd90160', 'ucd90320', 'ucd9090',
9 'ucd90910'
10
11 Addresses scanned: -
12
13 Datasheets:
14
15 - http://focus.ti.com/lit/ds/symlink/ucd90120.pdf
16 - http://focus.ti.com/lit/ds/symlink/ucd90124.pdf
17 - http://focus.ti.com/lit/ds/symlink/ucd90160.pdf
18 - http://focus.ti.com/lit/ds/symlink/ucd90320.pdf
19 - http://focus.ti.com/lit/ds/symlink/ucd9090.pdf
20 - http://focus.ti.com/lit/ds/symlink/ucd90910.pdf
21
22 Author: Guenter Roeck <[email protected]>
23
24
25 Description
26 -----------
27
28 From datasheets:
29
30 The UCD90120 Power Supply Sequencer and System Health Monitor monitors and
31 sequences up to 12 independent voltage rails. The device integrates a 12-bit
32 ADC with a 2.5V internal reference for monitoring up to 13 power supply voltage,
33 current, or temperature inputs.
34
35 The UCD90124 is a 12-rail PMBus/I2C addressable power-supply sequencer and
36 system-health monitor. The device integrates a 12-bit ADC for monitoring up to
37 13 power-supply voltage, current, or temperature inputs. Twenty-six GPIO pins
38 can be used for power supply enables, power-on reset signals, external
39 interrupts, cascading, or other system functions. Twelve of these pins offer PWM
40 functionality. Using these pins, the UCD90124 offers support for fan control,
41 margining, and general-purpose PWM functions.
42
43 The UCD90160 is a 16-rail PMBus/I2C addressable power-supply sequencer and
44 monitor. The device integrates a 12-bit ADC for monitoring up to 16 power-supply
45 voltage inputs. Twenty-six GPIO pins can be used for power supply enables,
46 power-on reset signals, external interrupts, cascading, or other system
47 functions. Twelve of these pins offer PWM functionality. Using these pins, the
48 UCD90160 offers support for margining, and general-purpose PWM functions.
49
50 The UCD90320 is a 32-rail PMBus/I2C addressable power-supply sequencer and
51 monitor. The 24 integrated ADC channels (AMONx) monitor the power supply
52 voltage, current, and temperature. Of the 84 GPIO pins, 8 can be used as
53 digital monitors (DMONx), 32 to enable the power supply (ENx), 24 for margining
54 (MARx), 16 for logical GPO, and 32 GPIs for cascading, and system function.
55
56 The UCD9090 is a 10-rail PMBus/I2C addressable power-supply sequencer and
57 monitor. The device integrates a 12-bit ADC for monitoring up to 10 power-supply
58 voltage inputs. Twenty-three GPIO pins can be used for power supply enables,
59 power-on reset signals, external interrupts, cascading, or other system
60 functions. Ten of these pins offer PWM functionality. Using these pins, the
61 UCD9090 offers support for margining, and general-purpose PWM functions.
62
63 The UCD90910 is a ten-rail I2C / PMBus addressable power-supply sequencer and
64 system-health monitor. The device integrates a 12-bit ADC for monitoring up to
65 13 power-supply voltage, current, or temperature inputs.
66
67 This driver is a client driver to the core PMBus driver. Please see
68 Documentation/hwmon/pmbus.rst for details on PMBus client drivers.
69
70
71 Usage Notes
72 -----------
73
74 This driver does not auto-detect devices. You will have to instantiate the
75 devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
76 details.
77
78
79 Platform data support
80 ---------------------
81
82 The driver supports standard PMBus driver platform data. Please see
83 Documentation/hwmon/pmbus.rst for details.
84
85
86 Sysfs entries
87 -------------
88
89 The following attributes are supported. Limits are read-write; all other
90 attributes are read-only.
91
92 ======================= ========================================================
93 in[1-12]_label "vout[1-12]".
94 in[1-12]_input Measured voltage. From READ_VOUT register.
95 in[1-12]_min Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
96 in[1-12]_max Maximum voltage. From VOUT_OV_WARN_LIMIT register.
97 in[1-12]_lcrit Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
98 in[1-12]_crit Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
99 register.
100 in[1-12]_min_alarm Voltage low alarm. From VOLTAGE_UV_WARNING status.
101 in[1-12]_max_alarm Voltage high alarm. From VOLTAGE_OV_WARNING status.
102 in[1-12]_lcrit_alarm Voltage critical low alarm. From VOLTAGE_UV_FAULT
103 status.
104 in[1-12]_crit_alarm Voltage critical high alarm. From VOLTAGE_OV_FAULT
105 status.
106
107 curr[1-12]_label "iout[1-12]".
108 curr[1-12]_input Measured current. From READ_IOUT register.
109 curr[1-12]_max Maximum current. From IOUT_OC_WARN_LIMIT register.
110 curr[1-12]_lcrit Critical minimum output current. From
111 IOUT_UC_FAULT_LIMIT register.
112 curr[1-12]_crit Critical maximum current. From IOUT_OC_FAULT_LIMIT
113 register.
114 curr[1-12]_max_alarm Current high alarm. From IOUT_OC_WARNING status.
115 curr[1-12]_crit_alarm Current critical high alarm. From IOUT_OC_FAULT status.
116
117 For each attribute index, either voltage or current is
118 reported, but not both. If voltage or current is
119 reported depends on the chip configuration.
120
121 temp[1-2]_input Measured temperatures. From READ_TEMPERATURE_1 and
122 READ_TEMPERATURE_2 registers.
123 temp[1-2]_max Maximum temperature. From OT_WARN_LIMIT register.
124 temp[1-2]_crit Critical high temperature. From OT_FAULT_LIMIT register.
125 temp[1-2]_max_alarm Temperature high alarm.
126 temp[1-2]_crit_alarm Temperature critical high alarm.
127
128 fan[1-4]_input Fan RPM.
129 fan[1-4]_alarm Fan alarm.
130 fan[1-4]_fault Fan fault.
131
132 Fan attributes are only available on chips supporting
133 fan control (UCD90124, UCD90910). Attribute files are
134 created only for enabled fans.
135 Note that even though UCD90910 supports up to 10 fans,
136 only up to four fans are currently supported.
137 ======================= ========================================================
138

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

지원 칩과 식별 정보

1-24

이 드라이버는 TI UCD90120, UCD90124, UCD90160, UCD90320, UCD9090, UCD90910을 지원합니다. 접두사는 각각 `ucd90120`, `ucd90124`, `ucd90160`, `ucd90320`, `ucd9090`, `ucd90910`입니다.

검색할 주소는 따로 없으므로 자동 스캔하지 않습니다. 원문에는 각 칩의 TI 데이터시트 링크가 나열되어 있으며 작성자는 Guenter Roeck입니다.

UCD9000 계열 지원표
접두사
UCD90120`ucd90120`
UCD90124`ucd90124`
UCD90160`ucd90160`
UCD90320`ucd90320`
UCD9090`ucd9090`
UCD90910`ucd90910`

칩과 hwmon 접두사를 대응시킵니다.

UCD9000 장치 선택
I2C/PMBus 장치 명시적 생성칩 이름 확인대응 접두사 선택칩별 레일·입력 수 구성PMBus 코어에 등록

명시된 장치 종류로 드라이버 변형을 선택합니다.

Kernel driver ucd9000
=====================

Supported chips:

  * TI UCD90120, UCD90124, UCD90160, UCD90320, UCD9090, and UCD90910

    Prefixes: 'ucd90120', 'ucd90124', 'ucd90160', 'ucd90320', 'ucd9090',
              'ucd90910'

    Addresses scanned: -

    Datasheets:

        - http://focus.ti.com/lit/ds/symlink/ucd90120.pdf
        - http://focus.ti.com/lit/ds/symlink/ucd90124.pdf
        - http://focus.ti.com/lit/ds/symlink/ucd90160.pdf
        - http://focus.ti.com/lit/ds/symlink/ucd90320.pdf
        - http://focus.ti.com/lit/ds/symlink/ucd9090.pdf
        - http://focus.ti.com/lit/ds/symlink/ucd90910.pdf

Author: Guenter Roeck <[email protected]>

계열별 레일과 입출력

25-69

UCD90120은 독립 전압 레일을 최대 12개까지 감시하고 순서를 제어합니다. 2.5 V 내부 기준을 사용하는 12비트 ADC를 통합해 전원 전압·전류·온도 입력을 최대 13개 감시합니다.

UCD90124도 12레일 PMBus/I2C 시퀀서 겸 시스템 상태 모니터입니다. 13개 입력용 12비트 ADC와 26개 GPIO를 제공하며, 이 GPIO는 전원 enable, 전원 켜짐 리셋, 외부 인터럽트, 계단식 연결 등에 사용됩니다. 그중 12개는 PWM을 지원해 팬 제어, 마지닝, 범용 PWM에 사용할 수 있습니다.

UCD90160은 16레일 시퀀서이며 16개 전원 전압 입력을 감시하는 12비트 ADC를 갖습니다. 26개 GPIO 가운데 12개가 PWM을 제공하며 마지닝과 범용 PWM 기능을 지원합니다.

UCD90320은 32레일 시퀀서입니다. 24개 ADC 채널 `AMONx`가 전압·전류·온도를 감시합니다. 84개 GPIO 중 8개는 디지털 모니터 `DMONx`, 32개는 전원 enable `ENx`, 24개는 마지닝 `MARx`, 16개는 논리 GPO에 쓸 수 있으며, 32개 GPI는 계단식 연결과 시스템 기능에 사용됩니다.

UCD9090은 10레일 시퀀서로 10개 전원 전압 입력용 12비트 ADC와 23개 GPIO를 제공합니다. 이 중 10개 핀은 PWM을 지원해 마지닝과 범용 PWM 기능에 사용됩니다. UCD90910은 10레일 I2C/PMBus 시퀀서 겸 상태 모니터이며 13개 전압·전류·온도 입력용 12비트 ADC를 통합합니다.

UCD9000 계열 기능 비교
레일측정 입력GPIO/PWM 특징
UCD901201213, 12비트 ADC2.5 V 내부 기준
UCD901241213, 12비트 ADC26 GPIO, 12 PWM, 팬 제어
UCD901601616 전압 입력26 GPIO, 12 PWM
UCD903203224 `AMONx`84 GPIO, `DMONx`/`ENx`/`MARx`
UCD90901010 전압 입력23 GPIO, 10 PWM
UCD909101013, 12비트 ADCI2C/PMBus

원문에 흩어진 레일·ADC·GPIO 정보를 비교합니다.

전원 시퀀서의 역할
레일 수와 ADC 입력 구성전압·전류·온도 측정GPIO로 전원 enable과 리셋 제어PWM으로 마지닝·팬 기능 수행PMBus로 시스템 상태 보고

다중 레일을 구성하고 상태를 감시하는 흐름입니다.

Description
-----------

From datasheets:

The UCD90120 Power Supply Sequencer and System Health Monitor monitors and
sequences up to 12 independent voltage rails. The device integrates a 12-bit
ADC with a 2.5V internal reference for monitoring up to 13 power supply voltage,
current, or temperature inputs.

The UCD90124 is a 12-rail PMBus/I2C addressable power-supply sequencer and
system-health monitor. The device integrates a 12-bit ADC for monitoring up to
13 power-supply voltage, current, or temperature inputs. Twenty-six GPIO pins
can be used for power supply enables, power-on reset signals, external
interrupts, cascading, or other system functions. Twelve of these pins offer PWM
functionality. Using these pins, the UCD90124 offers support for fan control,
margining, and general-purpose PWM functions.

The UCD90160 is a 16-rail PMBus/I2C addressable power-supply sequencer and
monitor. The device integrates a 12-bit ADC for monitoring up to 16 power-supply
voltage inputs. Twenty-six GPIO pins can be used for power supply enables,
power-on reset signals, external interrupts, cascading, or other system
functions. Twelve of these pins offer PWM functionality. Using these pins, the
UCD90160 offers support for margining, and general-purpose PWM functions.

The UCD90320 is a 32-rail PMBus/I2C addressable power-supply sequencer and
monitor. The 24 integrated ADC channels (AMONx) monitor the power supply
voltage, current, and temperature. Of the 84 GPIO pins, 8 can be used as
digital monitors (DMONx), 32 to enable the power supply (ENx), 24 for margining
(MARx), 16 for logical GPO, and 32 GPIs for cascading, and system function.

The UCD9090 is a 10-rail PMBus/I2C addressable power-supply sequencer and
monitor. The device integrates a 12-bit ADC for monitoring up to 10 power-supply
voltage inputs. Twenty-three GPIO pins can be used for power supply enables,
power-on reset signals, external interrupts, cascading, or other system
functions. Ten of these pins offer PWM functionality. Using these pins, the
UCD9090 offers support for margining, and general-purpose PWM functions.

The UCD90910 is a ten-rail I2C / PMBus addressable power-supply sequencer and
system-health monitor. The device integrates a 12-bit ADC for monitoring up to
13 power-supply voltage, current, or temperature inputs.

This driver is a client driver to the core PMBus driver. Please see
Documentation/hwmon/pmbus.rst for details on PMBus client drivers.

사용 방법과 전압 속성

70-91

이 드라이버는 PMBus 코어의 클라이언트 드라이버입니다. 자세한 구조는 `Documentation/hwmon/pmbus.rst`를 참고합니다.

장치를 자동 탐지하지 않으므로 반드시 명시적으로 인스턴스화해야 합니다. 생성 방법은 `Documentation/i2c/instantiating-devices.rst`에 설명되어 있습니다. 표준 PMBus 드라이버 플랫폼 데이터를 지원합니다.

지원 sysfs 속성 가운데 한계값은 읽기·쓰기가 가능하고 나머지는 읽기 전용입니다. `in[1-12]_label`은 `vout[1-12]`, `in[1-12]_input`은 `READ_VOUT` 측정값입니다.

전압 최소·최대 경고 한계는 `VOUT_UV_WARN_LIMIT`와 `VOUT_OV_WARN_LIMIT`, 임계 최소·최대 한계는 `VOUT_UV_FAULT_LIMIT`와 `VOUT_OV_FAULT_LIMIT`에서 옵니다. 저전압·과전압 경고와 fault 상태는 각각의 `_alarm` 속성으로 보고됩니다.

UCD9000 전압 sysfs
속성의미PMBus 원천
`in[1-12]_input`측정 출력 전압`READ_VOUT`
`in[1-12]_min` / `_max`경고 최소/최대`VOUT_UV_WARN_LIMIT` / `VOUT_OV_WARN_LIMIT`
`in[1-12]_lcrit` / `_crit`임계 최소/최대`VOUT_UV_FAULT_LIMIT` / `VOUT_OV_FAULT_LIMIT`
`*_min_alarm` / `*_max_alarm`저전압/과전압 경고`VOLTAGE_*_WARNING`
`*_lcrit_alarm` / `*_crit_alarm`저전압/과전압 fault`VOLTAGE_*_FAULT`

출력 전압 속성과 PMBus 원천을 연결합니다.

UCD9000 등록과 전압 노출
장치를 명시적으로 인스턴스화표준 PMBus 플랫폼 데이터 적용`READ_VOUT` 측정경고·fault 한계와 상태 읽기`in[1-12]_*` 속성 제공

명시적 생성부터 전압 상태 파일 생성까지의 순서입니다.


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.

전류·온도·팬 속성

92-137

`curr[1-12]_label`은 `iout[1-12]`이며 입력값은 `READ_IOUT`에서 읽습니다. 최대 전류 한계는 `IOUT_OC_WARN_LIMIT`, 임계 최소는 `IOUT_UC_FAULT_LIMIT`, 임계 최대는 `IOUT_OC_FAULT_LIMIT`에서 옵니다. 과전류 경고와 임계 fault도 대응 alarm 속성으로 노출됩니다.

같은 속성 인덱스에는 전압 또는 전류 가운데 하나만 보고되며 둘을 동시에 보고하지 않습니다. 어느 종류가 나타나는지는 칩 구성에 달려 있습니다.

`temp[1-2]_input`은 `READ_TEMPERATURE_1`과 `READ_TEMPERATURE_2`의 측정 온도입니다. 최대와 임계 최대는 `OT_WARN_LIMIT`, `OT_FAULT_LIMIT`에서 읽고 고온·임계 고온 경보를 제공합니다.

`fan[1-4]_input`, `_alarm`, `_fault`는 RPM, 팬 경보, 팬 고장을 나타냅니다. 팬 속성은 팬 제어를 지원하는 UCD90124와 UCD90910에서 활성화된 팬에만 생성됩니다. UCD90910 하드웨어는 팬 10개까지 지원하지만 현재 드라이버는 최대 4개만 지원합니다.

UCD9000 전류·온도·팬
영역속성핵심 제약
전류`curr[1-12]_*`인덱스별 전압 또는 전류 하나만 노출
전류 한계`_max`, `_lcrit`, `_crit``IOUT_OC_WARN_LIMIT`, `IOUT_UC_FAULT_LIMIT`, `IOUT_OC_FAULT_LIMIT`
온도`temp[1-2]_*``READ_TEMPERATURE_1/2`
`fan[1-4]_*`UCD90124/UCD90910, 활성 팬만
팬 최대4개UCD90910 하드웨어는 10개 지원

비전압 센서의 속성과 제약을 정리합니다.

센서 속성 결정
입력 인덱스별 전압/전류 구성 확인`READ_IOUT`와 온도 레지스터 읽기한계와 alarm 상태 연결팬 제어 지원 여부와 enable 확인사용 가능한 sysfs 파일만 생성

칩 구성에 맞춰 실제 생성할 속성을 선택합니다.

======================= ========================================================
in[1-12]_label                "vout[1-12]".
in[1-12]_input                Measured voltage. From READ_VOUT register.
in[1-12]_min                Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
in[1-12]_max                Maximum voltage. From VOUT_OV_WARN_LIMIT register.
in[1-12]_lcrit                Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
in[1-12]_crit                Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
                        register.
in[1-12]_min_alarm        Voltage low alarm. From VOLTAGE_UV_WARNING status.
in[1-12]_max_alarm        Voltage high alarm. From VOLTAGE_OV_WARNING status.
in[1-12]_lcrit_alarm        Voltage critical low alarm. From VOLTAGE_UV_FAULT
                        status.
in[1-12]_crit_alarm        Voltage critical high alarm. From VOLTAGE_OV_FAULT
                        status.

curr[1-12]_label        "iout[1-12]".
curr[1-12]_input        Measured current. From READ_IOUT register.
curr[1-12]_max                Maximum current. From IOUT_OC_WARN_LIMIT register.
curr[1-12]_lcrit        Critical minimum output current. From
                        IOUT_UC_FAULT_LIMIT register.
curr[1-12]_crit                Critical maximum current. From IOUT_OC_FAULT_LIMIT
                        register.
curr[1-12]_max_alarm        Current high alarm. From IOUT_OC_WARNING status.
curr[1-12]_crit_alarm        Current critical high alarm. From IOUT_OC_FAULT status.

                        For each attribute index, either voltage or current is
                        reported, but not both. If voltage or current is
                        reported depends on the chip configuration.

temp[1-2]_input                Measured temperatures. From READ_TEMPERATURE_1 and
                        READ_TEMPERATURE_2 registers.
temp[1-2]_max                Maximum temperature. From OT_WARN_LIMIT register.
temp[1-2]_crit                Critical high temperature. From OT_FAULT_LIMIT register.
temp[1-2]_max_alarm        Temperature high alarm.
temp[1-2]_crit_alarm        Temperature critical high alarm.

fan[1-4]_input                Fan RPM.
fan[1-4]_alarm                Fan alarm.
fan[1-4]_fault                Fan fault.

                        Fan attributes are only available on chips supporting
                        fan control (UCD90124, UCD90910). Attribute files are
                        created only for enabled fans.
                        Note that even though UCD90910 supports up to 10 fans,
                        only up to four fans are currently supported.
======================= ========================================================