요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
==========================
Regulator API design notes
==========================
This document provides a brief, partially structured, overview of some
of the design considerations which impact the regulator API design.
Safety
------
- Errors in regulator configuration can have very serious consequences
for the system, potentially including lasting hardware damage.
- It is not possible to automatically determine the power configuration
of the system - software-equivalent variants of the same chip may
have different power requirements, and not all components with power
requirements are visible to software.
.. note::
The API should make no changes to the hardware state unless it has
specific knowledge that these changes are safe to perform on this
particular system.
Consumer use cases
------------------
- The overwhelming majority of devices in a system will have no
requirement to do any runtime configuration of their power beyond
being able to turn it on or off.
- Many of the power supplies in the system will be shared between many
different consumers.
.. note::
The consumer API should be structured so that these use cases are
very easy to handle and so that consumers will work with shared
supplies without any additional effort.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
설계 고려사항
1-7이 문서는 regulator API 설계에 영향을 주는 일부 고려사항을 간략하고 부분적으로 구조화해 설명합니다.
==========================
Regulator API design notes
==========================
This document provides a brief, partially structured, overview of some
of the design considerations which impact the regulator API design.
Safety 원칙
8-23Regulator configuration 오류는 system에 매우 심각한 결과를 일으킬 수 있고 영구적인 hardware damage까지 초래할 수 있습니다.
System의 power configuration을 자동으로 판별할 수는 없습니다. Software 관점에서 같은 chip variant라도 power requirement가 다를 수 있고, power가 필요한 모든 component가 software에 보이는 것도 아닙니다.
따라서 API는 해당 system에서 변경이 안전하다는 구체적인 지식이 없으면 hardware state를 바꾸지 않아야 합니다.
변경 허용의 기본값은 보수적이어야 합니다.
Safety
------
- Errors in regulator configuration can have very serious consequences
for the system, potentially including lasting hardware damage.
- It is not possible to automatically determine the power configuration
of the system - software-equivalent variants of the same chip may
have different power requirements, and not all components with power
requirements are visible to software.
.. note::
The API should make no changes to the hardware state unless it has
specific knowledge that these changes are safe to perform on this
particular system.
Consumer 사용 사례
24-38System device의 압도적 다수는 power를 켜고 끄는 것 외에는 runtime power configuration이 필요하지 않습니다.
또한 system의 많은 power supply는 여러 consumer가 공유합니다.
Consumer API는 단순 on/off 사용 사례를 매우 쉽게 처리하고, consumer가 추가 작업 없이 shared supply에서도 동작하도록 구성해야 합니다.
흔한 on/off와 shared supply를 기본 경로로 최적화합니다.
Consumer use cases
------------------
- The overwhelming majority of devices in a system will have no
requirement to do any runtime configuration of their power beyond
being able to turn it on or off.
- Many of the power supplies in the system will be shared between many
different consumers.
.. note::
The consumer API should be structured so that these use cases are
very easy to handle and so that consumers will work with shared
supplies without any additional effort.
요약·해설
design.rst:1-38Hardware safety와 shared supply를 기본으로 하는 regulator API의 보수적 설계 원칙을 설명합니다.