Adaptation/GUID-D7D7615F-B67D-44D0-82DF-24853159A114.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-D7D7615F-B67D-44D0-82DF-24853159A114" xml:lang="en"><title>Baseport Template Client Interface Guide</title><shortdesc>Provides a basic framework consisting of base parts of
       
    13 the Symbian platform.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <p>The Baseport Template platform service provide an interface to
       
    15 the kernel-side client for hardware-specific functions (for example,
       
    16 GPIO, DMA, IIC, USB Client Controller) that are used by the kernel. </p>
       
    17 <section id="GUID-CEE49D22-800F-4906-9634-ED90D6326CD4">         
       
    18    <title>Interface class</title>             <p>The client interface
       
    19 for the Baseport Template platform service is:<table id="GUID-04372BCC-FF57-454B-808A-6CE36F305FD1">
       
    20 <tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
       
    21 <thead>
       
    22 <row>
       
    23 <entry valign="top">API</entry>
       
    24 <entry valign="top">Description</entry>
       
    25 </row>
       
    26 </thead>
       
    27 <tbody>
       
    28 <row>
       
    29 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita"><apiname>TemplateAssp</apiname></xref></p></entry>
       
    30 <entry><p>Provides common peripheral control functions such as power,
       
    31 bootstrap, keymap, keyboard and sound that other extensions and device
       
    32 drivers can use</p></entry>
       
    33 </row>
       
    34 </tbody>
       
    35 </tgroup>
       
    36 </table></p><p>The Baseport Template interface provides the following
       
    37 functions.</p><table id="GUID-F62F1769-B473-4CD7-AFB8-B87EDED9473F">
       
    38 <tgroup cols="3"><colspec colname="col1"/><colspec colname="COLSPEC0" colwidth="1.00*"/><colspec colname="col2"/>
       
    39 <thead>
       
    40 <row>
       
    41 <entry valign="top">Function</entry>
       
    42 <entry valign="top">Return Type</entry>
       
    43 <entry valign="top">Description</entry>
       
    44 </row>
       
    45 </thead>
       
    46 <tbody>
       
    47 <row>
       
    48 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-D6F36994-1F14-38FA-8030-F958BEFA31B5"><apiname>TemplateAssp::Init1()</apiname></xref></p></entry>
       
    49 <entry><codeph>void</codeph></entry>
       
    50 <entry><p>Initialize the ASSP interrupt controller</p></entry>
       
    51 </row>
       
    52 <row>
       
    53 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-3B629F63-8F31-32E9-9953-3D01F8A979BB"><apiname>TemplateAssp::Init3()</apiname></xref></p></entry>
       
    54 <entry><codeph>void</codeph></entry>
       
    55 <entry><p>Called in the context of the supervisor thread</p></entry>
       
    56 </row>
       
    57 <row>
       
    58 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-D3897D91-4127-3A9C-B996-84AE19CE1227"><apiname>TemplateAssp::StartupReason()</apiname></xref></p></entry>
       
    59 <entry><codeph>TMachineStartupType</codeph></entry>
       
    60 <entry><p>Return the Startup reason of the Super Page (set up by Bootstrap)</p></entry>
       
    61 </row>
       
    62 <row>
       
    63 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-69BD314C-DB6D-326C-9B6B-7ACA5D2D6109"><apiname>TemplateAssp::MsTickPeriod()</apiname></xref></p></entry>
       
    64 <entry><codeph>TInt</codeph></entry>
       
    65 <entry><p>Obtain the period of System Tick timer in microseconds</p></entry>
       
    66 </row>
       
    67 <row>
       
    68 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-371B9277-7E59-3B52-B8FA-C83D02192F34"><apiname>TemplateAssp::SystemTimeInSecondsFrom2000(TInt&amp;
       
    69 aTime);</apiname></xref></p></entry>
       
    70 <entry><codeph>TInt</codeph></entry>
       
    71 <entry><p>Obtain System Time from the RTC</p></entry>
       
    72 </row>
       
    73 <row>
       
    74 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-47B670EB-CD22-3CBE-A20C-5E5752207ED0"><apiname>TemplateAssp::SetSystemTimeInSecondsFrom2000(TInt
       
    75 aTime)</apiname></xref></p></entry>
       
    76 <entry><codeph>TInt</codeph></entry>
       
    77 <entry><p>Obtain Adjust the RTC with new System Time</p></entry>
       
    78 </row>
       
    79 <row>
       
    80 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-10356DD9-911A-3213-964E-90ED73DEDBE0"><apiname>TemplateAssp::NanoWaitCalibration()</apiname></xref></p></entry>
       
    81 <entry><codeph>TUint32</codeph></entry>
       
    82 <entry><p>Obtain the time it takes to execute two processor instructions</p></entry>
       
    83 </row>
       
    84 </tbody>
       
    85 </tgroup>
       
    86 </table>         </section>
       
    87 <section id="GUID-353FB844-F423-48C8-A992-4B0B509B6717"><title>Pure
       
    88 Virtual Functions for derivation by variant</title><p> These are the
       
    89 functions whose implementation are not provided in the class, but
       
    90 the behavior can be overridden within an inheriting class by a function
       
    91 with the same return type.</p><p><b>External interrupt handling functions</b> are used by second-level interrupt controllers at variant level.</p><table id="GUID-16FE0DE3-1096-47A0-A7FE-9989F73ABF6C">
       
    92 <tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
       
    93 <thead>
       
    94 <row>
       
    95 <entry valign="top">Functions</entry>
       
    96 <entry valign="top">Return Type</entry>
       
    97 </row>
       
    98 </thead>
       
    99 <tbody>
       
   100 <row>
       
   101 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-40F10C5C-912E-3433-B01E-9F4FC8448AF1"><apiname>TemplateAssp::InterruptBind(TInt anId, TIsr anIsr,
       
   102 TAny* aPtr)</apiname></xref></p></entry>
       
   103 <entry><codeph>TInt</codeph></entry>
       
   104 </row>
       
   105 <row>
       
   106 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-27DBAA7C-CF52-3167-84ED-BB1BDA2160F9"><apiname>TemplateAssp::InterruptUnbind(TInt anId)</apiname></xref></p></entry>
       
   107 <entry><codeph>TInt</codeph></entry>
       
   108 </row>
       
   109 <row>
       
   110 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-EA574990-A3F5-3127-9052-477AF80746B5"><apiname>TemplateAssp::InterruptEnable(TInt anId)</apiname></xref></p></entry>
       
   111 <entry><codeph>TInt</codeph></entry>
       
   112 </row>
       
   113 <row>
       
   114 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-C9ED2A0E-6725-3230-AF82-83E3CE67931B"><apiname>TemplateAssp::InterruptDisable(TInt anId)</apiname></xref></p></entry>
       
   115 <entry><codeph>TInt</codeph></entry>
       
   116 </row>
       
   117 <row>
       
   118 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-E180DE9E-7F38-3552-83C1-E0E99CC61C16"><apiname>TemplateAssp::InterruptClear(TInt anId)</apiname></xref></p></entry>
       
   119 <entry><codeph>TInt</codeph></entry>
       
   120 </row>
       
   121 </tbody>
       
   122 </tgroup>
       
   123 </table><p><b>USB client controller functions</b> are the called by
       
   124 the USB PSL, and to be implemented by the variant .</p><table id="GUID-C68B5AA4-DCBA-4380-A317-0DF7DB24A2C7">
       
   125 <tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
       
   126 <thead>
       
   127 <row>
       
   128 <entry valign="top">Functions</entry>
       
   129 <entry valign="top">Return Type</entry>
       
   130 </row>
       
   131 </thead>
       
   132 <tbody>
       
   133 <row>
       
   134 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-C139AF42-D777-3E24-8C51-EE9713382984"><apiname>TemplateAssp::UsbClientConnectorDetectable()</apiname></xref></p></entry>
       
   135 <entry><codeph>TBool</codeph></entry>
       
   136 </row>
       
   137 <row>
       
   138 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-4579D639-36EF-3F9B-B61F-0617737AEF6B"><apiname>TemplateAssp::UsbClientConnectorInserted()</apiname></xref></p></entry>
       
   139 <entry><codeph>TBool</codeph></entry>
       
   140 </row>
       
   141 <row>
       
   142 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-7F3C5DE4-1271-3D01-8851-F98B2C65D902"><apiname>TemplateAssp::RegisterUsbClientConnectorCallback(TInt
       
   143 (*aCallback)(TAny*), TAny* aPtr)</apiname></xref></p></entry>
       
   144 <entry><codeph>TInt</codeph></entry>
       
   145 </row>
       
   146 <row>
       
   147 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-F790857E-0ADD-3867-BC31-2465682F759F"><apiname>TemplateAssp::UnregisterUsbClientConnectorCallback()</apiname></xref></p></entry>
       
   148 <entry><codeph>void</codeph></entry>
       
   149 </row>
       
   150 <row>
       
   151 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-D1145A00-6288-353B-B12B-FF975A34543C"><apiname>TemplateAssp::UsbSoftwareConnectable()</apiname></xref></p></entry>
       
   152 <entry><codeph>TBool</codeph></entry>
       
   153 </row>
       
   154 <row>
       
   155 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-34F11331-62B8-3F1E-9C53-55A4727926AE"><apiname>TemplateAssp::UsbConnect()</apiname></xref></p></entry>
       
   156 <entry><codeph>TInt</codeph></entry>
       
   157 </row>
       
   158 <row>
       
   159 <entry><p><xref href="GUID-E893165C-0E62-3AC6-98BA-227E104B672E.dita#GUID-E893165C-0E62-3AC6-98BA-227E104B672E/GUID-5C7895A2-323D-34C5-BFAB-3FF470CB3503"><apiname>TemplateAssp::UsbDisconnect()</apiname></xref></p></entry>
       
   160 <entry><codeph>TInt</codeph></entry>
       
   161 </row>
       
   162 </tbody>
       
   163 </tgroup>
       
   164 </table></section>
       
   165 </conbody><related-links>
       
   166 <link href="GUID-57989FF8-5E8F-4C8A-9D38-169AFCA4C078.dita"><linktext>Baseport
       
   167 Template Implementation Guide</linktext></link>
       
   168 </related-links></concept>