← Documents Documentation/devicetree/bindings/misc/pvpanic-mmio.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

QEMU PVPANIC MMIO

QEMU virt guest panic을 전달하는 16-bit MMIO register 바인딩입니다.

Source pathDocumentation/devicetree/bindings/misc/pvpanic-mmio.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

pvpanic-mmio.txt:1-29

Panic event byte와 reserved byte, 2-byte MMIO 예제를 설명합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 * QEMU PVPANIC MMIO Configuration bindings
2
3 QEMU's emulation / virtualization targets provide the following PVPANIC
4 MMIO Configuration interface on the "virt" machine.
5 type:
6
7 - a read-write, 16-bit wide data register.
8
9 QEMU exposes the data register to guests as memory mapped registers.
10
11 Required properties:
12
13 - compatible: "qemu,pvpanic-mmio".
14 - reg: the MMIO region used by the device.
15 * Bytes 0x0 Write panic event to the reg when guest OS panics.
16 * Bytes 0x1 Reserved.
17
18 Example:
19
20 / {
21 #size-cells = <0x2>;
22 #address-cells = <0x2>;
23
24 pvpanic-mmio@9060000 {
25 compatible = "qemu,pvpanic-mmio";
26 reg = <0x0 0x9060000 0x0 0x2>;
27 };
28 };
29
30

3. 한국어 전문 번역

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

QEMU PVPANIC MMIO

1-10

QEMU emulation·virtualization target은 `virt` machine에 PVPANIC MMIO configuration interface를 제공합니다. Interface는 read-write 16-bit data register 하나이며 QEMU는 이를 guest에 memory-mapped register로 노출합니다.

PVPANIC notification
Guest OS panicWrite MMIO byte 0
PVPANIC registerQEMU host notification

Guest panic event를 MMIO byte 0에 써서 QEMU host에 알립니다.

2-byte MMIO region

11-17

`compatible`은 `qemu,pvpanic-mmio`이고 `reg`는 장치가 사용하는 MMIO 영역입니다. Byte `0x0`에는 guest OS panic 시 panic event를 쓰고 byte `0x1`은 reserved입니다.

PVPANIC data register
Byte용도
0x0Guest panic event write
0x1Reserved

16-bit register의 byte별 의미입니다.

QEMU virt 예제

18-29

예제는 두 cell 주소·크기 형식으로 물리 주소 `0x9060000`에 길이 2 bytes의 PVPANIC MMIO 장치를 배치합니다.

/ {
        #size-cells = <0x2>;
        #address-cells = <0x2>;

        pvpanic-mmio@9060000 {
                compatible = "qemu,pvpanic-mmio";
                reg = <0x0 0x9060000 0x0 0x2>;
        };
};