1 # 2 # CDDL HEADER START 3 # 4 # The contents of this file are subject to the terms of the 5 # Common Development and Distribution License (the "License"). 6 # You may not use this file except in compliance with the License. 7 # 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 # or http://www.opensolaris.org/os/licensing. 10 # See the License for the specific language governing permissions 11 # and limitations under the License. 12 # 13 # When distributing Covered Code, include this CDDL HEADER in each 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 # If applicable, add the following below this CDDL HEADER, with the 16 # fields enclosed by brackets "[]" replaced with your own identifying 17 # information: Portions Copyright [yyyy] [name of copyright owner] 18 # 19 # CDDL HEADER END 20 # 21 22 # 23 # Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. 24 # 25 26 $mapfile_version 2 27 28 # 29 # This is 1:1 mapped code to setup the kernel memory image. 30 # It needs to be after (in physical) the kernel bits, so that 31 # they have full 8 Meg of memory. 32 # 33 LOAD_SEGMENT dboot { 34 FLAGS = READ WRITE EXECUTE; 35 NOHDR; 36 PADDR = 0x40800000; 37 VADDR = 0x40800000; 38 ASSIGN_SECTION { 39 IS_NAME = .data; 40 FILE_BASENAME = dboot.o; 41 }; 42 }; 43 44 LOAD_SEGMENT text { 45 FLAGS = READ EXECUTE; 46 NOHDR; 47 PADDR = 0x40000000; 48 VADDR = 0xFFFFFFFFFB800000; 49 OS_ORDER = .text; 50 ASSIGN_SECTION { 51 TYPE = PROGBITS; 52 FLAGS = ALLOC !WRITE; 53 }; 54 }; 55 56 # 57 # start the data segment on a new 4MB page boundary 58 # 59 LOAD_SEGMENT data { 60 FLAGS = READ WRITE EXECUTE; 61 PADDR = 0x40400000; 62 VADDR = 0xFFFFFFFFFBC00000; 63 OS_ORDER = .data; 64 ASSIGN_SECTION { 65 TYPE = PROGBITS; 66 FLAGS = ALLOC WRITE; 67 }; 68 ASSIGN_SECTION { 69 TYPE = NOBITS; 70 FLAGS = ALLOC WRITE; 71 }; 72 }; 73 74 NOTE_SEGMENT note { 75 ASSIGN_SECTION { 76 TYPE = NOTE; 77 }; 78 };