source: soft/giet_vm/giet_vsegs.ld @ 214

Last change on this file since 214 was 208, checked in by alain, 12 years ago

Introducing two mappings, for tsarv4_generic_mmu (4 clusters),
and caba_vgsb_xicu_mmu (mono cluster)

File size: 2.5 KB
Line 
1/****************************************************************************/
2/* Definition of the base addresses for all vsegs used by the GIET_VM       */
3/****************************************************************************/
4
5/****************************************************************************/
6/* The following (virtual) addresses are used by the boot code.             */
7/* They must respect identity mapping, because MMU is not activated.        */
8/*   (identity mapping <=> physical address == virtual address              */
9/****************************************************************************/
10
11seg_boot_code_base      = 0xBFC00000;   /* boot code */
12seg_boot_stack_base     = 0xBFC08000;   /* boot temporary stack */
13seg_mapping_base        = 0xBFC0C000;   /* mapping_info blob */
14
15/****************************************************************************/
16/* The following (virtual) addresse are defined and used by the kernel.     */
17/* They are not constrained to respect identity mapping.                    */
18/****************************************************************************/
19
20seg_kernel_code_base    = 0x80000000;   /* kernel code */
21seg_kernel_data_base    = 0x80010000;   /* system cacheable data */
22seg_kernel_uncdata_base = 0x80080000;   /* system uncacheable data */
23seg_kernel_init_base    = 0x80090000;   /* system init entry */
24
25/****************************************************************************/
26/* The following (virtual) peripherals base addresses are used by both      */
27/* the boot code to initialise the peripherals, and by the kernel drivers.  */
28/* For sake of simplicity, they partially respect identity mapping.         */
29/* As some components are replicated in all clusters (ICU, DMA), the 8 MSB  */
30/* must be completed by the OS depending on the cluster index:              */
31/*       virtual address = base_address + cluster_id * CLUSTER_SIZE         */
32/*       ( with CLUSTER_SIZE = 4Gbytes / NB_CLUSTERS )                      */
33/****************************************************************************/
34
35seg_fbf_base                = 0x00D00000;   /* FrameBuffer device */
36
37seg_icu_base                = 0x00F00000;   /* ICU or XICU device */
38seg_ioc_base                = 0x00F10000;   /* Block device */
39seg_tty_base                = 0x00F20000;   /* TTY device */
40seg_dma_base                = 0x00F30000;   /* DMA device */
41seg_tim_base                = 0x00F40000;   /* Timer device */
42seg_gcd_base                = 0x00F50000;   /* GCD device */
43seg_iob_base                = 0x00FF0000;   /* IOB device */
44
Note: See TracBrowser for help on using the repository browser.