os/kernelhwsrv/bsptemplate/asspandvariant/template_variant/config.inc
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     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