docs: fix references for DMA*.txt files
As we moved those files to core-api, fix references to point to their newer locations. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Link: https://lore.kernel.org/r/37b2fd159fbc7655dbf33b3eb1215396a25f6344.1592895969.git.mchehab+huawei@kernel.org Signed-off-by: Jonathan Corbet <corbet@lwn.net>
This commit is contained in:
Родитель
bbea2aa335
Коммит
985098a05e
|
@ -265,7 +265,7 @@ Set the DMA mask size
|
||||||
---------------------
|
---------------------
|
||||||
.. note::
|
.. note::
|
||||||
If anything below doesn't make sense, please refer to
|
If anything below doesn't make sense, please refer to
|
||||||
Documentation/DMA-API.txt. This section is just a reminder that
|
:doc:`/core-api/dma-api`. This section is just a reminder that
|
||||||
drivers need to indicate DMA capabilities of the device and is not
|
drivers need to indicate DMA capabilities of the device and is not
|
||||||
an authoritative source for DMA interfaces.
|
an authoritative source for DMA interfaces.
|
||||||
|
|
||||||
|
@ -291,7 +291,7 @@ Many 64-bit "PCI" devices (before PCI-X) and some PCI-X devices are
|
||||||
Setup shared control data
|
Setup shared control data
|
||||||
-------------------------
|
-------------------------
|
||||||
Once the DMA masks are set, the driver can allocate "consistent" (a.k.a. shared)
|
Once the DMA masks are set, the driver can allocate "consistent" (a.k.a. shared)
|
||||||
memory. See Documentation/DMA-API.txt for a full description of
|
memory. See :doc:`/core-api/dma-api` for a full description of
|
||||||
the DMA APIs. This section is just a reminder that it needs to be done
|
the DMA APIs. This section is just a reminder that it needs to be done
|
||||||
before enabling DMA on the device.
|
before enabling DMA on the device.
|
||||||
|
|
||||||
|
@ -421,7 +421,7 @@ owners if there is one.
|
||||||
|
|
||||||
Then clean up "consistent" buffers which contain the control data.
|
Then clean up "consistent" buffers which contain the control data.
|
||||||
|
|
||||||
See Documentation/DMA-API.txt for details on unmapping interfaces.
|
See :doc:`/core-api/dma-api` for details on unmapping interfaces.
|
||||||
|
|
||||||
|
|
||||||
Unregister from other subsystems
|
Unregister from other subsystems
|
||||||
|
|
|
@ -196,7 +196,7 @@ a virtual address mapping (unlike the earlier scheme of virtual address
|
||||||
do not have a corresponding kernel virtual address space mapping) and
|
do not have a corresponding kernel virtual address space mapping) and
|
||||||
low-memory pages.
|
low-memory pages.
|
||||||
|
|
||||||
Note: Please refer to Documentation/DMA-API-HOWTO.txt for a discussion
|
Note: Please refer to :doc:`/core-api/dma-api-howto` for a discussion
|
||||||
on PCI high mem DMA aspects and mapping of scatter gather lists, and support
|
on PCI high mem DMA aspects and mapping of scatter gather lists, and support
|
||||||
for 64 bit PCI.
|
for 64 bit PCI.
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ How to access I/O mapped memory from within device drivers
|
||||||
|
|
||||||
The virt_to_bus() and bus_to_virt() functions have been
|
The virt_to_bus() and bus_to_virt() functions have been
|
||||||
superseded by the functionality provided by the PCI DMA interface
|
superseded by the functionality provided by the PCI DMA interface
|
||||||
(see Documentation/DMA-API-HOWTO.txt). They continue
|
(see :doc:`/core-api/dma-api-howto`). They continue
|
||||||
to be documented below for historical purposes, but new code
|
to be documented below for historical purposes, but new code
|
||||||
must not use them. --davidm 00/12/12
|
must not use them. --davidm 00/12/12
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ Dynamic DMA mapping using the generic device
|
||||||
:Author: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
|
:Author: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
|
||||||
|
|
||||||
This document describes the DMA API. For a more gentle introduction
|
This document describes the DMA API. For a more gentle introduction
|
||||||
of the API (and actual examples), see Documentation/DMA-API-HOWTO.txt.
|
of the API (and actual examples), see :doc:`/core-api/dma-api-howto`.
|
||||||
|
|
||||||
This API is split into two pieces. Part I describes the basic API.
|
This API is split into two pieces. Part I describes the basic API.
|
||||||
Part II describes extensions for supporting non-consistent memory
|
Part II describes extensions for supporting non-consistent memory
|
||||||
|
@ -471,7 +471,7 @@ without the _attrs suffixes, except that they pass an optional
|
||||||
dma_attrs.
|
dma_attrs.
|
||||||
|
|
||||||
The interpretation of DMA attributes is architecture-specific, and
|
The interpretation of DMA attributes is architecture-specific, and
|
||||||
each attribute should be documented in Documentation/DMA-attributes.txt.
|
each attribute should be documented in :doc:`/core-api/dma-attributes`.
|
||||||
|
|
||||||
If dma_attrs are 0, the semantics of each of these functions
|
If dma_attrs are 0, the semantics of each of these functions
|
||||||
is identical to those of the corresponding function
|
is identical to those of the corresponding function
|
||||||
|
@ -484,7 +484,7 @@ for DMA::
|
||||||
|
|
||||||
#include <linux/dma-mapping.h>
|
#include <linux/dma-mapping.h>
|
||||||
/* DMA_ATTR_FOO should be defined in linux/dma-mapping.h and
|
/* DMA_ATTR_FOO should be defined in linux/dma-mapping.h and
|
||||||
* documented in Documentation/DMA-attributes.txt */
|
* documented in Documentation/core-api/dma-attributes.rst */
|
||||||
...
|
...
|
||||||
|
|
||||||
unsigned long attr;
|
unsigned long attr;
|
||||||
|
|
|
@ -17,7 +17,7 @@ To do ISA style DMA you need to include two headers::
|
||||||
#include <asm/dma.h>
|
#include <asm/dma.h>
|
||||||
|
|
||||||
The first is the generic DMA API used to convert virtual addresses to
|
The first is the generic DMA API used to convert virtual addresses to
|
||||||
bus addresses (see Documentation/DMA-API.txt for details).
|
bus addresses (see :doc:`/core-api/dma-api` for details).
|
||||||
|
|
||||||
The second contains the routines specific to ISA DMA transfers. Since
|
The second contains the routines specific to ISA DMA transfers. Since
|
||||||
this is not present on all platforms make sure you construct your
|
this is not present on all platforms make sure you construct your
|
||||||
|
|
|
@ -10,7 +10,7 @@ API overview
|
||||||
|
|
||||||
The big picture is that USB drivers can continue to ignore most DMA issues,
|
The big picture is that USB drivers can continue to ignore most DMA issues,
|
||||||
though they still must provide DMA-ready buffers (see
|
though they still must provide DMA-ready buffers (see
|
||||||
``Documentation/DMA-API-HOWTO.txt``). That's how they've worked through
|
:doc:`/core-api/dma-api-howto`). That's how they've worked through
|
||||||
the 2.4 (and earlier) kernels, or they can now be DMA-aware.
|
the 2.4 (and earlier) kernels, or they can now be DMA-aware.
|
||||||
|
|
||||||
DMA-aware usb drivers:
|
DMA-aware usb drivers:
|
||||||
|
@ -60,7 +60,7 @@ and effects like cache-trashing can impose subtle penalties.
|
||||||
force a consistent memory access ordering by using memory barriers. It's
|
force a consistent memory access ordering by using memory barriers. It's
|
||||||
not using a streaming DMA mapping, so it's good for small transfers on
|
not using a streaming DMA mapping, so it's good for small transfers on
|
||||||
systems where the I/O would otherwise thrash an IOMMU mapping. (See
|
systems where the I/O would otherwise thrash an IOMMU mapping. (See
|
||||||
``Documentation/DMA-API-HOWTO.txt`` for definitions of "coherent" and
|
:doc:`/core-api/dma-api-howto` for definitions of "coherent" and
|
||||||
"streaming" DMA mappings.)
|
"streaming" DMA mappings.)
|
||||||
|
|
||||||
Asking for 1/Nth of a page (as well as asking for N pages) is reasonably
|
Asking for 1/Nth of a page (as well as asking for N pages) is reasonably
|
||||||
|
@ -91,7 +91,7 @@ Working with existing buffers
|
||||||
Existing buffers aren't usable for DMA without first being mapped into the
|
Existing buffers aren't usable for DMA without first being mapped into the
|
||||||
DMA address space of the device. However, most buffers passed to your
|
DMA address space of the device. However, most buffers passed to your
|
||||||
driver can safely be used with such DMA mapping. (See the first section
|
driver can safely be used with such DMA mapping. (See the first section
|
||||||
of Documentation/DMA-API-HOWTO.txt, titled "What memory is DMA-able?")
|
of :doc:`/core-api/dma-api-howto`, titled "What memory is DMA-able?")
|
||||||
|
|
||||||
- When you're using scatterlists, you can map everything at once. On some
|
- When you're using scatterlists, you can map everything at once. On some
|
||||||
systems, this kicks in an IOMMU and turns the scatterlists into single
|
systems, this kicks in an IOMMU and turns the scatterlists into single
|
||||||
|
|
|
@ -570,8 +570,8 @@ ACQUIRE 는 해당 오퍼레이션의 로드 부분에만 적용되고 RELEASE
|
||||||
[*] 버스 마스터링 DMA 와 일관성에 대해서는 다음을 참고하시기 바랍니다:
|
[*] 버스 마스터링 DMA 와 일관성에 대해서는 다음을 참고하시기 바랍니다:
|
||||||
|
|
||||||
Documentation/driver-api/pci/pci.rst
|
Documentation/driver-api/pci/pci.rst
|
||||||
Documentation/DMA-API-HOWTO.txt
|
Documentation/core-api/dma-api-howto.rst
|
||||||
Documentation/DMA-API.txt
|
Documentation/core-api/dma-api.rst
|
||||||
|
|
||||||
|
|
||||||
데이터 의존성 배리어 (역사적)
|
데이터 의존성 배리어 (역사적)
|
||||||
|
@ -1907,7 +1907,7 @@ Mandatory 배리어들은 SMP 시스템에서도 UP 시스템에서도 SMP 효
|
||||||
|
|
||||||
writel_relaxed() 와 같은 완화된 I/O 접근자들에 대한 자세한 내용을 위해서는
|
writel_relaxed() 와 같은 완화된 I/O 접근자들에 대한 자세한 내용을 위해서는
|
||||||
"커널 I/O 배리어의 효과" 섹션을, consistent memory 에 대한 자세한 내용을
|
"커널 I/O 배리어의 효과" 섹션을, consistent memory 에 대한 자세한 내용을
|
||||||
위해선 Documentation/DMA-API.txt 문서를 참고하세요.
|
위해선 Documentation/core-api/dma-api.rst 문서를 참고하세요.
|
||||||
|
|
||||||
|
|
||||||
=========================
|
=========================
|
||||||
|
|
|
@ -907,7 +907,7 @@ sba_mark_invalid(struct ioc *ioc, dma_addr_t iova, size_t byte_cnt)
|
||||||
* @dir: dma direction
|
* @dir: dma direction
|
||||||
* @attrs: optional dma attributes
|
* @attrs: optional dma attributes
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static dma_addr_t sba_map_page(struct device *dev, struct page *page,
|
static dma_addr_t sba_map_page(struct device *dev, struct page *page,
|
||||||
unsigned long poff, size_t size,
|
unsigned long poff, size_t size,
|
||||||
|
@ -1028,7 +1028,7 @@ sba_mark_clean(struct ioc *ioc, dma_addr_t iova, size_t size)
|
||||||
* @dir: R/W or both.
|
* @dir: R/W or both.
|
||||||
* @attrs: optional dma attributes
|
* @attrs: optional dma attributes
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size,
|
static void sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size,
|
||||||
enum dma_data_direction dir, unsigned long attrs)
|
enum dma_data_direction dir, unsigned long attrs)
|
||||||
|
@ -1105,7 +1105,7 @@ static void sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size,
|
||||||
* @size: number of bytes mapped in driver buffer.
|
* @size: number of bytes mapped in driver buffer.
|
||||||
* @dma_handle: IOVA of new buffer.
|
* @dma_handle: IOVA of new buffer.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void *
|
static void *
|
||||||
sba_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
|
sba_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
|
||||||
|
@ -1162,7 +1162,7 @@ sba_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
|
||||||
* @vaddr: virtual address IOVA of "consistent" buffer.
|
* @vaddr: virtual address IOVA of "consistent" buffer.
|
||||||
* @dma_handler: IO virtual address of "consistent" buffer.
|
* @dma_handler: IO virtual address of "consistent" buffer.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void sba_free_coherent(struct device *dev, size_t size, void *vaddr,
|
static void sba_free_coherent(struct device *dev, size_t size, void *vaddr,
|
||||||
dma_addr_t dma_handle, unsigned long attrs)
|
dma_addr_t dma_handle, unsigned long attrs)
|
||||||
|
@ -1425,7 +1425,7 @@ static void sba_unmap_sg_attrs(struct device *dev, struct scatterlist *sglist,
|
||||||
* @dir: R/W or both.
|
* @dir: R/W or both.
|
||||||
* @attrs: optional dma attributes
|
* @attrs: optional dma attributes
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static int sba_map_sg_attrs(struct device *dev, struct scatterlist *sglist,
|
static int sba_map_sg_attrs(struct device *dev, struct scatterlist *sglist,
|
||||||
int nents, enum dma_data_direction dir,
|
int nents, enum dma_data_direction dir,
|
||||||
|
@ -1524,7 +1524,7 @@ static int sba_map_sg_attrs(struct device *dev, struct scatterlist *sglist,
|
||||||
* @dir: R/W or both.
|
* @dir: R/W or both.
|
||||||
* @attrs: optional dma attributes
|
* @attrs: optional dma attributes
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void sba_unmap_sg_attrs(struct device *dev, struct scatterlist *sglist,
|
static void sba_unmap_sg_attrs(struct device *dev, struct scatterlist *sglist,
|
||||||
int nents, enum dma_data_direction dir,
|
int nents, enum dma_data_direction dir,
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
** PARISC 1.1 Dynamic DMA mapping support.
|
** PARISC 1.1 Dynamic DMA mapping support.
|
||||||
** This implementation is for PA-RISC platforms that do not support
|
** This implementation is for PA-RISC platforms that do not support
|
||||||
** I/O TLBs (aka DMA address translation hardware).
|
** I/O TLBs (aka DMA address translation hardware).
|
||||||
** See Documentation/DMA-API-HOWTO.txt for interface definitions.
|
** See Documentation/core-api/dma-api-howto.rst for interface definitions.
|
||||||
**
|
**
|
||||||
** (c) Copyright 1999,2000 Hewlett-Packard Company
|
** (c) Copyright 1999,2000 Hewlett-Packard Company
|
||||||
** (c) Copyright 2000 Grant Grundler
|
** (c) Copyright 2000 Grant Grundler
|
||||||
|
|
|
@ -3,8 +3,8 @@
|
||||||
#define _ASM_X86_DMA_MAPPING_H
|
#define _ASM_X86_DMA_MAPPING_H
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* IOMMU interface. See Documentation/DMA-API-HOWTO.txt and
|
* IOMMU interface. See Documentation/core-api/dma-api-howto.rst and
|
||||||
* Documentation/DMA-API.txt for documentation.
|
* Documentation/core-api/dma-api.rst for documentation.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/scatterlist.h>
|
#include <linux/scatterlist.h>
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* This allows to use PCI devices that only support 32bit addresses on systems
|
* This allows to use PCI devices that only support 32bit addresses on systems
|
||||||
* with more than 4GB.
|
* with more than 4GB.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt for the interface specification.
|
* See Documentation/core-api/dma-api-howto.rst for the interface specification.
|
||||||
*
|
*
|
||||||
* Copyright 2002 Andi Kleen, SuSE Labs.
|
* Copyright 2002 Andi Kleen, SuSE Labs.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -666,7 +666,7 @@ sba_mark_invalid(struct ioc *ioc, dma_addr_t iova, size_t byte_cnt)
|
||||||
* @dev: instance of PCI owned by the driver that's asking
|
* @dev: instance of PCI owned by the driver that's asking
|
||||||
* @mask: number of address bits this PCI device can handle
|
* @mask: number of address bits this PCI device can handle
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static int sba_dma_supported( struct device *dev, u64 mask)
|
static int sba_dma_supported( struct device *dev, u64 mask)
|
||||||
{
|
{
|
||||||
|
@ -698,7 +698,7 @@ static int sba_dma_supported( struct device *dev, u64 mask)
|
||||||
* @size: number of bytes to map in driver buffer.
|
* @size: number of bytes to map in driver buffer.
|
||||||
* @direction: R/W or both.
|
* @direction: R/W or both.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static dma_addr_t
|
static dma_addr_t
|
||||||
sba_map_single(struct device *dev, void *addr, size_t size,
|
sba_map_single(struct device *dev, void *addr, size_t size,
|
||||||
|
@ -788,7 +788,7 @@ sba_map_page(struct device *dev, struct page *page, unsigned long offset,
|
||||||
* @size: number of bytes mapped in driver buffer.
|
* @size: number of bytes mapped in driver buffer.
|
||||||
* @direction: R/W or both.
|
* @direction: R/W or both.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size,
|
sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size,
|
||||||
|
@ -867,7 +867,7 @@ sba_unmap_page(struct device *dev, dma_addr_t iova, size_t size,
|
||||||
* @size: number of bytes mapped in driver buffer.
|
* @size: number of bytes mapped in driver buffer.
|
||||||
* @dma_handle: IOVA of new buffer.
|
* @dma_handle: IOVA of new buffer.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void *sba_alloc(struct device *hwdev, size_t size, dma_addr_t *dma_handle,
|
static void *sba_alloc(struct device *hwdev, size_t size, dma_addr_t *dma_handle,
|
||||||
gfp_t gfp, unsigned long attrs)
|
gfp_t gfp, unsigned long attrs)
|
||||||
|
@ -898,7 +898,7 @@ static void *sba_alloc(struct device *hwdev, size_t size, dma_addr_t *dma_handle
|
||||||
* @vaddr: virtual address IOVA of "consistent" buffer.
|
* @vaddr: virtual address IOVA of "consistent" buffer.
|
||||||
* @dma_handler: IO virtual address of "consistent" buffer.
|
* @dma_handler: IO virtual address of "consistent" buffer.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
sba_free(struct device *hwdev, size_t size, void *vaddr,
|
sba_free(struct device *hwdev, size_t size, void *vaddr,
|
||||||
|
@ -933,7 +933,7 @@ int dump_run_sg = 0;
|
||||||
* @nents: number of entries in list
|
* @nents: number of entries in list
|
||||||
* @direction: R/W or both.
|
* @direction: R/W or both.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static int
|
static int
|
||||||
sba_map_sg(struct device *dev, struct scatterlist *sglist, int nents,
|
sba_map_sg(struct device *dev, struct scatterlist *sglist, int nents,
|
||||||
|
@ -1017,7 +1017,7 @@ sba_map_sg(struct device *dev, struct scatterlist *sglist, int nents,
|
||||||
* @nents: number of entries in list
|
* @nents: number of entries in list
|
||||||
* @direction: R/W or both.
|
* @direction: R/W or both.
|
||||||
*
|
*
|
||||||
* See Documentation/DMA-API-HOWTO.txt
|
* See Documentation/core-api/dma-api-howto.rst
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
sba_unmap_sg(struct device *dev, struct scatterlist *sglist, int nents,
|
sba_unmap_sg(struct device *dev, struct scatterlist *sglist, int nents,
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* List of possible attributes associated with a DMA mapping. The semantics
|
* List of possible attributes associated with a DMA mapping. The semantics
|
||||||
* of each attribute should be defined in Documentation/DMA-attributes.txt.
|
* of each attribute should be defined in Documentation/core-api/dma-attributes.rst.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
* does memory allocation too using vmalloc_32().
|
* does memory allocation too using vmalloc_32().
|
||||||
*
|
*
|
||||||
* videobuf_dma_*()
|
* videobuf_dma_*()
|
||||||
* see Documentation/DMA-API-HOWTO.txt, these functions to
|
* see Documentation/core-api/dma-api-howto.rst, these functions to
|
||||||
* basically the same. The map function does also build a
|
* basically the same. The map function does also build a
|
||||||
* scatterlist for the buffer (and unmap frees it ...)
|
* scatterlist for the buffer (and unmap frees it ...)
|
||||||
*
|
*
|
||||||
|
|
|
@ -1071,7 +1071,7 @@ static void check_unmap(struct dma_debug_entry *ref)
|
||||||
/*
|
/*
|
||||||
* Drivers should use dma_mapping_error() to check the returned
|
* Drivers should use dma_mapping_error() to check the returned
|
||||||
* addresses of dma_map_single() and dma_map_page().
|
* addresses of dma_map_single() and dma_map_page().
|
||||||
* If not, print this warning message. See Documentation/DMA-API.txt.
|
* If not, print this warning message. See Documentation/core-api/dma-api.rst.
|
||||||
*/
|
*/
|
||||||
if (entry->map_err_type == MAP_ERR_NOT_CHECKED) {
|
if (entry->map_err_type == MAP_ERR_NOT_CHECKED) {
|
||||||
err_printk(ref->dev, entry,
|
err_printk(ref->dev, entry,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче