<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/arch/mips/include/asm/dma-mapping.h, branch linux-7.0.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.0.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.0.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2023-02-15T11:35:20+00:00</updated>
<entry>
<title>dma-mapping: no need to pass a bus_type into get_arch_dma_ops()</title>
<updated>2023-02-15T11:35:20+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@linuxfoundation.org</email>
</author>
<published>2023-02-14T14:01:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ade1229caed9433921b69e20bd6fadf1bba9558e'/>
<id>urn:sha1:ade1229caed9433921b69e20bd6fadf1bba9558e</id>
<content type='text'>
The get_arch_dma_ops() arch-specific function never does anything with
the struct bus_type that is passed into it, so remove it entirely as it
is not needed.

Cc: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Cc: Ivan Kokshaysky &lt;ink@jurassic.park.msu.ru&gt;
Cc: Matt Turner &lt;mattst88@gmail.com&gt;
Cc: Thomas Bogendoerfer &lt;tsbogend@alpha.franken.de&gt;
Cc: "James E.J. Bottomley" &lt;James.Bottomley@HansenPartnership.com&gt;
Cc: Helge Deller &lt;deller@gmx.de&gt;
Cc: "David S. Miller" &lt;davem@davemloft.net&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: Borislav Petkov &lt;bp@alien8.de&gt;
Cc: Dave Hansen &lt;dave.hansen@linux.intel.com&gt;
Cc: x86@kernel.org
Cc: "H. Peter Anvin" &lt;hpa@zytor.com&gt;
Cc: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Cc: Robin Murphy &lt;robin.murphy@arm.com&gt;
Cc: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-ia64@vger.kernel.org
Cc: linux-mips@vger.kernel.org
Cc: linux-parisc@vger.kernel.org
Cc: sparclinux@vger.kernel.org
Cc: iommu@lists.linux.dev
Cc: linux-arch@vger.kernel.org
Acked-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Link: https://lore.kernel.org/r/20230214140121.131859-1-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>dma-mapping: add a kconfig symbol for arch_setup_dma_ops availability</title>
<updated>2019-02-13T18:12:33+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2019-01-07T18:36:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=347cb6af8710b72cf9685fdc09d07873cf42d51f'/>
<id>urn:sha1:347cb6af8710b72cf9685fdc09d07873cf42d51f</id>
<content type='text'>
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Paul Burton &lt;paul.burton@mips.com&gt; # MIPS
Acked-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt; # arm64
</content>
</entry>
<entry>
<title>dma-mapping: bypass indirect calls for dma-direct</title>
<updated>2018-12-13T20:06:18+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-12-06T21:39:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=356da6d0cde3323236977fce54c1f9612a742036'/>
<id>urn:sha1:356da6d0cde3323236977fce54c1f9612a742036</id>
<content type='text'>
Avoid expensive indirect calls in the fast path DMA mapping
operations by directly calling the dma_direct_* ops if we are using
the directly mapped DMA operations.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Tested-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Tested-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
</entry>
<entry>
<title>dma-direct: merge swiotlb_dma_ops into the dma_direct code</title>
<updated>2018-12-13T20:06:17+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-12-03T10:43:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=55897af63091ebc2c3f239c6a6666f748113ac50'/>
<id>urn:sha1:55897af63091ebc2c3f239c6a6666f748113ac50</id>
<content type='text'>
While the dma-direct code is (relatively) clean and simple we actually
have to use the swiotlb ops for the mapping on many architectures due
to devices with addressing limits.  Instead of keeping two
implementations around this commit allows the dma-direct
implementation to call the swiotlb bounce buffering functions and
thus share the guts of the mapping implementation.  This also
simplified the dma-mapping setup on a few architectures where we
don't have to differenciate which implementation to use.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Tested-by: Jesper Dangaard Brouer &lt;brouer@redhat.com&gt;
Tested-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
</entry>
<entry>
<title>dma-mapping: merge direct and noncoherent ops</title>
<updated>2018-09-20T07:01:15+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-09-08T09:22:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=bc3ec75de5452db59b683487867ba562b950708a'/>
<id>urn:sha1:bc3ec75de5452db59b683487867ba562b950708a</id>
<content type='text'>
All the cache maintainance is already stubbed out when not enabled,
but merging the two allows us to nicely handle the case where
cache maintainance is required for some devices, but not others.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Paul Burton &lt;paul.burton@mips.com&gt; # MIPS parts
</content>
</entry>
<entry>
<title>dma-mapping: move the dma_coherent flag to struct device</title>
<updated>2018-09-20T07:01:15+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-08-19T12:53:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f3ecc0ff0457eae93503792c6fc35921fa8a6204'/>
<id>urn:sha1:f3ecc0ff0457eae93503792c6fc35921fa8a6204</id>
<content type='text'>
Various architectures support both coherent and non-coherent dma on a
per-device basis.  Move the dma_noncoherent flag from the mips archdata
field to struct device proper to prepare the infrastructure for reuse on
other architectures.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Paul Burton &lt;paul.burton@mips.com&gt;
Acked-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>MIPS: remove mips_swiotlb_ops</title>
<updated>2018-07-27T22:19:59+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-07-27T17:26:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a999933db9ed44f8501e0241f7f1fbdf36554396'/>
<id>urn:sha1:a999933db9ed44f8501e0241f7f1fbdf36554396</id>
<content type='text'>
mips_swiotlb_ops differs from the generic swiotlb_dma_ops only in that
it contains a mb() barrier after each operations that maps or syncs
dma memory to the device.

