Changes v1.0.11 v1.0.12

From AlsaProject
Jump to: navigation, search

Changelog between 1.0.11 and 1.0.12 releases

  • alsa-driver
 + Sound Core
   - release 1.0.12rc2
   - configure: fix header dependencies in vmalloc_to_page check
   - Add hgcompile script and fix INSTALL document for HG
   - Fix --enable/disable-verbose-procfs configure option
   - Fix build with 2.6.18 kernel
   - Fix detection of v4l stuff for 2.6.17 or older kernel
   - release 1.0.12rc3
   - Makefile.conf: add CONFIG_PM
   - fix build failure due to snd-aoa
   - Revert 3075 and partially 3085 for 2.4 kernel builds
   - release 1.0.12rc2a
   - Another try to fix compile errors with older kernels
   - Add subst of CONFIG_X86_64 and CONFIG_X86_32 in configure
   - Remove quotes from KBUILD_* macros in cflags
   - configure.in - fix for FM801 + TUNER
   - Create missing include/linux directory in configure
   - Use configured kernel compiler on 2.6
   - configure: move AC_DEFINE calls out of ALSA_TOPLEVEL_SELECT
   - configure: fix TEA575x selection
   - release 1.0.12
   - Fix check of CONFIG_VIDEO_V4L1 on 2.6.18 kernel
   - Add --disable-experimental configure option
   - release 1.0.11
   - fix compilation with 2.6.18
   - snd-aoa: add snd-aoa
   - release 1.0.12rc1
   - Move echoaudio drivers to alsa-kernel tree
 + ALSA Core
   - Missing includes for dma-mapping.h in older kernels
   - Clean up EXPORT_SYMBOL()s in snd module
   - Make buffer size of proc text interface variable
   - Remove unneeded read/write_size fields in proc text ops
   - Insert might_sleep() in snd_iprintf()
   - Add O_APPEND flag support to PCM
   - Fix sound.patch for changes of EXPORT_SYMBOL()s
   - Fix Makefiles to follow spread of EXPORT_SYMBOL()s
   - Remove unneeded read/write_size fields in proc text ops
   - fix might_sleep()
   - 2.6 kernel sync: include/sound/Kbuild
   - Deprecate snd_info_unregister()
   - Fix disconnection of proc interface
   - Unregister device files at disconnection
   - Suppress irq handler mismatch messages in ALSA ISA drivers
   - Define SA_PROBEIRQ flag for older kernels
   - PCM core - introduce CONFIG_SND_PCM_XRUN_DEBUG
   - Fix compile error with 2.6.18 kernel
   - Fix build issue on earlier NLD9 kernels
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
   - 2.6 kernel sync: [PATCH] devfs: Remove devfs support from the sound subsystem
   - Fix compilation with older kernels
   - add might_sleep() wrapper
   - Fix compilation with 2.6.17 kernel
   - Fix rwlock around snd_iprintf() in sound core
   - undeclared TASK_(UN)INTERRUPTIBLE fixed
   - Revert 3075 and partially 3085 for 2.4 kernel builds
   - Another try to fix compile errors with older kernels
   - Add missing list_for_each_prev() for 2.4 kernels
   - Add wrappers of lockdep and down_*_nested for older kernels
   - Add wrappers of new ppc irq stuff for older kernels
   - Fix build on older kernels
   - Control API - TLV implementation for additional information like dB scale
   - Fix compile errors with SLES9-SP3
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
   - Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n
   - make CONFIG_SND_DYNAMIC_MINORS non-experimental
   - Add missing list_for_each_entry() macro for older kernels
   - Remove obsoleted CONFIG_SND_DEBUG_FULL definition
   - fix a wrong lock
   - remove unused snd_minor.name field
   - Control API - more robust TLV implementation
   - Remove zero-initialization of static variables
 + Control Midlevel
   - Clean up EXPORT_SYMBOL()s in snd module
   - Fix substream selection in PCM and rawmidi
   - Remove unused tlv_rw field from struct snd_kcontrol
   - Unregister device files at disconnection
   - Control API - TLV implementation for additional information like dB scale
   - Control API - more robust TLV implementation
 + HWDEP Midlevel
   - Remove unneeded read/write_size fields in proc text ops
   - Fix disconnection of proc interface
   - Unregister device files at disconnection
 + PCM Midlevel
   - Clean up ugly hacks in pcm_params.h
   - Move OSS-specific hw_params helper to snd-pcm-oss module
   - Clean up ugly hacks in pcm_lib.c
   - Remove unneeded read/write_size fields in proc text ops
   - Remove spinlocks around proc prints
   - Add O_APPEND flag support to PCM
   - Fix mmap_count with O_APPEND opened streams
   - Regenerated patches for new PCM with O_APPEND
   - Fix substream selection in PCM and rawmidi
   - Fix disconnection of proc interface
   - PCM core - introduce CONFIG_SND_PCM_XRUN_DEBUG
   - Fix control/status mmap with shared PCM substream
   - Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n
   - Remove bogus check of mmap_count in snd_pcm_release()
   - Fix pcm-draining of capture stream in PCM middle layer
   - Remove zero-initialization of static variables
 + RawMidi Midlevel
   - Fix substream selection in PCM and rawmidi
   - rawmidi: add get_port_info callback for sequencer information flags
 + Timer Midlevel
   - Remove spinlocks around proc prints
   - Fix compile warning in timer.c
   - system timer: remove unused snd_timer_system_private.timer field
   - system timer: fix lost ticks correction adjustment
   - system timer: accumulate correction for multiple lost ticks
   - system timer: clear correction value when timer stops
   - timer: fix timer rescheduling
   - Fix a deadlock in snd-rtctimer
 + /include/Makefile
   - configure.in - fix for FM801 + TUNER
   - Don't remove include files at make clean
 + /isa/Makefile
   - Move mts64 driver to alsa-kernel tree
 + AC97 Codec
   - ac97 - Move EXPORT_SYMBOL() to adjacent to each function
   - Fix export-objs for update of EXPORT_SYMBOL()s
   - AD1888 mixer controls for DC mode
   - ac97: fix snd_ac97_dev_disconnect for older kernels
   - ac97_codec - fix duplicate control creation in AC97
   - Disable AC97 AUX and VIDEO controls for WM9705 touchscreen
   - AD1888 suspend/resume fix
   - ac97 - Add Thinkpad T41p to AD1981 jack-sense blacklist
   - add codec-specific controls for UCB1400
   - Add experimental support of aggressive AC97 power-saving mode
   - Add a workaround for ASUS A6KM
   - Fix for LG K1 Express Laptop
 + AD1889 driver
   - add __devinitdata to all pci_device_id
   - Fix section mismatch errors in ALSA PCI drivers
 + AK4XXX AD/DA converters
   - Revolution 5.1 - add AK5365 ADC support
   - Stereo controls for M-Audio Revolution cards
   - ak4xxx-adda - Code clean-up
   - Revolution 5.1 - complete the AK5365 support
   - Fix compile warnings in ak4xxx-adda.c
 + ALI5451 driver
   - add __devinitdata to all pci_device_id
   - Fix section mismatch errors in ALSA PCI drivers
 + ALS4000 driver
   - Change an arugment of snd_mpu401_uart_new() to bit flags
 + ALSA Version
   - release 1.0.12rc2a
   - snd-ca0106: Fix dB gain TLVs.
 + ALSA sequencer
   - Change seq_midi.c so client name is card, rather than port, specific
   - Clean up EXPORT_SYMBOL()s in snd-seq module
   - Fix Makefiles to follow spread of EXPORT_SYMBOL()s
   - lockdep: annotate sound/core/seq/seq_ports.c
   - lockdep: annotate sound/core/seq/seq_device.c
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
   - Conversions from kmalloc+memset to k(z|c)alloc
   - Fix misuse of __list_add() in seq_ports.c
   - add more sequencer port type information bits
   - rawmidi: add get_port_info callback for sequencer information flags
   - Remove nested mutexes in seq_ports.c
 + ALSA<-OSS emulation
   - Move OSS-specific hw_params helper to snd-pcm-oss module
   - Remove unneeded read/write_size fields in proc text ops
   - Add O_APPEND flag support to PCM
   - Fix mmap_count with O_APPEND opened streams
   - Regenerated patches for new PCM with O_APPEND
   - Fix disconnection of proc interface
   - Unregister device files at disconnection
   - Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n
   - Conversions from kmalloc+memset to k(z|c)alloc
   - Don't reject O_RDWR at opening PCM OSS with read/write-only device
   - Remove zero-initialization of static variables
 + AMD InterWave driver
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
 + ARM AACI PL041 driver
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
 + ARM PXA2XX driver
   - pxa2xx-i2sound - PCM - disable MMAP access
 + AZT3328 driver
   - azt3328.c: add suspend/resume support
   - azt3328.c: add 3D sound mixer switch/rename controls
   - azt3328.c: use kernel coding style
 + Apple Onboard Audio driver
   - Fix wrong dependencies of snd-aoa driver
   - ppc - Add new interrupt mapping core and change platforms to use it
   - aoa driver - Kconfig - remove spaces for SND!=n
   - Fix snd-aoa irq conversion
   - aoa: i2sbus: move module parameter declaration up
   - aoa: i2sbus: fix for PowerMac7,2 and 7,3
   - aoa: fix when all is built into the kernel
   - aoa: i2sbus: revamp control layer
   - aoa: pmf gpio: report if function calling fails
   - aoa fabric layout: clean up messages
   - aoa: tas: change PCM1 name to PCM
   - aoa: tas: fix initialisation/reset
   - aoa: tas: surface DRC control again
   - aoa: layout fabric: add missing module aliases
   - aoa: tas: add missing bass/treble controls
   - aoa: feature gpio layer: fix IRQ access
   - aoa: fix toonie codec
   - aoa: platform function gpio: ignore errors from functions that don't exist
   - Select I2C and I2C_POWERMAC in aoa/codecs/Kconfig
   - snd-aoa: add snd-aoa
   - snd-aoa: not experimental
   - snd-aoa: support iMac G5 iSight
   - snd-aoa: enable dual-edge in GPIOs
 + Asihpi driver
   - Remove unneeded read/write_size fields in proc text ops
   - ASIHPI driver updates
   - Fix compile warnings on 2.6.18 kernel
   - asihpi: add irqs_disabled() wrapper
   - asihpi - Fix obsoleted MODULE_PARM() and struct initialization
   - asihpi - Fix includes
   - use <sound/driver.h>
 + BT87x driver
   - bt87x: add Voodoo TV 200 whitelist entry
 + CA0106 driver
   - snd-ca0106: Fix dB gain TLVs.
   - snd-ca0106: Update playback to 24bit. Fix typo is comment.
   - Fix compile errors with older gcc
   - Control API - TLV implementation for additional information like dB scale
   - HDA codec & CA0106 - add/fix TLV support
 + CMIPCI driver
   - cmipci - Fix a typo in "PC Speaker Playback Switch" control
   - cmipci - Disable integrated mpu401 as default
 + CREDITS file
   - 2.6 kernel sync: misc
   - 2.6 kernel sync
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
   - 2.6 kernel sync
 + CS423x drivers
   - miro - Makefile cleanup
   - Fix undefined (missing) references in ISA MIRO sound driver
 + CS4281 driver
   - Fix races in irq handler and ioremap
 + CS46xx driver
   - fix AB-BA deadlock inversion at cs46xx_dsp_remove_scb
   - Fix possible races in PCI driver removal
   - Fix section mismatch errors in ALSA PCI drivers
 + CS5535 driver
   - PM support for cs5535audio
   - Fix for PM support on cs5535audio
   - Single variables for cs5535audio
   - Fix Makefile of cs5535audio
   - cs5535audio - trivial debug printk
   - cs5535audio - Add missing module_param*() and MODULE_PARM_DESC()
 + CX88 driver
   - add __devinitdata to all pci_device_id
 + Common EMU synth
   - emux - Move EXPORT_SYMBOL() to adjacent to each function
   - fix port type bits
   - Fix export-objs for update of EXPORT_SYMBOL()s
   - add more sequencer port type information bits
   - NULL pointer dereference in sound/synth/emux/soundfont.c
 + Conexant Riptide driver
   - riptide: fix compile errors with older gcc
   - Fix possible races in PCI driver removal
 + Digigram PCXHR driver
   - pcxhr - Fix a compiler warning on 64bit architectures
 + Digigram VX Pocket driver
   - Deprecate snd_card_free_in_thread()
   - sound/vxpocket: fix printk warning
 + Digigram VX core
   - vx - Move EXPORT_SYMBOL() to adjacent to each function
   - Fix export-objs for update of EXPORT_SYMBOL()s
   - Conversions from kmalloc+memset to k(z|c)alloc
 + Documentation
   - Remove unneeded read/write_size fields in proc text ops
   - Misc fixes for Realtek HD-audio codecs
   - Fix description of cs5535audio driver in ALSA-Configuration.txt
   - adding __devinitdata to pci_device_id
   - 2.6 kernel sync: [PATCH] irq-flags: documentation: Use the new IRQF_ constants
   - 2.6 kernel sync: misc
   - Add snd-mts64 driver for ESI Miditerminal 4140
   - Fix a typo in writing-an-alsa-driver document
   - cmipci - Disable integrated mpu401 as default
   - Remove obsolete description from ALSA-Configuration.txt
   - Add model entry for Clevo m665n laptop
   - Add hp-bpc model type for HP laptops
   - Add support of Benq laptop with ALC262
   - Change an arugment of snd_mpu401_uart_new() to bit flags
   - Added model for Uniwill laptop with ALC861
   - Add support for Sony Vaio AR 11B
   - Fix section mismatch errors in ALSA PCI drivers
   - Add echoaudio sound drivers
   - Fix/add support of Realtek ALC883 / ALC888 and ALC861 codecs
   - Fix description of snd-hda-intel driver in document
 + EMU10K1/EMU10K2 driver
   - emu10k1 - Move EXPORT_SYMBOL() to adjacent to each function
   - Fix export-objs for update of EXPORT_SYMBOL()s
   - snd-emu10k1: Add a comment explaining the conversion function for dB gain.
   - snd-emu10k1: Implement 24bit capture via Philips 1361T ADC for SB0240 card.
   - snd-emu10k1: Implement dB gain infomation.
   - snd-emu10k1: Fixes ALSA bug#2190
   - snd-emu10k1: Implement support for Audigy 2 ZS [SB0353]
   - Fix compile errors with older gcc
   - Fix no mpu401 interface can cause hard freeze
   - emu10k1x: simplify around pci_register_driver()
 + EMU8000 driver
   - Fix invalid __init in ALSA ISA drivers
 + ES18xx driver
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
   - es18xx - Add PnP BIOS support
   - es18xx build fix
 + Echoaudio driver
   - Add echoaudio sound drivers
   - Move echoaudio drivers to alsa-kernel tree
   - Fix a typo in echoaudio/midi.c
   - echoaudio - Fix Makefile
   - Fix Makefile for echoaudio drivers
   - echoaudio - Remove kfree_nocheck()
 + FM801 driver
   - fix the SND_FM801_TEA575X dependencies
   - fm801: Support FM only card
   - fm801: fixed broken previous patch for the FM tuner only code
   - sound/pci/fm801: Use ARRAY_SIZE macro
 + GUS Extreme driver
   - make sound/isa/gus/gusextreme.c:devices static
 + GUS Library
   - add more sequencer port type information bits
 + Generic drivers
   - virmidi: revert erroneous removal of zero initialization
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
   - Disable serialmidi driver
   - Fix some typos in snd-dummy driver
   - Move mts64 driver to alsa-kernel tree
   - Add snd-mts64 driver for ESI Miditerminal 4140
   - Clean up portman2x4 driver code
   - Add experimental support of aggressive AC97 power-saving mode
   - Support for ESI Miditerminal 4140
   - pc-speaker updates for 2.6.17
 + HDA Codec driver
   - hda-codec - Add codec id for AD1988B codec chip
   - hda-codec - Add support for Sony Vaio VGN-A790 laptop
   - hda-codec - Move EXPORT_SYMBOL() to adjacent to each function
   - Misc fixes for Realtek HD-audio codecs
   - Don't set up the same PID twice in snd_hda_multi_out_analog_prepare
   - Fix noisy output with shared channel mode with hd-audio
   - hda-codec - Fix model for HP dc7600
   - hda-codec - add missing device ids
   - hda-codec - Fix headphone output for some Intel 945 systems
   - Fix workaround for AD1988A rev2 codec
   - hda: sigmatel 9205 family support
   - hda-codec - Add model entry for ASUS M9 laptop
   - Add missing TLV callbacks for HD-audio codecs
   - hda: fix sigmatel 9227/8/9 codec support
   - hda-codec - Fix missing array terminators in AD1988 codec support
   - HDA driver - do not set mute flag for dB scale (follow HDA specification)
   - hda-codec - Add model entry for HP nx6320
   - hda-codec - Fix handling of capture controls on ALC882 3/6-stack models
   - hda-codec - Fix capture from line-in on VAIO SZ/FE laptops
   - Fix the preselected model for HP machine
   - [snd-hda-intel] fix sound on some Asus W6A chips
   - hda-codec - add missing device ids for Intel 945 boards
   - hda-codec - Add support for new Intel boards with Stac9227 codec
   - x86 MacMini: make built-in speaker sound actually work
   - Add model entry for Samsung X10 laptop
   - Add model entry for Clevo m665n laptop
   - Add hp-bpc model type for HP laptops
   - Add support of Benq laptop with ALC262
   - Added model for ASUS M2NPV-VM mobo
   - hda-codec - Add SPDIF support to Thinkpad T/X/Z60
   - hda-codec - Add model entry for Samsung X60 Chane
   - hda-codec - Add support for LG S1 laptop
   - hda-codec - Add model entry for ASUS Z62F
   - Added model for Uniwill laptop with ALC861
   - Add support for Sony Vaio AR 11B
   - HDA codec - little code & comment cleanup
   - HDA codec & CA0106 - add/fix TLV support
   - HDA - Lenovo 3000 N100-07684JU - enable laptop-eapd by default
   - hda-codec - Use 3stack model for ASUS P5RD2-VM / P5GPL-X SE
   - Fix/add support of Realtek ALC883 / ALC888 and ALC861 codecs
   - Add Intel D965 board support
   - hda-codec - Fix mute switch on VAIO laptops with STAC7661
   - hda: add sigmatel 9227/9228/9229 ids
   - hda-codec - Add support for Apple Mac Mini (early 2006)
   - hda-codec - Add support for Sony Vaio VGN-S3HP
   - hda - Add support for the ATI RS600 HDMI audio device
   - Added patch_atihdmi.c to alsa-driver tree
   - hda-codec - Fix init verbs for ALC260 hp model
 + HDA Intel driver
   - hda-intel - Fix race in remove
   - hda - Add support for the ATI RS600 HDMI audio device
 + HDA generic driver
   - hda: export snd_hda_queue_unsol_event() wrapper
   - Fix compile errors with older gcc
   - Fix build on older kernels
   - HDA codec - little code & comment cleanup
   - HDA codec & CA0106 - add/fix TLV support
   - hda-codec - Show EAPD and pin-detection capabilities in proc
   - hda - Add support for the ATI RS600 HDMI audio device
 + I2C Kconfig
   - UDA1380 updates and fixes
 + I2C UDA1380
   - UDA1380 updates and fixes
 + I2C cs8427
   - sound/i2c/cs8427.c: don't export a static function
   - trivial: Code clean up of i2c/cs8427.c
 + I2C lib core
   - i2c - Move EXPORT_SYMBOL() to adjacent to each function
 + ICE1712 driver
   - ice1712 - Set mpu401 info flags from _card_info
   - Reduce the string length of Terratec Aureon 7.1 Universe
   - ice1712 - fix 1600->16000Hz value typo
   - ice1712 - Disable AC97 for DMX6fire
   - ice1724 - Add functionality for Audiotrak Prodigy 7.1 LT
   - ice1712 - Provides specified midi port names instead of defaults
 + ICE1724 driver
   - Revolution 5.1 - register the AK5365 ADC with ALSA
   - Stereo controls for M-Audio Revolution cards
   - Revolution 5.1 - complete the AK5365 support
 + IOCTL32 emulation
   - Another try to fix compile errors with older kernels
   - Fix the compilation with old 2.6 kernels
   - Fix PCM compat layer for older kernel
 + ISA DMA
   - Clean up EXPORT_SYMBOL()s in snd module
 + Intel8x0 driver
   - sound/pci/: Add hp_only quirk for Dell D800 laptops
   - intel8x0 - Add ac97 quirk for Tyan Thunder K8WE board
   - Add experimental support of aggressive AC97 power-saving mode
 + MAINTAINERS file
   - 2.6 kernel sync
   - 2.6 kernel sync
   - add MAINTAINERS entry for snd-aoa
   - 2.6 kernel sync
 + MPU401 UART
   - sound: fix hang in mpu401_uart.c
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
   - mpu401 section fix
   - mpu401_uart - Fix coding style and code clean up
   - Change an arugment of snd_mpu401_uart_new() to bit flags
 + MSND driver
   - Fix compilation of msnd-pinnacle driver with recent 2.6 kernels
   - Add isa_readx/writex wrappers for 2.6.17 kernel
 + Memalloc module
   - 2.6 kernel sync: misc
   - Conversions from kmalloc+memset to k(z|c)alloc
 + OPL3
   - opl3 - Move EXPORT_SYMBOL() to adjacent to each function
   - Fix export-objs for update of EXPORT_SYMBOL()s
   - fix port type bits
   - add more sequencer port type information bits
 + OPL3SA2 driver
   - Fix invalid __init in ALSA ISA drivers
 + OPL4
   - opl4 - Move EXPORT_SYMBOL() to adjacent to each function
   - add more sequencer port type information bits
 + OSS device core
   - 2.6 kernel sync: [PATCH] devfs: Remove devfs support from the sound subsystem
 + Opti9xx drivers
   - snd-miro include fix
 + PCI drivers
   - PM support for cs5535audio
   - fm801: move CONFIG_VIDEO_DEV dependency to CONFIG_SND_FM801_TEA575X_BOOL
   - fm801: revert last Kconfig patch
   - fix the SND_FM801_TEA575X dependencies
   - sound/pci/Kconfig - fix broken indenting for SND_FM801_TEA575X
   - 2.6 sync: V4L/DVB (4371b): Fix V4L1 dependencies at drivers under sound/oss and sound/
   - Fix missing selection of CONFIG_VIDEO_DEV from SND_FM801_TEA575X
   - Remove CONFIG_EXPERIMENTAL from intel8x0m driver
   - Add echoaudio sound drivers
   - Move echoaudio drivers to alsa-kernel tree
 + PCMCIA Kconfig
   - PCMCIA sound devices shouldn't depend on ISA
 + PDAudioCF driver
   - Deprecate snd_card_free_in_thread()
 + PDPlus driver
   - Remove unneeded read/write_size fields in proc text ops
   - Remove spinlocks around proc prints
   - Fix compile warnings on 2.6.18 kernel
   - pdplus: fix __init/__exit
   - pdplus - Remove bogus __exit from pdplus_sweep()
   - Fix initialization of pdplus driver
   - pdplus - fix a compile warning
   - pdplus - Add missing MODULE_DEVICE_TABLE()
 + PPC
   - snd-powermac: no longer handle anything with a layout-id property
 + PPC Beep
   - ppc-beep - handle errors from input_register_device()
   - Fix ppc/beep.c patch (and misc ppc fix)
 + PPC DACA driver
   - 2.6 kernel sync
 + PPC PMAC driver
   - Fix compilation of pmac.c with 2.6.17 kernel
   - Fix compilation of powermac driver with 2.6.16 kernel
   - ppc - Add new interrupt mapping core and change platforms to use it
   - snd-powermac: no longer handle anything with a layout-id property
 + PPC PowerMac driver
   - make snd-powermac load even when it can't bind the device
   - snd-powermac: no longer handle anything with a layout-id property
 + PPC Toonie
   - Remove ppc/toonie.c
   - Remove ppc/toonie.c
   - sound/ppc: snd_pmac_toonie_init should be __init
 + PPC Tumbler driver
   - ppc - Add new interrupt mapping core and change platforms to use it
 + PXA Mainstone driver
   - 2.6 kernel sync
 + RME HDSP driver
   - RME HDSP - fixed proc interface (missing {})
   - hdsp - Fix compilation with hdsp driver built in kernel
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
 + RME32 driver
   - Fix races in irq handler and ioremap
 + RME96 driver
   - Fix races in irq handler and ioremap
   - rme96 - Fix OSS full-duplex
 + SA11xx UDA1341 driver
   - 2.6 kernel sync: misc
   - Remove zero-initialization of static variables
 + SB8 driver
   - fix potential NULL pointer deref in snd_sb8dsp_midi_interrupt()
 + SPARC AMD7930 driver
   - sparc: resource warning fix
   - 2.6 kernel sync: [SPARC]: Kill __irq_itoa().
   - 2.6 kernel sync: [SOUND] sparc: Port amd7930 to new SBUS device layer.
 + SPARC DBRI driver
   - sparc dbri: removal of unused struct members
   - sparc dbri: removal of redudant volatile keywords
   - sparc: resource warning fix
   - 2.6 kernel sync: [SPARC]: Kill __irq_itoa().
   - dbri driver cleanup
   - sparc dbri removal of DBRI_NO_INTS
 + SPARC cs4231 driver
   - sparc: resource warning fix
   - 2.6 kernel sync: [SPARC]: Kill __irq_itoa().
   - 2.6 kernel sync: [SPARC64]: Use in-kernel PROM tree for EBUS and ISA.
 + Sound Scape driver
   - Change an arugment of snd_mpu401_uart_new() to bit flags
 + TEA575x tuner
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
 + Trident driver
   - trident - Move EXPORT_SYMBOL() to adjacent to each function
   - Fix export-objs for update of EXPORT_SYMBOL()s
   - add more sequencer port type information bits
 + USB USX2Y
   - Add O_APPEND flag support to PCM
   - Deprecate snd_card_free_in_thread()
 + USB generic driver
   - usb-audio - Fix a typo of CONFIG_PROC_FS
   - Add TLV support to snd-usb-audio driver
   - usb-audio: add more Yamaha devices
   - Regenerate usbaudio.patch
   - usb-audio support for Turtle Beach Roadie
   - add support for SB Live! 24-Bit External remote control
   - USB midi: Remove duplicate CS_AUDIO_* #defines
   - Add definition of USB_DT_CS_XXX for older kernels
   - usb-audio: add workaround for CSR Bluetooth Headphones (Saitek A-250)
   - usbaudio - Fix a typo
   - rawmidi: add get_port_info callback for sequencer information flags
 + Utils
   - Fix mod-deps to accept multipe "depends on" lines
   - Allow Kconfig only existing in alsa-driver tree
   - Don't build 2.6-kernel-specific modules
   - Fix build on older kernels
   - configure: move AC_DEFINE calls out of ALSA_TOPLEVEL_SELECT
   - Fix check of CONFIG_VIDEO_V4L1 on 2.6.18 kernel
   - Fix mod-deps to handle "depends" without "on"
   - utils/insert: print more verbose message
   - Fix mod-deps parse to handle "!=" properly
   - pc-speaker updates for 2.6.17
 + VIA82xx driver
   - Add hp_only quirk for pci id [161f:2032] to via82xx
   - via82xx - Default to variable samplerate enabled for MSI K8T Neo2-FI
   - via82xx: tweak VT8251 workaround
   - via82xx - Use DXS_SRC as default for VIA8235/8237/8251 chips
   - via82xx - Add dxs_support entry for a FSC machine
   - Add experimental support of aggressive AC97 power-saving mode
 + Wavefront drivers
   - wavefront: fix __init/__devinit confusion
 + au88x0 driver
   - Remove ENTER_UART from au88x0 init
   - au88x0 - Fix 64bit address of MPU401 MMIO port
   - au88x0 - Init before create components
 + hgcompile script
   - Add hgcompile script and fix INSTALL document for HG
   - Fix environment variable for hgcompile options
 + pci_ids.h update
   - 2.6 kernel sync
   - 2.6 kernel sync
   - 2.6 kernel sync
  • alsa-lib
 + Core
   - Fix default install libpath and datapath.
   - Add hgcompile script and fix INSTALL document
   - Fix default paths.
   - Control API - add TLV support
 + Control API
   - Move dB parser to mixer abstraction
   - Make snd_hctl_wait() respect the API
   - Implement support for dB gain display in alsamixer.
   - mixer - cleanups for dB scale parsing
   - Fix examples for PCM API. Fix dogygen warnings.
   - Control API - add TLV support
 + HWDEP API
   - Add missing snd_dlclose() in snd_hwdep_close()
 + Instrument API
   - Remove dependencies with kernel headers from instrument layer codes
 + Mixer API
   - Move dB parser to mixer abstraction
   - Implement support for dB gain display in alsamixer.
   - mixer - cleanups for dB scale parsing
   - Fix dB ops for global volume
   - Fix segfault when invalid TLV is passed
 + PCM API
   - Use O_APPEND mode with dmix & co plugins
   - Initialize all fields of slave PCM instance of direct plugins
   - Fix division-by-zero in snd_pcm_dump_hw_setup()
   - Fix a typo in pcm_file.c
   - Correction for fixing alsa-lib static build
   - Addition of "infile" parameter (virtual mic) to the file plugin
   - Allow ioplugins to override snd_pcm_delay()
   - Fix build issue on earler x86_64 based distributions
   - Fix delayed start with rate plugin
   - Fix the error path of snd_pcm_hook_add_conf()
   - Add missing snd_dlclose() in pcm_meter.c
   - Fix segfault with dshare plugin
   - Fix examples for PCM API. Fix dogygen warnings.
   - Fix bogus pause flag on dmix
   - Fix segfault with bindings parameters of dmix/dshare
   - Add check of binding ranges in direct plugins
   - Fix hwptr update in rate plugin
 + Sequencer API
   - Fix missing snd_dlclose() in sequencer
   - clarify SND_SEQ_PORT_TYPE_xxx documentation
 + Timer API
   - Fix missing snd_dlclose() in timer handlers
 + /Makefile.am
   - Add hgcompile script and fix INSTALL document
 + Configuration
   - Add default dmix rate and format definitions in alsa.conf
   - Turn on iec958 capture of iec1724 boards with spdif PCM
   - Add config for new snd-aoa driver
   - Fixed driver alias of Aureon 7.1 Universe
   - Fix surround40 config for ens1370
   - Fix device number of ICH4 iec958 controls
   - Fix the description of return value of snd_config_search_definition()
 + Documentation
   - Add hgcompile script and fix INSTALL document
   - Fix examples for PCM API. Fix dogygen warnings.
 + External PCM I/O Plugin SDK
   - Allow ioplugins to override snd_pcm_delay()
 + Kernel Headers
   - Remove dependencies with kernel headers from instrument layer codes
   - Control API - add TLV support
   - Remove enum from kernel API
  • alsa-plugins
 + Core
   - Add hgcompile script
   - Update Polypaudio plug-in to the 0.9.0 API
   - Fix capsed name in configure
   - Follow Polypaudio/PulseAudio name change
 + /Makefile.am
   - Add hgcompile script
   - Follow Polypaudio/PulseAudio name change
 + A52 Output plugin
   - a52 - Add slavepcm option
 + Documentation
   - Follow Polypaudio/PulseAudio name change
   - Add missing a52.txt
   - a52 - Add slavepcm option
 + Jack PCM plugin
   - Fix port names in jack plugin
 + Polyp -> ALSA plugin
   - Update Polypaudio plug-in to the 0.9.0 API
   - Follow Polypaudio/PulseAudio name change
  • alsa-utils
 + Core
   - amixer - added basic TLV support (read only) for 'amixer controls'
 + ALSA RawMidi Utility (amidi)
   - amidi: Fix device list
   - amidi: fix --list-devices
 + Speaker Test
   - Fix the default buffer size calculation in speaker-test
 + alsamixer
   - amixer - show dB values for simple mixer interface (which is default)
 + amixer
   - Fix print_dB() with a minus value
   - amixer - show dB values for simple mixer interface (which is default)
   - amixer - added basic TLV support (read only) for 'amixer controls'
 + aplay/arecord
   - Fix segfault in aplay when snd_pcm_name() == NULL
   - Use the right word in message of areacord
   - Don't call close() for the same fd twice in arecord
   - Fix misc bugs in arecord
   - Fix arecord to quit properly at max file size
   - Allow aplay/arecord to handle up to 2GB for WAV
   - Fix a compile warning in aplay.c
   - Fix endless loop of recording in arecord
 + aplaymidi/arecordmidi
   - aplaymidi: list only MIDI-capable ports
  • alsa-tools
 + Core
   - Add hgcompile scripts
 + ac3dec (Dolby Digital Decoder)
   - Add hgcompile scripts
 + as10k1 (EMU10K1+ DSP Assembler)
   - Add hgcompile scripts
 + hdspmixer
   - hdspmixer - Fix duplicated parameters in function declaration
 + qlo10k1
   - qlo10k1: use stdlib.h for malloc()/free()
  • alsa-firmware
 + Core
   - Add firmware for the EMU Systems EMU1010 PCI card.
   - Better detection of default firmware installation directory
   - release 1.0.12rc2a
   - Add asihpi firmware data
 + AudioScience ASIHPI Firmware
   - Add asihpi firmware data
 + Digigram Echo Audio Firmware
   - Change fw_writer to read data from disk
 + EMU Firmware
   - Add missing audio_dock_netlist.h
   - Add firmware for the EMU Systems EMU1010 PCI card.
   - snd-emu10k1: Add firmware for E-MU Audio Dock.
   - Fix typo.


