[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH 02/16] hw/arm/smmuv3: Update translation config to hold stage
From: |
Mostafa Saleh |
Subject: |
[RFC PATCH 02/16] hw/arm/smmuv3: Update translation config to hold stage-2 |
Date: |
Sun, 5 Feb 2023 09:43:57 +0000 |
In preparation for adding stage-2 support. Add it's configuration.
They are added as SMMUS2Cfg in SMMUTransCfg, SMMUS2Cfg hold configs
parsed from STE:
-tsz: Input range
-sl0: start level of translation
-affd: AF fault disable
-granule_sz: Granule page shift
-vmid: VMID
-vttb: PA of translation table
They will be used in the next patches in stage-2 address translation.
No functional change intended.
Signed-off-by: Mostafa Saleh <smostafa@google.com>
---
include/hw/arm/smmu-common.h | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/include/hw/arm/smmu-common.h b/include/hw/arm/smmu-common.h
index c5683af07d..45f74d0e93 100644
--- a/include/hw/arm/smmu-common.h
+++ b/include/hw/arm/smmu-common.h
@@ -60,6 +60,16 @@ typedef struct SMMUTLBEntry {
uint8_t granule;
} SMMUTLBEntry;
+typedef struct SMMUS2Cfg {
+ uint8_t tsz; /* Input range */
+ uint8_t sl0; /* Start level of translation */
+ bool affd; /* AF Fault Disable */
+ uint8_t granule_sz; /* Granule page shift */
+ uint16_t vmid; /* Virtual machine ID */
+ uint64_t vttb; /* PA of translation table */
+} SMMUS2Cfg;
+
+
/*
* Generic structure populated by derived SMMU devices
* after decoding the configuration information and used as
@@ -79,6 +89,7 @@ typedef struct SMMUTransCfg {
SMMUTransTableInfo tt[2];
uint32_t iotlb_hits; /* counts IOTLB hits for this asid */
uint32_t iotlb_misses; /* counts IOTLB misses for this asid */
+ struct SMMUS2Cfg s2cfg;
} SMMUTransCfg;
typedef struct SMMUDevice {
--
2.39.1.519.gcb327c4b5f-goog