On 25.09.20 09:19, Jan Kiszka wrote:
On 22.09.20 08:45, Alice Guo wrote:
+ .platform_info = {
+ /*
+ * .pci_mmconfig_base is fixed; if you change it,
+ * update the value in mach.h
+ * (PCI_CFG_BASE) and regenerate the inmate library
+ */
+ .pci_mmconfig_base = 0xfd700000,
+ .pci_mmconfig_end_bus = 0x0,
+ .pci_is_virtual = 1,
+ .pci_domain = 0,
+
+ .iommu_units = {
+ {
+ .type = JAILHOUSE_IOMMU_ARM_MMU500,
+ .base = 0x51400000,
+ .size = 0x40000,
+ .arm_mmu500.sid_mask = 0x7f80,
How is the sid_mask of a platform retrieved? Can this be derived from
information in a normal device tree?
Or is this coming from here:
/* ID0 */
id = arm_smmu_gr0_read(smmu, ARM_SMMU_GR0_ID0);
[...]
/* Max. number of entries we have for stream matching/indexing */
if (smmu->version == ARM_SMMU_V2 && id & ARM_SMMU_ID0_EXIDS) {
smmu->features |= ARM_SMMU_FEAT_EXIDS;
size = 1 << 16;
} else {
size = 1 << FIELD_GET(ARM_SMMU_ID0_NUMSIDB, id);
}
smmu->streamid_mask = size - 1;
If it were so simple, I would actually say do the same in Jailhouse and
drop the configurable. We may even demand ARM_SMMU_ID0_EXIDS if that is
practically the only case in the field by now.
This was non-sense.
But I'm lacking a full picture yet.
Seems to be the DT property stream-match-mask. And that's unset for the
zynqmp, so let's see how far I'll get with that.
Jan
--
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux
--
You received this message because you are subscribed to the Google Groups
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to jailhouse-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/jailhouse-dev/e566d2fb-c942-ec6a-829f-0ac22b3c5ca1%40siemens.com.