Gentoo Archives: gentoo-doc-cvs

From: Joshua Saddler <nightmorph@××××××××××××.org>
To: gentoo-doc-cvs@l.g.o
Subject: [gentoo-doc-cvs] cvs commit: alsa-guide.xml
Date: Wed, 05 Mar 2008 09:16:55
Message-Id: E1JWpk1-00044p-MR@stork.gentoo.org
1 nightmorph 08/03/05 09:16:49
2
3 Modified: alsa-guide.xml
4 Log:
5 removed alsa-driver steps from the guide, per bug 183418, bug 207427 and other showstopper/regression bugs, and requests from the alsa & kernel teams. no one maintains or wants to maintain alsa-driver. it is the weakest link.
6
7 Revision Changes Path
8 1.81 xml/htdocs/doc/en/alsa-guide.xml
9
10 file : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/doc/en/alsa-guide.xml?rev=1.81&view=markup
11 plain: http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/doc/en/alsa-guide.xml?rev=1.81&content-type=text/plain
12 diff : http://sources.gentoo.org/viewcvs.py/gentoo/xml/htdocs/doc/en/alsa-guide.xml?r1=1.80&r2=1.81
13
14 Index: alsa-guide.xml
15 ===================================================================
16 RCS file: /var/cvsroot/gentoo/xml/htdocs/doc/en/alsa-guide.xml,v
17 retrieving revision 1.80
18 retrieving revision 1.81
19 diff -u -r1.80 -r1.81
20 --- alsa-guide.xml 19 May 2007 03:00:29 -0000 1.80
21 +++ alsa-guide.xml 5 Mar 2008 09:16:49 -0000 1.81
22 @@ -1,5 +1,5 @@
23 <?xml version='1.0' encoding="UTF-8"?>
24 -<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/alsa-guide.xml,v 1.80 2007/05/19 03:00:29 nightmorph Exp $ -->
25 +<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/alsa-guide.xml,v 1.81 2008/03/05 09:16:49 nightmorph Exp $ -->
26
27 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
28
29 @@ -24,8 +24,8 @@
30 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
31 <license/>
32
33 -<version>2.22</version>
34 -<date>2007-05-07</date>
35 +<version>2.23</version>
36 +<date>2008-03-05</date>
37
38 <chapter>
39 <title>Introduction</title>
40 @@ -56,132 +56,39 @@
41 <body>
42
43 <p>
44 -One of Gentoo's main strengths lies in giving the user maximum control over
45 -how a system is installed/configured. ALSA on Gentoo follows the same
46 -principle. There are two ways you can get ALSA support up and running on your
47 -system. We shall look at them in detail in the next chapter.
48 +Historically, Gentoo offered two ways to get ALSA up and running: the
49 +<e>in-kernel</e> driver and the external <c>alsa-driver</c> package. The two
50 +solutions essentially do the same thing; this made supporting the external
51 +package extremely difficult and time-consuming. The Gentoo maintainers decided
52 +to discontinue support for the <c>alsa-driver</c> package, concentrating their
53 +resources on the ALSA drivers available within the Linux kernel. This guide will
54 +focus solely on configuring ALSA via the in-kernel driver.
55 </p>
56
57 -</body>
58 -</section>
59 -</chapter>
60 -
61 -<chapter>
62 -<title>Installing ALSA</title>
63 -<section>
64 -<title>Options</title>
65 -<body>
66 -
67 -<warn>
68 -The methods shown below are mutually exclusive. You cannot have ALSA compiled
69 -in your kernel and use <c>media-sound/alsa-driver</c>. It <e>will</e> fail.
70 -</warn>
71 -
72 <p>
73 -The two options are:
74 +If you still require the <c>alsa-driver</c> package, please email the <mail
75 +link="alsa-bugs@g.o">Gentoo ALSA maintainers</mail> with why the
76 +in-kernel drivers don't work for you. Be sure to include detailed error logs.
77 </p>
78
79 -<ol>
80 - <li>
81 - Use ALSA provided by your kernel. This is the preferred/recommended method.
82 - </li>
83 - <li>Use Gentoo's <c>media-sound/alsa-driver</c> package.</li>
84 -</ol>
85 -
86 -<p>
87 -The in-kernel drivers and the <c>alsa-driver</c> package can vary a little; it's
88 -possible that features and fixes found in one might not yet be incorporated into
89 -the other. The upstream developers are aware of this, but the two drivers are
90 -effectively separate branches of the ALSA project; they are not entirely
91 -identical. You should be aware that they might function slightly differently, so
92 -if one doesn't work for you, try the other! We shall take a peek into both
93 -before finally deciding on one.
94 -</p>
95 -
96 -<p>
97 -If you were to use ALSA provided by the kernel, the following are the pros and
98 -cons:
99 -</p>
100 -
101 -<table>
102 -<tr>
103 - <th>Kernel ALSA</th>
104 - <th>Pros and Cons</th>
105 -</tr>
106 -<tr>
107 - <th>+</th>
108 - <ti>
109 - No need to emerge yet another package; drivers are integrated into kernel.
110 - </ti>
111 -</tr>
112 -<tr>
113 - <th>+</th>
114 - <ti>One shot solution, no repeating emerges.</ti>
115 -</tr>
116 -<tr>
117 - <th>-</th>
118 - <ti>Might be a slightly different version than <c>alsa-driver</c>.</ti>
119 -</tr>
120 -</table>
121 -
122 -<p>
123 -And, if you were to use <c>alsa-driver</c>,
124 -</p>
125 -
126 -<table>
127 -<tr>
128 - <th>alsa-driver</th>
129 - <th>Pros and Cons</th>
130 -</tr>
131 -<tr>
132 - <th>+</th>
133 - <ti>Possibly the latest drivers from the ALSA Project.</ti>
134 -</tr>
135 -<tr>
136 - <th>+</th>
137 - <ti>Useful if you intend to develop audio drivers.</ti>
138 -</tr>
139 -<tr>
140 - <th>-</th>
141 - <ti>Every kernel recompile requires a re-emerge of <c>alsa-driver</c>.</ti>
142 -</tr>
143 -<tr>
144 - <th>-</th>
145 - <ti>Needs certain kernel config options disabled to work correctly.</ti>
146 -</tr>
147 -</table>
148 -
149 </body>
150 </section>
151 -<section>
152 -<title>So...</title>
153 -<body>
154 -
155 -<p>
156 -The differences between <c>alsa-driver</c> and the in-kernel ALSA drivers are
157 -quite subtle, as mentioned earlier. Since there are not any huge differences,
158 -you are encouraged to go through the process of using the ALSA provided by the
159 -kernel <e>first</e> for ease of use. Before reporting any sound related issues
160 -to <uri link="https://bugs.gentoo.org">Gentoo Bugzilla</uri>, please try to
161 -reproduce them using <c>alsa-driver</c> and file the bug report no matter what
162 -the result.
163 -</p>
164 +</chapter>
165
166 -</body>
167 -</section>
168 +<chapter>
169 +<title>Installing ALSA</title>
170 <section id="lspci">
171 <title>Before you proceed</title>
172 <body>
173
174 <p>
175 -Whichever method of install you choose, you need to know what drivers your
176 -sound card uses. In most cases, sound cards (onboard and otherwise) are PCI
177 -based and <c>lspci</c> will help you in digging out the required information.
178 -Please <c>emerge sys-apps/pciutils</c> to get <c>lspci</c>, if you don't have it
179 -installed already. In case you have a USB sound card, <c>lsusb</c> from
180 -<c>sys-apps/usbutils</c> <e>might</e> be of help. For ISA cards, try using
181 -<c>sys-apps/isapnptools</c>. Also, the following pages <e>may</e> help users
182 -with ISA based sound cards:
183 +First, you need to know what drivers your sound card uses. In most cases, sound
184 +cards (onboard and otherwise) are PCI based and <c>lspci</c> will help you in
185 +digging out the required information. Please <c>emerge sys-apps/pciutils</c> to
186 +get <c>lspci</c>, if you don't have it installed already. In case you have a USB
187 +sound card, <c>lsusb</c> from <c>sys-apps/usbutils</c> <e>might</e> be of help.
188 +For ISA cards, try using <c>sys-apps/isapnptools</c>. Also, the following pages
189 +<e>may</e> help users with ISA based sound cards:
190 </p>
191
192 <ul>
193 @@ -233,13 +140,9 @@
194 </body>
195 </section>
196 <section id="kernel">
197 -<title>Using ALSA provided by your Kernel</title>
198 +<title>Configuring the kernel</title>
199 <body>
200
201 -<p>
202 -If you're a person who likes to keep things simple, then this is the way to go.
203 -</p>
204 -
205 <note>
206 Since the 2005.0 release, Gentoo Linux uses 2.6 as the default kernel. Please
207 check that your kernel is a 2.6 series kernel. This method will <e>not</e> work
208 @@ -337,91 +240,6 @@
209
210 </body>
211 </section>
212 -<section id="alsa-driver">
213 -<title>Using the ALSA Driver package</title>
214 -<body>
215 -
216 -<p>
217 -So you've decided to go the <c>alsa-driver</c> way. Let's get started then.
218 -There are a few minor things to be done to ensure only the drivers for your
219 -sound card are compiled. Although this is not really necessary, it cuts down
220 -on the unnecessary drivers that will be compiled otherwise.
221 -</p>
222 -
223 -<p>
224 -If you don't have an idea of what drivers your sound card might need, please
225 -take a look at the <uri link="#lspci">lspci</uri> section of this guide. Once
226 -you have your driver name (<c>emu10k1</c> in our example), edit
227 -<path>/etc/make.conf</path> and add a variable, <c>ALSA_CARDS</c>.
228 -</p>
229 -
230 -<pre caption="Adding ALSA_CARDS to make.conf">
231 -<comment>(For one sound card)</comment>
232 -ALSA_CARDS="emu10k1"
233 -<comment>(For more than one, separate names with spaces)</comment>
234 -ALSA_CARDS="emu10k1 via82xx"
235 -</pre>
236 -
237 -<p>
238 -If you have compiled your kernel and want to use <c>alsa-driver</c>, please
239 -ensure the following before proceeding, else <c>alsa-driver</c> is likely to
240 -fail. The next code listing gives you one way of performing the checks.
241 -</p>
242 -
243 -<note>
244 -<c>genkernel</c> users can proceed with <uri link="#doc_chap2_pre6">Installing
245 -alsa-driver</uri> as their configuration is in sync with the one shown below by
246 -default.
247 -</note>
248 -
249 -<ol>
250 - <li>
251 - <c>CONFIG_SOUND</c> is set. (Basic Sound support enabled)
252 - </li>
253 - <li>
254 - <c>CONFIG_SOUND_PRIME</c> is not set. (In-built OSS support disabled)
255 - </li>
256 - <li>
257 - <c>CONFIG_SND</c> is not set. (In-built ALSA support disabled)
258 - </li>
259 - <li>
260 - <path>/usr/src/linux</path> points to the kernel you want ALSA working on.
261 - </li>
262 -</ol>
263 -
264 -<pre caption=".config checks">
265 -<comment>(Assuming the linux symlink points to the correct kernel)</comment>
266 -# <i>cd /usr/src/linux</i>
267 -# <i>grep SOUND .config</i>
268 -<comment>(1. is true)</comment>
269 -CONFIG_SOUND=y
270 -<comment>(2. is true)</comment>
271 -CONFIG_SOUND_PRIME is not set
272 -# <i>grep SND .config</i>
273 -<comment>(and 3. is true)</comment>
274 -CONFIG_SND is not set
275 -</pre>
276 -
277 -<p>
278 -Now all you have to do is type the magic words... and no, it's not abracadabra.
279 -</p>
280 -
281 -<pre caption="Installing alsa-driver">
282 -# <i>emerge alsa-driver</i>
283 -</pre>
284 -
285 -<impo>
286 -Please note that you will have to run <c>emerge alsa-driver</c> after every
287 -kernel (re)compile, as the earlier drivers are deleted. To make this task
288 -easier, you may want to emerge the <c>module-rebuild</c> package, which will
289 -keep track of module packages and rebuild them for you. First run
290 -<c>module-rebuild populate</c> to create the list, and then after every kernel
291 -(re)compile, you just run <c>module-rebuild rebuild</c>, and your external
292 -modules will be rebuilt.
293 -</impo>
294 -
295 -</body>
296 -</section>
297 </chapter>
298
299 <chapter>
300 @@ -441,11 +259,10 @@
301 </pre>
302
303 <note>
304 -If you activated ALSA in your <uri link="#kernel">kernel</uri> <e>and</e> did
305 -not compile ALSA as modules, please proceed to the
306 -<uri link="#initscript">ALSA Initscript</uri> section. The rest of you need
307 -to configure ALSA. This is made very easy by the existence of the
308 -<c>alsaconf</c> tool provided by <c>alsa-utils</c>.
309 +If you did <e>not</e> compile ALSA as modules, please proceed to the <uri
310 +link="#initscript">ALSA Initscript</uri> section. The rest of you need to
311 +configure ALSA. This is made very easy by the existence of the <c>alsaconf</c>
312 +tool provided by <c>alsa-utils</c>.
313 </note>
314
315 </body>
316 @@ -735,6 +552,8 @@
317 0: SigmaTel STAC9721/23
318 </pre>
319
320 +<!-- TODO: remove this a few months after alsa-driver leaves the tree -->
321 +
322 <p>
323 The other most common issue users face is the dreaded "Unknown symbol in module"
324 error. An example of the same is shown below.
325 @@ -787,7 +606,7 @@
326 </pre>
327
328 <p>
329 -The above issue is caused when you switch from <c>alsa-driver</c> to in-kernel
330 +The above issue is caused when you switch from the <c>alsa-driver</c> to in-kernel
331 ALSA because when you unmerge <c>alsa-driver</c> the module files are config
332 protected and hence get left behind. So, when you switch to in-kernel
333 drivers, running <c>modprobe</c> gives you a mix of <c>alsa-driver</c> and
334 @@ -821,10 +640,12 @@
335
336 <p>
337 Usually it is a file called <path>alsa</path> with the line <c>options snd
338 -device_mode=0666</c>. Remove this line and restart the alsasound service and
339 -that should take care of this issue.
340 +device_mode=0666</c>. Remove this line and restart the <c>alsasound</c> service
341 +and that should take care of this issue.
342 </p>
343
344 +<!-- End of removal notice -->
345 +
346 </body>
347 </section>
348 </chapter>
349 @@ -839,7 +660,7 @@
350 First, check to make sure that you enabled the <c>midi</c> USE flag in
351 <path>/etc/make.conf</path>. If you didn't, go ahead and add it now. You will
352 also need to re-emerge any ALSA packages that use the <c>midi</c> flag, such as
353 -<c>alsa-lib</c>, <c>alsa-utils</c>, and <c>alsa-driver</c>.
354 +<c>alsa-lib</c> and <c>alsa-utils</c>.
355 </p>
356
357 <p>
358 @@ -969,11 +790,10 @@
359
360 <p>
361 You can have more than one sound card in your system simultaneously, provided
362 -that you have built ALSA as modules in your kernel (or have installed
363 -<c>alsa-driver</c> instead). You just need to specify which should be started
364 -first in <path>/etc/modules.d/alsa</path>. Your cards are identified by their
365 -driver names inside this file. 0 is the first card, 1 is the second, and so on.
366 -Here's an example for a system with two sound cards.
367 +that you have built ALSA as modules in your kernel. You just need to specify
368 +which should be started first in <path>/etc/modules.d/alsa</path>. Your cards
369 +are identified by their driver names inside this file. 0 is the first card, 1 is
370 +the second, and so on. Here's an example for a system with two sound cards.
371 </p>
372
373 <pre caption="Two sound cards in /etc/modules.d/alsa">
374
375
376
377 --
378 gentoo-doc-cvs@l.g.o mailing list