# Difference between revisions of "Changes v1.0.10 v1.0.11rc1"

##  Changelog between 1.0.10 and 1.0.11rc1 releases

  * alsa-driver 


    
    
     + Sound Core
       - Fix top Makefile
       - Add detection of ARM-AMBA
       - Detect pnp suspend
       - add compatibility bitmap.h
       - dynamic minors (4/6): dynamic minor number allocation
       - adjust documentation for higher card limit
       - sound: align device drivers menus
       - pcm - Make the support of old API selectable
       - Move PCXHR driver to alsa-kernel
       - release 1.0.11rc1
     + ALSA Core
       - Add support for the CS5535 Audio device
       - Clean up includes in asound.h & asequencer.h
       - Clean up wrappers
       - Remove xxx_t typedefs: Core component
       - Remove xxx_t typedefs: Proc handler
       - Remove xxx_t typedefs: OSS-emulation
       - Backward-compatibility typedefs
       - Remove xxx_t typedefs: Core
       - Decentralize PM control
       - Remove snd_legacy_auto_probe()
       - Update the patches
       - New wrappers and workarounds
       - Add error messages
       - add compatibility bitmap.h
       - add __bitwise compatibility definition
       - fix compilation on earlier kernels
       - dynamic minors (2/6): simplify storage of snd_minor structures
       - dynamic minors (3/6): store device-specific object pointers dynamically
       - dynamic minors (4/6): dynamic minor number allocation
       - dynamic minors (6/6): increase maximum number of sound cards
       - Fix a missing include
       - Fix compile with old suse 2.4 kernels
       - Define dummy __GFP_XXX for older kernels
       - Optimize for config without PROC_FS
       - pcm - Make the support of old API selectable
       - pcm - Make the support of old API selectable
       - fix 2.2.x PCI config saving
       - Nest sound devices
       - unregister platform devices
       - Subject: Fix platform_driver emulation for kernels <= 2.6.14
     + Control Midlevel
       - Remove xxx_t typedefs: Controls
       - Decentralize PM control
       - Update the patches
       - Add error messages
       - dynamic minors (3/6): store device-specific object pointers dynamically
     + HWDEP Midlevel
       - Remove xxx_t typedefs: Hwdep
       - Add error messages
       - dynamic minors (3/6): store device-specific object pointers dynamically
       - Optimize for config without PROC_FS
     + PCM Midlevel
       - Remove xxx_t typedefs: PCM
       - Remove xxx_t typedefs: Core
       - pcm - NULL check in snd_pcm_suspend*()
       - Add error messages
       - dynamic minors (1/6): store device type in struct snd_minor
       - dynamic minors (3/6): store device-specific object pointers dynamically
       - dynamic minors (3/6): store device-specific object pointers dynamically
       - Optimize for config without PROC_FS
       - pcm - Make the support of old API selectable
       - pcm - Fix wrong asserts
     + RawMidi Midlevel
       - Remove xxx_t typedefs: Raw MIDI
       - Remove xxx_t typedefs: Core
       - Add error messages
       - rawmidi: protect against invalid device number in snd_rawmidi_info_select()
       - dynamic minors (3/6): store device-specific object pointers dynamically
       - rawmidi: adjust runtime->avail when changing output buffer size
       - sound/: possible cleanups
     + Timer Midlevel
       - Remove xxx_t typedefs: Timer
       - Remove xxx_t typedefs: Core
       - Fix possible races in timer callbacks
       - Optimize for config without PROC_FS
     + /arm/Makefile
       - PXA2xx i2Sound: support for Intel PXA2xx I2S audio.
     + /i2c/Makefile
       - Audio support for codec Philips UDA1380
     + /oss/Makefile
       - Decentralize PM control
     + AC97 Codec
       - ac97 - Remove ac9_enum definition from public header
       - Remove xxx_t typedefs: AC97
       - ac97-codec - Better ac97_bus name
       - ac97 - NULL check in snd_ac97_suspend/resume
       - ac97 - Add extra IDs for headphone autosense
       - ac97 - Small fix for ALC65x codec
       - Add a new quirk for mute-LED and HP-only.
     + AD1816A driver
       - Remove superfluous pcm_free callbacks
       - Remove xxx_t typedefs: ISA AD1816A
       - ad1816a - Clean up PnP code
       - Merge ad1816a-lib module to ad1816a
       - Merge ad1816a-lib module to ad1816a
     + AD1848 driver
       - Remove superfluous pcm_free callbacks
       - Remove xxx_t typedefs: ISA AD1848
       - ad1848 - Add PM support
       - ad1848 - Use platform_device, add PM
       - ad1848 - Fix compilation without CONFIG_PM
     + AD1889 driver
       - Remove xxx_t typedefs: PCI AD1889
       - ad1889 - don't use CVS Id tag - it complicates merging
     + AK4114 receiver
       - Remove xxx_t typedefs: I2C drivers
       - Remove xxx_t typedefs: I2C drivers
     + AK4117 receiver
       - Remove xxx_t typedefs: I2C drivers
     + AK4531 codec
       - Remove xxx_t typedefs: AK4531 codec
       - ak4531 - Add PM support
     + AK4XXX AD/DA converters
       - Remove xxx_t typedefs: I2C drivers
     + ALI5451 driver
       - Remove xxx_t typedefs: PCI ALI5451
       - ali5451 - Fix PM support
     + ALS100 driver
       - Remove xxx_t typedefs: ISA SB/AD-clone
       - als100 - Add PM support
     + ALS4000 driver
       - ALS4000 update
       - Remove xxx_t typedefs: PCI ALS4000
       - als4000 - Add PM support
     + ALSA sequencer
       - Clean up includes in asound.h & asequencer.h
       - Remove xxx_t typedefs: Sequencer
       - Remove xxx_t typedefs: Sequencer OSS-emulation
       - Remove xxx_t typedefs: Sequencer
       - dynamic minors (5/6): reduce maximum number of MIDI devices per card
       - dynamic minors (6/6): increase maximum number of sound cards
       - Optimize for config without PROC_FS (seq and oss parts)
       - seq: remove superfluous fields
       - seq: remove struct snd_seq_client_callback
       - seq: set client name in snd_seq_create_kernel_client()
       - seq: reorganize sequencer client numbers
     + ALSA<-OSS emulation
       - Use standard bitmap functions
       - Remove xxx_t typedefs: Mixer OSS-emulation
       - Remove xxx_t typedefs: PCM OSS-emulation
       - Remove xxx_t typedefs: OSS-emulation
       - Optimize for config without PROC_FS (seq and oss parts)
     + ALSA<-OSS sequencer
       - Remove xxx_t typedefs: Sequencer OSS-emulation
       - Remove xxx_t typedefs: Sequencer
       - Optimize for config without PROC_FS (seq and oss parts)
       - Fixed patch
       - seq: remove struct snd_seq_client_callback
       - seq: set client name in snd_seq_create_kernel_client()
     + ARM
       - Remove SND_GENERIC_DRIVER from arm/Kconfig
       - PXA2xx i2Sound: support for Intel PXA2xx I2S audio.
     + ARM AACI PL041 driver
       - Remove xxx_t typedefs: ARM AACI
       - Fix PM support
     + ARM DMA routines
       - Remove xxx_t typedefs: ARM AACI
     + ARM PXA2XX driver
       - Remove xxx_t typedefs: ARM PXA2xx
       - Fix PM support
       - PXA2xx i2Sound: support for Intel PXA2xx I2S audio.
       - make the pxa2xx-ac97 module more robust against PXA27x bugs
     + ARM S3C24XX IIS driver
       - Remove xxx_t typedefs: ARM S3C24xx-IIS
     + ATIIXP driver
       - Remove superfluous macros
       - Remove xxx_t typedefs: PCI ATIIXP
       - atiixp - Fix PM support
       - Optimize for config without PROC_FS (pci drivers)
       - Add a new quirk for mute-LED and HP-only.
     + ATIIXP-modem driver
       - Remove superfluous macros
       - Remove xxx_t typedefs: PCI ATIIXP
       - atiixp - Fix PM support
       - Optimize for config without PROC_FS (pci drivers)
     + AZT2320 driver
       - Remove xxx_t typedefs: ISA SB/AD-clone
       - azt2320 - Add PM support
     + AZT3328 driver
       - Remove xxx_t typedefs: PCI AZT3328
     + BT87x driver
       - Remove xxx_t typedefs: PCI BT87x
       - 2.6-git-sync: Fix PCI ids in bt87x.c
     + CA0106 driver
       - ca0106 - Code clean up
       - Remove xxx_t typedefs: PCI CA0106
     + CMI8330 driver
       - Remove superfluous pcm_free callbacks
       - Remove xxx_t typedefs: ISA CMI8330
       - cmi8330 - Use platform_device, add PM support
     + CMIPCI driver
       - Remove xxx_t typedefs: PCI CMIPCI
       - cmipci - Add PM support
     + CREDITS file
       - Keep non-ALSA kernel files
       - Add support for the CS5535 Audio device
     + CS4231 driver
       - Remove superfluous pcm_free callbacks
       - Clean up ISA cs4231 code
       - Remove xxx_t typedefs: ISA CS423x
       - cs4231 - Fix PM support
       - cs4231 - Use platform_device
       - Fix resume of cs4231
       - Add CS4232 PnP BIOS support
       - Fix a compile warning
     + CS4236+ driver
       - Remove xxx_t typedefs: ISA CS423x
       - cs4236 - Use platform_device
       - Add CS4232 PnP BIOS support
     + CS4281 driver
       - cs4281 - Clean up delay function
       - Remove xxx_t typedefs: PCI CS4281
       - cs4281 - Fix PM support
     + CS46xx driver
       - Remove xxx_t typedefs: PCI CS46xx
       - cs46xx - Fix PM support
     + CS5535 driver
       - Minor clean up and fixes for CS5535 audio driver
       - Remove xxx_t typedefs: PCI CS5535
       - cs5535audio: move sound/driver.h to the top
     + Common EMU synth
       - emux - Avoid cast of function pointers
       - Remove xxx_t typedefs: Emu-X synth
     + DT019x driver
       - Remove xxx_t typedefs: ISA SB/AD-clone
       - dt019x - Add PM support
     + Digigram PCXHR driver
       - Add PCXHR driver
     + Digigram VX Pocket driver
       - Remove snd_vx_delay() function
       - Remove xxx_t typedefs: VXdriver
       - vx-driver - Fix PM support
     + Digigram VX core
       - Remove snd_vx_delay() function
       - Remove xxx_t typedefs: VXdriver
       - vx-driver - Fix PM support
     + Digigram VX222 driver
       - Remove snd_vx_delay() function
       - Remove xxx_t typedefs: VXdriver
       - vx-driver - Fix PM support
     + Documentation
       - Minor clean up and fixes for CS5535 audio driver
       - [Trivial] Fix ac97_quirk option in document
       - Small update of Procfile.txt
       - Remove xxx_t typedefs: Documentation
       - document - Add PM support
       - document - Update PM support
       - adjust documentation for higher card limit
       - Add PCXHR driver
     + EMU10K1/EMU10K2 driver
       - emu10k1x - Minor clean up
       - emu10k1 - Minor clean up of memory block handling
       - Remove xxx_t typedefs: PCI emu10k1
       - Remove xxx_t typedefs: PCI emu10k1x
       - emu10k1 - Add PM support
       - emu10k1: Partial support for Creative emu1212m
       - emu10k1 - Fix missing declarations
       - emu10k1 - Add entry for SB Live 5.1 Digital OEM [SB0220]
     + EMU8000 driver
       - Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
     + ENS1370/1+ driver
       - Fix missing suspend/resume-code for ens1371
       - Remove xxx_t typedefs: PCI ENS137x
       - ens137x - Fix and ADD PM support
       - ens1371: added spdif and lineio module options
       - ens1371: fix compilation without SUPPORT_JOYSTICK
     + ES1688 driver
       - Remove xxx_t typedefs: ISA ES1688
       - es1688 - Use platform_device
     + ES18xx driver
       - Remove superfluous pcm_free callbacks
       - Remove xxx_t typedefs: ISA ES18xx
       - es18xx - Use platform_device
     + ES1938 driver
       - Remove xxx_t typedefs: PCI ES1938
       - es1938 - Fix PM support
     + ES1968 driver
       - Remove xxx_t typedefs: PCI ES1968
       - es1968 - Fix PM support
     + ES968 driver
       - Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
       - es968 - Add PM support
     + FM801 driver
       - Remove xxx_t typedefs: PCI FM801
       - fm801 - Add PM support
     + GUS Classic driver
       - Remove xxx_t typedefs: ISA GUS
       - gus - Use platform_device
     + GUS Extreme driver
       - Remove xxx_t typedefs: ISA GUS
       - gus - Use platform_device
     + GUS Library
       - [Trivial] Fix spaces in gus.h
       - Remove xxx_t typedefs: ISA GUS
       - seq: remove struct snd_seq_client_callback
       - seq: set client name in snd_seq_create_kernel_client()
     + GUS MAX driver
       - Remove xxx_t typedefs: ISA GUS
       - gus - Use platform_device
     + Generic drivers
       - Update of PC-speaker driver
       - Remove superfluous pcm_free callbacks
       - snd-dummy - Code clean-up
       - Remove xxx_t typedefs: Generic drivers
       - Remove xxx_t typedefs: PC-Speaker
       - Remove xxx_t typedefs: ALoop
       - Remove xxx_t typedefs: Serial MIDI
       - Remove xxx_t typedefs: Portman2x4
       - dummy - Use platform_device
       - mtpav - Use platform_device
       - serial-u16550 - Use platform_device
       - virmidi - Use platform_device
       - Remove SND_GENERIC_DRIVER from drivers/Kconfig
       - serialmidi - Remove snd_card_generic_set_dev()
       - Fix possible races in timer callbacks
       - dynamic minors (5/6): reduce maximum number of MIDI devices per card
       - sound: align device drivers menus
     + HAL2 driver
       - Remove xxx_t typedefs: HAL2
     + HDA Codec driver
       - hda-codec - Add channel-mode helper
       - hda-codec - Prepare unsol workqueue on demand
       - hda-codec - Fix a typo
       - hda-codec - Fix assignment of speaker pin
       - Remove xxx_t typedefs: HD-Audio codec
       - hda-codec - Add AD1988 support
       - hda-codec - Fix connection list parsing
       - hda-codec - Fix AD1988 support
       - hda-codec - Fix auto-probe of ALC880
       - hda-codec - Fix channel mode helper
       - hda-codec - Fix/enhance AD1988 support
       - hda-codec - Fix surrounds on 3stack mode of AD1988
       - hda-codec - update sigmatel support and bug fixes
       - hda-codec - Add the support of ALC262,ALC883,ALC885,ALC861
       - hda-codec - Fix ALC codec probing
       - hda-codec - Fix Oops with ALC260 auto-probe
       - hda-codec - Small clean up and fixes
       - hda-codec - Add the model entry for ASUS P5GD1-HVM
     + HDA Intel driver
       - Remove xxx_t typedefs: HDA-Intel
       - hda-intel - Fix PM support
       - hda-intel - Use position buffer as default
       - hda-intel - Fix HDA probe_mask default
     + HDA generic driver
       - hda-codec - Add channel-mode helper
       - hda-codec - Fix assignment of speaker pin
       - Remove xxx_t typedefs: HD-Audio codec
       - hda-codec - Fix connection list parsing
       - hda-codec - Allocate connection lists dynamically in generic parser
       - sound/: possible cleanups
       - hda-codec - Add the support of ALC262,ALC883,ALC885,ALC861
       - hda-codec - Small clean up and fixes
     + HDSPM driver
       - Remove xxx_t typedefs: PCI HDSP-MADI
     + I2C Kconfig
       - Audio support for codec Philips UDA1380
     + I2C UDA1380
       - Audio support for codec Philips UDA1380
     + I2C cs8427
       - Remove xxx_t typedefs: I2C drivers
     + I2C lib core
       - Remove xxx_t typedefs: I2C drivers
     + I2C tea6330t
       - Remove tea6330t struct definition from public header
       - Remove xxx_t typedefs: I2C drivers
     + ICE1712 driver
       - Remove xxx_t typedefs: PCI ICE1712
       - Remove xxx_t typedefs: PCI ICE1724
       - ice1712 - Fix Front Digital Input of Terratec DMX 6Fire
     + ICE1724 driver
       - Remove xxx_t typedefs: PCI ICE1724
       - ice1724 - Add support of M-Audio Revolution 5.1
     + IOCTL32 emulation
       - Remove xxx_t typedefs: Ioctl32
       - dynamic minors (3/6): store device-specific object pointers dynamically
     + ISA
       - Sort Kconfig entries
       - Remove SND_GENERIC_DRIVER from isa/Kconfig
     + Instrument layer
       - Remove xxx_t typedefs: Instrument layer
     + Intel8x0 driver
       - intel8x0 - Clean up delay function
       - Remove xxx_t typedefs: PCI Intel8x0
       - intel8x0 - Fix PM support
       - intel8x0 - Added swap_hp quirk for Fujitsu-Siemens Celsius H320 [0x10cf:0x12f2]
       - Optimize for config without PROC_FS (pci drivers)
       - Add a new quirk for mute-LED and HP-only.
     + Intel8x0-modem driver
       - intel8x0 - Clean up delay function
       - Remove xxx_t typedefs: PCI Intel8x0
       - intel8x0 - Fix PM support
       - Optimize for config without PROC_FS (pci drivers)
     + KORG1212 driver
       - korg1212 - Clean up debug prints
       - Remove xxx_t typedefs: PCI KORG1212
       - Fix possible races in timer callbacks
     + L3 drivers
       - Clean up sa11xx-uda1341 driver
       - Remove xxx_t typedefs: I2C drivers
     + MAINTAINERS file
       - Keep non-ALSA kernel files
       - Add support for the CS5535 Audio device
     + MIPS
       - Remove snd_card_generic_dev()
     + MIPS AU1x00 driver
       - au1x00 - Code clean up
       - Remove xxx_t typedefs: MIPS AU1x00
       - Remove snd_card_generic_dev()
     + MIXART driver
       - Remove xxx_t typedefs: PCI miXart
     + MPU401 UART
       - Remove xxx_t typedefs: MPU401
       - Remove xxx_t typedefs: MPU401
       - mpu401 - Use platform_device
       - Fix possible races in timer callbacks
     + MSND driver
       - Remove xxx_t typedefs: ISA MSND-Pinnacle
     + Maestro3 driver
       - Remove xxx_t typedefs: PCI Maestro3
       - maestro3 - Fix PM support
     + Memalloc module
       - dynamic minors (6/6): increase maximum number of sound cards
       - unpaged: fix sound Bad page states
       - Define dummy __GFP_XXX for older kernels
     + NM256 driver
       - nm256 - Code clean up
       - Remove xxx_t typedefs: PCI NM256
       - nm256-intel - Fix PM support
     + OLD GF1 header
       - Remove xxx_t typedefs: old gf1.h
     + OPL3
       - Remove xxx_t typedefs: OPL3
       - Fix possible races in timer callbacks
       - seq: remove struct snd_seq_client_callback
       - seq: set client name in snd_seq_create_kernel_client()
     + OPL3SA2 driver
       - Remove xxx_t typedefs: ISA OPL3SA2
       - opl3sa2 - Use platform_device
     + OPL4
       - Remove xxx_t typedefs: OPL4
       - seq: remove struct snd_seq_client_callback
       - seq: set client name in snd_seq_create_kernel_client()
     + Opti9xx drivers
       - Remove xxx_t typedefs: ISA Opti9xx
       - Remove xxx_t typedefs: ISA Miro
       - opti9xx - Use platform_device
       - miro - Use platform_device
       - unregister platform devices
     + PARISC Harmony driver
       - harmony - Code clean up
       - Remove xxx_t typedefs: PARISC Harmony
     + PC98(CS423x) driver
       - Remove xxx_t typedefs: ISA CS423x-PC98
     + PCI drivers
       - Add support for the CS5535 Audio device
       - Sort Kconfig entries
       - Add PCXHR driver
     + PDAudioCF driver
       - Remove xxx_t typedefs: PCMCIA PDaudioCF
       - pdaudiocf - Fix PM support
     + PPC
       - powermac - Use platform_device
     + PPC AWACS driver
       - Remove xxx_t typedefs: PowerMac
     + PPC Beep
       - Remove xxx_t typedefs: PowerMac
     + PPC Burgundy driver
       - Remove xxx_t typedefs: PowerMac
     + PPC DACA driver
       - Remove xxx_t typedefs: PowerMac
     + PPC PMAC driver
       - powermac - Use platform_device
       - snd_powermac: Add ID for Spring 2005 17" Powerbook
       - powermac - Revert the last addition for 17" powerbook
     + PPC PowerMac driver
       - powermac - Use platform_device
     + PPC Tumbler driver
       - PowerBook 6,1: headphone not detected after suspend in snd_powerpc
     + RME HDSP driver
       - Remove xxx_t typedefs: PCI HDSP
     + RME32 driver
       - Remove xxx_t typedefs: PCI RME32
     + RME96 driver
       - Remove xxx_t typedefs: PCI RME96
     + RME9652 driver
       - Remove xxx_t typedefs: PCI HDSP-MADI
       - Remove xxx_t typedefs: PCI RME9652
     + RTC timer driver
       - Remove xxx_t typedefs: Timer
     + Raw OPL FM
       - Remove xxx_t typedefs: OPL3
     + SA11xx UDA1341 driver
       - Clean up sa11xx-uda1341 driver
       - Remove xxx_t typedefs: ARM SA11xx-UDA1341
       - Use platform_device
     + SB drivers
       - ALS4000 update
       - Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
       - Add PM support to SB-support code
     + SB16/AWE driver
       - Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
       - Add PM support to SB-support code
       - sb16 - Use platform_device and add PnP support
     + SB8 driver
       - Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
       - sb8 - Use platform_device and add PnP support
     + SPARC
       - Remove snd_card_generic_dev()
     + SPARC AMD7930 driver
       - Remove xxx_t typedefs: SPARC AMD7930
       - Remove snd_card_generic_dev()
     + SPARC DBRI driver
       - Remove xxx_t typedefs: SPARC DBRI
       - dbri - Don't return errors without CONFIG_PROC_FS
     + SPARC cs4231 driver
       - Remove xxx_t typedefs: SPARC CS4231
       - Remove snd_card_generic_dev()
       - 2.6-git-sync: Sync sparc/cs4231.c
     + Serial BUS drivers
       - Remove xxx_t typedefs: Patches
     + SonicVibes driver
       - Remove xxx_t typedefs: PCI Sonicvibes
     + Sound Galaxy driver
       - Remove xxx_t typedefs: ISA SB/AD-clone
       - sgalaxy - Use platform_device, add PM support
     + Sound Scape driver
       - Remove xxx_t typedefs: ISA SoundScape
       - sscape - Use platform_device
     + SoundFont
       - Remove xxx_t typedefs: Emu-X synth
     + Synth
       - Remove xxx_t typedefs: Emu-X synth
     + Trident driver
       - Remove xxx_t typedefs: PCI Trident
       - trident - Fix PM support
       - seq: remove struct snd_seq_client_callback
       - seq: set client name in snd_seq_create_kernel_client()
     + UDA1341
       - Clean up sa11xx-uda1341 driver
     + USB USX2Y
       - usx2y - Code clean up
       - Remove xxx_t typedefs: USB-USX2Y
       - unpaged: sound nopage get_page
     + USB generic driver
       - Remove xxx_t typedefs: USB-Audio
       - usb-audio: fix Edirol UA-20 support
     + VIA82xx driver
       - Remove xxx_t typedefs: PCI VIA82xx
       - via82xx - Fix PM support
       - via82xx - Add dxs entry for ASRock mobo
     + VIA82xx-modem driver
       - Remove xxx_t typedefs: PCI VIA82xx
       - via82xx - Fix PM support
     + Wavefront drivers
       - Remove xxx_t typedefs: ISA Wavefront
       - wavefront - Use platform_device
     + YMFPCI driver
       - Remove xxx_t typedefs: PCI YMFPCI
       - ymfpci - Fix PM support
       - ymfpci: show chip model
     + au88x0 driver
       - Remove xxx_t typedefs: PCI AU88x0
       - au88x0: Remove unneeded call to pci_dma_supported()
     + pci_ids.h update
       - Keep non-ALSA kernel files
       - Add support for the CS5535 Audio device
    

  * alsa-lib 


    
    
     + Core
       - Check wordexp.h for ulibc
       - Allow partial build with selected components
       - release 1.0.11rc1
     + Mixer API
       - Fix the handling of stereo capture source
     + PCM API
       - Fix generation of IEC958 subframes
       - fix compilation with gcc 2
       - abort snd_pcm_dmix_drain when state is SND_PCM_STATE_XRU
       - Abort from snd_pcm_dshare_drain in XRUN state
       - Fix segfault of iec958 plugin with preamble
       - Use snd_user_file() in pcm_ladpsa.c
       - Move snd_is_local() to socket.c
       - Allow partial build with selected components
       - Minor optimization on mmap
       - direct plugins - fixed ipc_gid initialization when gid specified as number
       - pcm_ladspa plugin - more verbose output
       - pcm dump() routines update: use spaces to indent texts
     + Sequencer API
       - remove SND_SEQ_CLIENT_{DUMMY,OSS} symbols
     + /Makefile.am
       - Allow partial build with selected components
     + /modules/Makefile.am
       - Allow partial build with selected components
     + /src/Makefile.am
       - Allow partial build with selected components
     + Configuration
       - Fix free of uninitialized pointer
       - Remove superfluous wordexp.h inclusion
       - Fix a missing line in PMacToonie.conf
     + Documentation
       - Add description for new configure options
     + Filename helpers
       - Add a workaround for systems without wordexp
       - Fixed compilation when HAVE_WORDEXP_H is not defined
     + Kernel Headers
       - seq: reorganize sequencer client numbers
     + Socket helpers
       - Move snd_is_local() to socket.c
     + Test/Example code
       - Fix compile errors/warnings
       - Remove code from check_PROGRAMS
    

  * alsa-utils 


    
    
     + Core
       - Add WAV file playback support to speaker-test
       - release 1.0.11rc1
     + Speaker Test
       - Make speaker-test compatible with dmix by default.
       - Add WAV file playback support to speaker-test
       - speaker-test - Fix missing i18n
     + alsaconf
       - Fix a text in alsa-utils
     + amixer
       - amixer - Add -s option
     + aplay/arecord
       - alternative peak meter for aplay
       - split interleaved files in arecord when reaching 2GB
    

  * alsa-tools 


    
    
     + Core
       - release 1.0.11rc1
     + Envy24 Control
       - Fix envy24control digital input on Terratec DMX6fire
       - Fix for Delta boards
       - Rationalise envy24control controls specific to Terratec DMX6fire
       - Tidy up DMX6fire eeprom checks
     + ac3dec (Dolby Digital Decoder)
       - Fix compile warnings
     + ld10k1 (EMU10K1+ DSP Code Loader)
       - Add Equalizer support for emu10k1 Audigy
    

