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

Linux 6.18.37 · Hardware Monitoring

Kernel Driver IBMPOWERNV

POWERNV 장치 트리와 OPAL을 이용하는 팬·온도·전압·전력·전류·에너지 센서입니다.

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

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

1. 요약·해설

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

요약·해설

ibmpowernv.rst:1-87

장치 트리 센서 ID로 OPAL 펌웨어 값을 읽고 POWER9에서는 OCC별 센서 그룹을 활성화하거나 비활성화합니다.

문서 개요
항목
SourceDocumentation/hwmon/ibmpowernv.rst
분량87 source lines
펌웨어OPAL
그룹 제어POWER9 OCC

원문 분량과 핵심 인터페이스입니다.

동작 흐름
DT 센서 탐색sensor-id 획득OPAL 호출hwmon 등록OCC 그룹 제어

장치에서 hwmon 속성까지의 핵심 순서입니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 Kernel Driver IBMPOWERNV
2 ========================
3
4 Supported systems:
5
6 * Any recent IBM P servers based on POWERNV platform
7
8 Author: Neelesh Gupta
9
10 Description
11 -----------
12
13 This driver implements reading the platform sensors data like temperature/fan/
14 voltage/power for 'POWERNV' platform.
15
16 The driver uses the platform device infrastructure. It probes the device tree
17 for sensor devices during the __init phase and registers them with the 'hwmon'.
18 'hwmon' populates the 'sysfs' tree having attribute files, each for a given
19 sensor type and its attribute data.
20
21 All the nodes in the DT appear under "/ibm,opal/sensors" and each valid node in
22 the DT maps to an attribute file in 'sysfs'. The node exports unique 'sensor-id'
23 which the driver uses to make an OPAL call to the firmware.
24
25 Usage notes
26 -----------
27 The driver is built statically with the kernel by enabling the config
28 CONFIG_SENSORS_IBMPOWERNV. It can also be built as module 'ibmpowernv'.
29
30 Sysfs attributes
31 ----------------
32
33 ======================= =======================================================
34 fanX_input Measured RPM value.
35 fanX_min Threshold RPM for alert generation.
36 fanX_fault - 0: No fail condition
37 - 1: Failing fan
38
39 tempX_input Measured ambient temperature.
40 tempX_max Threshold ambient temperature for alert generation.
41 tempX_highest Historical maximum temperature
42 tempX_lowest Historical minimum temperature
43 tempX_enable Enable/disable all temperature sensors belonging to the
44 sub-group. In POWER9, this attribute corresponds to
45 each OCC. Using this attribute each OCC can be asked to
46 disable/enable all of its temperature sensors.
47
48 - 1: Enable
49 - 0: Disable
50
51 inX_input Measured power supply voltage (millivolt)
52 inX_fault - 0: No fail condition.
53 - 1: Failing power supply.
54 inX_highest Historical maximum voltage
55 inX_lowest Historical minimum voltage
56 inX_enable Enable/disable all voltage sensors belonging to the
57 sub-group. In POWER9, this attribute corresponds to
58 each OCC. Using this attribute each OCC can be asked to
59 disable/enable all of its voltage sensors.
60
61 - 1: Enable
62 - 0: Disable
63
64 powerX_input Power consumption (microWatt)
65 powerX_input_highest Historical maximum power
66 powerX_input_lowest Historical minimum power
67 powerX_enable Enable/disable all power sensors belonging to the
68 sub-group. In POWER9, this attribute corresponds to
69 each OCC. Using this attribute each OCC can be asked to
70 disable/enable all of its power sensors.
71
72 - 1: Enable
73 - 0: Disable
74
75 currX_input Measured current (milliampere)
76 currX_highest Historical maximum current
77 currX_lowest Historical minimum current
78 currX_enable Enable/disable all current sensors belonging to the
79 sub-group. In POWER9, this attribute corresponds to
80 each OCC. Using this attribute each OCC can be asked to
81 disable/enable all of its current sensors.
82
83 - 1: Enable
84 - 0: Disable
85
86 energyX_input Cumulative energy (microJoule)
87 ======================= =======================================================
88

3. 한국어 전문 번역

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

POWERNV 플랫폼 센서 등록

1-29

`IBMPOWERNV` 드라이버는 POWERNV 플랫폼 기반의 최신 IBM P 서버를 지원하며 작성자는 Neelesh Gupta입니다. 온도, 팬, 전압, 전력 같은 플랫폼 센서 데이터를 읽는 기능을 구현합니다.

