aboutsummaryrefslogtreecommitdiff
path: root/include/hw/arm/smmuv3.h
diff options
context:
space:
mode:
authorMostafa Saleh <smostafa@google.com>2023-05-25 10:37:51 +0100
committerPeter Maydell <peter.maydell@linaro.org>2023-05-30 15:50:16 +0100
commit8cefcc3b7127f1c497aa832378fe69453fb9db2c (patch)
tree53941799023ca681b04d8dfa2d946ce00a400038 /include/hw/arm/smmuv3.h
parent32bd7baec2991bba1d801c348a74fc531dcae6f1 (diff)
hw/arm/smmuv3: Add knob to choose translation stage and enable stage-2
As everything is in place, we can use a new system property to advertise which stage is supported and remove bad_ste from STE stage2 config. The property added arm-smmuv3.stage can have 3 values: - "1": Stage-1 only is advertised. - "2": Stage-2 only is advertised. If not passed or an unsupported value is passed, it will default to stage-1. Advertise VMID16. Don't try to decode CD, if stage-2 is configured. Reviewed-by: Eric Auger <eric.auger@redhat.com> Signed-off-by: Mostafa Saleh <smostafa@google.com> Tested-by: Eric Auger <eric.auger@redhat.com> Tested-by: Jean-Philippe Brucker <jean-philippe@linaro.org> Message-id: 20230516203327.2051088-11-smostafa@google.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/hw/arm/smmuv3.h')
-rw-r--r--include/hw/arm/smmuv3.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/hw/arm/smmuv3.h b/include/hw/arm/smmuv3.h
index 6031d7d325..d183a62766 100644
--- a/include/hw/arm/smmuv3.h
+++ b/include/hw/arm/smmuv3.h
@@ -62,6 +62,7 @@ struct SMMUv3State {
qemu_irq irq[4];
QemuMutex mutex;
+ char *stage;
};
typedef enum {