← Documents Documentation/ABI/testing/sysfs-bus-i3c GitHub 원문 ↗

Linux 6.18.37 · ABI / testing

I3C bus and device sysfs ABI

I3C bus ownership·mode·clock, controller와 device의 dynamic address·BCR·DCR·PID·HDR capabilities, Hot-Join과 device symlinks를 설명합니다.

Source pathDocumentation/ABI/testing/sysfs-bus-i3c
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

I3C bus identity and mode

sysfs-bus-i3c:1-23

Bus directory는 연결된 I3C devices를 포함하고, current_master는 read 시점의 owner를 노출하며, mode는 pure·mixed-fast·mixed-slow 가운데 하나입니다.

Bus clocks and controller address

sysfs-bus-i3c:25-44

I3C SDR와 I2C mode의 SCL frequency를 Hz로 노출하고, re-initialization 때 바뀔 수 있는 master controller dynamic address를 제공합니다.

Controller characteristics

sysfs-bus-i3c:46-89

Bus를 구동하는 master controller의 BCR, DCR, Provisioned ID와 hdr-ddr·hdr-tsp·hdr-tsl capabilities를 노출합니다.

Hot-Join control

sysfs-bus-i3c:91-104

hotjoin은 새 Target이 Dynamic Address를 받을 준비가 되었음을 Active Controller에 알리는 Hot-Join을 current controller에서 enable하거나 disable합니다.

I3C device objects and characteristics

sysfs-bus-i3c:106-156

