• Home
  • Raw
  • Download

Lines Matching +full:0 +full:x90000

28 Protocol 2.02	(Kernel 2.4.0-test3-pre3) New command line protocol.
99 0A0000 +------------------------+
121 0x100000 ("high memory"), and the kernel real-mode block (boot sector,
123 0x10000 and end of low memory. Unfortunately, in protocols 2.00 and
124 2.01 the 0x90000+ memory range is still used internally by the kernel;
139 0x90000 segment, the boot loader should make sure not to use memory
140 above the 0x9A000 point; too many BIOSes will break above that point.
149 0A0000 +------------------------+
180 following header at offset 0x01f1. The real-mode code can total up to
195 01FE/2 ALL boot_flag 0xAA55 magic number
200 020C/2 2.00+ start_sys_seg The load-low segment (0x1000) (obsolete)
232 (1) For backwards compatibility, if the setup_sects field contains 0, the
241 If the "HdrS" (0x53726448) magic number is not found at offset 0x202,
247 Real-mode kernel must be located at 0x90000.
250 e.g. protocol version 2.01 will contain 0x0201 in this field. When
273 Offset/size: 0x1f1/1
278 0, the real value is 4. The real-mode code consists of the boot
284 Offset/size: 0x1f2/2
295 Offset/size: 0x1f4/4 (protocol 2.04+) 0x1f4/2 (protocol ALL)
307 Offset/size: 0x1f8/2
316 Offset/size: 0x1fa/2
324 Offset/size: 0x1fc/2
334 Offset/size: 0x1fe/2
338 Contains 0xAA55. This is the closest thing old Linux kernels have
344 Offset/size: 0x200/2
348 Contains an x86 jump instruction, 0xEB followed by a signed offset
349 relative to byte 0x202. This can be used to determine the size of
355 Offset/size: 0x202/4
359 Contains the magic number "HdrS" (0x53726448).
364 Offset/size: 0x206/2
369 e.g. 0x0204 for version 2.04, and 0x0a11 for a hypothetical version
375 Offset/size: 0x208/4
384 Offset/size: 0x20c/2
388 The load low segment (0x1000). Obsolete.
393 Offset/size: 0x20e/2
398 human-readable kernel version number string, less 0x200. This can
400 should be less than (0x200*setup_sects).
402 For example, if this value is set to 0x1c00, the kernel version
403 number string can be found at offset 0x1e00 in the kernel file.
407 0x1c00 < 15*0x200 (= 0x1e00) but
408 0x1c00 >= 14*0x200 (= 0x1c00)
410 0x1c00 >> 9 = 14, So the minimum value for setup_secs is 15.
415 Offset/size: 0x210/1
420 0xTV here, where T is an identifier for the boot loader and V is
421 a version number. Otherwise, enter 0xFF here.
423 For boot loader IDs above T = 0xD, write T = 0xE to this field and
424 write the extended ID minus 0x10 to the ext_loader_type field.
428 For example, for T = 0x15, V = 0x234, write::
430 type_of_loader <- 0xE4
431 ext_loader_type <- 0x05
432 ext_loader_ver <- 0x23
437 0 LILO
438 (0x00 reserved for pre-2.00 bootloader)
441 (0x20, all other values reserved)
453 F Special (0xFF = undefined)
465 Offset/size: 0x211/1
471 Bit 0 (read): LOADED_HIGH
473 - If 0, the protected-mode code is loaded at 0x10000.
474 - If 1, the protected-mode code is loaded at 0x100000.
482 - If 0, KASLR disabled.
486 - If 0, print early messages.
509 Offset/size: 0x212/2
514 loaded at 0x90000, it gets moved there later in the loading
522 if the real-mode code is loaded at 0x90000.
527 Offset/size: 0x214/4
546 Offset/size: 0x218/4
556 Offset/size: 0x21c/4
566 Offset/size: 0x220/4
575 Offset/size: 0x224/2
580 code) of the end of the setup stack/heap, minus 0x0200.
585 Offset/size: 0x226/1
591 (type_of_loader & 0x0f) + (ext_loader_ver << 4).
601 Type: write (obligatory if (type_of_loader & 0xf0) == 0xe0)
602 Offset/size: 0x227/1
607 type_of_loader field. If the type in type_of_loader is 0xE, then
608 the actual type is (ext_loader_type + 0x10).
610 This field is ignored if the type in type_of_loader is not 0xE.
618 Offset/size: 0x228/4
624 the setup heap and 0xA0000; it does not have to be located in the
636 Offset/size: 0x22c/4
642 field is not present, and the maximum address is 0x37FFFFFF. (This
645 0x37FFFFFF, you can start your ramdisk at 0x37FE0000.)
650 Offset/size: 0x230/4
667 Offset/size: 0x234/1
679 Offset/size: 0x235/1
697 Offset/size: 0x236/2
703 Bit 0 (read): XLF_KERNEL_64
705 - If 1, this kernel has the legacy 64-bit entry point at 0x200.
719 given at handover_offset + 0x200.
729 Offset/size: 0x238/4
741 Offset/size: 0x23c/4
753 0x00000000 The default x86/PC environment
754 0x00000001 lguest
755 0x00000002 Xen
756 0x00000003 Moorestown MID
757 0x00000004 CE4100 TV Platform
763 Offset/size: 0x240/8
774 Offset/size: 0x248/4
792 Offset/size: 0x24c/4
801 Offset/size: 0x250/8
814 u8 data[0];
818 linked list, the next field of the last node is 0; the type is used
852 __u64 next = 0 or <addr_of_next_setup_data_struct>;
857 __u32 reserved = 0;
871 Offset/size: 0x258/8
885 Offset/size: 0x260/4
905 Offset/size: 0x264/4
917 Offset/size: 0x268/4
970 .long 0x01234567 /* Some fixed size data for the bootloaders. */
976 .long 0x89012345
990 without \0 at the end of the string, which does not collide with
999 Offset/size: 0x0000/4
1002 Contains the magic number "LToP" (0x506f544c).
1006 Offset/size: 0x0004/4
1016 Offset/size: 0x0008/4
1024 Offset/size: 0x000c/4
1034 the entire file using the characteristic polynomial 0x04C11DB7 and an
1035 initial remainder of 0xffffffff. The checksum is appended to the
1037 syssize field of the header is always 0.
1056 heap and 0xA0000.
1061 - At offset 0x0020 (word), "cmd_line_magic", enter the magic
1062 number 0xA33F.
1064 - At offset 0x0022 (word), "cmd_line_offset", enter the offset
1084 Unfortunately, under the following circumstances the 0x90000 memory
1087 - When loading a zImage kernel ((loadflags & 0x01) == 0).
1093 relocated to 0x90000. For the "old" protocol, the
1094 real-mode code must be loaded at 0x90000.
1096 When loading at 0x90000, avoid using memory above 0x9a000.
1113 When loading below 0x90000, use the entire segment:
1116 0x0000-0x7fff Real mode kernel
1117 0x8000-0xdfff Stack and heap
1118 0xe000-0xffff Kernel command line
1121 When loading at 0x90000 OR the protocol version is 2.01 or earlier:
1124 0x0000-0x7fff Real mode kernel
1125 0x8000-0x97ff Stack and heap
1126 0x9800-0x9fff Kernel command line
1133 if ( setup_sects == 0 ) {
1137 if ( protocol >= 0x0200 ) {
1144 if ( protocol >= 0x0202 && loadflags & 0x01 )
1145 heap_end = 0xe000;
1147 heap_end = 0x9800;
1149 if ( protocol >= 0x0201 ) {
1150 heap_end_ptr = heap_end - 0x200;
1151 loadflags |= 0x80; /* CAN_USE_HEAP */
1154 if ( protocol >= 0x0202 ) {
1158 cmd_line_magic = 0xA33F;
1166 heap_end = 0x9800;
1168 cmd_line_magic = 0xA33F;
1172 loaded at 0x90000 */
1174 if ( base_ptr != 0x90000 ) {
1176 memcpy(0x90000, base_ptr, (setup_sects+1)*512);
1177 base_ptr = 0x90000; /* Relocated */
1180 strcpy(0x90000+cmd_line_offset, cmdline);
1183 memset(0x90000 + (setup_sects+1)*512, 0,
1192 in the kernel file (again, if setup_sects == 0 the real value is 4.)
1193 It should be loaded at address 0x10000 for Image/zImage kernels and
1194 0x100000 for bzImage kernels.
1196 The kernel is a bzImage kernel if the protocol >= 2.00 and the 0x01
1199 is_bzImage = (protocol >= 0x0200) && (loadflags & 0x01);
1200 load_address = is_bzImage ? 0x100000 : 0x10000;
1203 the entire 0x10000-0x90000 range of memory. This means it is pretty
1205 0x90000. bzImage kernels allow much more flexibility.
1222 "normal" (meaning 0xFFFF), "ext" (meaning 0xFFFE) or "ask"
1223 (meaning 0xFFFD). This value should be entered into the
1261 located at *segment* offset 0x20 from the start of the real mode
1263 0x90000, the kernel entry point is 9020:0000.
1266 kernel code (0x9000 if the code is loaded at 0x90000), sp should be
1275 be == 0x90000 at this point; see the previous sample code */
1286 jmp_far(seg+0x20, 0); /* Run the kernel */
1318 set them up to BOOT_DS (0x18) yourself.
1337 from offset 0x01f1 of kernel image on should be loaded into struct
1341 0x0202 + byte value at offset 0x0201
1357 __BOOT_CS(0x10) and __BOOT_DS(0x18); both descriptors must be 4G flat
1373 Then, the setup header at offset 0x01f1 of kernel image on should be
1377 0x0202 + byte value at offset 0x0201
1390 64-bit kernel plus 0x200.
1396 __BOOT_CS(0x10) and __BOOT_DS(0x18); both descriptors must be 4G flat
1436 loading protocol (refer to [0] for an example of the bootloader side of
1442 [0] https://github.com/u-boot/u-boot/commit/ec80b4735a593961fe701cc3a5d717d4739b0fd0