qemu
1// SPDX-License-Identifier: GPL-2.0+
2/*
3* Add fw_cfg device in DSDT
4*
5*/
6
7#include "qemu/osdep.h"
8#include "hw/nvram/fw_cfg_acpi.h"
9#include "hw/acpi/aml-build.h"
10
11void fw_cfg_acpi_dsdt_add(Aml *scope, const MemMapEntry *fw_cfg_memmap)
12{
13Aml *dev = aml_device("FWCF");
14aml_append(dev, aml_name_decl("_HID", aml_string("QEMU0002")));
15/* device present, functioning, decoding, not shown in UI */
16aml_append(dev, aml_name_decl("_STA", aml_int(0xB)));
17aml_append(dev, aml_name_decl("_CCA", aml_int(1)));
18
19Aml *crs = aml_resource_template();
20aml_append(crs, aml_memory32_fixed(fw_cfg_memmap->base,
21fw_cfg_memmap->size, AML_READ_WRITE));
22aml_append(dev, aml_name_decl("_CRS", crs));
23aml_append(scope, dev);
24}
25