Commit b15c0f7d authored by Philippe Mathieu-Daudé's avatar Philippe Mathieu-Daudé
Browse files

hw/nvram/fw_cfg: Add fw_cfg_arch_key_name()



Add fw_cfg_arch_key_name() which returns the name of
an architecture-specific key.

Reviewed-by: default avatarLaszlo Ersek <lersek@redhat.com>
Message-Id: <20190422195020.1494-3-philmd@redhat.com>
Signed-off-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
parent 1f80b0d6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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
+1 −1
Original line number Diff line number Diff line
@@ -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];
+14 −0
Original line number Diff line number Diff line
@@ -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
+1 −0
Original line number Diff line number Diff line
@@ -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

stubs/fw_cfg.c

0 → 100644
+21 −0
Original line number Diff line number Diff line
/*
 * 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;
}