<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/Documentation/core-api/dma-api.rst, branch linux-6.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-6.19.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-6.19.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2025-09-11T22:09:51Z</updated>
<entry>
<title>dma-debug: refactor to use physical addresses for page mapping</title>
<updated>2025-09-11T22:09:51Z</updated>
<author>
<name>Leon Romanovsky</name>
<email>leonro@nvidia.com</email>
</author>
<published>2025-09-09T13:27:31Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e9e81d86fee63c6d5757841ab557019ddf73786f'/>
<id>urn:sha1:e9e81d86fee63c6d5757841ab557019ddf73786f</id>
<content type='text'>
Convert the DMA debug infrastructure from page-based to physical address-based
mapping as a preparation to rely on physical address for DMA mapping routines.

The refactoring renames debug_dma_map_page() to debug_dma_map_phys() and
changes its signature to accept a phys_addr_t parameter instead of struct page
and offset. Similarly, debug_dma_unmap_page() becomes debug_dma_unmap_phys().
A new dma_debug_phy type is introduced to distinguish physical address mappings
from other debug entry types. All callers throughout the codebase are updated
to pass physical addresses directly, eliminating the need for page-to-physical
conversion in the debug layer.

This refactoring eliminates the need to convert between page pointers and
physical addresses in the debug layer, making the code more efficient and
consistent with the DMA mapping API's physical address focus.

Reviewed-by: Jason Gunthorpe &lt;jgg@nvidia.com&gt;
Signed-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;
[mszyprow: added a fixup]
Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Link: https://lore.kernel.org/r/56d1a6769b68dfcbf8b26a75a7329aeb8e3c3b6a.1757423202.git.leonro@nvidia.com
Link: https://lore.kernel.org/all/20250910052618.GH341237@unreal/
</content>
</entry>
<entry>
<title>docs: dma-api: clean up documentation of dma_map_sg()</title>
<updated>2025-07-01T19:56:05Z</updated>
<author>
<name>Petr Tesarik</name>
<email>ptesarik@suse.com</email>
</author>
<published>2025-06-27T10:10:15Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=f304c25980ae6d101faa62a9dcc1ddeed260bd38'/>
<id>urn:sha1:f304c25980ae6d101faa62a9dcc1ddeed260bd38</id>
<content type='text'>
Describe in one sentence what the function does.

Do not repeat example situations when the returned number is lower than
the number of segments on input.

Signed-off-by: Petr Tesarik &lt;ptesarik@suse.com&gt;
Reviewed-by: Bagas Sanjaya &lt;bagasdotme@gmail.com&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250627101015.1600042-9-ptesarik@suse.com
</content>
</entry>
<entry>
<title>docs: dma-api: update streaming DMA physical address constraints</title>
<updated>2025-07-01T19:56:05Z</updated>
<author>
<name>Petr Tesarik</name>
<email>ptesarik@suse.com</email>
</author>
<published>2025-06-27T10:10:14Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=0ebbc69ebccf7e47eb150e8d1046e62d00ad781a'/>
<id>urn:sha1:0ebbc69ebccf7e47eb150e8d1046e62d00ad781a</id>
<content type='text'>
Add an introductory paragraph to Part Id - Streaming DMA mappings and move
the explanation of address constraints there, because it applies to all map
functions.

Clarify that streaming DMA can be used with memory which does not meet the
addressing constraints of a device, but it may fail in that case.

Make a note about SWIOTLB and link to the detailed description of it.

Do not mention platform-dependent allocation flags. The note may mislead
device driver authors into thinking that they should poke into and try to
second-guess the DMA API implementation. They definitely shouldn't.

Remove the claim that platforms with an IOMMU may not require physically
contiguous buffers. The current implementation explicitly rejects vmalloc
addresses, regardless of IOMMU.

Signed-off-by: Petr Tesarik &lt;ptesarik@suse.com&gt;
Reviewed-by: Bagas Sanjaya &lt;bagasdotme@gmail.com&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250627101015.1600042-8-ptesarik@suse.com
</content>
</entry>
<entry>
<title>docs: dma-api: clarify DMA addressing limitations</title>
<updated>2025-07-01T19:56:05Z</updated>
<author>
<name>Petr Tesarik</name>
<email>ptesarik@suse.com</email>
</author>
<published>2025-06-27T10:10:13Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=faa7c7ebd8ac89faaedbea7dbe4491de14dbcfe1'/>
<id>urn:sha1:faa7c7ebd8ac89faaedbea7dbe4491de14dbcfe1</id>
<content type='text'>
Move the description of DMA mask from the documentation of dma_map_single()
to Part Ic - DMA addressing limitations and improve the wording.

Explain when a mask setting function may fail, and do not repeat this
explanation for each individual function.

Clarify which device parameters are updated by each mask setting function.

