Adaptation/GUID-0804E71D-8B20-49A2-9F7C-F2D6795681D0.dita
changeset 15 307f4279f433
equal deleted inserted replaced
14:578be2adaf3e 15:307f4279f433
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-0804E71D-8B20-49A2-9F7C-F2D6795681D0" xml:lang="en"><title>DMA Quick Start</title><shortdesc>DMA is used to ease the burden on the main CPU, by performing
       
    13 some of the data transfers. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <p>There are two types of user that are interested in DMA: those that
       
    15 want to use it to transfer data, and those that need to implement
       
    16 it for their hardware.</p>
       
    17 <section id="GUID-0C4E7346-F73E-4348-8C1D-0CE6211BE222"><title>Users</title><ul>
       
    18 <li><p>Device driver developers use DMA to reduce the burden on the
       
    19 main CPU. They open a channel and then use that channel to queue one
       
    20 or more DMA requests.</p></li>
       
    21 <li><p>Hardware implementers, usually device creators, implement the
       
    22 DMA Platform Specific Layer (PSL) so that it will work with the particular
       
    23 DMA controller on a device.</p></li>
       
    24 </ul><p>Some devices will have more than one DMA controller, which
       
    25 means the DMA channel manager may require the hardware implementer
       
    26 to provide a means of identifying whether a particular DMA channel
       
    27 is of the correct type and on the appropriate controller.</p></section>
       
    28 <section id="GUID-AC961C9D-DD23-41D0-89AC-C89C5A2A6B6F"><fig id="GUID-01E7521A-ECD4-45F8-B104-659054A457AF">
       
    29 <title>DMA Class Diagram</title>
       
    30 <image href="GUID-F7ABA3C6-60DD-4AE1-916B-BE2BCF6285CE_d0e89266_href.png" placement="inline"/>
       
    31 </fig><p>The diagram represents different classes related to the DMA.
       
    32 The classes in green provide the Client Interface which allows the
       
    33 users to request data transfer, the classes in blue implement the
       
    34 platform specific layer and the classes in white are the abstract
       
    35 classes.</p></section>
       
    36 <section id="GUID-05B51EC6-F4CC-4C1C-AF91-1977FEE68FF6"><title>Device
       
    37 driver developers</title><p>The device driver writers including the
       
    38 developers of physical device drivers and kernel extension writers
       
    39 use the client interface of the DMA platform service. </p><ul>
       
    40 <li><p>DMA technology is described the <xref href="GUID-4E3C086B-25BE-4DAC-9E21-CFC4F8B792A5.dita">DMA Technology Guide</xref></p></li>
       
    41 <li><p>The concepts of device driver are described in the <xref href="GUID-EE50283A-543C-446F-A5D1-E64043F988ED.dita">DMA Device Driver
       
    42 Guide</xref></p></li>
       
    43 <li><p>The Client Interface is explained in the <xref href="GUID-D5ED62EB-744D-42EB-B8CF-D5623BDA5B38.dita">DMA Client Interface
       
    44 Guide</xref></p></li>
       
    45 </ul></section>
       
    46 <section id="GUID-556FBE81-A39C-429F-8AF5-CDE5C0E076CA"><title>Hardware
       
    47 implementers</title><p>If you are a device creator or are adapting
       
    48 the DMA Framework for your DMA controller, you must implement the
       
    49 Platform Specific Layer.</p><ul>
       
    50 <li><p>The hardware interface is explained in the <xref href="GUID-6873E764-4132-46C8-8444-6301CF4D2033.dita">DMA Hardware Interface</xref></p></li>
       
    51 <li><p>The hardware specific functions are implemented in the platform
       
    52 specific layer and the implementation is explained in the <xref href="GUID-95A33491-17AC-4F12-948E-A1352ADDA483.dita">DMA Implementation
       
    53 Guide</xref></p></li>
       
    54 <li><p>Testing the implementation is described in the <xref href="GUID-C2114C7B-705C-4527-836A-C6E72227111A.dita">DMA Testing Guide</xref></p></li>
       
    55 </ul></section>
       
    56 </conbody></concept>