aboutsummaryrefslogtreecommitdiffstats
path: root/tools/arm64
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2024-12-12 17:06:17 +0100
committerAlexander Potapenko <glider@google.com>2024-12-13 09:15:00 +0000
commitb1b5e51af82983bdf6cd2c23eee2cb9a14e589ab (patch)
tree3a65001a5ee0123c85ca02909d658059dfa67938 /tools/arm64
parent647bf39da1e082c92585c97815db7fc28a668c8d (diff)
sys/linux: tools/arm64: more ARM64 register IDs for dev_kvm.txt
Declare register classes for Bitmap, FW, SVE registers. Also move generation of CCSIDR, FP and core registers from registers.go to the text description.
Diffstat (limited to 'tools/arm64')
-rw-r--r--tools/arm64/registers.go25
1 files changed, 1 insertions, 24 deletions
diff --git a/tools/arm64/registers.go b/tools/arm64/registers.go
index 357ada655..945208647 100644
--- a/tools/arm64/registers.go
+++ b/tools/arm64/registers.go
@@ -28,8 +28,8 @@ func main() {
}
fmt.Printf("# Register descriptions generated by tools/arm64/registers.go\n")
- printCoreRegs()
printSysRegIDs(input)
+ printCoreRegs()
fmt.Printf("# End of register descriptions generated by tools/arm64/registers.go\n")
}
@@ -147,14 +147,6 @@ const (
kvmRegArm64Sysreg int64 = (0x0013 << kvmRegArmCoprocShift)
kvmRegSizeU64 int64 = 0x0030000000000000
kvmRegArm64 int64 = 0x6000000000000000
- // Constants from https://docs.kernel.org/virt/kvm/api.html
- kvmFirstCoreReg int64 = 0x6030000000100000
- kvmLastCoreReg int64 = 0x6030000000100050
- kvmFirstFpVreg int64 = 0x6040000000100054
- kvmLastFpVreg int64 = 0x60400000001000d0
- kvmFirstCcsidrReg int64 = 0x6020000000110000
- // Got this one from KVM_GET_REG_LIST on QEMU.
- kvmLastCcsidrReg int64 = 0x602000000011000d
)
// Generate register ID from Op0, Op1, CRn, CRm, Op2.
@@ -171,9 +163,6 @@ func arm64KVMRegID(operands []int) int64 {
// Generate core register IDs.
// See https://docs.kernel.org/virt/kvm/api.html for more details.
func printCoreRegs() {
- printFromTo("kvm_regs_arm64_core = ", kvmFirstCoreReg, kvmLastCoreReg, 2)
- printFromTo("kvm_regs_arm64_fp = 0x60200000001000d4, 0x60200000001000d5, ", kvmFirstFpVreg, kvmLastFpVreg, 4)
- printFromTo("kvm_regs_arm64_ccsidr = ", kvmFirstCcsidrReg, kvmLastCcsidrReg, 1)
fmt.Printf("# Extra registers that KVM_GET_REG_LIST prints on QEMU\n")
// Some of these register IDs do not have corresponding registers, yet the kernel returns them.
// TODO(glider): figure out why this is happening.
@@ -185,15 +174,3 @@ func printCoreRegs() {
"0x6030000000140000, 0x6030000000140001, 0x6030000000140002, 0x6030000000140003, 0x6030000000160000, " +
"0x6030000000160001, 0x6030000000160002\n")
}
-
-func printFromTo(prefix string, from, to, step int64) {
- fmt.Print(prefix)
- for i := from; i <= to; i += step {
- fmt.Printf("0x%x", i)
- if i != to {
- fmt.Printf(", ")
- } else {
- fmt.Printf("\n")
- }
- }
-}