aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2024-11-18 17:43:15 +0100
committerAlexander Potapenko <glider@google.com>2024-11-26 11:12:47 +0000
commitae34cc2c773d3522e98ab8f038e2e5875fb9dac4 (patch)
tree53945cae6c70ebef4b7a13d18d86000150a4f0f4 /sys/linux
parent9bdaf972babf584d7e80befbcd4d223c8e645087 (diff)
sys/linux/dev_kvm.txt: support SYZOS_API_ITS_SEND_CMD
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/dev_kvm.txt28
-rw-r--r--sys/linux/dev_kvm.txt.const12
2 files changed, 40 insertions, 0 deletions
diff --git a/sys/linux/dev_kvm.txt b/sys/linux/dev_kvm.txt
index 7a6cd3542..def833602 100644
--- a/sys/linux/dev_kvm.txt
+++ b/sys/linux/dev_kvm.txt
@@ -375,6 +375,33 @@ syzos_api_its_setup {
nr_ints int64[0:1024]
}
+# Definitions from <linux/irqchip/arm-gic-v3.h>
+
+define GITS_CMD_MAPD 0x08
+define GITS_CMD_MAPC 0x09
+define GITS_CMD_MAPTI 0x0a
+define GITS_CMD_MAPI 0x0b
+define GITS_CMD_MOVI 0x01
+define GITS_CMD_DISCARD 0x0f
+define GITS_CMD_INV 0x0c
+define GITS_CMD_MOVALL 0x0e
+define GITS_CMD_INVALL 0x0d
+define GITS_CMD_INT 0x03
+define GITS_CMD_CLEAR 0x04
+define GITS_CMD_SYNC 0x05
+
+gits_commands = GITS_CMD_MAPD, GITS_CMD_MAPC, GITS_CMD_MAPTI, GITS_CMD_MAPI, GITS_CMD_MOVI, GITS_CMD_DISCARD, GITS_CMD_INV, GITS_CMD_MOVALL, GITS_CMD_INVALL, GITS_CMD_INT, GITS_CMD_CLEAR, GITS_CMD_SYNC
+
+syzos_api_its_send_cmd {
+ type flags[gits_commands, int8]
+ valid int8[0:1]
+ cpuid int32[0:4]
+ devid int32[0:16]
+ eventid int32
+ intid int32
+ cpuid2 int32[0:4]
+} [packed]
+
# Definitions from include/linux/irqchip/arm-gic-v3.h
define GICD_CTLR 0x0000
define GICD_TYPER 0x0004
@@ -475,6 +502,7 @@ syzos_api_call [
irq_setup syzos_api[5, syzos_api_irq_setup]
memwrite syzos_api[6, syzos_api_memwrite]
its_setup syzos_api[7, syzos_api_its_setup]
+ its_send_cmd syzos_api[8, syzos_api_its_send_cmd]
] [varlen]
kvm_text_ppc64 {
diff --git a/sys/linux/dev_kvm.txt.const b/sys/linux/dev_kvm.txt.const
index 92fa15fe2..1b6ad1af2 100644
--- a/sys/linux/dev_kvm.txt.const
+++ b/sys/linux/dev_kvm.txt.const
@@ -79,6 +79,18 @@ GICR_STATUSR = 16
GICR_SYNCR = 192
GICR_TYPER = 8
GICR_WAKER = 20
+GITS_CMD_CLEAR = 4
+GITS_CMD_DISCARD = 15
+GITS_CMD_INT = 3
+GITS_CMD_INV = 12
+GITS_CMD_INVALL = 13
+GITS_CMD_MAPC = 9
+GITS_CMD_MAPD = 8
+GITS_CMD_MAPI = 11
+GITS_CMD_MAPTI = 10
+GITS_CMD_MOVALL = 14
+GITS_CMD_MOVI = 1
+GITS_CMD_SYNC = 5
KVM_ARM_PREFERRED_TARGET = 386:amd64:mips64le:ppc64le:s390x:???, arm64:2149625519
KVM_ARM_SET_COUNTER_OFFSET = 386:amd64:mips64le:ppc64le:s390x:???, arm64:1074835125
KVM_ARM_SET_DEVICE_ADDR = 1074835115, mips64le:ppc64le:2148576939