]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/64s: Set reserved PCR bits
authorJordan Niethe <jniethe5@gmail.com>
Tue, 17 Sep 2019 00:46:05 +0000 (10:46 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Fri, 20 Sep 2019 22:36:53 +0000 (08:36 +1000)
commitdfb8aba6bfa1ba7e94312f938c2bb39e4a13548a
treeb1f09704685bd96151bf3f6882100d5ef0112069
parentbe801d6a2ae8444c0c80f31f84e3090e4ad1b91c
powerpc/64s: Set reserved PCR bits

Currently the reserved bits of the Processor Compatibility
Register (PCR) are cleared as per the Programming Note in Section
1.3.3 of version 3.0B of the Power ISA. This causes all new
architecture features to be made available when running on newer
processors with new architecture features added to the PCR as bits
must be set to disable a given feature.

For example to disable new features added as part of Version 2.07 of
the ISA the corresponding bit in the PCR needs to be set.

As new processor features generally require explicit kernel support
they should be disabled until such support is implemented. Therefore
kernels should set all unknown/reserved bits in the PCR such that any
new architecture features which the kernel does not currently know
about get disabled.

An update is planned to the ISA to clarify that the PCR is an
exception to the Programming Note on reserved bits in Section 1.3.3.

Signed-off-by: Alistair Popple <alistair@popple.id.au>
Signed-off-by: Jordan Niethe <jniethe5@gmail.com>
Tested-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20190917004605.22471-2-alistair@popple.id.au
arch/powerpc/include/asm/reg.h
arch/powerpc/kernel/cpu_setup_power.S
arch/powerpc/kernel/dt_cpu_ftrs.c
arch/powerpc/kvm/book3s_hv.c
arch/powerpc/kvm/book3s_hv_nested.c
arch/powerpc/kvm/book3s_hv_rmhandlers.S