[libvirt] [PATCH] cpu: add Freescale ppc64 CPU models

Prerna Saxena prerna at linux.vnet.ibm.com
Thu Jan 29 12:01:14 UTC 2015


On Friday 23 January 2015 08:42 AM, Olivia Yin wrote:
> Signed-off-by: Olivia Yin <hong-hua.yin at freescale.com>
> ---
>  src/cpu/cpu_map.xml | 38 +++++++++++++++++++++++++++++++++++++-
>  1 file changed, 37 insertions(+), 1 deletion(-)
>
> diff --git a/src/cpu/cpu_map.xml b/src/cpu/cpu_map.xml
> index bd9b056..c34874e 100644
> --- a/src/cpu/cpu_map.xml
> +++ b/src/cpu/cpu_map.xml
> @@ -1,4 +1,4 @@
> -<cpus>
> +n<cpus>

This looks to be a typo.

>    <arch name='x86'>
>      <!-- vendor definitions -->
>      <vendor name='Intel' string='GenuineIntel'/>
> @@ -600,6 +600,7 @@
>    <arch name='ppc64'>
>      <!-- vendor definitions -->
>      <vendor name='IBM'/>
> +    <vendor name='Freescale'/>
>
>      <!-- IBM-based CPU models -->
>      <model name='POWER7'>
> @@ -657,5 +658,40 @@
>        <pvr value='0x004d0000'/>
>      </model>
>
> +<!-- Freescale-based CPU models -->
> +    <model name='POWERPC_e5500_v10'>
> +      <vendor name='Freescale'/>
> +      <pvr value='0x80240010'/>
> +    </model>
> +
> +    <model name='POWERPC_e5500_v11'>
> +      <vendor name='Freescale'/>
> +      <pvr value='0x80240011'/>
> +    </model>
> +
> +    <model name='POWERPC_e5500_v12'>
> +      <vendor name='Freescale'/>
> +      <pvr value='0x80240012'/>
> +    </model>
> +
> +     <model name='POWERPC_e5500_v1020'>
> +      <vendor name='Freescale'/>
> +      <pvr value='0x80241020'/>
> +    </model>
> +
> +    <model name='POWERPC_e6500_v10'>
> +      <vendor name='Freescale'/>
> +      <pvr value='0x80400010'/>
> +    </model>
> +
> +    <model name='POWERPC_e6500_v20'>
> +      <vendor name='Freescale'/>
> +      <pvr value='0x80400020'/>
> +    </model>
> +
> +    <model name='POWERPC_e6500_v120'>
> +      <vendor name='Freescale'/>
> +      <pvr value='0x80400120'/>
> +    </model>
>    </arch>
>  </cpus>
Rest of the patch looks good.

However, I had an observation. It appears that POWERPC_e6500_v10 , .._v20 & _v120 seem variants of the same processor family -- they share the same higher 16 bits of PVR.

Do you need to specifically expose the different variants of these models in the management stack ?
Or the purpose of adding these entries is merely to enable libvirt to run on these boards ?

If the latter describes your need, you just need to add a generic entry for this family, such as :

+    <model name='POWERPC_e6500'>
+      <vendor name='Freescale'/>
+      <pvr value='0x80400000'/>
+    </model>

Libvirt driver for ppc64 currently has support to fallback to a generic entry for a given model if the exact PVR isnt found.

Regards,

-- 
Prerna Saxena

Linux Technology Centre,
IBM Systems and Technology Lab,
Bangalore, India




More information about the libvir-list mailing list