Lines Matching +full:acpi +full:- +full:based
1 QEMU<->ACPI BIOS NVDIMM interface
4 QEMU supports NVDIMM via ACPI. This document describes the basic concepts of
5 NVDIMM ACPI and the interface between QEMU and the ACPI BIOS.
7 NVDIMM ACPI Background
8 ----------------------
10 NVDIMM is introduced in ACPI 6.0 which defines an NVDIMM root device under
12 to be supported by platform, platform firmware also exposes an ACPI
20 This is an example from ACPI 6.0, a platform contains one NVDIMM::
76 The detailed definition of the structure can be found at ACPI 6.0: 5.2.25
80 --------------------------
82 QEMU uses 4 bytes IO Port starting from 0x0a18 and a RAM-based memory page
83 for NVDIMM ACPI.
88 in ACPI.
90 This page is RAM-based and it is used to transfer data between _DSM
91 method and QEMU. If ACPI has control, this pages is owned by ACPI which
95 ACPI writes _DSM Input Data (based on the offset in the page):
97 [0x0 - 0x3]
106 - 0 is reserved for nvdimm root device named NVDR.
107 - 0x10000 is reserved for QEMU internal DSM function called on
110 [0x4 - 0x7]
113 [0x8 - 0xB]
116 [0xC - 0xFFF]
119 QEMU writes Output Data (based on the offset in the page):
121 [0x0 - 0x3]
124 [0x4 - 0xFFF]
127 IO Port 0x0a18 - 0xa1b:
128 ACPI writes the address of the memory page allocated by BIOS to this
133 [0x0a18 - 0xa1b]
137 --------------------
143 +----------------------+ +-----------------------+
146 | to the page +----->| IO port 0x0a18 +------------+
148 +----------------------+ +-----------------------+ |
151 +--------------------+ +-----------+ +------------------+--------+
154 | to the page +<------+ _DSM +<-----+ the page indicated by the |
156 +--------+-----------+ +-----------+ +---------------------------+
161 +--------------------------+ +--------------+
164 | by reading DSM +----->+ |
166 +--------------------------+ +--------------+
169 --------------
171 ACPI BIOS GPE.4 handler is dedicated for notifying OS about nvdimm device
172 hot-add event.
175 -------------------------------------
187 UUID {set to 648B9CF2-CDA1-4312-8AD9-49C4AF32BD62}
195 +----------+--------+--------+-------------------------------------------+
197 +----------+--------+--------+-------------------------------------------+
200 +----------+--------+--------+-------------------------------------------+
204 +----------+--------+--------+-------------------------------------------+
206 +----------+--------+--------+-------------------------------------------+
209 +----------+--------+--------+-------------------------------------------+
212 | | | | - 0x0 - success |
213 | | | | - 0x100 - error caused by NFIT update |
215 | | | | - other codes follow Chapter 3 in |
217 +----------+--------+--------+-------------------------------------------+
220 +----------+--------+--------+-------------------------------------------+