← Documents Documentation/driver-api/index.rst GitHub 원문 ↗

Linux 6.18.37 · Driver API

Driver implementer's API guide

Driver author 공통 정보, support library, bus와 subsystem-specific API 문서를 분류하는 최상위 guide입니다.

Source pathDocumentation/driver-api/index.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

index.rst:1-156

Driver API 최상위 index는 모든 driver 문서를 공통 lifecycle·support library·bus·subsystem 영역으로 나눕니다. 특정 hardware API를 찾을 때 subsystem 목록으로 바로 이동하기 전에 infrastructure와 driver model 문서를 함께 확인하는 출발점입니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0
2
3 ==============================
4 Driver implementer's API guide
5 ==============================
6
7 The kernel offers a wide variety of interfaces to support the development
8 of device drivers. This document is an only somewhat organized collection
9 of some of those interfaces — it will hopefully get better over time! The
10 available subsections can be seen below.
11
12
13 General information for driver authors
14 ======================================
15
16 This section contains documentation that should, at some point or other, be
17 of interest to most developers working on device drivers.
18
19 .. toctree::
20 :maxdepth: 1
21
22 basics
23 driver-model/index
24 device_link
25 infrastructure
26 ioctl
27 pm/index
28
29 Useful support libraries
30 ========================
31
32 This section contains documentation that should, at some point or other, be
33 of interest to most developers working on device drivers.
34
35 .. toctree::
36 :maxdepth: 1
37
38 early-userspace/index
39 connector
40 device-io
41 devfreq
42 dma-buf
43 component
44 io-mapping
45 io_ordering
46 uio-howto
47 vfio-mediated-device
48 vfio
49 vfio-pci-device-specific-driver-acceptance
50
51 Bus-level documentation
52 =======================
53
54 .. toctree::
55 :maxdepth: 1
56
57 auxiliary_bus
58 cxl/index
59 eisa
60 firewire
61 i3c/index
62 isa
63 men-chameleon-bus
64 pci/index
65 rapidio/index
66 slimbus
67 usb/index
68 virtio/index
69 vme
70 w1
71 xillybus
72
73
74 Subsystem-specific APIs
75 =======================
76
77 .. toctree::
78 :maxdepth: 1
79
80 80211/index
81 acpi/index
82 backlight/lp855x-driver.rst
83 clk
84 coco/index
85 console
86 crypto/index
87 dmaengine/index
88 dpll
89 edac
90 extcon
91 firmware/index
92 fpga/index
93 frame-buffer
94 aperture
95 generic-counter
96 gpio/index
97 hsi
98 hte/index
99 i2c
100 iio/index
101 infiniband
102 input
103 interconnect
104 ipmb
105 ipmi
106 libata
107 mailbox
108 md/index
109 media/index
110 mei/index
111 memory-devices/index
112 message-based
113 misc_devices
114 miscellaneous
115 mmc/index
116 mtd/index
117 mtdnand
118 nfc/index
119 ntb
120 nvdimm/index
121 nvmem
122 parport-lowlevel
123 phy/index
124 pin-control
125 pldmfw/index
126 pps
127 ptp
128 pwm
129 pwrseq
130 regulator
131 reset
132 rfkill
133 s390-drivers
134 scsi
135 serial/index
136 sm501
137 soundwire/index
138 spi
139 surface_aggregator/index
140 switchtec
141 sync_file
142 target
143 tee
144 thermal/index
145 tty/index
146 wbrf
147 wmi
148 xilinx/index
149 zorro
150
151 .. only:: subproject and html
152
153 Indices
154 =======
155
156 * :ref:`genindex`
157

3. 한국어 전문 번역

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

Driver implementer API guide

1-12

문서 제목은 `Driver implementer's API guide`입니다. Kernel은 device driver 개발을 지원하는 매우 다양한 interface를 제공합니다. 이 문서는 그 interface 일부를 완전히 정돈되지는 않은 형태로 모은 collection이며 앞으로 개선될 예정입니다. 사용 가능한 subsection은 아래 범주별로 나뉩니다.

Driver API guide 구조
Driver implementer's API guideGeneral informationUseful support librariesBus-level documentationSubsystem-specific APIsHTML indices

공통 기반에서 bus·subsystem API로 내려가는 문서 분류입니다.

Driver author 공통 정보

13-28

이 section은 device driver를 다루는 대부분의 developer가 언젠가 참고할 문서를 담습니다. `basics`, driver model, `device_link`, infrastructure, ioctl, power-management index를 max depth 1로 연결합니다.

.. toctree::
   :maxdepth: 1

   basics
   driver-model/index
   device_link
   infrastructure
   ioctl
   pm/index
