hw/mips: Implement fw_cfg_arch_key_name()
Implement fw_cfg_arch_key_name(), which returns the name of a mips-specific key. Co-developed-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Signed-off-by: Huacai Chen <chenhuacai@kernel.org> Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <1600742967-12933-7-git-send-email-chenhc@lemote.com> [PMD: Add FW_CFG_MIPS Kconfig selector] Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
This commit is contained in:
parent
dea9633232
commit
313d1e910a
@ -38,3 +38,6 @@ config MIPS_CPS
|
||||
|
||||
config MIPS_BOSTON
|
||||
bool
|
||||
|
||||
config FW_CFG_MIPS
|
||||
bool
|
||||
|
35
hw/mips/fw_cfg.c
Normal file
35
hw/mips/fw_cfg.c
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* QEMU fw_cfg helpers (MIPS specific)
|
||||
*
|
||||
* Copyright (c) 2020 Lemote, Inc.
|
||||
*
|
||||
* Author:
|
||||
* Huacai Chen (chenhc@lemote.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/mips/fw_cfg.h"
|
||||
#include "hw/nvram/fw_cfg.h"
|
||||
|
||||
const char *fw_cfg_arch_key_name(uint16_t key)
|
||||
{
|
||||
static const struct {
|
||||
uint16_t key;
|
||||
const char *name;
|
||||
} fw_cfg_arch_wellknown_keys[] = {
|
||||
{FW_CFG_MACHINE_VERSION, "machine_version"},
|
||||
{FW_CFG_CPU_FREQ, "cpu_frequency"},
|
||||
};
|
||||
|
||||
for (size_t i = 0; i < ARRAY_SIZE(fw_cfg_arch_wellknown_keys); i++) {
|
||||
if (fw_cfg_arch_wellknown_keys[i].key == key) {
|
||||
return fw_cfg_arch_wellknown_keys[i].name;
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
}
|
19
hw/mips/fw_cfg.h
Normal file
19
hw/mips/fw_cfg.h
Normal file
@ -0,0 +1,19 @@
|
||||
/*
|
||||
* QEMU fw_cfg helpers (MIPS specific)
|
||||
*
|
||||
* Copyright (c) 2020 Huacai Chen
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#ifndef HW_MIPS_FW_CFG_H
|
||||
#define HW_MIPS_FW_CFG_H
|
||||
|
||||
#include "hw/boards.h"
|
||||
#include "hw/nvram/fw_cfg.h"
|
||||
|
||||
/* Data for BIOS to identify machine */
|
||||
#define FW_CFG_MACHINE_VERSION (FW_CFG_ARCH_LOCAL + 0)
|
||||
#define FW_CFG_CPU_FREQ (FW_CFG_ARCH_LOCAL + 1)
|
||||
|
||||
#endif
|
@ -1,5 +1,6 @@
|
||||
mips_ss = ss.source_set()
|
||||
mips_ss.add(files('mips_int.c'))
|
||||
mips_ss.add(when: 'CONFIG_FW_CFG_MIPS', if_true: files('fw_cfg.c'))
|
||||
mips_ss.add(when: 'CONFIG_FULOONG', if_true: files('fuloong2e.c'))
|
||||
mips_ss.add(when: 'CONFIG_JAZZ', if_true: files('jazz.c'))
|
||||
mips_ss.add(when: 'CONFIG_MALTA', if_true: files('gt64xxx_pci.c', 'malta.c'))
|
||||
|
Loading…
Reference in New Issue
Block a user