1 ======= 2 Porting 3 ======= 4 5 Taken from list archive at http://lists.arm.li 6 7 Initial definitions 8 ------------------- 9 10 The following symbol definitions rely on you k 11 __virt_to_phys() does for your machine. This 12 virtual address to a physical address. Normal 13 14 phys = virt - PAGE_OFFSET + PH 15 16 17 Decompressor Symbols 18 -------------------- 19 20 ZTEXTADDR 21 Start address of decompressor. There' 22 virtual or physical addresses here, si 23 the time when you call the decompresso 24 the kernel at this address to start it 25 to be located in RAM, it can be in fla 26 read-write addressable medium. 27 28 ZBSSADDR 29 Start address of zero-initialised work 30 This must be pointing at RAM. The dec 31 this for you. Again, the MMU will be 32 33 ZRELADDR 34 This is the address where the decompre 35 and eventually executed. The followin 36 37 __virt_to_phys(TEXTADDR) == ZR 38 39 The initial part of the kernel is care 40 independent. 41 42 INITRD_PHYS 43 Physical address to place the initial 44 you are using the bootpImage stuff (wh 45 struct param_struct). 46 47 INITRD_VIRT 48 Virtual address of the initial RAM dis 49 must be valid: 50 51 __virt_to_phys(INITRD_VIRT) == 52 53 PARAMS_PHYS 54 Physical address of the struct param_s 55 kernel various parameters about its ex 56 57 58 Kernel Symbols 59 -------------- 60 61 PHYS_OFFSET 62 Physical start address of the first ba 63 64 PAGE_OFFSET 65 Virtual start address of the first ban 66 boot phase, virtual address PAGE_OFFSE 67 address PHYS_OFFSET, along with any ot 68 This should be the same value as TASK_ 69 70 TASK_SIZE 71 The maximum size of a user process in 72 always starts at zero, this is the max 73 process can access+1. The user space 74 address. 75 76 Any virtual address below TASK_SIZE is 77 area, and therefore managed dynamicall 78 basis by the kernel. I'll call this t 79 80 Anything above TASK_SIZE is common to 81 this the kernel segment. 82 83 (In other words, you can't put IO mapp 84 hence PAGE_OFFSET). 85 86 TEXTADDR 87 Virtual start address of kernel, norma 88 This is where the kernel image ends up 89 it must be located at 32768 bytes into 90 kernels placed a restriction of 256MB 91 92 DATAADDR 93 Virtual address for the kernel data se 94 when using the decompressor. 95 96 VMALLOC_START / VMALLOC_END 97 Virtual addresses bounding the vmalloc 98 any static mappings in this area; vmal 99 The addresses must also be in the kern 100 Normally, the vmalloc() area starts VM 101 last virtual RAM address (found using 102 103 VMALLOC_OFFSET 104 Offset normally incorporated into VMAL 105 between virtual RAM and the vmalloc ar 106 out of bounds memory accesses (eg, som 107 of the mapped memory map) to be caught 108 109 Architecture Specific Macros 110 ---------------------------- 111 112 BOOT_MEM(pram,pio,vio) 113 `pram` specifies the physical start ad 114 be present, and should be the same as 115 116 `pio` is the physical address of an 8M 117 use with the debugging macros in arch/ 118 119 `vio` is the virtual address of the 8M 120 121 It is expected that the debugging regi 122 by the architecture specific code late 123 MAPIO function). 124 125 BOOT_PARAMS 126 Same as, and see PARAMS_PHYS. 127 128 FIXUP(func) 129 Machine specific fixups, run before me 130 initialised. 131 132 MAPIO(func) 133 Machine specific function to map IO ar 134 region above). 135 136 INITIRQ(func) 137 Machine specific function to initialis
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.