Hi Elliott,
On 24/10/2020 06:35, Elliott Mitchell wrote:
On Fri, Oct 23, 2020 at 04:59:30PM -0700, Stefano Stabellini wrote:
Note that I tried to repro the issue here at my end but it works for me
with device tree. So the swiotlb_init memory allocation failure probably
only shows on ACPI, maybe because ACPI is reserving too much low memory.
Found it. Take a look at 437b0aa06a014ce174e24c0d3530b3e9ab19b18b
PLATFORM_START(rpi4, "Raspberry Pi 4")
.compatible = rpi4_dt_compat,
.blacklist_dev = rpi4_blacklist_dev,
+ .dma_bitsize = 30,
PLATFORM_END
Where this is used to match against a *device-tree*.
Right. When we introduced ACPI in Xen, we made the assumption there
would be no need for per-platform workaround.
ACPI has a distinct
means of specifying a limited DMA-width; the above fails, because it
assumes a *device-tree*.
Do you know if it would be possible to infer from the ACPI static table
the DMA-width?
If not, is there a way to uniquely identify the platform?
Cheers,
--
Julien Grall