요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
Video Output Switcher Control
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2006 [email protected]
The output sysfs class driver provides an abstract video output layer that
can be used to hook platform specific methods to enable/disable video output
device through common sysfs interface. For example, on my IBM ThinkPad T42
laptop, The ACPI video driver registered its output devices and read/write
method for 'state' with output sysfs class. The user interface under sysfs is::
linux:/sys/class/video_output # tree .
.
|-- CRT0
| |-- device -> ../../../devices/pci0000:00/0000:00:01.0
| |-- state
| |-- subsystem -> ../../../class/video_output
| `-- uevent
|-- DVI0
| |-- device -> ../../../devices/pci0000:00/0000:00:01.0
| |-- state
| |-- subsystem -> ../../../class/video_output
| `-- uevent
|-- LCD0
| |-- device -> ../../../devices/pci0000:00/0000:00:01.0
| |-- state
| |-- subsystem -> ../../../class/video_output
| `-- uevent
`-- TV0
|-- device -> ../../../devices/pci0000:00/0000:00:01.0
|-- state
|-- subsystem -> ../../../class/video_output
`-- uevent
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
Video Output Switcher Control
1-34output sysfs class driver는 플랫폼별 video output device 활성화·비활성화 방법을 공통 sysfs interface에 연결할 수 있는 추상 video output layer를 제공합니다.
IBM ThinkPad T42의 예시에서는 ACPI video driver가 output device와 `state`용 read/write method를 output sysfs class에 등록합니다. `/sys/class/video_output` 아래에는 CRT0, DVI0, LCD0, TV0가 있고 각 항목은 같은 PCI device를 가리키는 `device` symlink, 상태를 제어하는 `state`, class를 가리키는 `subsystem`, event용 `uevent`를 갖습니다.
linux:/sys/class/video_output # tree .
.
|-- CRT0
| |-- device -> ../../../devices/pci0000:00/0000:00:01.0
| |-- state
| |-- subsystem -> ../../../class/video_output
| `-- uevent
|-- DVI0
| |-- device -> ../../../devices/pci0000:00/0000:00:01.0
| |-- state
| |-- subsystem -> ../../../class/video_output
| `-- uevent
|-- LCD0
| |-- device -> ../../../devices/pci0000:00/0000:00:01.0
| |-- state
| |-- subsystem -> ../../../class/video_output
| `-- uevent
`-- TV0
|-- device -> ../../../devices/pci0000:00/0000:00:01.0
|-- state
|-- subsystem -> ../../../class/video_output
`-- uevent
| 출력 | device | 제어·연결 |
|---|---|---|
| CRT0 | ../../../devices/pci0000:00/0000:00:01.0 | `state`, `subsystem`, `uevent` |
| DVI0 | ../../../devices/pci0000:00/0000:00:01.0 | `state`, `subsystem`, `uevent` |
| LCD0 | ../../../devices/pci0000:00/0000:00:01.0 | `state`, `subsystem`, `uevent` |
| TV0 | ../../../devices/pci0000:00/0000:00:01.0 | `state`, `subsystem`, `uevent` |
요약과 해설
video-output.rst:1-34ACPI 같은 platform driver는 CRT, DVI, LCD, TV output을 `/sys/class/video_output`에 등록하고 공통 `state` 파일로 제어할 수 있습니다.
각 출력 directory는 동일한 platform device와 class를 연결하면서 독립적인 state와 uevent를 제공합니다.