Will Deacon
2015-11-04 14:43:08 UTC
Hi Will,
Hello,I am trying to enable SMMU(mmu500) on an platform.
My platform support only 32 SIDs, but it have more than 100 masters.
So I need to let different masters share one SID. I read current
arm-smmu.c, but it needs each master has unique SID. Do you have
some suggestions about how to let different masters sharing one
SID?
We can achieve that using iommu_groups, but then we need a way toMy platform support only 32 SIDs, but it have more than 100 masters.
So I need to let different masters share one SID. I read current
arm-smmu.c, but it needs each master has unique SID. Do you have
some suggestions about how to let different masters sharing one
SID?
describe those groups in the device-tree, as opposed to putting
each device into its own group like we do at present. Robin (CC'd) had
some work-in-progress for this, iirc.
On my platform, SID can be dynamically programmed. So I can program
DMA0 and DMA1 using one SID, saying 0x5. But I do not have a good
idea how to support this use case in arm-smmu.c driver.
I think we've have the firmware allocating the SIDs, then describingDMA0 and DMA1 using one SID, saying 0x5. But I do not have a good
idea how to support this use case in arm-smmu.c driver.
the grouping to Linux in the device-tree.
Will