Messages in this thread | | | Subject | Re: [PATCH 4/5] dma-mapping: add a dma_ops_bypass flag to struct device | From | Alexey Kardashevskiy <> | Date | Mon, 13 Jul 2020 14:59:39 +1000 |
| |
On 09/07/2020 01:24, Christoph Hellwig wrote: > Several IOMMU drivers have a bypass mode where they can use a direct > mapping if the devices DMA mask is large enough. Add generic support > to the core dma-mapping code to do that to switch those drivers to > a common solution. > > Signed-off-by: Christoph Hellwig <hch@lst.de> > --- > include/linux/device.h | 8 +++++ > kernel/dma/Kconfig | 8 +++++ > kernel/dma/mapping.c | 74 +++++++++++++++++++++++++++++------------- > 3 files changed, 68 insertions(+), 22 deletions(-) > > diff --git a/include/linux/device.h b/include/linux/device.h > index 4c4af98321ebd6..1f71acf37f78d7 100644 > --- a/include/linux/device.h > +++ b/include/linux/device.h > @@ -523,6 +523,11 @@ struct dev_links_info { > * sync_state() callback. > * @dma_coherent: this particular device is dma coherent, even if the > * architecture supports non-coherent devices. > + * @dma_ops_bypass: If set to %true then the dma_ops are bypassed for the > + * streaming DMA operations (->map_* / ->unmap_* / ->sync_*), > + * and optionall (if the coherent mask is large enough) also
s/optionall/optional/g
Otherwise the series looks good and works well on powernv and pseries. Thanks,
-- Alexey
| |