1.\" 2.\" Copyright (c) 2007 3.\" The DragonFly Project. All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in 13.\" the documentation and/or other materials provided with the 14.\" distribution. 15.\" 3. Neither the name of The DragonFly Project nor the names of its 16.\" contributors may be used to endorse or promote products derived 17.\" from this software without specific, prior written permission. 18.\" 19.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 22.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 23.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 24.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, 25.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 26.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 27.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 29.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.Dd March 28, 2010 33.Dt KERNCONF 5 34.Os 35.Sh NAME 36.Nm kernconf 37.Nd kernel configuration file 38.Sh SYNOPSIS 39.Cd cpu ... 40.Cd device ... 41.Cd ident ... 42.Cd machine ... 43.Cd machine-arch ... 44.Cd makeoptions ... 45.Cd maxusers ... 46.Cd options ... 47.Cd platform ... 48.Cd pseudo-device ... 49.Sh DESCRIPTION 50This manual page describes the structure of the kernel configuration file. 51It is processed by 52.Xr config 8 53to create a build environment where a kernel may be built using 54.Xr make 1 . 55See 56.Xr build 7 57for information on how to build kernels. 58.Pp 59Each line starts with a keyword at the beginning of the line and is 60followed by additional parameters. 61Long input lines may be broken into shorter lines by starting the 62second and subsequent lines with a white space character. 63Numbers are specified using 64.Tn C Ns -style 65syntax. 66Blank lines are ignored. 67The 68.Sq # 69character is interpreted as a comment and is ignored along with everything 70that follows it on the same line. 71.Sh KEYWORDS 72The following keywords are recognized in a configuration file: 73.Pp 74.Bl -tag -width indent -compact 75.It Sy cpu Ar name 76This system is to run on the CPU type 77.Ar name . 78Legal types are, for 79.Sy i386 : 80.Sy I486_CPU 81(i486), 82.Sy I586_CPU 83.Tn ( Pentium ) , 84and 85.Sy I686_CPU 86.Tn ( Pentium Pro ) ; 87for 88.Sy x86_64 : 89.Sy HAMMER_CPU 90.Tn ( x86-64 ) . 91More than one CPU type specification can appear in a configuration file. 92.Pp 93.It Sy device Ar name \ 94Oo Sy at Ar bus Oc \ 95Oo Sy port Ar num Oc \ 96Oo Sy irq Ar num Oc \ 97Oo Sy drq Ar num Oc \ 98Oo Sy iomem Ar num Oc \ 99Oo Sy iosiz Ar num Oc \ 100Op Sy flags Ar num 101Configures support for device 102.Ar name . 103Additional parameters may be passed to specify 104.Tn I/O 105configuration settings (most often for 106.Xr isa 4 107devices): 108.Bl -tag -width ".Sy iomem" 109.It Sy at 110specifies a bus to which the device is attached. 111.It Sy port 112specifies the start address of 113.Tn I/O 114ports to be used by the device. 115.It Sy irq 116specifies the number of ports used by the device. 117.It Sy drq 118is the interrupt line number to be used. 119.It Sy iomem 120specifies the physical memory address used by the device. 121.It Sy iosiz 122specifies the physical memory size used by the device. 123.It Sy flags 124sets various flag bits for the device. 125.El 126.Pp 127.It Sy ident Ar string 128Sets the kernel identification string to 129.Ar string . 130.Pp 131.It Sy machine Ar name 132The system is to run on the machine type 133.Ar name . 134This is a legacy keyword, it is normally set to same value as 135.Sy machine_arch . 136.Pp 137.It Sy machine_arch Ar name 138The system is to run on the machine architecture 139.Ar name . 140The legal architectures are 141.Sy i386 , 142and 143.Sy x86_64 . 144.Pp 145.It Sy makeoptions Ar name Ns Sy = Ns Ar value 146Defines a 147.Xr make 1 148macro 149.Ar name 150with the value 151.Ar value 152in the kernel Makefile. 153.Pp 154.It Sy maxusers Ar integer 155Set the 156.Va maxusers 157variable in the kernel. 158.Pp 159.It Sy options Ar name Ns Op Sy = Ns Ar value 160Sets the option 161.Ar name . 162Some options expect to be assigned a value, which may be an integer, 163a double-quoted word, a bare word, or an empty string 164.Pq Qq . 165Note that those are eventually handled by the C compiler, so the rules 166of that language apply. 167.\"For more information see the 168.\".Sx OPTIONS 169.\"section. 170.Pp 171.It Sy platform Ar name 172Sets the platform of this kernel to 173.Ar name . 174Legal platforms are 175.Sy pc32 176(32 bit 177.Tn Intel 178architecture), 179.Sy pc64 180(64 bit 181.Tn AMD 182architecture), 183.Sy vkernel 184(32 bit virtual kernel), 185and 186.Sy vkernel64 187(64 bit virtual kernel). 188.Pp 189.It Sy pseudo-device Ar name Op Ar N 190Includes support for the pseudo-device 191.Ar name . 192Some pseudo-devices can have multiple or 193.Ar N 194instances. 195.El 196.\".Sh OPTIONS 197.Sh FILES 198.Bl -tag -width ".Pa /sys/config/X86_64_GENERIC" 199.It Pa /sys/config/GENERIC 200default 201.Sy i386 202kernel configuration file 203.It Pa /sys/config/LINT 204kernel configuration file for checking all the sources, 205includes description of kernel configuration options 206.It Pa /sys/config/SOEKRIS 207kernel configuration file for the 208.Tn Soekris Engineering net5501 209board 210.It Pa /sys/config/VKERNEL 211default 32 bit 212.Xr vkernel 7 213kernel configuration file 214.It Pa /sys/config/VKERNEL64 215default 64 bit 216.Xr vkernel 7 217kernel configuration file 218.It Pa /sys/config/X86_64_GENERIC 219default 220.Sy x86_64 221kernel configuration file 222.El 223.Sh SEE ALSO 224.Xr make 1 , 225.Xr build 7 , 226.Xr vkernel 7 , 227.Xr config 8 228.Sh HISTORY 229The 230.Nm 231manual page first appeared in 232.Dx 1.11 . 233