요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
PNP modalias와 hardware ID
sysfs-bus-acpi:13-28modalias는 _HID·_CID에서 얻은 PNP IDs를 acpi 형식으로 나타내고 hid는 _HID control method가 있는 object의 hardware ID를 제공합니다.
_STR, _ADR와 _UID outputs
sysfs-bus-acpi:30-51description·adr·uid는 각각 _STR·_ADR·_UID control method의 output이며 _ADR은 PCI처럼 standard enumeration algorithm을 사용하는 device object에 있습니다.
_EJ0 hot removal
sysfs-bus-acpi:53-59_EJ0 method가 있는 device object의 eject attribute에 1을 쓰면 hot removal을 시작합니다.
_STA device status bitmap
sysfs-bus-acpi:61-89status는 _STA method의 decimal bitmap을 제공하며 presence, enable·resource decoding, UI visibility, diagnostics/functioning과 battery presence를 bit 0–4로 나타냅니다.
Non-PCI hardware version
sysfs-bus-acpi:91-98hrv는 _HRV control method가 있는 non-PCI hardware의 version을 읽게 하며 PCI version은 lspci로 확인할 수 있습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
What: /sys/bus/acpi/devices/.../path
Date: December 2006
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
This attribute indicates the full path of ACPI namespace
object associated with the device object. For example,
\_SB_.PCI0.
This file is not present for device objects representing
fixed ACPI hardware features (like power and sleep
buttons).
What: /sys/bus/acpi/devices/.../modalias
Date: July 2007
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
This attribute indicates the PNP IDs of the device object.
That is acpi:HHHHHHHH:[CCCCCCC:]. Where each HHHHHHHH or
CCCCCCCC contains device object's PNPID (_HID or _CID).
What: /sys/bus/acpi/devices/.../hid
Date: April 2005
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
This attribute indicates the hardware ID (_HID) of the
device object. For example, PNP0103.
This file is present for device objects having the _HID
control method.
What: /sys/bus/acpi/devices/.../description
Date: October 2012
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
This attribute contains the output of the device object's
_STR control method, if present.
What: /sys/bus/acpi/devices/.../adr
Date: October 2012
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
This attribute contains the output of the device object's
_ADR control method, which is present for ACPI device
objects representing devices having standard enumeration
algorithms, such as PCI.
What: /sys/bus/acpi/devices/.../uid
Date: October 2012
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
This attribute contains the output of the device object's
_UID control method, if present.
What: /sys/bus/acpi/devices/.../eject
Date: December 2006
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
Writing 1 to this attribute will trigger hot removal of
this device object. This file exists for every device
object that has _EJ0 method.
What: /sys/bus/acpi/devices/.../status
Date: Jan, 2014
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
(RO) Returns the ACPI device status: enabled, disabled or
functioning or present, if the method _STA is present.
The return value is a decimal integer representing the device's
status bitmap:
=========== ==================================================
Bit [0] Set if the device is present.
Bit [1] Set if the device is enabled and decoding its
resources.
Bit [2] Set if the device should be shown in the UI.
Bit [3] Set if the device is functioning properly (cleared
if device failed its diagnostics).
Bit [4] Set if the battery is present.
Bits [31:5] Reserved (must be cleared)
=========== ==================================================
If bit [0] is clear, then bit 1 must also be clear (a device
that is not present cannot be enabled).
Bit 0 can be clear (not present) with bit [3] set (device is
functional). This case is used to indicate a valid device for
which no device driver should be loaded.
More special cases are covered in the ACPI specification.
What: /sys/bus/acpi/devices/.../hrv
Date: Apr, 2016
Contact: Rafael J. Wysocki <rafael@kernel.org>
Description:
(RO) Allows users to read the hardware version of non-PCI
hardware, if the _HRV control method is present. It is mostly
useful for non-PCI devices because lspci can list the hardware
version for PCI devices.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
ACPI namespace object의 full path
1-11| 항목 | 전문 번역 |
|---|---|
| What | /sys/bus/acpi/devices/.../path |
| Date | 2006년 12월 |
| Contact | Rafael J. Wysocki <rafael@kernel.org> |
| Description | 이 attribute는 device object와 연결된 ACPI namespace object의 full path를 나타냅니다. 예: \_SB_.PCI0. |
| 예외 | Power button과 sleep button 같은 fixed ACPI hardware feature를 나타내는 device object에는 이 file이 없습니다. |
ACPI PNP modalias와 _HID
13-28| What | Date | Contact | 전문 번역 |
|---|---|---|---|
| /sys/bus/acpi/devices/.../modalias | 2007년 7월 | Rafael J. Wysocki <rafael@kernel.org> | 이 attribute는 device object의 PNP IDs를 나타냅니다. 형식은 acpi:HHHHHHHH:[CCCCCCC:]입니다. 각 HHHHHHHH 또는 CCCCCCCC에는 device object의 PNPID(_HID 또는 _CID)가 들어갑니다. |
| /sys/bus/acpi/devices/.../hid | 2005년 4월 | Rafael J. Wysocki <rafael@kernel.org> | 이 attribute는 device object의 hardware ID(_HID)를 나타냅니다. 예: PNP0103. _HID control method가 있는 device object에 이 file이 존재합니다. |
ACPI control method output attributes
30-51| What | Date | Contact | 전문 번역 |
|---|---|---|---|
| /sys/bus/acpi/devices/.../description | 2012년 10월 | Rafael J. Wysocki <rafael@kernel.org> | Device object의 _STR control method가 있다면 그 output을 담습니다. |
| /sys/bus/acpi/devices/.../adr | 2012년 10월 | Rafael J. Wysocki <rafael@kernel.org> | Device object의 _ADR control method output을 담습니다. _ADR은 PCI처럼 standard enumeration algorithm을 사용하는 device를 나타내는 ACPI device object에 있습니다. |
| /sys/bus/acpi/devices/.../uid | 2012년 10월 | Rafael J. Wysocki <rafael@kernel.org> | Device object의 _UID control method가 있다면 그 output을 담습니다. |
Firmware namespace의 identification·description·address·instance methods가 Linux ACPI device attributes에 대응한다.
ACPI device hot removal
53-59| 항목 | 전문 번역 |
|---|---|
| What | /sys/bus/acpi/devices/.../eject |
| Date | 2006년 12월 |
| Contact | Rafael J. Wysocki <rafael@kernel.org> |
| Description | 이 attribute에 1을 쓰면 해당 device object의 hot removal을 trigger합니다. _EJ0 method가 있는 모든 device object에 이 file이 존재합니다. |
ACPI _STA status bitmap
61-89| 항목 | 전문 번역 |
|---|---|
| What | /sys/bus/acpi/devices/.../status |
| Date | 2014년 1월 |
| Contact | Rafael J. Wysocki <rafael@kernel.org> |
| Description | (RO) _STA method가 있다면 enabled, disabled, functioning 또는 present 상태를 포함한 ACPI device status를 반환합니다. Return value는 device status bitmap을 나타내는 decimal integer입니다. |
| Bit | 전문 번역 |
|---|---|
| Bit [0] | Device가 present이면 set됩니다. |
| Bit [1] | Device가 enabled이고 자신의 resource를 decoding하고 있으면 set됩니다. |
| Bit [2] | Device를 UI에 표시해야 하면 set됩니다. |
| Bit [3] | Device가 올바르게 functioning하면 set됩니다. Device가 diagnostics에 실패했다면 clear됩니다. |
| Bit [4] | Battery가 present이면 set됩니다. |
| Bits [31:5] | Reserved이며 반드시 clear되어야 합니다. |
Bit [0]이 clear라면 bit [1]도 반드시 clear여야 합니다. Present하지 않은 device는 enabled일 수 없기 때문입니다.
Bit [0]이 clear(not present)인 동시에 bit [3]이 set(device functional)될 수 있습니다. 이 경우는 유효한 device이지만 어떤 device driver도 load하지 않아야 함을 나타낼 때 사용합니다.
그 밖의 특수 사례는 ACPI specification에서 다룹니다.
Non-PCI hardware version
91-98| 항목 | 전문 번역 |
|---|---|
| What | /sys/bus/acpi/devices/.../hrv |
| Date | 2016년 4월 |
| Contact | Rafael J. Wysocki <rafael@kernel.org> |
| Description | (RO) _HRV control method가 있다면 user가 non-PCI hardware의 hardware version을 읽을 수 있게 합니다. lspci가 PCI device의 hardware version을 나열할 수 있으므로 주로 non-PCI device에 유용합니다. |
ACPI namespace path
sysfs-bus-acpi:1-11path는 device object와 연결된 ACPI namespace object의 full path를 제공하지만 power·sleep button 같은 fixed ACPI hardware feature에는 존재하지 않습니다.