>OK, so that's really just another variant of the existing problem we have with 
>certain PCI root complexes with restrictive inbound windows.
>The appropriate way to handle that is to reserve the unusable areas of the 
>IOVA space up-front.
> Since the support for the ACPI equivalent of "dma-ranges" has just landed, 
> this is now pretty much top of my to-do-list for
> the upcoming cycle (there's various things still to fix in the DT code, but 
> that's essentially part of the same job).

Reserving upfront would work. If you already have in it in to-do-list, we will 
wait for your patches.

>In the case of a 64-bit-capable IP block with only 34 bits of address wired up 
>externally, if that 34-bit interconnect is described by "dma-ranges"
> then the device will already be created with an appropriate 34-bit DMA mask. 
> The fact that the driver can stomp on that with a 64-bit mask later 
>is entirely down to the implementations of
>dma_set_mask() etc. (I've had a patch to restrict masks for arm64 for a while, 
>but I worry that it carries quite a high risk of breakage in default cases).

Exactly, It is the stomping issue. dma-ranges code updates the mask earlier 
than sdhci code. Sdhci code is overwriting the dma mask afterwards.

-KR

Reply via email to