각 device object는 master를 포함한 bus의 모든 I3C device를 나타내며 device별 dynamic address, BCR, DCR, PID와 HDR capabilities를 제공합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 What: /sys/bus/i3c/devices/i3c-<bus-id>
2 KernelVersion: 5.0
3 Contact: linux-i3c@vger.kernel.org
4 Description:
5 An I3C bus. This directory will contain one sub-directory per
6 I3C device present on the bus.
7
8 What: /sys/bus/i3c/devices/i3c-<bus-id>/current_master
9 KernelVersion: 5.0
10 Contact: linux-i3c@vger.kernel.org
11 Description:
12 Expose the master that owns the bus (<bus-id>-<master-pid>) at
13 the time this file is read. Note that bus ownership can change
14 overtime, so there's no guarantee that when the read() call
15 returns, the value returned is still valid.
16
17 What: /sys/bus/i3c/devices/i3c-<bus-id>/mode
18 KernelVersion: 5.0
19 Contact: linux-i3c@vger.kernel.org
20 Description:
21 I3C bus mode. Can be "pure", "mixed-fast" or "mixed-slow". See
22 the I3C specification for a detailed description of what each
23 of these modes implies.
24
25 What: /sys/bus/i3c/devices/i3c-<bus-id>/i3c_scl_frequency
26 KernelVersion: 5.0
27 Contact: linux-i3c@vger.kernel.org
28 Description:
29 The frequency (expressed in Hz) of the SCL signal when
30 operating in I3C SDR mode.
31
32 What: /sys/bus/i3c/devices/i3c-<bus-id>/i2c_scl_frequency
33 KernelVersion: 5.0
34 Contact: linux-i3c@vger.kernel.org
35 Description:
36 The frequency (expressed in Hz) of the SCL signal when
37 operating in I2C mode.
38
39 What: /sys/bus/i3c/devices/i3c-<bus-id>/dynamic_address
40 KernelVersion: 5.0
41 Contact: linux-i3c@vger.kernel.org
42 Description:
43 Dynamic address assigned to the master controller. This
44 address may change if the bus is re-initialized.
45
46 What: /sys/bus/i3c/devices/i3c-<bus-id>/bcr
47 KernelVersion: 5.0
48 Contact: linux-i3c@vger.kernel.org
49 Description:
50 BCR stands for Bus Characteristics Register and express the
51 device capabilities in term of speed, maximum read/write
52 length, etc. See the I3C specification for more details.
53 This entry describes the BCR of the master controller driving
54 the bus.
55
56 What: /sys/bus/i3c/devices/i3c-<bus-id>/dcr
57 KernelVersion: 5.0
58 Contact: linux-i3c@vger.kernel.org
59 Description:
60 DCR stands for Device Characteristics Register and express the
61 device capabilities in term of exposed features. See the I3C
62 specification for more details.
63 This entry describes the DCR of the master controller driving
64 the bus.
65
66 What: /sys/bus/i3c/devices/i3c-<bus-id>/pid
67 KernelVersion: 5.0
68 Contact: linux-i3c@vger.kernel.org
69 Description:
70 PID stands for Provisioned ID and is used to uniquely identify
71 a device on a bus. This PID contains information about the
72 vendor, the part and an instance ID so that several devices of
73 the same type can be connected on the same bus.
74 See the I3C specification for more details.
75 This entry describes the PID of the master controller driving
76 the bus.
77
78 What: /sys/bus/i3c/devices/i3c-<bus-id>/hdrcap
79 KernelVersion: 5.0
80 Contact: linux-i3c@vger.kernel.org
81 Description:
82 Expose the HDR (High Data Rate) capabilities of a device.
83 Returns a list of supported HDR mode, each element is separated
84 by space. Modes can be "hdr-ddr", "hdr-tsp" and "hdr-tsl".
85 See the I3C specification for more details about these HDR
86 modes.
87
88 This entry describes the HDRCAP of the master controller
89 driving the bus.
90
91 What: /sys/bus/i3c/devices/i3c-<bus-id>/hotjoin
92 KernelVersion: 6.8
93 Contact: linux-i3c@vger.kernel.org
94 Description:
95 I3C’s Hot-Join mechanism allows an I3C Device to inform the
96 Active Controller that a newly-joined Target is present on the
97 I3C Bus and is ready to receive a Dynamic Address, in order to
98 become fully functional on the Bus. Hot-Join is used when the
99 Target is mounted on the same I3C bus and remains depowered
100 until needed or until the Target is physically inserted into the
101 I3C bus
102
103 This entry allows to enable or disable Hot-join of the Current
104 Controller driving the bus.
105
106 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>
107 KernelVersion: 5.0
108 Contact: linux-i3c@vger.kernel.org
109 Description:
110 An I3C device present on I3C bus identified by <bus-id>. Note
111 that all devices are represented including the master driving
112 the bus.
113
114 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dynamic_address
115 KernelVersion: 5.0
116 Contact: linux-i3c@vger.kernel.org
117 Description:
118 Dynamic address assigned to device <bus-id>-<device-pid>. This
119 address may change if the bus is re-initialized.
120
121 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/bcr
122 KernelVersion: 5.0
123 Contact: linux-i3c@vger.kernel.org
124 Description:
125 BCR stands for Bus Characteristics Register and express the
126 device capabilities in term of speed, maximum read/write
127 length, etc. See the I3C specification for more details.
128
129 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dcr
130 KernelVersion: 5.0
131 Contact: linux-i3c@vger.kernel.org
132 Description:
133 DCR stands for Device Characteristics Register and express the
134 device capabilities in term of exposed features. See the I3C
135 specification for more details.
136
137 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/pid
138 KernelVersion: 5.0
139 Contact: linux-i3c@vger.kernel.org
140 Description:
141 PID stands for Provisioned ID and is used to uniquely identify
142 a device on a bus. This PID contains information about the
143 vendor, the part and an instance ID so that several devices of
144 the same type can be connected on the same bus.
145 See the I3C specification for more details.
146
147 What: /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/hdrcap
148 KernelVersion: 5.0
149 Contact: linux-i3c@vger.kernel.org
150 Description:
151 Expose the HDR (High Data Rate) capabilities of a device.
152 Returns a list of supported HDR mode, each element is separated
153 by space. Modes can be "hdr-ddr", "hdr-tsp" and "hdr-tsl".
154
155 See the I3C specification for more details about these HDR
156 modes.
157
158 What: /sys/bus/i3c/devices/<bus-id>-<device-pid>
159 KernelVersion: 5.0
160 Contact: linux-i3c@vger.kernel.org
161 Description:
162 These directories are just symbolic links to
163 /sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>.
164

3. 한국어 전문 번역

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

I3C bus identity and mode

1-23

다음 세 record의 KernelVersion은 5.0, Contact는 linux-i3c@vger.kernel.org입니다.

What전문 번역
/sys/bus/i3c/devices/i3c-<bus-id>I3C bus입니다. 이 directory는 bus에 존재하는 I3C device마다 하나의 sub-directory를 포함합니다.
/sys/bus/i3c/devices/i3c-<bus-id>/current_master이 file을 읽는 시점에 bus를 소유한 master(<bus-id>-<master-pid>)를 노출합니다. Bus ownership은 시간에 따라 바뀔 수 있으므로 read() call이 반환될 때도 반환 값이 여전히 유효하다는 보장은 없습니다.
/sys/bus/i3c/devices/i3c-<bus-id>/modeI3C bus mode입니다. 'pure', 'mixed-fast' 또는 'mixed-slow'일 수 있습니다. 각 mode의 자세한 의미는 I3C specification을 참조하십시오.

Bus clocks and controller address

25-44

다음 세 record의 KernelVersion은 5.0, Contact는 linux-i3c@vger.kernel.org입니다.

