<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/arch/arm/include/asm/dma-mapping.h, branch docs-fixes</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-fixes</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-fixes'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2022-07-07T16:18:57+00:00</updated>
<entry>
<title>ARM/dma-mapping: use dma-direct unconditionally</title>
<updated>2022-07-07T16:18:57+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2022-04-19T08:28:28+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=ae626eb97376148bb63c3f3ca9517fde0f39bec3'/>
<id>urn:sha1:ae626eb97376148bb63c3f3ca9517fde0f39bec3</id>
<content type='text'>
Use dma-direct unconditionally on arm.  It has already been used for
some time for LPAE and nommu configurations.

This mostly changes the streaming mapping implementation and the (simple)
coherent allocator for device that are DMA coherent.  The existing
complex allocator for uncached mappings for non-coherent devices is still
used as is using the arch_dma_alloc/arch_dma_free hooks.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Acked-by: Andre Przywara &lt;andre.przywara@arm.com&gt; [highbank]
Tested-by: Marc Zyngier &lt;maz@kernel.org&gt;
</content>
</entry>
<entry>
<title>ARM/dma-mapping: mark various dma-mapping routines static in dma-mapping.c</title>
<updated>2022-07-07T16:18:56+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2022-04-19T07:40:17+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=5ed390e5a9d4d84f220e012ee20ae97fc254a9d9'/>
<id>urn:sha1:5ed390e5a9d4d84f220e012ee20ae97fc254a9d9</id>
<content type='text'>
With the dmabounce removal these aren't used outside of dma-mapping.c,
so mark them static.  Move the dma_map_ops declarations down a bit
to avoid lots of forward declarations.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Tested-by: Marc Zyngier &lt;maz@kernel.org&gt;
</content>
</entry>
<entry>
<title>ARM/dma-mapping: remove dmabounce</title>
<updated>2022-07-07T16:18:56+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2022-04-19T07:35:29+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=e3217540c2710f42a2388fe7896f0f28695c00b2'/>
<id>urn:sha1:e3217540c2710f42a2388fe7896f0f28695c00b2</id>
<content type='text'>
Remove the now unused dmabounce code.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>dma-mapping: move dma-debug.h to kernel/dma/</title>
<updated>2020-10-06T05:07:05+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2020-09-11T08:12:44+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=a1fd09e8e6ae35228ecc7c1e4bfff1fd725f78a0'/>
<id>urn:sha1:a1fd09e8e6ae35228ecc7c1e4bfff1fd725f78a0</id>
<content type='text'>
Most of dma-debug.h is not required by anything outside of kernel/dma.
Move the four declarations needed by dma-mappin.h or dma-ops providers
into dma-mapping.h and dma-map-ops.h, and move the remainder of the
file to kernel/dma/debug.h.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
</entry>
<entry>
<title>ARM/dma-mapping: move various helpers from dma-mapping.h to dma-direct.h</title>
<updated>2020-09-17T16:43:24+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2020-09-14T06:37:11+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=3799e402a4f0d69690e0838c4a68cab26d06283a'/>
<id>urn:sha1:3799e402a4f0d69690e0838c4a68cab26d06283a</id>
<content type='text'>
Move the helpers to translate to and from direct mapping DMA addresses
to dma-direct.h.  This not only is the most logical place, but the new
placement also avoids dependency loops with pending commits.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Robin Murphy &lt;robin.murphy@arm.com&gt;
</content>
</entry>
<entry>
<title>ARM/dma-mapping: remove dma_to_virt</title>
<updated>2020-09-17T16:43:24+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2020-09-08T07:02:56+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=002a26fb55282f7832e132d046d22e2c55f47103'/>
<id>urn:sha1:002a26fb55282f7832e132d046d22e2c55f47103</id>
<content type='text'>
dma_to_virt is entirely unused, remove it.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
</entry>
<entry>
<title>ARM/dma-mapping: remove a __arch_page_to_dma #error</title>
<updated>2020-09-17T16:43:24+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2020-09-11T06:26:37+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=f982438e82bbecb32200d5f22f405ec64f1fdd1b'/>
<id>urn:sha1:f982438e82bbecb32200d5f22f405ec64f1fdd1b</id>
<content type='text'>
The __arch_page_to_dma hook is long gone.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
</entry>
<entry>
<title>xen/arm: use dev_is_dma_coherent</title>
<updated>2019-09-11T10:43:26+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2019-07-24T12:06:54+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=a8e6d950cdc1012aede8a84d85f902a53d895174'/>
<id>urn:sha1:a8e6d950cdc1012aede8a84d85f902a53d895174</id>
<content type='text'>
Use the dma-noncoherent dev_is_dma_coherent helper instead of the home
grown variant.  Note that both are always initialized to the same
value in arch_setup_dma_ops.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Julien Grall &lt;julien.grall@arm.com&gt;
Reviewed-by: Stefano Stabellini &lt;sstabellini@kernel.org&gt;
</content>
</entry>
<entry>
<title>arm: use swiotlb for bounce buffering on LPAE configs</title>
<updated>2019-07-24T15:29:01+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2019-07-23T09:33:12+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=ad3c7b18c5b362be5dbd0f2c0bcf1fd5fd659315'/>
<id>urn:sha1:ad3c7b18c5b362be5dbd0f2c0bcf1fd5fd659315</id>
<content type='text'>
The DMA API requires that 32-bit DMA masks are always supported, but on
arm LPAE configs they do not currently work when memory is present
above 4GB.  Wire up the swiotlb code like for all other architectures
to provide the bounce buffering in that case.

Fixes: 21e07dba9fb11 ("scsi: reduce use of block bounce buffers").
Reported-by: Roger Quadros &lt;rogerq@ti.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Tested-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
</content>
</entry>
<entry>
<title>dma-mapping: remove dma_max_pfn</title>
<updated>2019-07-10T11:17:30+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2019-06-25T09:20:42+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=79a986721decf428ba539e6e2c941c987acce655'/>
<id>urn:sha1:79a986721decf428ba539e6e2c941c987acce655</id>
<content type='text'>
These days, the DMA mapping code must bounce buffers for any unsupported
address. If the driver needs to optimize for natively supported ranges,
then it should use dma_get_required_mask.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Marc Gonzalez &lt;marc.w.gonzalez@free.fr&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
</feed>
