Re: [PATCH v2 2/2] PCI: dwc: add support for 64-bit MSI target address

From: Rob Herring
Date: Wed Aug 10 2022 - 17:30:31 EST


On Wed, Aug 10, 2022 at 06:35:35PM +0000, Will McVicker wrote:
> Since not all devices require a 32-bit MSI address, add support to the
> PCIe host driver to allow setting the DMA mask to 64-bits. This allows
> kernels to disable ZONE_DMA32 and bounce buffering (swiotlb) without
> risking not being able to get a 32-bit address during DMA allocation.
> Basically, in the slim chance that there are no 32-bit allocations
> available, the current PCIe host driver will fail to allocate the
> msi_msg page due to a DMA address overflow (seen in [1]). With this
> patch, the PCIe driver can advertise 64-bit support via it's MSI
> capabilities to hint to the PCIe host driver to set the DMA mask to
> 64-bits.
>
> [1] https://lore.kernel.org/all/Yo0soniFborDl7+C@xxxxxxxxxx/
>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Signed-off-by: Will McVicker <willmcvicker@xxxxxxxxxx>
> ---
> drivers/pci/controller/dwc/pcie-designware-host.c | 14 ++++++++++++--
> drivers/pci/controller/dwc/pcie-designware.c | 9 +++++++++
> drivers/pci/controller/dwc/pcie-designware.h | 1 +
> 3 files changed, 22 insertions(+), 2 deletions(-)

Reviewed-by: Rob Herring <robh@xxxxxxxxxx>