1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Chapter 1. File Tree Structure</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Writing an ALSA Driver"><link rel="up" href="index.html" title="Writing an ALSA Driver"><link rel="prev" href="preface.html" title="Preface"><link rel="next" href="file-tree-core-directory.html" title="core directory"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 1. File Tree Structure</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="preface.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="file-tree-core-directory.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="file-tree"></a>Chapter 1. File Tree Structure</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="file-tree.html#file-tree-general">General</a></span></dt><dt><span class="section"><a href="file-tree-core-directory.html">core directory</a></span></dt><dd><dl><dt><span class="section"><a href="file-tree-core-directory.html#file-tree-core-directory-oss">core/oss</a></span></dt><dt><span class="section"><a href="file-tree-core-directory.html#file-tree-core-directory-ioctl32">core/ioctl32</a></span></dt><dt><span class="section"><a href="file-tree-core-directory.html#file-tree-core-directory-seq">core/seq</a></span></dt><dt><span class="section"><a href="file-tree-core-directory.html#file-tree-core-directory-seq-oss">core/seq/oss</a></span></dt><dt><span class="section"><a href="file-tree-core-directory.html#file-tree-core-directory-deq-instr">core/seq/instr</a></span></dt></dl></dd><dt><span class="section"><a href="file-tree-include-directory.html">include directory</a></span></dt><dt><span class="section"><a href="file-tree-drivers-directory.html">drivers directory</a></span></dt><dd><dl><dt><span class="section"><a href="file-tree-drivers-directory.html#file-tree-drivers-directory-mpu401">drivers/mpu401</a></span></dt><dt><span class="section"><a href="file-tree-drivers-directory.html#file-tree-drivers-directory-opl3">drivers/opl3 and opl4</a></span></dt></dl></dd><dt><span class="section"><a href="file-tree-i2c-directory.html">i2c directory</a></span></dt><dd><dl><dt><span class="section"><a href="file-tree-i2c-directory.html#file-tree-i2c-directory-l3">i2c/l3</a></span></dt></dl></dd><dt><span class="section"><a href="file-tree-synth-directory.html">synth directory</a></span></dt><dt><span class="section"><a href="file-tree-pci-directory.html">pci directory</a></span></dt><dt><span class="section"><a href="file-tree-isa-directory.html">isa directory</a></span></dt><dt><span class="section"><a href="file-tree-arm-ppc-sparc-directories.html">arm, ppc, and sparc directories</a></span></dt><dt><span class="section"><a href="file-tree-usb-directory.html">usb directory</a></span></dt><dt><span class="section"><a href="file-tree-pcmcia-directory.html">pcmcia directory</a></span></dt><dt><span class="section"><a href="file-tree-oss-directory.html">oss directory</a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="file-tree-general"></a>General</h2></div></div></div><p> 2 The ALSA drivers are provided in two ways. 3 </p><p> 4 One is the trees provided as a tarball or via cvs from the 5 ALSA's ftp site, and another is the 2.6 (or later) Linux kernel 6 tree. To synchronize both, the ALSA driver tree is split into 7 two different trees: alsa-kernel and alsa-driver. The former 8 contains purely the source code for the Linux 2.6 (or later) 9 tree. This tree is designed only for compilation on 2.6 or 10 later environment. The latter, alsa-driver, contains many subtle 11 files for compiling ALSA drivers outside of the Linux kernel tree, 12 wrapper functions for older 2.2 and 2.4 kernels, to adapt the latest kernel API, 13 and additional drivers which are still in development or in 14 tests. The drivers in alsa-driver tree will be moved to 15 alsa-kernel (and eventually to the 2.6 kernel tree) when they are 16 finished and confirmed to work fine. 17 </p><p> 18 The file tree structure of ALSA driver is depicted below. Both 19 alsa-kernel and alsa-driver have almost the same file 20 structure, except for <span class="quote">“<span class="quote">core</span>”</span> directory. It's 21 named as <span class="quote">“<span class="quote">acore</span>”</span> in alsa-driver tree. 22 23 </p><div class="example"><a name="idp1091273276"></a><p class="title"><b>Example 1.1. ALSA File Tree Structure</b></p><div class="example-contents"><div class="literallayout"><p><br> 24        sound<br> 25                /core<br> 26                        /oss<br> 27                        /seq<br> 28                                /oss<br> 29                                /instr<br> 30                /ioctl32<br> 31                /include<br> 32                /drivers<br> 33                        /mpu401<br> 34                        /opl3<br> 35                /i2c<br> 36                        /l3<br> 37                /synth<br> 38                        /emux<br> 39                /pci<br> 40                        /(cards)<br> 41                /isa<br> 42                        /(cards)<br> 43                /arm<br> 44                /ppc<br> 45                /sparc<br> 46                /usb<br> 47                /pcmcia /(cards)<br> 48                /oss<br> 49          </p></div></div></div><p><br class="example-break"> 50 </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="preface.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="file-tree-core-directory.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Preface </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> core directory</td></tr></table></div></body></html> 51