Adaptation/GUID-2607CCFA-3D24-4716-A447-74304F861C44.dita
changeset 15 307f4279f433
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Adaptation/GUID-2607CCFA-3D24-4716-A447-74304F861C44.dita	Fri Oct 15 14:32:18 2010 +0100
@@ -0,0 +1,490 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
+<!-- This component and the accompanying materials are made available under the terms of the License 
+"Eclipse Public License v1.0" which accompanies this distribution, 
+and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
+<!-- Initial Contributors:
+    Nokia Corporation - initial contribution.
+Contributors: 
+-->
+<!DOCTYPE concept
+  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
+<concept id="GUID-2607CCFA-3D24-4716-A447-74304F861C44" xml:lang="en"><title>DSDIORegisterInterface
+Class Tutorial</title><shortdesc>Describes the DSDIORegisterInterface API class.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
+<section id="GUID-22A35782-49B5-4646-9125-042578A010C1"><title>Description</title><p>This
+class provides the main client API between the SDIO implementation and the
+rest of the system.</p><p>For portability reasons, it is recommended that
+this class is allocated on behalf of the client by the appropriate function
+class after the client has been registered with the SDIO function.</p><p><note> Unless
+stated otherwise, all the register offsets are defined to be relative to offsets
+within the SDIO function.</note></p><table id="GUID-F453D4C2-EECF-4BE4-9776-922C009BB246">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p>Header file</p></entry>
+<entry><p><filepath>regifc.h</filepath></p></entry>
+</row>
+<row>
+<entry><p>Source code file</p></entry>
+<entry><p><filepath>regifc.cpp</filepath></p></entry>
+</row>
+<row>
+<entry><p>Required libraries</p></entry>
+<entry><p>EPBUSSDIO</p></entry>
+</row>
+<row>
+<entry><p>Class declaration</p></entry>
+<entry><p><codeph>class DSDIORegisterInterface: public DSDIOSession</codeph></p></entry>
+</row>
+</tbody>
+</tgroup>
+</table> </section>
+<section id="GUID-76BC7A1A-A54A-47D3-ADAC-9D075A7A667F"><title>Read8()</title><p>The
+function declaration for the <xref href="GUID-53280C38-1734-332D-A432-0A56AB16CD04.dita"><apiname>Read8()</apiname></xref> method is:</p><codeblock xml:space="preserve">IMPORT_C TInt Read8(TUint32 aReg, TUint8* aReadDataP);</codeblock><p><b>Description</b></p><p>This method reads a single 8 bit value from the
+specified register.</p><p><b>Parameters</b></p><table id="GUID-DC782836-BB2D-4A01-9A94-CEDB655FB269">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReq</codeph></p></entry>
+<entry><p>The Source register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8* aReadDataP</codeph></p></entry>
+<entry><p>The location of the byte to read into.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-F5165642-EAE8-4E66-AD96-5185D337F716">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. KErrNone if the operation was successful,
+otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-3DAF62F4-4A57-4BB1-B32A-6F623A1A17B6"><title>Write8()</title><p>The
+function declaration for the <xref href="GUID-BF2E636A-FA49-39F6-9A52-A09E4879F3FC.dita"><apiname>Write8()</apiname></xref> method is:</p><codeblock xml:space="preserve">IMPORT_C TInt Write8(TUint32 aReg, TUint8  aWriteVal);</codeblock><p><b>Description</b></p><p>This method writes a single 8 bit value to the
+register specified.</p><p><b>Parameters</b></p><table id="GUID-620A412A-44B3-4B73-B2D1-3DD588F93BED">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The destination register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8 aWriteVal</codeph></p></entry>
+<entry><p>The 8 bit value to be written.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-954C9104-569D-4E48-A7E0-9AFF93CD267A">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-17DAC528-073D-4981-B908-529156DD5329"><title>Modify8()</title><p>The
+function declaration for the <xref href="GUID-312948B9-5338-3030-9130-821E9BDDCE62.dita"><apiname>Modify8()</apiname></xref> method is:</p><codeblock xml:space="preserve">IMPORT_C TInt Modify8(TUint32 aReg, TUint8 aSet, TUint8 aClr);
+</codeblock><p><b>Description</b></p><p>This method performs a bitwise read-modify-write
+operation on the specified register.</p><p><b>Parameters</b></p><table id="GUID-9DC3C571-7270-4306-B3B2-2CF35AC0B643">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The destination register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8 aSet</codeph></p></entry>
+<entry><p>A bitmask of the values to be set.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8 aClr</codeph></p></entry>
+<entry><p>A bitmask of the values to be cleared.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-A7BB8C27-B5DD-4FB2-9225-78877E5F7255">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-44105A9A-C2E6-4A8C-B6F7-04A154A11EE1"><title>Modify8() with
+read-after-write</title><p>The function declaration for the <xref href="GUID-312948B9-5338-3030-9130-821E9BDDCE62.dita"><apiname>Modify8()</apiname></xref> with
+read-after-write method is:</p><codeblock xml:space="preserve">IMPORT_C TInt Modify8(TUint32 aReg, TUint8 aSet, TUint8 aClr, TUint8* aReadDataP);</codeblock><p><b>Description</b></p><p>This method performs a bitwise read-modify-write operation on the
+specified register.</p><p><b>Parameters</b></p><table id="GUID-9F7DB1E5-C679-4D25-AB28-313CE2EF5802">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The destination register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8 aSet</codeph></p></entry>
+<entry><p>A bitmask of the values to be set.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8 aClr</codeph></p></entry>
+<entry><p>A bitmask of the values to be cleared.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8* aReadDataP</codeph></p></entry>
+<entry><p>The address of the byte to read into. The result of the operation
+is stored in this buffer.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-78F38934-81F8-4E93-8400-09AED7138883">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-C079E54E-24B3-488B-BAB2-7625565871C1"><title>ReadMultiple8()</title><p>The
+function declaration for the <xref href="GUID-2E0277CD-3CB8-3A8C-AAD3-8083E8BA7B60.dita"><apiname>ReadMultiple8()</apiname></xref> method is:</p><codeblock xml:space="preserve">IMPORT_C TInt ReadMultiple8(TUint32 aReg, TUint8* aDataP, TUint32 aLen);
+</codeblock><p><b>Description</b></p><p>This method reads the specified number
+of bytes starting at the specified register offset.</p><p><b>Parameters</b></p><table id="GUID-1FC8E85C-821E-4123-BF5C-7F163D4C31C0">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The source register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8* aDataP</codeph></p></entry>
+<entry><p>The start address of the destination buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes to be read.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-0A75AC37-3D8A-4F75-BE0D-FBC2BADD84FE">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-06A354DC-92E9-426E-BCEA-8B141731A4E8"><title>ReadMultiple8()
+with auto-increment</title><p>The function declaration for the <xref href="GUID-2E0277CD-3CB8-3A8C-AAD3-8083E8BA7B60.dita"><apiname>ReadMultiple8()</apiname></xref> 
+method with auto-increment is:</p><codeblock xml:space="preserve">IMPORT_C TInt ReadMultiple8(TUint32 aReg, TUint8* aDataP, TUint32 aLen, TBool aAutoInc);
+</codeblock><p><b>Description</b></p><p>This method reads the specified number
+of bytes starting at the specified register offset.</p><p><b>Parameters</b></p><table id="GUID-6DAFE385-A10D-4FE1-BD9F-73DF32C57317">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The source register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8* aDataP</codeph></p></entry>
+<entry><p>The start address of the destination buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes that are to be read.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TBool aAutoInc</codeph></p></entry>
+<entry><p>Enable or disable the auto-increment functionality.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-A2B48766-0BD9-468F-8840-7AF6EF74E886">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-2F0B67C8-AB5F-4224-B1DB-328FBB17DC7B"><title>ReadMultiple8()
+using shared chunks</title><p>The function declaration for the <xref href="GUID-2E0277CD-3CB8-3A8C-AAD3-8083E8BA7B60.dita"><apiname>ReadMultiple8()</apiname></xref>method
+using shared chunks is:</p><codeblock xml:space="preserve">IMPORT_C TInt ReadMultiple8(TUint32 aReg, DChunk* aChunk, TUint32 aOffset, TUint32 aLen);
+</codeblock><p><b>Description</b></p><p>This method reads the specified number
+of bytes starting at the specified register offset.</p><p><b>Parameters</b></p><table id="GUID-C8BB983E-3625-4F75-A7C3-8392D3D83115">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The source register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>DChunk* aChunk</codeph></p></entry>
+<entry><p>The chunk that hosts the destination buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aOffset</codeph></p></entry>
+<entry><p>The offset from the start of the chunk to the start of the destination
+buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes to be read.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-33386AAB-BDAE-4469-9C57-7B5C1B111B93">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p>TInt</p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-84D13B57-DB1B-47DB-A1F5-9AF23BE62D35"><title>ReadMultiple8()
+with auto-increment using shared chunks</title><p>The function declaration
+for the <xref href="GUID-2E0277CD-3CB8-3A8C-AAD3-8083E8BA7B60.dita"><apiname>ReadMultiple8()</apiname></xref> method with auto-increment using
+shared chunks is:</p><codeblock xml:space="preserve">IMPORT_C TInt ReadMultiple8(TUint32 aReg, DChunk* aChunk, TUint32 aOffset, TUint32 aLen, TBool aAutoInc);</codeblock><p><b>Description</b></p><p>This method reads the specified number of bytes
+starting at the specified register offset.</p><p><b>Parameters</b></p><table id="GUID-BF998853-26C6-45C7-86A2-C8497D0CB2AB">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The source register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>DChunk* aChunk</codeph></p></entry>
+<entry><p>The chunk that hosts the destination buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aOffset</codeph></p></entry>
+<entry><p>The offset from the start of the chunk to the start of the destination
+buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes to be read.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TBool aAutoInc</codeph></p></entry>
+<entry><p>Enable or disable the auto-increment functionality.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-99B8EF1A-3E0B-4F1A-897F-1161AF7DC4F6">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-05558100-F758-4167-B8DD-55DD9D804A96"><title>WriteMultiple8()</title><p>The
+function declaration for the <xref href="GUID-F29DFD6B-9CA4-3170-B829-F3881B152614.dita"><apiname>WriteMultiple8()</apiname></xref> method is:</p><codeblock xml:space="preserve">IMPORT_C TInt WriteMultiple8(TUint32 aReg, TUint8* aDataP, TUint32 aLen);
+</codeblock><p><b>Description</b></p><p>This method writes the specified length
+of bytes starting at the specified register.</p><p><b>Parameters</b></p><table id="GUID-601B2EDB-99F9-4166-A3A4-66FDFA4875B7">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The destination register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8* aDataP</codeph></p></entry>
+<entry><p>The start address of the source buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes to be written.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-73063CCB-18C7-4989-AE97-64F3C851FE38">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-38B1302E-4410-4230-9AE9-E6ABD84F4EF1"><title>WriteMultiple8()
+with auto-increment</title><p>The function declaration for the <xref href="GUID-F29DFD6B-9CA4-3170-B829-F3881B152614.dita"><apiname>WriteMultiple8()</apiname></xref> method
+with auto-increment is:</p><codeblock xml:space="preserve">IMPORT_C TInt WriteMultiple8(TUint32 aReg, TUint8* aDataP, TUint32 aLen, TBool aAutoInc);
+</codeblock><p><b>Description</b></p><p>This method writes the specified length
+of bytes starting at the specified register.</p><p><b>Parameters</b></p><table id="GUID-FFA05F8A-2459-4581-8B0F-0E5636C53BEE">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The destination register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint8* aDataP</codeph></p></entry>
+<entry><p>The start address of the source buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes to be written.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TBool aAutoInc</codeph></p></entry>
+<entry><p>Enable or disable the auto-increment functionality.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-BCF4DAA6-7BF8-41F1-9406-40B15363A545">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-8A745F5C-9EF4-413E-9E55-AF74FB95B507"><title>WriteMultiple8()
+using shared chunks</title><p>The function declaration for the <xref href="GUID-F29DFD6B-9CA4-3170-B829-F3881B152614.dita"><apiname>WriteMultiple8()</apiname></xref> method
+using shared chunks is:</p><codeblock xml:space="preserve">IMPORT_C TInt WriteMultiple8(TUint32 aReg, DChunk* aChunk, TUint32 aOffset, TUint32 aLen);
+</codeblock><p><b>Description</b></p><p>This method writes the specified length
+of bytes starting at the specified register.</p><p><b>Parameters</b></p><table id="GUID-F545CC9C-B098-402C-B940-9994E6CA2FC3-GENID-1-2-1-10-1-5-1-9-1-1-7-1-4-1-5-1-3-12-7">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The destination register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>DChunk* aChunk</codeph></p></entry>
+<entry><p>The chunk that hosts the source buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aOffset</codeph></p></entry>
+<entry><p>The offset from the start of the chunk and the start address of
+the source buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes to be written.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-47EC4DFC-65B0-4AD8-806C-2AEF74F58217">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-2481C7F9-C9ED-4EE1-B7FA-C8274CDE78E6"><title>WriteMultiple8(
+) with auto-increment using shared chunks</title><p>The function declaration
+for the <xref href="GUID-F29DFD6B-9CA4-3170-B829-F3881B152614.dita"><apiname>WriteMultiple8()</apiname></xref> method with autoincrement using
+shared chunks is:</p><codeblock xml:space="preserve">IMPORT_C TInt WriteMultiple8(TUint32 aReg, DChunk* aChunk, TUint32 aOffset, TUint32 aLen, TBool aAutoInc);</codeblock><p><b>Description</b></p><p>This method writes the specified length of bytes
+starting at the specified register.</p><p><b>Parameters</b></p><table id="GUID-F545CC9C-B098-402C-B940-9994E6CA2FC3-GENID-1-2-1-10-1-5-1-9-1-1-7-1-4-1-5-1-3-13-7">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TUint32 aReg</codeph></p></entry>
+<entry><p>The destination register address.</p></entry>
+</row>
+<row>
+<entry><p><codeph>DChunk* aChunk</codeph></p></entry>
+<entry><p>The chunk that hosts the source buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aOffset</codeph></p></entry>
+<entry><p>The offset from the start of the chunk and the start address of
+the source buffer.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TUint32 aLen</codeph></p></entry>
+<entry><p>The number of bytes to be written.</p></entry>
+</row>
+<row>
+<entry><p><codeph>TBool aAutoInc</codeph></p></entry>
+<entry><p>Enable or disable the auto-increment functionality.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-281E7616-B0AC-49BE-9D62-3A69F1D8FBF8">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TInt</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-43FDE59E-0B10-4F29-8604-E097B183E233"><title>SetAsync()</title><p>The
+function declaration for the <xref href="GUID-AB2D8414-3C4D-3660-A426-6826DC11F37A.dita"><apiname>SetAsync()</apiname></xref>  method is:</p><codeblock xml:space="preserve">IMPORT_C TBool SetAsync(TMMCCallBack&amp; aCallback);
+</codeblock><p><b>Description</b></p><p>This function allows the user to disable
+the synchronous nature of the DSDIORegInterface class, by using the specified
+callback function to indicate the completion of an operation.</p><p><b>Parameters</b></p><table id="GUID-875A5023-8E1B-4823-94AB-69C0732AC2AB">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TMMCCallback&amp; aCallback</codeph></p></entry>
+<entry><p>Reference to the callback function.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table><p><b>Return value</b></p><table id="GUID-D745AAFF-6647-4243-95D6-5E8CA44F2397">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TBool</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-B47D146E-458A-4340-8C9B-F73BEDBE171F"><title>SetSync()</title><p>The
+function declaration for the <xref href="GUID-6B24ACA7-87A3-3477-97F9-1F13BA53AE0D.dita"><apiname>SetSync()</apiname></xref> method is:</p><codeblock xml:space="preserve">IMPORT_C TBool SetSync();</codeblock><p><b>Description</b></p><p>Allows the synchronous nature of the DSDIORegInterface class to be enabled.</p><p>When
+the synchronous nature of the DSDIORegInterface class is enabled, then completion
+of an operation is specified by waiting on a semaphore.</p><p><b>Parameters</b></p><p>None</p><p><b>Return
+value</b></p><table id="GUID-B8033632-5CF2-4C1D-B778-D75F209F3153">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<tbody>
+<row>
+<entry><p><codeph>TBool</codeph></p></entry>
+<entry><p>The result of the operation. <codeph>KErrNone</codeph> if the operation
+was successful, otherwise a system wide error code.</p></entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+</conbody></concept>
\ No newline at end of file