← Documents Documentation/ABI/stable/sysfs-bus-firewire GitHub 원문 ↗

Linux 6.18.37 · ABI / stable

FireWire bus stable sysfs ABI

IEEE 1394 node·unit의 Configuration ROM, GUID, unit tuple, local 여부, 공통 descriptor와 SBP-2 persistent identifier를 설명합니다.

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

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

1. 요약·해설

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

Node device attribute

sysfs-bus-firewire:1-51

config_rom, guid, units, is_local이 node identity와 unit 구성, local controller 여부를 노출합니다.

Unit와 공통 attribute

sysfs-bus-firewire:54-111

Unit device의 modalias·ROM offset과 IEEE 1212 hardware, model, vendor, specifier, version descriptor를 제공합니다.

SBP-2 identifier

sysfs-bus-firewire:114-136

Persistent world-wide unique EUI-64, directory_ID, LUN 조합으로 /dev/disk/by-id symlink를 만듭니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 What: /sys/bus/firewire/devices/fw[0-9]+/
2 Date: May 2007
3 KernelVersion: 2.6.22
4 Contact: linux1394-devel@lists.sourceforge.net
5 Description:
6 IEEE 1394 node device attributes.
7 Read-only. Mutable during the node device's lifetime.
8 See IEEE 1212 for semantic definitions.
9
10 config_rom
11 Contents of the Configuration ROM register.
12 Binary attribute; an array of host-endian u32.
13
14 guid
15 The node's EUI-64 in the bus information block of
16 Configuration ROM.
17 Hexadecimal string representation of an u64.
18
19
20 What: /sys/bus/firewire/devices/fw[0-9]+/units
21 Date: June 2009
22 KernelVersion: 2.6.31
23 Contact: linux1394-devel@lists.sourceforge.net
24 Description:
25 IEEE 1394 node device attribute.
26 Read-only. Mutable during the node device's lifetime.
27 See IEEE 1212 for semantic definitions.
28
29 units
30 Summary of all units present in an IEEE 1394 node.
31 Contains space-separated tuples of specifier_id and
32 version of each unit present in the node. Specifier_id
33 and version are hexadecimal string representations of
34 u24 of the respective unit directory entries.
35 Specifier_id and version within each tuple are separated
36 by a colon.
37
38 Users: udev rules to set ownership and access permissions or ACLs of
39 /dev/fw[0-9]+ character device files
40
41
42 What: /sys/bus/firewire/devices/fw[0-9]+/is_local
43 Date: July 2012
44 KernelVersion: 3.6
45 Contact: linux1394-devel@lists.sourceforge.net
46 Description:
47 IEEE 1394 node device attribute.
48 Read-only and immutable.
49 Values: 1: The sysfs entry represents a local node (a controller card).
50
51 0: The sysfs entry represents a remote node.
52
53
54 What: /sys/bus/firewire/devices/fw[0-9]+[.][0-9]+/
55 Date: May 2007
56 KernelVersion: 2.6.22
57 Contact: linux1394-devel@lists.sourceforge.net
58 Description:
59 IEEE 1394 unit device attributes.
60 Read-only. Immutable during the unit device's lifetime.
61 See IEEE 1212 for semantic definitions.
62
63 modalias
64 Same as MODALIAS in the uevent at device creation.
65
66 rom_index
67 Offset of the unit directory within the parent device's
68 (node device's) Configuration ROM, in quadlets.
69 Decimal string representation.
70
71
72 What: /sys/bus/firewire/devices/*/
73 Date: May 2007
74 KernelVersion: 2.6.22
75 Contact: linux1394-devel@lists.sourceforge.net
76 Description:
77 Attributes common to IEEE 1394 node devices and unit devices.
78 Read-only. Mutable during the node device's lifetime.
79 Immutable during the unit device's lifetime.
80 See IEEE 1212 for semantic definitions.
81
82 These attributes are only created if the root directory of an
83 IEEE 1394 node or the unit directory of an IEEE 1394 unit
84 actually contains according entries.
85
86 hardware_version
87 Hexadecimal string representation of an u24.
88
89 hardware_version_name
90 Contents of a respective textual descriptor leaf.
91
92 model
93 Hexadecimal string representation of an u24.
94
95 model_name
96 Contents of a respective textual descriptor leaf.
97
98 specifier_id
99 Hexadecimal string representation of an u24.
100 Mandatory in unit directories according to IEEE 1212.
101
102 vendor
103 Hexadecimal string representation of an u24.
104 Mandatory in the root directory according to IEEE 1212.
105
106 vendor_name
107 Contents of a respective textual descriptor leaf.
108
109 version
110 Hexadecimal string representation of an u24.
111 Mandatory in unit directories according to IEEE 1212.
112
113
114 What: /sys/bus/firewire/drivers/sbp2/fw*/host*/target*/*:*:*:*/ieee1394_id
115 formerly
116 /sys/bus/ieee1394/drivers/sbp2/fw*/host*/target*/*:*:*:*/ieee1394_id
117 Date: Feb 2004
118 KernelVersion: 2.6.4
119 Contact: linux1394-devel@lists.sourceforge.net
120 Description:
121 SCSI target port identifier and logical unit identifier of a
122 logical unit of an SBP-2 target. The identifiers are specified
123 in SAM-2...SAM-4 annex A. They are persistent and world-wide
124 unique properties the SBP-2 attached target.
125
126 Read-only attribute, immutable during the target's lifetime.
127 Format, as exposed by firewire-sbp2 since 2.6.22, May 2007:
128 Colon-separated hexadecimal string representations of
129
130 u64 EUI-64 : u24 directory_ID : u16 LUN
131
132 without 0x prefixes, without whitespace. The former sbp2 driver
133 (removed in 2.6.37 after being superseded by firewire-sbp2) used
134 a somewhat shorter format which was not as close to SAM.
135
136 Users: udev rules to create /dev/disk/by-id/ symlinks
137

3. 한국어 전문 번역

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

IEEE 1394 node device

1-51

아래 attribute의 contact는 linux1394-devel@lists.sourceforge.net이며 semantic 정의는 IEEE 1212를 참조한다.

경로도입가변성의미
/sys/bus/firewire/devices/fw[0-9]+/config_rom2007년 5월 · kernel 2.6.22read-only, node 수명 중 변경 가능Configuration ROM register의 내용이다. Host-endian u32 배열인 binary attribute다.
/sys/bus/firewire/devices/fw[0-9]+/guid2007년 5월 · kernel 2.6.22read-only, node 수명 중 변경 가능Configuration ROM의 bus information block에 있는 node EUI-64를 u64 16진수 문자열로 표시한다.
/sys/bus/firewire/devices/fw[0-9]+/units2009년 6월 · kernel 2.6.31read-only, node 수명 중 변경 가능Node에 있는 모든 unit의 요약이다. 각 unit directory의 u24 specifier_id와 version을 16진수로 만들고 colon으로 묶은 tuple들을 공백으로 구분한다.
/sys/bus/firewire/devices/fw[0-9]+/is_local2012년 7월 · kernel 3.6read-only, immutable1이면 local node인 controller card, 0이면 remote node다.

units attribute는 /dev/fw[0-9]+ character device file의 ownership, access permission 또는 ACL을 설정하는 udev rule이 사용한다.

IEEE 1394 unit device

54-69

/sys/bus/firewire/devices/fw[0-9]+[.][0-9]+/ 아래의 unit device attribute는 2007년 5월 kernel 2.6.22에 도입됐고 read-only이며 unit device 수명 동안 immutable이다.

attribute의미
modaliasDevice 생성 때 uevent의 MODALIAS와 같다.
rom_indexParent node device의 Configuration ROM에서 unit directory가 시작하는 offset을 quadlet 단위 10진수 문자열로 표시한다.

Node와 unit의 공통 attribute

72-111

/sys/bus/firewire/devices/*/ 아래의 공통 attribute는 2007년 5월 kernel 2.6.22에 도입됐다. Read-only이며 node 수명 중에는 변경될 수 있지만 unit 수명 중에는 immutable이다. IEEE 1394 node의 root directory 또는 unit의 unit directory에 해당 entry가 실제로 있을 때만 생성된다.

attribute표현과 조건
hardware_versionu24의 16진수 문자열
hardware_version_name대응하는 textual descriptor leaf의 내용
modelu24의 16진수 문자열
model_name대응하는 textual descriptor leaf의 내용
specifier_idu24의 16진수 문자열. IEEE 1212에 따라 unit directory의 필수 항목이다.
vendoru24의 16진수 문자열. IEEE 1212에 따라 root directory의 필수 항목이다.
vendor_name대응하는 textual descriptor leaf의 내용
versionu24의 16진수 문자열. IEEE 1212에 따라 unit directory의 필수 항목이다.

SBP-2 target identifier

114-136
항목
What/sys/bus/firewire/drivers/sbp2/fw*/host*/target*/*:*:*:*/ieee1394_id
이전 경로/sys/bus/ieee1394/drivers/sbp2/fw*/host*/target*/*:*:*:*/ieee1394_id
Date2004년 2월
KernelVersion2.6.4
Contactlinux1394-devel@lists.sourceforge.net
Users/dev/disk/by-id/ symlink를 만드는 udev rule

SBP-2 target의 logical unit에 대한 SCSI target port identifier와 logical unit identifier다. SAM-2부터 SAM-4까지의 annex A가 정의하며, SBP-2로 연결된 target의 persistent하고 world-wide unique한 속성이다. Read-only이고 target 수명 동안 immutable이다.

u64 EUI-64 : u24 directory_ID : u16 LUN

firewire-sbp2가 kernel 2.6.22, 2007년 5월부터 노출한 형식은 0x prefix와 whitespace가 없는 colon 구분 16진수 문자열이다. Kernel 2.6.37에서 firewire-sbp2로 대체된 뒤 제거된 옛 sbp2 driver는 SAM 형식과 덜 가까운 더 짧은 형식을 사용했다.