]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
hw/nvram/fw_cfg: Add fw_cfg_arch_key_name()
authorPhilippe Mathieu-Daudé <philmd@redhat.com>
Mon, 22 Apr 2019 13:49:41 +0000 (15:49 +0200)
committerPhilippe Mathieu-Daudé <philmd@redhat.com>
Thu, 23 May 2019 12:10:31 +0000 (14:10 +0200)
Add fw_cfg_arch_key_name() which returns the name of
an architecture-specific key.

Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20190422195020.1494-3-philmd@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
MAINTAINERS
hw/nvram/fw_cfg.c
include/hw/nvram/fw_cfg.h
stubs/Makefile.objs
stubs/fw_cfg.c [new file with mode: 0644]

index 73a0105082518fe89dae313d43f2a760c292e637..3cacd751bf394948a3e03745280003036719c981 100644 (file)
@@ -1696,6 +1696,7 @@ R: Gerd Hoffmann <kraxel@redhat.com>
 S: Supported
 F: docs/specs/fw_cfg.txt
 F: hw/nvram/fw_cfg.c
+F: stubs/fw_cfg.c
 F: include/hw/nvram/fw_cfg.h
 F: include/standard-headers/linux/qemu_fw_cfg.h
 F: tests/libqos/fw_cfg.c
index d374a970fea7c5f2bb4f0616123e898e5096d19d..b2dc0a80cbc2371858e67771c05a838dc70e1867 100644 (file)
@@ -100,7 +100,7 @@ static const char *key_name(uint16_t key)
     };
 
     if (key & FW_CFG_ARCH_LOCAL) {
-        return NULL;
+        return fw_cfg_arch_key_name(key);
     }
     if (key < FW_CFG_FILE_FIRST) {
         return fw_cfg_wellknown_keys[key];
index f5a6895a74012479198f165081677b0e06dc1cdf..80e435d303875d5c0a320f546e3e72ed16179393 100644 (file)
@@ -226,4 +226,18 @@ FWCfgState *fw_cfg_init_mem_wide(hwaddr ctl_addr,
 FWCfgState *fw_cfg_find(void);
 bool fw_cfg_dma_enabled(void *opaque);
 
+/**
+ * fw_cfg_arch_key_name:
+ *
+ * @key: The uint16 selector key.
+ *
+ * The key is architecture-specific (the FW_CFG_ARCH_LOCAL mask is expected
+ * to be set in the key).
+ *
+ * Returns: The stringified architecture-specific name if the selector
+ *          refers to a well-known numerically defined item, or NULL on
+ *          key lookup failure.
+ */
+const char *fw_cfg_arch_key_name(uint16_t key);
+
 #endif
index 269dfa58326f5be859ed1d04ec671c57e0c52c2a..73452ad2657a88f9014207b5dab0db3cd33f8e82 100644 (file)
@@ -39,3 +39,4 @@ stub-obj-y += xen-hvm.o
 stub-obj-y += pci-host-piix.o
 stub-obj-y += ram-block.o
 stub-obj-y += ramfb.o
+stub-obj-y += fw_cfg.o
diff --git a/stubs/fw_cfg.c b/stubs/fw_cfg.c
new file mode 100644 (file)
index 0000000..bb1e3c8
--- /dev/null
@@ -0,0 +1,21 @@
+/*
+ * fw_cfg stubs
+ *
+ * Copyright (c) 2019 Red Hat, Inc.
+ *
+ * Author:
+ *   Philippe Mathieu-Daudé <philmd@redhat.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+
+#include "qemu/osdep.h"
+#include "hw/nvram/fw_cfg.h"
+
+const char *fw_cfg_arch_key_name(uint16_t key)
+{
+    return NULL;
+}