|
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-2ADB873A-1580-476A-9642-AB47D13D4A98" xml:lang="en"><title>Driver |
|
13 Source Files</title><shortdesc>This document details the directory structure and file types of |
|
14 logical device drivers and physical device drivers.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
15 <section id="GUID-437190D1-9F2D-450E-A659-B2EDE09A98B6"> <title>Directory |
|
16 structure</title> <p>Device driver DLLs come in two types - the logical |
|
17 device driver (LDD), and the physical device driver (PDD). Typically, a single |
|
18 LDD supports functionality common to a class of hardware devices, whereas |
|
19 a PDD supports a specific member of that class. </p> <p>In Symbian platform |
|
20 source code, PDDs are part of variant baseports, while LDDs are stored in |
|
21 a shared location that is not specific to a particular variant: </p> <ul> |
|
22 <li id="GUID-AA32E34F-DA8E-5093-B2F2-A05C6FF5878C"><p>PDD source files (<filepath>.cpp</filepath>, <filepath>.h</filepath> and <filepath>.mmp</filepath>) for peripherals for the H4 variant are in source directories named <filepath>base\omap_hrp\h4\</filepath> <<i>driver_pdd</i> >. </p> </li> |
|
23 <li id="GUID-59BCB89E-4DDA-5EC5-9CE7-766929578688"><p>PDD source files (<filepath>.cpp</filepath>, <filepath>.h</filepath> and <filepath>.mmp</filepath>) for peripherals for the Emulator variant are in source directories named <filepath>base\wins\</filepath> <<i>driver_pdd</i> >. </p> </li> |
|
24 <li id="GUID-E6C48B50-6ACA-58DE-A17A-159FECCC419E"><p>LDD source files are |
|
25 in source directories named <filepath>base\e32\</filepath> <<i>driver</i> _<i>ldd</i> >, |
|
26 which are shared for all variants. </p> </li> |
|
27 <li id="GUID-79EFD591-60E9-5949-B1DB-1E7F9BFEF94A"><p>Common test application |
|
28 source files are in source directories named <filepath>base\e32test\</filepath> <<i>driver_test</i> >. </p> </li> |
|
29 </ul> <p>For both types of driver, the source files are generally organised |
|
30 in the following sub-directories: </p> <ul> |
|
31 <li id="GUID-7C92DAB4-607D-5E28-B40E-CE6BE889F54D"><p><<i>driver</i> ><filepath>\group</filepath> – <filepath>.mmp</filepath> files </p> </li> |
|
32 <li id="GUID-D4D7A72B-B45D-5142-9567-23D913AE09D1"><p><<i>driver</i> ><filepath>\inc</filepath> – <filepath>.h</filepath> files </p> </li> |
|
33 <li id="GUID-5C955F3B-B490-5CB1-90EA-AB51F2B86ECD"><p><<i>driver</i> ><filepath>\src</filepath> – <filepath>.cpp</filepath> files </p> </li> |
|
34 </ul> </section> |
|
35 <section id="GUID-F0256258-9C68-4598-9848-54D1BE43C63D"><title>File extensions</title> <p>The |
|
36 project files of a device driver that is part of the Kernel code are similar |
|
37 to those for other components in Symbian platform. The following tables summarise |
|
38 the source and binary file types you will see: </p> <table id="GUID-0EFAD42A-E690-5143-93A8-29EC596B72B6"> |
|
39 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
|
40 <tbody> |
|
41 <row> |
|
42 <entry><p> <b>Source File Type</b> </p> </entry> |
|
43 <entry><p> <b>Description</b> </p> </entry> |
|
44 </row> |
|
45 <row> |
|
46 <entry><p> <filepath> .h</filepath> </p> </entry> |
|
47 <entry><p>Include files </p> </entry> |
|
48 </row> |
|
49 <row> |
|
50 <entry><p> <filepath> .cpp</filepath> </p> </entry> |
|
51 <entry><p>Source files </p> </entry> |
|
52 </row> |
|
53 <row> |
|
54 <entry><p> <filepath> .inl</filepath> </p> </entry> |
|
55 <entry><p>Inline files </p> </entry> |
|
56 </row> |
|
57 <row> |
|
58 <entry><p> <filepath> .mmp</filepath> </p> </entry> |
|
59 <entry><p>Project file, similar to a makefile in other operating systems </p> </entry> |
|
60 </row> |
|
61 <row> |
|
62 <entry><p> <filepath> .inf</filepath> </p> </entry> |
|
63 <entry><p>Build file grouping multiple mmp files. Command line builds are |
|
64 done from this file's directory. </p> </entry> |
|
65 </row> |
|
66 <row> |
|
67 <entry><p> <filepath> .iby</filepath> </p> </entry> |
|
68 <entry><p>ROM include file. This file specifies the built files that need |
|
69 to be included in a ROM image. This is not used in builds for the Emulator. </p> </entry> |
|
70 </row> |
|
71 </tbody> |
|
72 </tgroup> |
|
73 </table> <p> </p> <table id="GUID-23EBCA5D-F979-54D7-B3D8-75CB1BEFBC92"> |
|
74 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
|
75 <tbody> |
|
76 <row> |
|
77 <entry><p> <b>Binary File Type</b> </p> </entry> |
|
78 <entry><p> <b>Description</b> </p> </entry> |
|
79 </row> |
|
80 <row> |
|
81 <entry><p> <filepath> .ldd</filepath> </p> </entry> |
|
82 <entry><p>Logical Device Driver target. A LDD contains code that is common |
|
83 to a class of hardware devices. </p> </entry> |
|
84 </row> |
|
85 <row> |
|
86 <entry><p> <filepath> .pdd</filepath> </p> </entry> |
|
87 <entry><p>Physical Device Driver target. A PDD contains code that is specific |
|
88 to one particular type of device. </p> </entry> |
|
89 </row> |
|
90 <row> |
|
91 <entry><p> <filepath> .exe</filepath> </p> </entry> |
|
92 <entry><p>Application executable target. </p> </entry> |
|
93 </row> |
|
94 <row> |
|
95 <entry><p> <filepath> .ext</filepath> </p> </entry> |
|
96 <entry><p>Kernel extension target, a driver that is started when the kernel |
|
97 boots. </p> </entry> |
|
98 </row> |
|
99 </tbody> |
|
100 </tgroup> |
|
101 </table> </section> |
|
102 </conbody></concept> |