/[gentoo]/xml/htdocs/doc/en/handbook/hb-install-ppc64-kernel.xml
Gentoo

Contents of /xml/htdocs/doc/en/handbook/hb-install-ppc64-kernel.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.41 - (show annotations) (download) (as text)
Sat Apr 6 08:24:16 2013 UTC (5 years, 2 months ago) by swift
Branch: MAIN
Changes since 1.40: +6 -5 lines
File MIME type: application/xml
Fix bug #463469 - Mention that built-in file system support is only needed for root file system

1 <?xml version='1.0' encoding='UTF-8'?>
2 <!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
4 <!-- The content of this document is licensed under the CC-BY-SA license -->
5 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6
7 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-ppc64-kernel.xml,v 1.40 2013/04/06 08:09:20 swift Exp $ -->
8
9 <sections>
10
11 <abstract>
12 The Linux kernel is the core of every distribution. This chapter
13 explains how to configure your kernel.
14 </abstract>
15
16 <version>14</version>
17 <date>2013-04-06</date>
18
19 <section>
20 <title>Installing the Sources</title>
21 <subsection>
22 <title>Choosing a Kernel</title>
23 <body>
24
25 <p>
26 The core around which all distributions are built is the Linux kernel. It is the
27 layer between the user programs and your system hardware. Gentoo provides its
28 users several possible kernel sources. A full listing with description is
29 available at the <uri link="/doc/en/gentoo-kernel.xml">Gentoo Kernel
30 Guide</uri>.
31 </p>
32
33 <p>
34 For <keyval id="arch"/>-based systems we have <c>gentoo-sources</c>
35 (kernel source patched for extra features).
36 </p>
37
38 <p>
39 Choose your kernel source and install it using <c>emerge</c>.
40 </p>
41
42 <pre caption="Installing a kernel source">
43 # <i>emerge gentoo-sources</i>
44 </pre>
45
46 <p>
47 When you take a look in <path>/usr/src</path> you should see a symlink called
48 <path>linux</path> pointing to your kernel source. In this case, the installed
49 kernel source points to <c>gentoo-sources-<keyval id="kernel-version"/></c>.
50 Your version may be different, so keep this in mind.
51 </p>
52
53 <pre caption="Viewing the kernel source symlink">
54 # <i>ls -l /usr/src/linux</i>
55 lrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux -&gt; linux-<keyval id="kernel-version"/>
56 </pre>
57
58 <p>
59 Now it is time to configure and compile your kernel source. There is the ability
60 to use <c>genkernel</c> which would create a generic kernel like the ones used
61 on the installation CDs, but it is not fully functional for PPC64 at the
62 moment.
63 </p>
64
65 <p>
66 Continue now with <uri link="#manual">Manual Configuration</uri>.
67 </p>
68
69 </body>
70 </subsection>
71 </section>
72 <section id="manual">
73 <title>Manual Configuration</title>
74 <subsection>
75 <title>Introduction</title>
76 <body>
77
78 <p>
79 Manually configuring a kernel is often seen as the most difficult procedure a
80 Linux user ever has to perform. Nothing is less true -- after configuring a
81 couple of kernels you don't even remember that it was difficult ;)
82 </p>
83
84 <p>
85 However, one thing <e>is</e> true: you must know your system when you
86 configuring a kernel manually. Most information can be gathered by emerging
87 pciutils (<c>emerge pciutils</c>) which contains <c>lspci</c>. You will now
88 be able to use <c>lspci</c> within the chrooted environment. You may safely
89 ignore any <e>pcilib</e> warnings (like pcilib: cannot open
90 /sys/bus/pci/devices) that <c>lspci</c> throws out. Alternatively, you can run
91 <c>lspci</c> from a <e>non-chrooted</e> environment. The results are the same.
92 You can also run <c>lsmod</c> to see what kernel modules the Installation CD
93 uses (it might provide you with a nice hint on what to enable).
94 </p>
95
96 <pre caption="Invoking menuconfig">
97 # <i>cd /usr/src/linux</i>
98 <comment>Important: In case you are in 32-bit userland, you must edit the top
99 level Makefile in /usr/src/linux and change the CROSS_COMPILE option to
100 CROSS_COMPILE ?= powerpc64-unknown-linux-gnu-. You must do this before you run
101 make menuconfig or it may result in kernel compilation problems.</comment>
102 # <i>make menuconfig</i>
103 </pre>
104
105 <p>
106 You will be greeted with several configuration sections. We'll first list some
107 options you must activate (otherwise Gentoo will not function, or not function
108 properly without additional tweaks).
109 </p>
110
111 </body>
112 </subsection>
113 <subsection>
114 <title>Activating Required Options</title>
115 <body>
116
117 <p>
118 First go to <c>File Systems</c> and select support for the filesystems you use.
119 <e>Don't</e> compile the file system you use for the root filesystem as module,
120 otherwise your Gentoo system will not be able to mount your partition. Also
121 select <c>Virtual memory</c>, <c>/proc file system</c> and <c>/dev/pts file
122 system for Unix98 PTYs</c>:
123 </p>
124
125 <pre caption="Selecting necessary file systems">
126 File systems ---&gt;
127 [*] Virtual memory file system support (former shm fs)
128 [*] /proc file system support
129 [*] /dev/pts file system for Unix98 PTYs
130
131 <comment>(Select one or more of the following options as needed by your system)</comment>
132 &lt;*&gt; Reiserfs support
133 &lt;*&gt; Ext3 journalling file system support
134 &lt;*&gt; JFS filesystem support
135 &lt;*&gt; Second extended fs support
136 &lt;*&gt; XFS filesystem support
137 </pre>
138
139 <note>
140 You will find some of the mentioned options under <c>Pseudo
141 filesystems</c> which is a subpart of <c>File systems</c>.
142 </note>
143
144 <p>
145 If you are using PPPoE to connect to the Internet or you are using a
146 dial-up modem, you will need the following options in the kernel (you
147 will find the mentioned options under <c>Networking support</c> which is
148 a subpart of <c>Device Drivers</c>):
149 </p>
150
151 <pre caption="Selecting PPPoE necessary drivers">
152 Network device support ---&gt;
153 &lt;*&gt; PPP (point-to-point protocol) support
154 &lt;*&gt; PPP support for async serial ports
155 &lt;*&gt; PPP support for sync tty ports
156 </pre>
157
158 <p>
159 The two compression options won't harm but are not definitely needed, neither
160 does the <c>PPP over Ethernet</c> option, that might only be used by <c>ppp</c>
161 when configured to do kernel mode PPPoE.
162 </p>
163
164 <p>
165 If you require it, don't forget to include support in the kernel for your
166 ethernet card.
167 </p>
168
169 <p>
170 Next select <e>Maintain a devtmpfs file system to mount at /dev</e> so that
171 critical device files are already available early in the boot process.
172 </p>
173
174 <pre caption="Enabling devtmpfs support">
175 Device Drivers ---&gt;
176 Generic Driver Options ---&gt;
177 [*] Maintain a devtmpfs filesystem to mount at /dev
178 [ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs
179 </pre>
180
181 <p>
182 When you're done configuring your kernel, continue with <uri
183 link="#compiling">Compiling and Installing</uri>.
184 </p>
185
186 </body>
187 </subsection>
188 <subsection id="compiling">
189 <title>Compiling and Installing</title>
190 <body>
191
192 <p>
193 Now that your kernel is configured, it is time to compile and install it. Exit
194 the configuration and start the compilation process:
195 </p>
196
197 <pre caption="Compiling the kernel">
198 (Apple/IBM) # <i>make &amp;&amp; make modules_install</i>
199 </pre>
200
201 <p>
202 When the kernel has finished compiling, copy the kernel image to
203 <path>/boot</path>.
204 </p>
205
206 <pre caption="Installing the kernel">
207 (Apple/IBM) # <i>cp vmlinux /boot/<keyval id="kernel-name"/></i>
208 </pre>
209
210 <p>
211 Now continue with <uri link="#kernel_modules">Kernel Modules</uri>.
212 </p>
213
214 </body>
215 </subsection>
216 </section>
217 <section id="kernel_modules">
218 <title>Kernel Modules</title>
219
220 <subsection>
221 <include href="hb-install-kernelmodules.xml"/>
222 </subsection>
223
224 </section>
225 </sections>

  ViewVC Help
Powered by ViewVC 1.1.20