/[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.43 - (hide annotations) (download) (as text)
Sun May 11 07:26:10 2014 UTC (4 years, 2 months ago) by swift
Branch: MAIN
CVS Tags: HEAD
Changes since 1.42: +6 -4 lines
File MIME type: application/xml
Add link to kernel configuration guide on the wiki as per suggestion on #gentoo-doc by micsha

1 swift 1.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 neysx 1.16 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6 swift 1.1
7 swift 1.43 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-ppc64-kernel.xml,v 1.42 2013/12/17 10:38:05 swift Exp $ -->
8 swift 1.1
9     <sections>
10 swift 1.4
11 nightmorph 1.37 <abstract>
12     The Linux kernel is the core of every distribution. This chapter
13     explains how to configure your kernel.
14     </abstract>
15    
16 swift 1.43 <version>16</version>
17     <date>2014-05-11</date>
18 swift 1.4
19 swift 1.1 <section>
20     <title>Installing the Sources</title>
21     <subsection>
22     <title>Choosing a Kernel</title>
23     <body>
24    
25     <p>
26 nightmorph 1.37 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 swift 1.42 available at the <uri link="https://wiki.gentoo.org/wiki/Kernel/Overview">Gentoo Kernel
30 nightmorph 1.37 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 swift 1.1 </p>
37    
38     <p>
39 nightmorph 1.37 Choose your kernel source and install it using <c>emerge</c>.
40 swift 1.1 </p>
41    
42     <pre caption="Installing a kernel source">
43 nightmorph 1.26 # <i>emerge gentoo-sources</i>
44 swift 1.1 </pre>
45    
46     <p>
47 neysx 1.22 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 nightmorph 1.27 kernel source points to <c>gentoo-sources-<keyval id="kernel-version"/></c>.
50     Your version may be different, so keep this in mind.
51 swift 1.1 </p>
52    
53     <pre caption="Viewing the kernel source symlink">
54     # <i>ls -l /usr/src/linux</i>
55 nightmorph 1.27 lrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux -&gt; linux-<keyval id="kernel-version"/>
56 swift 1.1 </pre>
57    
58     <p>
59 nightmorph 1.37 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 swift 1.1 </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 neysx 1.2 Manually configuring a kernel is often seen as the most difficult procedure a
80 neysx 1.3 Linux user ever has to perform. Nothing is less true -- after configuring a
81 neysx 1.2 couple of kernels you don't even remember that it was difficult ;)
82 swift 1.1 </p>
83    
84     <p>
85     However, one thing <e>is</e> true: you must know your system when you
86 swift 1.13 configuring a kernel manually. Most information can be gathered by emerging
87 swift 1.14 pciutils (<c>emerge pciutils</c>) which contains <c>lspci</c>. You will now
88 swift 1.13 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 swift 1.14 <c>lspci</c> from a <e>non-chrooted</e> environment. The results are the same.
92 swift 1.13 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 swift 1.1 </p>
95    
96     <pre caption="Invoking menuconfig">
97     # <i>cd /usr/src/linux</i>
98 fox2mike 1.23 <comment>Important: In case you are in 32-bit userland, you must edit the top
99 nightmorph 1.27 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 fox2mike 1.23 make menuconfig or it may result in kernel compilation problems.</comment>
102 swift 1.1 # <i>make menuconfig</i>
103     </pre>
104    
105     <p>
106 nightmorph 1.37 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 swift 1.43 properly without additional tweaks). We also have a <uri
109     link="https://wiki.gentoo.org/wiki/Kernel/Gentoo_Kernel_Configuration_Guide">Gentoo
110     Kernel Configuration Guide</uri> on the Gentoo wiki that might help you further.
111 swift 1.1 </p>
112    
113     </body>
114     </subsection>
115     <subsection>
116     <title>Activating Required Options</title>
117     <body>
118    
119     <p>
120 nightmorph 1.35 First go to <c>File Systems</c> and select support for the filesystems you use.
121 swift 1.41 <e>Don't</e> compile the file system you use for the root filesystem as module,
122     otherwise your Gentoo system will not be able to mount your partition. Also
123     select <c>Virtual memory</c>, <c>/proc file system</c> and <c>/dev/pts file
124     system for Unix98 PTYs</c>:
125 swift 1.1 </p>
126    
127     <pre caption="Selecting necessary file systems">
128     File systems ---&gt;
129     [*] Virtual memory file system support (former shm fs)
130     [*] /proc file system support
131     [*] /dev/pts file system for Unix98 PTYs
132    
133     <comment>(Select one or more of the following options as needed by your system)</comment>
134     &lt;*&gt; Reiserfs support
135     &lt;*&gt; Ext3 journalling file system support
136     &lt;*&gt; JFS filesystem support
137     &lt;*&gt; Second extended fs support
138     &lt;*&gt; XFS filesystem support
139     </pre>
140    
141     <note>
142     You will find some of the mentioned options under <c>Pseudo
143     filesystems</c> which is a subpart of <c>File systems</c>.
144     </note>
145    
146     <p>
147     If you are using PPPoE to connect to the Internet or you are using a
148     dial-up modem, you will need the following options in the kernel (you
149     will find the mentioned options under <c>Networking support</c> which is
150     a subpart of <c>Device Drivers</c>):
151     </p>
152    
153     <pre caption="Selecting PPPoE necessary drivers">
154     Network device support ---&gt;
155     &lt;*&gt; PPP (point-to-point protocol) support
156     &lt;*&gt; PPP support for async serial ports
157     &lt;*&gt; PPP support for sync tty ports
158     </pre>
159    
160     <p>
161     The two compression options won't harm but are not definitely needed, neither
162 nightmorph 1.27 does the <c>PPP over Ethernet</c> option, that might only be used by <c>ppp</c>
163     when configured to do kernel mode PPPoE.
164 swift 1.1 </p>
165    
166     <p>
167     If you require it, don't forget to include support in the kernel for your
168     ethernet card.
169     </p>
170    
171     <p>
172 swift 1.40 Next select <e>Maintain a devtmpfs file system to mount at /dev</e> so that
173     critical device files are already available early in the boot process.
174     </p>
175    
176     <pre caption="Enabling devtmpfs support">
177     Device Drivers ---&gt;
178     Generic Driver Options ---&gt;
179     [*] Maintain a devtmpfs filesystem to mount at /dev
180     [ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs
181     </pre>
182    
183     <p>
184 swift 1.1 When you're done configuring your kernel, continue with <uri
185     link="#compiling">Compiling and Installing</uri>.
186     </p>
187    
188     </body>
189     </subsection>
190     <subsection id="compiling">
191     <title>Compiling and Installing</title>
192     <body>
193    
194     <p>
195     Now that your kernel is configured, it is time to compile and install it. Exit
196 swift 1.9 the configuration and start the compilation process:
197 swift 1.1 </p>
198    
199     <pre caption="Compiling the kernel">
200     (Apple/IBM) # <i>make &amp;&amp; make modules_install</i>
201     </pre>
202    
203     <p>
204 neysx 1.2 When the kernel has finished compiling, copy the kernel image to
205 nightmorph 1.37 <path>/boot</path>.
206 swift 1.1 </p>
207    
208     <pre caption="Installing the kernel">
209 nightmorph 1.37 (Apple/IBM) # <i>cp vmlinux /boot/<keyval id="kernel-name"/></i>
210 swift 1.1 </pre>
211    
212     <p>
213 nightmorph 1.35 Now continue with <uri link="#kernel_modules">Kernel Modules</uri>.
214 swift 1.1 </p>
215    
216     </body>
217     </subsection>
218     </section>
219     <section id="kernel_modules">
220 nightmorph 1.35 <title>Kernel Modules</title>
221 swift 1.1
222 nightmorph 1.35 <subsection>
223     <include href="hb-install-kernelmodules.xml"/>
224     </subsection>
225 swift 1.1
226     </section>
227     </sections>

  ViewVC Help
Powered by ViewVC 1.1.20