Detailed changelog between 1.0.11 and 1.0.12 releases

  • alsa-driver
 + Sound Core
   - release 1.0.12rc2
   - configure: fix header dependencies in vmalloc_to_page check
     
     At least on 2.4.31, <linux/interrupt.h> doesn't compile without some
     headers used by <linux/sched.h> included first.
   - Add hgcompile script and fix INSTALL document for HG
     
     Added hgcompile script (just a copy of cvscompile), and
     fixed INSTALL document for HG.
   - Fix --enable/disable-verbose-procfs configure option
     
     - Fix the variable name used in --enable/disable-verbose-procfs
       configure option
     - Show --disable-verbose-(procfs|printk) in the help text using
       AS_HELP_TEXT()
   - Fix build with 2.6.18 kernel
     
     Another try to build alsa-driver on 2.6.18 kernel tree.
     
     - UTS_RELEASE is split from version.h to its own file
     - Needs to include kernel config explicitly before inclusion of other
       kernel headers
       Maybe we should use -include for config.h in cflags.
   - Fix detection of v4l stuff for 2.6.17 or older kernel
     
     Fix the detection of v4l stuff for 2.6.17 or older kernel in
     configure script.
   - release 1.0.12rc3
   - Makefile.conf: add CONFIG_PM
     
     Make CONFIG_PM available so that the CS5535 makefile can pick it up.
   - fix build failure due to snd-aoa
     
     When snd-aoa is not built or built as modules, but CONFIG_SND is yes,
     kernel build fails due to a bug I introduced when adding snd-aoa. This
     patch fixes it.
     
     From: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - Revert 3075 and partially 3085 for 2.4 kernel builds
     
     See alsa bug#2333 for details
   - release 1.0.12rc2a
   - Another try to fix compile errors with older kernels
     
     Another try to fix compile errors with older kernels.
   - Add subst of CONFIG_X86_64 and CONFIG_X86_32 in configure
     
     Added subst of CONFIG_X86_64 and CONFIG_X86_32 in configure script.
   - Remove quotes from KBUILD_* macros in cflags
     
     Remove quotes from KBUILD_* macros in cflags.  gcc seems confused
     by extra quotes.
     Also, add -KBUILD_STR and -DKBUILD_BASENAME only for 2.6 kernels.
   - configure.in - fix for FM801 + TUNER
     - add media/v4l2-dev.h header checking
     - small mkdir -p optimizations
     - include/Makefile clean target removes header files from asm/linux/media dirs
   - Create missing include/linux directory in configure
     
     Create missing include/linux directory in configure script for
     pci_ids.h hack.
   - Use configured kernel compiler on 2.6
     
     Compile the modules for 2.6 with the configured kernel compiler instead of
     the compiler specified in the kernel Makefile. If the kernel was
     compiled with the default compiler (gcc) and gcc later was upgraded or
     changed to an incompatible gcc version used to compile the alsa modules,
     would otherwise lead to unusable modules.
     
     Signed-off-by: Mikael Magnusson <mikma@users.sourceforge.net>
   - configure: move AC_DEFINE calls out of ALSA_TOPLEVEL_SELECT
     
     Split the ALSA_TOPLEVEL_SELECT macro into two macros, one for defining
     the various CONFIG_xxx variables, and one for calling AC_DEFINE on them.
     This allows further customization of the variables before using them.
   - configure: fix TEA575x selection
     
     The current ALSA_TOPLEVEL_SELECT macro does not correctly handle the
     selection of the TEA575x module because the CONFIG_SND_FM801_TEA575X
     module option depends on the CONFIG_SND_FM801_TEA575X_BOOL option, but
     the macro processes module options before other options.
     
     This patch adds a manual setting of the TEA575x symbols.
   - release 1.0.12
   - Fix check of CONFIG_VIDEO_V4L1 on 2.6.18 kernel
     
     Fix the configure check of CONFIG_VIDEO_V4L1 introduced since 2.6.18 kernel.
   - Add --disable-experimental configure option
     
     Added --disable-experimental configure option to turn off
     CONFIG_EXPERIMENTAL manually.
   - release 1.0.11
   - fix compilation with 2.6.18
     
     Change the definition of KBUILD_BASENAME so that it can be properly used
     as a preprocessor string literal.
   - snd-aoa: add snd-aoa
     
     This large patch adds all of snd-aoa.
     
     Consisting of many modules, it currently replaces snd-powermac
     for all layout-id based machines and handles many more (for
     example new powerbooks and powermacs with digital output that
     previously couldn't be used at all).
     It also has support for all layout-IDs that Apple has (judging
     from their Info.plist file) but not all are tested.
     
     The driver currently has 2 known regressions over snd-powermac:
      * it doesn't handle powermac 7,2 and 7,3
      * it doesn't have a DRC control on snapper-based machines
     
     I will fix those during the 2.6.18 development cycle.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - release 1.0.12rc1
   - Move echoaudio drivers to alsa-kernel tree
 + ALSA Core
   - Missing includes for dma-mapping.h in older kernels
     
     Include missing headers for dma-mapping.h in older kernels.
     It's basically a kernel bug (ALSA bug#2046).
   - Clean up EXPORT_SYMBOL()s in snd module
     
     Move EXPORT_SYMBOL()s to places adjacent to functions/variables.
   - Make buffer size of proc text interface variable
     
     Make the read/write buffer size of proc text interface variable.
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     snd_info_set_text_ops() is fixed, too.
   - Insert might_sleep() in snd_iprintf()
     
     Inserted might_sleep() in snd_iprintf() for sanity check.
   - Add O_APPEND flag support to PCM
     
     Added O_APPEND flag support to PCM to enable shared substreams
     among multiple processes.  This mechanism is used by dmix and
     dsnoop plugins.
   - Fix sound.patch for changes of EXPORT_SYMBOL()s
   - Fix Makefiles to follow spread of EXPORT_SYMBOL()s
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     Also fixed snd_info_set_text_ops(), too.
   - fix might_sleep()
     
     Make might_sleep() a macro for consistency with the real 2.6 definition.
     This also fixes the superfluous return value in the 2.2 definition.
   - 2.6 kernel sync: include/sound/Kbuild
   - Deprecate snd_info_unregister()
     
     Use snd_info_free_entry() instead of snd_info_unregister()
   - Fix disconnection of proc interface
     
     - Add the linked list to each proc entry to enable a single-shot
       disconnection (unregister)
     - Deprecate snd_info_unregister(), use snd_info_free_entry()
     - Removed NULL checks of snd_info_free_entry()
   - Unregister device files at disconnection
     
     Orignally proposed by Sam Revitch <sam.revitch@gmail.com>.
     
     Unregister device files at disconnection to avoid the futher accesses.
     Also, the dev_unregister callback is removed and replaced with the
     combination of disconnect + free.
     
     A new function snd_card_free_when_closed() is introduced, which is
     used in USB disconnect callback.
   - Suppress irq handler mismatch messages in ALSA ISA drivers
     
     Suppress "irq handler mismatch" messages at auto-probing of irqs
     in ALSA ISA drivers.
   - Define SA_PROBEIRQ flag for older kernels
     
     Define a dummy SA_PROBEIRQ bit flag for older kernels.
   - PCM core - introduce CONFIG_SND_PCM_XRUN_DEBUG
     
     This patch makes the XRUN (overrun/underrun) notification code optional.
   - Fix compile error with 2.6.18 kernel
     
     Fix compile error with 2.6.18 kernel due to split of utsrelease.h.
   - Fix build issue on earlier NLD9 kernels
     
     This patch fixes a build issue on kernels shipped with Novell
     Linux Desktop and possibly other vendors where 32bit DMA is
     not defined.
     
     Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
     From: Thomas Gleixner <tglx@linutronix.de>
     
     Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
     Cc: Ingo Molnar <mingo@elte.hu>
     Cc: "David S. Miller" <davem@davemloft.net>
     Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Cc: Jaroslav Kysela <perex@suse.cz>
     Cc: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - 2.6 kernel sync: [PATCH] devfs: Remove devfs support from the sound subsystem
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - Fix compilation with older kernels
     
     Fixed compilation with older kernels:
     - Add wrappers for new IRQF_* constants 
     - Regenerated sound.patch to add stuff for older kernels (devfs,
       older driver model)
   - add might_sleep() wrapper
     
     Add a might_sleep() wrapper for older kernels.
   - Fix compilation with 2.6.17 kernel
     
     Fix compilation with 2.6.17 kernel.  The IRQF_* wrappers were missing.
   - Fix rwlock around snd_iprintf() in sound core
     
     Fixed rwlock around snd_iprintf() in sound core part.
     Replaced with mutex.
     
     Also, make mutex and flags static variables with addition of
     snd_card_locked() function (just for sound.c).
   - undeclared TASK_(UN)INTERRUPTIBLE fixed
     
     This patch fixes a compilation problem of undeclared 
     TASK_INTERRUPTIBLE and TASK_UNINTERRUPTIBLE in acore/wrappers.c
     
     Detected on an alpha machine w/ 2.4.27, gcc 3.3.5
     
     Signed-off-by: Martin Langer <martin-langer@gmx.de>
   - Revert 3075 and partially 3085 for 2.4 kernel builds
     
     See alsa bug#2333 for details
   - Another try to fix compile errors with older kernels
     
     Another try to fix compile errors with older kernels.
   - Add missing list_for_each_prev() for 2.4 kernels
     
     Added the missing definition of list_for_each_prev() for old 2.4 kernels.
   - Add wrappers of lockdep and down_*_nested for older kernels
     
     Added dummy wrappers of lockdep and down_*_nested for older kernels.
   - Add wrappers of new ppc irq stuff for older kernels
     
     Added wrappers of new ppc irq stuff for older kernels.
   - Fix build on older kernels
     
     Fix build of some drivers on old 2.4 kernels (possibly 2.2, too).
   - Control API - TLV implementation for additional information like dB scale
     
     This patch implements a TLV mechanism to transfer an additional information
     like dB scale to the user space. The types might be extended in future.
     
     Acked-by: Takashi Iwai <tiwai@suse.de>
   - Fix compile errors with SLES9-SP3
     
     Fix compile errors with SLES9-SP3 kernels.
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
   - Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n
     
     Fixed Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n.
     Add ifdef to struct fields for optimization and better compile
     checks.
   - make CONFIG_SND_DYNAMIC_MINORS non-experimental
     
     The dynamic minors code is mature, has been tested, and seems to work
     fine.
   - Add missing list_for_each_entry() macro for older kernels
     
     Added missing list_for_each_entry() macro for older 2.2/2.4 kernels.
   - Remove obsoleted CONFIG_SND_DEBUG_FULL definition
     
     Remove obsoleted CONFIG_SND_DEBUG_FULL definition.
   - fix a wrong lock
     
     fix a typo in the info locking code
   - remove unused snd_minor.name field
     
     Drop the snd_minor structure's name field that was just a helper for
     devfs device deregistration.
   - Control API - more robust TLV implementation
     
     - added callback option
     - added READ/WRITE/COMMAND flags to access member
     - added WRITE/COMMAND ioctls
     - added SNDRV_CTL_EVENT_MASK_TLV for TLV change notifications
     - added TLV support to ELEM_ADD ioctl
   - Remove zero-initialization of static variables
     
     Removed zero-initializations of static variables.
     A tiny optimization.
 + Control Midlevel
   - Clean up EXPORT_SYMBOL()s in snd module
     
     Move EXPORT_SYMBOL()s to places adjacent to functions/variables.
   - Fix substream selection in PCM and rawmidi
     
     The PCM and rawmidi substreams can be selected explicitly by opening
     control handle and set via *_PREFER_SUBDEVICE ioctl.  But, when
     multiple controls are opened, the driver gets confused.
     
     The patch fixes the initialization of prefer_*_subdevice and the
     check of multiple controls.  The first set subdevice is picked up
     as the valid one.
   - Remove unused tlv_rw field from struct snd_kcontrol
     
     Remove unused tlv_rw field from struct snd_kcontrol.  The callback is
     set in tlv.c field, instead.
   - Unregister device files at disconnection
     
     Orignally proposed by Sam Revitch <sam.revitch@gmail.com>.
     
     Unregister device files at disconnection to avoid the futher accesses.
     Also, the dev_unregister callback is removed and replaced with the
     combination of disconnect + free.
     
     A new function snd_card_free_when_closed() is introduced, which is
     used in USB disconnect callback.
   - Control API - TLV implementation for additional information like dB scale
     
     This patch implements a TLV mechanism to transfer an additional information
     like dB scale to the user space. The types might be extended in future.
     
     Acked-by: Takashi Iwai <tiwai@suse.de>
   - Control API - more robust TLV implementation
     
     - added callback option
     - added READ/WRITE/COMMAND flags to access member
     - added WRITE/COMMAND ioctls
     - added SNDRV_CTL_EVENT_MASK_TLV for TLV change notifications
     - added TLV support to ELEM_ADD ioctl
 + HWDEP Midlevel
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     snd_info_set_text_ops() is fixed, too.
   - Fix disconnection of proc interface
     
     - Add the linked list to each proc entry to enable a single-shot
       disconnection (unregister)
     - Deprecate snd_info_unregister(), use snd_info_free_entry()
     - Removed NULL checks of snd_info_free_entry()
   - Unregister device files at disconnection
     
     Orignally proposed by Sam Revitch <sam.revitch@gmail.com>.
     
     Unregister device files at disconnection to avoid the futher accesses.
     Also, the dev_unregister callback is removed and replaced with the
     combination of disconnect + free.
     
     A new function snd_card_free_when_closed() is introduced, which is
     used in USB disconnect callback.
 + PCM Midlevel
   - Clean up ugly hacks in pcm_params.h
     
     Clean up ugly hacks for sync with alsa-lib in pcm_params.h.
   - Move OSS-specific hw_params helper to snd-pcm-oss module
     
     Move EXPORT_SYMBOL()s to places adjacent to functions/variables.
     
     Also move OSS-specific hw_params helper functions to pcm_oss.c.
   - Clean up ugly hacks in pcm_lib.c
     
     Clean up ugly hacks for sync with alsa-lib code in pcm_lib.c.
     Also, optimize snd_pcm_hw_params_choose() with a loop.
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     snd_info_set_text_ops() is fixed, too.
   - Remove spinlocks around proc prints
     
     Don't lock during showing proc read.  snd_iprintf() might sleep.
   - Add O_APPEND flag support to PCM
     
     Added O_APPEND flag support to PCM to enable shared substreams
     among multiple processes.  This mechanism is used by dmix and
     dsnoop plugins.
   - Fix mmap_count with O_APPEND opened streams
     
     Move mmap_count to snd_pcm_substream instead of runtime struct
     so that multiplly opened substreams via O_APPEND can be handled
     correctly.
   - Regenerated patches for new PCM with O_APPEND
   - Fix substream selection in PCM and rawmidi
     
     The PCM and rawmidi substreams can be selected explicitly by opening
     control handle and set via *_PREFER_SUBDEVICE ioctl.  But, when
     multiple controls are opened, the driver gets confused.
     
     The patch fixes the initialization of prefer_*_subdevice and the
     check of multiple controls.  The first set subdevice is picked up
     as the valid one.
   - Fix disconnection of proc interface
     
     - Add the linked list to each proc entry to enable a single-shot
       disconnection (unregister)
     - Deprecate snd_info_unregister(), use snd_info_free_entry()
     - Removed NULL checks of snd_info_free_entry()
   - PCM core - introduce CONFIG_SND_PCM_XRUN_DEBUG
     
     This patch makes the XRUN (overrun/underrun) notification code optional.
   - Fix control/status mmap with shared PCM substream
     
     The flag to avoid 32bit-incompatible mmap for control/status records
     should be outside the pcm substream instance since a substream can be
     shared among multiple opens.  Now it's flagged in pcm_file list that
     is directly assigned to file->private_data.
     
     Also, removed snd_pcm_add_file() and remove_file() functions and
     substream.files field that are not really used in the code.
   - Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n
     
     Fixed Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n.
     Add ifdef to struct fields for optimization and better compile
     checks.
   - Remove bogus check of mmap_count in snd_pcm_release()
     
     Removed a bogus check of mmap_count in snd_pcm_release().
     This is no longer true for the shared streams.
   - Fix pcm-draining of capture stream in PCM middle layer
     
     Fix the draining of PCM capture stream in the PCM middle layer.
     snd_pcm_drain() ignored capture streams, but it should change
     the state to SNDRV_PCM_DRAINING.
   - Remove zero-initialization of static variables
     
     Removed zero-initializations of static variables.
     A tiny optimization.
 + RawMidi Midlevel
   - Fix substream selection in PCM and rawmidi
     
     The PCM and rawmidi substreams can be selected explicitly by opening
     control handle and set via *_PREFER_SUBDEVICE ioctl.  But, when
     multiple controls are opened, the driver gets confused.
     
     The patch fixes the initialization of prefer_*_subdevice and the
     check of multiple controls.  The first set subdevice is picked up
     as the valid one.
   - rawmidi: add get_port_info callback for sequencer information flags
     
     Add a get_port_info callback to the snd_rawmidi_global_ops structure to
     allow the USB MIDI driver to supply information flags for the sequencer
     ports created by seq_midi.
 + Timer Midlevel
   - Remove spinlocks around proc prints
     
     Don't lock during showing proc read.  snd_iprintf() might sleep.
   - Fix compile warning in timer.c
     
     Fix a compile warning in timer.c due to unused variables.
   - system timer: remove unused snd_timer_system_private.timer field
     
     Remove the snd_timer_system_private structure's timer field that was never used.
   - system timer: fix lost ticks correction adjustment
     
     Fix the adjustment of the lost ticks correction variable in the case
     when the correction has been fully taken into account in the next timer
     expiration value.  Subtracting the scheduled ticks value would result in
     an underflow.
   - system timer: accumulate correction for multiple lost ticks
     
     When multiple timer interrupts arrive too late, correct for all delays
     instead of ignoring the earlier ones.
   - system timer: clear correction value when timer stops
     
     Do not retain the old correction value when the timer was stopped.
   - timer: fix timer rescheduling
     
     When checking whether a hardware timer needs to be rescheduled, we have
     to compare against the previously scheduled interval and not against the
     actual interval between the last two interrupts.
   - Fix a deadlock in snd-rtctimer
     
     Fix a occasional deadlock occuring with snd-rtctimer driver,
     added irqsave to the lock in tasklet (ALSA bug#952).
 + /include/Makefile
   - configure.in - fix for FM801 + TUNER
     - add media/v4l2-dev.h header checking
     - small mkdir -p optimizations
     - include/Makefile clean target removes header files from asm/linux/media dirs
   - Don't remove include files at make clean
     
     Don't remove linux/*, asm/*, and media/* files at make clean since
     these files are created by configure, and you can't run make again
     if you removed them.
     
     They should be removed by make mrproper.
 + /isa/Makefile
   - Move mts64 driver to alsa-kernel tree
     
     Moved mts64 driver to alsa-kernel tree.
 + AC97 Codec
   - ac97 - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - Fix export-objs for update of EXPORT_SYMBOL()s
     
     Fix export-objs for update of EXPORT_SYMBOL()s in alsa-kernel tree.
   - AD1888 mixer controls for DC mode
     
     This patch adds two mixer controls. The V_REFOUT enable is a 
     documented register that couples the microphone input lines 
     to the V_REFOUT DC source. The High Pass Filter enable in the
     AC97_AD_TEST2 (0x5c) is an undocumented register provided by 
     Miller Puckette via Analog Devices that enables the AD codec 
     to apply a high pass filter to the input. 
     
     Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
   - ac97: fix snd_ac97_dev_disconnect for older kernels
     
     On 2.4 and earlier kernels, the AC'97 device initialization used a wrong
     function name.
   - ac97_codec - fix duplicate control creation in AC97
     
     This patch conditions AC97 control creation by whether or not the
     codec is an AD18xx codec. This fixes the case where the default control
     would get created and then snd_ac97_mixer_build fails out when creation
     of ad18xx specific control would get attempted. This problem was found
     and debuged by Marcelo Tosatti.
     
     Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
   - Disable AC97 AUX and VIDEO controls for WM9705 touchscreen
     
     This patch by Rodolfo Giometti disables the AC97 AUX and VIDEO controls
     on the WM9705 when the touchscreen is selected as the AUX and VIDEO
     lines are shared with the touch controller.
     
     Changes:-
     
      o Added AC97_HAS_NO_AUX flag
      o Test for AC97_HAS_NO_AUX flag in snd_ac97_mixer_build()
      o Sets AC97_HAS_NO_VIDEO and AC97_HAS_NO_AUX in patch_wolfson05() when
     WM9705 touch driver is selected.  
     
     Signed-off-by: Rodolfo Giometti <giometti@linux.it>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - AD1888 suspend/resume fix
     
     This patch adds a write to an undocumented register, 0x60 Extended
     Codec Register Page in the AD1888 codec. It is neccessary in order
     to make suspend/resume work with the AD1888. 
     
     Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
   - ac97 - Add Thinkpad T41p to AD1981 jack-sense blacklist
     
     Added Thinkpad T41p to the blacklist to disable HP/line jack-sensing
     with AD1981B.  The jack-sensing is just harmful on this laptop.
   - add codec-specific controls for UCB1400
     
     This patch adds some codec-specific controls for Philips UCB1400 codec.
     
     Signed-off-by: Mike Rapoport <mike@compulab.co.il>
   - Add experimental support of aggressive AC97 power-saving mode
     
     Added CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support
     of aggressive AC97 power-saving mode.  In this mode, the AC97
     powerdown register bits are dynamically controlled at each open/close
     of PCM streams.
     
     The mode is activated via power_save option for snd-ac97-codec
     driver.  As default it's off.  It can be turned on/off on the fly
     via sysfs, too.
   - Add a workaround for ASUS A6KM
     
     Added a workaround for ASUS A6KM board that requires EAPD
     rather than SPDIF-in.
   - Fix for LG K1 Express Laptop
     
     Attached is the patch for the LG K1 Express (K1-2333V) laptop that
     enables sound output.
     
     Signed-off-by: Magnus Sandin <magnus@sandin.cx>
 + AD1889 driver
   - add __devinitdata to all pci_device_id
     
     Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de>
   - Fix section mismatch errors in ALSA PCI drivers
     
     Fixed 'section mismatch' errors in ALSA PCI drivers:
     - removed invalid __devinitdata from pci id tables
     - fix/remove __devinit of functions called in suspend/resume
 + AK4XXX AD/DA converters
   - Revolution 5.1 - add AK5365 ADC support
     
     Add support for the AK5365 ADC.
     
     Signed-off-by: Jochen Voss <voss@seehuhn.de>
   - Stereo controls for M-Audio Revolution cards
     
     This patch adds stereo controls to revo cards by making the ak4xxx 
     driver mixers configurable from the card driver.
     
     Signed-off-by: Jani Alinikula <janialinikula@gmail.com>
   - ak4xxx-adda - Code clean-up
     
     Fix spaces, fold lines to fit 80 columns in ak4xxx-adda driver codes.
     Split a long reset function to each codec routine just for better
     readability.
   - Revolution 5.1 - complete the AK5365 support
     
     Complete the AK5365 support.
     
     This adds a boolean control to toggle the soft mute feature of the
     AK5365 chip.
     
     Signed-off-by: Jochen Voss <voss@seehuhn.de>
   - Fix compile warnings in ak4xxx-adda.c
     
     Fixed compile warnings in ak4xxx-adda.c reagarding missing
     enum cases in switch.
 + ALI5451 driver
   - add __devinitdata to all pci_device_id
     
     Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de>
   - Fix section mismatch errors in ALSA PCI drivers
     
     Fixed 'section mismatch' errors in ALSA PCI drivers:
     - removed invalid __devinitdata from pci id tables
     - fix/remove __devinit of functions called in suspend/resume
 + ALS4000 driver
   - Change an arugment of snd_mpu401_uart_new() to bit flags
     
     Change the 5th argument of snd_mpu401_uart_new() to bit flags
     instead of a boolean.  The argument takes bits that consist of
     MPU401_INFO_XXX flags.
     
     The callers that used the value 1 there are replaced with
     MPU401_INFO_INTEGRATED.
 + ALSA Version
   - release 1.0.12rc2a
   - snd-ca0106: Fix dB gain TLVs.
 + ALSA sequencer
   - Change seq_midi.c so client name is card, rather than port, specific
     
     Change snd_seq_midisynth_register_port() in seq_midi.c so that if a new client
     is created, the client name string is based on card->shortname not
     (port-specific) info->name.
     
     Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
   - Clean up EXPORT_SYMBOL()s in snd-seq module
     
     Move EXPORT_SYMBOL()s to places adjacent to functions/variables.
   - Fix Makefiles to follow spread of EXPORT_SYMBOL()s
   - lockdep: annotate sound/core/seq/seq_ports.c
     
     Teach special (recursive) locking code to the lock validator.  Has no effect
     on non-lockdep kernels.
     
     Signed-off-by: Ingo Molnar <mingo@elte.hu>
     Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - lockdep: annotate sound/core/seq/seq_device.c
     
     The ops structure has complex locking rules, where not all ops are equal, some
     are subordinate on others for some complex sound cards.  This requires for
     lockdep checking that each individual reg_mutex is considered in separation
     for its locking rules.
     
     Has no effect on non-lockdep kernels.
     
     Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
   - Conversions from kmalloc+memset to k(z|c)alloc
     
     sound: Conversions from kmalloc+memset to k(c|z)alloc.
     
     Signed-off-by: Panagiotis Issaris <takis@issaris.org>
   - Fix misuse of __list_add() in seq_ports.c
     
     seq_ports.c::snd_seq_delete_all_ports() uses __list_add() to replace the
     whole list entries.  This results in BUG() with recent FC5 kernel due to
     a sanity check in __list_add().
     
     The patch fixes this misue of __list_add() by using standard macros
     instead (although a bit more code is needed).
   - add more sequencer port type information bits
     
     Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
     _SYNTHESIZER, _PORT for sequencer ports.  This makes it easier for apps
     like Rosegarden to make policy decisions based on the port type.
   - rawmidi: add get_port_info callback for sequencer information flags
     
     Add a get_port_info callback to the snd_rawmidi_global_ops structure to
     allow the USB MIDI driver to supply information flags for the sequencer
     ports created by seq_midi.
   - Remove nested mutexes in seq_ports.c
     
     Removed nested mutexes in the removal routine of port connections.
     The port is guaranteed to be offline before calling it, so no mutex
     is needed.
 + ALSA<-OSS emulation
   - Move OSS-specific hw_params helper to snd-pcm-oss module
     
     Move EXPORT_SYMBOL()s to places adjacent to functions/variables.
     
     Also move OSS-specific hw_params helper functions to pcm_oss.c.
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     snd_info_set_text_ops() is fixed, too.
   - Add O_APPEND flag support to PCM
     
     Added O_APPEND flag support to PCM to enable shared substreams
     among multiple processes.  This mechanism is used by dmix and
     dsnoop plugins.
   - Fix mmap_count with O_APPEND opened streams
     
     Move mmap_count to snd_pcm_substream instead of runtime struct
     so that multiplly opened substreams via O_APPEND can be handled
     correctly.
   - Regenerated patches for new PCM with O_APPEND
   - Fix disconnection of proc interface
     
     - Add the linked list to each proc entry to enable a single-shot
       disconnection (unregister)
     - Deprecate snd_info_unregister(), use snd_info_free_entry()
     - Removed NULL checks of snd_info_free_entry()
   - Unregister device files at disconnection
     
     Orignally proposed by Sam Revitch <sam.revitch@gmail.com>.
     
     Unregister device files at disconnection to avoid the futher accesses.
     Also, the dev_unregister callback is removed and replaced with the
     combination of disconnect + free.
     
     A new function snd_card_free_when_closed() is introduced, which is
     used in USB disconnect callback.
   - Fix Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n
     
     Fixed Oops at rmmod with CONFIG_SND_VERBOSE_PROCFS=n.
     Add ifdef to struct fields for optimization and better compile
     checks.
   - Conversions from kmalloc+memset to k(z|c)alloc
     
     sound: Conversions from kmalloc+memset to k(c|z)alloc.
     
     Signed-off-by: Panagiotis Issaris <takis@issaris.org>
   - Don't reject O_RDWR at opening PCM OSS with read/write-only device
     
     Accept O_RDWR at opening a PCM OSS device that is read- or write-only,
     just for the compatibility with the behavior of older versions.
   - Remove zero-initialization of static variables
     
     Removed zero-initializations of static variables.
     A tiny optimization.
 + AMD InterWave driver
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
     
     This is needed if we wish to change the size of the resource structures.
     
     Based on an original patch from Vivek Goyal <vgoyal@in.ibm.com>
     
     Cc: Vivek Goyal <vgoyal@in.ibm.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 + ARM AACI PL041 driver
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
     From: Thomas Gleixner <tglx@linutronix.de>
     
     Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
     Cc: Ingo Molnar <mingo@elte.hu>
     Cc: "David S. Miller" <davem@davemloft.net>
     Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Cc: Jaroslav Kysela <perex@suse.cz>
     Cc: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
     
     This is needed if we wish to change the size of the resource structures.
     
     Based on an original patch from Vivek Goyal <vgoyal@in.ibm.com>
     
     Cc: Vivek Goyal <vgoyal@in.ibm.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 + ARM PXA2XX driver
   - pxa2xx-i2sound - PCM - disable MMAP access
     From: Giorgio Padrin <giorgio@mandarinlogiq.org>
 + AZT3328 driver
   - azt3328.c: add suspend/resume support
     
     - add suspend/resume handlers
     - fix problem (private_data members not set)
     
     Playing a file while suspending will resume correctly with this patch,
     so I assume the hardware to get fully correctly reinitialized with
     this patch.
     
     Signed-off-by: Andreas Mohr <andi@lisas.de>
   - azt3328.c: add 3D sound mixer switch/rename controls
     
     - add 3D sound pre-3D/post-3D switch, as seen in standard AC-97 
     - rename controls to shorter and more accurate strings
     
     Signed-off-by: Andreas Mohr <andi@lisas.de>
   - azt3328.c: use kernel coding style
     
     Scope braces were not done the One True Kernel Way.
     
     Signed-off-by: Andreas Mohr <andi@lisas.de>
 + Apple Onboard Audio driver
   - Fix wrong dependencies of snd-aoa driver
     
     Fixed wrong dependencies of snd-aoa driver.  It selects PCM instead.
   - ppc - Add new interrupt mapping core and change platforms to use it
     
     This adds the new irq remapper core and removes the old one.  Because
     there are some fundamental conflicts with the old code, like the value
     of NO_IRQ which I'm now setting to 0 (as per discussions with Linus),
     etc..., this commit also changes the relevant platform and driver code
     over to use the new remapper (so as not to cause difficulties later
     in bisecting).
     
     This patch removes the old pre-parsing of the open firmware interrupt
     tree along with all the bogus assumptions it made to try to renumber
     interrupts according to the platform. This is all to be handled by the
     new code now.
     
     For the pSeries XICS interrupt controller, a single remapper host is
     created for the whole machine regardless of how many interrupt
     presentation and source controllers are found, and it's set to match
     any device node that isn't a 8259.  That works fine on pSeries and
     avoids having to deal with some of the complexities of split source
     controllers vs. presentation controllers in the pSeries device trees.
     
     The powerpc i8259 PIC driver now always requests the legacy interrupt
     range. It also has the feature of being able to match any device node
     (including NULL) if passed no device node as an input. That will help
     porting over platforms with broken device-trees like Pegasos who don't
     have a proper interrupt tree.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - aoa driver - Kconfig - remove spaces for SND!=n
   - Fix snd-aoa irq conversion
     
     Use proper irq mapping interface for snd-aoa-i2sbus.
     
     Signed-off-by: Andreas Schwab <schwab@suse.de>
   - aoa: i2sbus: move module parameter declaration up
     
     This patch moves the i2sbus 'force' module parameter declaration to the top of
     the file.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa: i2sbus: fix for PowerMac7,2 and 7,3
     
     This patch cleans up the resource handling in i2sbus and adds workarounds for
     the broken device trees on the PowerMac7,2 and 7,3.  Some of this code will
     later move again when macio_asic is going to export all the sub-nodes too.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa: fix when all is built into the kernel
     
     This patch fixes initialisation issues when all of aoa is built into the
     kernel by re-ordering the link order in the Makefile and making the soundbus
     use subsys_initcall so it is initialised earlier.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa: i2sbus: revamp control layer
     
     This patch revamps the i2sbus control layer by using the macio/keylargo
     functions instead of directly mapping.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa: pmf gpio: report if function calling fails
     
     This patch makes the pmf GPIO layer in aoa report if calling a platform
     function failed.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa fabric layout: clean up messages
     
     This patch cleans up the printk's in the layout fabric and also makes it
     display which type of GPIO access it is going to use.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa: tas: change PCM1 name to PCM
     
     This patch changes the PCM1 control name to PCM to make it play nice with the
     softvol plugin (which will then go away if it sees a proper PCM slider)
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: tas: fix initialisation/reset
     
     This patch fixes the initialisation and reset of the tas codec.  The tas will
     often reset if the i2s clocks go away so it needs to be completely
     re-initialised when clocks come back.
     
     Also, this patch adds some code for DRC that will be exploited later to add a
     DRC control again, fixing a regression over snd-powermac.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa: tas: surface DRC control again
     
     This patch makes the DRC control visible again for TAS chips.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: layout fabric: add missing module aliases
     
     The layout fabric gained support for all IDs when I extracted those from the
     OSX description file.  But apparently I had forgotten to add them all as
     module aliases so the module will also load.  This patch adds them.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: tas: add missing bass/treble controls
     
     This patch adds the bass/treble controls to snd-aoa that snd-powermac always
     had for tas3004 based machines.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: feature gpio layer: fix IRQ access
     
     The IRQ rework caused some hiccups here, in some cases we call
     get_irq without a device node. This patch makes it catch that
     case and return NO_IRQ when it happens, along with changing the
     place where the irq is checked to check for NO_IRQ instead of -1.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
     Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
   - aoa: fix toonie codec
     
     This patch fixes the toonie codec to be actually usable.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: platform function gpio: ignore errors from functions that don't exist
     
     Sometimes we simply want to turn off or on everything, and when recently a
     warning was added when a certain platform function can't be called, this
     triggered all the time in those cases. This patch shows the warning only if
     the error was different from the function not existing.
     
     The alternative would be to not even try calling the function when it
     doesn't exist by first checking which exist and then only calling those that
     do, but that adds complexity that isn't necessary.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - Select I2C and I2C_POWERMAC in aoa/codecs/Kconfig
     
     Added the missing selection of I2C and I2C_POWERMAC
     for Onyx and TAS codecs in aoa/codecs/Kconfig.
   - snd-aoa: add snd-aoa
     
     This large patch adds all of snd-aoa.
     
     Consisting of many modules, it currently replaces snd-powermac
     for all layout-id based machines and handles many more (for
     example new powerbooks and powermacs with digital output that
     previously couldn't be used at all).
     It also has support for all layout-IDs that Apple has (judging
     from their Info.plist file) but not all are tested.
     
     The driver currently has 2 known regressions over snd-powermac:
      * it doesn't handle powermac 7,2 and 7,3
      * it doesn't have a DRC control on snapper-based machines
     
     I will fix those during the 2.6.18 development cycle.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - snd-aoa: not experimental
     
     The dependencies in the soundbus Kconfig were wrong, it isn't
     experimental any more.
     
     This patch fixes that and makes it select SND_PCM too instead of
     depending on it.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - snd-aoa: support iMac G5 iSight
     
     This properly adds support for the iMac G5 iSight.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - snd-aoa: enable dual-edge in GPIOs
     
     Apparently some firmware versions forget enabling the dual-edge bit,
     snd-powermac did that too and even OSX does sometimes. This should fix
     headphone plug detection on those machines.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
 + Asihpi driver
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     Also fixed snd_info_set_text_ops(), too.
   - ASIHPI driver updates
     
      - ASI4xxx - errata workarounds for Intel 9XX chipset based computers.
     	Not 100% guaranteed.  Users must test before deployment.
      - ASI50xx - 16-24 kHz not supported. 192 kHz channel assignment fixes.
      - ASI6044 - Now runs at 225 Mhz. This fixes lockups on some Intel 9XX
     	chipset based computers.
      - ASI6416 - MP2 encode speed up. 16-Play mode added. Fix bug in
     	44.1->48 kHz sample rate converter.
      - ASI66xx - added.
      - Removed - ASI44xx, ASI4500, ASI4601, ASI8800.
     
     Details
     	- various maintainer build enhancements
     	- firmware loading: better configure detection of directory,
     	- dsp bin placed in asihpi subdirectory
     	- RPM build uses configured firmware dir.
     	- update library version from 0.0.0  to 1.0.0:
     	- Add tone and silence detector APIs. Add async object and apis.
     	- Add AdapterEnumerateProperty
     	- Remove HPI_GetLastErrorDetail, gadwHpiSpecificError
     	- update hpimod.c for 2.4 kernel
     	- driver module improved cleanup after error during init
     	- asihpirec/play format option changed to -f
     	- asihpitest,asihpitune display correct control listing with disabled
     	  controls
     	- asihpi start script creates dev file even if driver loaded already by
     	  hotplug
     	- remove asihpireset from dist.  Split kernel out of hpios_linux.h
     	- use new SMP locking
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - Fix compile warnings on 2.6.18 kernel
     
     Fix compile warnings due to the change of 64bit resource in the
     recent kernel.
   - asihpi: add irqs_disabled() wrapper
     
     Add a wrapper for irqs_disabled() on older kernels.
   - asihpi - Fix obsoleted MODULE_PARM() and struct initialization
     
     Replaced the obsoleted MODULE_PARM() with module_param().
     Fixed the struct initialization in C99 style, too.
   - asihpi - Fix includes
     
     Pick up dpi56301.h and boot4ka.h from the local directory (ALSA bug#2246).
   - use <sound/driver.h>
     
     Add the <sound/driver.h> header to pick up the compatibility code for
     earlier kernels.
 + BT87x driver
   - bt87x: add Voodoo TV 200 whitelist entry
     
     This adds a whitelist entry for the digital audio input of the Voodoo TV 200.
 + CA0106 driver
   - snd-ca0106: Fix dB gain TLVs.
   - snd-ca0106: Update playback to 24bit. Fix typo is comment.
   - Fix compile errors with older gcc
     
     Fixed compile errors with older gcc for initialization of a union.
     
     sound/pci/ca0106/ca0106_mixer.c: At top level:
     sound/pci/ca0106/ca0106_mixer.c:499: unknown field `p' specified in initializer
     sound/pci/ca0106/ca0106_mixer.c:499: warning: missing braces around initializer
     sound/pci/ca0106/ca0106_mixer.c:499: warning: (near initialization for `snd_ca0106_volume_ctls[0].tlv')
   - Control API - TLV implementation for additional information like dB scale
     
     This patch implements a TLV mechanism to transfer an additional information
     like dB scale to the user space. The types might be extended in future.
     
     Acked-by: Takashi Iwai <tiwai@suse.de>
   - HDA codec & CA0106 - add/fix TLV support
 + CMIPCI driver
   - cmipci - Fix a typo in "PC Speaker Playback Switch" control
     
     Fixed a typo in  "PC Speaker Playback Switch" control name.
   - cmipci - Disable integrated mpu401 as default
     
     Enable the support of mpu401 PCI port only when mpu_port=1 module
     option is given, i.e. disabled as default.
     It turned out that the check of integrated midi port isn't perfect
     and caused hang-ups on some boards.
 + CREDITS file
   - 2.6 kernel sync: misc
   - 2.6 kernel sync
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
   - 2.6 kernel sync
 + CS423x drivers
   - miro - Makefile cleanup
     
     Let's remove an miro dependency from alsa-driver, because miro is a part
     of alsa-kernel now.
     
     Signed-off-by: Martin Langer <martin-langer@gmx.de>
   - Fix undefined (missing) references in ISA MIRO sound driver
     
     WARNING: /lib/modules/2.6.18-rc1-mm1/kernel/sound/isa/opti9xx/snd-miro.ko
     needs unknown symbol snd_cs4231_create
     WARNING: /lib/modules/2.6.18-rc1-mm1/kernel/sound/isa/opti9xx/snd-miro.ko
     needs unknown symbol snd_cs4231_pcm
     WARNING: /lib/modules/2.6.18-rc1-mm1/kernel/sound/isa/opti9xx/snd-miro.ko
     needs unknown symbol snd_cs4231_timer
     WARNING: /lib/modules/2.6.18-rc1-mm1/kernel/sound/isa/opti9xx/snd-miro.ko
     needs unknown symbol snd_cs4231_mixer
     WARNING: /lib/modules/2.6.18-rc1-mm1/kernel/fs/reiser4/reiser4.ko needs
     unknown symbol generic_file_read
     
     Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
 + CS4281 driver
   - Fix races in irq handler and ioremap
     
     Call ioremap before request_irq for avoiding possible races
     in the irq handler.
     
     Signed-off-by: Takashi Iwai <tiwai@suse.de>
 + CS46xx driver
   - fix AB-BA deadlock inversion at cs46xx_dsp_remove_scb
     
     There is a code sequence where the locking is substream->self_group.lock
     -> ins->scbs[index].lock
     
     substream->self_group.lock is interrupt safe, and taken from irq context
     as well (trace is snipped for brevity)
     
     so what can happen is
     
        cpu 0                        cpu 1
        user context                 user context
     
                                     take ins->scbs[index].lock without disabling int
     errupts
     
        get substream->self_group.lock (irqsafe)
        try to get ins->scbs[index].lock (spins)
     
                                     interrupt happens
                                     try to get substream->self_group.lock (spins)
     
     which is an obvious AB-BA deadlock
     
     
     s to just take the lock with _irqsafe
     
     Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - Fix possible races in PCI driver removal
     
     Call free_irq() before releasing others to avoid races when
     shared irq is issued.
   - Fix section mismatch errors in ALSA PCI drivers
     
     Fixed 'section mismatch' errors in ALSA PCI drivers:
     - removed invalid __devinitdata from pci id tables
     - fix/remove __devinit of functions called in suspend/resume
 + CS5535 driver
   - PM support for cs5535audio
     
     Appended is my patch adding PM support to the cs5535audio driver.
     I also added the ac97 quirk but it's not yet confirmed which
     boards need to be in the quirk list. The patch also includes some
     Kconfig and misc cleanup.
     
     Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
   - Fix for PM support on cs5535audio
   - Single variables for cs5535audio
     
     As per Takashi's feedback, this is a cleanup to make cs5535audio be
     single device per system. The diff is against 2.6.17-rc4 with
     Takashi's patch adding the module_params for index, id and enable. 
     
     Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
   - Fix Makefile of cs5535audio
     
     Use ifeq instead of ifdef in Makefile to make the maintenance of
     out-of-kernel tree easier.
   - cs5535audio - trivial debug printk
     
     Following is a trivial patch to get more info for boards where
     the AC97_VENDOR_ID2 register (or others) time out.
     
     Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
   - cs5535audio - Add missing module_param*() and MODULE_PARM_DESC()
     
     Added missing module_param*() and MODULE_PARM_DESC() for
     cs5535audio driver.
 + CX88 driver
   - add __devinitdata to all pci_device_id
     
     Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de>
 + Common EMU synth
   - emux - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - fix port type bits
     
     Fix the port information about non-MIDI messages that had wrong values
     for some OPL3 and EmuX ports.
   - Fix export-objs for update of EXPORT_SYMBOL()s
     
     Fix export-objs for update of EXPORT_SYMBOL()s in alsa-kernel tree.
   - add more sequencer port type information bits
     
     Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
     _SYNTHESIZER, _PORT for sequencer ports.  This makes it easier for apps
     like Rosegarden to make policy decisions based on the port type.
   - NULL pointer dereference in sound/synth/emux/soundfont.c
     
     this is about coverity id #100.
     It seems the if statement is negated, since the else branch calls
     remove_info() with sflist->currsf as a parameter where it gets
     dereferenced.
     
     Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
 + Conexant Riptide driver
   - riptide: fix compile errors with older gcc
     
     Change the syntax of a union initialization that is not understood by
     gcc 2.x.
   - Fix possible races in PCI driver removal
     
     Call free_irq() before releasing others to avoid races when
     shared irq is issued.
 + Digigram PCXHR driver
   - pcxhr - Fix a compiler warning on 64bit architectures
     
     The patch fixes a conpile warning on 64bit architectures, caused by
     different sizes of size_t . Since size_t is unsigned I permited
     myself to cange the format, too.
     
     Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de>
 + Digigram VX Pocket driver
   - Deprecate snd_card_free_in_thread()
     
     Deprecated snd_card_free_in_thread(), replaced with
     snd_card_free_when_closed().
   - sound/vxpocket: fix printk warning
     
     Fix printk format warning:
     sound/pcmcia/vx/vxp_ops.c:205: warning: format '%x' expects type 'unsigned int', but argument 5 has type 'size_t'
     
     Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
 + Digigram VX core
   - vx - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - Fix export-objs for update of EXPORT_SYMBOL()s
     
     Fix export-objs for update of EXPORT_SYMBOL()s in alsa-kernel tree.
   - Conversions from kmalloc+memset to k(z|c)alloc
     
     sound: Conversions from kmalloc+memset to k(c|z)alloc.
     
     Signed-off-by: Panagiotis Issaris <takis@issaris.org>
 + Documentation
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     snd_info_set_text_ops() is fixed, too.
   - Misc fixes for Realtek HD-audio codecs
     
     - Added model=arima for Arima W820Di1 with ALC882 codec chip
     - Added EAPD-control verbs to TCL S700 init verbs
     - Added missing model strings for Realtek codecs (to be specified
       via module option explicitly for testing/debugging)
   - Fix description of cs5535audio driver in ALSA-Configuration.txt
     
     Fix the description of cs5535audio driver in ALSA-Configuraiton.txt.
     Now it supports only single device.
   - adding __devinitdata to pci_device_id
     
     Refering to <kernelsource>/Documentation/pci.txt
     the struct pci_device_id can be released after loading the module.
     
     Signed-off-by: Kenrik Kretzschmar <henne@nachtwindheim.de>
   - 2.6 kernel sync: [PATCH] irq-flags: documentation: Use the new IRQF_ constants
     Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
     Cc: Ingo Molnar <mingo@elte.hu>
     Cc: "David S. Miller" <davem@davemloft.net>
     Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Cc: "Randy.Dunlap" <rdunlap@xenotime.net>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 kernel sync: misc
   - Add snd-mts64 driver for ESI Miditerminal 4140
     
     Added snd-mts64 driver for Ego Systems (ESI) Miditerminal 4140
     by Matthias Koenig <mk@phasorlab.de>.
     
     The driver requires parport (CONFIG_PARPORT).
     
     Signed-off-by: Matthias Koenig <mk@phasorlab.de>
   - Fix a typo in writing-an-alsa-driver document
     
     Fixed a typo in writing-an-alsa-driver document.
   - cmipci - Disable integrated mpu401 as default
     
     Enable the support of mpu401 PCI port only when mpu_port=1 module
     option is given, i.e. disabled as default.
     It turned out that the check of integrated midi port isn't perfect
     and caused hang-ups on some boards.
   - Remove obsolete description from ALSA-Configuration.txt
     
     Remove obsolete descriptions about the dependency on CONFIG_ISA
     for vxpocket and pdaudiocf drivers.
   - Add model entry for Clevo m665n laptop
     
     Added the proper model entry for Clevo m665n laptop with ALC880 codec.
     Also, added a model string "clevo" to enable the clevo-type model option.
   - Add hp-bpc model type for HP laptops
     
     Added "hp-bpc" model type for HP xw4400-compatible laptops.
   - Add support of Benq laptop with ALC262
     
     Added the support of Benq laptop with ALC262 codec.
     A model string "benq" is added, too.
   - Change an arugment of snd_mpu401_uart_new() to bit flags
     
     Change the 5th argument of snd_mpu401_uart_new() to bit flags
     instead of a boolean.  The argument takes bits that consist of
     MPU401_INFO_XXX flags.
     
     The callers that used the value 1 there are replaced with
     MPU401_INFO_INTEGRATED.
   - Added model for Uniwill laptop with ALC861
     
     Added a new model "uniwill-m31" for Uniwill laptops with ALC861
     codec chip.  The patch is taken from ALSA bug#2035, and modifeid.
   - Add support for Sony Vaio AR 11B
     
     This patch adds automatic detection for Sigmatel ID 7664,
     the sound chip in Sony Vaio AR 11B (european name).
     
     - patch_stac7661 becomes patch_stac766x
     - .id = 0x83847664 is added
     
     Signed-off-by: Guillaume Munch <diabo@free.fr>
   - Fix section mismatch errors in ALSA PCI drivers
     
     Fixed 'section mismatch' errors in ALSA PCI drivers:
     - removed invalid __devinitdata from pci id tables
     - fix/remove __devinit of functions called in suspend/resume
   - Add echoaudio sound drivers
     
     From: Giuliano Pochini <pochini@shiny.it>
     
     Add echoaudio sound drivers (darla20, darla24, echo3g, gina20, gina24,
     indigo, indigodj, indigoio, layla20, lala24, mia, mona)
   - Fix/add support of Realtek ALC883 / ALC888 and ALC861 codecs
     
     Patch from Realtek:
     - Fix ALC883 support code
     - Add support of ALC888 codec
     - Add ALC660 support (ALC861-compatible)
     - Add HP xw4400/6400/8400/9400 support (model=hp-bpc)
     - Code clean-up: fix spaces and indentation
   - Fix description of snd-hda-intel driver in document
     
     Fixed the description of snd-hda-intel driver in ALSA-Configuration.txt
     document.
 + EMU10K1/EMU10K2 driver
   - emu10k1 - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - Fix export-objs for update of EXPORT_SYMBOL()s
     
     Fix export-objs for update of EXPORT_SYMBOL()s in alsa-kernel tree.
   - snd-emu10k1: Add a comment explaining the conversion function for dB gain.
   - snd-emu10k1: Implement 24bit capture via Philips 1361T ADC for SB0240 card.
   - snd-emu10k1: Implement dB gain infomation.
   - snd-emu10k1: Fixes ALSA bug#2190
     
     Fixes ALSA bug#2190 System hangs on unplugging Audigy 2 ZS
     Notebook CardBus card.
   - snd-emu10k1: Implement support for Audigy 2 ZS [SB0353]
     
     Fixes ALSA bug#1365.
   - Fix compile errors with older gcc
     
     Fixed compile errors with older gcc for initialization of a union.
     
     sound/pci/ca0106/ca0106_mixer.c: At top level:
     sound/pci/ca0106/ca0106_mixer.c:499: unknown field `p' specified in initializer
     sound/pci/ca0106/ca0106_mixer.c:499: warning: missing braces around initializer
     sound/pci/ca0106/ca0106_mixer.c:499: warning: (near initialization for `snd_ca0106_volume_ctls[0].tlv')
   - Fix no mpu401 interface can cause hard freeze
     
     This patch fixes the remaining instances in our tree where a non-
     existent mpu401 interface can cause a hard freeze when i/o is issued.
     
     This commit closes Malone #34831.
     
     Bug: https://launchpad.net/distros/ubuntu/+source/linux-source-2.6.15/+bug/34831
     
     patch location:
     http://www.kernel.org/git/?p=linux/kernel/git/bcollins/ubuntu-dapper.git;a=commitdiff;h=b422309cdd980cfefe99379796c04e961d3c1544
     
     From: Randy Dunlap <randy.dunlap@oracle.com>
   - emu10k1x: simplify around pci_register_driver()
     
     Report errors to modprobe as side effect.
     
     Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
 + EMU8000 driver
   - Fix invalid __init in ALSA ISA drivers
     
     Replaced invalid __init with __devinit in snd-sbawe and snd-opl3sa2
     drivers.
 + ES18xx driver
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
     
     This is needed if we wish to change the size of the resource structures.
     
     Based on an original patch from Vivek Goyal <vgoyal@in.ibm.com>
     
     Cc: Vivek Goyal <vgoyal@in.ibm.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - es18xx - Add PnP BIOS support
     
     This patch adds PnP BIOS support to es18xx driver. It allows ESS ES18xx sound 
     chips integrated in some notebooks (such as DTK FortisPro TOP-5A) that don't 
     appear as ISA cards (they aren't recognized by ISA PnP, only by PnP BIOS) 
     to "just work" automatically.
     
     Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
   - es18xx build fix
     
     sound/isa/es18xx.c: In function `snd_es18xx_identify':
     sound/isa/es18xx.c:1606: warning: implicit declaration of function `udelay'     
     
     Signed-off-by: Andrew Morton <akpm@osdl.org>
 + Echoaudio driver
   - Add echoaudio sound drivers
     
     From: Giuliano Pochini <pochini@shiny.it>
     
     Add echoaudio sound drivers (darla20, darla24, echo3g, gina20, gina24,
     indigo, indigodj, indigoio, layla20, lala24, mia, mona)
   - Move echoaudio drivers to alsa-kernel tree
   - Fix a typo in echoaudio/midi.c
     
     Fixed a typo in echoaudio/midi.c.
   - echoaudio - Fix Makefile
     
     Fix missing makefile entries for echoaudio drivers
     (sorry for cut-n-paste error!)
   - Fix Makefile for echoaudio drivers
     
     Include Makefile in alsa-kernel tree.
   - echoaudio - Remove kfree_nocheck()
     
     Remove obsoleted kfree_nochec() (for debug).
 + FM801 driver
   - fix the SND_FM801_TEA575X dependencies
     
     CONFIG_SND_FM801=y, CONFIG_SND_FM801_TEA575X=m resulted in the following 
     compile error:
     
     <--  snip  -->
     
     ...
       LD      vmlinux
     sound/built-in.o: In function `snd_fm801_free':
     fm801.c:(.text+0x3c15b): undefined reference to `snd_tea575x_exit'
     sound/built-in.o: In function `snd_card_fm801_probe':
     fm801.c:(.text+0x3cfde): undefined reference to `snd_tea575x_init'
     make: *** [vmlinux] Error 1
     
     <--  snip  -->
     
     This patch fixes kernel Bugzilla #6458.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - fm801: Support FM only card
     Signed-off-by: Andy Shevchenko <andy@smile.org.ua>
   - fm801: fixed broken previous patch for the FM tuner only code
     - do not allocate and enable interrupt
     - do not do the FM tuner mute (it should be handled more cleanly)
   - sound/pci/fm801: Use ARRAY_SIZE macro
     
     Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0])
     
     Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
 + GUS Extreme driver
   - make sound/isa/gus/gusextreme.c:devices static
     
     "devices" is not a good name for a global variable.
     
     Thankfully, it can become static.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
 + GUS Library
   - add more sequencer port type information bits
     
     Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
     _SYNTHESIZER, _PORT for sequencer ports.  This makes it easier for apps
     like Rosegarden to make policy decisions based on the port type.
 + Generic drivers
   - virmidi: revert erroneous removal of zero initialization
     
     The last patch that tried to remove zero initializations of static
     variables accidentally removed a not-quite-zero initialization too.
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
     From: Thomas Gleixner <tglx@linutronix.de>
     
     Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
     Cc: Ingo Molnar <mingo@elte.hu>
     Cc: "David S. Miller" <davem@davemloft.net>
     Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Cc: Jaroslav Kysela <perex@suse.cz>
     Cc: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - Disable serialmidi driver
     
     Disable serialmidi driver in Kconfig since it's seriously broken
     with the recent kernels.
   - Fix some typos in snd-dummy driver
     
     Fixed some typos in snd-dummy driver.
   - Move mts64 driver to alsa-kernel tree
     
     Moved mts64 driver to alsa-kernel tree.
   - Add snd-mts64 driver for ESI Miditerminal 4140
     
     Added snd-mts64 driver for Ego Systems (ESI) Miditerminal 4140
     by Matthias Koenig <mk@phasorlab.de>.
     
     The driver requires parport (CONFIG_PARPORT).
     
     Signed-off-by: Matthias Koenig <mk@phasorlab.de>
   - Clean up portman2x4 driver code
     
     Clean up portman2x4 driver code:
     - make local functions and variables static
     - removed unused midi_in_queue stuff
     
     More rewrite is needed for this driver...
   - Add experimental support of aggressive AC97 power-saving mode
     
     Added CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support
     of aggressive AC97 power-saving mode.  In this mode, the AC97
     powerdown register bits are dynamically controlled at each open/close
     of PCM streams.
     
     The mode is activated via power_save option for snd-ac97-codec
     driver.  As default it's off.  It can be turned on/off on the fly
     via sysfs, too.
   - Support for ESI Miditerminal 4140
     
     Add support for the ESI Miditerminal 4140 to alsa-driver.
     
     Signed-off-by: Matthias Koenig <mk@phasorlab.de>
   - pc-speaker updates for 2.6.17
     
     - kernel hook no longer touches the input subsystem, as the
     changes were rejected by upstream. Instead I had to
     copy/paste the pcspkr.c into my driver and make the changes
     to it locally. The original pcspkr.c now gets disabled in
     Kconfig.
     - Added a mixer control for the aforementioned pcspkr driver.
     - kernel patch no longer breaks the xtime_lock locking -
     instead the driver now does write_sequnlock(&xtime_lock) before
     calling snd_pcm_period_elapsed() to avoid recursive locking.
     - I renamed pcsp_defs.h to pcsp.h. If this change makes a
     problem for you (I know the CVS people would complain, but
     ALSA no longer uses CVS, so why not?:), let me know and I'll
     undo it.
     
     Signed-off-by: Stas Sergeev <stsp@aknet.ru>
 + HDA Codec driver
   - hda-codec - Add codec id for AD1988B codec chip
     
     Add codec id for AD1988B codec chip.
     The functionality is identical with AD1988(A) chip.
   - hda-codec - Add support for Sony Vaio VGN-A790 laptop
     
     Added the model entry for Sony Vaio VGN-A790 laptop with ALC260 codec.
     
     From: Kenneth Crudup <kenny@panix.com>
   - hda-codec - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - Misc fixes for Realtek HD-audio codecs
     
     - Added model=arima for Arima W820Di1 with ALC882 codec chip
     - Added EAPD-control verbs to TCL S700 init verbs
     - Added missing model strings for Realtek codecs (to be specified
       via module option explicitly for testing/debugging)
   - Don't set up the same PID twice in snd_hda_multi_out_analog_prepare
     
     Check the hp_nid whether it's identical with front pin to avoid
     the setup of the same widget node twice.
   - Fix noisy output with shared channel mode with hd-audio
     
     - Fix the wrong initialization of num_dacs when changing the channel
       mode between 2 and multi-channel modes.  It must be evaluated
       after calling snd_hda_ch_mode_put()
     - Added the similar check of num_dacs fix in Realtek code.
   - hda-codec - Fix model for HP dc7600
     
     Changed the assigned model for HP dc7600 with ALC260 codec
     to match better with the actual I/O assignment.
     Patch taken from ALSA bug#2157.
   - hda-codec - add missing device ids
     
     This patch adds missing device ids for Intel 915 and D102GGC
     motherboards.
     
     Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
   - hda-codec - Fix headphone output for some Intel 945 systems
     
     This patch enables headphone output at initialization for Intel
     945 based systems that don't have proper detection circuitry.
     
     Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
   - Fix workaround for AD1988A rev2 codec
     
     Fix the workaround for AD1988A rev2 codec not to apply to AD1988B codec
     chips.
   - hda: sigmatel 9205 family support
     
     Adds support for the "9205 family" which includes some other
     part numbers but 9205 is the first one. These are 4 channel
     codecs, some have digital mic capability. Support for the digital
     mic feature will come later.
     
     Signed-off-by: Matt Porter <mporter@embeddedalley.com>
   - hda-codec - Add model entry for ASUS M9 laptop
     
     Add a model entry to support ASUS M9 laptop with AD1986A codec.
   - Add missing TLV callbacks for HD-audio codecs
     
     Added missing TLV callbacks for HD-audio codec supports.
     Also cleaned up the tlv callback for ad1986a (no mutex is needed there).
   - hda: fix sigmatel 9227/8/9 codec support
     
     SigmaTel 9227/8/9 IDs must use the 927x patch.
     
     Signed-off-by: Matt Porter <mporter@embeddedalley.com>
   - hda-codec - Fix missing array terminators in AD1988 codec support
     
     Fixed the missing array terminators in AD1988 codec support code.
   - HDA driver - do not set mute flag for dB scale (follow HDA specification)
   - hda-codec - Add model entry for HP nx6320
     
     Added a model entry for HP nx6320 with AD1981HD codec.
     It wasn't covered by the generic HP entry because of a hardware
     bug (the SSID is reversed).
   - hda-codec - Fix handling of capture controls on ALC882 3/6-stack models
     
     Fixed the handling of capture controls on ALC882 3/6-stack models.
     Now the driver checks the availability of NID 07h.
   - hda-codec - Fix capture from line-in on VAIO SZ/FE laptops
     
     Added the missing line-in capture on VAIO SZ/FE laptops with
     STAC 7661 codec.
   - Fix the preselected model for HP machine
     
     Fixed the preselected model for a HP machine with SSID 103c:3010
     to use hp-3013 (ALSA bug#2157).
   - [snd-hda-intel] fix sound on some Asus W6A chips
     
     This patch adds support in ALSA snd-hda-intel driver for Asus W6A
     motherboard as reported in MDV Bugzilla #19962
     
     (see http://qa.mandriva.com/show_bug.cgi?id=19962)
     
     Signed-off-by: Danny Tholen <danny@mailmij.org>
     Signed-off-by: Thomas Backlund <tmb@mandriva.org>
     Signed-off-by: Thierry Vignaud <tvignaud@mandriva.com>
   - hda-codec - add missing device ids for Intel 945 boards
     
     This patch adds missing device ids for Intel 945 motherboards.
      
     Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
   - hda-codec - Add support for new Intel boards with Stac9227 codec
     
     This patch adds full 5.1 audio support for Intel boards
     with the SigmaTel 9227 codec chip (946, 963, 965 series).
      
     Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
   - x86 MacMini: make built-in speaker sound actually work
     
     The MacMini board table seems to largely look like any bog-standard
     Intel 945 board.
     
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - Add model entry for Samsung X10 laptop
     
     Added the proper model entry (laptop-eapd) for Samsung X10-T2300
     Culesa laptop with AD1986A codec.
   - Add model entry for Clevo m665n laptop
     
     Added the proper model entry for Clevo m665n laptop with ALC880 codec.
     Also, added a model string "clevo" to enable the clevo-type model option.
   - Add hp-bpc model type for HP laptops
     
     Added "hp-bpc" model type for HP xw4400-compatible laptops.
   - Add support of Benq laptop with ALC262
     
     Added the support of Benq laptop with ALC262 codec.
     A model string "benq" is added, too.
   - Added model for ASUS M2NPV-VM mobo
     
     Added the proper model (3stack) for ASUS M2NPV-VM mobo with AD1986A
     codec.
   - hda-codec - Add SPDIF support to Thinkpad T/X/Z60
     
     Added IEC958 (SPDIF) output support to Thinkpad T/X/Z60 with
     AD1981HD codec.  The spdif jack is on docking station.
     
     Also, renamed "IEC958 Playback Route" to "IEC958 Playback Source"
     to avoid the mixer name confliction with IEC958 switch.
   - hda-codec - Add model entry for Samsung X60 Chane
     
     Added the model entry "laptop-eapd" for Samsung X60 Chane with
     AD1986A codec.
   - hda-codec - Add support for LG S1 laptop
     
     Added the model entry for LG S1 laptop.
   - hda-codec - Add model entry for ASUS Z62F
     
     Added a model entry "laptop-eapd" for ASUS Z62F laptop with
     AD1986A codec.
   - Added model for Uniwill laptop with ALC861
     
     Added a new model "uniwill-m31" for Uniwill laptops with ALC861
     codec chip.  The patch is taken from ALSA bug#2035, and modifeid.
   - Add support for Sony Vaio AR 11B
     
     This patch adds automatic detection for Sigmatel ID 7664,
     the sound chip in Sony Vaio AR 11B (european name).
     
     - patch_stac7661 becomes patch_stac766x
     - .id = 0x83847664 is added
     
     Signed-off-by: Guillaume Munch <diabo@free.fr>
   - HDA codec - little code & comment cleanup
   - HDA codec & CA0106 - add/fix TLV support
   - HDA - Lenovo 3000 N100-07684JU - enable laptop-eapd by default
     
     Justin Sunseri reports that sound is audible on his Lenovo 3000
     N100-07684JU by passing "model=laptop-eapd" to modprobe, so this
     patch adds the pci ids for his sound device to patch_analog.c .
     
     This commit closes LP#39517. Alexey Parshin also confirmed the fix at
     http://bugs.gentoo.org/137245
     
     TODO: Mute onboard speakers when device is plugged into the headphone
     jack. Muting the 'External Amplifier' mixer element while a device is
     plugged into the headphone jack allows sound to be played only from the
     headphone jack.
     
     From: Daniel T Chen <crimsun@ubuntu.com>
     Signed-off-by: Daniel T Chen <crimsun at ubuntu.com>
     Signed-off-by: Daniel Drake <dsd@gentoo.org>
   - hda-codec - Use 3stack model for ASUS P5RD2-VM / P5GPL-X SE
     
     Use 3stack model as default for ASUS P5RD2-VM and P5GPL-X SE
     boards with AD1986A codec (ALSA bug#2103).
   - Fix/add support of Realtek ALC883 / ALC888 and ALC861 codecs
     
     Patch from Realtek:
     - Fix ALC883 support code
     - Add support of ALC888 codec
     - Add ALC660 support (ALC861-compatible)
     - Add HP xw4400/6400/8400/9400 support (model=hp-bpc)
     - Code clean-up: fix spaces and indentation
   - Add Intel D965 board support
     
     Added the support for Intel D965 boards with STAC9227 codec.
   - hda-codec - Fix mute switch on VAIO laptops with STAC7661
     
     Fixed the master mute switch on VAIO laptops with STAC7661
     codec chip.
   - hda: add sigmatel 9227/9228/9229 ids
     
     Adds support for the 9227/9228/9229 sigmatel hda codecs.
     
     Signed-off-by: Matt Porter <mporter@embeddedalley.com>
   - hda-codec - Add support for Apple Mac Mini (early 2006)
     
     Add support for some audio quirks of the Apple Mac Mini (early 2006)
     
     Signed-off-by: Sam Revitch <samr7@cs.washington.edu>
   - hda-codec - Add support for Sony Vaio VGN-S3HP
     
     Added the missing support for Sony Vaio VGN-S3HP with ALC260 codec.
     The patch taken from ALSA bug#2101.
   - hda - Add support for the ATI RS600 HDMI audio device
     
     Add support for the ATI RS600 HDMI audio device. It has a one-stream
     pure digital stereo codec that isn't handled by the generic codec
     support.
     
     Signed-off-by: Felix Kuehling <fkuehlin@ati.com>
   - Added patch_atihdmi.c to alsa-driver tree
   - hda-codec - Fix init verbs for ALC260 hp model
     
     Use the basic init verbs for ALC260 instead of hp init verbs
     since hp init verbs seem incomplete and not working on some machines.
 + HDA Intel driver
   - hda-intel - Fix race in remove
     
     Call iounmap after free_irq to avoid invalid accesses in the
     shared irq.  The patch is taken from
     	https://bugzilla.novell.com/show_bug.cgi?id=167869
   - hda - Add support for the ATI RS600 HDMI audio device
     
     Add support for the ATI RS600 HDMI audio device. It has a one-stream
     pure digital stereo codec that isn't handled by the generic codec
     support.
     
     Signed-off-by: Felix Kuehling <fkuehlin@ati.com>
 + HDA generic driver
   - hda: export snd_hda_queue_unsol_event() wrapper
     
     On older kernels, the snd_hda_queue_unsol_event() wrapper wasn't
     exported.
   - Fix compile errors with older gcc
     
     Fixed compile errors with older gcc for initialization of a union.
     
     sound/pci/ca0106/ca0106_mixer.c: At top level:
     sound/pci/ca0106/ca0106_mixer.c:499: unknown field `p' specified in initializer
     sound/pci/ca0106/ca0106_mixer.c:499: warning: missing braces around initializer
     sound/pci/ca0106/ca0106_mixer.c:499: warning: (near initialization for `snd_ca0106_volume_ctls[0].tlv')
   - Fix build on older kernels
     
     Fix build of some drivers on old 2.4 kernels (possibly 2.2, too).
   - HDA codec - little code & comment cleanup
   - HDA codec & CA0106 - add/fix TLV support
   - hda-codec - Show EAPD and pin-detection capabilities in proc
     
     Show EAPD and pin-detection capabilities in proc files.
     They are often required to support the proper audio functionality.
   - hda - Add support for the ATI RS600 HDMI audio device
     
     Add support for the ATI RS600 HDMI audio device. It has a one-stream
     pure digital stereo codec that isn't handled by the generic codec
     support.
     
     Signed-off-by: Felix Kuehling <fkuehlin@ati.com>
 + I2C Kconfig
   - UDA1380 updates and fixes
     
     uda1380.c:
     * Fix recording.
     * snd_uda1380_i2c_probe(): refined precisely a mask in checking I2C addresses.
     * snd_uda1380_actl_reg_elem_int_info(): fix a typo causing a warning.
     
     uda1380.h:
     * ALSA drop of snd_*_t typedefs for struct snd_* .
     
     Kconfig:
     * Clean useless display of selection.
     
     Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
 + I2C UDA1380
   - UDA1380 updates and fixes
     
     uda1380.c:
     * Fix recording.
     * snd_uda1380_i2c_probe(): refined precisely a mask in checking I2C addresses.
     * snd_uda1380_actl_reg_elem_int_info(): fix a typo causing a warning.
     
     uda1380.h:
     * ALSA drop of snd_*_t typedefs for struct snd_* .
     
     Kconfig:
     * Clean useless display of selection.
     
     Signed-off-by: Giorgio Padrin <giorgio@mandarinlogiq.org>
 + I2C cs8427
   - sound/i2c/cs8427.c: don't export a static function
     
     Static functions shouldn't be exported.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - trivial: Code clean up of i2c/cs8427.c
     
     - Fix spaces, wrap lines in 80 columns.
     - Move EXPORT_SYMBOL() adjacent to each function.
 + I2C lib core
   - i2c - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
 + ICE1712 driver
   - ice1712 - Set mpu401 info flags from _card_info
     
     To permit use, in ice1712, of the mpu401 info flags recently added to 
     mpu401_uart, adds info_flags in snd_ice1712_card_info so that additional 
     flags can be set, if desired. Â 'MPU401_INFO_INTEGRATED' is always set with 
     the ice1712. Â The flags are passed on to snd_mpu401_uart_new().
     _INFO_OUTPUT is set for DMX6fire mpu2.
     
     Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
   - Reduce the string length of Terratec Aureon 7.1 Universe
     
     Fix the driver string name for Terratec Aureon 7.1 Universe
     to fit in 15 letters to avoid the overflow.
   - ice1712 - fix 1600->16000Hz value typo
   - ice1712 - Disable AC97 for DMX6fire
     
     Consumer AC97 is not used by the Terratec DMX6fire, but eeprom bit indicates 
     it is; change the stored value to disable failing consumer mode.
     
     Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
   - ice1724 - Add functionality for Audiotrak Prodigy 7.1 LT
     
     This patch adds support for useable front audio channels,
     user controllable headphone channel and optical output.
     
     From: Anho Ki
     Signed-off-by: Matt Taylor <mwtaylor@gmail.com>
   - ice1712 - Provides specified midi port names instead of defaults
     
     Patch provides for the ice1712 card driver to overwrite the midi port name 
     string given by default in mpu401_uart, with one specified in 
     snd_ice1712_card_info.
     
     Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
 + ICE1724 driver
   - Revolution 5.1 - register the AK5365 ADC with ALSA
     
     Enable capture support for the M-Audio Revolution 5.1 card,
     by registering the ADC with ALSA.
     
     Signed-off-by: Jochen Voss <voss@seehuhn.de>
   - Stereo controls for M-Audio Revolution cards
     
     This patch adds stereo controls to revo cards by making the ak4xxx 
     driver mixers configurable from the card driver.
     
     Signed-off-by: Jani Alinikula <janialinikula@gmail.com>
   - Revolution 5.1 - complete the AK5365 support
     
     Complete the AK5365 support.
     
     This adds a boolean control to toggle the soft mute feature of the
     AK5365 chip.
     
     Signed-off-by: Jochen Voss <voss@seehuhn.de>
 + IOCTL32 emulation
   - Another try to fix compile errors with older kernels
     
     Another try to fix compile errors with older kernels.
   - Fix the compilation with old 2.6 kernels
     
     Fix the compilation with old 2.6 kernels
     (changed from no_mmap_ctrl to no_compat_mmap)
   - Fix PCM compat layer for older kernel
     
     Fixed another forgotten no_mmap_ctrl to replace with no_compat_mmap.
 + ISA DMA
   - Clean up EXPORT_SYMBOL()s in snd module
     
     Move EXPORT_SYMBOL()s to places adjacent to functions/variables.
 + Intel8x0 driver
   - sound/pci/: Add hp_only quirk for Dell D800 laptops
     
     http://www.kernel.org/git/?p=linux/kernel/git/bcollins/ubuntu-dapper.git;a=commitdiff;h=9ad787cd9670c3f3b8f3db235e84baf00a2ea526
     
     Anders Ostling comments in Malone #41015 that his Dell D800 laptop's
     volume control works correctly when the hp_only quirk is passed to
     modprobe. This commit adds his hardware's sub{vendor,device} ids to
     the quirk list for the intel8x0 driver.
     
     Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
     Signed-off-by: Ben Collins <bcollins@ubuntu.com>
   - intel8x0 - Add ac97 quirk for Tyan Thunder K8WE board
     
     Added the default ac97 quirk (hp_only) for Tyan Thunder K8WE board.
   - Add experimental support of aggressive AC97 power-saving mode
     
     Added CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support
     of aggressive AC97 power-saving mode.  In this mode, the AC97
     powerdown register bits are dynamically controlled at each open/close
     of PCM streams.
     
     The mode is activated via power_save option for snd-ac97-codec
     driver.  As default it's off.  It can be turned on/off on the fly
     via sysfs, too.
 + MAINTAINERS file
   - 2.6 kernel sync
   - 2.6 kernel sync
   - add MAINTAINERS entry for snd-aoa
     
     This adds me into the MAINTAINERS file for the AOA driver.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - 2.6 kernel sync
 + MPU401 UART
   - sound: fix hang in mpu401_uart.c
     
     This fixes a hang in mpu401_uart.c that can occur when the mpu401 interface
     is non-existent or otherwise doesn't respond to commands but we issue IO
     anyway.  snd_mpu401_uart_cmd now returns an error code that is passed up
     the stack so that an open() will fail immediately in such cases.
     
     Eventually discovered after wine/cxoffice would constantly cause hard
     lockups on my desktop immediately after loading (emulating Windows too
     well).  Turned out that I'd recently moved my sound cards around and using
     /dev/sequencer now talks to a sound card with a broken MPU.
     
     This second version changes -EFAULT to -EIO and frees open resources on
     error too.  Test booted and seems to work ok.
     
     Signed-off-by: Jon Masters <jcm@jonmasters.org>
   - 2.6 kernel sync: Subject: irq-flags: sound: Use the new IRQF_ constants
     From: Thomas Gleixner <tglx@linutronix.de>
     
     Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
     Cc: Ingo Molnar <mingo@elte.hu>
     Cc: "David S. Miller" <davem@davemloft.net>
     Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Cc: Jaroslav Kysela <perex@suse.cz>
     Cc: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - 2.6 kernel sync: [PATCH] 64bit resource: fix up printks for resources in sound drivers
     
     This is needed if we wish to change the size of the resource structures.
     
     Based on an original patch from Vivek Goyal <vgoyal@in.ibm.com>
     
     Cc: Vivek Goyal <vgoyal@in.ibm.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - mpu401 section fix
     
     WARNING: sound/drivers/mpu401/snd-mpu401.o - Section mismatch: reference to .init.text: from .text between 'snd_mpu401_pnp_probe' (at offset 0x1f7) and 'snd_mpu401_pnp_remove'
     
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - mpu401_uart - Fix coding style and code clean up
     
     - fold lines and fix spaces to follow the standard style
     - added some comments
     - moved EXPORT_SYMBOL() near the definition
     - some code clean up
   - Change an arugment of snd_mpu401_uart_new() to bit flags
     
     Change the 5th argument of snd_mpu401_uart_new() to bit flags
     instead of a boolean.  The argument takes bits that consist of
     MPU401_INFO_XXX flags.
     
     The callers that used the value 1 there are replaced with
     MPU401_INFO_INTEGRATED.
 + MSND driver
   - Fix compilation of msnd-pinnacle driver with recent 2.6 kernels
     
     Replaced MODULE_PARM() with module_param*().
     The former is deprecated with the recent 2.6 kernels.
   - Add isa_readx/writex wrappers for 2.6.17 kernel
     
     Add the obsoleted isa_readx/writex wrappers for 2.6.17 kernel.
 + Memalloc module
   - 2.6 kernel sync: misc
   - Conversions from kmalloc+memset to k(z|c)alloc
     
     sound: Conversions from kmalloc+memset to k(c|z)alloc.
     
     Signed-off-by: Panagiotis Issaris <takis@issaris.org>
 + OPL3
   - opl3 - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - Fix export-objs for update of EXPORT_SYMBOL()s
     
     Fix export-objs for update of EXPORT_SYMBOL()s in alsa-kernel tree.
   - fix port type bits
     
     Fix the port information about non-MIDI messages that had wrong values
     for some OPL3 and EmuX ports.
   - add more sequencer port type information bits
     
     Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
     _SYNTHESIZER, _PORT for sequencer ports.  This makes it easier for apps
     like Rosegarden to make policy decisions based on the port type.
 + OPL3SA2 driver
   - Fix invalid __init in ALSA ISA drivers
     
     Replaced invalid __init with __devinit in snd-sbawe and snd-opl3sa2
     drivers.
 + OPL4
   - opl4 - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - add more sequencer port type information bits
     
     Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
     _SYNTHESIZER, _PORT for sequencer ports.  This makes it easier for apps
     like Rosegarden to make policy decisions based on the port type.
 + OSS device core
   - 2.6 kernel sync: [PATCH] devfs: Remove devfs support from the sound subsystem
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 + Opti9xx drivers
   - snd-miro include fix
     
     snd-miro isn't based on opti92x-ad1848.c. This patch fixes it by 
     changing an include line.
     
     Signed-off-by: Martin Langer <martin-langer@gmx.de>
 + PCI drivers
   - PM support for cs5535audio
     
     Appended is my patch adding PM support to the cs5535audio driver.
     I also added the ac97 quirk but it's not yet confirmed which
     boards need to be in the quirk list. The patch also includes some
     Kconfig and misc cleanup.
     
     Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com>
   - fm801: move CONFIG_VIDEO_DEV dependency to CONFIG_SND_FM801_TEA575X_BOOL
     
     Move the CONFIG_VIDEO_DEV dependency from CONFIG_SND_FM801_TEA575X to
     CONFIG_SND_FM801_TEA575X_BOOL so that the two symbol always have
     consistent values even when compiled externally.
   - fm801: revert last Kconfig patch
     
     Revert moving the VIDEO_DEV dependency to SND_FM801_TEA575X_BOOL,
     because this would force the video code to be compiled in even when
     SND_FM801_TEA575X is configured as module.
   - fix the SND_FM801_TEA575X dependencies
     
     CONFIG_SND_FM801=y, CONFIG_SND_FM801_TEA575X=m resulted in the following 
     compile error:
     
     <--  snip  -->
     
     ...
       LD      vmlinux
     sound/built-in.o: In function `snd_fm801_free':
     fm801.c:(.text+0x3c15b): undefined reference to `snd_tea575x_exit'
     sound/built-in.o: In function `snd_card_fm801_probe':
     fm801.c:(.text+0x3cfde): undefined reference to `snd_tea575x_init'
     make: *** [vmlinux] Error 1
     
     <--  snip  -->
     
     This patch fixes kernel Bugzilla #6458.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - sound/pci/Kconfig - fix broken indenting for SND_FM801_TEA575X
   - 2.6 sync: V4L/DVB (4371b): Fix V4L1 dependencies at drivers under sound/oss and sound/
     VMixer and FM801 Tea5757 are still using V4L1 API.
     Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
   - Fix missing selection of CONFIG_VIDEO_DEV from SND_FM801_TEA575X
     
     Fixed the missing selection of CONFIG_VIDEO_DEV from SND_FM801_TEA575X.
   - Remove CONFIG_EXPERIMENTAL from intel8x0m driver
     
     Removed CONFIG_EXPERIMENTAL from intel8x0m driver.
     The driver has been working well without problems.
   - Add echoaudio sound drivers
     
     From: Giuliano Pochini <pochini@shiny.it>
     
     Add echoaudio sound drivers (darla20, darla24, echo3g, gina20, gina24,
     indigo, indigodj, indigoio, layla20, lala24, mia, mona)
   - Move echoaudio drivers to alsa-kernel tree
 + PCMCIA Kconfig
   - PCMCIA sound devices shouldn't depend on ISA
     
     The ALSA drivers for PCMCIA devices depend on ISA, but modern
     laptops can have PCMCIA support without ISA. This patch removes
     the dependency.
     
     Signed-off-by: Erik Mouw <erik@harddisk-recovery.com>
 + PDAudioCF driver
   - Deprecate snd_card_free_in_thread()
     
     Deprecated snd_card_free_in_thread(), replaced with
     snd_card_free_when_closed().
 + PDPlus driver
   - Remove unneeded read/write_size fields in proc text ops
     
     Remove unneeded read/write_size fields in proc text ops.
     Also fixed snd_info_set_text_ops(), too.
   - Remove spinlocks around proc prints
     
     Don't lock during showing proc read.  snd_iprintf() might sleep.
   - Fix compile warnings on 2.6.18 kernel
     
     Fix compile warnings due to the change of 64bit resource in the
     recent kernel.
   - pdplus: fix __init/__exit
     
     Some __init/__exit prefixes were used inappropriately.
   - pdplus - Remove bogus __exit from pdplus_sweep()
     
     Remove bugs __exit from the declaration of pdplus_sweep() (bug#2041)
   - Fix initialization of pdplus driver
     
     Don't include '/' in the name for pci_driver, which is not allowed
     as the sysfs entry.
     pci_register_driver() returns 0 if successful.  Just return as is.
   - pdplus - fix a compile warning
     
     Fixed a remaining compile warning due to 64bit resource.
   - pdplus - Add missing MODULE_DEVICE_TABLE()
     
     Added missing MODULE_DEVICE_TABLE().
     Also a clean up of pci_device_id table.
 + PPC
   - snd-powermac: no longer handle anything with a layout-id property
     
     This patch removes from snd-powermac the code that check for the layout-id
     and instead adds code that makes it refuse loading when a layout-id property
     is present, nothing that snd-aoa should be used.
     It also removes the 'toonie' codec from snd-powermac which was only ever
     used on the mac mini which has a layout-id property.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
 + PPC Beep
   - ppc-beep - handle errors from input_register_device()
     
     ppc-beep: handle errors from input_register_device()
     (Also fixed the wrong memory release in the error path.)
     
     Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
   - Fix ppc/beep.c patch (and misc ppc fix)
     
     - Update beep.patch for the latest version
     - Split old beep functions to beep_old.c
     - Add missing ppc/* files to .hgignore
 + PPC DACA driver
   - 2.6 kernel sync
 + PPC PMAC driver
   - Fix compilation of pmac.c with 2.6.17 kernel
   - Fix compilation of powermac driver with 2.6.16 kernel
   - ppc - Add new interrupt mapping core and change platforms to use it
     
     This adds the new irq remapper core and removes the old one.  Because
     there are some fundamental conflicts with the old code, like the value
     of NO_IRQ which I'm now setting to 0 (as per discussions with Linus),
     etc..., this commit also changes the relevant platform and driver code
     over to use the new remapper (so as not to cause difficulties later
     in bisecting).
     
     This patch removes the old pre-parsing of the open firmware interrupt
     tree along with all the bogus assumptions it made to try to renumber
     interrupts according to the platform. This is all to be handled by the
     new code now.
     
     For the pSeries XICS interrupt controller, a single remapper host is
     created for the whole machine regardless of how many interrupt
     presentation and source controllers are found, and it's set to match
     any device node that isn't a 8259.  That works fine on pSeries and
     avoids having to deal with some of the complexities of split source
     controllers vs. presentation controllers in the pSeries device trees.
     
     The powerpc i8259 PIC driver now always requests the legacy interrupt
     range. It also has the feature of being able to match any device node
     (including NULL) if passed no device node as an input. That will help
     porting over platforms with broken device-trees like Pegasos who don't
     have a proper interrupt tree.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - snd-powermac: no longer handle anything with a layout-id property
     
     This patch removes from snd-powermac the code that check for the layout-id
     and instead adds code that makes it refuse loading when a layout-id property
     is present, nothing that snd-aoa should be used.
     It also removes the 'toonie' codec from snd-powermac which was only ever
     used on the mac mini which has a layout-id property.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
 + PPC PowerMac driver
   - make snd-powermac load even when it can't bind the device
     
     This patch makes snd-powermac load when it can't bind the device right
     away. That's the expected behaviour for hotplugging, but fixes an
     important problem I was seeing with doing a modprobe snd-powermac with
     a version that refuses loading on machines with layout-id: snd-powermac
     would create a bunch of uevents and then refuse to load, the uevents
     causing udev to reload it again, ad eternum.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - snd-powermac: no longer handle anything with a layout-id property
     
     This patch removes from snd-powermac the code that check for the layout-id
     and instead adds code that makes it refuse loading when a layout-id property
     is present, nothing that snd-aoa should be used.
     It also removes the 'toonie' codec from snd-powermac which was only ever
     used on the mac mini which has a layout-id property.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
 + PPC Toonie
   - Remove ppc/toonie.c
     
     Remove obsoleted ppc/toonie.c.
   - Remove ppc/toonie.c
     
     Remove obsoleted ppc/toonie.c.
     The function is replaced with new snd-aoa driver.
   - sound/ppc: snd_pmac_toonie_init should be __init
     
     snd_pmac_toonie_init is only called by __init code and calls __init code
     itself.
         
     Signed-off-by: Andreas Schwab <schwab@suse.de>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
 + PPC Tumbler driver
   - ppc - Add new interrupt mapping core and change platforms to use it
     
     This adds the new irq remapper core and removes the old one.  Because
     there are some fundamental conflicts with the old code, like the value
     of NO_IRQ which I'm now setting to 0 (as per discussions with Linus),
     etc..., this commit also changes the relevant platform and driver code
     over to use the new remapper (so as not to cause difficulties later
     in bisecting).
     
     This patch removes the old pre-parsing of the open firmware interrupt
     tree along with all the bogus assumptions it made to try to renumber
     interrupts according to the platform. This is all to be handled by the
     new code now.
     
     For the pSeries XICS interrupt controller, a single remapper host is
     created for the whole machine regardless of how many interrupt
     presentation and source controllers are found, and it's set to match
     any device node that isn't a 8259.  That works fine on pSeries and
     avoids having to deal with some of the complexities of split source
     controllers vs. presentation controllers in the pSeries device trees.
     
     The powerpc i8259 PIC driver now always requests the legacy interrupt
     range. It also has the feature of being able to match any device node
     (including NULL) if passed no device node as an input. That will help
     porting over platforms with broken device-trees like Pegasos who don't
     have a proper interrupt tree.
     
     Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
 + PXA Mainstone driver
   - 2.6 kernel sync
 + RME HDSP driver
   - RME HDSP - fixed proc interface (missing {})
     
     From: Remy Bruno <remy.bruno@trinnov.com>
   - hdsp - Fix compilation with hdsp driver built in kernel
     
     Fixed the compilation with hdsp driver built in kernel.
     The traditional hwdep loader is used in this case.
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
 + RME32 driver
   - Fix races in irq handler and ioremap
     
     Call ioremap before request_irq for avoiding possible races
     in the irq handler.
     
     Signed-off-by: Takashi Iwai <tiwai@suse.de>
 + RME96 driver
   - Fix races in irq handler and ioremap
     
     Call ioremap before request_irq for avoiding possible races
     in the irq handler.
     
     Signed-off-by: Takashi Iwai <tiwai@suse.de>
   - rme96 - Fix OSS full-duplex
     
     Fixed a bug in rme96 driver that the full-duplex on OSS emulation
     doesn't work due to the invalid period size parameter.
 + SA11xx UDA1341 driver
   - 2.6 kernel sync: misc
   - Remove zero-initialization of static variables
     
     Removed zero-initializations of static variables.
     A tiny optimization.
 + SB8 driver
   - fix potential NULL pointer deref in snd_sb8dsp_midi_interrupt()
     
     First testing if a pointer is NULL and if it is (or might be), proceeding
     with code that dereferences that same pointer is clearly a mistake.
     This happens in sound/isa/sb/sb8_midi.c::snd_sb8dsp_midi_interrupt()
     The patch below reworks the code so this unfortunate case doesn't happen.
     Also remove some blank comments.
     
     Found by the Coverity checker as bug #367
     
     Patch is compile testted only due to lack of hardware.
     
     
     Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
 + SPARC AMD7930 driver
   - sparc: resource warning fix
     
     sound/sparc/amd7930.c: In function 'amd7930_attach_common':
     sound/sparc/amd7930.c:1040: warning: format '%08lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     sound/sparc/cs4231.c:2043: warning: format '%016lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     sound/sparc/dbri.c: In function 'dbri_attach':
     sound/sparc/dbri.c:2650: warning: format '%016lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 kernel sync: [SPARC]: Kill __irq_itoa().
     
     This ugly hack was long overdue to die.
     
     It was a way to print out Sparc interrupts in a more freindly format,
     since IRQ numbers were arbitrary opaque 32-bit integers which vectored
     into PIL levels.  These 32-bit integers were not necessarily in the
     0-->NR_IRQS range, but the PILs they vectored to were.
     
     The idea now is that we will increase NR_IRQS a little bit and use a
     virtual<-->real IRQ number mapping scheme similar to PowerPC.
     
     That makes this IRQ printing hack irrelevant, and furthermore only a
     handful of drivers actually used __irq_itoa() making it even less
     useful.
     
     Signed-off-by: David S. Miller <davem@davemloft.net>
   - 2.6 kernel sync: [SOUND] sparc: Port amd7930 to new SBUS device layer.
     
     Signed-off-by: David S. Miller <davem@davemloft.net>
 + SPARC DBRI driver
   - sparc dbri: removal of unused struct members
     
     It removes unused or rarely used members of defined structures.
     
     Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
   - sparc dbri: removal of redudant volatile keywords
     
     It removes redudant volatile keywords.
     
     Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
   - sparc: resource warning fix
     
     sound/sparc/amd7930.c: In function 'amd7930_attach_common':
     sound/sparc/amd7930.c:1040: warning: format '%08lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     sound/sparc/cs4231.c:2043: warning: format '%016lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     sound/sparc/dbri.c: In function 'dbri_attach':
     sound/sparc/dbri.c:2650: warning: format '%016lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 kernel sync: [SPARC]: Kill __irq_itoa().
     
     This ugly hack was long overdue to die.
     
     It was a way to print out Sparc interrupts in a more freindly format,
     since IRQ numbers were arbitrary opaque 32-bit integers which vectored
     into PIL levels.  These 32-bit integers were not necessarily in the
     0-->NR_IRQS range, but the PILs they vectored to were.
     
     The idea now is that we will increase NR_IRQS a little bit and use a
     virtual<-->real IRQ number mapping scheme similar to PowerPC.
     
     That makes this IRQ printing hack irrelevant, and furthermore only a
     handful of drivers actually used __irq_itoa() making it even less
     useful.
     
     Signed-off-by: David S. Miller <davem@davemloft.net>
   - dbri driver cleanup
     
     This is a small clean up of the dbri driver for sparc machines.
     
     It contains also a fix to DBRI interrupt queue initialization.
     
     Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
   - sparc dbri removal of DBRI_NO_INTS
     
     This patch removes define DBR_NO_INTS and all code related to
     handling more than one dbri irq statuses block.
     
     Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
 + SPARC cs4231 driver
   - sparc: resource warning fix
     
     sound/sparc/amd7930.c: In function 'amd7930_attach_common':
     sound/sparc/amd7930.c:1040: warning: format '%08lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     sound/sparc/cs4231.c:2043: warning: format '%016lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     sound/sparc/dbri.c: In function 'dbri_attach':
     sound/sparc/dbri.c:2650: warning: format '%016lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'
     
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 kernel sync: [SPARC]: Kill __irq_itoa().
     
     This ugly hack was long overdue to die.
     
     It was a way to print out Sparc interrupts in a more freindly format,
     since IRQ numbers were arbitrary opaque 32-bit integers which vectored
     into PIL levels.  These 32-bit integers were not necessarily in the
     0-->NR_IRQS range, but the PILs they vectored to were.
     
     The idea now is that we will increase NR_IRQS a little bit and use a
     virtual<-->real IRQ number mapping scheme similar to PowerPC.
     
     That makes this IRQ printing hack irrelevant, and furthermore only a
     handful of drivers actually used __irq_itoa() making it even less
     useful.
     
     Signed-off-by: David S. Miller <davem@davemloft.net>
   - 2.6 kernel sync: [SPARC64]: Use in-kernel PROM tree for EBUS and ISA.
     Signed-off-by: David S. Miller <davem@davemloft.net>
 + Sound Scape driver
   - Change an arugment of snd_mpu401_uart_new() to bit flags
     
     Change the 5th argument of snd_mpu401_uart_new() to bit flags
     instead of a boolean.  The argument takes bits that consist of
     MPU401_INFO_XXX flags.
     
     The callers that used the value 1 there are replaced with
     MPU401_INFO_INTEGRATED.
 + TEA575x tuner
   - 2.6 kernel sync: small patches + CREDITS + MAINTAINER + pci_ids.h + media/video
 + Trident driver
   - trident - Move EXPORT_SYMBOL() to adjacent to each function
     
     Move EXPORT_SYMBOL() to adjacent to each exported function/variable.
   - Fix export-objs for update of EXPORT_SYMBOL()s
     
     Fix export-objs for update of EXPORT_SYMBOL()s in alsa-kernel tree.
   - add more sequencer port type information bits
     
     Add four new information flags SNDRV_SEQ_PORT_TYPE_HARDWARE, _SOFTWARE,
     _SYNTHESIZER, _PORT for sequencer ports.  This makes it easier for apps
     like Rosegarden to make policy decisions based on the port type.
 + USB USX2Y
   - Add O_APPEND flag support to PCM
     
     Added O_APPEND flag support to PCM to enable shared substreams
     among multiple processes.  This mechanism is used by dmix and
     dsnoop plugins.
   - Deprecate snd_card_free_in_thread()
     
     Deprecated snd_card_free_in_thread(), replaced with
     snd_card_free_when_closed().
 + USB generic driver
   - usb-audio - Fix a typo of CONFIG_PROC_FS
     
     Fixed a typo of CONFIG_PROC_FS in usbaudio.c.
     The stream proc file appears again.
   - Add TLV support to snd-usb-audio driver
     
     Added TLV-read support to snd-usb-audio driver for passing
     the volume dB scale information to user-space.
   - usb-audio: add more Yamaha devices
     
     Add some quirks for some unknown Yamaha USB MIDI devices.
   - Regenerate usbaudio.patch
     
     Regenerated usbaudio.patch for the new snd_card_free_when_closed().
   - usb-audio support for Turtle Beach Roadie
     
     From: Sam Revitch <sam.revitch@gmail.com>
     
     Recently a Turtle Beach Audio Advantage Roadie device ended up in my
     possession.  It seems to work with the snd-usb-audio driver, but only
     using the headphone jack in 2-channel mode.  The device has a DIN
     connector carrying six more channels that are otherwise silent.
     C-Media has freely available documentation for the CM106 chip around
     which this device is based, and enabling 8-channel output, or
     6-channel output with the headphone jack following the front pair is a
     matter of setting one of its registers.
     
     Attached is a patch to try to enable 5.1 output mode at probe time.
     It seems to work correctly with my device.  There is quite list of
     other configurables for this device that might deserve controls.
   - add support for SB Live! 24-Bit External remote control
     
     This patch rewrites the remote control code to use a table for
     the peculiarities of the various SB models, and adds support
     for a third model.
     
     Signed-off-by: Raimonds Cicans <ray@vardes.lv>
   - USB midi: Remove duplicate CS_AUDIO_* #defines
     
     Removed the CS_AUDIO_* #defines, which were duplicates of the
     class-specific USB_DT_CS_* #defines in <linux/usb_ch9.h>.
     
     Signed-off-by: Ben Williamson <ben.williamson@greyinnovation.com>
   - Add definition of USB_DT_CS_XXX for older kernels
     
     Added definition of USB_DT_CS_XXX for older kernels.
   - usb-audio: add workaround for CSR Bluetooth Headphones (Saitek A-250)
     
     Some devices don't have the required class-specific endpoint descriptors.
     Instead of making this case an error, this patch makes the driver guess the
     endpoint attributes.
   - usbaudio - Fix a typo
     
     Fix a typo introduced by the last fix.
   - rawmidi: add get_port_info callback for sequencer information flags
     
     Add a get_port_info callback to the snd_rawmidi_global_ops structure to
     allow the USB MIDI driver to supply information flags for the sequencer
     ports created by seq_midi.
 + Utils
   - Fix mod-deps to accept multipe "depends on" lines
   - Allow Kconfig only existing in alsa-driver tree
     
     mod-deps should process Kconfig files that exist only in
     alsa-driver tree.  This enables users to add a new architecture,
     for example.
   - Don't build 2.6-kernel-specific modules
     
     Check the dependency on 2.6 kernel in acinclude.m4 for 2.6-kernel-only
     drivers.
   - Fix build on older kernels
     
     Fix build of some drivers on old 2.4 kernels (possibly 2.2, too).
   - configure: move AC_DEFINE calls out of ALSA_TOPLEVEL_SELECT
     
     Split the ALSA_TOPLEVEL_SELECT macro into two macros, one for defining
     the various CONFIG_xxx variables, and one for calling AC_DEFINE on them.
     This allows further customization of the variables before using them.
   - Fix check of CONFIG_VIDEO_V4L1 on 2.6.18 kernel
     
     Fix the configure check of CONFIG_VIDEO_V4L1 introduced since 2.6.18 kernel.
   - Fix mod-deps to handle "depends" without "on"
     
     Fix mod-deps to handle "depends" without "on" in Kconfig.
   - utils/insert: print more verbose message
   - Fix mod-deps parse to handle "!=" properly
     
     Fixed mod-deps parse to handle "!=" properly.
   - pc-speaker updates for 2.6.17
     
     - kernel hook no longer touches the input subsystem, as the
     changes were rejected by upstream. Instead I had to
     copy/paste the pcspkr.c into my driver and make the changes
     to it locally. The original pcspkr.c now gets disabled in
     Kconfig.
     - Added a mixer control for the aforementioned pcspkr driver.
     - kernel patch no longer breaks the xtime_lock locking -
     instead the driver now does write_sequnlock(&xtime_lock) before
     calling snd_pcm_period_elapsed() to avoid recursive locking.
     - I renamed pcsp_defs.h to pcsp.h. If this change makes a
     problem for you (I know the CVS people would complain, but
     ALSA no longer uses CVS, so why not?:), let me know and I'll
     undo it.
     
     Signed-off-by: Stas Sergeev <stsp@aknet.ru>
 + VIA82xx driver
   - Add hp_only quirk for pci id [161f:2032] to via82xx
     
     http://www.kernel.org/git/?p=linux/kernel/git/bcollins/ubuntu-dapper.git;a=commitdiff;h=eae2cc78de39502595f67b7fc1f821f5963bb8ae
     
     UpstreamStatus: Not merged
     
     Christian Bjalevik reports in LP#38546 that his sound chipset requires
     the "hp_only" quirk to allow him to control sound volume correctly when
     headphones are inserted. This patch adds the appropriate pci id to the
     via82xx ALSA driver so that the quirk is applied automatically, thereby
     removing the need for users to modify /etc/modprobe.d/alsa-base (or to
     unload and reload snd-via82xx with ac97_quirk=hp_only).
     
     This patch closes LP#38546.
     
     Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
     Signed-off-by: Ben Collins <bcollins@ubuntu.com>
   - via82xx - Default to variable samplerate enabled for MSI K8T Neo2-FI
     
     Default to variable samplerate enabled for MSI K8T Neo2-FI
     No crackles here with 44100.
     
     Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
   - via82xx: tweak VT8251 workaround
     
     Move the workaround for the VT8251 up a bit, and check for STAT_EOL
     rather than STAT_ACTIVE. This resolves issues some people were having
     with certain ALSA clients (and allows the STAT_ACTIVE check to do what
     it was intended to do).
     
     This change was suggested by Andrew Daviel.
     
     Signed-off-by: Bastiaan Jacques 
   - via82xx - Use DXS_SRC as default for VIA8235/8237/8251 chips
     
     Use DXS_SRC as the default value for dxs_support option for
     VIA8235/8237/8251 chips.  These new chips should work well with SRC.
     
     For VIA8233/A/C, the old default DXS_48K is still used to be sure.
   - via82xx - Add dxs_support entry for a FSC machine
     
     Added dxs_support=5 entry for a FSC machine.
   - Add experimental support of aggressive AC97 power-saving mode
     
     Added CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support
     of aggressive AC97 power-saving mode.  In this mode, the AC97
     powerdown register bits are dynamically controlled at each open/close
     of PCM streams.
     
     The mode is activated via power_save option for snd-ac97-codec
     driver.  As default it's off.  It can be turned on/off on the fly
     via sysfs, too.
 + Wavefront drivers
   - wavefront: fix __init/__devinit confusion
     
     The wavefront driver used __init in some places referenced by __devinit
     functions.
 + au88x0 driver
   - Remove ENTER_UART from au88x0 init
     
     Remove an unnecessary ENTER_UART instruction during au88x0 init as it makes 
     the first/subsequent midi open to fail.
     
     Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
   - au88x0 - Fix 64bit address of MPU401 MMIO port
     
     Fix 64bit address of MPU401 MMIO port on au88x0 chip.
   - au88x0 - Init before create components
     
     Change the order in vortex_probe to set the card details before creating the 
     components, meaning for example that card->shortname is available when 
     registering the midi port.
     
     I have also added extra to card->shortname, and a line to overwrite the midi 
     name following snd_mpu401_uart_new.
     
     Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
 + hgcompile script
   - Add hgcompile script and fix INSTALL document for HG
     
     Added hgcompile script (just a copy of cvscompile), and
     fixed INSTALL document for HG.
   - Fix environment variable for hgcompile options
     
     Fix environment variable name for hgcompile script.
 + pci_ids.h update
   - 2.6 kernel sync
   - 2.6 kernel sync
   - 2.6 kernel sync
  • alsa-lib
 + Core
   - Fix default install libpath and datapath.
   - Add hgcompile script and fix INSTALL document
     
     Added hgcompile script (just a copy of cvscompile), and
     fixed INSTALL document about HG.
   - Fix default paths.
   - Control API - add TLV support
     
     snd_ctl_elem_tlv_read
     snd_ctl_elem_tlv_write
     snd_ctl_elem_tlv_command
     snd_ctl_elem_info_is_tlv_readable
     snd_ctl_elem_info_is_tlv_writable
     snd_ctl_elem_info_is_tlv_commandable
     snd_hctl_elem_tlv_read
     snd_hctl_elem_tlv_write
     snd_hctl_elem_tlv_command
 + Control API
   - Move dB parser to mixer abstraction
     
     Moved the parser of dB value to mixer abstraction from hcontrol layer.
     Also, cleaned up codes.
   - Make snd_hctl_wait() respect the API
     
     snd_hctl_wait() currently makes a lot of assumptions that fall outside
     the defined API. snd_pcm_wait(), however, follows the API nicely so the
     new version is based on that.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
   - Implement support for dB gain display in alsamixer.
   - mixer - cleanups for dB scale parsing
   - Fix examples for PCM API. Fix dogygen warnings.
   - Control API - add TLV support
     
     snd_ctl_elem_tlv_read
     snd_ctl_elem_tlv_write
     snd_ctl_elem_tlv_command
     snd_ctl_elem_info_is_tlv_readable
     snd_ctl_elem_info_is_tlv_writable
     snd_ctl_elem_info_is_tlv_commandable
     snd_hctl_elem_tlv_read
     snd_hctl_elem_tlv_write
     snd_hctl_elem_tlv_command
 + HWDEP API
   - Add missing snd_dlclose() in snd_hwdep_close()
     
     Added the missing snd_dlclose() in snd_hwdep_close().
 + Instrument API
   - Remove dependencies with kernel headers from instrument layer codes
     
     Don't include kernel headers from alsa-lib codes.
     Still remained in instrument layer codes, but now all should be gone.
 + Mixer API
   - Move dB parser to mixer abstraction
     
     Moved the parser of dB value to mixer abstraction from hcontrol layer.
     Also, cleaned up codes.
   - Implement support for dB gain display in alsamixer.
   - mixer - cleanups for dB scale parsing
   - Fix dB ops for global volume
     
     Fixed dB ops for global volume.
   - Fix segfault when invalid TLV is passed
     
     Fix segfault when invalid TLV is passed.
     The invalid TLV entries must be ignored as error.
 + PCM API
   - Use O_APPEND mode with dmix & co plugins
     
     Use O_APPEND mode (only if available) with dmix, dsnoop and dshare
     plugins.  Using this mode, the plugin requires no resource server
     any more.
   - Initialize all fields of slave PCM instance of direct plugins
     
     Initialize all fields of slave PCM instance of direct plugins.
     Some fields were not initialized properly.
   - Fix division-by-zero in snd_pcm_dump_hw_setup()
     
     Fixed division-by-zero error in snd_pcm_dump_hw_setup().
   - Fix a typo in pcm_file.c
     
     Fix a typo in snd_pcm_file_readn().
   - Correction for fixing alsa-lib static build
     
     Added the missing _snd_module_pcm_* definitions for static alsa-lib.
     
     From: Hans-Christian Egtvedt <hcegtvedt@atmel.com>
   - Addition of "infile" parameter (virtual mic) to the file plugin
     
     When this new parameter is specified, the behavior of opening a file PCM 
     for input is changed to the following: reads from the device, instead of 
     being passed down to the slave PCM, will read the raw data from the 
     specified file. No file writes will take place in this case. In the 
     absence of this parameter, previous behavior is unchanged.
     
     The input file name and descriptor are kept in the snd_pcm_file_t struct 
     in a manner analogous to the already existing output file parameter.
     
     TODO:
     
     (1) Only interleaved reads (snd_pcm_file_readi) have been implemented 
     for now.
     
     (2) File read()'s that return a number of bytes that's not a multiple of 
     the frame size will result in data loss (choppiness). The rbuf, 
     rbuf_size_bytes, and rbuf_used_bytes members of the snd_pcm_file_t 
     struct will be used to address this problem in the future.
     
     (3) Mind whether the PCM was opened in blocking mode. If so, we'll have 
     to loop until the buffer has been filled with read()'s.
     
     Signed-off-by: Juan Carlos Castro y Castro <jcastro@vialink.com.br>
   - Allow ioplugins to override snd_pcm_delay()
     
     Some io plug-ins might want to adjust the reported delay value and not
     strictly follow the current buffer usage (that's why we have two calls
     after all).
     
     Allow them to specify a delay() callback and use the previous behaviour
     if they don't.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
   - Fix build issue on earler x86_64 based distributions
     
     This patch fixes a build issue on systems with Gnu assembler
     prior to 2.15.92.  Instead of having the inline assembler
     translate the leal function on a 32 bit register, it is byte encoded.
     
     Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
   - Fix delayed start with rate plugin
     
     Add the internal start_pending state in the rate plugin for supporting
     delayed start in the case no data is committed to slave PCM.
     
     This fixes the problem of CPU hog with artsd.
   - Fix the error path of snd_pcm_hook_add_conf()
     
     Fixed the segfault in the error path of snd_pcm_hook_add_conf()
     (calling invalid install_func pointer).
     Also, added the missing snd_dlclose() to release the handle properly.
   - Add missing snd_dlclose() in pcm_meter.c
     
     Added the missing snd_dlclose() in snd_pcm_meter_close().
   - Fix segfault with dshare plugin
     
     Fixed the segfault with dshare plugin at the second open.
   - Fix examples for PCM API. Fix dogygen warnings.
   - Fix bogus pause flag on dmix
     
     Fix bogus PCM pause flag on dmix.  It doesn't support pause properly.
   - Fix segfault with bindings parameters of dmix/dshare
     
     Fix segfault with bindings parameters of dmix/dshare (bug#2235).
   - Add check of binding ranges in direct plugins
     
     Add checks of slave channel numbers in bindings of dmix/dsnoop/dshare
     plugins to avoid segfault.
     Also, fix a possible memory leaks in the error path.
   - Fix hwptr update in rate plugin
     
     Fixed the update of hwptr in rate plugin.
     This caused bad sounds on rate expansion and invalid memory access.
 + Sequencer API
   - Fix missing snd_dlclose() in sequencer
     
     Call snd_dlclose() with the dlopen handle in snd_seq_close().
   - clarify SND_SEQ_PORT_TYPE_xxx documentation
     
     Clarify the documentation for the SND_SEQ_PORT_TYPE_xxx flags, especially
     for _SYNTH and *_SAMPLE where it was rather misleading.
 + Timer API
   - Fix missing snd_dlclose() in timer handlers
     
     Call snd_dlclose() properly for the dlopened handlers in timer
     and timer_query closing functions.
 + /Makefile.am
   - Add hgcompile script and fix INSTALL document
     
     Added hgcompile script (just a copy of cvscompile), and
     fixed INSTALL document about HG.
 + Configuration
   - Add default dmix rate and format definitions in alsa.conf
     
     Added defaults.pcm.dmix_format and dmix_rate definitions to
     alsa.conf.  They are referred as the default values of standard
     dmix/dsnoop PCM.
   - Turn on iec958 capture of iec1724 boards with spdif PCM
     
     Automatically turn on iec958 capture of iec1724 boards
     with spdif PCM via hooks plugin.
   - Add config for new snd-aoa driver
     
     Add a new config for new snd-aoa driver, aliased to PMacToonie.
   - Fixed driver alias of Aureon 7.1 Universe
     
     Fixed driver alias of Aureon 7.1 Universe.  Aureon71Universe was too long
     as the driver name.  The corrected name is Aureon71Univ.
   - Fix surround40 config for ens1370
     
     Fixed surround40 config for ens1370.  Added missing interface for
     the hook control.
   - Fix device number of ICH4 iec958 controls
     
     Fix device number of control emenets in ICH4 iec958 PCM hooks.
   - Fix the description of return value of snd_config_search_definition()
     
     Fixed the description of the return value of snd_config_search_definition().
 + Documentation
   - Add hgcompile script and fix INSTALL document
     
     Added hgcompile script (just a copy of cvscompile), and
     fixed INSTALL document about HG.
   - Fix examples for PCM API. Fix dogygen warnings.
 + External PCM I/O Plugin SDK
   - Allow ioplugins to override snd_pcm_delay()
     
     Some io plug-ins might want to adjust the reported delay value and not
     strictly follow the current buffer usage (that's why we have two calls
     after all).
     
     Allow them to specify a delay() callback and use the previous behaviour
     if they don't.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
 + Kernel Headers
   - Remove dependencies with kernel headers from instrument layer codes
     
     Don't include kernel headers from alsa-lib codes.
     Still remained in instrument layer codes, but now all should be gone.
   - Control API - add TLV support
     
     snd_ctl_elem_tlv_read
     snd_ctl_elem_tlv_write
     snd_ctl_elem_tlv_command
     snd_ctl_elem_info_is_tlv_readable
     snd_ctl_elem_info_is_tlv_writable
     snd_ctl_elem_info_is_tlv_commandable
     snd_hctl_elem_tlv_read
     snd_hctl_elem_tlv_write
     snd_hctl_elem_tlv_command
   - Remove enum from kernel API
     
     Remove enum in structs from kernel API headers.
     The enum is not always equivalent with int on some architectures.
     
     From: Hans-Christian Egtvedt <hcegtvedt@atmel.com>
  • alsa-plugins
 + Core
   - Add hgcompile script
     
     Added hgcompile script.
   - Update Polypaudio plug-in to the 0.9.0 API
     
     The new version of Polypaudio includes a threading abstraction that
     allows application of a more synchronous nature to use the API more
     easily. Using this, the complexity of the Polypaudio plug-in is greatly
     reduced and also removes the risk of stalling the communications layer.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
   - Fix capsed name in configure
     
     The name in configure.in used a different capitalisation than the name
     in the corresponding Makefile.am. Change it so that both use just lowercase.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
   - Follow Polypaudio/PulseAudio name change
     
     Polypaudio recently changed its name to PulseAudio which affects the
     names of libraries of header files. Update the polyp, now pulse, plug-in
     to follow this name change.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
 + /Makefile.am
   - Add hgcompile script
     
     Added hgcompile script.
   - Follow Polypaudio/PulseAudio name change
     
     Polypaudio recently changed its name to PulseAudio which affects the
     names of libraries of header files. Update the polyp, now pulse, plug-in
     to follow this name change.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
 + A52 Output plugin
   - a52 - Add slavepcm option
     
     - Added slavepcm option to specify the slave PCM string explicitly
     - Don't use plug but linear plugin for default slave.
       We need only the linear format conversion, and the channel/rate
       conversion should be avoided.
 + Documentation
   - Follow Polypaudio/PulseAudio name change
     
     Polypaudio recently changed its name to PulseAudio which affects the
     names of libraries of header files. Update the polyp, now pulse, plug-in
     to follow this name change.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
   - Add missing a52.txt
     
     Added missing a52.txt in EXTRA_DIST.
   - a52 - Add slavepcm option
     
     - Added slavepcm option to specify the slave PCM string explicitly
     - Don't use plug but linear plugin for default slave.
       We need only the linear format conversion, and the channel/rate
       conversion should be avoided.
 + Jack PCM plugin
   - Fix port names in jack plugin
     
     There is a flaw in alsa-jack, the channel name (out_001, etc) is
     ended with a newline.
     This causes problems when using jack_connect and jack_disconnect.
     
     From: Maarten Maathuis <madman2003@gmail.com>
 + Polyp -> ALSA plugin
   - Update Polypaudio plug-in to the 0.9.0 API
     
     The new version of Polypaudio includes a threading abstraction that
     allows application of a more synchronous nature to use the API more
     easily. Using this, the complexity of the Polypaudio plug-in is greatly
     reduced and also removes the risk of stalling the communications layer.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
   - Follow Polypaudio/PulseAudio name change
     
     Polypaudio recently changed its name to PulseAudio which affects the
     names of libraries of header files. Update the polyp, now pulse, plug-in
     to follow this name change.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
  • alsa-utils
 + Core
   - amixer - added basic TLV support (read only) for 'amixer controls'
 + ALSA RawMidi Utility (amidi)
   - amidi: Fix device list
     
     From: Matthias Koenig <mk@phasorlab.de>
     
     amidi does not show all devices with the --list-devices option. 
     It assumes that all output ports equals input ports and does not
     show an input only port.
     This patch extends the output of amidi -l by one column which shows
     the input/output direction of each port.
     E.g.
     
     zebra:amidi # ./amidi -l
     Dir Device    Name
     IO  hw:1,0    MPU-401 MIDI 1-0
     IO  hw:2,0,0  Keystation MIDI 1
     IO  hw:3,0,0  Miditerminal 1
     IO  hw:3,0,1  Miditerminal 2
     IO  hw:3,0,2  Miditerminal 3
     IO  hw:3,0,3  Miditerminal 4
     I   hw:3,0,4  Miditerminal SMPTE
   - amidi: fix --list-devices
     
     Fix the formatting of devices with several unnamed subdevices,
     and show input/outputness for these, too.
 + Speaker Test
   - Fix the default buffer size calculation in speaker-test
     
     Fixed the default buffer size calculation in speaker-test.
     The size should be aligned to nperiods.
 + alsamixer
   - amixer - show dB values for simple mixer interface (which is default)
 + amixer
   - Fix print_dB() with a minus value
     
     Fix print_dB() with a minus dB value.
   - amixer - show dB values for simple mixer interface (which is default)
   - amixer - added basic TLV support (read only) for 'amixer controls'
 + aplay/arecord
   - Fix segfault in aplay when snd_pcm_name() == NULL
     
     Fix segfault in aplay when snd_pcm_name() == NULL.
   - Use the right word in message of areacord
     
     Use the word "stdin" instead of "stdout" when arecord is used.
   - Don't call close() for the same fd twice in arecord
     
     Since fmt_rec_table[].end() closes the file descriptor, we should
     reset fd to -1 for avoiding closing the same fd once again.
   - Fix misc bugs in arecord
     
     - remove unused static declaration
     - fix double close in signal handler
     - fix NULL reference
     - fix max file size to stdout with non-raw format
     - code clean up
   - Fix arecord to quit properly at max file size
     
     Fix arecord to quit properly at the max file size of the given format.
   - Allow aplay/arecord to handle up to 2GB for WAV
     
     Change the max_filesize value for WAV format to 2GB.
     (It's still not 100% sure that WAV allows *exactly* 2GB, though.)
   - Fix a compile warning in aplay.c
     
     Fix a compile warning regarding the 2GB constant value.
   - Fix endless loop of recording in arecord
     
     Fix and clean up arecord (capture) code:
     - fix the ending condition check
     - fix invalid file close in raw mode
     - clean up the code
 + aplaymidi/arecordmidi
   - aplaymidi: list only MIDI-capable ports
     
     When listing ports with aplaymidi/arecordmidi, show only
     ports that understand MIDI messages, i.e., that have the
     SND_SEQ_PORT_TYPE_MIDI_GENERIC flag set.
  • alsa-tools
 + Core
   - Add hgcompile scripts
     
     Added hgcompile scripts.
 + ac3dec (Dolby Digital Decoder)
   - Add hgcompile scripts
     
     Added hgcompile scripts.
 + as10k1 (EMU10K1+ DSP Assembler)
   - Add hgcompile scripts
     
     Added hgcompile scripts.
 + hdspmixer
   - hdspmixer - Fix duplicated parameters in function declaration
     
     Fixed duplicated parameters in function declaration.
 + qlo10k1
   - qlo10k1: use stdlib.h for malloc()/free()
     
     Some qlo10k1 files need <stdlib.h> for malloc() and free(); it seems not
     all Qt headers include them by default.
  • alsa-firmware
 + Core
   - Add firmware for the EMU Systems EMU1010 PCI card.
   - Better detection of default firmware installation directory
     
     Check the directories to determine more suitable default firmware
     installation path.  Use /lib/firmware as the fallback since recent
     systems use it as default.
     
     Also fixed Makefile.am for missing asihpi directory.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - release 1.0.12rc2a
   - Add asihpi firmware data
     
     Added the firmware data for ASIHPI drivers.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
 + AudioScience ASIHPI Firmware
   - Add asihpi firmware data
     
     Added the firmware data for ASIHPI drivers.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
 + Digigram Echo Audio Firmware
   - Change fw_writer to read data from disk
     
     Change the fw_writer utility so it does not #include the binary images
     anymore. It loads them from disk instead.
     
     Signed-off-by: Giuliano Pochini <pochini@shiny.it>
 + EMU Firmware
   - Add missing audio_dock_netlist.h
     
     Added the missing audio_dock_netlist.h to emu/Makefile.am.
   - Add firmware for the EMU Systems EMU1010 PCI card.
   - snd-emu10k1: Add firmware for E-MU Audio Dock.
   - Fix typo.
Custom Search
Personal tools
Namespaces

Variants
Actions
Toolbox