core directory

core/oss
core/ioctl32
core/seq
core/seq/oss
core/seq/instr

This directory contains the middle layer which is the heart of ALSA drivers. In this directory, the native ALSA modules are stored. The sub-directories contain different modules and are dependent upon the kernel config.

core/oss

The codes for PCM and mixer OSS emulation modules are stored in this directory. The rawmidi OSS emulation is included in the ALSA rawmidi code since it's quite small. The sequencer code is stored in core/seq/oss directory (see below).

core/ioctl32

This directory contains the 32bit-ioctl wrappers for 64bit architectures such like x86-64, ppc64 and sparc64. For 32bit and alpha architectures, these are not compiled.

core/seq

This directory and its sub-directories are for the ALSA sequencer. This directory contains the sequencer core and primary sequencer modules such like snd-seq-midi, snd-seq-virmidi, etc. They are compiled only when CONFIG_SND_SEQUENCER is set in the kernel config.

core/seq/oss

This contains the OSS sequencer emulation codes.

core/seq/instr

This directory contains the modules for the sequencer instrument layer.