[RFC Linux patch] powerpc: add documentation for HWCAPs
Paul E Murphy
murphyp at linux.ibm.com
Sat May 21 00:21:43 AEST 2022
On 5/20/22 12:15 AM, Nicholas Piggin via Gcc wrote:
> This takes the arm64 file and adjusts it for powerpc. Feature
> descriptions are vaguely handwaved by me.
> ---
>
> Anybody care to expand on or correct the meaning of these entries or
> bikeshed the wording of the intro? Many of them are no longer used
> anywhere by upstream kernels and even where they are it's not always
> quite clear what the exact intent was, a lot of them are old history
> and I don't know what or where they are used.
>
> I may try to get these descriptions pushed into the ABI doc after a
> time, but for now they can live in the kernel tree.
>
> Thanks,
> Nick
Thanks, this is really helpful. I've been caught off-guard by some of
the subtleties in the meanings of these bits at times. I think it would
be helpful to share what is implied by the usage of the word "facility"
below. It would resolve some of my questions below.
> +PPC_FEATURE_HAS_ALTIVEC
> + Vector (aka Altivec, VSX) facility is available.
I think "(aka Altivec, VSX)" might be more accurately stated as "(aka
Altivec)"?
> +PPC_FEATURE_HAS_DFP
> + DFP facility is available.
Maybe something like "Decimal floating point instructions are available
to userspace. Individual instruction availability is dependent on the
reported architecture version."?
> +PPC_FEATURE_HAS_VSX
> + VSX facility is available.
A small reminder the features are also dependent on architecture version
too might be helpful here too.
> +PPC_FEATURE2_TAR
> + VSX facility is available.
Was manipulating the tar spr was once a privileged instruction, is this
a hint userspace can use the related instructions?
> +
> +PPC_FEATURE2_HAS_IEEE128
> + IEEE 128 is available? What instructions/data?
Maybe something like "IEEE 128 binary floating point instructions are
supported. Individual instruction availability is dependent on the
reported architecture version."?
> +PPC_FEATURE2_SCV
> + scv instruction is available.
I think it might be clearer to say "This kernel supports syscalls using
the scv instruction".
> +PPC_FEATURE2_MMA
> + MMA facility is available.
Maybe another note that specific instruction availability may depend on
the reported architecture version?
More information about the Linuxppc-dev
mailing list