The dma operations are defined to not be memory barriers, but instead
the write* operations to kick the DMA off are supposed to contain them.

For mips this handled by war_io_reorder_wmb(), which evaluates to the
stronger wmb() instead of the pure compiler barrier barrier() for
just those platforms that use swiotlb, so I think we are covered
properly.

[paul.burton@mips.com:
  - Include linux/swiotlb.h to fix build failures for configs with
    CONFIG_SWIOTLB=y.]

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Paul Burton &lt;paul.burton@mips.com&gt;
Patchwork: https://patchwork.linux-mips.org/patch/20038/
Cc: David Daney &lt;ddaney@caviumnetworks.com&gt;
Cc: Huacai Chen &lt;chenhc@lemote.com&gt;
Cc: linux-mips@linux-mips.org
Cc: iommu@lists.linux-foundation.org
Cc: linux-kernel@vger.kernel.org
</content>
</entry>
<entry>
<title>MIPS: remove unneeded includes from dma-mapping.h</title>
<updated>2018-06-24T16:27:27+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-06-15T11:08:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=803ad26eed4a5db07cc52e8dec387689cd007df4'/>
<id>urn:sha1:803ad26eed4a5db07cc52e8dec387689cd007df4</id>
<content type='text'>
Keep this file as light as possible as it gets pulled into every
driver using dma mapping APIs.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Patchwork: https://patchwork.linux-mips.org/patch/19552/
Signed-off-by: Paul Burton &lt;paul.burton@mips.com&gt;
Cc: Florian Fainelli &lt;f.fainelli@gmail.com&gt;
Cc: David Daney &lt;david.daney@cavium.com&gt;
Cc: Kevin Cernekee &lt;cernekee@gmail.com&gt;
Cc: Jiaxun Yang &lt;jiaxun.yang@flygoat.com&gt;
Cc: Tom Bogendoerfer &lt;tsbogend@alpha.franken.de&gt;
Cc: Huacai Chen &lt;chenhc@lemote.com&gt;
Cc: iommu@lists.linux-foundation.org
Cc: linux-mips@linux-mips.org
</content>
</entry>
<entry>
<title>MIPS: remove the old dma-default implementation</title>
<updated>2018-06-24T16:27:27+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-06-15T11:08:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=28f512d9cb48ec09288e4cc4475d022d1745b7bf'/>
<id>urn:sha1:28f512d9cb48ec09288e4cc4475d022d1745b7bf</id>
<content type='text'>
Now unused.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Patchwork: https://patchwork.linux-mips.org/patch/19551/
Signed-off-by: Paul Burton &lt;paul.burton@mips.com&gt;
Cc: Florian Fainelli &lt;f.fainelli@gmail.com&gt;
Cc: David Daney &lt;david.daney@cavium.com&gt;
Cc: Kevin Cernekee &lt;cernekee@gmail.com&gt;
Cc: Jiaxun Yang &lt;jiaxun.yang@flygoat.com&gt;
Cc: Tom Bogendoerfer &lt;tsbogend@alpha.franken.de&gt;
Cc: Huacai Chen &lt;chenhc@lemote.com&gt;
Cc: iommu@lists.linux-foundation.org
Cc: linux-mips@linux-mips.org
</content>
</entry>
<entry>
<title>MIPS: jazz: split dma mapping operations from dma-default</title>
<updated>2018-06-24T16:27:27+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2018-06-15T11:08:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c5e2bbb45d28d53d278f25068142a283a0a74f7a'/>
<id>urn:sha1:c5e2bbb45d28d53d278f25068142a283a0a74f7a</id>
<content type='text'>
Jazz actually has a very basic IOMMU, so split the ops into a separate
implementation from the generic default support (which is about to go
away anyway).

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Patchwork: https://patchwork.linux-mips.org/patch/19548/
Signed-off-by: Paul Burton &lt;paul.burton@mips.com&gt;
Cc: Florian Fainelli &lt;f.fainelli@gmail.com&gt;
Cc: David Daney &lt;david.daney@cavium.com&gt;
Cc: Kevin Cernekee &lt;cernekee@gmail.com&gt;
Cc: Jiaxun Yang &lt;jiaxun.yang@flygoat.com&gt;
Cc: Tom Bogendoerfer &lt;tsbogend@alpha.franken.de&gt;
Cc: Huacai Chen &lt;chenhc@lemote.com&gt;
Cc: iommu@lists.linux-foundation.org
Cc: linux-mips@linux-mips.org
</content>
</entry>
</feed>
