|
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-2E4F8732-F253-5E0D-9A37-9476541E6004" xml:lang="en"><title>Platform-Specific |
|
13 Configuration Header</title><shortdesc>Describes how to write the file providing build-time configuration |
|
14 options.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
15 <p>The platform-specific configuration header is a file that provides the |
|
16 configuration options that must be known at build time. </p> |
|
17 <p>The configuration header is an include file written in assembler, and is |
|
18 named <filepath>config.inc</filepath>. </p> |
|
19 <p>Use the configuration header file in the Template port in <filepath>os/kernelhwsrv/bsptemplate/asspandvariant/template_variant/config.inc</filepath> as the basis of your own configuration header file. </p> |
|
20 <p>The file consists of a number of global logical symbol definitions (<codeph>GBLL</codeph> statements), |
|
21 including the following: </p> |
|
22 <ul> |
|
23 <li id="GUID-79707935-D1DD-5221-B77E-7F26AE27ADD0"><p>symbols that define |
|
24 the CPU, listed below </p> </li> |
|
25 <li id="GUID-AAD39A6F-256C-5904-8869-B90005A550E7"><p>a number of less commonly |
|
26 used macros and symbols, which are documented in the template configuration |
|
27 header file </p> </li> |
|
28 <li id="GUID-DC757D0B-5F4A-5C3C-AF23-D8F1893DEBF3"><p>a set of general bootstrap |
|
29 macros described in the <xref href="GUID-20F8DA2A-9157-54C5-97D0-4CCA50AB0631.dita">Reference</xref> section, |
|
30 including the macros that define the presence of Level 2 cache (L210 cache |
|
31 and L220 cache). </p> </li> |
|
32 </ul> |
|
33 <section id="GUID-2B3B9AA4-317C-5D83-8635-B64CBFD9B180"><title>CPU |
|
34 symbols</title><p>The CPU that the bootstrap runs on is indicated by defining <i>one</i> of |
|
35 the following symbols: </p><ul> |
|
36 <li id="GUID-23065718-F6B8-5882-A51A-8E6BE234B1CE"><p> <codeph>CFG_CPU_ARM710T</codeph></p></li> |
|
37 <li id="GUID-004CBA53-105B-52B9-92FD-C96076853126"><p> <codeph>CFG_CPU_ARM720T</codeph></p> </li> |
|
38 <li id="GUID-43DC423C-1FFB-59A9-9DEA-37BFEEBD102E"><p> <codeph>CFG_CPU_SA1</codeph></p></li> |
|
39 <li id="GUID-4B3C55D3-5D61-52F7-A6E1-007BD9AF4F2A"><p> <codeph>CFG_CPU_ARM920T</codeph></p> </li> |
|
40 <li id="GUID-16EC89F4-93A0-5838-B287-E275644F454F"><p> <codeph>CFG_CPU_ARM925T</codeph></p></li> |
|
41 <li id="GUID-B74887BE-55E8-5B15-B4F0-456174B76E4A"><p> <codeph>CFG_CPU_ARM926J</codeph></p></li> |
|
42 <li id="GUID-AD501BE6-E722-593C-8B37-BDD7187CB023"><p> <codeph>CFG_CPU_XSCALE</codeph></p></li> |
|
43 <li id="GUID-36BBE46F-0D2E-54B8-B306-88FDEAD029F6"><p> <codeph>CFG_CPU_ARM1136</codeph></p></li> |
|
44 <li id="GUID-6FDF00B0-4685-57D0-9619-E8663C7F3CAC"><p> <codeph>CFG_CPU_GENERIC_ARM4</codeph></p></li> |
|
45 </ul> <p>Note that <codeph>CFG_CPU_GENERIC_ARM4</codeph> refers to an ARM |
|
46 architecture 4, or later device, with no MMU. </p> <p>The template file contains |
|
47 all these symbol definitions; just move the comment symbol (<codeph>;</codeph>) |
|
48 as appropriate for your platform. </p> </section> |
|
49 <section id="GUID-CA93F9E2-B48F-4A25-9A72-60F994579E26"><title>Other symbols</title><table id="GUID-65CE2BC3-A0EB-5D10-A5FA-5DDF7FC16C86"> |
|
50 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
|
51 <tbody> |
|
52 <row> |
|
53 <entry><p> <codeph>CFG_DebugBootRom</codeph> </p> </entry> |
|
54 <entry><p>Define this symbol to enable debug tracing in the bootstrap. </p> </entry> |
|
55 </row> |
|
56 <row> |
|
57 <entry><p> <codeph>CFG_BootLoader</codeph> </p> </entry> |
|
58 <entry><p>Define this symbol if the bootstrap is a bootloader. </p> </entry> |
|
59 </row> |
|
60 </tbody> |
|
61 </tgroup> |
|
62 </table> </section> |
|
63 <section id="GUID-C1E1FB5B-C3AB-4B0A-BBED-B51C3DD12F7E"><title>Derived |
|
64 symbols</title> <p>A number of commonly used symbols are derived from the |
|
65 supplied configuration options, and may be used in your code. </p> <p>Precisely <i>one</i> of |
|
66 the following three logical symbols is true, indicating the memory model in |
|
67 use: </p> <ul> |
|
68 <li id="GUID-87BF8EC3-CCBE-5BB8-85AB-074F246FF59A"><p> <codeph>CFG_MMDirect</codeph> </p> </li> |
|
69 <li id="GUID-3B5EF71B-1938-5DB7-AE23-E485CDC15BA7"><p> <codeph>CFG_MMMoving</codeph> </p> </li> |
|
70 <li id="GUID-C09F2227-966E-5324-9A56-0D2996D60B83"><p> <codeph>CFG_MMMultiple</codeph> </p> </li> |
|
71 </ul> <p>The following logical symbols are true or false depending on whether |
|
72 the CPU in use has the corresponding property. The property represented by |
|
73 the symbol is given by the symbol name. </p> <ul> |
|
74 <li id="GUID-5502D0E2-E2CF-57D4-8B08-C56E1B75ECE2"><p> <codeph>CFG_ARMV6</codeph> </p> </li> |
|
75 <li id="GUID-AFAAF34C-BAF0-56D2-90FD-463DEA31C1C8"><p> <codeph>CFG_MMUPresent</codeph> </p> </li> |
|
76 <li id="GUID-5B162135-6F71-52DF-AC5E-14419A960916"><p> <codeph>CFG_CachePresent</codeph> </p> </li> |
|
77 <li id="GUID-399918E2-D9C9-5860-B765-92890BC025C0"><p> <codeph>CFG_WriteBufferPresent</codeph> </p> </li> |
|
78 <li id="GUID-2520D9C2-2FDF-5D8A-8CCC-C8226F3B4CA6"><p> <codeph>CFG_SplitCache</codeph> </p> </li> |
|
79 <li id="GUID-042ED020-22D0-5BC1-8C6C-94B484348110"><p> <codeph>CFG_SplitTLB</codeph> </p> </li> |
|
80 <li id="GUID-B77CC0D9-02AA-59A7-BAD9-9AA57BEC81FB"><p> <codeph>CFG_AltDCachePresent</codeph> </p> </li> |
|
81 <li id="GUID-CD2E1CDC-0503-548E-BC3A-637354581BFB"><p> <codeph>CFG_WriteBackCache</codeph> </p> </li> |
|
82 </ul> </section> |
|
83 </conbody></concept> |