On Thu, 2018-01-18 at 12:27 +1100, Paul Mackerras wrote:
> > You need to check that it's a Nimbus using the top nimble of the bottom
> > 16 bits of PVR. For Cumulus, the fixes are either in 1.0 or 1.1 (to
> > check).
> 
> OK, how about this for the check:
> 
>         if (cpu_has_feature(CPU_FTR_ARCH_300)) {
>                 unsigned int pvr = mfspr(SPRN_PVR);
>                 if ((pvr >> 16) == PVR_POWER9 &&
>                     (((pvr & 0xe000) == 0 && (pvr & 0xfff) < 0x202) ||
>                      ((pvr & 0xe000) == 0x2000 && (pvr & 0xfff) < 0x101)))
>                         no_mixing_hpt_and_radix = true;
>         }
> 
> Paul.

Looks good.

Cheers,
Ben.

Reply via email to