[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 02/15] hw/nvram/fw_cfg: Add fw_cfg_arch_key_name()
From: |
Philippe Mathieu-Daudé |
Subject: |
[Qemu-devel] [PULL 02/15] hw/nvram/fw_cfg: Add fw_cfg_arch_key_name() |
Date: |
Thu, 23 May 2019 14:43:07 +0200 |
Add fw_cfg_arch_key_name() which returns the name of
an architecture-specific key.
Reviewed-by: Laszlo Ersek <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
MAINTAINERS | 1 +
hw/nvram/fw_cfg.c | 2 +-
include/hw/nvram/fw_cfg.h | 14 ++++++++++++++
stubs/Makefile.objs | 1 +
stubs/fw_cfg.c | 21 +++++++++++++++++++++
5 files changed, 38 insertions(+), 1 deletion(-)
create mode 100644 stubs/fw_cfg.c
diff --git a/MAINTAINERS b/MAINTAINERS
index 73a0105082..3cacd751bf 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1696,6 +1696,7 @@ R: Gerd Hoffmann <address@hidden>
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
diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c
index d374a970fe..b2dc0a80cb 100644
--- a/hw/nvram/fw_cfg.c
+++ b/hw/nvram/fw_cfg.c
@@ -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];
diff --git a/include/hw/nvram/fw_cfg.h b/include/hw/nvram/fw_cfg.h
index f5a6895a74..80e435d303 100644
--- a/include/hw/nvram/fw_cfg.h
+++ b/include/hw/nvram/fw_cfg.h
@@ -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
diff --git a/stubs/Makefile.objs b/stubs/Makefile.objs
index 269dfa5832..73452ad265 100644
--- a/stubs/Makefile.objs
+++ b/stubs/Makefile.objs
@@ -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
index 0000000000..bb1e3c8aa9
--- /dev/null
+++ b/stubs/fw_cfg.c
@@ -0,0 +1,21 @@
+/*
+ * fw_cfg stubs
+ *
+ * Copyright (c) 2019 Red Hat, Inc.
+ *
+ * Author:
+ * Philippe Mathieu-Daudé <address@hidden>
+ *
+ * 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;
+}
--
2.20.1
- [Qemu-devel] [PULL 13/15] hw/nvram/fw_cfg: Store 'reboot-timeout' as little endian, (continued)
- [Qemu-devel] [PULL 13/15] hw/nvram/fw_cfg: Store 'reboot-timeout' as little endian, Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 12/15] tests: fw_cfg: add a function to get the fw_cfg file, Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 11/15] tests: refactor fw_cfg_test, Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 10/15] tests/fw_cfg: Free QFWCFG object after qtest has run, Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 09/15] tests/libqos: Add pc_fw_cfg_uninit() and use it, Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 08/15] tests/libqos: Add io_fw_cfg_uninit() and mm_fw_cfg_uninit(), Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 06/15] hw/sparc: Implement fw_cfg_arch_key_name(), Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 07/15] hw/sparc64: Implement fw_cfg_arch_key_name(), Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 05/15] hw/ppc: Implement fw_cfg_arch_key_name(), Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 02/15] hw/nvram/fw_cfg: Add fw_cfg_arch_key_name(),
Philippe Mathieu-Daudé <=
- [Qemu-devel] [PULL 04/15] hw/i386: Implement fw_cfg_arch_key_name(), Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 03/15] hw/i386: Extract fw_cfg definitions to local "fw_cfg.h", Philippe Mathieu-Daudé, 2019/05/23
- [Qemu-devel] [PULL 01/15] hw/nvram/fw_cfg: Add trace events, Philippe Mathieu-Daudé, 2019/05/23
- Re: [Qemu-devel] [PULL 00/15] Fw cfg 20190523 patches, Peter Maydell, 2019/05/23