From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33243) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXANy-0006kO-Gi for qemu-devel@nongnu.org; Tue, 09 Aug 2016 13:00:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bXANv-0002zd-7Z for qemu-devel@nongnu.org; Tue, 09 Aug 2016 13:00:13 -0400 From: Thomas Huth Date: Tue, 9 Aug 2016 18:59:58 +0200 Message-Id: <1470762001-414-3-git-send-email-thuth@redhat.com> In-Reply-To: <1470762001-414-1-git-send-email-thuth@redhat.com> References: <1470762001-414-1-git-send-email-thuth@redhat.com> Subject: [Qemu-devel] [PATCH v2 2/5] ppc: Introduce a function to look up CPU alias strings List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: David Gibson , qemu-ppc@nongnu.org Cc: Alexander Graf , qemu-devel@nongnu.org, abologna@redhat.com, bharata@linux.vnet.ibm.com, clg@kaod.org We will need this function to look up the aliases in the spapr-cpu-core code, too. Signed-off-by: Thomas Huth --- target-ppc/cpu.h | 1 + target-ppc/translate_init.c | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/target-ppc/cpu.h b/target-ppc/cpu.h index 5fce1ff..786ab5c 100644 --- a/target-ppc/cpu.h +++ b/target-ppc/cpu.h @@ -1201,6 +1201,7 @@ extern const struct VMStateDescription vmstate_ppc_cpu; /*****************************************************************************/ PowerPCCPU *cpu_ppc_init(const char *cpu_model); void ppc_translate_init(void); +const char *ppc_cpu_lookup_alias(const char *alias); void gen_update_current_nip(void *opaque); /* you can call this signal handler from your SIGBUS and SIGSEGV signal handlers to inform the virtual CPU of exceptions. non zero diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c index 5f28a36..7a9b15e 100644 --- a/target-ppc/translate_init.c +++ b/target-ppc/translate_init.c @@ -10012,6 +10012,19 @@ static ObjectClass *ppc_cpu_class_by_name(const char *name) return NULL; } +const char *ppc_cpu_lookup_alias(const char *alias) +{ + int ai; + + for (ai = 0; ppc_cpu_aliases[ai].alias != NULL; ai++) { + if (strcmp(ppc_cpu_aliases[ai].alias, alias) == 0) { + return ppc_cpu_aliases[ai].model; + } + } + + return NULL; +} + PowerPCCPU *cpu_ppc_init(const char *cpu_model) { return POWERPC_CPU(cpu_generic_init(TYPE_POWERPC_CPU, cpu_model)); -- 1.8.3.1