##  Detailed changelog between 1.0.10 and 1.0.11rc1 releases

  * alsa-driver 


    
    
     + Sound Core
       - Summary: Fix top Makefile
         Fix top Makefile of alsa-driver tree.  pci subdirectory has to be
         handled always regardless of CONFIG_PCI (due to ac97 stuff).
       - Summary: Add detection of ARM-AMBA
         Added the detection of ARM-AMBA, experimentally.
       - Summary: Detect pnp suspend
         - Use platform_compat.h for better emulation of platform_device.
         - Detect the PnP suspend/resume callback.
       - Summary: add compatibility bitmap.h
         Add a partial bitmap.h implementation for earlier kernels.
       - Summary: dynamic minors (4/6): dynamic minor number allocation
         Add an option to allocate device file minor numbers dynamically.
       - Summary: adjust documentation for higher card limit
         Fix all places in the docs where the card number limit is mentioned.
       - Summary: sound: align device drivers menus
         AC97 Kconfig entries broke the ALSA device drivers menu, so move them to a
         location where that won't happen, enabling all device sub-menus to be
         presented together.
         Fixed for the latest ALSA tree by Takashi Iwai <tiwai@suse.de>.
         Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
       - Summary: pcm - Make the support of old API selectable
         Make the support of old API selectable via config option.
       - Summary: Move PCXHR driver to alsa-kernel
         Moved PCXHR driver to alsa-kernel.
       - Summary: release 1.0.11rc1
     + ALSA Core
       - Summary: Add support for the CS5535 Audio device
         Add necessary files to build cs5535audio driver in alsa-driver tree.
       - Summary: Clean up includes in asound.h & asequencer.h
         Clean up includes in asound.h and asequencer.h.
       - Summary: Clean up wrappers
         - Use gfp_t in kmalloc-related wrappers
         - Use inline function instead of global exported ones if possible
       - Summary: Remove xxx_t typedefs: Core component
         Remove xxx_t typedefs from the core component.
       - Summary: Remove xxx_t typedefs: Proc handler
         Remove xxx_t typedefs from the core proc handler codes.
       - Summary: Remove xxx_t typedefs: OSS-emulation
         Remove xxx_t typedefs from the core OSS-emulation codes.
       - Summary: Backward-compatibility typedefs
         Backward-compatibility typedefs are stored in the new header, typedefs.h,
         for out-of-tree drivers.  This will be removed in future.
       - Summary: Remove xxx_t typedefs: Core
         Remove xxx_t typedefs from core.
         Patches are regenerated.
       - Summary: Decentralize PM control
         Remove the centralized PM control in the sound core.
         Each driver is responsible to get callbacks from bus/driver now.
         SND_GENERIC_DRIVER is removed together with this action.
       - Summary: Remove snd_legacy_auto_probe()
         Remove unsed snd_legacy_auto_probe() function.
       - Summary: Update the patches
         Regenerated the patches to follow the last PM changes.
       - Summary: New wrappers and workarounds
         - pci_save/restore_state() wrappers
         - platform_driver emulation
         - workarounds for suspend/resume callbacks of pnp_driver
         - compatible err.h
       - Summary: Add error messages
         Add error messages in the critial error path to be more verbose.
       - Summary: add compatibility bitmap.h
         Add a partial bitmap.h implementation for earlier kernels.
       - Summary: add __bitwise compatibility definition
         Define __bitwise for earlier kernels.
       - Summary: fix compilation on earlier kernels
         Fix various bugs in the compatibility code.
       - Summary: dynamic minors (2/6): simplify storage of snd_minor structures
         Store the snd_minor structure pointers in one array instead of using a
         separate list for each card.  This simplifies the mapping from device
         files to minor struct by removing the need to know about the encoding
         of the card number in the minor number.
       - Summary: dynamic minors (3/6): store device-specific object pointers dynamically
         Instead of storing the pointers to the device-specific structures in an
         array, put them into the struct snd_minor, and look them up dynamically.
         This makes the device type modules independent of the minor number
         encoding.
       - Summary: dynamic minors (4/6): dynamic minor number allocation
         Add an option to allocate device file minor numbers dynamically.
       - Summary: dynamic minors (6/6): increase maximum number of sound cards
         With dynamic minor numbers, we can increase the number of sound cards.
         This requires that the sequencer client numbers of some kernel drivers
         are allocated dynamically, too.
       - Summary: Fix a missing include
         Fix missing include <linux/device.h>
       - Summary: Fix compile with old suse 2.4 kernels
         Fix compile with old suse 2.4 kernels (with variable HZ).
       - Summary: Define dummy __GFP_XXX for older kernels
         Define dummy __GFP_XXX for older kernels.
       - Summary: Optimize for config without PROC_FS
         Optimize the code when compiled without CONFIG_PROC_FS.
       - Summary: pcm - Make the support of old API selectable
         Make the support of old API selectable via config option.
       - Summary: pcm - Make the support of old API selectable
         Make the support of old API selectable via config option.
       - Summary: fix 2.2.x PCI config saving
         Fix a typo in snd_pci_compat_restore_state() that caused it to write
         wrong values.
       - Summary: Nest sound devices
         Make the control device parent of all other ALSA devices of a card.
       - Summary: unregister platform devices
         Call platform_device_unregister() for all platform devices that we've
         registered.
       - Subject: Fix platform_driver emulation for kernels <= 2.6.14
         The platform_driver_register() substitute in alsa-driver-1.0.10 sets
         drv->driver.probe and drv->driver.remove functions without checking for
         non-NULL drv->probe and drv->remove; snd_platform_driver_probe() and
         snd_platform_driver_remove() also do not check for NULL in those fields.
         However, snd_generic_driver has NULL ->probe and ->remove functions,
         therefore attempts to use it on kernels <= 2.6.14 lead to oopses.
         This patch changes platform_driver_register() provided by alsa-driver
         for old kernels to match the implementation in post-2.6.14 kernels,
         which checks for NULL ->probe and ->remove functions.
         Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
     + Control Midlevel
       - Summary: Remove xxx_t typedefs: Controls
         Remove xxx_t typedefs from the core controls.
       - Summary: Decentralize PM control
         Remove the centralized PM control in the sound core.
         Each driver is responsible to get callbacks from bus/driver now.
         SND_GENERIC_DRIVER is removed together with this action.
       - Summary: Update the patches
         Regenerated the patches to follow the last PM changes.
       - Summary: Add error messages
         Add error messages in the critial error path to be more verbose.
       - Summary: dynamic minors (3/6): store device-specific object pointers dynamically
         Instead of storing the pointers to the device-specific structures in an
         array, put them into the struct snd_minor, and look them up dynamically.
         This makes the device type modules independent of the minor number
         encoding.
     + HWDEP Midlevel
       - Summary: Remove xxx_t typedefs: Hwdep
         Remove xxx_t typedefs from the core hwdep codes.
       - Summary: Add error messages
         Add error messages in the critial error path to be more verbose.
       - Summary: dynamic minors (3/6): store device-specific object pointers dynamically
         Instead of storing the pointers to the device-specific structures in an
         array, put them into the struct snd_minor, and look them up dynamically.
         This makes the device type modules independent of the minor number
         encoding.
       - Summary: Optimize for config without PROC_FS
         Optimize the code when compiled without CONFIG_PROC_FS.
     + PCM Midlevel
       - Summary: Remove xxx_t typedefs: PCM
         Remove xxx_t typedefs from the core PCM codes.
       - Summary: Remove xxx_t typedefs: Core
         Remove xxx_t typedefs from core.
         Patches are regenerated.
       - Summary: pcm - NULL check in snd_pcm_suspend*()
         Add NULL check in snd_pcm_suspend*() so that the caller doesn't have to do it
         by itself.
       - Summary: Add error messages
         Add error messages in the critial error path to be more verbose.
       - Summary: dynamic minors (1/6): store device type in struct snd_minor
         Instead of a comment string, store the device type in the snd_minor
         structure.  This makes snd_minor more flexible, and has the nice side
         effect that we don't need anymore to create a separate snd_minor
         template for registering a device but can pass the file_operations
         directly to snd_register_device().
       - Summary: dynamic minors (3/6): store device-specific object pointers dynamically
         Instead of storing the pointers to the device-specific structures in an
         array, put them into the struct snd_minor, and look them up dynamically.
         This makes the device type modules independent of the minor number
         encoding.
       - Summary: dynamic minors (3/6): store device-specific object pointers dynamically
         Instead of storing the pointers to the device-specific structures in an
         array, put them into the struct snd_minor, and look them up dynamically.
         This makes the device type modules independent of the minor number
         encoding.
       - Summary: Optimize for config without PROC_FS
         Optimize the code when compiled without CONFIG_PROC_FS.
       - Summary: pcm - Make the support of old API selectable
         Make the support of old API selectable via config option.
       - Summary: pcm - Fix wrong asserts
         Fixed wrong or supreflous snd_assert()'s.
     + RawMidi Midlevel
       - Summary: Remove xxx_t typedefs: Raw MIDI
         Remove xxx_t typedefs from the core raw MIDI codes.
       - Summary: Remove xxx_t typedefs: Core
         Remove xxx_t typedefs from core.
         Patches are regenerated.
       - Summary: Add error messages
         Add error messages in the critial error path to be more verbose.
       - Summary: rawmidi: protect against invalid device number in snd_rawmidi_info_select()
         In snd_rawmidi_info_select(), check that the device identified by the
         passed device number actually exists.
       - Summary: dynamic minors (3/6): store device-specific object pointers dynamically
         Instead of storing the pointers to the device-specific structures in an
         array, put them into the struct snd_minor, and look them up dynamically.
         This makes the device type modules independent of the minor number
         encoding.
       - Summary: rawmidi: adjust runtime->avail when changing output buffer size
         When the output buffer size is changed, runtime->avail must be
         adjusted to the new size; otherwise, draining of a bigger buffer would
         appear to fail because avail does not reach buffer_size.
       - Summary: sound/: possible cleanups
         This patch contains the following possible cleanups:
         - pci/hda/hda_proc.c should #include "hda_local.h" for including the
           prototype of it's global function snd_hda_codec_proc_new()
         - core/rawmidi.c: make the needlessly global and EXPORT_SYMBOL'ed
           function snd_rawmidi_info() static
         Signed-off-by: Adrian Bunk <bunk@stusta.de>
     + Timer Midlevel
       - Summary: Remove xxx_t typedefs: Timer
         Remove xxx_t typedefs from the core timer.
       - Summary: Remove xxx_t typedefs: Core
         Remove xxx_t typedefs from core.
         Patches are regenerated.
       - Summary: Fix possible races in timer callbacks
         Fix possible races in timer callbacks.
       - Summary: Optimize for config without PROC_FS
         Optimize the code when compiled without CONFIG_PROC_FS.
     + /arm/Makefile
       - Summary: PXA2xx i2Sound: support for Intel PXA2xx I2S audio.
         Support for Intel PXA2xx I2S audio.
         Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
     + /i2c/Makefile
       - Summary: Audio support for codec Philips UDA1380
         Audio support for codec Philips UDA1380.
         Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
     + /oss/Makefile
       - Summary: Decentralize PM control
         Remove the centralized PM control in the sound core.
         Each driver is responsible to get callbacks from bus/driver now.
         SND_GENERIC_DRIVER is removed together with this action.
     + AC97 Codec
       - Summary: ac97 - Remove ac9_enum definition from public header
         Remove the definition of ac97_enum struct from the public ac97_codec.h.
         It's used only in the module.
         The location of struct ac97_pcm is moved closer to its accessor
         to improve readability.
       - Summary: Remove xxx_t typedefs: AC97
         Remove xxx_t typedefs from the AC97 codec support.
       - Summary: ac97-codec - Better ac97_bus name
         Generate a better name string for ac97_bus sysfs interface including
         the name of ac97 codec chip.
       - Summary: ac97 - NULL check in snd_ac97_suspend/resume
         Add NULL check in snd_ac97_suspend() and snd_ac97_resume() so that
         the caller doesn't have to do it by itself.
       - Summary: ac97 - Add extra IDs for headphone autosense
         The following patch adds some extra IDs for the list of hardware which
         should have headphone line sense enabled by default.
         Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org>
       - Summary: ac97 - Small fix for ALC65x codec
         Small fix for ALC65x codec, sync with Realtek's driver codes:
         - Rename "IEC958 Playback Route" to "IEC958 Playback Source" so that
           mixer can handle it properly
       - Summary: Add a new quirk for mute-LED and HP-only.
         This patch adds a new quirk for ac97 hardware that combines the existing
         AC97_TUNE_MUTE_LED and AC97_TUNE_HP_ONLY quirks.  This is needed for several
         current HP laptops.  Additionally, it adds the HP nx6125 to the
         AC97_TUNE_MUTE_LED list.
         Fixed for the latest version of ALSA by Takashi Iwai <tiwai@suse.de>.
         Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org>
     + AD1816A driver
       - Summary: Remove superfluous pcm_free callbacks
         Remove superflous pcm_free callbacks.
       - Summary: Remove xxx_t typedefs: ISA AD1816A
         Remove xxx_t typedefs from the ISA AD1816A driver.
       - Summary: ad1816a - Clean up PnP code
         Clean up PnP code of ad1816a driver.
       - Summary: Merge ad1816a-lib module to ad1816a
         Merge ad1816a-lib module to ad1816.
         There is no more reason to split.
       - Summary: Merge ad1816a-lib module to ad1816a
         Merge ad1816a-lib module to ad1816.
         There is no more reason to split.
     + AD1848 driver
       - Summary: Remove superfluous pcm_free callbacks
         Remove superflous pcm_free callbacks.
       - Summary: Remove xxx_t typedefs: ISA AD1848
         Remove xxx_t typedefs from the ISA AD1848 driver.
       - Summary: ad1848 - Add PM support
         Add PM support to ad1848 support code.
       - Summary: ad1848 - Use platform_device, add PM
         Rewrite the probe/remove with platform_device.
         Add the PM support, too.
       - Summary: ad1848 - Fix compilation without CONFIG_PM
         Fix compilation without CONFIG_PM.
     + AD1889 driver
       - Summary: Remove xxx_t typedefs: PCI AD1889
         Remove xxx_t typedefs from the PCI AD1889 driver.
       - Summary: ad1889 - don't use CVS Id tag - it complicates merging
     + AK4114 receiver
       - Summary: Remove xxx_t typedefs: I2C drivers
         Remove xxx_t typedefs from the i2c drivers.
       - Summary: Remove xxx_t typedefs: I2C drivers
         [Missing files in last commit]
         Remove xxx_t typedefs from the i2c drivers.
     + AK4117 receiver
       - Summary: Remove xxx_t typedefs: I2C drivers
         [Missing files in last commit]
         Remove xxx_t typedefs from the i2c drivers.
     + AK4531 codec
       - Summary: Remove xxx_t typedefs: AK4531 codec
         Remove xxx_t typedefs from the AK4531 codec support code.
       - Summary: ak4531 - Add PM support
         Add PM support to AK4531 codec driver.
     + AK4XXX AD/DA converters
       - Summary: Remove xxx_t typedefs: I2C drivers
         [Missing files in last commit]
         Remove xxx_t typedefs from the i2c drivers.
     + ALI5451 driver
       - Summary: Remove xxx_t typedefs: PCI ALI5451
         Remove xxx_t typedefs from the PCI ALI5451 driver.
       - Summary: ali5451 - Fix PM support
         Fix PM support on ALI5451 driver.
     + ALS100 driver
       - Summary: Remove xxx_t typedefs: ISA SB/AD-clone
         Remove xxx_t typedefs from the ISA SB/AD-clone drivers
         (als100, azt2320, dt019x, sgalaxy).
       - Summary: als100 - Add PM support
         Add PM support to als100 driver.
     + ALS4000 driver
       - Summary: ALS4000 update
         some update for the ALS4000 driver (tested with hardware in my PC):
         - use common control names according to ControlNames.txt
         - add some controls (Master Mono, 3D control)
         - optimize struct snd_card_als4000_t layout (performance/size)
         - save some bytes via unified error path
         - constify some read-only data
         - add ToDo list
         - move GPL license text to top
         - add comments
         Signed-off-by: Andreas Mohr <andi@lisas.de>
       - Summary: Remove xxx_t typedefs: PCI ALS4000
         Remove xxx_t typedefs from the PCI ALS4000 driver.
       - Summary: als4000 - Add PM support
         Add PM support to PCI ALS4000 driver.
     + ALSA sequencer
       - Summary: Clean up includes in asound.h & asequencer.h
         Clean up includes in asound.h and asequencer.h.
       - Summary: Remove xxx_t typedefs: Sequencer
         Remove xxx_t typedefs from the core sequencer codes.
       - Summary: Remove xxx_t typedefs: Sequencer OSS-emulation
         Remove xxx_t typedefs from the core sequencer OSS-emulation codes.
       - Summary: Remove xxx_t typedefs: Sequencer
         Remove xxx_t typedefs from sequencer.
         Patches are regenerated.
       - Summary: dynamic minors (5/6): reduce maximum number of MIDI devices per card
         To allow increasing the maximum number of sound cards, we have to limit
         the number of sequencer clients per card because client numbers are
         still allocated statically.
         Reducing the number of clients to four limits the number of sequencer
         MIDI ports to 1024 per card.
       - Summary: dynamic minors (6/6): increase maximum number of sound cards
         With dynamic minor numbers, we can increase the number of sound cards.
         This requires that the sequencer client numbers of some kernel drivers
         are allocated dynamically, too.
       - Summary: Optimize for config without PROC_FS (seq and oss parts)
         Optimize the code when compiled without CONFIG_PROC_FS (in seq and oss
         emulation parts).
       - Summary: seq: remove superfluous fields
         None of the fields of struct snd_seq_kernel_client was actually used, so
         remove them.
       - Summary: seq: remove struct snd_seq_client_callback
         The fields of struct snd_seq_client_callback either aren't used or are
         always set to the same value, so we can get rid of it altogether.
       - Summary: seq: set client name in snd_seq_create_kernel_client()
         All users of snd_seq_create_kernel_client() have to set the client name
         anyway, so we can just pass the name as parameter.  This relieves us
         from having to muck around with a struct snd_seq_client_info in these
         cases.
       - Summary: seq: reorganize sequencer client numbers
         Reduce the maximum possible number of global clients to 16 to make
         more numbers available for card clients, and allow dynamically allocated
         card client numbers to share the same range as application client
         numbers to make sure that all 32 cards can be used at the same time.
     + ALSA<-OSS emulation
       - Summary: Use standard bitmap functions
         Use standard bitmap functions instead of in-house ones.
       - Summary: Remove xxx_t typedefs: Mixer OSS-emulation
         Remove xxx_t typedefs from the core mixer OSS-emulation codes.
       - Summary: Remove xxx_t typedefs: PCM OSS-emulation
         Remove xxx_t typedefs from the core PCM OSS-emulation codes.
       - Summary: Remove xxx_t typedefs: OSS-emulation
         Remove xxx_t typedefs from mixer/pcm oss-emulation.
         Patches are regenerated.
       - Summary: Optimize for config without PROC_FS (seq and oss parts)
         Optimize the code when compiled without CONFIG_PROC_FS (in seq and oss
         emulation parts).
     + ALSA<-OSS sequencer
       - Summary: Remove xxx_t typedefs: Sequencer OSS-emulation
         Remove xxx_t typedefs from the core sequencer OSS-emulation codes.
       - Summary: Remove xxx_t typedefs: Sequencer
         Remove xxx_t typedefs from sequencer.
         Patches are regenerated.
       - Summary: Optimize for config without PROC_FS (seq and oss parts)
         Optimize the code when compiled without CONFIG_PROC_FS (in seq and oss
         emulation parts).
       - Summary: Fixed patch
         Fixed patch for seq_oss.c to follow the last change.
       - Summary: seq: remove struct snd_seq_client_callback
         The fields of struct snd_seq_client_callback either aren't used or are
         always set to the same value, so we can get rid of it altogether.
       - Summary: seq: set client name in snd_seq_create_kernel_client()
         All users of snd_seq_create_kernel_client() have to set the client name
         anyway, so we can just pass the name as parameter.  This relieves us
         from having to muck around with a struct snd_seq_client_info in these
         cases.
     + ARM
       - Summary: Remove SND_GENERIC_DRIVER from arm/Kconfig
         Remove the obsolete SND_GENERIC_DRIVER from arm/Kconfig.
       - Summary: PXA2xx i2Sound: support for Intel PXA2xx I2S audio.
         Support for Intel PXA2xx I2S audio.
         Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
     + ARM AACI PL041 driver
       - Summary: Remove xxx_t typedefs: ARM AACI
         Remove xxx_t typedefs from the ARM AACI driver.
       - Summary: Fix PM support
         Fix PM support of aaci and pxa2xx drivers.
     + ARM DMA routines
       - Summary: Remove xxx_t typedefs: ARM AACI
         Remove xxx_t typedefs from the ARM AACI driver.
     + ARM PXA2XX driver
       - Summary: Remove xxx_t typedefs: ARM PXA2xx
         Remove xxx_t typedefs from the ARM PXA2xx driver.
       - Summary: Fix PM support
         Fix PM support of aaci and pxa2xx drivers.
       - Summary: PXA2xx i2Sound: support for Intel PXA2xx I2S audio.
         Support for Intel PXA2xx I2S audio.
         Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
       - Summary: make the pxa2xx-ac97 module more robust against PXA27x bugs
         The SDONE and CDONE interrupt on the PXA27x might become unusable in
         some conditions.  Let's use an hybrid approach (interrupt with timeout)
         to have the best possible behavior in all conditions.
         Also let's not care about CAR_CAIP anymore.  This is useless.
         Signed-off-by: Nicolas Pitre <nico@cam.org>
     + ARM S3C24XX IIS driver
       - Summary: Remove xxx_t typedefs: ARM S3C24xx-IIS
         Remove xxx_t typedefs from the ARM S3C24xx-IIS driver.
     + ATIIXP driver
       - Summary: Remove superfluous macros
         Remove superfluous macros for delay.
         Call appropriate functions directly.
       - Summary: Remove xxx_t typedefs: PCI ATIIXP
         Remove xxx_t typedefs from the PCI ATIIXP and modem drivers.
       - Summary: atiixp - Fix PM support
         Fix PM support on ATIIXP and modem drivers.
       - Summary: Optimize for config without PROC_FS (pci drivers)
         Optimize the code when compiled without CONFIG_PROC_FS for some pci drivers.
       - Summary: Add a new quirk for mute-LED and HP-only.
         This patch adds a new quirk for ac97 hardware that combines the existing
         AC97_TUNE_MUTE_LED and AC97_TUNE_HP_ONLY quirks.  This is needed for several
         current HP laptops.  Additionally, it adds the HP nx6125 to the
         AC97_TUNE_MUTE_LED list.
         Fixed for the latest version of ALSA by Takashi Iwai <tiwai@suse.de>.
         Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org>
     + ATIIXP-modem driver
       - Summary: Remove superfluous macros
         Remove superfluous macros for delay.
         Call appropriate functions directly.
       - Summary: Remove xxx_t typedefs: PCI ATIIXP
         Remove xxx_t typedefs from the PCI ATIIXP and modem drivers.
       - Summary: atiixp - Fix PM support
         Fix PM support on ATIIXP and modem drivers.
       - Summary: Optimize for config without PROC_FS (pci drivers)
         Optimize the code when compiled without CONFIG_PROC_FS for some pci drivers.
     + AZT2320 driver
       - Summary: Remove xxx_t typedefs: ISA SB/AD-clone
         Remove xxx_t typedefs from the ISA SB/AD-clone drivers
         (als100, azt2320, dt019x, sgalaxy).
       - Summary: azt2320 - Add PM support
         Add PM support to azt2320 driver.
     + AZT3328 driver
       - Summary: Remove xxx_t typedefs: PCI AZT3328
         Remove xxx_t typedefs from the PCI AZT3328 driver.
     + BT87x driver
       - Summary: Remove xxx_t typedefs: PCI BT87x
         Remove xxx_t typedefs from the PCI BT87x driver.
       - Summary: 2.6-git-sync: Fix PCI ids in bt87x.c
         Fix PCI ids in bt87x.c, which was missing in the last sync with git tree.
     + CA0106 driver
       - Summary: ca0106 - Code clean up
         Clean up snd-ca0106 driver code:
         - Fix spaces and indents
         - Remove unnecessary spinlocks
         - Clean up the mixer callbacks using private_value
         - Clean up mixer constructors using an array
       - Summary: Remove xxx_t typedefs: PCI CA0106
         Remove xxx_t typedefs from the PCI CA0106 driver.
     + CMI8330 driver
       - Summary: Remove superfluous pcm_free callbacks
         Remove superflous pcm_free callbacks.
       - Summary: Remove xxx_t typedefs: ISA CMI8330
         Remove xxx_t typedefs from the ISA CMI8330 driver.
       - Summary: cmi8330 - Use platform_device, add PM support
         Rewrite the probe/remove with platform_device.
         Also, add the PM support.
     + CMIPCI driver
       - Summary: Remove xxx_t typedefs: PCI CMIPCI
         Remove xxx_t typedefs from the PCI CMIPCI driver.
       - Summary: cmipci - Add PM support
         Add PM support to CMIPCI driver.
     + CREDITS file
       - Summary: Keep non-ALSA kernel files
         Keep non-ALSA kernel files in kernel subdirectory to sync and make
         patches easily.  MAINTAINERS is moved to this directory, too.
       - Summary: Add support for the CS5535 Audio device
         Add support for the CS5535 Audio device.  I've fixed up some errors as per
         Takashi's advice from the thread:
         http://lkml.org/lkml/2005/9/15/119
          From: Alan Cox <alan@lxorguk.ukuu.org.uk>
                 cs5535 is a 32bit x86 only device using weird CPU features
         Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
         Signed-off-by: Andrew Morton <akpm@osdl.org>
     + CS4231 driver
       - Summary: Remove superfluous pcm_free callbacks
         Remove superflous pcm_free callbacks.
       - Summary: Clean up ISA cs4231 code
         Clean up ISA cs4231 code, removing experimental EBUS/SBUS merge,
         to improve readability.
       - Summary: Remove xxx_t typedefs: ISA CS423x
         Remove xxx_t typedefs from the ISA CS423x drivers.
       - Summary: cs4231 - Fix PM support
         Fix PM support.
       - Summary: cs4231 - Use platform_device
         Rewrite the probe/remove with platform_device.
       - Summary: Fix resume of cs4231
         Use mce_down() again in the resume callback.
       - Summary: Add CS4232 PnP BIOS support
         Add CS4232 PnP BIOS support.  Still experimental.
       - Summary: Fix a compile warning
         Fix a compile warning (unused variable).
     + CS4236+ driver
       - Summary: Remove xxx_t typedefs: ISA CS423x
         Remove xxx_t typedefs from the ISA CS423x drivers.
       - Summary: cs4236 - Use platform_device
         Rewrite the probe/remove with platform_device.
       - Summary: Add CS4232 PnP BIOS support
         Add CS4232 PnP BIOS support.  Still experimental.
     + CS4281 driver
       - Summary: cs4281 - Clean up delay function
         Remove the own delay function.
         Call appropriate functions directly.
       - Summary: Remove xxx_t typedefs: PCI CS4281
         Remove xxx_t typedefs from the PCI CS4281 driver.
       - Summary: cs4281 - Fix PM support
         Fix PM support on CS4281 driver.
     + CS46xx driver
       - Summary: Remove xxx_t typedefs: PCI CS46xx
         Remove xxx_t typedefs from the PCI CS46xx driver.
       - Summary: cs46xx - Fix PM support
         Fix PM support on CS46xx driver.
     + CS5535 driver
       - Summary: Minor clean up and fixes for CS5535 audio driver
         Minor clean up and fixes for CS5535 audio driver.
         Added an entry in ALSA-Configuration.txt, too.
       - Summary: Remove xxx_t typedefs: PCI CS5535
         Remove xxx_t typedefs from the PCI CS5535 driver.
       - Summary: cs5535audio: move sound/driver.h to the top
         Move the #include of <sound/driver.h> to the top which is
         required for compilation on earlier kernels.
     + Common EMU synth
       - Summary: emux - Avoid cast of function pointers
         Pass the proper functions instead of cast of function pointers, which
         can be dangerous with compiler optimizations.
       - Summary: Remove xxx_t typedefs: Emu-X synth
         Remove xxx_t typedefs from the Emu-X synth support.
     + DT019x driver
       - Summary: Remove xxx_t typedefs: ISA SB/AD-clone
         Remove xxx_t typedefs from the ISA SB/AD-clone drivers
         (als100, azt2320, dt019x, sgalaxy).
       - Summary: dt019x - Add PM support
         Add PM support to dt019x driver.
     + Digigram PCXHR driver
       - Summary: Add PCXHR driver
         From: Markus Bollinger <bollinger@digigram.com>
         Add Digigram PCXHR driver.
     + Digigram VX Pocket driver
       - Summary: Remove snd_vx_delay() function
         Replace snd_vx_delay() with appropriate delay/sleep functions.
       - Summary: Remove xxx_t typedefs: VXdriver
         Remove xxx_t typedefs from the VXdriver codes
         (vx_core support, vx222 and vxpocket).
       - Summary: vx-driver - Fix PM support
         Fix PM support on VX drivers (vxpocket and vx222).
     + Digigram VX core
       - Summary: Remove snd_vx_delay() function
         Replace snd_vx_delay() with appropriate delay/sleep functions.
       - Summary: Remove xxx_t typedefs: VXdriver
         Remove xxx_t typedefs from the VXdriver codes
         (vx_core support, vx222 and vxpocket).
       - Summary: vx-driver - Fix PM support
         Fix PM support on VX drivers (vxpocket and vx222).
     + Digigram VX222 driver
       - Summary: Remove snd_vx_delay() function
         Replace snd_vx_delay() with appropriate delay/sleep functions.
       - Summary: Remove xxx_t typedefs: VXdriver
         Remove xxx_t typedefs from the VXdriver codes
         (vx_core support, vx222 and vxpocket).
       - Summary: vx-driver - Fix PM support
         Fix PM support on VX drivers (vxpocket and vx222).
     + Documentation
       - Summary: Minor clean up and fixes for CS5535 audio driver
         Minor clean up and fixes for CS5535 audio driver.
         Added an entry in ALSA-Configuration.txt, too.
       - Summary: [Trivial] Fix ac97_quirk option in document
         Fix a wrong option value for ac97_quirk option in the document.
       - Summary: Small update of Procfile.txt
         Small update of Procfile.txt for hda and usb proc files.
       - Summary: Remove xxx_t typedefs: Documentation
         Remove xxx_t typedefs from documentation.
       - Summary: document - Add PM support
         Mark the drivers newly supporting PM in the documentation.
       - Summary: document - Update PM support
         Update the description about the PCI PM support.
       - Summary: adjust documentation for higher card limit
         Fix all places in the docs where the card number limit is mentioned.
       - Summary: Add PCXHR driver
         From: Markus Bollinger <bollinger@digigram.com>
         Add Digigram PCXHR driver.
     + EMU10K1/EMU10K2 driver
       - Summary: emu10k1x - Minor clean up
         Minor clean up of the emu10k1x interrupt handler code.
       - Summary: emu10k1 - Minor clean up of memory block handling
         Minor clean up of emu10k1 memory block allocation.
       - Summary: Remove xxx_t typedefs: PCI emu10k1
         Remove xxx_t typedefs from the PCI emu10k1 driver.
       - Summary: Remove xxx_t typedefs: PCI emu10k1x
         Remove xxx_t typedefs from the PCI emu10k1x driver.
       - Summary: emu10k1 - Add PM support
         Add PM support to emu10k1 driver.
       - Summary: emu10k1: Partial support for Creative emu1212m
         Distorted sound now comes from the Audio Out socket. Still more work to do.
       - Summary: emu10k1 - Fix missing declarations
         sound/pci/emu10k1/emufx.c: In function 'snd_emu10k1_efx_alloc_pm_buffer':
         sound/pci/emu10k1/emufx.c:2402: error: implicit declaration of function 'vmalloc'
         sound/pci/emu10k1/emufx.c:2402: warning: assignment makes pointer from integer without a cast
         sound/pci/emu10k1/emufx.c: In function 'snd_emu10k1_efx_free_pm_buffer':
         sound/pci/emu10k1/emufx.c:2413: error: implicit declaration of function 'vfree'
         Signed-off-by: Andreas Schwab <schwab@suse.de>
       - Summary: emu10k1 - Add entry for SB Live 5.1 Digital OEM [SB0220]
         Added the chip-detail entry for SB Live 5.1 Digital OEM [SB0220, (c) 2003].
         Signed-off-by: Gergely Tamas <dice@mfa.kfki.hu>
     + EMU8000 driver
       - Summary: Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
         Remove xxx_t typedefs from the ISA SB8/SB16/SBAWE drivers.
     + ENS1370/1+ driver
       - Summary: Fix missing suspend/resume-code for ens1371
         This patch fixes missing suspend/resume-code for snd-ens1371
         (but not for snd-ens1370)
         Signed-off-by: Kurt J. Bosch <kjb-temp-2005@gmx.de>
       - Summary: Remove xxx_t typedefs: PCI ENS137x
         Remove xxx_t typedefs from the PCI ENS137x drivers.
       - Summary: ens137x - Fix and ADD PM support
         Fix PM support on ens1371 driver.
         Add PM support on ens1370 (together with AK4531), too.
       - Summary: ens1371: added spdif and lineio module options
         - spdif module option: some hardware revisions are without spdif output
         - lineio module option: force shared line in / rear out jack settings
       - Summary: ens1371: fix compilation without SUPPORT_JOYSTICK
         Move the spdif and lineio parameters around so that they are compiled
         even when SUPPORT_JOYSTICK isn't set.
     + ES1688 driver
       - Summary: Remove xxx_t typedefs: ISA ES1688
         Remove xxx_t typedefs from the ISA ES1688 driver.
       - Summary: es1688 - Use platform_device
         Rewrite the probe/remove with platform_device.
     + ES18xx driver
       - Summary: Remove superfluous pcm_free callbacks
         Remove superflous pcm_free callbacks.
       - Summary: Remove xxx_t typedefs: ISA ES18xx
         Remove xxx_t typedefs from the ISA ES18xx driver.
       - Summary: es18xx - Use platform_device
         Rewrite the probe/remove with platform_device.
     + ES1938 driver
       - Summary: Remove xxx_t typedefs: PCI ES1938
         Remove xxx_t typedefs from the PCI ES1938 driver.
       - Summary: es1938 - Fix PM support
         Fix PM support on ES1938 driver.
     + ES1968 driver
       - Summary: Remove xxx_t typedefs: PCI ES1968
         Remove xxx_t typedefs from the PCI ES1968 driver.
       - Summary: es1968 - Fix PM support
         Fix PM support on ES1968 driver.
     + ES968 driver
       - Summary: Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
         Remove xxx_t typedefs from the ISA SB8/SB16/SBAWE drivers.
       - Summary: es968 - Add PM support
         Add PM support to es968 driver.
     + FM801 driver
       - Summary: Remove xxx_t typedefs: PCI FM801
         Remove xxx_t typedefs from the PCI FM801 driver.
       - Summary: fm801 - Add PM support
         Add PM support to fm801 driver.
     + GUS Classic driver
       - Summary: Remove xxx_t typedefs: ISA GUS
         Remove xxx_t typedefs from the ISA GUS drivers.
       - Summary: gus - Use platform_device
         Rewrite the probe/remove with platform_device.
     + GUS Extreme driver
       - Summary: Remove xxx_t typedefs: ISA GUS
         Remove xxx_t typedefs from the ISA GUS drivers.
       - Summary: gus - Use platform_device
         Rewrite the probe/remove with platform_device.
     + GUS Library
       - Summary: [Trivial] Fix spaces in gus.h
         Fix spaces in gus.h.
       - Summary: Remove xxx_t typedefs: ISA GUS
         Remove xxx_t typedefs from the ISA GUS drivers.
       - Summary: seq: remove struct snd_seq_client_callback
         The fields of struct snd_seq_client_callback either aren't used or are
         always set to the same value, so we can get rid of it altogether.
       - Summary: seq: set client name in snd_seq_create_kernel_client()
         All users of snd_seq_create_kernel_client() have to set the client name
         anyway, so we can just pass the name as parameter.  This relieves us
         from having to muck around with a struct snd_seq_client_info in these
         cases.
     + GUS MAX driver
       - Summary: Remove xxx_t typedefs: ISA GUS
         Remove xxx_t typedefs from the ISA GUS drivers.
       - Summary: gus - Use platform_device
         Rewrite the probe/remove with platform_device.
     + Generic drivers
       - Summary: Update of PC-speaker driver
         From: Stas Sergeev <stsp@aknet.ru>
         Update PC-Speaker driver using a new hook.
         A new patch is provided, too.
       - Summary: Remove superfluous pcm_free callbacks
         Remove superflous pcm_free callbacks.
       - Summary: snd-dummy - Code clean-up
         Clean up snd-dummy driver code.
         - Make common PCM callbacks
         - Simplify open callback
         - Remove unnecessary irqsave in control callbacks
       - Summary: Remove xxx_t typedefs: Generic drivers
         Remove xxx_t typedefs from the generic drivers
         (dummy, mtpav, serial-u16550 and virmidi).
       - Summary: Remove xxx_t typedefs: PC-Speaker
         Remove xxx_t typedefs from PC-Speaker driver.
       - Summary: Remove xxx_t typedefs: ALoop
         Remove xxx_t typedefs from the ALoop driver.
       - Summary: Remove xxx_t typedefs: Serial MIDI
         Remove xxx_t typedefs from the serial MIDI driver.
       - Summary: Remove xxx_t typedefs: Portman2x4
         Remove xxx_t typedefs from the Portman2x4 driver.
       - Summary: dummy - Use platform_device
         Rewrite the probe/remove code using platform_device.
         Added the suspend/resume support, too.
       - Summary: mtpav - Use platform_device
         Rewrite the probe/remove code using platform_device.
       - Summary: serial-u16550 - Use platform_device
         Rewrite the probe/remove code using platform_device.
       - Summary: virmidi - Use platform_device
         Rewrite the probe/remove code using platform_device.
       - Summary: Remove SND_GENERIC_DRIVER from drivers/Kconfig
         Remove SND_GENERIC_DRIVER from drivers/Kconfig.
       - Summary: serialmidi - Remove snd_card_generic_set_dev()
         Remove the obsolete snd_card_generic_set_dev().
       - Summary: Fix possible races in timer callbacks
         Fix possible races in timer callbacks.
       - Summary: dynamic minors (5/6): reduce maximum number of MIDI devices per card
         To allow increasing the maximum number of sound cards, we have to limit
         the number of sequencer clients per card because client numbers are
         still allocated statically.
         Reducing the number of clients to four limits the number of sequencer
         MIDI ports to 1024 per card.
       - Summary: sound: align device drivers menus
         AC97 Kconfig entries broke the ALSA device drivers menu, so move them to a
         location where that won't happen, enabling all device sub-menus to be
         presented together.
         Fixed for the latest ALSA tree by Takashi Iwai <tiwai@suse.de>.
         Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
     + HAL2 driver
       - Summary: Remove xxx_t typedefs: HAL2
         Remove xxx_t typedefs from the HAL2 driver.
     + HDA Codec driver
       - Summary: hda-codec - Add channel-mode helper
         Add common channel-mode helper functions for all codec patches.
       - Summary: hda-codec - Prepare unsol workqueue on demand
         Prepare unsol workqueue only when a codec really supports.
       - Summary: hda-codec - Fix a typo
         Fix a typo in hda_codec.h.
       - Summary: hda-codec - Fix assignment of speaker pin
         Fix the auto-assignment of speaker pin.  Handle it independently from
         line-out pins.
       - Summary: Remove xxx_t typedefs: HD-Audio codec
         Remove xxx_t typedefs from the HD-Audio codec support codes.
       - Summary: hda-codec - Add AD1988 support
         Add AD1988 codec support to hda-codec driver.
         Still experimental, and no BIOS configuration parser is implemented yet.
       - Summary: hda-codec - Fix connection list parsing
         - Fix connection list parsing (with ranged flag).
         - Increase the max number of connections
         - Introduce widget capabilities cache
         - Power up/down widgets at init, suspend and resume
       - Summary: hda-codec - Fix AD1988 support
         Fix AD1988 support.  As default, 6stack model is used.
         Still no auto-BIOS setup is implemented.
       - Summary: hda-codec - Fix auto-probe of ALC880
         This patch is to fix the problem of calculating the nid incorrectly
         when auto-probe for ALC880. The problem to be fixed often behaves
         with such words when using dmesg, 'num_steps = 0 for NID=0x8' when
         auto-probe for ALC880.
         The patch contains:
         - alsa-kernel/pci/hda/patch_realtek.c: replace 'alc880_dac_to_idx'
           with 'alc880_idx_to_dac' in function 'alc880_auto_fill_dac_nids()'
         Signed-off-by: Libin Yang <libin.yang@intel.com>
       - Summary: hda-codec - Fix channel mode helper
         Fix the channel mode helper (for put callback).
       - Summary: hda-codec - Fix/enhance AD1988 support
         Fix/enhance AD1988 support code.
         - Fix for h/w bug of AD1988A rev 2
         - The BIOS auto-configuration is added and used as fallback
       - Summary: hda-codec - Fix surrounds on 3stack mode of AD1988
         Fixed the swapped surround/CLFE on 3stack mode of AD1988.
       - Summary: hda-codec - update sigmatel support and bug fixes
         - Explictly set pin control as input for all input pins
         - Fix bug in 922x mixer (no mute on adc0vol)
         - Remove broken ch_mode control
         - Add support for jack retasking mixer controls to use rear line and
           mic as surround outputs
         - Add board tables to support autodetect and pin config defaults for
           systems with broken bioses
         - Add support for several Intel mobos
         - Add support for DFI mobo with reference boards attached
           (gets rid of compile time switch to use reference boards)
         Signed-off-by: Matt Porter <mporter@embeddedalley.com>
       - Summary: hda-codec - Add the support of ALC262,ALC883,ALC885,ALC861
         This patch adds the support of ALC262,ALC883,ALC885,ALC861 to driver
         More models and improvements for ALC880, ALC260 and ALC882 codecs, too.
         Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
       - Summary: hda-codec - Fix ALC codec probing
         - Fix ALC882 BIOS auto-probe
         - Fix ALC262 basic model
         - Add assert for debugging Oops
       - Summary: hda-codec - Fix Oops with ALC260 auto-probe
         - Fix Oops with auto-probing of ALC260 with digital I/O
         - Fix a typo
       - Summary: hda-codec - Small clean up and fixes
         - Common labels for input pins
         - Fix and clean up of Realtek codec parsers
       - Summary: hda-codec - Add the model entry for ASUS P5GD1-HVM
         Add the model entry (ALC880 6stack) for ASUS P5GD1-HVM.
     + HDA Intel driver
       - Summary: Remove xxx_t typedefs: HDA-Intel
         Remove xxx_t typedefs from the HDA-Intel driver.
       - Summary: hda-intel - Fix PM support
         Fix PM support on HDA-Intel driver.
       - Summary: hda-intel - Use position buffer as default
         - Use the position buffer for obtaining the current DMA position
           as default.  This seems more stable than others.
         - Add probe_mask module option (mainly for test boards with multiple
           codecs).
       - Summary: hda-intel - Fix HDA probe_mask default
         The probe_mask module parameter comment notes that the intended
         default is -1. Fix it to be so, otherwise all codecs are skipped
         and init fails.
         Signed-off-by: Matt Porter <mporter@embeddedalley.com>
     + HDA generic driver
       - Summary: hda-codec - Add channel-mode helper
         Add common channel-mode helper functions for all codec patches.
       - Summary: hda-codec - Fix assignment of speaker pin
         Fix the auto-assignment of speaker pin.  Handle it independently from
         line-out pins.
       - Summary: Remove xxx_t typedefs: HD-Audio codec
         Remove xxx_t typedefs from the HD-Audio codec support codes.
       - Summary: hda-codec - Fix connection list parsing
         - Fix connection list parsing (with ranged flag).
         - Increase the max number of connections
         - Introduce widget capabilities cache
         - Power up/down widgets at init, suspend and resume
       - Summary: hda-codec - Allocate connection lists dynamically in generic parser
         Allocate connection lists dynamically in generic parser.
       - Summary: sound/: possible cleanups
         This patch contains the following possible cleanups:
         - pci/hda/hda_proc.c should #include "hda_local.h" for including the
           prototype of it's global function snd_hda_codec_proc_new()
         - core/rawmidi.c: make the needlessly global and EXPORT_SYMBOL'ed
           function snd_rawmidi_info() static
         Signed-off-by: Adrian Bunk <bunk@stusta.de>
       - Summary: hda-codec - Add the support of ALC262,ALC883,ALC885,ALC861
         This patch adds the support of ALC262,ALC883,ALC885,ALC861 to driver
         More models and improvements for ALC880, ALC260 and ALC882 codecs, too.
         Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
       - Summary: hda-codec - Small clean up and fixes
         - Common labels for input pins
         - Fix and clean up of Realtek codec parsers
     + HDSPM driver
       - Summary: Remove xxx_t typedefs: PCI HDSP-MADI
         Remove xxx_t typedefs from the PCI HDSP-MADI driver.
     + I2C Kconfig
       - Summary: Audio support for codec Philips UDA1380
         Audio support for codec Philips UDA1380.
         Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
     + I2C UDA1380
       - Summary: Audio support for codec Philips UDA1380
         Audio support for codec Philips UDA1380.
         Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
     + I2C cs8427
       - Summary: Remove xxx_t typedefs: I2C drivers
         Remove xxx_t typedefs from the i2c drivers.
     + I2C lib core
       - Summary: Remove xxx_t typedefs: I2C drivers
         Remove xxx_t typedefs from the i2c drivers.
     + I2C tea6330t
       - Summary: Remove tea6330t struct definition from public header
         Remove tea6330t struct definition from public header.
         It's anyway unaccessible from outside.
       - Summary: Remove xxx_t typedefs: I2C drivers
         Remove xxx_t typedefs from the i2c drivers.
     + ICE1712 driver
       - Summary: Remove xxx_t typedefs: PCI ICE1712
         Remove xxx_t typedefs from the PCI ICE1712 driver.
       - Summary: Remove xxx_t typedefs: PCI ICE1724
         Remove xxx_t typedefs from the PCI ICE1724 driver.
       - Summary: ice1712 - Fix Front Digital Input of Terratec DMX 6Fire
         Fix the inverted switch of "Front Digital Input" of Terratec DMX 6Fire.
     + ICE1724 driver
       - Summary: Remove xxx_t typedefs: PCI ICE1724
         Remove xxx_t typedefs from the PCI ICE1724 driver.
       - Summary: ice1724 - Add support of M-Audio Revolution 5.1
         Added the basic support of M-Audio Revolution 5.1.
     + IOCTL32 emulation
       - Summary: Remove xxx_t typedefs: Ioctl32
         Remove xxx_t typedefs from old ioctl32 module.
         Patches are regenerated.
       - Summary: dynamic minors (3/6): store device-specific object pointers dynamically
         Instead of storing the pointers to the device-specific structures in an
         array, put them into the struct snd_minor, and look them up dynamically.
         This makes the device type modules independent of the minor number
         encoding.
     + ISA
       - Summary: Sort Kconfig entries
         Sort Kconfig entries in alphabetical order.
       - Summary: Remove SND_GENERIC_DRIVER from isa/Kconfig
         Remove the obsolete SND_GENERIC_DRIVER from isa/Kconfig.
     + Instrument layer
       - Summary: Remove xxx_t typedefs: Instrument layer
         Remove xxx_t typedefs from the core instrument layer codes.
     + Intel8x0 driver
       - Summary: intel8x0 - Clean up delay function
         Remove superfluous delay macro.
         Call appropriate functions directly.
       - Summary: Remove xxx_t typedefs: PCI Intel8x0
         Remove xxx_t typedefs from the PCI Intel8x0 and modem drivers.
       - Summary: intel8x0 - Fix PM support
         Fix PM support on Intel8x0 and modem drivers.
       - Summary: intel8x0 - Added swap_hp quirk for Fujitsu-Siemens Celsius H320 [0x10cf:0x12f2]
       - Summary: Optimize for config without PROC_FS (pci drivers)
         Optimize the code when compiled without CONFIG_PROC_FS for some pci drivers.
       - Summary: Add a new quirk for mute-LED and HP-only.
         This patch adds a new quirk for ac97 hardware that combines the existing
         AC97_TUNE_MUTE_LED and AC97_TUNE_HP_ONLY quirks.  This is needed for several
         current HP laptops.  Additionally, it adds the HP nx6125 to the
         AC97_TUNE_MUTE_LED list.
         Fixed for the latest version of ALSA by Takashi Iwai <tiwai@suse.de>.
         Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org>
     + Intel8x0-modem driver
       - Summary: intel8x0 - Clean up delay function
         Remove superfluous delay macro.
         Call appropriate functions directly.
       - Summary: Remove xxx_t typedefs: PCI Intel8x0
         Remove xxx_t typedefs from the PCI Intel8x0 and modem drivers.
       - Summary: intel8x0 - Fix PM support
         Fix PM support on Intel8x0 and modem drivers.
       - Summary: Optimize for config without PROC_FS (pci drivers)
         Optimize the code when compiled without CONFIG_PROC_FS for some pci drivers.
     + KORG1212 driver
       - Summary: korg1212 - Clean up debug prints
         Clean up debug prints in korg1212 driver.
         Also, clean up spaces/indents in some places.
       - Summary: Remove xxx_t typedefs: PCI KORG1212
         Remove xxx_t typedefs from the PCI KORG1212 driver.
       - Summary: Fix possible races in timer callbacks
         Fix possible races in timer callbacks.
     + L3 drivers
       - Summary: Clean up sa11xx-uda1341 driver
         Clean up sa11xx-uda1341 driver:
         - Fix buggy destructor
         - Remove the global variable
         - Move array definitions from uda1341.h
         - Make functions in uda1341.c static
       - Summary: Remove xxx_t typedefs: I2C drivers
         Remove xxx_t typedefs from the i2c drivers.
     + MAINTAINERS file
       - Summary: Keep non-ALSA kernel files
         Keep non-ALSA kernel files in kernel subdirectory to sync and make
         patches easily.  MAINTAINERS is moved to this directory, too.
       - Summary: Add support for the CS5535 Audio device
         Add support for the CS5535 Audio device.  I've fixed up some errors as per
         Takashi's advice from the thread:
         http://lkml.org/lkml/2005/9/15/119
          From: Alan Cox <alan@lxorguk.ukuu.org.uk>
                 cs5535 is a 32bit x86 only device using weird CPU features
         Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
         Signed-off-by: Andrew Morton <akpm@osdl.org>
     + MIPS
       - Summary: Remove snd_card_generic_dev()
         Remove the obsolete snd_card_generic_dev().
         CONFIG_SND_GENERIC_DRIVER is also removed from Kconfig.
     + MIPS AU1x00 driver
       - Summary: au1x00 - Code clean up
         Clean up snd-au1x00 driver code:
         - Remove global variables
         - Remove old compatibility codes
         - Fix DMA-link allocation/release functions in hw_params and hw_free
           callbacks (they may be called multiple times)
         - Fix spinlocks
       - Summary: Remove xxx_t typedefs: MIPS AU1x00
         Remove xxx_t typedefs from the MIPS AU1x00 driver.
       - Summary: Remove snd_card_generic_dev()
         Remove the obsolete snd_card_generic_dev().
         CONFIG_SND_GENERIC_DRIVER is also removed from Kconfig.
     + MIXART driver
       - Summary: Remove xxx_t typedefs: PCI miXart
         Remove xxx_t typedefs from the PCI miXart driver.
     + MPU401 UART
       - Summary: Remove xxx_t typedefs: MPU401
         Remove xxx_t typedefs from the MPU401-UART and MPU401 drivers
       - Summary: Remove xxx_t typedefs: MPU401
         Remove xxx_t typedefs from MP401.
         Patches are regenerated.
       - Summary: mpu401 - Use platform_device
         Rewrite the probe/remove code using platform_device.
       - Summary: Fix possible races in timer callbacks
         Fix possible races in timer callbacks.
     + MSND driver
       - Summary: Remove xxx_t typedefs: ISA MSND-Pinnacle
         Remove xxx_t typedefs from the ISA MSND-Pinnacle driver.
     + Maestro3 driver
       - Summary: Remove xxx_t typedefs: PCI Maestro3
         Remove xxx_t typedefs from the PCI Maestro3 driver.
       - Summary: maestro3 - Fix PM support
         Fix PM support on maestro3 driver.
     + Memalloc module
       - Summary: dynamic minors (6/6): increase maximum number of sound cards
         With dynamic minor numbers, we can increase the number of sound cards.
         This requires that the sequencer client numbers of some kernel drivers
         are allocated dynamically, too.
       - Summary: unpaged: fix sound Bad page states
         Earlier I unifdefed PageCompound, so that snd_pcm_mmap_control_nopage
         and others can give out a 0-order component of a higher-order page,
         which won't be mistakenly freed when zap_pte_range unmaps it.  But
         many Bad page states reported a PG_reserved was freed after all: I had
         missed that we need to say __GFP_COMP to get compound page behaviour.
         Some of these higher-order pages are allocated by snd_malloc_pages, some
         by snd_malloc_dev_pages; or if SBUS, by sbus_alloc_consistent - but that
         has no gfp arg, so add __GFP_COMP into its sparc32/64 implementations.
         I'm still rather puzzled that DRM seems not to need a similar change.
         Signed-off-by: Hugh Dickins <hugh@veritas.com>
       - Summary: Define dummy __GFP_XXX for older kernels
         Define dummy __GFP_XXX for older kernels.
     + NM256 driver
       - Summary: nm256 - Code clean up
         Clean up snd-nm256 driver code:
         - Simplify chip constructor function
       - Summary: Remove xxx_t typedefs: PCI NM256
         Remove xxx_t typedefs from the PCI NM256 driver.
       - Summary: nm256-intel - Fix PM support
         Fix PM support on NM256 driver.
     + OLD GF1 header
       - Summary: Remove xxx_t typedefs: old gf1.h
         Remove xxx_t typedefs from old gf1.h.
     + OPL3
       - Summary: Remove xxx_t typedefs: OPL3
         Remove xxx_t typedefs from the OPL3 driver
       - Summary: Fix possible races in timer callbacks
         Fix possible races in timer callbacks.
       - Summary: seq: remove struct snd_seq_client_callback
         The fields of struct snd_seq_client_callback either aren't used or are
         always set to the same value, so we can get rid of it altogether.
       - Summary: seq: set client name in snd_seq_create_kernel_client()
         All users of snd_seq_create_kernel_client() have to set the client name
         anyway, so we can just pass the name as parameter.  This relieves us
         from having to muck around with a struct snd_seq_client_info in these
         cases.
     + OPL3SA2 driver
       - Summary: Remove xxx_t typedefs: ISA OPL3SA2
         Remove xxx_t typedefs from the ISA OPL3SA2 driver.
       - Summary: opl3sa2 - Use platform_device
         Rewrite the probe/remove with platform_device.
     + OPL4
       - Summary: Remove xxx_t typedefs: OPL4
         Remove xxx_t typedefs from the OPL4 driver
       - Summary: seq: remove struct snd_seq_client_callback
         The fields of struct snd_seq_client_callback either aren't used or are
         always set to the same value, so we can get rid of it altogether.
       - Summary: seq: set client name in snd_seq_create_kernel_client()
         All users of snd_seq_create_kernel_client() have to set the client name
         anyway, so we can just pass the name as parameter.  This relieves us
         from having to muck around with a struct snd_seq_client_info in these
         cases.
     + Opti9xx drivers
       - Summary: Remove xxx_t typedefs: ISA Opti9xx
         Remove xxx_t typedefs from the ISA Opti 9xx drivers.
       - Summary: Remove xxx_t typedefs: ISA Miro
         Remove xxx_t typedefs from the ISA Miro driver.
       - Summary: opti9xx - Use platform_device
         Rewrite the probe/remove with platform_device.
       - Summary: miro - Use platform_device
         Rewrite the probe/remove with platform_device.
       - Summary: unregister platform devices
         Call platform_device_unregister() for all platform devices that we've
         registered.
     + PARISC Harmony driver
       - Summary: harmony - Code clean up
         Clean up snd-harmony driver code:
         - Give standard module options
         - Fix spinlocks
         - Fix the error path of request_irq()
         - Clean up redundant codes
       - Summary: Remove xxx_t typedefs: PARISC Harmony
         Remove xxx_t typedefs from the PARIC Harmony driver.
     + PC98(CS423x) driver
       - Summary: Remove xxx_t typedefs: ISA CS423x-PC98
         Remove xxx_t typedefs from the ISA CS423x-PC98 driver.
     + PCI drivers
       - Summary: Add support for the CS5535 Audio device
         Add support for the CS5535 Audio device.  I've fixed up some errors as per
         Takashi's advice from the thread:
         http://lkml.org/lkml/2005/9/15/119
          From: Alan Cox <alan@lxorguk.ukuu.org.uk>
                 cs5535 is a 32bit x86 only device using weird CPU features
         Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
         Signed-off-by: Andrew Morton <akpm@osdl.org>
       - Summary: Sort Kconfig entries
         Sort Kconfig entries in alphabetical order.
       - Summary: Add PCXHR driver
         From: Markus Bollinger <bollinger@digigram.com>
         Add Digigram PCXHR driver.
     + PDAudioCF driver
       - Summary: Remove xxx_t typedefs: PCMCIA PDaudioCF
         Remove xxx_t typedefs from the PCMCIA PDaudioCF driver.
       - Summary: pdaudiocf - Fix PM support
         Fix the PM support on pdaudiocf driver.
     + PPC
       - Summary: powermac - Use platform_device
         Rewrite the probe/remove with platform_device.
         Move the PM support to platform_device's callbacks.
     + PPC AWACS driver
       - Summary: Remove xxx_t typedefs: PowerMac
         Remove xxx_t typedefs from the PowerMac driver.
     + PPC Beep
       - Summary: Remove xxx_t typedefs: PowerMac
         Remove xxx_t typedefs from the PowerMac driver.
     + PPC Burgundy driver
       - Summary: Remove xxx_t typedefs: PowerMac
         Remove xxx_t typedefs from the PowerMac driver.
     + PPC DACA driver
       - Summary: Remove xxx_t typedefs: PowerMac
         Remove xxx_t typedefs from the PowerMac driver.
     + PPC PMAC driver
       - Summary: powermac - Use platform_device
         Rewrite the probe/remove with platform_device.
         Move the PM support to platform_device's callbacks.
       - Summary: snd_powermac: Add ID for Spring 2005 17" Powerbook
         The audio chip in my Spring 2005 17" PowerBook was incorrectly
         recognized as an AWACS chip.  This adds the chip ID to the
         snd_powermac driver such that it is recognized as a Toonie (I don't
         know if that's correct, but it's the only one that makes it work at
         all). and sorts the ID lists numerically.  NOTE:  This chip is only
         minimally supported at this point; it has system beep support and
         very low volume speaker output, and that's about it.
         Signed-off-by: Kyle Moffett <mrmacman_g4@mac.com>
       - Summary: powermac - Revert the last addition for 17" powerbook
         The last addition of 17" powerbook support seems buggy
         (it's not Toonie indeed).  Removed again.
     + PPC PowerMac driver
       - Summary: powermac - Use platform_device
         Rewrite the probe/remove with platform_device.
         Move the PM support to platform_device's callbacks.
     + PPC Tumbler driver
       - Summary: PowerBook 6,1: headphone not detected after suspend in snd_powerpc
         ever since suspend to disk works I had the problem that headphone
         (un)plugging doesn't get detected properly anymore after the first
         resume.
         Reloading the module worked around this ever since, however the real
         cause of the problem was that after a resume the driver only got
         interrupts on "unplug" not on "plug". Reactivating the headphone status
         interrupt in tumbler_resume fixes this. This shouldn't cause
         any trouble with software suspend.
         Signed-off-by: Guido Guenther <agx@sigxcpu.org>
     + RME HDSP driver
       - Summary: Remove xxx_t typedefs: PCI HDSP
         Remove xxx_t typedefs from the PCI HDSP driver.
     + RME32 driver
       - Summary: Remove xxx_t typedefs: PCI RME32
         Remove xxx_t typedefs from the PCI RME32 driver.
     + RME96 driver
       - Summary: Remove xxx_t typedefs: PCI RME96
         Remove xxx_t typedefs from the PCI RME96 driver.
     + RME9652 driver
       - Summary: Remove xxx_t typedefs: PCI HDSP-MADI
         Remove xxx_t typedefs from the PCI HDSP-MADI driver.
       - Summary: Remove xxx_t typedefs: PCI RME9652
         Remove xxx_t typedefs from the PCI RME9652 driver.
     + RTC timer driver
       - Summary: Remove xxx_t typedefs: Timer
         Remove xxx_t typedefs from the core timer.
     + Raw OPL FM
       - Summary: Remove xxx_t typedefs: OPL3
         Remove xxx_t typedefs from the OPL3 driver
     + SA11xx UDA1341 driver
       - Summary: Clean up sa11xx-uda1341 driver
         Clean up sa11xx-uda1341 driver:
         - Fix buggy destructor
         - Remove the global variable
         - Move array definitions from uda1341.h
         - Make functions in uda1341.c static
       - Summary: Remove xxx_t typedefs: ARM SA11xx-UDA1341
         Remove xxx_t typedefs from the ARM SA11xx-UDA1341 driver.
       - Summary: Use platform_device
         Rewrite the probe/remove with platform_device.
         Fix PM support, too.
     + SB drivers
       - Summary: ALS4000 update
         some update for the ALS4000 driver (tested with hardware in my PC):
         - use common control names according to ControlNames.txt
         - add some controls (Master Mono, 3D control)
         - optimize struct snd_card_als4000_t layout (performance/size)
         - save some bytes via unified error path
         - constify some read-only data
         - add ToDo list
         - move GPL license text to top
         - add comments
         Signed-off-by: Andreas Mohr <andi@lisas.de>
       - Summary: Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
         Remove xxx_t typedefs from the ISA SB8/SB16/SBAWE drivers.
       - Summary: Add PM support to SB-support code
         Add PM support to SB-support code.
     + SB16/AWE driver
       - Summary: Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
         Remove xxx_t typedefs from the ISA SB8/SB16/SBAWE drivers.
       - Summary: Add PM support to SB-support code
         Add PM support to SB-support code.
       - Summary: sb16 - Use platform_device and add PnP support
         Rewrite the probe/remove with platform_device.
         Add PM support using PnP suspend/resume callbacks.
     + SB8 driver
       - Summary: Remove xxx_t typedefs: ISA SB8/SB16/SBAWE
         Remove xxx_t typedefs from the ISA SB8/SB16/SBAWE drivers.
       - Summary: sb8 - Use platform_device and add PnP support
         Rewrite the probe/remove with platform_device.
         Add PM support, too.
     + SPARC
       - Summary: Remove snd_card_generic_dev()
         Remove the obsolete snd_card_generic_dev().
         CONFIG_SND_GENERIC_DRIVER is also removed from Kconfig.
     + SPARC AMD7930 driver
       - Summary: Remove xxx_t typedefs: SPARC AMD7930
         Remove xxx_t typedefs from the SPARC AMD7930 driver.
       - Summary: Remove snd_card_generic_dev()
         Remove the obsolete snd_card_generic_dev().
         CONFIG_SND_GENERIC_DRIVER is also removed from Kconfig.
     + SPARC DBRI driver
       - Summary: Remove xxx_t typedefs: SPARC DBRI
         Remove xxx_t typedefs from the SPARC DBRI driver.
       - Summary: dbri - Don't return errors without CONFIG_PROC_FS
         Don't return errors if the proc file can't be created (for the case
         without CONFIG_PROC_FS).
     + SPARC cs4231 driver
       - Summary: Remove xxx_t typedefs: SPARC CS4231
         Remove xxx_t typedefs from the SPARC CS4231 driver.
       - Summary: Remove snd_card_generic_dev()
         Remove the obsolete snd_card_generic_dev().
         CONFIG_SND_GENERIC_DRIVER is also removed from Kconfig.
       - Summary: 2.6-git-sync: Sync sparc/cs4231.c
         Sync with 2.6.15-rc2-git.  Updated sparc/cs4231.c.
     + Serial BUS drivers
       - Summary: Remove xxx_t typedefs: Patches
         Regenerated patches.
     + SonicVibes driver
       - Summary: Remove xxx_t typedefs: PCI Sonicvibes
         Remove xxx_t typedefs from the PCI Sonicvibes driver.
     + Sound Galaxy driver
       - Summary: Remove xxx_t typedefs: ISA SB/AD-clone
         Remove xxx_t typedefs from the ISA SB/AD-clone drivers
         (als100, azt2320, dt019x, sgalaxy).
       - Summary: sgalaxy - Use platform_device, add PM support
         Rewrite the probe/remove with platform_device.
         Also, add the PM support.
     + Sound Scape driver
       - Summary: Remove xxx_t typedefs: ISA SoundScape
         Remove xxx_t typedefs from the ISA SoundScape driver.
       - Summary: sscape - Use platform_device
         Rewrite the probe/remove with platform_device.
     + SoundFont
       - Summary: Remove xxx_t typedefs: Emu-X synth
         Remove xxx_t typedefs from the Emu-X synth support.
     + Synth
       - Summary: Remove xxx_t typedefs: Emu-X synth
         Remove xxx_t typedefs from the Emu-X synth support.
     + Trident driver
       - Summary: Remove xxx_t typedefs: PCI Trident
         Remove xxx_t typedefs from the PCI Trident driver.
       - Summary: trident - Fix PM support
         Fix PM support on Trident driver.
       - Summary: seq: remove struct snd_seq_client_callback
         The fields of struct snd_seq_client_callback either aren't used or are
         always set to the same value, so we can get rid of it altogether.
       - Summary: seq: set client name in snd_seq_create_kernel_client()
         All users of snd_seq_create_kernel_client() have to set the client name
         anyway, so we can just pass the name as parameter.  This relieves us
         from having to muck around with a struct snd_seq_client_info in these
         cases.
     + UDA1341
       - Summary: Clean up sa11xx-uda1341 driver
         Clean up sa11xx-uda1341 driver:
         - Fix buggy destructor
         - Remove the global variable
         - Move array definitions from uda1341.h
         - Make functions in uda1341.c static
     + USB USX2Y
       - Summary: usx2y - Code clean up
         Clean up snd-usb-usx2y driver code:
         - Avoid unnecessary cast
         - Fix spaces/indents
         - Use kzalloc()
         - Remove weird debug prints
       - Summary: Remove xxx_t typedefs: USB-USX2Y
         Remove xxx_t typedefs from the USB-USX2Y driver.
       - Summary: unpaged: sound nopage get_page
         Something noticed when studying use of VM_RESERVED in different drivers:
         snd_usX2Y_hwdep_pcm_vm_nopage omitted to get_page: fixed.
         And how did this work before?  Aargh!  That nopage is returning a page
         from within a buffer allocated by snd_malloc_pages, which allocates a
         high-order page, then does SetPageReserved on each 0-order page within.
         That would have worked in 2.6.14, because when the area was unmapped,
         PageReserved inhibited put_page.  2.6.15-rc1 removed that inhibition
         (while leaving ineffective PageReserveds around for now), but it hasn't
         caused trouble because.. we've not been freeing from VM_RESERVED at all.
         Signed-off-by: Hugh Dickins <hugh@veritas.com>
     + USB generic driver
       - Summary: Remove xxx_t typedefs: USB-Audio
         Remove xxx_t typedefs from the USB-Audio driver.
       - Summary: usb-audio: fix Edirol UA-20 support
         Somebody at Edirol fucked up and released a new revision of the UA-20
         without class-specific descriptors, so now we have to hard-code the
         sample format.
     + VIA82xx driver
       - Summary: Remove xxx_t typedefs: PCI VIA82xx
         Remove xxx_t typedefs from the PCI VIA82xx and modem drivers.
       - Summary: via82xx - Fix PM support
         Fix PM support on VIA82xx and modem drivers.
       - Summary: via82xx - Add dxs entry for ASRock mobo
         Added dxs_support entry for ASRock mobo.
     + VIA82xx-modem driver
       - Summary: Remove xxx_t typedefs: PCI VIA82xx
         Remove xxx_t typedefs from the PCI VIA82xx and modem drivers.
       - Summary: via82xx - Fix PM support
         Fix PM support on VIA82xx and modem drivers.
     + Wavefront drivers
       - Summary: Remove xxx_t typedefs: ISA Wavefront
         Remove xxx_t typedefs from the ISA Wavefront driver.
       - Summary: wavefront - Use platform_device
         Rewrite the probe/remove with platform_device.
     + YMFPCI driver
       - Summary: Remove xxx_t typedefs: PCI YMFPCI
         Remove xxx_t typedefs from the PCI YMFPCI driver.
       - Summary: ymfpci - Fix PM support
         Fix PM support on YMFPCI driver.
       - Summary: ymfpci: show chip model
         Instead of "DS-XG", show the correct chip model (DS-1/1L/1S/1E) where possible.
     + au88x0 driver
       - Summary: Remove xxx_t typedefs: PCI AU88x0
         Remove xxx_t typedefs from the PCI AU88x0 drivers.
       - Summary: au88x0: Remove unneeded call to pci_dma_supported()
         pci_dma_supported() is called right before pci_set_dma_mask() which already
         calls pci_dma_supported().  The attached patch removes the unneeded call to
         pci_dma_supported()
         Additionally the custom VORTEX_DMA_MASK macro is replaced by DMA_32BIT_MASK
         from linux/dma-mapping.h
         Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch>
         Signed-off-by: Andrew Morton <akpm@osdl.org>
     + pci_ids.h update
       - Summary: Keep non-ALSA kernel files
         Keep non-ALSA kernel files in kernel subdirectory to sync and make
         patches easily.  MAINTAINERS is moved to this directory, too.
       - Summary: Add support for the CS5535 Audio device
         Add support for the CS5535 Audio device.  I've fixed up some errors as per
         Takashi's advice from the thread:
         http://lkml.org/lkml/2005/9/15/119
          From: Alan Cox <alan@lxorguk.ukuu.org.uk>
                 cs5535 is a 32bit x86 only device using weird CPU features
         Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
         Signed-off-by: Andrew Morton <akpm@osdl.org>
    

  * alsa-lib 


    
    
     + Core
       - Summary: Check wordexp.h for ulibc
         Check wordexp.h for ulibc.
       - Summary: Allow partial build with selected components
         Add --enable-* and --with-pcm-plugins configure options for partial builds.
         User can choose the core components (pcm, mixer, rawmidi, hwdep, seq, instr)
         via --enable-xxx or --disable-xxx option.  As default, all components are
         enabled.
         The PCM plugins to build can be selected via --with-pcm-plugins option.
         For example, to build only rate and linear plugin, pass
           --with-pcm-plugins=rate,linear
         Passing "all" will select all plugins (it's the default value).
         The plug plugin will select linear and copy plugins automatically.
         The other auto conversions of plug plugin are enabled only when the
         corresponding plugin is selected.
       - Summary: release 1.0.11rc1
     + Mixer API
       - Summary: Fix the handling of stereo capture source
         Patch from bug#1610
         The simple mixer doesn't handle the stereo "Capture Source" properly,
         wrongly set cswitch-joined.
     + PCM API
       - Summary: Fix generation of IEC958 subframes
         From: Nicolas Boullis <nboullis@debian.org>
         While working on an ALSA driver for the audio part of em8300-based MPEG
         decoder boards (Sigma Designs' Hollywood+ boards and Creative Labs' DXR3
         boards), I think I discovered a bug in the code that generates IEC958
         subframes from linear samples (iec958 plugin): M and W preambles are
         swapped, and B preambles should only be used on even subframes. The
         attached patch fixes this issue.
       - Summary: fix compilation with gcc 2
         Fix compilation with gcc 2.* by removing a superfluous variable definition.
       - Summary: abort snd_pcm_dmix_drain when state is SND_PCM_STATE_XRU
         From: Sascha Sommer <saschasommer@freenet.de>
         this is a fix for bug 0001559.
         Unlike my first guesses the real problem is not in the kernel driver but in
         alsa-lib. Whenever the current dmix status is xrun and snd_pcm_dmix_drain
         gets called the process will hang forever in the poll function. The reason is
         that poll gets called even though the timer already stopped.
         As described in the bugtracking system this bug was not noticable with alsa
         versions that used the old IOCTLS because the SNDRV_TIMER_IOCTL_STOP ioctl
         never reached the timer kernel module.
         Attached patch fixes this problem for alsa-lib 1.0.10 by simply calling
         snd_pcm_dmix_drop when snd_pcm_dmix_drain gets called in the state
         SND_PCM_STATE_XRUN.
       - Summary: Abort from snd_pcm_dshare_drain in XRUN state
         Fixed the hang-up in snd_pcm_dshare_drain() when the state is XRUN.
       - Summary: Fix segfault of iec958 plugin with preamble
         Fix segfault of iec958 plugin with preamble (bug#1571).
       - Summary: Use snd_user_file() in pcm_ladpsa.c
         Use snd_user_file() in pcm_ladpsa.c to get rid of wordexp.
       - Summary: Move snd_is_local() to socket.c
         Move snd_is_local() to socket.c since it's used in control_shm, too.
       - Summary: Allow partial build with selected components
         Add --enable-* and --with-pcm-plugins configure options for partial builds.
         User can choose the core components (pcm, mixer, rawmidi, hwdep, seq, instr)
         via --enable-xxx or --disable-xxx option.  As default, all components are
         enabled.
         The PCM plugins to build can be selected via --with-pcm-plugins option.
         For example, to build only rate and linear plugin, pass
           --with-pcm-plugins=rate,linear
         Passing "all" will select all plugins (it's the default value).
         The plug plugin will select linear and copy plugins automatically.
         The other auto conversions of plug plugin are enabled only when the
         corresponding plugin is selected.
       - Summary: Minor optimization on mmap
         Minor optimization on mmap.
       - Summary: direct plugins - fixed ipc_gid initialization when gid specified as number
       - Summary: pcm_ladspa plugin - more verbose output
         Added more verbose output for dump() callback inspired with bug#1554 .
       - Summary: pcm dump() routines update: use spaces to indent texts
     + Sequencer API
       - Summary: remove SND_SEQ_CLIENT_{DUMMY,OSS} symbols
         The SND_SEQ_CLIENT_{DUMMY,OSS} are private to the kernel and should
         never have been put into the public API header.
     + /Makefile.am
       - Summary: Allow partial build with selected components
         Add --enable-* and --with-pcm-plugins configure options for partial builds.
         User can choose the core components (pcm, mixer, rawmidi, hwdep, seq, instr)
         via --enable-xxx or --disable-xxx option.  As default, all components are
         enabled.
         The PCM plugins to build can be selected via --with-pcm-plugins option.
         For example, to build only rate and linear plugin, pass
           --with-pcm-plugins=rate,linear
         Passing "all" will select all plugins (it's the default value).
         The plug plugin will select linear and copy plugins automatically.
         The other auto conversions of plug plugin are enabled only when the
         corresponding plugin is selected.
     + /modules/Makefile.am
       - Summary: Allow partial build with selected components
         Add --enable-* and --with-pcm-plugins configure options for partial builds.
         User can choose the core components (pcm, mixer, rawmidi, hwdep, seq, instr)
         via --enable-xxx or --disable-xxx option.  As default, all components are
         enabled.
         The PCM plugins to build can be selected via --with-pcm-plugins option.
         For example, to build only rate and linear plugin, pass
           --with-pcm-plugins=rate,linear
         Passing "all" will select all plugins (it's the default value).
         The plug plugin will select linear and copy plugins automatically.
         The other auto conversions of plug plugin are enabled only when the
         corresponding plugin is selected.
     + /src/Makefile.am
       - Summary: Allow partial build with selected components
         Add --enable-* and --with-pcm-plugins configure options for partial builds.
         User can choose the core components (pcm, mixer, rawmidi, hwdep, seq, instr)
         via --enable-xxx or --disable-xxx option.  As default, all components are
         enabled.
         The PCM plugins to build can be selected via --with-pcm-plugins option.
         For example, to build only rate and linear plugin, pass
           --with-pcm-plugins=rate,linear
         Passing "all" will select all plugins (it's the default value).
         The plug plugin will select linear and copy plugins automatically.
         The other auto conversions of plug plugin are enabled only when the
         corresponding plugin is selected.
     + Configuration
       - Summary: Fix free of uninitialized pointer
         Fix free of uninitialized pointer (bug#1576).
       - Summary: Remove superfluous wordexp.h inclusion
       - Summary: Fix a missing line in PMacToonie.conf
         Add a missing line "playback.pcm {" in PMacToonie.conf (bug#1594).
     + Documentation
       - Summary: Add description for new configure options
         Add description for new configure options.
         Also fixed some typos.
     + Filename helpers
       - Summary: Add a workaround for systems without wordexp
         Add a workaround for systems without wordexp (e.g. ulibc).
       - Summary: Fixed compilation when HAVE_WORDEXP_H is not defined
     + Kernel Headers
       - Summary: seq: reorganize sequencer client numbers
         Reduce the maximum possible number of global clients to 16 to make
         more numbers available for card clients, and allow dynamically allocated
         card client numbers to share the same range as application client
         numbers to make sure that all 32 cards can be used at the same time.
     + Socket helpers
       - Summary: Move snd_is_local() to socket.c
         Move snd_is_local() to socket.c since it's used in control_shm, too.
     + Test/Example code
       - Summary: Fix compile errors/warnings
         Fix compile errors/warnings.
         omixer is removed since ordinary_mixer isn't supported any more.
       - Summary: Remove code from check_PROGRAMS
         Remove code from check_PROGRAMS (bug#1579).
    

  * alsa-utils 


    
    
     + Core
       - Summary: Add WAV file playback support to speaker-test
         Add WAV file playback support to speaker-test.
         The support is still limited to S16_LE, and doesn't refer to csv file yet.
       - Summary: release 1.0.11rc1
     + Speaker Test
       - Summary: Make speaker-test compatible with dmix by default.
       - Summary: Add WAV file playback support to speaker-test
         Add WAV file playback support to speaker-test.
         The support is still limited to S16_LE, and doesn't refer to csv file yet.
       - Summary: speaker-test - Fix missing i18n
         Add the gettext tags to newly added texts.
     + alsaconf
       - Summary: Fix a text in alsa-utils
         Fix a text in alsa-utils after proof-reading.
     + amixer
       - Summary: amixer - Add -s option
         - Add -s option to read from stdin the command sequentially.
         - Suppress unneeded warnings in sset.
     + aplay/arecord
       - Summary: alternative peak meter for aplay
         From: Dirk Jagdmann <doj@cubic.org>
         This patch adds an alternative peak meter for aplay/arecord which is
         enabled via three "-v" command line arguments. This new mode differs
         from the old in a larger meter, no linefeeds for every meter update and
         a static maximum peak (for 1s).
       - Summary: split interleaved files in arecord when reaching 2GB
         From: Dirk Jagdmann <doj@cubic.org>
         This patch will split files in chunks of aprox. 2GB in the interleaved
         recording mode of arecord. This is meant to overcome the 2GB filesize
         limit of .wav files, which is easily reached when recording multiple
         channels.
    

  * alsa-tools 


    
    
     + Core
       - Summary: release 1.0.11rc1
     + Envy24 Control
       - Summary: Fix envy24control digital input on Terratec DMX6fire
         This patch fixes typo in hardware.c that prevented front digital inputs being
         selected on the Terratec DMX6fire.  Also renames the digital input controls
         for greater clarity with this card.
         Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
       - Summary: Fix for Delta boards
         Fix the element types of some delta-specific controls to follow the change
         in the driver.
       - Summary: Rationalise envy24control controls specific to Terratec DMX6fire
         Remove separate 'breakbox led' selector and use led to indicate 'front line
         in' is selected (as it should be); combine digital input select to a
         one-of-three selector; change various labels; set default pcm mixer channels
         to 6.
         Signed-off-by:  Alan Horstmann <gineera@aspect135.co.uk>
       - Summary: Tidy up DMX6fire eeprom checks
         Multiple instances of DMX6FIRE eeprom checks in envy24control replaced with a
         variable.
         Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
     + ac3dec (Dolby Digital Decoder)
       - Summary: Fix compile warnings
         Fix compile warnings with the recent gcc.
     + ld10k1 (EMU10K1+ DSP Code Loader)
       - Summary: Add Equalizer support for emu10k1 Audigy
         From: Piotr Tajdus <aegis@op.pl>
         Added the equalizer support for emu10k1 (Audigy only).