Signed-off-by: Petr Tesarik &lt;ptesarik@suse.com&gt;
Reviewed-by: Bagas Sanjaya &lt;bagasdotme@gmail.com&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250627101015.1600042-7-ptesarik@suse.com
</content>
</entry>
<entry>
<title>docs: dma-api: remove duplicate description of the DMA pool API</title>
<updated>2025-07-01T19:56:05Z</updated>
<author>
<name>Petr Tesarik</name>
<email>ptesarik@suse.com</email>
</author>
<published>2025-06-27T10:10:12Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=61043d0995eeb01950ff61555dee07be44c07bbd'/>
<id>urn:sha1:61043d0995eeb01950ff61555dee07be44c07bbd</id>
<content type='text'>
Move the DMA pool API documentation from Memory Management APIs to
dma-api.rst, replacing the outdated duplicate description there.

Signed-off-by: Petr Tesarik &lt;ptesarik@suse.com&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250627101015.1600042-6-ptesarik@suse.com
</content>
</entry>
<entry>
<title>docs: dma-api: remove remnants of PCI DMA API</title>
<updated>2025-07-01T19:25:36Z</updated>
<author>
<name>Petr Tesarik</name>
<email>ptesarik@suse.com</email>
</author>
<published>2025-06-27T10:10:10Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=6381b9d940a05642977c15cb776ad0569a502bea'/>
<id>urn:sha1:6381b9d940a05642977c15cb776ad0569a502bea</id>
<content type='text'>
The wording sometimes suggests there are multiple functions for an
operation. This was in fact the case before PCI DMA API was removed, but
since there is only one API now, the documentation has become confusing.

To improve readability:

* Remove implicit references to the PCI DMA API (plurals, use of "both",
  etc.)

* Where possible, refer to an actual function rather than a more generic
  description of the operation.

Signed-off-by: Petr Tesarik &lt;ptesarik@suse.com&gt;
Reviewed-by: Bagas Sanjaya &lt;bagasdotme@gmail.com&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250627101015.1600042-4-ptesarik@suse.com
</content>
</entry>
<entry>
<title>docs: dma-api: replace consistent with coherent</title>
<updated>2025-07-01T19:25:36Z</updated>
<author>
<name>Petr Tesarik</name>
<email>ptesarik@suse.com</email>
</author>
<published>2025-06-27T10:10:09Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=4d3c6bc11b057a8cf0e76f49d4f0d7184b0e32b6'/>
<id>urn:sha1:4d3c6bc11b057a8cf0e76f49d4f0d7184b0e32b6</id>
<content type='text'>
For consistency, always use the term "coherent" when talking about memory
that is not subject to CPU caching effects. The term "consistent" is a
relic of a long-removed PCI DMA API (pci_alloc_consistent() and
pci_free_consistent() functions).

Signed-off-by: Petr Tesarik &lt;ptesarik@suse.com&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250627101015.1600042-3-ptesarik@suse.com
</content>
</entry>
<entry>
<title>docs: dma-api: use "DMA API" consistently throughout the document</title>
<updated>2025-07-01T19:25:36Z</updated>
<author>
<name>Petr Tesarik</name>
<email>ptesarik@suse.com</email>
</author>
<published>2025-06-27T10:10:08Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=7362b6ba173a70e23dbf1ffb8cfa8057a63eb65b'/>
<id>urn:sha1:7362b6ba173a70e23dbf1ffb8cfa8057a63eb65b</id>
<content type='text'>
Make sure that all occurrences are spelled "DMA API" (all uppercase, no
hyphen, no underscore).

Signed-off-by: Petr Tesarik &lt;ptesarik@suse.com&gt;
Reviewed-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250627101015.1600042-2-ptesarik@suse.com
</content>
</entry>
<entry>
<title>doc: Include scatterlist APIs in htmldocs</title>
<updated>2025-06-09T20:24:29Z</updated>
<author>
<name>Matthew Wilcox (Oracle)</name>
<email>willy@infradead.org</email>
</author>
<published>2025-06-04T19:57:51Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=1598878875645e2546d1343977a8305eb58bfb23'/>
<id>urn:sha1:1598878875645e2546d1343977a8305eb58bfb23</id>
<content type='text'>
We have all this fine kernel-doc written, and it's not published
anywhere.  Expose it to public view.

Signed-off-by: Matthew Wilcox (Oracle) &lt;willy@infradead.org&gt;
Tested-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Acked-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
Link: https://lore.kernel.org/r/20250604195753.823742-1-willy@infradead.org
</content>
</entry>
<entry>
<title>docs: core-api: document the IOVA-based API</title>
<updated>2025-05-06T06:36:54Z</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2025-05-05T07:01:46Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=3ee7d9496342246f4353716f6bbf64c945ff6e2d'/>
<id>urn:sha1:3ee7d9496342246f4353716f6bbf64c945ff6e2d</id>
<content type='text'>
Add an explanation of the newly added IOVA-based mapping API.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Tested-by: Jens Axboe &lt;axboe@kernel.dk&gt;
Signed-off-by: Leon Romanovsky &lt;leonro@nvidia.com&gt;
Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
</content>
</entry>
</feed>
