qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* A question about the translation granule size supported by the vSMMU
@ 2021-03-27  2:24 Kunkun Jiang
  2021-04-06 19:50 ` Auger Eric
  0 siblings, 1 reply; 5+ messages in thread
From: Kunkun Jiang @ 2021-03-27  2:24 UTC (permalink / raw)
  To: Eric Auger, Prem Mallappa, Peter Maydell, linuc.decode
  Cc: Zenghui Yu, wanghaibin.wang, open list:ARM SMMU, Keqian Zhu,
	open list:All patches CC here

Hi all,

Recently, I did some tests on SMMU nested mode. Here is
a question about the translation granule size supported by
vSMMU.

There is such a code in SMMUv3_init_regs():

>    /* 4K and 64K granule support */
>     s->idr[5] = FIELD_DP32(s->idr[5], IDR5, GRAN4K, 1);
>     s->idr[5] = FIELD_DP32(s->idr[5], IDR5, GRAN64K, 1);
>     s->idr[5] = FIELD_DP32(s->idr[5], IDR5, OAS, SMMU_IDR5_OAS); /* 44 
> bits */
Why is the 16K granule not supported? I modified the code
to support it and did not encounter any problems in the
test. Although 4K and 64K minimal granules are "strongly
recommended", I think vSMMU should still support 16K.😉
Are there other reasons why 16K is not supported here?

When in SMMU nested mode, it may get errors if pSMMU
doesn't support 16K but vSMMU supports 16K. But we
can get some settings of pSMMU to avoid this situation.
I found some discussions between Eric and Linu about
this [1], but this idea does not seem to be implemented.

[1] https://lists.gnu.org/archive/html/qemu-arm/2017-09/msg00149.html

Best regards,
Kunkun Jiang



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-04-09  8:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-27  2:24 A question about the translation granule size supported by the vSMMU Kunkun Jiang
2021-04-06 19:50 ` Auger Eric
2021-04-07  9:26   ` Kunkun Jiang
2021-04-08  7:27     ` Auger Eric
2021-04-09  8:10       ` Kunkun Jiang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).