Code refactoring for bpa operator
[icn.git] / cmd / bpa-operator / vendor / golang.org / x / sys / cpu / cpu_linux_ppc64x.go
1 // Copyright 2018 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
4
5 // +build linux
6 // +build ppc64 ppc64le
7
8 package cpu
9
10 const cacheLineSize = 128
11
12 // HWCAP/HWCAP2 bits. These are exposed by the kernel.
13 const (
14         // ISA Level
15         _PPC_FEATURE2_ARCH_2_07 = 0x80000000
16         _PPC_FEATURE2_ARCH_3_00 = 0x00800000
17
18         // CPU features
19         _PPC_FEATURE2_DARN = 0x00200000
20         _PPC_FEATURE2_SCV  = 0x00100000
21 )
22
23 func doinit() {
24         // HWCAP2 feature bits
25         PPC64.IsPOWER8 = isSet(hwCap2, _PPC_FEATURE2_ARCH_2_07)
26         PPC64.IsPOWER9 = isSet(hwCap2, _PPC_FEATURE2_ARCH_3_00)
27         PPC64.HasDARN = isSet(hwCap2, _PPC_FEATURE2_DARN)
28         PPC64.HasSCV = isSet(hwCap2, _PPC_FEATURE2_SCV)
29 }
30
31 func isSet(hwc uint, value uint) bool {
32         return hwc&value != 0
33 }