What전문 번역
/sys/bus/i3c/devices/i3c-<bus-id>/i3c_scl_frequencyI3C SDR mode로 동작할 때 SCL signal의 frequency를 Hz 단위로 나타냅니다.
/sys/bus/i3c/devices/i3c-<bus-id>/i2c_scl_frequencyI2C mode로 동작할 때 SCL signal의 frequency를 Hz 단위로 나타냅니다.
/sys/bus/i3c/devices/i3c-<bus-id>/dynamic_addressMaster controller에 할당된 dynamic address입니다. Bus가 re-initialize되면 이 address가 바뀔 수 있습니다.

Controller characteristics

46-89

다음 네 record의 KernelVersion은 5.0, Contact는 linux-i3c@vger.kernel.org입니다.

What전문 번역
/sys/bus/i3c/devices/i3c-<bus-id>/bcrBCR은 Bus Characteristics Register의 약자이며 speed, maximum read/write length 등의 관점에서 device capabilities를 나타냅니다. 자세한 내용은 I3C specification을 참조하십시오. 이 entry는 bus를 구동하는 master controller의 BCR을 설명합니다.
/sys/bus/i3c/devices/i3c-<bus-id>/dcrDCR은 Device Characteristics Register의 약자이며 노출하는 features의 관점에서 device capabilities를 나타냅니다. 자세한 내용은 I3C specification을 참조하십시오. 이 entry는 bus를 구동하는 master controller의 DCR을 설명합니다.
/sys/bus/i3c/devices/i3c-<bus-id>/pidPID는 Provisioned ID의 약자이며 bus의 device를 고유하게 식별하는 데 사용합니다. PID는 vendor, part와 instance ID 정보를 포함하므로 같은 type의 여러 devices를 같은 bus에 연결할 수 있습니다. 자세한 내용은 I3C specification을 참조하십시오. 이 entry는 bus를 구동하는 master controller의 PID를 설명합니다.
/sys/bus/i3c/devices/i3c-<bus-id>/hdrcapDevice의 HDR(High Data Rate) capabilities를 노출합니다. 지원하는 HDR modes를 space로 구분한 목록으로 반환합니다. Modes는 'hdr-ddr', 'hdr-tsp', 'hdr-tsl'일 수 있습니다. 자세한 내용은 I3C specification을 참조하십시오. 이 entry는 bus를 구동하는 master controller의 HDRCAP을 설명합니다.

Hot-Join control

91-104
항목전문 번역
What/sys/bus/i3c/devices/i3c-<bus-id>/hotjoin
KernelVersion6.8
Contactlinux-i3c@vger.kernel.org
DescriptionI3C의 Hot-Join mechanism은 새로 합류한 Target이 I3C Bus에 있고 완전히 동작하기 위해 Dynamic Address를 받을 준비가 되었음을 I3C Device가 Active Controller에 알리도록 합니다. Hot-Join은 Target이 같은 I3C bus에 장착되어 필요할 때까지 power가 꺼져 있거나 Target이 I3C bus에 물리적으로 삽입되는 경우에 사용합니다. 이 entry는 bus를 구동하는 Current Controller의 Hot-Join을 enable하거나 disable하도록 합니다.

I3C device objects and characteristics

106-156

다음 여섯 record의 KernelVersion은 5.0, Contact는 linux-i3c@vger.kernel.org입니다.

What전문 번역
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid><bus-id>로 식별되는 I3C bus에 존재하는 I3C device입니다. Bus를 구동하는 master를 포함한 모든 devices가 표현됩니다.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dynamic_addressDevice <bus-id>-<device-pid>에 할당된 dynamic address입니다. Bus가 re-initialize되면 이 address가 바뀔 수 있습니다.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/bcrBCR은 Bus Characteristics Register의 약자이며 speed, maximum read/write length 등의 관점에서 device capabilities를 나타냅니다. 자세한 내용은 I3C specification을 참조하십시오.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/dcrDCR은 Device Characteristics Register의 약자이며 노출하는 features의 관점에서 device capabilities를 나타냅니다. 자세한 내용은 I3C specification을 참조하십시오.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/pidPID는 Provisioned ID의 약자이며 bus의 device를 고유하게 식별하는 데 사용합니다. PID는 vendor, part와 instance ID 정보를 포함하므로 같은 type의 여러 devices를 같은 bus에 연결할 수 있습니다. 자세한 내용은 I3C specification을 참조하십시오.
/sys/bus/i3c/devices/i3c-<bus-id>/<bus-id>-<device-pid>/hdrcapDevice의 HDR(High Data Rate) capabilities를 노출합니다. 지원하는 HDR modes를 space로 구분한 목록으로 반환합니다. Modes는 'hdr-ddr', 'hdr-tsp', 'hdr-tsl'일 수 있습니다. 자세한 내용은 I3C specification을 참조하십시오.