공통 Driver API 문서
문서주제
basicsDriver 작성 기본
driver-model/indexLinux driver model
device_linkDevice dependency link
infrastructureDriver core infrastructure
ioctlUserspace control ABI
pm/indexPower management

Driver 작성의 lifecycle·link·control 기반입니다.

유용한 support library

29-50

이 section도 대부분의 driver developer가 참고할 support library 문서를 담습니다. Early userspace, connector, device I/O, devfreq, DMA-BUF, component, I/O mapping·ordering, UIO, VFIO와 mediated device 문서를 연결합니다.

.. toctree::
   :maxdepth: 1

   early-userspace/index
   connector
   device-io
   devfreq
   dma-buf
   component
   io-mapping
   io_ordering
   uio-howto
   vfio-mediated-device
   vfio
   vfio-pci-device-specific-driver-acceptance
Driver support library 범주
범주문서
Boot·messageearly-userspace, connector
Device I/Odevice-io, io-mapping, io_ordering
Performancedevfreq
Shared resourcesdma-buf, component
Userspace deviceuio-howto
Virtualizationvfio, mediated device, PCI acceptance

Memory·I/O·userspace·virtualization 지원 문서를 묶었습니다.

Bus-level documentation

51-73

Bus-level section은 auxiliary bus, CXL, EISA, FireWire, I3C, ISA, PCI, RapidIO, SlimBus, USB, Virtio, VME, 1-Wire, Xillybus 등의 bus와 interconnect 문서를 연결합니다.

.. toctree::
   :maxdepth: 1

   auxiliary_bus
   cxl/index
   eisa
   firewire
   i3c/index
   isa
   men-chameleon-bus
   pci/index
   rapidio/index
   slimbus
   usb/index
   virtio/index
   vme
   w1
   xillybus
Bus 문서 group
범주
Core·legacyauxiliary_bus, EISA, ISA
High-speed fabricCXL, PCI, RapidIO
Peripheral serialFireWire, I3C, SlimBus, USB, 1-Wire
Virtual·specializedVirtio, VME, Xillybus, MEN Chameleon

Legacy·high-speed·serial·virtual bus를 분류했습니다.

Subsystem-specific API

74-150

Subsystem-specific section은 wireless·ACPI에서 storage·media·clock·GPIO·IIO·input·network fabric, firmware, serial, thermal과 platform-specific driver까지 각 subsystem API index를 max depth 1로 연결합니다.

이 목록에는 이 작업에서 이미 번역한 I2C, I3C, IIO, HSI, HTE, GPIO, CXL, firmware, FPGA와 DMA engine 문서도 포함되며 이후 문서는 catalog 순서대로 이어집니다.

.. toctree::
   :maxdepth: 1

   80211/index
   acpi/index
   backlight/lp855x-driver.rst
   clk
   coco/index
   console
   crypto/index
   dmaengine/index
   dpll
   edac
   extcon
   firmware/index
   fpga/index
   frame-buffer
   aperture
   generic-counter
   gpio/index
   hsi
   hte/index
   i2c
   iio/index
   infiniband
   input
   interconnect
   ipmb
   ipmi
   libata
   mailbox
   md/index
   media/index
   mei/index
   memory-devices/index
   message-based
   misc_devices
   miscellaneous
   mmc/index
   mtd/index
   mtdnand
   nfc/index
   ntb
   nvdimm/index
   nvmem
   parport-lowlevel
   phy/index
   pin-control
   pldmfw/index
   pps
   ptp
   pwm
   pwrseq
   regulator
   reset
   rfkill
   s390-drivers
   scsi
   serial/index
   sm501
   soundwire/index
   spi
   surface_aggregator/index
   switchtec
   sync_file
   target
   tee
   thermal/index
   tty/index
   wbrf
   wmi
   xilinx/index
   zorro
Subsystem API 범주
영역대표 문서
Connectivity80211, InfiniBand, interconnect, NFC, NTB
Core hardwareACPI, clk, GPIO, I2C, I3C, IIO, SPI
Storagelibata, MMC, MTD, NVDIMM, SCSI, target
Media·displaybacklight, console, frame-buffer, media
Firmware·platformfirmware, FPGA, MEI, WMI, Surface Aggregator
Timing·powerDPLL, PPS, PTP, PWM, regulator, reset, thermal
I/O endpointsinput, mailbox, serial, TTY, parport

긴 toctree를 기능 영역별로 구조화했습니다.

HTML index

151-156

Subproject이면서 HTML output인 경우 `Indices` section이 나타나고 `genindex`를 연결합니다.

.. only::  subproject and html

   Indices
   =======

   * :ref:`genindex`
Generated index 조건
subproject conditionhtml builder conditionIndices headinggenindex referenceSymbol·term index page

Sphinx output 조건과 결과입니다.