Hi, (moving the discussion to xen-devel as I think it is more appropriate)
On 24/06/2022 10:53, SK, SivaSangeetha (Siva Sangeetha) wrote:
[AMD Official Use Only - General]
Not clear what this means.
Hi Xen team, In TEE driver, We allocate a ring buffer, get its physical address from __pa() macro, pass the physical address to secure processor for mapping it and using in secure processor side. Source: https://elixir.bootlin.com/linux/latest/source/drivers/crypto/ccp/tee-dev.c#L132 This works good natively in Dom0 on the target. When we boot the same Dom0 kernel, with Xen hypervisor enabled, ring init fails.
Do you have any error message or error code?
We suspect that the address passed to secure processor, is not same when xen is enabled, and when xen is enabled, some level of address translation might be required to get exact physical address.
If you are using Xen upstream, Dom0 will be mapped with IPA == PA. So there should be no need for translation.
Can you provide more details on your setup (version of Xen, Linux...)? Cheers, -- Julien Grall