]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/powernv/pci: Return failure for some uses of dma_set_mask()
authorAlistair Popple <alistair@popple.id.au>
Wed, 26 Jul 2017 05:26:40 +0000 (15:26 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Fri, 28 Jul 2017 13:02:55 +0000 (23:02 +1000)
commit13cee2c1500663930b09616ae5e0f1f9ce0b6ceb
tree7165717bcfc44642ddf21a3fd5afa7877fb59840
parent4202c4e8d786c76b2e938dd742a37f4012fadabf
powerpc/powernv/pci: Return failure for some uses of dma_set_mask()

Commit e46032cf9ccf ("powerpc/powernv/pci: Enable 64-bit devices to access
>4GB DMA space") introduced the ability for PCI device drivers to request a
DMA mask between 64 and 32 bits and actually get a mask greater than
32-bits. However currently if certain machine configuration dependent
conditions are not meet the code silently falls back to a 32-bit mask.

This makes it hard for device drivers to detect which mask they actually
got. Instead we should return an error when the request could not be
fulfilled which allows drivers to either fallback or implement other
workarounds as documented in DMA-API-HOWTO.txt.

Signed-off-by: Alistair Popple <alistair@popple.id.au>
Acked-by: Russell Currey <ruscur@russell.cc>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/platforms/powernv/pci-ioda.c