xref: /openbmc/qemu/hw/mips/fw_cfg.c (revision 2e0b5bbe813930021b2baab03c9d424c1c52d18b)
1*313d1e91SHuacai Chen /*
2*313d1e91SHuacai Chen  * QEMU fw_cfg helpers (MIPS specific)
3*313d1e91SHuacai Chen  *
4*313d1e91SHuacai Chen  * Copyright (c) 2020 Lemote, Inc.
5*313d1e91SHuacai Chen  *
6*313d1e91SHuacai Chen  * Author:
7*313d1e91SHuacai Chen  *   Huacai Chen (chenhc@lemote.com)
8*313d1e91SHuacai Chen  *
9*313d1e91SHuacai Chen  * SPDX-License-Identifier: GPL-2.0-or-later
10*313d1e91SHuacai Chen  *
11*313d1e91SHuacai Chen  * This work is licensed under the terms of the GNU GPL, version 2 or later.
12*313d1e91SHuacai Chen  * See the COPYING file in the top-level directory.
13*313d1e91SHuacai Chen  */
14*313d1e91SHuacai Chen 
15*313d1e91SHuacai Chen #include "qemu/osdep.h"
16*313d1e91SHuacai Chen #include "hw/mips/fw_cfg.h"
17*313d1e91SHuacai Chen #include "hw/nvram/fw_cfg.h"
18*313d1e91SHuacai Chen 
fw_cfg_arch_key_name(uint16_t key)19*313d1e91SHuacai Chen const char *fw_cfg_arch_key_name(uint16_t key)
20*313d1e91SHuacai Chen {
21*313d1e91SHuacai Chen     static const struct {
22*313d1e91SHuacai Chen         uint16_t key;
23*313d1e91SHuacai Chen         const char *name;
24*313d1e91SHuacai Chen     } fw_cfg_arch_wellknown_keys[] = {
25*313d1e91SHuacai Chen         {FW_CFG_MACHINE_VERSION, "machine_version"},
26*313d1e91SHuacai Chen         {FW_CFG_CPU_FREQ, "cpu_frequency"},
27*313d1e91SHuacai Chen     };
28*313d1e91SHuacai Chen 
29*313d1e91SHuacai Chen     for (size_t i = 0; i < ARRAY_SIZE(fw_cfg_arch_wellknown_keys); i++) {
30*313d1e91SHuacai Chen         if (fw_cfg_arch_wellknown_keys[i].key == key) {
31*313d1e91SHuacai Chen             return fw_cfg_arch_wellknown_keys[i].name;
32*313d1e91SHuacai Chen         }
33*313d1e91SHuacai Chen     }
34*313d1e91SHuacai Chen     return NULL;
35*313d1e91SHuacai Chen }
36