Based on kernel version 4.16.1. Page generated on 2018-04-09 11:52 EST.
1 Kernel initialisation parameters on ARM Linux 2 --------------------------------------------- 3 4 The following document describes the kernel initialisation parameter 5 structure, otherwise known as 'struct param_struct' which is used 6 for most ARM Linux architectures. 7 8 This structure is used to pass initialisation parameters from the 9 kernel loader to the Linux kernel proper, and may be short lived 10 through the kernel initialisation process. As a general rule, it 11 should not be referenced outside of arch/arm/kernel/setup.c:setup_arch(). 12 13 There are a lot of parameters listed in there, and they are described 14 below: 15 16 page_size 17 18 This parameter must be set to the page size of the machine, and 19 will be checked by the kernel. 20 21 nr_pages 22 23 This is the total number of pages of memory in the system. If 24 the memory is banked, then this should contain the total number 25 of pages in the system. 26 27 If the system contains separate VRAM, this value should not 28 include this information. 29 30 ramdisk_size 31 32 This is now obsolete, and should not be used. 33 34 flags 35 36 Various kernel flags, including: 37 bit 0 - 1 = mount root read only 38 bit 1 - unused 39 bit 2 - 0 = load ramdisk 40 bit 3 - 0 = prompt for ramdisk 41 42 rootdev 43 44 major/minor number pair of device to mount as the root filesystem. 45 46 video_num_cols 47 video_num_rows 48 49 These two together describe the character size of the dummy console, 50 or VGA console character size. They should not be used for any other 51 purpose. 52 53 It's generally a good idea to set these to be either standard VGA, or 54 the equivalent character size of your fbcon display. This then allows 55 all the bootup messages to be displayed correctly. 56 57 video_x 58 video_y 59 60 This describes the character position of cursor on VGA console, and 61 is otherwise unused. (should not be used for other console types, and 62 should not be used for other purposes). 63 64 memc_control_reg 65 66 MEMC chip control register for Acorn Archimedes and Acorn A5000 67 based machines. May be used differently by different architectures. 68 69 sounddefault 70 71 Default sound setting on Acorn machines. May be used differently by 72 different architectures. 73 74 adfsdrives 75 76 Number of ADFS/MFM disks. May be used differently by different 77 architectures. 78 79 bytes_per_char_h 80 bytes_per_char_v 81 82 These are now obsolete, and should not be used. 83 84 pages_in_bank[4] 85 86 Number of pages in each bank of the systems memory (used for RiscPC). 87 This is intended to be used on systems where the physical memory 88 is non-contiguous from the processors point of view. 89 90 pages_in_vram 91 92 Number of pages in VRAM (used on Acorn RiscPC). This value may also 93 be used by loaders if the size of the video RAM can't be obtained 94 from the hardware. 95 96 initrd_start 97 initrd_size 98 99 This describes the kernel virtual start address and size of the 100 initial ramdisk. 101 102 rd_start 103 104 Start address in sectors of the ramdisk image on a floppy disk. 105 106 system_rev 107 108 system revision number. 109 110 system_serial_low 111 system_serial_high 112 113 system 64-bit serial number 114 115 mem_fclk_21285 116 117 The speed of the external oscillator to the 21285 (footbridge), 118 which control's the speed of the memory bus, timer & serial port. 119 Depending upon the speed of the cpu its value can be between 120 0-66 MHz. If no params are passed or a value of zero is passed, 121 then a value of 50 Mhz is the default on 21285 architectures. 122 123 paths[8][128] 124 125 These are now obsolete, and should not be used. 126 127 commandline 128 129 Kernel command line parameters. Details can be found elsewhere.