요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
===========================================
Firewire (IEEE 1394) driver Interface Guide
===========================================
Introduction and Overview
=========================
The Linux FireWire subsystem adds some interfaces into the Linux system to
use/maintain+any resource on IEEE 1394 bus.
The main purpose of these interfaces is to access address space on each node
on IEEE 1394 bus by ISO/IEC 13213 (IEEE 1212) procedure, and to control
isochronous resources on the bus by IEEE 1394 procedure.
Two types of interfaces are added, according to consumers of the interface. A
set of userspace interfaces is available via `firewire character devices`. A set
of kernel interfaces is available via exported symbols in `firewire-core` module.
Firewire char device data structures
====================================
.. include:: ../ABI/stable/firewire-cdev
:literal:
.. kernel-doc:: include/uapi/linux/firewire-cdev.h
:internal:
Firewire device probing and sysfs interfaces
============================================
.. include:: ../ABI/stable/sysfs-bus-firewire
:literal:
.. kernel-doc:: drivers/firewire/core-device.c
:export:
Firewire core transaction interfaces
====================================
.. kernel-doc:: drivers/firewire/core-transaction.c
:export:
Firewire Isochronous I/O interfaces
===================================
.. kernel-doc:: include/linux/firewire.h
:functions: fw_iso_context_schedule_flush_completions
.. kernel-doc:: drivers/firewire/core-iso.c
:export:
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
FireWire interface 개요
1-18문서 제목은 `Firewire (IEEE 1394) driver Interface Guide`입니다.
Linux FireWire subsystem은 IEEE 1394 bus의 resource를 사용하고 유지하기 위한 interface를 Linux system에 추가합니다.
이 interface의 주된 목적은 ISO/IEC 13213(IEEE 1212) procedure에 따라 IEEE 1394 bus의 각 node address space에 접근하고, IEEE 1394 procedure에 따라 bus의 isochronous resource를 제어하는 것입니다.
interface consumer에 따라 두 종류를 제공합니다. userspace interface 집합은 FireWire character device를 통해 제공되고, kernel interface 집합은 `firewire-core` module이 export하는 symbol을 통해 제공됩니다.
userspace와 kernel이 subsystem에 접근하는 두 경로입니다.
FireWire character device data structure
19-27FireWire character device의 userspace ABI 설명은 `../ABI/stable/firewire-cdev`를 literal include합니다. UAPI data structure와 internal declaration은 `include/uapi/linux/firewire-cdev.h`의 kernel-doc에서 가져옵니다.
.. include:: ../ABI/stable/firewire-cdev
:literal:
.. kernel-doc:: include/uapi/linux/firewire-cdev.h
:internal:
Device probing과 sysfs interface
28-36FireWire bus의 stable sysfs ABI는 `../ABI/stable/sysfs-bus-firewire`를 literal include합니다. device probing과 export API 설명은 `drivers/firewire/core-device.c`의 kernel-doc에서 가져옵니다.
.. include:: ../ABI/stable/sysfs-bus-firewire
:literal:
.. kernel-doc:: drivers/firewire/core-device.c
:export:
Core transaction interface
37-42FireWire core transaction interface는 `drivers/firewire/core-transaction.c`가 export하는 API의 kernel-doc으로 구성됩니다.
.. kernel-doc:: drivers/firewire/core-transaction.c
:export:
ABI와 core implementation source를 기능별로 연결했습니다.
Isochronous I/O interface
43-50FireWire isochronous I/O section은 `include/linux/firewire.h`의 `fw_iso_context_schedule_flush_completions` function 문서와 `drivers/firewire/core-iso.c`가 export하는 API 문서를 포함합니다.
.. kernel-doc:: include/linux/firewire.h
:functions: fw_iso_context_schedule_flush_completions
.. kernel-doc:: drivers/firewire/core-iso.c
:export:
public declaration과 core implementation의 관계입니다.
요약과 해설
firewire.rst:1-50Linux FireWire subsystem은 IEEE 1212 방식의 node address-space transaction과 IEEE 1394 isochronous resource control을 제공합니다. userspace는 character device ABI를 사용하고 kernel client는 firewire-core exported symbol을 사용합니다.
이 문서는 각 기능의 상세 정의를 stable ABI 문서, UAPI header, core-device, core-transaction, core-iso source의 kernel-doc에 연결하는 interface index입니다.