diff options
author | Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> | 2014-11-02 20:02:42 +0530 |
---|---|---|
committer | Sasha Levin <sasha.levin@oracle.com> | 2016-05-08 21:21:51 -0400 |
commit | ee3bc5355937261e5487c572741cf0e0f0003b64 (patch) | |
tree | 53fe6f4e6b71235e920b909baa7eac88a8c5d47e /arch/powerpc | |
parent | 1e53b1951e8a48266144d3a79a6a03950111b717 (diff) | |
download | lwn-ee3bc5355937261e5487c572741cf0e0f0003b64.tar.gz lwn-ee3bc5355937261e5487c572741cf0e0f0003b64.zip |
powerpc: Disable CPU_FTR_TM if TM is disabled by firmware
[ Upstream commit 9e819963b45f79e87f5a8c44960a66c0727c80e6 ]
Firmware is allowed to communicate to us via the "ibm,pa-features" property
that TM (Transactional Memory) support is disabled.
Currently this doesn't happen on any platform we're aware of, but we should
honor it anyway.
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kernel/prom.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c index 099f27e6d1b0..2a95c6076fa3 100644 --- a/arch/powerpc/kernel/prom.c +++ b/arch/powerpc/kernel/prom.c @@ -160,6 +160,12 @@ static struct ibm_pa_feature { {CPU_FTR_NODSISRALIGN, 0, 0, 1, 1, 1}, {0, MMU_FTR_CI_LARGE_PAGE, 0, 1, 2, 0}, {CPU_FTR_REAL_LE, PPC_FEATURE_TRUE_LE, 5, 0, 0}, + /* + * If the kernel doesn't support TM (ie. CONFIG_PPC_TRANSACTIONAL_MEM=n), + * we don't want to turn on CPU_FTR_TM here, so we use CPU_FTR_TM_COMP + * which is 0 if the kernel doesn't support TM. + */ + {CPU_FTR_TM_COMP, 0, 0, 22, 0, 0}, }; static void __init scan_features(unsigned long node, const unsigned char *ftrs, |