Commit 1a8e0da5 authored by David S. Miller's avatar David S. Miller

sparc64: Only Panther cheetah+ chips have POPC.

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 0f43dd54
...@@ -440,8 +440,14 @@ static void __init init_sparc64_elf_hwcap(void) ...@@ -440,8 +440,14 @@ static void __init init_sparc64_elf_hwcap(void)
cap |= AV_SPARC_VIS; cap |= AV_SPARC_VIS;
if (tlb_type == cheetah || tlb_type == cheetah_plus) if (tlb_type == cheetah || tlb_type == cheetah_plus)
cap |= AV_SPARC_VIS | AV_SPARC_VIS2; cap |= AV_SPARC_VIS | AV_SPARC_VIS2;
if (tlb_type == cheetah_plus) if (tlb_type == cheetah_plus) {
unsigned long impl, ver;
__asm__ __volatile__("rdpr %%ver, %0" : "=r" (ver));
impl = ((ver >> 32) & 0xffff);
if (impl == PANTHER_IMPL)
cap |= AV_SPARC_POPC; cap |= AV_SPARC_POPC;
}
if (tlb_type == hypervisor) { if (tlb_type == hypervisor) {
if (sun4v_chip_type == SUN4V_CHIP_NIAGARA1) if (sun4v_chip_type == SUN4V_CHIP_NIAGARA1)
cap |= AV_SPARC_ASI_BLK_INIT; cap |= AV_SPARC_ASI_BLK_INIT;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment