kernconf.5: Add info on 64-bit kernels & improve markup
[dragonfly.git] / share / man / man5 / kernconf.5
CommitLineData
ec68fed6
SW
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.\"
da3476f4 32.\" $DragonFly: src/share/man/man5/kernconf.5,v 1.8 2008/07/16 01:02:07 thomas Exp $
ec68fed6 33.\"
7a41bcb1 34.Dd September 28, 2009
ec68fed6
SW
35.Os
36.Dt KERNCONF 5
37.Sh NAME
38.Nm kernconf
39.Nd kernel configuration file
40.Sh SYNOPSIS
41.Cd cpu ...
42.Cd device ...
43.Cd ident ...
44.Cd machine ...
45.Cd machine-arch ...
46.Cd makeoptions ...
47.Cd maxusers ...
48.Cd options ...
49.Cd platform ...
50.Cd pseudo-device ...
51.Sh DESCRIPTION
52This manual page describes the structure of the kernel configuration file.
b770eafb
SW
53It is processed by
54.Xr config 8
55to create a build environment where a kernel may be built using
56.Xr make 1 .
57See
58.Xr build 7
59for information on how to build kernels.
60.Pp
61Each line starts with a keyword at the beginning of the line and is
62followed by additional parameters.
63Long input lines may be broken into shorter lines by starting the
64second and subsequent lines with a white space character.
65Numbers are specified using
66.Tn C Ns -style
67syntax.
ec68fed6
SW
68Blank lines are ignored.
69The
70.Sq #
71character is interpreted as a comment and is ignored along with everything
72that follows it on the same line.
ec68fed6
SW
73.Sh KEYWORDS
74The following keywords are recognized in a configuration file:
cb4679fc
SW
75.Pp
76.Bl -tag -width indent -compact
ec68fed6
SW
77.It Sy cpu Xo
78.Ar name
79.Xc
80This system is to run on the CPU type
81.Ar name .
7a41bcb1
TN
82Legal types are, for
83.Sy i386 :
ec68fed6
SW
84.Sy I486_CPU
85(i486),
86.Sy I586_CPU
87.Tn ( Pentium ) ,
88and
89.Sy I686_CPU
7a41bcb1
TN
90.Tn ( Pentium Pro ) ;
91for
92.Sy amd64 :
93.Sy HAMMER_CPU
94.Tn ( x86-64 ) .
ec68fed6 95More than one CPU type specification can appear in a configuration file.
cb4679fc 96.Pp
ec68fed6
SW
97.It Sy device Xo
98.Ar name
7a41bcb1
TN
99.Op Sy at Ar bus
100.Op Sy port Ar num
101.Op Sy irq Ar num
102.Op Sy drq Ar num
103.Op Sy iomem Ar num
104.Op Sy iosiz Ar num
105.Op Sy flags Ar num
ec68fed6
SW
106.Xc
107Configures support for device
108.Ar name .
7a41bcb1
TN
109Additional parameters may be passed to specify
110.Tm I/O
111configuration settings (most often for
b770eafb
SW
112.Xr isa 4
113devices):
7a41bcb1
TN
114.Bl -tag -width ".Sy iomem"
115.It Sy at
b770eafb 116specifies a bus to which the device is attached.
7a41bcb1
TN
117.It Sy port
118specifies the start address of
119.Tm I/O
120ports to be used by the device.
121.It Sy irq
b770eafb 122specifies the number of ports used by the device.
7a41bcb1 123.It Sy drq
b770eafb 124is the interrupt line number to be used.
7a41bcb1 125.It Sy iomem
b770eafb 126specifies the physical memory address used by the device.
7a41bcb1 127.It Sy iosiz
b770eafb 128specifies the physical memory size used by the device.
7a41bcb1 129.It Sy flags
b770eafb
SW
130sets various flag bits for the device.
131.El
cb4679fc 132.Pp
ec68fed6
SW
133.It Sy ident Xo
134.Ar string
135.Xc
136Sets the kernel identification string to
137.Ar string .
cb4679fc 138.Pp
ec68fed6
SW
139.It Sy machine Xo
140.Ar name
141.Xc
142The system is to run on the machine type
143.Ar name .
7a41bcb1
TN
144This is a legacy keyword, it is normally set to same value as
145.Sy machine_arch .
cb4679fc 146.Pp
ec68fed6
SW
147.It Sy machine_arch Xo
148.Ar name
149.Xc
150The system is to run on the machine architecture
151.Ar name .
7a41bcb1
TN
152The legal architectures are
153.Sy i386 ,
154and
155.Sy amd64 .
cb4679fc 156.Pp
ec68fed6 157.It Sy makeoptions Xo
7a41bcb1 158.Ar name Ns Sy = Ns Ar value
ec68fed6
SW
159.Xc
160Defines a
161.Xr make 1
162macro
163.Ar name
164with the value
165.Ar value
166in the kernel Makefile.
cb4679fc 167.Pp
ec68fed6
SW
168.It Sy maxusers Xo
169.Ar integer
170.Xc
171Set the
172.Va maxusers
173variable in the kernel.
cb4679fc 174.Pp
ec68fed6 175.It Sy options Xo
7a41bcb1 176.Ar name Ns Op Sy = Ns Ar value
ec68fed6
SW
177.Xc
178Sets the option
179.Ar name .
180Some options expect to be assigned a value, which may be an integer,
181a double-quoted word, a bare word, or an empty string
182.Pq Qq .
183Note that those are eventually handled by the C compiler, so the rules
184of that language apply.
185.\"For more information see the
186.\".Sx OPTIONS
187.\"section.
cb4679fc 188.Pp
ec68fed6
SW
189.It Sy platform Xo
190.Ar name
191.Xc
192Sets the platform of this kernel to
193.Ar name .
194Legal platforms are
8aa83500
SW
195.Sy pc32 ,
196.Sy pc64 ,
ec68fed6 197and
1e5c9a8f 198.Sy vkernel ,
ec68fed6
SW
199meaning either a 32 bit
200.Tn Intel
8aa83500
SW
201architecture, a 64 bit
202.Tn AMD
203architecture, or a virtual kernel.
cb4679fc 204.Pp
ec68fed6
SW
205.It Sy pseudo-device Xo
206.Ar name
207.Op Ar N
208.Xc
209Includes support for the pseudo-device
210.Ar name .
211Some pseudo-devices can have multiple or
212.Ar N
213instances.
214.El
215.\".Sh OPTIONS
15279048 216.Sh FILES
7a41bcb1 217.Bl -tag -width ".Pa /sys/config/AMD64_GENERIC"
15279048
TN
218.It Pa /sys/config/LINT
219description of kernel configuration options
7a41bcb1
TN
220.It Pa /sys/config/AMD64_GENERIC
221default
222.Sy amd64
223kernel configuration file
15279048 224.It Pa /sys/config/GENERIC
7a41bcb1
TN
225default
226.Sy i386
227kernel configuration file
da3476f4
TN
228.It Pa /sys/config/VKERNEL
229default
230.Xr vkernel 7
231kernel configuration file
15279048 232.El
ec68fed6 233.Sh SEE ALSO
7a41bcb1 234.Xr make 1 ,
ec68fed6
SW
235.Xr build 7 ,
236.Xr vkernel 7 ,
237.Xr config 8
238.Sh HISTORY
239The
240.Nm
241manual page first appeared in
242.Dx 1.11 .