Adaptation/GUID-8D7ED882-C61E-4B4F-8483-A323C60BFC57.dita
changeset 15 307f4279f433
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Adaptation/GUID-8D7ED882-C61E-4B4F-8483-A323C60BFC57.dita	Fri Oct 15 14:32:18 2010 +0100
@@ -0,0 +1,112 @@
+<?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-8D7ED882-C61E-4B4F-8483-A323C60BFC57" xml:lang="en"><title>Register Access Interface Overview</title><shortdesc>Provides a summary of the Register Access platform service
+interface.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
+<p>The Register Access platform service is provided by functions of
+the <xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita"><apiname>AsspRegister</apiname></xref> class. The <xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita"><apiname>AsspRegister</apiname></xref> class is defined in the <filepath>os/kernelhwsrv/kernel/eka/include/kernel/arm/assp.h</filepath> file. The functions defined in the AsspRegister class must be implemented
+in the baseport variant to allow device drivers and other kernel side
+code to access registers.</p>
+<section id="GUID-771DD532-171E-4F14-9704-EB040E5F6E67">         
+   <title>Register read functions</title>             <table id="GUID-17C79765-D70E-4739-BC15-7131F39EE1ED">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<thead>
+<row>
+<entry valign="top">API</entry>
+<entry valign="top">Description</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-A47E7A93-8180-38BA-8FAD-27ADA0E86EF7"><apiname>AsspRegister::Read8(TLinAddr aAddr)</apiname></xref></entry>
+<entry>Read the contents of an 8 bit register</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-41AA4058-4528-3AB7-9084-AA6053AF0656"><apiname>AsspRegister::Read16(TLinAddr aAddr)</apiname></xref></entry>
+<entry>Read the contents of a 16bit register</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-E637527E-537A-367D-91C2-A3BB3AA0A587"><apiname>AsspRegister::Read32(TLinAddr aAddr)</apiname></xref></entry>
+<entry>Read the contents of a 32 bit register</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-05FADA8D-5B77-39C6-A939-5EB1B209DD53"><apiname>AsspRegister::Read64(TLinAddr aAddr)</apiname></xref></entry>
+<entry>Read the contents of a 64 bit register</entry>
+</row>
+</tbody>
+</tgroup>
+</table>        </section>
+<section id="GUID-5E3A1EC0-C992-4C9C-B860-13B0F8F2A57B"><title>Register
+write functions</title><table id="GUID-E09626C9-EAC4-49A9-841D-FC901C303DE1">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<thead>
+<row>
+<entry valign="top">API</entry>
+<entry valign="top">Description</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-CB85C4D4-3652-311E-808A-048A43F49F3E"><apiname>AsspRegister::Write8(TLinAddr aAddr, TUint8 aValue)</apiname></xref></entry>
+<entry>Store a new value in an 8 bit register.</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-C20B9119-AAC8-354B-902A-B4349AEFC00E"><apiname>AsspRegister::Write16(TLinAddr aAddr, TUint16 aValue)</apiname></xref></entry>
+<entry>Store a new value in a 16 bit register.</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-E18C1674-47EA-3B70-9BEE-55302D58F83B"><apiname>AsspRegister::Write32(TLinAddr aAddr, TUint32 aValue)</apiname></xref></entry>
+<entry>Store a new value in a 32 bit register.</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-99D3233D-8F1C-3A65-BC1F-F10998728EB8"><apiname>AsspRegister::Write64(TLinAddr aAddr, TUint64 aValue)</apiname></xref></entry>
+<entry>Store a new value in a 64 bit register.</entry>
+</row>
+</tbody>
+</tgroup>
+</table></section>
+<section id="GUID-8A50A6F0-3DF6-4CD6-8F08-63A87892EA2C"><title>Register
+modify functions</title><p>The difference between write and modify
+functions is that the modify function allows the client to change
+partial contents of a register using masks.</p><table id="GUID-309EC00D-9718-4114-BE12-253F5CE93C6E">
+<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
+<thead>
+<row>
+<entry valign="top">API</entry>
+<entry valign="top">Description</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-3E66E373-E7DB-3F59-B6B1-3577AAD9FBF0"><apiname>AsspRegister::Modify8(TLinAddr aAddr, TUint8 aClearMask,
+TUint8 aSetMask)</apiname></xref></entry>
+<entry>Modify the contents of an 8 bit register.</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-9A6FF0D8-1136-3188-8D85-43EF8919FA7C"><apiname>AsspRegister::Modify16(TLinAddr aAddr, TUint16 aClearMask,
+TUint16 aSetMask)</apiname></xref></entry>
+<entry>Modify the contents of a 16 bit register.</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-035D2133-037A-36C5-B47C-A6FD00FEE3BA"><apiname>AsspRegister::Modify32(TLinAddr aAddr, TUint32 aClearMask,
+TUint32 aSetMask)</apiname></xref></entry>
+<entry>Modify the contents of a 32 bit register.</entry>
+</row>
+<row>
+<entry><xref href="GUID-66BB033A-3386-3913-9A25-EF3867D42C2C.dita#GUID-66BB033A-3386-3913-9A25-EF3867D42C2C/GUID-7127519C-305D-3727-898F-860023CE586A"><apiname>AsspRegister::Modify64(TLinAddr aAddr, TUint64 aClearMask,
+TUint64 aSetMask)</apiname></xref></entry>
+<entry>Modify the contents of a 64 bit register</entry>
+</row>
+</tbody>
+</tgroup>
+</table><p>The header file for the Registry Access platform service
+can be found <xref href="http://developer.symbian.org/xref/oss/xref/MCL/sf/os/kernelhwsrv/kernel/eka/include/kernel/arm/assp.h.dita#http://developer.symbian.org/xref/oss/xref/MCL/sf/os/kernelhwsrv/kernel/eka/include/kernel/arm/assp.h/AsspRegister">here</xref>.</p></section>
+</conbody></concept>
\ No newline at end of file