diff -r 4816d766a08a -r f345bda72bc4 Symbian3/PDK/Source/GUID-4E3C086B-25BE-4DAC-9E21-CFC4F8B792A5.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/PDK/Source/GUID-4E3C086B-25BE-4DAC-9E21-CFC4F8B792A5.dita Tue Mar 30 11:56:28 2010 +0100 @@ -0,0 +1,97 @@ + + + + + +DMA +Technology GuideDescribes the new Direct Memory Access framework. +
Purpose

The +Symbian platform DMA framework provides a generic simple interface for the +clients to access DMA resources in a device. The primary clients are device +drivers that will use the DMA framework to set up DMA transfers.

+
Key concepts +New DMA Framework + +
+ +
DMA Client
+

A device driver or other kernel objects that needs to use the resources +of the DMA framework.

+
+ +
DMA API
+

The generic interface to provide DMA services to the clients.

+
+ +
DMA Import Library
+

The DMA clients link against the dma2.lib file.

+
+ +
DMA Platform Independent Layer (PIL)
+

The platform independent layer that contains the generic framework +independent of the baseport.

+
+ +
DMA HAI
+

The simplified hardware abstract interface between the platform independent +layer and platform specific layer.

+
+ +
DMA Platform Specific Layer (PSL)
+

The platform specific layer is specific to the baseport and the hardware +used.

+
+ +
DMA Controller (DMAC)
+

The DMAC is the hardware implementation of the DMA framework. The number +of DMAC depends on the PSL implementation.

+
+ +
DMA Channel
+

The object which represents a single hardware channel. The DMA channels +are referred by a 32-bit value called as cookie. They channel object stores +the required number of descriptors for a given channel.

+
+ +
DMA Channel Manager
+

The channel manager controls the DMA channels. The channel manager +functions are defined in the platform independent layer and implemented in +the platform specific layer.

+
+ +
DMA Descriptors
+

The data structure uses by the DMA framework to store configuration +of the data transfer block with details such as source address, destination +address, number of bytes and pointer to the next descriptor, when DMA is used +to transfer disjoined blocks of data. This structure is defined in the platform +specific layer. The DMA descriptors must not be confused with the Symbian +platform descriptors.

+
+ +
Descriptor Headers
+

The descriptor headers are used to store additional information about +the descriptors.

+
+ +
Transfer Request
+

The transfer request are the process of initialising a data transfer +by the device drivers.

+
+
+
Typical Uses

The +typical use cases of a DMA framework are:

    +
  • programmable data transfer between hardware controllers and memory +buffers

  • +
  • programmable data transfer of block of data between different regions +of memory

  • +
  • programmable data extraction at regular intervals in a data structure

  • +
  • programmable rotation of a two dimensional data structure in memory +such as an image.

  • +
+
\ No newline at end of file