드라이버는 플랫폼 장치 기반 구조를 사용합니다. `__init` 단계에서 장치 트리의 센서 장치를 조사해 `hwmon`에 등록하고, hwmon 코어는 센서 형식과 속성 데이터별 파일로 이루어진 `sysfs` 트리를 만듭니다.

모든 장치 트리 노드는 `/ibm,opal/sensors` 아래에 있으며 유효한 노드 하나가 sysfs 속성 파일 하나에 대응합니다. 각 노드는 고유한 `sensor-id`를 내보내고, 드라이버는 이 ID로 펌웨어에 OPAL 호출을 보냅니다.

`CONFIG_SENSORS_IBMPOWERNV`를 활성화하면 커널에 정적으로 포함할 수 있고, `ibmpowernv` 모듈로도 빌드할 수 있습니다.

IBMPOWERNV 데이터 경로
요소역할
POWERNV platform지원 IBM P 서버 기반
/ibm,opal/sensors센서 장치 트리 노드 위치
sensor-idOPAL 펌웨어 호출 식별자
OPAL call펌웨어에서 센서 데이터 획득
hwmon/sysfs센서별 속성 파일 게시
CONFIG_SENSORS_IBMPOWERNV정적 또는 모듈 빌드 선택

장치 트리 센서가 펌웨어 호출과 sysfs로 연결되는 요소입니다.

POWERNV 센서 게시
__init 단계에서 장치 트리 조사/ibm,opal/sensors 노드 발견sensor-id로 OPAL 호출 준비센서를 hwmon에 등록sysfs 속성 파일 생성

부팅 초기화부터 사용자 공간 속성까지의 경로입니다.

Kernel Driver IBMPOWERNV
========================

Supported systems:

  * Any recent IBM P servers based on POWERNV platform

Author: Neelesh Gupta

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

This driver implements reading the platform sensors data like temperature/fan/
voltage/power for 'POWERNV' platform.

The driver uses the platform device infrastructure. It probes the device tree
for sensor devices during the __init phase and registers them with the 'hwmon'.
'hwmon' populates the 'sysfs' tree having attribute files, each for a given
sensor type and its attribute data.

All the nodes in the DT appear under "/ibm,opal/sensors" and each valid node in
the DT maps to an attribute file in 'sysfs'. The node exports unique 'sensor-id'
which the driver uses to make an OPAL call to the firmware.

Usage notes
-----------
The driver is built statically with the kernel by enabling the config
CONFIG_SENSORS_IBMPOWERNV. It can also be built as module 'ibmpowernv'.

팬과 온도 센서 속성

30-50

팬 채널은 RPM 측정값 `fanX_input`, 경보 발생 임계 RPM `fanX_min`, 고장 상태 `fanX_fault`를 제공합니다. `fanX_fault`가 0이면 고장 조건이 없고 1이면 팬이 고장 중입니다.

온도 채널은 주변 온도 측정값 `tempX_input`, 경보 임계 온도 `tempX_max`, 과거 최고·최저 온도 `tempX_highest`와 `tempX_lowest`를 제공합니다.

`tempX_enable`은 같은 하위 그룹에 속한 모든 온도 센서를 활성화하거나 비활성화합니다. POWER9에서는 이 속성이 각 OCC에 대응하므로 OCC별로 소속 온도 센서 전체를 끄거나 켤 수 있습니다. 값 1은 활성화, 0은 비활성화입니다.

팬·온도 속성
속성의미
fanX_input측정 팬 속도, RPM
fanX_min경보 생성 임계 RPM
fanX_fault0 정상, 1 팬 고장
tempX_input측정 주변 온도
tempX_max경보 생성 임계 온도
tempX_highest / tempX_lowest과거 최고·최저 온도
tempX_enable하위 그룹 또는 OCC의 온도 센서 전체 활성화(1)·비활성화(0)

측정값, 이력, 임계값, 활성화 제어를 구분했습니다.

OCC 온도 제어
OCC에 속한 온도 센서 그룹 식별tempX_enable 현재 값 확인1로 그룹 전체 활성화0으로 그룹 전체 비활성화측정값과 이력 확인

POWER9에서 enable 속성이 센서 하나가 아닌 OCC 하위 그룹에 적용됩니다.

Sysfs attributes
----------------

======================= =======================================================
fanX_input                Measured RPM value.
fanX_min                Threshold RPM for alert generation.
fanX_fault                - 0: No fail condition
                        - 1: Failing fan

tempX_input                Measured ambient temperature.
tempX_max                Threshold ambient temperature for alert generation.
tempX_highest                Historical maximum temperature
tempX_lowest                Historical minimum temperature
tempX_enable                Enable/disable all temperature sensors belonging to the
                        sub-group. In POWER9, this attribute corresponds to
                        each OCC. Using this attribute each OCC can be asked to
                        disable/enable all of its temperature sensors.

                        - 1: Enable
                        - 0: Disable

전압과 전력 센서 속성

51-73

전압 채널은 millivolt 단위 측정값 `inX_input`, 고장 상태 `inX_fault`, 과거 최고·최저 전압 `inX_highest`와 `inX_lowest`를 제공합니다. `inX_fault`는 0이면 고장 없음, 1이면 전원 공급 장치 고장을 뜻합니다.

`inX_enable`은 같은 하위 그룹의 전압 센서 전체를 활성화하거나 비활성화합니다. POWER9에서는 각 OCC에 대응하며, 1은 활성화, 0은 비활성화입니다.

전력 채널은 microWatt 단위 소비 전력 `powerX_input`, 과거 최고·최저 전력 `powerX_input_highest`와 `powerX_input_lowest`, 하위 그룹 전체를 제어하는 `powerX_enable`을 제공합니다. POWER9의 `powerX_enable`도 OCC 단위로 작동하며 1은 활성화, 0은 비활성화입니다.

전압·전력 속성
센서속성의미
전압inX_input측정 전원 전압, millivolt
전압inX_fault0 정상, 1 전원 공급 장치 고장
전압inX_highest / inX_lowest과거 최고·최저 전압
전압inX_enableOCC 전압 센서 그룹 활성화·비활성화
전력powerX_input소비 전력, microWatt
전력powerX_input_highest / powerX_input_lowest과거 최고·최저 전력
전력powerX_enableOCC 전력 센서 그룹 활성화·비활성화

측정 단위와 OCC 그룹 제어 의미를 보존했습니다.

전압·전력 감시
OCC 전압·전력 그룹 활성화현재 전압과 전력 읽기전압 고장 상태 확인과거 최고·최저값 비교필요 시 그룹 비활성화

현재값, 이력, 고장, 그룹 활성화를 함께 확인합니다.

inX_input                Measured power supply voltage (millivolt)
inX_fault                - 0: No fail condition.
                        - 1: Failing power supply.
inX_highest                Historical maximum voltage
inX_lowest                Historical minimum voltage
inX_enable                Enable/disable all voltage sensors belonging to the
                        sub-group. In POWER9, this attribute corresponds to
                        each OCC. Using this attribute each OCC can be asked to
                        disable/enable all of its voltage sensors.

                        - 1: Enable
                        - 0: Disable

powerX_input                Power consumption (microWatt)
powerX_input_highest        Historical maximum power
powerX_input_lowest        Historical minimum power
powerX_enable                Enable/disable all power sensors belonging to the
                        sub-group. In POWER9, this attribute corresponds to
                        each OCC. Using this attribute each OCC can be asked to
                        disable/enable all of its power sensors.

                        - 1: Enable
                        - 0: Disable

전류와 누적 에너지 속성

74-87

전류 채널은 milliampere 단위 측정값 `currX_input`, 과거 최고·최저 전류 `currX_highest`와 `currX_lowest`, 하위 그룹 전체를 제어하는 `currX_enable`을 제공합니다. POWER9에서 이 활성화 속성은 OCC별 전류 센서 전체에 적용되며 1은 활성화, 0은 비활성화입니다.

`energyX_input`은 microJoule 단위의 누적 에너지를 제공합니다. 순간값인 전류·전력과 달리 시간에 따라 누적되는 값이므로 소비량 분석에서는 측정 시점 간 차이를 사용할 수 있습니다.

전류·에너지 속성
속성의미
currX_input측정 전류, milliampere
currX_highest과거 최고 전류
currX_lowest과거 최저 전류
currX_enableOCC 전류 센서 그룹 활성화(1)·비활성화(0)
energyX_input누적 에너지, microJoule

마지막 센서군의 단위와 제어 범위입니다.

전류와 에너지 분석
전류 센서 그룹 활성화현재·최고·최저 전류 확인누적 에너지 기준값 읽기시간 경과 후 누적값 재측정차이로 구간 소비량 계산

순간 전류와 누적 에너지를 같은 OCC 상태와 함께 읽습니다.


currX_input                Measured current (milliampere)
currX_highest                Historical maximum current
currX_lowest                Historical minimum current
currX_enable                Enable/disable all current sensors belonging to the
                        sub-group. In POWER9, this attribute corresponds to
                        each OCC. Using this attribute each OCC can be asked to
                        disable/enable all of its current sensors.

                        - 1: Enable
                        - 0: Disable

energyX_input                Cumulative energy (microJoule)
======================= =======================================================