From b1b5e51af82983bdf6cd2c23eee2cb9a14e589ab Mon Sep 17 00:00:00 2001 From: Alexander Potapenko Date: Thu, 12 Dec 2024 17:06:17 +0100 Subject: 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. --- tools/arm64/registers.go | 25 +------------------------ 1 file changed, 1 insertion(+), 24 deletions(-) (limited to 'tools/arm64') 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") - } - } -} -- cgit mrf-deployment