요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
============
Introduction
============
The firmware API enables kernel code to request files required
for functionality from userspace, the uses vary:
* Microcode for CPU errata
* Device driver firmware, required to be loaded onto device
microcontrollers
* Device driver information data (calibration data, EEPROM overrides),
some of which can be completely optional.
Types of firmware requests
==========================
There are two types of calls:
* Synchronous
* Asynchronous
Which one you use vary depending on your requirements, the rule of thumb
however is you should strive to use the asynchronous APIs unless you also
are already using asynchronous initialization mechanisms which will not
stall or delay boot. Even if loading firmware does not take a lot of time
processing firmware might, and this can still delay boot or initialization,
as such mechanisms such as asynchronous probe can help supplement drivers.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Firmware API의 용도
1-13문서 제목은 `Introduction`입니다.
Firmware API를 사용하면 kernel code가 기능 구현에 필요한 file을 userspace에 request할 수 있습니다. 사용 사례는 다음과 같이 다양합니다.
- CPU errata용 microcode
- Device microcontroller에 load해야 하는 device driver firmware
- Calibration data와 EEPROM override 같은 device driver information data. 일부는 완전히 선택적일 수 있습니다.
Kernel이 userspace에서 가져오는 대표 file 유형입니다.
Synchronous와 asynchronous request
14-27Firmware call은 synchronous와 asynchronous 두 종류입니다. 요구 사항에 따라 선택하지만, 일반적으로 boot를 멈추거나 늦추지 않는 asynchronous initialization mechanism을 이미 쓰는 경우가 아니라면 asynchronous API를 사용하도록 노력해야 합니다.
Firmware loading 자체가 오래 걸리지 않더라도 firmware processing이 오래 걸려 boot나 initialization을 지연할 수 있습니다. Asynchronous probe 같은 mechanism으로 driver를 보완할 수 있습니다.
호출 방식이 boot와 initialization 진행에 미치는 영향입니다.
Firmware loading과 processing이 boot critical path를 지연하지 않도록 분리합니다.
요약과 해설
introduction.rst:1-27Firmware API는 CPU microcode, device firmware와 calibration data 같은 file을 userspace에서 가져옵니다.
Firmware processing도 boot를 늦출 수 있으므로 일반적으로 asynchronous API와 asynchronous probe를 사용해 initialization critical path와 분리하는 것이 권장됩니다.