0
|
1 |
; template\config.inc
|
|
2 |
;
|
|
3 |
; Copyright (c) 1998-2001 Symbian Ltd. All rights reserved.
|
|
4 |
;
|
|
5 |
; Template bootstrap configuration file
|
|
6 |
|
|
7 |
; Include to enable tracing
|
|
8 |
; GBLL CFG_DebugBootRom
|
|
9 |
|
|
10 |
; Include one of these to select the CPU
|
|
11 |
; GBLL CFG_CPU_GENERIC_ARM4
|
|
12 |
; GBLL CFG_CPU_ARM710T
|
|
13 |
; GBLL CFG_CPU_ARM720T
|
|
14 |
; GBLL CFG_CPU_SA1
|
|
15 |
; GBLL CFG_CPU_ARM920T
|
|
16 |
; GBLL CFG_CPU_ARM925T
|
|
17 |
; GBLL CFG_CPU_ARM926J
|
|
18 |
; GBLL CFG_CPU_XSCALE
|
|
19 |
; GBLL CFG_CPU_ARM1136
|
|
20 |
GBLL CFG_CPU_ARM1176
|
|
21 |
; GBLL CFG_CORTEX_A8
|
|
22 |
|
|
23 |
; Include the following line if this is a bootloader bootstrap
|
|
24 |
; GBLL CFG_BootLoader
|
|
25 |
; TO DO:
|
|
26 |
; The following line needs to be removed for target hardware
|
|
27 |
GBLL CFG_Template
|
|
28 |
|
|
29 |
; If you want to supply a custom set of initial vectors (including reset vector) include the following line
|
|
30 |
; GBLL CFG_CustomVectors
|
|
31 |
;
|
|
32 |
; and provide a custom_vectors.inc file
|
|
33 |
|
|
34 |
; Variant Number, just an example:
|
|
35 |
INIT_NUMERIC_CONSTANT CFG_HWVD, 0x09080001
|
|
36 |
|
|
37 |
; On ARM architecture 6 processors, include the following line to override the threshold
|
|
38 |
; on total physical RAM size at which the multiple memory model switches into large address space mode
|
|
39 |
; i.e. size>threshold -> 2Gb per process, size<=threshold -> 1Gb per process
|
|
40 |
; Defaults to 32Mb.
|
|
41 |
; INIT_NUMERIC_CONSTANT CFG_ARMV6_LARGE_CONFIG_THRESHOLD, <value>
|
|
42 |
|
|
43 |
; For the direct memory model only, include the following line if you wish the exception vectors at the
|
|
44 |
; start of the bootstrap to be used at all times. This is only relevant if an MMU is present - this option
|
|
45 |
; is mandatory if not.
|
|
46 |
; GBLL CFG_UseBootstrapVectors
|
|
47 |
;
|
|
48 |
; If the above option is in use (including if no MMU is present) the following symbol should be defined
|
|
49 |
; to specify the offset from the bootstrap to the kernel image.
|
|
50 |
INIT_NUMERIC_CONSTANT KernelCodeOffset, 0x4000
|
|
51 |
|
|
52 |
; Include the following line if you wish to include the ROM autodetection code based on data bus
|
|
53 |
; capacitance and image repeats.
|
|
54 |
; GBLL CFG_AutoDetectROM
|
|
55 |
|
|
56 |
; Include the following line to minimise the initial kernel heap size
|
|
57 |
; On the direct memory model the size of the kernel data area (super page to end of kernel heap)
|
|
58 |
; is rounded up to the next 1Mb if this is not included, 4K if it is.
|
|
59 |
; On the moving and multiple models, the size of the initial kernel heap area is rounded up to
|
|
60 |
; the next 64K if this is not included, 4K if it is.
|
|
61 |
; GBLL CFG_MinimiseKernelHeap
|
|
62 |
|
|
63 |
; Include the following line if default memory mapping should use shared memory.
|
|
64 |
; Should be defined on multicore (SMP) devices.
|
|
65 |
; GBLL CFG_USE_SHARED_MEMORY
|
|
66 |
|
|
67 |
; On the moving or multiple memory models, include either or both of the following lines to
|
|
68 |
; specify the size of the initial kernel heap
|
|
69 |
; INIT_NUMERIC_CONSTANT CFG_KernelHeapMultiplier, <multiplier>
|
|
70 |
; INIT_NUMERIC_CONSTANT CFG_KernelHeapBaseSize, <base>
|
|
71 |
;
|
|
72 |
; The initial kernel heap size is MAX( <base> + <multiplier> * N / 16, value specified in ROMBUILD )
|
|
73 |
; where N is the total physical RAM size in pages.
|
|
74 |
; <base> defaults to 24K and <multiplier> defaults to 9*16 (ie 9 bytes per page).
|
|
75 |
|
|
76 |
; Uncomment if using ARM1136 processor and ARM1136 Erratum 353494
|
|
77 |
; "Rare conditions can cause corruption of the Instruction Cache"
|
|
78 |
; is fixed on this hardware.
|
|
79 |
;
|
|
80 |
; NOTE: The boot table should use this macro to determine whether RONO or RORO permissions
|
|
81 |
; are used for the exception vectors. If the erratum is not fixed, RORO must be used.
|
|
82 |
;
|
|
83 |
; GBLL CFG_CPU_ARM1136_ERRATUM_353494_FIXED
|
|
84 |
|
|
85 |
; Uncomment if using ARM1136 processor and ARM1136 Erratum 364296
|
|
86 |
; "Possible Cache Data Corruption with Hit-Under-Miss"
|
|
87 |
; is fixed on this hardware.
|
|
88 |
;
|
|
89 |
; GBLL CFG_CPU_ARM1136_ERRATUM_364296_FIXED
|
|
90 |
|
|
91 |
; Uncomment if using ARM1136 processor and ARM1136 Erratum 399234
|
|
92 |
; "Write back data cache entry evicted by write through entry causes data corruption"
|
|
93 |
; is fixed on this hardware.
|
|
94 |
; Workaround
|
|
95 |
; The erratum may be avoided by marking all cacheable memory as one of write through or write back.
|
|
96 |
; This requires the memory attributes described in the translation tables to be modified by software
|
|
97 |
; appropriately, or the use of the remapping capability to remap write through regions to non cacheable.
|
|
98 |
;
|
|
99 |
; If this macro is enabled, it should be accompanied by:
|
|
100 |
; "macro __CPU_ARM1136_ERRATUM_399234_FIXED" in variant.mmh
|
|
101 |
; GBLL CFG_CPU_ARM1136_ERRATUM_399234_FIXED
|
|
102 |
|
|
103 |
|
|
104 |
; Uncomment if:
|
|
105 |
; 1) using ARM1136 processor and ARM1136 Erratum 411920: "Invalidate Entire Instruction Cache
|
|
106 |
; operation might fail to invalidate some lines if coincident with linefill"
|
|
107 |
; is fixed on this hardware, or
|
|
108 |
; 2) using ARM1176 processor and ARM1176 Erratum 415045: "Invalidate Entire Instruction Cache
|
|
109 |
; operation might fail to invalidate some lines if coincident with linefill
|
|
110 |
; is fixed on this hardware.
|
|
111 |
; Workaround:
|
|
112 |
; 1) Disables the use of of prefetch range cache operations by setting RV bit in Auxiliary Ctrl Reg.
|
|
113 |
; 2) Replaces Invalidate ICache operation with the sequence defined in the errata document.
|
|
114 |
; If this macro is enabled, it should be accompanied by:
|
|
115 |
; "macro __CPU_ARM1136_ERRATUM_411920_FIXED" in variant.mmh
|
|
116 |
;
|
|
117 |
; GBLL CFG_CPU_ARM1136_ERRATUM_411920_FIXED
|
|
118 |
|
|
119 |
|
|
120 |
; Uncomment if using ARM1136 processor and ARM1136 Erratum 415662: "Invalidate Instruction Cache by
|
|
121 |
; Index might corrupt cache when used with background prefetch range" is fixed on this hardware.
|
|
122 |
; Workaround:
|
|
123 |
; Disables the use of of prefetch range cache operations by setting RV bit in Auxiliary Ctrl Reg.
|
|
124 |
;
|
|
125 |
; GBLL CFG_CPU_ARM1136_ERRATUM_415662_FIXED
|
|
126 |
|
|
127 |
|
|
128 |
|
|
129 |
; These are deduced from the supplied configuration
|
|
130 |
; CFG_ARMV6
|
|
131 |
; CFG_MMUPresent
|
|
132 |
; CFG_CachePresent
|
|
133 |
; CFG_WriteBufferPresent
|
|
134 |
; CFG_SplitCache
|
|
135 |
; CFG_SplitTLB
|
|
136 |
; CFG_AltDCachePresent
|
|
137 |
; CFG_WriteBackCache
|
|
138 |
; CFG_CacheWriteAllocate
|
|
139 |
; CFG_CachePhysicalTag
|
|
140 |
; CFG_CacheFlushByDataRead
|
|
141 |
; CFG_CacheFlushByWaySetIndex
|
|
142 |
; CFG_CacheFlushByLineAlloc
|
|
143 |
; CFG_CachePolicyInPTE
|
|
144 |
; CFG_TEX
|
|
145 |
; CFG_SingleEntryDCacheFlush
|
|
146 |
; CFG_SingleEntryICacheFlush
|
|
147 |
; CFG_SingleEntryITLBFlush
|
|
148 |
; CFG_SingleEntryTLBFlush
|
|
149 |
; CFG_CacheTypeReg
|
|
150 |
; CFG_BTBPresent
|
|
151 |
; CFG_CARPresent
|
|
152 |
; CFG_PrefetchBuffer
|
|
153 |
; CFG_FCSE_Present
|
|
154 |
; CFG_ASID_Present
|
|
155 |
; CFG_IncludeRAMAllocator
|
|
156 |
|
|
157 |
END
|