[Qemu-devel] [PATCH v2 1/4] target/ppc: export ppc_cpu_pvr_match() helper

Cédric Le Goater posted 4 patches 8 years, 4 months ago
There is a newer version of this series
[Qemu-devel] [PATCH v2 1/4] target/ppc: export ppc_cpu_pvr_match() helper
Posted by Cédric Le Goater 8 years, 4 months ago
It will be used to test the family of a CPU.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
 include/hw/ppc/ppc.h | 1 +
 target/ppc/machine.c | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/include/hw/ppc/ppc.h b/include/hw/ppc/ppc.h
index 4e7fe110d67b..01e32fa03d2e 100644
--- a/include/hw/ppc/ppc.h
+++ b/include/hw/ppc/ppc.h
@@ -107,4 +107,5 @@ enum {
 void ppc_booke_timers_init(PowerPCCPU *cpu, uint32_t freq, uint32_t flags);
 
 void ppc_cpu_parse_features(const char *cpu_model);
+bool ppc_cpu_pvr_match(PowerPCCPU *cpu, uint32_t pvr);
 #endif
diff --git a/target/ppc/machine.c b/target/ppc/machine.c
index 384caee800e6..6085a8c25fd3 100644
--- a/target/ppc/machine.c
+++ b/target/ppc/machine.c
@@ -4,6 +4,7 @@
 #include "exec/exec-all.h"
 #include "hw/hw.h"
 #include "hw/boards.h"
+#include "hw/ppc/ppc.h"
 #include "sysemu/kvm.h"
 #include "helper_regs.h"
 #include "mmu-hash64.h"
@@ -210,7 +211,7 @@ static int cpu_pre_save(void *opaque)
  * between sufficiently similar PVRs, as determined by the CPU class's
  * pvr_match() hook.
  */
-static bool pvr_match(PowerPCCPU *cpu, uint32_t pvr)
+bool ppc_cpu_pvr_match(PowerPCCPU *cpu, uint32_t pvr)
 {
     PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
 
@@ -247,7 +248,7 @@ static int cpu_post_load(void *opaque, int version_id)
     } else
 #endif
     {
-        if (!pvr_match(cpu, env->spr[SPR_PVR])) {
+        if (!ppc_cpu_pvr_match(cpu, env->spr[SPR_PVR])) {
             return -1;
         }
     }
-- 
2.13.6


Re: [Qemu-devel] [PATCH v2 1/4] target/ppc: export ppc_cpu_pvr_match() helper
Posted by David Gibson 8 years, 4 months ago
On Mon, Oct 09, 2017 at 05:49:27PM +0200, Cédric Le Goater wrote:
> It will be used to test the family of a CPU.
> 
> Signed-off-by: Cédric Le Goater <clg@kaod.org>

I don't think this is useful, see comments on later patches.

> ---
>  include/hw/ppc/ppc.h | 1 +
>  target/ppc/machine.c | 5 +++--
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/include/hw/ppc/ppc.h b/include/hw/ppc/ppc.h
> index 4e7fe110d67b..01e32fa03d2e 100644
> --- a/include/hw/ppc/ppc.h
> +++ b/include/hw/ppc/ppc.h
> @@ -107,4 +107,5 @@ enum {
>  void ppc_booke_timers_init(PowerPCCPU *cpu, uint32_t freq, uint32_t flags);
>  
>  void ppc_cpu_parse_features(const char *cpu_model);
> +bool ppc_cpu_pvr_match(PowerPCCPU *cpu, uint32_t pvr);
>  #endif
> diff --git a/target/ppc/machine.c b/target/ppc/machine.c
> index 384caee800e6..6085a8c25fd3 100644
> --- a/target/ppc/machine.c
> +++ b/target/ppc/machine.c
> @@ -4,6 +4,7 @@
>  #include "exec/exec-all.h"
>  #include "hw/hw.h"
>  #include "hw/boards.h"
> +#include "hw/ppc/ppc.h"
>  #include "sysemu/kvm.h"
>  #include "helper_regs.h"
>  #include "mmu-hash64.h"
> @@ -210,7 +211,7 @@ static int cpu_pre_save(void *opaque)
>   * between sufficiently similar PVRs, as determined by the CPU class's
>   * pvr_match() hook.
>   */
> -static bool pvr_match(PowerPCCPU *cpu, uint32_t pvr)
> +bool ppc_cpu_pvr_match(PowerPCCPU *cpu, uint32_t pvr)
>  {
>      PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
>  
> @@ -247,7 +248,7 @@ static int cpu_post_load(void *opaque, int version_id)
>      } else
>  #endif
>      {
> -        if (!pvr_match(cpu, env->spr[SPR_PVR])) {
> +        if (!ppc_cpu_pvr_match(cpu, env->spr[SPR_PVR])) {
>              return -1;
>          }
>      }

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson