Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
sparc64: Only Panther cheetah+ chips have POPC.

+8 -2
+8 -2
arch/sparc/kernel/setup_64.c
··· 440 440 cap |= AV_SPARC_VIS; 441 441 if (tlb_type == cheetah || tlb_type == cheetah_plus) 442 442 cap |= AV_SPARC_VIS | AV_SPARC_VIS2; 443 - if (tlb_type == cheetah_plus) 444 - cap |= AV_SPARC_POPC; 443 + if (tlb_type == cheetah_plus) { 444 + unsigned long impl, ver; 445 + 446 + __asm__ __volatile__("rdpr %%ver, %0" : "=r" (ver)); 447 + impl = ((ver >> 32) & 0xffff); 448 + if (impl == PANTHER_IMPL) 449 + cap |= AV_SPARC_POPC; 450 + } 445 451 if (tlb_type == hypervisor) { 446 452 if (sun4v_chip_type == SUN4V_CHIP_NIAGARA1) 447 453 cap |= AV_SPARC_ASI_BLK_INIT;