On Fri, Sep 08, 2017 at 04:33:42PM +0200, Cédric Le Goater wrote: > On POWER9, the Client Architecture Support (CAS) negotiation process > determines whether the guest operates in XIVE Legacy compatibility or > in XIVE exploitation mode. Now that we have initial guest support for > the XIVE interrupt controller, let's fix the bits definition which have > evolved in the latest specs. > > The platform advertises the XIVE Exploitation Mode support using the > property "ibm,arch-vec-5-platform-support-vec-5", byte 23 bits 0-1 : > > - 0b00 XIVE legacy mode Only > - 0b01 XIVE exploitation mode Only > - 0b10 XIVE legacy or exploitation mode > > The OS asks for XIVE Exploitation Mode support using the property > "ibm,architecture-vec-5", byte 23 bits 0-1: > > - 0b00 XIVE legacy mode Only > - 0b01 XIVE exploitation mode Only > > Signed-off-by: Cédric Le Goater <[email protected]>
Applied to ppc-for-2.11, thanks.
> ---
> hw/ppc/spapr.c | 2 +-
> include/hw/ppc/spapr_ovec.h | 3 ++-
> 2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index cec441cbf48d..3e3ff1fbc988 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -914,7 +914,7 @@ static void spapr_dt_ov5_platform_support(void *fdt, int
> chosen)
> PowerPCCPU *first_ppc_cpu = POWERPC_CPU(first_cpu);
>
> char val[2 * 4] = {
> - 23, 0x00, /* Xive mode: 0 = legacy (as in ISA 2.7), 1 = Exploitation
> */
> + 23, 0x00, /* Xive mode, filled in below. */
> 24, 0x00, /* Hash/Radix, filled in below. */
> 25, 0x00, /* Hash options: Segment Tables == no, GTSE == no. */
> 26, 0x40, /* Radix options: GTSE == yes. */
> diff --git a/include/hw/ppc/spapr_ovec.h b/include/hw/ppc/spapr_ovec.h
> index 9edfa5ff7530..bf25e5d954a1 100644
> --- a/include/hw/ppc/spapr_ovec.h
> +++ b/include/hw/ppc/spapr_ovec.h
> @@ -51,7 +51,8 @@ typedef struct sPAPROptionVector sPAPROptionVector;
> #define OV5_FORM1_AFFINITY OV_BIT(5, 0)
> #define OV5_HP_EVT OV_BIT(6, 5)
> #define OV5_HPT_RESIZE OV_BIT(6, 7)
> -#define OV5_XIVE_EXPLOIT OV_BIT(23, 7)
> +#define OV5_XIVE_BOTH OV_BIT(23, 0)
> +#define OV5_XIVE_EXPLOIT OV_BIT(23, 1) /* 1=exploitation 0=legacy */
>
> /* ISA 3.00 MMU features: */
> #define OV5_MMU_BOTH OV_BIT(24, 0) /* Radix and hash */
--
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
signature.asc
Description: PGP signature
