Changes v1.0.13 v1.0.14

From AlsaProject
Jump to: navigation, search

Contents

Changelog between 1.0.13 and 1.0.14 releases

alsa-driver

 + Sound Core
   - we support 2.6.19 kernel as well
   - Add mcore2 and geodegx detection to configure
   - Add ALSA support for the SEGA Dreamcast PCM device
   - Add entries for sh/aica driver
   - Fix build with CONFIG_MCORE2
   - Move description of DEVFS to INSTALL file
   - ASoC: Build files
   - Add support of ASoC
   - Update SUPPORTED_KERNELS
   - Avoid double inclusion of linux/autoconf.h
   - Add missing soc directory to Makefile
   - release 1.0.14rc3
   - release 1.0.14rc2
   - disable portman2x4 on pre-2.6 kernels
   - remove log2_compat.h
   - add request_firmware() wrapper for older kernels
   - fix asihpi compilation on 2.2 kernels
   - Fix build with 2.2/2.4 kernels
   - [PATCH] build sound/sound_firmware.c only for OSS
   - 2.4 kernel build fixes
   - release 1.0.14rc1
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
   - 2.6 sync: all remaining one line changes
   - We support 2.6.20 kernel, too.
   - Fix build with 2.6.21-rc1 kernel
   - Add compat linux/log2.h
   - release 1.0.14
   - Add i2c-id.h header mangling (compatibility layer)
   - Fix broken build with ac97_bus module
   - Add isa_driver and isa_device wrappers for older kernels
   - Use external table for kernel-version dependent drivers
   - Fix build with the recent openSUSE 10.3 kernels
   - Fix build with the latest 2.6.19-git
   - Check gfp_t in configure
   - release 1.0.14rc4
   - asihpi: disable on pre-2.6 kernels
   - Add a dummy linux/latency.h for older kernels
 + ALSA Core
   - reflect 'struct device *' changes from 2.6, add SND_AC97_BUS kernel dependancy
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - add compatibility struct device_attribute 
   - add container_of()
   - Add missing exports
   - Fix compilation with older kernels
   - Add PCI quirk list helper function
   - Fix compilation with older kernels
   - Handle file operations during snd_card disconnects using static file->f_op
   - Regenerate init.patch for the fix of disconnect
   - acore/init.patch fix - linux 2.2 does not have owner member
   - Add support of ASoC
   - add min_t wrapper
   - remove log2_compat.h
   - fix wrappers.c compilation with 2.2/2.4 kernels
   - fix isa_compat.h compilation with 2.2 kernels
   - fix wrappers.c compilation with 2.2 kernels
   - add BUILD_BUG_ON wrapper for earlier kernels
   - update list_for_each_entry() macro
   - add schedule_delayed_work() wrapper
   - use the ALIGN macro
   - use the roundup macro
   - add list helpers for older kernels
   - add fastcall macro for older kernels
   - add IORESOURCE_CACHEABLE symbol for older kernels
   - add request_firmware() wrapper for older kernels
   - add __constant_cpu_to_le32() for older kernels
   - add a local_irq_enable() wrapper for older kernels
   - Fix build with 2.2/2.4 kernels
   - fix compilation with gcc 2
   - Replace vsnprintf() wrapper
   - [HEADERS] One line per header in Kbuild files to reduce conflicts
   - Added wrappers of spin_lock*nested() for older kernels
   - Driver core: convert sound core to use struct device
   - 2.6 sync: just correction of wrong merge
   - 2.6 sync: [PATCH] struct path: convert sound
   - Fix sysfs breakage
   - Fix compilation with older kernels (with sysfs changes)
   - Add compat linux/log2.h
   - Fix typos in sound.patch
   - add MODULE_FIRMWARE entries
   - Remove obsolete typedefs.h
   - Add i2c-id.h header mangling (compatibility layer)
   - allow registering an alsa device with struct device pointer
   - Fix sound.patch for snd_register_device_for_dev()
   - alsa core: convert to list_for_each_entry*
   - Improved delayed_work wrapper
   - 2.6 sync - [PATCH] mark struct file_operations const 9
   - Add isa_driver and isa_device wrappers for older kernels
   - cleanup and error reporting for sound/core/init.c
   - log2_compat: define bool type if linux kernel is older
   - Add wrapper for of_get_property()
   - [2.6.19-SYNC] namespaces: utsname: use init_utsname when appropriate
   - [2.6.19-SYNC] Remove all inclusions of <linux/config.h>
   - Fix build with the latest 2.6.19-git
   - Add missing change for config.h.in
   - Fix build with DEVFS
   - Check gfp_t in configure
   - Fix missing inclusion of linux/module.h
   - Add a dummy flush_scheduled_work() for older kernels
   - PCI: Cleanup the includes of <linux/pci.h>
   - Add a dummy wrapper for pci_intx()
   - Force to read linux/autoconf.h for 2.6.18 or later
   - Add kmemdup() wrapper
   - Add a dummy linux/latency.h for older kernels
   - Fix wrong kfree in free_irq wrapper
   - Add a wrapper for pci_choose_state() for older kernels
   - Fix re-use of va_list
 + SoC PXA2xx Core
   - soc - ASoC 0.13 pxa2xx i2s driver
   - soc - ASoC 0.13 pxa2xx AC97 driver
   - soc - ASoC 0.13 pxa2xx DMA
   - Add missing soc/pxa entries
   - Fix AC97_BUS in soc/pxa/Kconfig
   - soc - Fix dependencies in Kconfig files
   - ASoC pxa2xx DMA support
   - ASoC pxa2xx I2S support
   - ASoC pxa2xx AC97 support
   - ASoC pxa2xx build support
   - fix SND_SOC Kconfig
   - [ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX
 + Control Midlevel
   - make sound/core/control.c:snd_ctl_new() static
   - alsa core: convert to list_for_each_entry*
   - Fix addition of user-defined boolean controls
   - 2.6 sync - [PATCH] mark struct file_operations const 9
   - Fix patches for addition of const to f_ops
   - sound/core/control.c: remove dead code
   - header cleaning: don't include smp_lock.h when not used
   - re-include smp_lock.h where needed
 + HWDEP Midlevel
   - Dereference after free in snd_hwdep_release()
   - hwdep_compat missed __user annotations
   - alsa core: convert to list_for_each_entry*
   - 2.6 sync - [PATCH] mark struct file_operations const 9
   - Fix patches for addition of const to f_ops
   - snd_hwdep_release() racefix
   - header cleaning: don't include smp_lock.h when not used
   - re-include smp_lock.h where needed
 + PCM Midlevel
   - reflect 'struct device *' changes from 2.6, add SND_AC97_BUS kernel dependancy
   - pcm core: add prealloc_max file to substream directory to show maximum DMA size
   - pcm core: fix silence_start calculations
   - [PATCH] maximum latency tracking: ALSA support
   - [PATCH] Remove readv/writev methods and use aio_read/aio_write instead
   - pcm_native: lockdep warning when launching jack
   - add struct snd_pcm_substream forward declaration
   - [PATCH] mm: incorrect VM_FAULT_OOM returns from drivers
   - Driver core: convert sound core to use struct device
   - 2.6 sync: [PATCH] struct path: convert sound
   - 2.6 sync: all remaining one line changes
   - Fix possible invalid memory access in PCM core
   - Fix sysfs breakage
   - Add snd_pcm_group_for_each_entry() for code cleanup
   - sound: fix PCM substream list
   - alsa core: add struct device pointer to struct snd_pcm
   - alsa core: convert to list_for_each_entry*
   - 2.6 sync - missing updates from previous patch and more
   - Fixed patch for recent const f_ops fixes
   - header cleaning: don't include smp_lock.h when not used
   - re-include smp_lock.h where needed
   - Fix hang-up at disconnection of usb-audio
   - Fix compilation of pcm_native.c
 + RawMidi Midlevel
   - sound: initialize rawmidi substream list
 + Timer Midlevel
   - Remove useless reference to obsolete KERNELD
   - Fix patches for addition of const to f_ops
 + /misc/Makefile
   - Fix broken build with ac97_bus module
 + /oss/Makefile
   - 2.6 sync: [PATCH] The scheduled removal of some OSS drivers
 + /soc/Makefile
   - ASoC: Build files
   - ASoC codecs: build files
   - ASoC AT91RM92000 build
   - Add support of ASoC
   - SH7760 ASoC support
   - ASoC pxa2xx build support
   - ASoC Samsung S3C24xx build
 + /soc/codecs/Makefile
   - ASoC codecs: build files
   - ASoC WM8753 codec - build changes
 + /soc/pxa/Makefile
   - Add missing soc/pxa entries
   - ASoC pxa2xx build support
 + AC97 Codec
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - ac97 - fix various issues with AD1986/AD1986A support
   - ac97 - Fix silent output problem with Cx20551 codec
   - ac97 - Fix vt1617a build ops
   - ac97 - fix AD shared shared jack control logic
   - ASoC: core and dapm headers
   - Remove obsolete snd_ac97_bus stuff from pci/ac97/Makefile
   - ac97 - Fix MSI L720 laptop
   - ac97 - Smart 5.1 for VIA 1617a codec
   - ac97 - enables sound output through speakers on MSI S250 laptop
   - ac97_codec - trivial fix for bit update functions
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
   - 2.6 sync: WorkStruct: make allyesconfig
   - 2.6 sync: fix broken merge
   - ac97 - fix malfunctioning mixer controls for AD1985
   - ac97 - Add Thinkpad X31 and R40 to AD1981x blacklist
   - ac97 - Make patch functions static
   - Fix ac97_codec.c patch for inclusion of ac97_patch.c
   - ac97_codec (ALC655): add EAPD hack for MSI L725 laptop
   - Fix AC97 power-saving mode
   - ac97: Identify CMI9761 chips.
   - Remove AC97 POP control for STAC9708/11
   - Improved delayed_work wrapper
   - ac97 - fix microphone and line_in selection logic
   - Include quirks from Ubuntu Dapper/Edgy/Feisty
   - ac97 - Suppress power-saving mode on non-supporting drivers
   - Remove delayed work properly at free and suspend
   - ac97 - Fix potential negative array index
 + AC97 bus driver
   - ac97_bus power management
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
   - Fix broken build with ac97_bus module
 + AD1816A driver
   - ad1816a: Fix modprobe snd_mpu401 && modprobe snd_ad1816a
   - sound/isa/ad1816a/ad1816a.c: check kmalloc() return value
 + AD1848 driver
   - Fix __devinit and __devexit issues with sound drivers
   - isa_bus: ad1848
 + AD1889 driver
   - Remove IRQF_DISABLED for shared PCI irqs
 + AK4114 receiver
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - ak4114 - Fix possible Oops with callbacks
   - snd-ak4114: Fix two array overflows
   - Add some more "const", but needs changes in i2c/other/ak4*
   - Fix misc bugs in i2c/others/ak4114.c
   - 2.6 sync: WorkStruct: make allyesconfig
   - Improved delayed_work wrapper
   - ak4114 - Use global workqueue
   - ak4114 - Fix a typo in DIF2 bit definition
   - Remove delayed work properly at free and suspend
 + AK4117 receiver
   - Add some more "const", but needs changes in i2c/other/ak4*
 + AK4XXX AD/DA converters
   - Add some more "const", but needs changes in i2c/other/ak4*
   - Add even more "const" to everything related to TLV
   - ice1724 - Add PCM Playback Switch to Revo 7.1
   - Enable capture from line-in and CD on Revolution 5.1
 + ALI5451 driver
   - Add missing sysfs device assignment for ALSA PCI drivers
   - ali5451 - Fix possible NULL dereference
   - Add snd_pcm_group_for_each_entry() for code cleanup
   - ali5451 - Code clean up, irq handler fix
   - Remove IRQF_DISABLED for shared PCI irqs
   - ali5451 - Fix invalid type of codec->irq field
   - Various fixes for suspend/resume of ALSA PCI drivers
 + ALS4000 driver
   - Various fixes for suspend/resume of ALSA PCI drivers
 + ALSA sequencer
   - Fix possible deadlocks in sequencer at removal of ports
 + ALSA<-OSS emulation
   - 2.6 sync - [PATCH] mark struct file_operations const 9
   - Fix patches for addition of const to f_ops
   - Fix races in PCM OSS emulation
   - getting rid of all casts of k[cmz]alloc() calls
   - header cleaning: don't include smp_lock.h when not used
   - re-include smp_lock.h where needed
   - Fix hang-up at disconnection of usb-audio
 + AMD InterWave driver
   - sound/isa/gus/interwave.c: check kmalloc() return value
   - Fix probe of non-PnP ISA devices
   - [2.6.19-SYNC] Various drivers' irq handlers: kill dead code, needless casts
 + ARM AACI PL041 driver
   - arm header fix
   - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
 + ARM PXA2XX driver
   - Fix __devinit and __devexit issues with sound drivers
   - Fix irq handlers for recent kernels
   - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
   - [ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX
 + ATIIXP driver
   - atiixp - Use quirk list helper function
   - atiixp - Add a parameter ac97_quirk
   - ac97 - Suppress power-saving mode on non-supporting drivers
 + ATIIXP-modem driver
   - ac97 - Suppress power-saving mode on non-supporting drivers
 + AZT3328 driver
   - azt3328.c: small cleanup patch
   - Fix conflicts between const and __devinitdata
 + Adlib FM driver
   - isa_bus: adlib
 + Apple Onboard Audio driver
   - snd-aoa: fix onyx resume
   - sound: aoa of_node_put and kfree cleanup
   - 2.6 kernel sync
   - [POWERPC] sound: Constify & voidify get_property()
   - [PATCH] aoa is pmac-only
   - create device symlink in snd-aoa
   - create driver symlink in snd-aoa /sys/bus/aoa-soundbus/devices/*/
   - 2.6 sync: WorkStruct: make allyesconfig
   - aoa i2sbus: Stop Apple i2s DMA gracefully
   - aoa: set device pointer in pcms
   - aoa: fix up i2sbus_attach_codec
   - sound: strlcpy is smart enough
   - [POWERPC] get_property returns const
   - [POWERPC] Rename get_property to of_get_property: sound
   - aoa: uevent: use add_uevent_var() instead of open coding it
   - Add wrapper for of_get_property()
   - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
   - [2.6.19-SYNC] Remove all inclusions of <linux/config.h>
   - Enable stereo line input for TAS codec
   - aoa: remove suspend/resume printks
   - aoa: fix a sparse warning
   - snd-aoa-i2sbus: use MODULE_DEVICE_TABLE instead of plain MODULE_ALIAS
   - [POWERPC] Rename device_is_compatible to of_device_is_compatible
   - sound: Don't include i2c-dev.h
 + Asihpi driver
   - Update to Audioscience asihpi driver
   - asihpi 3.07.04
   - asihpi: remove deprecated kmem_cache_t
   - ALSA sanitization for ASIHPI driver
   - add MODULE_FIRMWARE entries
   - bugfix and clean driver/pci/asihpi/hpi6205.[ch]
   - asihpi fix 64 bit compile error
   - Fix build with the latest 2.6.19-git
   - asihpi driver 3.05.07
 + Avance Logic ALS300/300+ driver
   - Fix obsolete *_t typedefs
   - Disable debugging output for the ALS300 driver
   - Various fixes for suspend/resume of ALSA PCI drivers
 + BT87x driver
   - bt87x - Add ATI TV-Wonder to the supported list
   - Fix alsa-devel ML address
 + CA0106 driver
   - snd-ca0106: Add support for X-Fi Extreme Audio.
   - snd-ca0106: Updated Enum control names.
   - snd-ca0106: Add new card variant.
   - snd-ca0106: Fix typos.
   - ca0106: Fix sound capture on Audigy LS via AC97.
   - ca0106 - Add missing sysfs device assignment
   - Add snd_pcm_group_for_each_entry() for code cleanup
   - Fix invalid assignment of PCI revision
   - PCI: Cleanup the includes of <linux/pci.h>
 + CMI8330 driver
   - sound/isa/cmi8330.c: check kmalloc() return value
   - Port the rest of ALSA ISA drivers to isa_driver
   - Fix __devinit and __devexit issues with sound drivers
   - isa_bus device/driver naming
   - Fix probe of non-PnP ISA devices
 + CMIPCI driver
   - cmipci - Allow to disable integrated FM port
   - _snd_cmipci_uswitch_put doesn't set zero flags
 + CREDITS file
   - 2.6 kernel sync
   - sync kernel subdirectory with 2.6 GIT tree
   - 2.6 kernel sync - kernel subdirectory
   - 2.6 GIT kernel sync
   - linux 2.6 code sync
 + CS4231 driver
   - Add snd_pcm_group_for_each_entry() for code cleanup
   - isa_bus: cs4231
 + CS4236+ driver
   - Port the rest of ALSA ISA drivers to isa_driver
   - isa_bus device/driver naming
   - Fix probe of non-PnP ISA devices
 + CS46xx driver
   - remove unused header file: sound/pci/cs46xx/imgs/cwcemb80.h
   - PCI: Cleanup the includes of <linux/pci.h>
 + CS5530 Cyrix/NatSemi VSA1 softaudio init
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
 + CX88 driver
   - 2.6 GIT kernel sync
 + Conexant Riptide driver
   - Add missing sysfs device assignment for ALSA PCI drivers
 + Digigram PCXHR driver
   - pcxhr - Minor optimization in trigger callback
 + Digigram VX Pocket driver
   - vxpocket: fix an if() condition
   - 2.6 sync: [PATCH] pcmcia: conf.ConfigBase and conf.Present consolidation
   - sound/pcmcia/vx/vxpocket.c: fix an if() condition
 + Digigram VX core
   - Add even more "const" to everything related to TLV
 + Documentation
   - Add description of imac-intel model
   - hda-codec - Add ALC861VD/ALC660VD support
   - hda-codec - Define pin configs for MacBooks
   - hda-codec - Add HP BPC-D7000 support
   - hda-codec - Add AD1884 / AD1984 codec support
   - Fix documentation of ASoC
   - hda-codec - Use snd_pci_quirk_lookup() for board config lookup
   - ASoC: documentation & maintainer
   - hda-codec - Add support for Medion laptops
   - hda-codec - Allow model=generic always for generic parser
   - hda-codec - Add support for Sigmatel STAC9202/9250/9251 codecs
   - hda-codec - Add support for Samsung Q1 Ultra
   - Documentation/sound/alsa/DocBook: typos
   - hda-codec - more systems for Analog Devices
   - Add Native Instrument usb audio device support
   - hda-codec - Add support of newer version of Intel iMac
   - atiixp - Add a parameter ac97_quirk
   - make sound/core/control.c:snd_ctl_new() static
   - hda-codec - Add asus model to ALC861 codec
   - Add description about probe_mask option for snd-hda-intel
   - 2.6 sync: Fix typos in /Documentation : 'U-Z'
   - 2.6 sync: all remaining one line changes
   - Fix typo and add entry to documentation
   - ASoC documentation updates
   - cmipci - Allow to disable integrated FM port
   - mpu401 - Add MPU401_INFO_UART_ONLY bitflag
   - Add snd-portman2x4 driver for Midiman Portman 2x4 MIDI device
   - hda-codec - Add support for MacBook Pro 1st generation
   - HDA: Add support for Gateway NX860
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
   - ice1724 - Add support of M-Audio Audiophile 192
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
   - Fix irq handler arguments in documents
   - hda-codec - Add ALC861VD Lenovo support
   - hda-codec - Fix pin configs for Intel Macs
   - hda-codec - Clevo M540JE, M550JE laptops (Nvidia MCP51 chipset, ALC883 codec)
   - hda-codec - Add support for Sony UX-90s
   - hda-intel - Disable MSI support as default
   - Remove IRQF_DISABLED for shared PCI irqs
   - Fix typos in documents
   - Add description about spdif_aclink option for snd-intel8x0
   - hda-codec - Add toshiba model to ALC861 codec
   - hda-codec - Add new modesl for Realtek codecs
   - hda-codec - Add support for Fujitsu PI1556 Realtek ALC880
   - hda-codec - Add asus-laptop model for ALC861 (ALC660)
 + Dreamcast AICA sound (pcm) driver
   - Add ALSA support for the SEGA Dreamcast PCM device
   - Add entries for sh/aica driver
 + EMU10K1/EMU10K2 driver
   - emu10k1: fix typo
   - emu10k1 - Fix ABI for older ld10k1
   - Fix a typo in Makefile
   - emu10k1: fix request_firmware() parameters on older kernels
   - snd_emu10k1: Added support for 14dB Attenuation PADS on DACs and ADCs.
   - snd-emu10k1: Update Enum naming.
   - snd-emu10k1: Fix capture for one variant.
   - snd-emu10k1: Added support for emu1010, including E-Mu 1212m and E-Mu 1820m
   - snd-emu10k1: Prevent E-Mu 1010 Notebook card from hanging PC.
   - Fix invalid assignment of PCI revision
   - emu10k1 - Fix compile warning
   - emu10k1 - Fix STAC9758 front channel
   - snd-emu10k1: Add emu1010 internal clock rate control for 44100 or 48000.
   - snd-emu10k1: emu1010: replace long udelay with msleep.
   - emu10k1: Introduce header file for p17v chip.
   - emu10k1: Add Audio capture support for Audigy 2 ZS Notebook.
   - emu10k1: Rename the digital optical capture control for the Audigy 2 ZS
   - emu10k1: Update registers defines for the Audigy 2/emu10k2.5
   - emu10k1: Fix outl() in snd_emu10k1_resume_regs()
 + ENS1370/1+ driver
   - ens1371 - Clean up quirks
 + ES1688 driver
   - es1688 - code clean-up
   - isa_bus: es1688
 + ES18xx driver
   - Port the rest of ALSA ISA drivers to isa_driver
   - isa_bus device/driver naming
   - Fix probe of non-PnP ISA devices
 + ES1968 driver
   - es1968 - Fix stuttering capture
 + Echoaudio driver
   - echoaudio, add TLV support
   - Update echoaudio patches
   - Add missing sysfs device assignment for ALSA PCI drivers
   - Fix potential NULL pointer dereference in echoaudio midi
   - echoaudio: fix compilation on older kernels
   - [PATCH] kmemdup: some users
   - echo3g_dsp.c shouldn't include #include <linux/irq.h>
   - echoaudio - increase sleep time at loading firmware
 + GUS Classic driver
   - isa_bus: gusclassic
 + GUS Extreme driver
   - isa_bus: gusextreeme
   - gusextreme: set codec_flag
 + GUS Library
   - sound/isa/gus/gus_main.c: Use abs() instead of x < 0 ? -x : x.
 + GUS MAX driver
   - Port the rest of ALSA ISA drivers to isa_driver
   - isa_bus device/driver naming
   - [2.6.19-SYNC] Various drivers' irq handlers: kill dead code, needless casts
 + Generic drivers
   - Clean up serial-u16500.c
   - sound: fix incorrect use of platform_device_register()
   - pc-speaker driver for 2.6.19
   - Add even more "const" to everything related to TLV
   - [PATCH] NULL noise removal
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
   - make snd-aloop loopback device work
   - portman2x4 - do not use irqsave/irqrestore in IRQ handler
   - Add snd-portman2x4 driver for Midiman Portman 2x4 MIDI device
   - Move portman2x4 driver to alsa-kernel tree.
   - Fix __devinit and __devexit issues with sound drivers
   - Fix a typo in __dev* changes in portman2x4.c
   - Fix irq handlers for recent kernels
   - Fix build with the latest 2.6.19-git
   - portman2x4 code cleanup
   - portman2x4 - Fix callbacks
   - Fix trailing spaces in pcsp driver
 + HDA Codec driver
   - hda-codec - Fix 8-channel auto-configuration
   - hda-intel - Add ATI RS780,R600 HDMI audio support
   - snd_hda_intel: fix for intel imac
   - hda-codec (realtek): add support for MacPro series workstations
   - hda-codec - Add ALC861VD/ALC660VD support
   - hda-codec - Define pin configs for MacBooks
   - hda-codec - Add HP BPC-D7000 support
   - hda-codec - Add support for ASUS A8J modem
   - hda-codec - Add AD1884 / AD1984 codec support
   - hda-codec - Add quirk for MSI S420
   - hda-codec - Use snd_pci_quirk_lookup() for board config lookup
   - hda-codec - Add support for Medion laptops
   - hda-codec - Add model entry for ASUS U5F laptop
   - hda-codec - Add missing comma
   - hda-codec - Allow opening SPDIF while analog dup mode
   - hda-intel - Merge hda-codec module to a single module
   - hda-codec - Code clean up
   - hda-codec - Add support for Asus A8JN Laptop
   - hda-codec - Add line_out_type to auto_pin_cfg struct
   - hda-codec - Fix output pin types in auto configuration
   - hda: add sigmatel 9205 eapd support
   - hda-codec - Add quirk for Turbo-X Coeus G610P
   - hda-codec - Allow model=generic always for generic parser
   - hda-codec - Add missing Mic Boost for AD1986A codec
   - hda-codec - Fix logic error in headphone mute for Conexant codecs
   - hda-codec - Change default config for Asus P5GD1
   - hda-codec - Add support for Toshiba M105 to Realtek patch
   - hda-codec - Add support for Sigmatel STAC9202/9250/9251 codecs
   - hda-codec - Add support for Samsung Q1 Ultra
   - sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)
   - hda-codec - Add suppoprt for Asus M2N-SLI motherboard
   - hda-codec - Add Sony VGC-LA1 to patch_sigmatel.c
   - hda-codec - Conexant improvements
   - hda-codec - Code clean up of patch_sigmatel.c
   - hda-codec - more systems for Analog Devices
   - hda-codec - Fix Macmini and Macbook pin configs
   - hda-codec - Fix ALC882/861VD codec support on some laptops
   - hda-intel: fix ASUS M2V detection
   - hda-codec - Add support of newer version of Intel iMac
   - hda: fix sigmatel dell system detection
   - hda: fix typo for xw4400 PCI sub-ID
   - hda-codec - Fix model for ASUS M2N-MX
   - hda-codec - Add support for Evesham Voyager C530RD laptops
   - make sound/pci/hda/patch_sigmatel.c:stac92xx_dmic_labels[] static
   - hda-codec - Add missing array to conexant driver
   - hda_intel: add ATI RS690 HDMI audio support
   - hda-codec - Add asus model to ALC861 codec
   - hda-codec - Fix AD1988 SPDIF playback route control
   - hda-codec - Fix ALC880 uniwill auto-mutes
   - hda-codec - Fix a typo
   - hda-codec - Fix SPDIF output
   - hda-codec - Add ALC662 support
   - hda-codec - Add support of 96kHz back
   - hda-codec - clean up patch_realtek.c
   - hda-codec - Prefer audio codec name as the mixer name
   - 2.6 sync: WorkStruct: make allyesconfig
   - hda-codec - Add Asus P5W DH to alc882_cfg_tbl
   - hda-codec - Fix Oops with probing sigmatel codec chips
   - hda-codec - Add method for configuring Mac Pro without PCI SSID
   - hda-codec - Fix models for some lpatops/mobos
   - hda-codec - Add missing Mic Boost controls for ALC262
   - hda-codec - Add support for MacBook Pro 1st generation
   - hda-codec - Add model for HP Compaq d5750
   - hda-codec - Fix front/rear mic inputs on AD1986A codec
   - hda-codec - Add support for new HP DV series laptops
   - hda-codec - Fix resume of STAC92xx codecs
   - hda-codec - bug fixes for stac92xx HDA codecs.
   - hda-codec - Make the mixer capability check more robust
   - HDA: Add support for Gateway NX860
   - HDA: Add more systems to Sigmatel codec
   - HDA: Fix headphone mute issue on non-eapd Conexant systems
   - hda-codec - Change Gigabyte K8N51 from 6stack to 6stack-digout
   - hda-codec - Fix ALC861 connection of front-output
   - hda-codec - Add model for ASUS W3j laptop
   - Fix obsolete *_t typedefs
   - hda: add dig mic support for sigmatel codecs
   - hda-codec - Add first generation macbook subsystem ID
   - HDA-Intel: Fix headphone squeal on Conexant audio
   - sound: Change final two instances of kcalloc(1,...) to kzalloc()
   - hda-codec - Use global workqueue
   - hda-codec - More fixes for Conexant HD Audio support
   - hda-codec - Patch for enabling LFE on more Dell laptops
   - hda-codec - add ASUS W7J (0x1043, 0x1205) to quirk list - 3stack
   - hda-codec - Dell Latitude D820 + D/Port
   - hda-codec - Fix speaker output on MacPro
   - hda-codec - Add model for HP Compaq d5700
   - hda-codec - Add ALC861VD Lenovo support
   - Add speaker pin sequencing to hda_codec.c:snd_hda_parse_pin_def_config()
   - Include quirks from Ubuntu Dapper/Edgy/Feisty
   - hda-codec - Add quirk for Supermicro PDSBA to alc883_cfg_tbl[]
   - hda-codec - Add support for MSI K9N Ultra
   - hda-codec - Fix pin configs for Gateway MX6453
   - hda-codec - Fix pin configs for Intel Macs
   - hda-codec - Fix input with STAC92xx
   - hda-codec - Fix STAC922x capture boost level
   - hda-codec - Clevo M540JE, M550JE laptops (Nvidia MCP51 chipset, ALC883 codec)
   - hda-codec - Fix model for ASUS V1j laptop
   - hda-codec - Fix detection of supported sample rates
   - Add Conexant audio support to the HD Audio driver
   - hda-codec - Add support for Sony UX-90s
   - snd_hda_intel 3stack mode for ASUS P5P-L2
   - hda-codec - Fix compile warnings without CONFIG_SND_DEBUG
   - hda-codec - Make internal speaker work on Acer C20x tablets
   - hda-codec - Fix wrong error checks in patch_{realtek,analog}.c
   - hda-codec - Don't return error at initialization of modem codec
   - hda-codec - Add toshiba model to ALC861 codec
   - hda-codec - Add new modesl for Realtek codecs
   - hda-codec - Add model for HP q965
   - hda-codec - Fix model for Lenovo A60 desktop
   - hda-codec - Fix surround output on AD1986A
   - hda-codec - Add support for Gigabyte S-Series GA-M57SLI-S4 motherboard
   - hda-codec - Fix model for ASUS A9rp
   - hda-codec - Add support for Fujitsu PI1556 Realtek ALC880
   - hda-codec - Add LFE support on Dell M90
   - Fix a typo in the last patch_realtek.c change
   - hda-codec - Missing Mic Boost on Realtek ALC882/883
   - hda-codec - Add model for Uniwill X40AIx
   - Fix NULL dereference with null modelname
   - hda-codec - Fix missing array terminators
   - hda-codec - Fix wrong mixer controls for AD1984 thinkpad model
   - hda-codec - fix typo in PCI IDs
   - hda-codec - Add asus-laptop model for ALC861 (ALC660)
   - hda-codec - Add support for VIA VT1708(A) HD audio codec
   - hda-codec - Add support for VIA VT1708(A) HD audio codec
   - hda-codec - Fix assignment of PCM devices for Realtek codecs
 + HDA Intel driver
   - hda-intel - Add ATI RS780,R600 HDMI audio support
   - hda-intel - Don't try to probe invalid codecs
   - hda-intel - Fix HDA buffer alignment
   - hda_intel: increase maximum DMA buffer size to 1024MB
   - hda-intel - Fix codec probe with ATI contorllers
   - hda_intel: add ATI RS690 HDMI audio support
   - hda-intel - Add check of MSI availabity
   - hda-intel - Add black/whitelist for position_fix option
   - hda-intel - Fix detection of audio codec on Toshiba A100
   - hda_intel: build fix
   - hda-intel - Disable MSI support as default
   - hda-intel - Disable INTX when MSI is used
   - Audio: Add nvidia HD Audio controllers of MCP67 support to hda_intel.c
   - hda-intel - Probe additional slots only if necessary
   - hda_intel: ALSA HD Audio patch for Intel ICH9
 + HDA generic driver
   - hda-codec - Use snd_pci_quirk_lookup() for board config lookup
   - hda-intel - Merge hda-codec module to a single module
   - hda-codec - Add line_out_type to auto_pin_cfg struct
   - hda-codec - Fix NULL dereference in generic hda code
   - hda-codec - Fix SPDIF output
   - hda_codec.c: add __NO_VERSION__
   - hda-codec - Use global workqueue
   - Fix hda_codec.patch for workqueue changes
   - hda-codec - Fix connection list in generic parser
   - hda-codec - Fix STAC922x capture boost level
   - hda-codec - Verbose proc output for PCM parameters
   - hda-codec - Fix a typo
   - PCI: Cleanup the includes of <linux/pci.h>
   - hda-codec - Add support for VIA VT1708(A) HD audio codec
 + ICE1712 driver
   - ak4114 - Fix possible Oops with callbacks
   - ice1724 - Add support for Prodigy 7.1 XT
   - Add support of the ESI Waveterminal 192M to the ice1724 ALSA driver
   - ice1712 - Reorganize existing eeprom data
   - Add "const" to files in pci/ice1712/
   - Add some more "const", but needs changes in i2c/other/ak4*
   - ice1724 - call snd_ak4114_build() in juli
   - ice1724 - Functioning support for Prodigy 192
   - ice1724 - Misc fixes for Prodigy192
   - ice1712: build fixes
   - Fix conflicts between const and __devinitdata
 + ICE1724 driver
   - Add "const" to files in pci/ice1712/
   - ice1724 - Add PCM Playback Switch to Revo 7.1
   - ice1724 - Fix AP192 4wire mode access
   - ice1724 - Add support of M-Audio Audiophile 192
   - ice1724 - Add comments for naming of PCM streams
   - ice1724 - Misc fixes for Prodigy192
   - Fix conflicts between const and __devinitdata
   - Enable capture from line-in and CD on Revolution 5.1
 + ISA
   - Fix SB-module dependency with PCI drivers
   - msnd-pinnacle: replace mod_firmware_load() with request_firmware()
   - Enable Kconfig options for external firmwares
   - Kconfig: fix FW_LOADER dependencies
   - Kconfig: clarify help text for external firmware entries
   - do not depend on FW_LOADER when internal firmware images are used
   - Fix dependency of snd-adlib driver in Kconfig
 + Intel8x0 driver
   - intel8x0 - Fix Oops in crash kernel
   - intel8x0 - Fix speaker output after S2RAM
   - intel8x0 - Add spdif_aclink option
   - intel8x0 - Use pci_iomap
   - Add pci_iomap compat layer for intel8x0[m] drivers
   - 2.6 sync: [PATCH] Merge headphone and speaker volume controls for Panasonic R4 laptop
   - intel8x0 - Fix Oops at kdump crash kernel
   - Include quirks from Ubuntu Dapper/Edgy/Feisty
   - ac97 - Suppress power-saving mode on non-supporting drivers
 + Intel8x0-modem driver
   - intel8x0 - Use pci_iomap
   - Add pci_iomap compat layer for intel8x0[m] drivers
 + KORG1212 driver
   - Enable Kconfig options for external firmwares
   - korg1212: add request_firmware()
   - Don't use request_firmware if internal firmwares are defined
   - Fix patch files for request_firmware()
   - korg1212: fix printk format warning
   - [2.6.19-SYNC] Various drivers' irq handlers: kill dead code, needless casts
 + MAINTAINERS file
   - ASoC: documentation & maintainer
   - Fix alsa-devel ML address
   - 2.6 kernel sync
   - sync kernel subdirectory with 2.6 GIT tree
   - 2.6 kernel sync - kernel subdirectory
   - 2.6 GIT kernel sync
   - 2.6 sync - missing updates from previous patch and more
   - linux 2.6 code sync
 + MIPS AU1x00 driver
   - [PATCH] sound/mips/au1x00: Use ARRAY_SIZE macro
 + MPU401 UART
   - mpu401 - Add MPU401_INFO_UART_ONLY bitflag
   - Fix mpu401.patch for uart_enter option
 + MSND driver
   - msnd-pinnacle: replace mod_firmware_load() with request_firmware()
   - add MODULE_FIRMWARE entries
   - Fix build with the latest 2.6.19-git
 + Maestro3 driver
   - maestro3 - Use quirk list helper function
   - Update maestro3.patch
   - maestro3: add request_firmware()
   - Don't use request_firmware if internal firmwares are defined
   - Fix patch files for request_firmware()
 + Memalloc module
   - alsa core: convert to list_for_each_entry*
 + NM256 driver
   - nm256 - Use quirk list helper function
 + OSS device core
   - [PATCH] build sound/sound_firmware.c only for OSS
   - Driver core: convert sound core to use struct device
   - 2.6 sync: [PATCH] The scheduled removal of some OSS drivers
   - 2.6 sync - missing updates from previous patch and more
 + OSS firmware core
   - [PATCH] build sound/sound_firmware.c only for OSS
   - 2.6 sync: [PATCH] struct path: convert sound
 + Opti9xx drivers
   - sound/isa/opti9xx/opti92x-ad1848.c: check kmalloc() return value
   - Add snd_pcm_group_for_each_entry() for code cleanup
 + PCI drivers
   - Update to Audioscience asihpi driver
   - Fix SB-module dependency with PCI drivers
   - Enable Kconfig options for external firmwares
   - Kconfig: fix FW_LOADER dependencies
   - Kconfig: clarify help text for external firmware entries
   - pci: select FW_LOADER instead of depending on it
   - emu10k1: select FW_LOADER
   - do not depend on FW_LOADER when internal firmware images are used
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
   - ymfpci: add request_firmware()
 + PCI iomap compatibility layer
   - Add pci_iomap compat layer for intel8x0[m] drivers
   - Add fastcall check to pci/pci_iomap_compat.c
 + PDAudioCF driver
   - 2.6 sync: [PATCH] pcmcia: conf.ConfigBase and conf.Present consolidation
   - 2.6 sync: [PATCH] pcmcia: IDs for Elan serial PCMCIA devcies
   - [2.6.19-SYNC] missing include in pdaudiocf_irq
 + PDPlus driver
   - pdplus - Replace obsolete SA_* flags
 + PPC PMAC driver
   - [POWERPC] Rename get_property to of_get_property: sound
   - [POWERPC] Remove old interface find_devices
   - Add wrapper for of_get_property()
   - [POWERPC] Rename device_is_compatible to of_device_is_compatible
 + PPC Tumbler driver
   - [POWERPC] sound: Constify & voidify get_property()
   - Fix tumbler.patch
   - [POWERPC] Rename get_property to of_get_property: sound
   - [POWERPC] Remove old interface find_devices
   - Add wrapper for of_get_property()
   - [POWERPC] Rename device_is_compatible to of_device_is_compatible
 + PXA Mainstone driver
   - 2.6 GIT kernel sync
   - linux 2.6 code sync
 + RME HDSP driver
   - hdsp - Add support for fine tuning of sample rate support to HDSP 9632
   - hdsp: support for mixer matrix of RME9632 rev 152
   - hdsp: precise_ptr control switched off by default
   - hdsp - Add DDS register support for RME9632 rev >= 152
 + RME9652 driver
   - Add missing sysfs device assignment for ALSA PCI drivers
   - hdspm - Fix printk warnings
   - hdspm: Add support for AES32
   - hdspm - Support for Master mode of AES32 and recent MADI
   - rme9652 - Fix the hw_pointer check
 + RTC timer driver
   - rtctimer: handle RTC interrupts with a tasklet
   - is_power_of_2 in rtctimer.c
 + SA11xx UDA1341 driver
   - 2.6 sync: all remaining one line changes
 + SAA7134 driver
   - V4L/DVB (4613): Unmute/mute saa7134 when opening/closing the audio capture device
   - 2.6 kernel sync - kernel subdirectory
   - 2.6 sync - missing updates from previous patch and more
 + SB drivers
   - Fix SB-module dependency with PCI drivers
   - sb16: add request_firmware()
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
   - Remove IRQF_DISABLED for shared PCI irqs
 + SB16/AWE driver
   - Enable Kconfig options for external firmwares
   - sb16: add request_firmware()
   - Don't use request_firmware if internal firmwares are defined
   - Fix patch files for request_firmware()
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
 + SPARC AMD7930 driver
   - [SOUND] sparc/amd7930: Use __devinit and __devinitdata as needed.
   - [SPARC/64] constify of_get_property return: sound
 + SPARC DBRI driver
   - sparc dbri comment fix
   - [PATCH] NULL noise removal
   - [PATCH] sound/sparc/dbri: Use ARRAY_SIZE macro
 + SPARC cs4231 driver
   - Sparc CS4231: Fix IRQ return value and initialization.
   - Sparc CS4231: Use 64 for period_bytes_min
   - [SPARC/64] constify of_get_property return: sound
   - Fix compilation error in sparc/cs4231.c
 + Serial BUS drivers
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - pt2258: add to export-objs
   - Improved delayed_work wrapper
   - Enable the analog loopback of the Revolution 5.1
 + SoC Audio for the Atmel AT91 System-on-Chip
   - soc - ASoC 0.13 AT91xxxx slave patch
   - soc - ASoC 0.13 AT91xxxx I2S
   - soc - ASoC 0.13 AT91xxxx DMA
   - soc - ASoC 0.13 AT91xxxx Eti_B1 board support
   - Update AT91 ASoC driver for 2.6.19 kernel.
   - Renamed to at91-*.c
   - ASoC AT91RM92000 audio DMA
   - ASoC AT91RM92000 I2S support
   - ASoC AT91RM92000 eti_b1 machine support
   - ASoC AT91RM92000 build
   - ASoC DAI capabilities labelling
   - Remove trailing whitespaces from soc/* files
   - ASoC AT91xxxx - SSC port DSP support
   - ASoC AT91xxxx eti B1 machine SSC changes
   - ASoC AT91xxxx build fix
   - Rename soc/at92/at91-i2s.c to at91-ssc.c
   - Change AT91 PDC register defines for 2.6.20 kernel
   - Solve typos/compilation problems for debug functions in soc-dapm and at91-i2s
   - ASoC at91 - Fix NULL pointer dereference in at91_i2s_shutdown
   - sound: SPIN_LOCK_UNLOCKED cleanup
   - soc - Fix dependencies in Kconfig files
   - ASoC AT91 DAI modes update
   - Fix irq handler in soc/at91/at91rm9200-i2s.c
   - Fix mask to stop AT91 SSC clock on shutdown
   - fix SND_SOC Kconfig
 + SoC Audio for the Samsung S3C24XX chips
   - ASoC S3C24xx machine drivers - s3c2443-AC97
   - ASoC S3C24xx machine drivers - Openmoko Neo1973
   - ASoC S3C24xx machine drivers - SMDK 2443
   - ASoC S3C24xx machine drivers - Kconfig
   - Add ASoC s3cs4xx ac97 codes
   - soc - Fix dependencies in s3c24xx/Kconfig
   - ASoC Samsung S3c24xx updates - audio DMA cleanup
   - ASoC Samsung S3C24xx updates - i2s
   - Fix ASoC s3c24xx-pcm spinlock bug
   - ASoC Samsung S3C24xx I2S support
   - ASoC Samsung S3C24xx audio DMA
   - ASoC Samsung S3C24xx build
   - Fix build with soc/s3c24xx-* drivers
 + SoC Codec AC97
   - soc - ASoC 0.13 generic AC97 codec
   - ASoC codecs: generic AC97 support
   - ASoC export AC97 DAI
   - ASoC AC97 static GPL symbol fix
   - ASoC AC97 device reg bugfix
 + SoC Codec WM8731
   - soc - ASoC 0.13 WM8731 codec
   - ASoC codecs: WM8731 support
   - ASoC DAI capabilities labelling
   - Remove trailing whitespaces from soc/* files
   - soc - Clean up with kmemdup()
   - ASoC - mixer name changes for older OSS app support
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
   - ASoC codec error reporting
   - ASoC WM8731 support for 32k @ 12MHz sysclk
 + SoC Codec WM8750
   - soc - ASoC 0.13 WM8750 codec driver
   - ASoC codecs: WM8750 support
   - soc - Clean up with kmemdup()
   - wm8750 typo fix
   - soc - Fix delayed_work related changes on 2.6.20 kernel
   - ASoC - mixer name changes for older OSS app support
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
   - soc - Use global workqueue
   - ASoC codec error reporting
 + SoC Codec WM8753
   - SoC WM8753 codec support
   - Add soc/codecs/wm8753.c for build
 + SoC Codec WM9712
   - soc - ASoC 0.13 WM9712 codec driver
   - ASoC codecs: WM9712 support
   - ASoC WM9712 kmemdup
   - Remove trailing white space from wm9712.c
   - ASoC AC97 device reg bugfix
   - soc - Fix WM9712 register cache entry
   - soc - WM9712 PCM volume
   - ASoC codec error reporting
 + SoC Dynamic Audio Power Management
   - soc - 0.13 ASoC DAPM bug fix for unnamed streams
   - ASoC: core and dapm headers
   - ASoC: dynamic audio power management (DAPM)
   - ASoC DAPM switching for reentrant codec paths
   - soc - Clean up with kmemdup()
   - sound/soc/soc-dapm.c: make 4 functions static
 + SoC Layer
   - Fix the soc code after dhowells workqueue changes.
   - soc - 0.13 ASoC headers
   - soc - ASoC 0.13 core changes
   - ASoC: core and dapm headers
   - ASoC: core code
   - ASoC: Build files
   - ASoC codecs: build files
   - ASoC AT91RM92000 build
   - ASoC debug output build breakage
   - ASoC WM8753 codec - build changes
   - Additional credits to soc-core
   - SoC codecs - fix Kconfig - depends -> depends on
   - SH7760 ASoC support
   - ASoC - Bit clock matching error
   - soc-core: fix multi-line string literal
   - ASoC - Fix build warnings in soc-core.c
   - soc - Fix delayed_work related changes on 2.6.20 kernel
   - ASoC very minor coding style fix for snd_soc_new_pcms()
   - soc - Fix dependencies in Kconfig files
   - ASoC AC97 device reg bugfix
   - ASoC pxa2xx build support
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
   - ASoC Kconfig description
   - soc - Use global workqueue
   - ASoC codec probe failure bug
   - ASoC Samsung S3C24xx build
   - ASoC force running of delayed PM work at suspend() and remove()
   - fix SND_SOC Kconfig
 + SoC PXA2xx Corgi
   - soc - ASoC Sharp corgi machine
   - Add missing soc/pxa entries
   - ASoC pxa2xx Corgi machine support
 + SoC PXA2xx Poodle
   - soc - ASoC 0.13 Sharp poodle machine
   - Add missing soc/pxa entries
   - ASoC pxa2xx Poodle machine support
 + SoC PXA2xx Spitz
   - soc - ASoC 0.13 spitz machine
   - ASoC pxa2xx Spitz machine support
 + SoC PXA2xx Tosa
   - soc - ASoC 0.13 Sharp tosa machine
   - ASoC pxa2xx Tosa machine support
 + SoC SH7760 AC97
   - SH7760 ASoC support
   - Add soc/sh entries
 + USB
   - Add Native Instrument usb audio device support
 + USB USX2Y
   - usbusx2yaudio: kfree(NULL) is valid
   - usb-usx2y: fix the start_frame fix
   - [PATCH] mm: incorrect VM_FAULT_OOM returns from drivers
   - Repair snd-usb-usx2y over OHCI
   - Fix usx2yaudio patches
   - Fix bug in snd-usb-usx2y's usX2Y_pcms_lock_check()
   - Repair snd-usb-usx2y for usb 2.6.18
   - Repair snd-usb-usx2y for usb 2.6.18
 + USB caiaq
   - Add Native Instrument usb audio device support
   - Add usb/caiaq entry
   - snd-usb-caiaq: Make playback work
 + USB generic driver
   - usbaudio - remove urb->bandwidth reference
   - usb-audio: add PCR-A PCM support
   - usbaudio - Add support for Edirol UA-101
   - usb: usbmixer error path fix
   - usbaudio - Fix kobject_add() error at reconnection
   - usb-audio: explicitly match Logitech QuickCam
   - usb-audio: work around broken M-Audio MidiSport Uno firmware
   - usb-audio: work around wrong wMaxPacketSize on ESI M4U
   - usb-audio: work around wrong frequency in CM6501 descriptors
   - USB: Dealias -110 code (more complete)
   - [PATCH] kmemdup: some users
   - usb: usbmixer free kill urb cleanup
   - 2.6 sync: usb: usbmidi kill urb cleanup
   - usbaudio.c: remove unneeded casts
   - usbaudio - Fix Oops with unconventional sample rates
   - usbaudio - Revert the minimal period size fix patch
   - usb-audio: another Logitech QuickCam ID
   - usbaudio - Coping with short replies in usbmixer
   - usbaudio - Fix Oops with broken usb descriptors
   - usb-audio - Fix the minimum period size per transfer mode
   - Fix hang-up at disconnection of usb-audio
   - usb-audio: merge playback/capture hardware information structs
   - usb-audio: allow pausing
   - sound/usb/usbaudio: Handle return value of usb_register()
 + USB1400 touchscreen driver
   - 2.6 sync
   - ucb1400_ts.c compilation fix (struct snd_ac97)
 + Utils
   - reflect 'struct device *' changes from 2.6, add SND_AC97_BUS kernel dependancy
   - Add entries for sh/aica driver
   - Mark new SND_SB_* configs in mod-deps.c
   - Rename AT91_SOC_I2S -> AT91_SOC_SSC
   - pc-speaker driver for 2.6.19
   - Add some soc configs to no_cards
   - Fix mod-deps to suppress snd-soc-wm8753
   - Fix broken build with ac97_bus module
   - Use external table for kernel-version dependent drivers
   - Add entries for soc/sh to mod-deps.c
   - Fix build with soc/s3c24xx-* drivers
   - pc-speaker driver update for 2.6.18
 + VIA82xx driver
   - via82xx - Use quirk list helper function
   - via82xx: add __devinitdata
 + Wavefront drivers
   - wavefront: only declare isapnp on CONFIG_PNP
   - Enable Kconfig options for external firmwares
   - wavefront: simplify YSS225 register initialization
   - wavefront: add request_firmware()
   - Don't use request_firmware if internal firmwares are defined
   - Fix patch files for request_firmware()
 + YMFPCI driver
   - Current driver does not utilize 44.1kHz high quality sampling rate converter.
   - ymfpci: fix compilation on 2.4 kernels
   - Fix invalid assignment of PCI revision
   - ymfpci: fix swap_rear for S/PDIF passthrough
   - ymfpci: add request_firmware()
 + au88x0 driver
   - sound/pci/au88x0/au88x0.c: ioremap balanced with iounmap
   - Delete unused header file sound/pci/au88x0/au88x0_sb.h
 + ic2-id.h update
   - ASoC codecs: WM8731 support
   - ASoC codecs: WM8750 support
   - SoC WM8753 codec support
   - ASoC S3C24xx machine drivers - I2C ID for LM4857
   - added kernel/include/linux/i2c-id.h file from 2.6 mainstream
 + pci_ids.h update
   - sync kernel subdirectory with 2.6 GIT tree
   - 2.6 kernel sync - kernel subdirectory

alsa-lib

 + Core
   - Check _POSIX_SOURCE for timeval definition
   - Fix build with no PCM plugin
   - Add struct timeval and timespec definition when _POSIX_C_SOURCE is not defined
   - fix various warnings
   - change iface argument for namehint function to const char *
   - release 1.0.13
   - Allow build without libdl and libpthread
   - Add config and plugin directory options to configure
   - add snd_device_name_get_hint() function, make hints private to alsa-lib (void)
   - more name hint interace updates
   - Add --enable-symbolic-functions configure option
   - add support for symbol prefixes in shared libraries
   - Add --with-ctl-plugins configure option
   - Use AS_HELP_STRING in configure.in
   - allow building out of tree (sort of)
   - add snd_device_name_hint() function and initial implementation
 + Control API
   - fix various warnings
   - revert back one diff from changeset 2219 (fix various warnings)
   - change iface argument for namehint function to const char *
   - Fix build of static library
   - namehint changes: longname -> cardname, use get_card_name instead longname
   - fix string list parameter in snd_device_name_(free_)hint prototypes
   - Fix device name listing with card = -1
   - remove snd_ctl_iface_conf_name() prototype, namehint doxygen cleanups
   - add snd_device_name_get_hint() function, make hints private to alsa-lib (void)
   - more name hint interace updates
   - pcm config files cleanups and name hint extension
   - add snd_device_name_get_hint() prototype to include/control.h
   - Add --with-ctl-plugins configure option
   - Add missing control_ext entry
   - add snd_device_name_hint() function and initial implementation
   - fix two issues in snd_device_name_hint()
 + Device Name API
   - Remove snd_name_list() and snd_name_list_free() functions.
 + HWDEP API
   - Fix build of static library
 + Mixer API
   - Implements support for capture/playback enums.
   - fix SNDERR() format strings/arguments
   - simple mixer - fix error recovery path for volume / switch write
   - add snd_device_name_hint() function and initial implementation
 + PCM API
   - Improve the sample conversion in plug layer
   - Add support for gain in softvol plugin
   - fix various warnings
   - added pcm_empty plugin and .hgignore additions
   - Fix build of static library
   - direct pcm plugins: fix channel number selection
   - direct pcm plugins: fix format selection
   - fix SNDERR() format strings/arguments
   - Fix compile warning with internal function
   - fix a signedness warning
   - dmix/dshare/dsnoop plugin: enable slowptr by default
   - pcm: fix ipc offset calculation for direct plugins
   - String array for default rate plugin list
   - Trivial fix of compile warning
   - more name hint interace updates
   - pcm direct plugins - fix memory leak (sconf must be deleted)
   - Fix start/stop of multi plugin
   - More better fix for linked start/stop
   - Remove _snd_pcm_link_descriptors() and more comments
   - Revert the wrong change in src/pcm/Makefile.am
   - pcm_ladspa - fix none policy
   - Define an array of default rate plugins
   - Fixed an access to uninitialized variable in pcm_rate.c
   - Fix snd_pcm_open_noupdate() to refer alias
   - add snd_device_name_hint() function and initial implementation
 + PCM Plugin API
   - String array for default rate plugin list
 + RawMidi API
   - rawmidi: do not abort when seeing the hint node
   - Fix build of static library
 + Sequencer API
   - change iface argument for namehint function to const char *
   - Fix build of static library
 + Timer API
   - Fix build of static library
   - initialize dl handles where it needs to
   - Fix error code in timer_query.c
 + /Makefile.am
   - Allow build without libdl and libpthread
 + /src/Makefile.am
   - Compatibility problem with automake 1.10 fixed.
   - Allow build without libdl and libpthread
   - Add --enable-symbolic-functions configure option
   - add support for symbol prefixes in shared libraries
 + ALSA Lisp
   - Add config and plugin directory options to configure
 + Async helpers
   - Allow build without libdl and libpthread
 + Configuration
   - Add support for gain in softvol plugin
   - Fix CS46xx.conf default capture
   - Revert dmix.conf and dsnoop.conf
   - add card_name configuration function
   - remove superfluous strdup() calls
   - fix SNDERR() format strings/arguments
   - Add missing smixer.conf for installation
   - Allow build without libdl and libpthread
   - Add config and plugin directory options to configure
   - fix a typo
   - more name hint interace updates
   - pcm config files cleanups and name hint extension
   - enable dmix-ing and proper 5.1 routing for USB audio devices
   - add USB-Audio.conf to Makefile.am
   - Specify subdevice number for Maestor3 dmix setting
   - Use dmix/dsnoop for maestro3 boards
   - add snd_device_name_hint() function and initial implementation
   - add card number to ipc key for dmix / dsnoop PCM definitions
 + Documentation
   - add snd_device_name_hint() function and initial implementation
 + Kernel Headers
   - Update emu10k1.h for new version
 + Simple Abstraction Mixer Modules
   - Add config and plugin directory options to configure
 + Test/Example code
   - change iface argument for namehint function to const char *
   - alsa-lib: test dir: make check: static building doesn't work on PIC architectures
 + Utils
   - alsa.pc's Libs shouldn't contain -lm -ldl -lpthread

alsa-plugins

 + Core
   - Fix plugindir config setting
   - Alsa support for Maemo SDK (n770): Build configuration
   - Add rate resampler plugin based on speex
   - Add plugin directory configure option
   - Enable link with external libspeex
   - Add livavcodec resampler plugin
 + /Makefile.am
   - compile maemo only if DBUS is present
   - Alsa support for Maemo SDK (n770): Build configuration
   - Add rate resampler plugin based on speex
   - Enable link with external libspeex
   - Add livavcodec resampler plugin
 + A52 Output plugin
   - Add plugin directory configure option
   - Fix segfault of a52 plugin
 + Alsa support for Maemo SDK (n770)
   - release 1.0.14rc1
   - Alsa support for Maemo SDK (n770): Header files
   - Alsa support for Maemo SDK (n770): DSP protocol
   - Alsa support for Maemo SDK (n770): External PCM IO plugin
   - Alsa support for Maemo SDK (n770): External Control plugin
   - Alsa support for Maemo SDK (n770): Build configuration
   - Alsa support for Maemo SDK (n770) - Remove compile warnings
 + Documentation
   - Alsa support for Maemo SDK (n770): Documentation
   - Add livavcodec resampler plugin
   - Add documentation for speex rate plugin
 + Jack PCM plugin
   - Add plugin directory configure option
 + Public Parrot Hack rate converter
   - Add missing files for pph
   - pph - do not include <samplerate.h> in rate_speexrate.c
   - Add rate resampler plugin based on speex
   - Enable link with external libspeex
   - Update version of speex resampler plugin
   - Add missing header files for pph
 + PulseAudio -> ALSA plugin
   - Improve parameter constraints in alsa-pulse
 + Rate Converter plugins
   - Fix wrong implementation of input/output_frames in samplerate plugin
 + libavcodec's resampler
   - Add missing gcd.h to rate-lavc/Makefile.am
   - Add livavcodec resampler plugin

alsa-utils

 + Core
   - utils: Make default sample files be in /usr/share/sounds/alsa
   - alsa-utils.spec.in - additions
 + ALSA Control (alsactl)
   - alsactl - Error message when failing to open the config file
   - alsactl - adjust spaces in help texts
   - alsactl - More explicit open error message
   - alsactl - More explicit open error message (#2)
   - alsactl - Display help for names command
   - alsactl - return error state, fail when no configuration is found
 + ALSA RawMidi Utility (amidi)
   - amidi: open devices non-blockingly
 + Speaker Test
   - speaker-test: fix typos in manpage
 + aconnect
   - Fix aconnect man page
 + alsaconf
   - alsaconf fix: cannot find the snd-powerpc module
   - alsaconf - rcalsasound script does not exists in some distros
 + alsamixer
   - alsamixer - Fix duplicated appearance in All view mode
   - alsamixer: cosmetic fix
 + amixer
   - Implement Playback/Capture enum.
   - amixer - show iec958 status bits in contents command
   - amixer: sset - check if command is valid
   - amixer - remove beep on errors in arguments
 + aplay/arecord
   - Fix argument for snd_device_name_hint().
   - aplay: add fflush(stdout) for -vvv verbosity
   - fix for recent namehint API (use get_hint function)
   - aplay: namehint fix - use filter before printing device name
   - aplay/arecord -L command: process properly end-of-line characters
   - aplay/arecord: Remove -n commad (obsolete, undocumented)
   - aplay/arecord - use snd_device_name_hint() for -L command
   - aplay/arecord: filter direction for -L command
 + aplaymidi/arecordmidi
   - aplaymidi: handle big SysEx commands

alsa-tools

 + Envy24 Control
   - Don't compare with a literal
 + ac3dec (Dolby Digital Decoder)
   - ac3dec - remove config.sub
 + as10k1 (EMU10K1+ DSP Assembler)
   - as10k1 - increase max number of macros and check the size
 + ld10k1 (EMU10K1+ DSP Code Loader)
   - ld10k1 - Use the new API
 + qlo10k1
   - Add lib64 search paths for QTDIR
   - qlo10k1 - added real support for lib64 detection (OpenSuSE 10.2)
 + us428control
   - us428control 0.4.6
   - us428control 0.4.5
   - us428control support for mixxx

alsa-firmware

 + Core
   - add ymfpci firmware
   - add korg1212 firmware
   - add maestro3 firmware
   - add sb16 firmware
   - add wavefront firmware
   - configure: remove superfluous slash at end of path
   - add emi26/emi62 firmware
   - Add Dreamcast AICA firmware
 + AICA (Dreamcast) Firmware
   - Renamed aica/licence.txt -> aica/license.txt
   - Add Dreamcast AICA firmware
 + AudioScience ASIHPI Firmware
   - Update ASIHPI firmware 3.07.04
   - asihpi driver 3.05.07
 + Digigram Echo Audio Firmware
   - Echoaudio, add support for new revisions of Indigo's and Mia cards
 + EMU Firmware
   - emu: Add firmware for the micro_dock and the emu1010 notebook card.
   - Add firmware image for emu0404 PCI card.
   - Ensure the firmware image installs.
 + Emagic EMI 2|6 Audio Interface Firmware
   - emi26/62: make firmware files binary
   - add emi26/emi62 firmware
 + Korg 1212 Firmware
   - add korg1212 firmware
 + Maestro3 Firmware
   - add maestro3 firmware
 + SB16 (CSP) Firmware
   - add sb16 firmware
 + Wavefront Firmware
   - wavefront: simplify YSS225 register initialization
   - add wavefront firmware
 + Yamaha PCI (YMFPCI) Firmware
   - add ymfpci firmware


Changelog between 1.0.12rc2 and 1.0.14 releases

alsa-oss

 + Core
   - release 1.0.12rc2
   - Fix LFS support for fopen in alsa-oss
   - release 1.0.12


Detailed changelog between 1.0.13 and 1.0.14 releases

alsa-driver

 + Sound Core
   - we support 2.6.19 kernel as well
   - Add mcore2 and geodegx detection to configure
     
     Added mcore2 and geodegx detection to configure script.
     Also, unknown x86_32 cpus are handled as generic i386.
   - Add ALSA support for the SEGA Dreamcast PCM device
     
     ALSA support for the SEGA Dreamcast Yamaha AICA sound device (pcm)
     
     This patch adds ALSA sound support for pcm playback on two channels on
     the SEGA Dreamcast built-in sound device (the Yamaha AICA)
     
     Add driver for the AICA sound device built into the SEGA Dreamcast
     
     Hook it all up with the build system.
     
     Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk>
   - Add entries for sh/aica driver
     
     Added the detection of SuperH archs, added the entries for sh/aica
     driver.
   - Fix build with CONFIG_MCORE2
     
     Fixed the build with CONFIG_MCORE2 kernel config.
   - Move description of DEVFS to INSTALL file
     
     Move description of DEVFS to INSTALL file since it's removed from
     alsa-kernel tree.
   - ASoC: Build files
     
     This patch adds support for building the ASoC core and the dynamic audio
     power management support.
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - Add support of ASoC
     
     Add/fixes files to support ASoC drivers on alsa-driver tree.
   - Update SUPPORTED_KERNELS
     
     We support up to 2.6.18 kernel now.
   - Avoid double inclusion of linux/autoconf.h
     
     Avoid double inclusion of linux/autoconf.h from linux/config.h
   - Add missing soc directory to Makefile
     
     Added missing soc directory to Makefile.
   - release 1.0.14rc3
   - release 1.0.14rc2
   - disable portman2x4 on pre-2.6 kernels
     
     Provisionally disable compiling snd-portman2x4 on kernels before 2.6
     until some platform_device_* compatibility code has been written.
   - remove log2_compat.h
     
     There are certain obsolete and seldom-used kernels (for example, 2.6.20)
     that have the linux/log2.h header but that do not have the
     is_power_of_2() function.  Move our own is_power_of_2() wrapper to
     adriver.h so that it is picked up even on those kernels.
   - add request_firmware() wrapper for older kernels
     
     Add a wrapper for request_firmware() that uses OSS's
     mod_firmware_load().
   - fix asihpi compilation on 2.2 kernels
     
     On 2.2.x kernels, make sure that the asihpi driver isn't selected because
     #error ALSA (requiring spinlocks) not currently supported on Linux version < 2.4.0
   - Fix build with 2.2/2.4 kernels
     
     - Revert irqreturn_t to void for 2.2/2.4 kernels
     - Properly check the irq handler type in wrapper.c
     - Don't check create_workqueue with flags in configure for 2.2/2.4 kernels
   - [PATCH] build sound/sound_firmware.c only for OSS
     
     All sound/sound_firmware.c contains is mod_firmware_load() that is a
     API only used by some OSS drivers.
     
     This patch builds it into an own sound_firmware module that is only
     depending on CONFIG_SOUND_PRIME making the kernel slightly smaller f
     users.
     
     [alan@lxorguk.ukuu.org.uk: comment fix]
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
     Acked-by: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Alan Cox <alan@redhat.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.4 kernel build fixes
     
     The patches are from bug#2514 (breitenlohner reporter).
   - release 1.0.14rc1
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
     
     Commit 2d4ba4a3b9aef95d328d74a17ae84f8d658059e2 introduced a dependency
     that was never meant to exist when the ac97_bus.c module was created.
     Move ac97_bus.c up the directory hierarchy to make sure it is built when
     selected even if sound is configured out so things work as originally
     intended.
     
     Signed-off-by: Nicolas Pitre <nico@cam.org>
     Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 sync: all remaining one line changes
   - We support 2.6.20 kernel, too.
   - Fix build with 2.6.21-rc1 kernel
     
     The 2.6.21-rc1 kernel requires a definition of KBUILD_MODNAME.
     Added a dummy definition in configure.
   - Add compat linux/log2.h
     
     Added a compat linux/log2.h wrapper for older kernels.
     Only is_power_of_2() is defined there, so far.
   - release 1.0.14
   - Add i2c-id.h header mangling (compatibility layer)
   - Fix broken build with ac97_bus module
     
     Build ac97_bus module properly, which was moved/renamed
     from pci/ac97.
   - Add isa_driver and isa_device wrappers for older kernels
     
     Added isa_driver and isa_device wrappers for kernels < 2.6.18.
     isa_compat.h is read from a dummy linux/isa.h.
     
     Also, each export of wrapper function and variable is moved to
     the place it's defined, instead of the one sound.c, for avoiding
     ifdef messes.
   - Use external table for kernel-version dependent drivers
     
     mod-deps refers to an external file for checking the kernel-version
     dependent drivers.  $TOP/kconfig-vers is used as default.
     Now it accepts the ksublevel number, such as, 2.6.15, which means
     2.6.15 or later version.
   - Fix build with the recent openSUSE 10.3 kernels
     
     Fixed the build with the recent openSUSE 10.3 kernels.
     configure needs to check include2 directory, too.
   - Fix build with the latest 2.6.19-git
     
     The IRQ handler is changed in 2.6.19-git (after rc1), so we have to
     adapt that style for the older kernels.
     
     - configure checks the new IRQ handler, adds missing headers.
     - Wrappers for request_irq(), free_irq() and get_irq_regs() are
       provided for older kernels.
     - For usb and parport drivers, need to patch the irq handlers.
     
     Also, fixed the build failure due to the change of namespace and
     kmem_cache_destroy().
   - Check gfp_t in configure
     
     Check gfp_t in configure script.  RH4 kernels have its own variant of
     gfp_t that sucks for the current version checks.
   - release 1.0.14rc4
   - asihpi: disable on pre-2.6 kernels
     
     Require a 2.6 kernel to compile snd-asihpi.
   - Add a dummy linux/latency.h for older kernels
     
     Added a dummy linux/latency.h for older kernels.
 + ALSA Core
   - reflect 'struct device *' changes from 2.6, add SND_AC97_BUS kernel dependancy
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - add compatibility struct device_attribute 
     
     Define a struct device_attribute for earlier kernels.
   - add container_of()
     
     Add a definition of the container_of() macro for earlier kernels.
   - Add missing exports
     
     Added missing exports of snd_pci_compat_save|restore_state().
   - Fix compilation with older kernels
     
     Fix compilation errors with older kernels due to conflict of
     class_sound types.
   - Add PCI quirk list helper function
     
     Added a helper function snd_pci_quirk_lookup()
     to look up PCI SSID quirk list.
   - Fix compilation with older kernels
     
     Fix compilation of snd_pci_quirk_lookup() for older kernels
     (without pci_dev.subsystem_* fields).
   - Handle file operations during snd_card disconnects using static file->f_op
     
     Alsa used to kmalloc one file->f_op per file per disconnecting snd_card.
     This led to oopses sometimes when file->f_op was freed before __fput()
     finished.
     Patch adds a virtual device for disconnect: VDD.
     VDD consists of:
     	LIST_HEAD(shutdown_files)
     	    protected by DEFINE_SPINLOCK(shutdown_mutex)
     
     	static struct file_operations snd_shutdown_f_ops
     	    and functions assigned to it
     
     	Additions to struct snd_monitor_file
     	    to specify if instance is hidden by VDD or not.
     
     A VDD's instance is
     	created in snd_card_disconnect() under the card->files_lock.
     	cleaned up in snd_card_file_remove() under the card->files_lock.
     
     Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
   - Regenerate init.patch for the fix of disconnect
     
     Regenrated init.patch for the fix of disconnect.
   - acore/init.patch fix - linux 2.2 does not have owner member
   - Add support of ASoC
     
     Add/fixes files to support ASoC drivers on alsa-driver tree.
   - add min_t wrapper
     
     Add wrappers for the min_t and max_t macros for old kernels.
   - remove log2_compat.h
     
     There are certain obsolete and seldom-used kernels (for example, 2.6.20)
     that have the linux/log2.h header but that do not have the
     is_power_of_2() function.  Move our own is_power_of_2() wrapper to
     adriver.h so that it is picked up even on those kernels.
   - fix wrappers.c compilation with 2.2/2.4 kernels
     
     Add wrappers.c to export-objs.
   - fix isa_compat.h compilation with 2.2 kernels
     
     Include <linux/device.h> to get the definition of struct device_driver.
   - fix wrappers.c compilation with 2.2 kernels
     
     The interrupt handler wrapper uses kmalloc(), so include slab.h.
   - add BUILD_BUG_ON wrapper for earlier kernels
     
     Add a wrapper for the BUILD_BUG_ON() macro for earlier kernels.
   - update list_for_each_entry() macro
     
     Update the list_for_each_entry() implementation for old kernels with the
     change made in 2.6.??.
   - add schedule_delayed_work() wrapper
     
     Add wrappers for schedule_delayed_work() and cancel_delayed_work() for
     older kernels.
   - use the ALIGN macro
     
     Use the ALIGN macro instead of manual calculations.
   - use the roundup macro
     
     Use the roundup macro instead of manual calculations.
   - add list helpers for older kernels
     
     Add the list_move_tail function and the list_for_each_entry_safe macro
     for older kernels.
   - add fastcall macro for older kernels
   - add IORESOURCE_CACHEABLE symbol for older kernels
   - add request_firmware() wrapper for older kernels
     
     Add a wrapper for request_firmware() that uses OSS's
     mod_firmware_load().
   - add __constant_cpu_to_le32() for older kernels
   - add a local_irq_enable() wrapper for older kernels
   - Fix build with 2.2/2.4 kernels
     
     - Revert irqreturn_t to void for 2.2/2.4 kernels
     - Properly check the irq handler type in wrapper.c
     - Don't check create_workqueue with flags in configure for 2.2/2.4 kernels
   - fix compilation with gcc 2
     
     Add a wrapper for the va_copy macro; earlier compilers only have __va_copy.
   - Replace vsnprintf() wrapper
     
     Replaced vsnprintf() wrapper as included in the recent kernels.
     The old wrapper is buggy and may corrupt memory over 4k strings.
   - [HEADERS] One line per header in Kbuild files to reduce conflicts
     
     Signed-off-by: David Woodhouse <dwmw2@infradead.org>
   - Added wrappers of spin_lock*nested() for older kernels
   - Driver core: convert sound core to use struct device
     
     Converts from using struct "class_device" to "struct device" making
     everything show up properly in /sys/devices/ with symlinks from the
     /sys/class directory.
     
     It also makes the struct sound_card to show up as a "real" device
     where all the different sound class devices are placed as childs
     and different card attribute files can hang off of. /sys/class/sound is
     still a flat directory, but the symlink targets of all devices belonging
     to the same card, point the the /sys/devices tree below the new card
     device object.
     
     Thanks to Kay for the updates to this patch.
     
     Signed-off-by: Kay Sievers <kay.sievers@novell.com>
     Acked-by: Jaroslav Kysela <perex@suse.cz>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - 2.6 sync: just correction of wrong merge
   - 2.6 sync: [PATCH] struct path: convert sound
     
     Signed-off-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - Fix sysfs breakage
     
     The recent change for a new sysfs tree with card* object breaks the
     /sys/class/sound tree if CONFIG_SYSFS_DEPRECATED is enabled.
     The device in each entry doesn't point the correct device object:
     
       /sys/class/sound
       ...
       |-- pcmC0D0c
       |   |-- dev
       |   |-- device -> ../../../class/sound/card0
       |   |-- pcm_class
       |   |-- power
       |   |   `-- wakeup
       |   |-- subsystem -> ../../../class/sound
       |   `-- uevent
     
     Also, this change breaks some drivers (like sound/arm/*) referring
     card->dev directly to obtain the device object for memory handling.
     
     This patch reverts the semantics of card->dev to the former version,
     which points to a real device object.  The card* object is stored in a
     new card->card_dev field, instead.  The device parent is chosen either
     card->dev or card->card_dev according to CONFIG_SYSFS_DEPRECATED to
     keep the tree compatibility.
     Also, card* isn't created if CONFIG_SYSFS_DEPRECATED is enabled.  The
     reason of card* object is a root of all beloing devices, and it makes
     little sense if each sound device points to the real device object
     directly.
     
   - Fix compilation with older kernels (with sysfs changes)
     
     Define CONFIG_SYSFS_DEPRECATED for kernels with older sysfs tree.
     Also fixed init.patch for the recent version.
   - Add compat linux/log2.h
     
     Added a compat linux/log2.h wrapper for older kernels.
     Only is_power_of_2() is defined there, so far.
   - Fix typos in sound.patch
     
     Fixed typos in sound.patch (sound_class1 -> sound_class).
   - add MODULE_FIRMWARE entries
     
     Add MODULE_FIRMWARE() entries, where appropriate.
   - Remove obsolete typedefs.h
     
     Removed obsolete typedefs.h.  It existes only for backward compatibility,
     and now all codes should be free from such typedefs.
   - Add i2c-id.h header mangling (compatibility layer)
   - allow registering an alsa device with struct device pointer
     
     This patch adds snd_register_device_for_dev taking a struct device
     pointer to link the new device to and makes snd_register_device a simple
     static inline wrapper around it.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - Fix sound.patch for snd_register_device_for_dev()
     
     Fixed sound.patch for change of snd_register_device_for_dev().
   - alsa core: convert to list_for_each_entry*
     
     This patch converts most uses of list_for_each to list_for_each_entry all
     across alsa. In some place apparently an item can be on a list with
     different pointers so of course that isn't compatible with list_for_each, I
     therefore didn't touch those places.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - Improved delayed_work wrapper
     
     Improved delayed_work wrapper, to be built without patching.
   - 2.6 sync - [PATCH] mark struct file_operations const 9
     
     Many struct file_operations in the kernel can be "const".  Marking them const
     moves these to the .rodata section, which avoids false sharing with potential
     dirty data.  In addition it'll catch accidental writes at compile time
     to these shared resources.
     
     Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - Add isa_driver and isa_device wrappers for older kernels
     
     Added isa_driver and isa_device wrappers for kernels < 2.6.18.
     isa_compat.h is read from a dummy linux/isa.h.
     
     Also, each export of wrapper function and variable is moved to
     the place it's defined, instead of the one sound.c, for avoiding
     ifdef messes.
   - Summary: cleanup and error reporting for sound/core/init.c
     
     Make the control flow clear with indentation, adds some comments
     and improves error reporting.
     
     Signed-off-by: Oliver Neukum <oneukum@suse.de>
   - log2_compat: define bool type if linux kernel is older
   - Add wrapper for of_get_property()
   - [2.6.19-SYNC] namespaces: utsname: use init_utsname when appropriate
     
     Use init_utsname() helper instead of system_utsname.
     
   - [2.6.19-SYNC] Remove all inclusions of <linux/config.h>
     
   - Fix build with the latest 2.6.19-git
     
     The IRQ handler is changed in 2.6.19-git (after rc1), so we have to
     adapt that style for the older kernels.
     
     - configure checks the new IRQ handler, adds missing headers.
     - Wrappers for request_irq(), free_irq() and get_irq_regs() are
       provided for older kernels.
     - For usb and parport drivers, need to patch the irq handlers.
     
     Also, fixed the build failure due to the change of namespace and
     kmem_cache_destroy().
   - Add missing change for config.h.in
     
     Added missing CONFIG_SND_NEW_IRQ_HANDLER for config.h.in in the last patch.
   - Fix build with DEVFS
     
     Fix the compilation with DEVFS support on older kernels.
   - Check gfp_t in configure
     
     Check gfp_t in configure script.  RH4 kernels have its own variant of
     gfp_t that sucks for the current version checks.
   - Fix missing inclusion of linux/module.h
     
     Fixed the missing inclusion of linux/module.h in acore/wrappers.c.
   - Add a dummy flush_scheduled_work() for older kernels
     
     Added a dummy flush_scheduled_work() for older kernels.
   - PCI: Cleanup the includes of <linux/pci.h>
     
     I noticed that many source files include <linux/pci.h> while they do
     not appear to need it. Here is an attempt to clean it all up.
     
     Signed-off-by: Jean Delvare <khali@linux-fr.org>
     Cc: Badari Pulavarty <pbadari@us.ibm.com>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - Add a dummy wrapper for pci_intx()
     
     Added a dummy wrapper for pci_intx() for kernels < 2.6.14.
   - Force to read linux/autoconf.h for 2.6.18 or later
     
     Force to read linux/autoconf.h in adriver.h for 2.6.18 or later since
     linux/config.h is no longer read explicitly.  The autoconf.h hack would
     override the sound setting properly by this change.
   - Add kmemdup() wrapper
     
     Added a static inline kmemdup() wrapper for older kernels.
   - Add a dummy linux/latency.h for older kernels
     
     Added a dummy linux/latency.h for older kernels.
   - Fix wrong kfree in free_irq wrapper
     
     Fixed a idiotically wrong kfree in free_irq wrapper.
   - Add a wrapper for pci_choose_state() for older kernels
     
     Added a wrapper for pci_choose_state() for older kernels.
   - Fix re-use of va_list
     
     The va_list is designed to be used only once.  The current code
     may pass va_list arguments multiple times and may cause Oops.
     Copy/release the arguments temporarily to avoid this problem.
     
 + SoC PXA2xx Core
   - soc - ASoC 0.13 pxa2xx i2s driver
     
     This patch updates the pxa2xx I2S driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Removed DAI capabilities matching code in favour of manual matching in
     the machine drivers.
     
     o Added DAI operations for codec and CPU interfaces.
     
     o Removed config_sysclk() function and struct snd_soc_clock_info. No
     longer needed as clocking is now configured manually in the machine
     drivers. Also removed other clocking data from structures.
     
     o Added pxa2xx-i2s.h header
     
     Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - ASoC 0.13 pxa2xx AC97 driver
     
     This patch updates the pxa2xx AC97 driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Removed DAI capabilities matching code in favour of manual matching in
     the machine drivers.
     
     o Added DAI operations for codec and CPU interfaces.
     
     o Added pxa2xx-ac97.h header
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - ASoC 0.13 pxa2xx DMA
     
     This patch updates the pxa2xx I2S driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Added check in hw_params to detect buffer less pcms (i.e. BT <-->
     codec).
     
     o Updated structures to new API
     
     o Removed DAI's and ac97 ops from PCM header.
     
     o Integer hardware constraint added for periods.
     
     Signed-off-by: Andrew Johnson <ajohnson@intrinsyc.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Add missing soc/pxa entries
     
     Added missing soc/pxa entries to build properly.
   - Fix AC97_BUS in soc/pxa/Kconfig
     
     Fixed the renamed AC97_BUS in soc/pxa/Kconfig file.
   - soc - Fix dependencies in Kconfig files
     
     Fixed dependencies in Kconfig files of soc drivers.
     
   - ASoC pxa2xx DMA support
     
     This patch adds pxa2xx ASoC DMA audio support. It's based on
     sound/arm/pxa-pcm.c by Nicolas Pitre with the following differences.
     
     o Modified driver structure to use ASoC core PCM callbacks and data
     structures.
     o Registration with ASoC core.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Nicolas Pitre <nico@cam.org>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC pxa2xx I2S support
     
     This patch adds pxa2xx I2S ASoC audio support. Features:-
     
      o Supports playback/capture
      o 16 bit PCM
      o 8k - 96k sample rates
      o Supports master and slave mode.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC pxa2xx AC97 support
     
     This patch adds pxa2xx AC97 ASoC audio support. It's based on
     sound/arm/pxa-ac97 by Nicolas Pitre with the following differences.
     
      o Modified driver structure to use ASoC core PCM callbacks.
      o Removed AC97 configuration function (all handled in ASoC core)
      o Added and exported ASoC DAI configuration table.
      o Added DMA support for AUX DAC and Mic ADC
      o Separated out AC97 reset into cold and warm reset functions.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Nicolas Pitre <nico@cam.org>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC pxa2xx build support
     
     This patch builds ASoC pxa2xx support for Corgi, Spitz, Tosa and Poodle
     Zaurus machines.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - fix SND_SOC Kconfig
     
     The new ALSA "SOC" support has bogus Kconfig ... it should
     not be presenting anything AT91-related except on AT91,
     or anything PXA-related except on PXA.  Right now, x86
     sees both of those menus, as do all other platforms.
     
     This patch removes needless Kconfig layering, and the
     related inappropriate choice presentation.
     
     Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
   - [ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX
     
     This patch removes the unnecessary bit number from CKENnn_XXXX
     definitions for PXA, so that
     
             CKEN0_PWM0 --> CKEN_PWM0
             CKEN1_PWM1 --> CKEN_PWM1
             ...
             CKEN24_CAMERA --> CKEN_CAMERA
     
     Signed-off-by: eric miao <eric.y.miao@gmail.com>
     Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
 + Control Midlevel
   - make sound/core/control.c:snd_ctl_new() static
     
     Now that everyone uses snd_ctl_new1() and noone is using snd_ctl_new()
     anymore, we can make it static.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - alsa core: convert to list_for_each_entry*
     
     This patch converts most uses of list_for_each to list_for_each_entry all
     across alsa. In some place apparently an item can be on a list with
     different pointers so of course that isn't compatible with list_for_each, I
     therefore didn't touch those places.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - Fix addition of user-defined boolean controls
     
     Fixed the addition of user-defined boolean controls, the private
     data size is corrected to be handled properly.
     
   - 2.6 sync - [PATCH] mark struct file_operations const 9
     
     Many struct file_operations in the kernel can be "const".  Marking them const
     moves these to the .rodata section, which avoids false sharing with potential
     dirty data.  In addition it'll catch accidental writes at compile time
     to these shared resources.
     
     Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - Fix patches for addition of const to f_ops
   - sound/core/control.c: remove dead code
     
     This patch removes some obviously dead code spotted by the Coverity
     checker.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - header cleaning: don't include smp_lock.h when not used
     
     Remove includes of <linux/smp_lock.h> where it is not used/needed.
     Suggested by Al Viro.
     
     Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,
     sparc64, and arm (all 59 defconfigs).
     
     Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - re-include smp_lock.h where needed
     
     <linux/smp_lock.h> is needed for (un)lock_kernel() in the old ioctl
     compatibility code.
 + HWDEP Midlevel
   - Dereference after free in snd_hwdep_release()
     
     snd_card_file_remove() may free hw->card so we can't dereference
     hw->card->module after that.
     
     Coverity ID 1420.
     
     Signed-off-by: Florin Malita <fmalita@gmail.com>
   - hwdep_compat missed __user annotations
     
     Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - alsa core: convert to list_for_each_entry*
     
     This patch converts most uses of list_for_each to list_for_each_entry all
     across alsa. In some place apparently an item can be on a list with
     different pointers so of course that isn't compatible with list_for_each, I
     therefore didn't touch those places.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - 2.6 sync - [PATCH] mark struct file_operations const 9
     
     Many struct file_operations in the kernel can be "const".  Marking them const
     moves these to the .rodata section, which avoids false sharing with potential
     dirty data.  In addition it'll catch accidental writes at compile time
     to these shared resources.
     
     Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - Fix patches for addition of const to f_ops
   - snd_hwdep_release() racefix
     
     snd_card_file_remove() can free the snd_card.
     Touch hw->* only before calling snd_card_file_remove().
     
     Unrelated: Allow hwdep devices not to have own ops.release();
     
     Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
   - header cleaning: don't include smp_lock.h when not used
     
     Remove includes of <linux/smp_lock.h> where it is not used/needed.
     Suggested by Al Viro.
     
     Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,
     sparc64, and arm (all 59 defconfigs).
     
     Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - re-include smp_lock.h where needed
     
     <linux/smp_lock.h> is needed for (un)lock_kernel() in the old ioctl
     compatibility code.
 + PCM Midlevel
   - reflect 'struct device *' changes from 2.6, add SND_AC97_BUS kernel dependancy
   - pcm core: add prealloc_max file to substream directory to show maximum DMA size
     
     Users ask us many times about the maximum DMA size for PCM devices. This
     file gives them a hint in KB.
   - pcm core: fix silence_start calculations
     
     The case where silence_size < boundary was broken because different
     parts of the snd_pcm_playback_silence() function disagreed about whether
     silence_start should point to the start or to the end of the buffer part
     to be silenced.
     
     This patch changes the code to always use to the start, which also
     simplifies several calculations.
   - [PATCH] maximum latency tracking: ALSA support
     
     Add maximum latency tracking to the ALSA subsystem for PCM playback.
     In ALSA, the playback application controls the buffer size and thus
     indirectly the period of latency that it can deal with.  This patch
     uses 75% of the total available latency as threshold to announce to
     the latency subsystem; While 75% is a crude heuristic it's a quite
     reasonable one; the remaining 25% can be used for all driver
     processing for the next samples which is also proportional to
     the size of the buffer.
     
     With ogg123 a latency setting of about 4msec was seen (at 44Khz),
     while with the "play" command a much longer maximum tolerable
     latency was seen. Other, more multimedia oriented players as well
     as games, will have a lot smaller buffers to allow better
     synchronization and those will actually get into the latency
     domains where there is impact on the power management rules.
     
     Signed-off-by: Takashi Iwai <tiwai@suse.de>
     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>
   - [PATCH] Remove readv/writev methods and use aio_read/aio_write instead
     
     This patch removes readv() and writev() methods and replaces them with
     aio_read()/aio_write() methods.
     
     Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com>
     Signed-off-by: Christoph Hellwig <hch@lst.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - pcm_native: lockdep warning when launching jack
     
     When launching "jackd -d alsa", lockdep issues the following warning:
     [39701.405086] =============================================
     [39701.405093] [ INFO: possible recursive locking detected ]
     [39701.405107] 2.6.21-rc5-mm4 #2
     [39701.405109] ---------------------------------------------
     [39701.405112] jackd/17366 is trying to acquire lock:
     [39701.405114]  (&substream->self_group.lock){....}, at: [<c034d3c0>] snd_pcm_action_group+0x90/0x240
     [39701.405131]
     [39701.405131] but task is already holding lock:
     [39701.405134]  (&substream->self_group.lock){....}, at: [<c034d63f>] snd_pcm_action_lock_irq+0x3f/0xb0
     [39701.405141]
     [39701.405142] other info that might help us debug this:
     [39701.405145] 3 locks held by jackd/17366:
     [39701.405147]  #0:  (snd_pcm_link_rwlock){....}, at: [<c034d627>] snd_pcm_action_lock_irq+0x27/0xb0
     [39701.405155]  #1:  (&substream->group->lock){....}, at: [<c034d638>] snd_pcm_action_lock_irq+0x38/0xb0
     [39701.405163]  #2:  (&substream->self_group.lock){....}, at: [<c034d63f>] snd_pcm_action_lock_irq+0x3f/0xb0
     [39701.405171]
     [39701.405171] stack backtrace:
     [39701.405174]  [<c0103b8a>] show_trace_log_lvl+0x1a/0x30
     [39701.405179]  [<c0104912>] show_trace+0x12/0x20
     [39701.405183]  [<c01049c6>] dump_stack+0x16/0x20
     [39701.405187]  [<c013b980>] __lock_acquire+0xbd0/0x1040
     [39701.405193]  [<c013be60>] lock_acquire+0x70/0x90
     [39701.405197]  [<c0407846>] _spin_lock+0x36/0x50
     [39701.405203]  [<c034d3c0>] snd_pcm_action_group+0x90/0x240
     [39701.405207]  [<c034d653>] snd_pcm_action_lock_irq+0x53/0xb0
     [39701.405211]  [<c035046f>] snd_pcm_common_ioctl1+0x35f/0xfb0
     [39701.405215]  [<c0351544>] snd_pcm_playback_ioctl1+0x34/0x420
     [39701.405219]  [<c03519f3>] snd_pcm_playback_ioctl+0x43/0x50
     [39701.405223]  [<c017ecc8>] do_ioctl+0x28/0x80
     [39701.405229]  [<c017ed77>] vfs_ioctl+0x57/0x290
     [39701.405233]  [<c017efe9>] sys_ioctl+0x39/0x60
     [39701.405237]  [<c0102bf4>] sysenter_past_esp+0x5d/0x99
     [39701.405240]  =======================
     
     The attached lockdep annotation silences the warning.
     
     Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
   - add struct snd_pcm_substream forward declaration
     
     fixes: include/sound/pcm.h:62: warning: 'struct snd_pcm_substream' declared
     inside parameter list
     
     Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - [PATCH] mm: incorrect VM_FAULT_OOM returns from drivers
     
     Some drivers are returning OOM when it is not in response to a memory
     shortage.
     
     Signed-off-by: Nick Piggin <npiggin@suse.de>
     Cc: Dave Airlie <airlied@linux.ie>
     Cc: Jaroslav Kysela <perex@suse.cz>
     Cc: Takashi Iwai <tiwai@suse.de>
     Cc: Greg KH <greg@kroah.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - Driver core: convert sound core to use struct device
     
     Converts from using struct "class_device" to "struct device" making
     everything show up properly in /sys/devices/ with symlinks from the
     /sys/class directory.
     
     It also makes the struct sound_card to show up as a "real" device
     where all the different sound class devices are placed as childs
     and different card attribute files can hang off of. /sys/class/sound is
     still a flat directory, but the symlink targets of all devices belonging
     to the same card, point the the /sys/devices tree below the new card
     device object.
     
     Thanks to Kay for the updates to this patch.
     
     Signed-off-by: Kay Sievers <kay.sievers@novell.com>
     Acked-by: Jaroslav Kysela <perex@suse.cz>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - 2.6 sync: [PATCH] struct path: convert sound
     
     Signed-off-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 sync: all remaining one line changes
   - Fix possible invalid memory access in PCM core
     
     snd_internval_list() may access invalid memory in the case count = 0
     is given.  It shouldn't be passed, but it'd better to make the code
     a bit more robust.
   - Fix sysfs breakage
     
     The recent change for a new sysfs tree with card* object breaks the
     /sys/class/sound tree if CONFIG_SYSFS_DEPRECATED is enabled.
     The device in each entry doesn't point the correct device object:
     
       /sys/class/sound
       ...
       |-- pcmC0D0c
       |   |-- dev
       |   |-- device -> ../../../class/sound/card0
       |   |-- pcm_class
       |   |-- power
       |   |   `-- wakeup
       |   |-- subsystem -> ../../../class/sound
       |   `-- uevent
     
     Also, this change breaks some drivers (like sound/arm/*) referring
     card->dev directly to obtain the device object for memory handling.
     
     This patch reverts the semantics of card->dev to the former version,
     which points to a real device object.  The card* object is stored in a
     new card->card_dev field, instead.  The device parent is chosen either
     card->dev or card->card_dev according to CONFIG_SYSFS_DEPRECATED to
     keep the tree compatibility.
     Also, card* isn't created if CONFIG_SYSFS_DEPRECATED is enabled.  The
     reason of card* object is a root of all beloing devices, and it makes
     little sense if each sound device points to the real device object
     directly.
     
   - Add snd_pcm_group_for_each_entry() for code cleanup
     
     Added a new macro snd_pcm_group_for_each_entry() just for code cleanup.
     Old macros, snd_pcm_group_for_each() and snd_pcm_group_substream_entry(),
     are removed.
   - sound: fix PCM substream list
     
     If snd_pcm_new_stream() fails to initalize a substream (if
     snd_pcm_substream_proc_init() returns error), snd_pcm_new_stream()
     immediately return without unlinking that kfree()d substram.
     
     It causes oops when snd_pcm_free() iterates the list of substream to
     free them by invalid reference.
     
     Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
   - alsa core: add struct device pointer to struct snd_pcm
     
     This patch adds a struct device pointer to struct snd_pcm in order to be
     able to give it a different device than the card. It defaults to the card's
     device, however, so it should behave identically for drivers not touching
     the field.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - alsa core: convert to list_for_each_entry*
     
     This patch converts most uses of list_for_each to list_for_each_entry all
     across alsa. In some place apparently an item can be on a list with
     different pointers so of course that isn't compatible with list_for_each, I
     therefore didn't touch those places.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - 2.6 sync - missing updates from previous patch and more
   - Fixed patch for recent const f_ops fixes
   - header cleaning: don't include smp_lock.h when not used
     
     Remove includes of <linux/smp_lock.h> where it is not used/needed.
     Suggested by Al Viro.
     
     Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,
     sparc64, and arm (all 59 defconfigs).
     
     Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - re-include smp_lock.h where needed
     
     <linux/smp_lock.h> is needed for (un)lock_kernel() in the old ioctl
     compatibility code.
   - Fix hang-up at disconnection of usb-audio
     
     Fix hang-up at disconnection of usb-audio devices while accessing PCM.
     Don't handle PCM operations any more after shutdown flag is set.
     
   - Fix compilation of pcm_native.c
     
     Fixed the pcm_native.patch for aio_read/write ops.
 + RawMidi Midlevel
   - sound: initialize rawmidi substream list
     
     If snd_rawmidi_new() failed to allocate substreams for input
     (snd_rawmidi_alloc_substreams() failed to populate a
     &rmidi->streams[SNDRV_RAWMIDI_STREAM_INPUT]), it will try to
     free rawmidi instance by snd_rawmidi_free().
     
     But it will cause oops because snd_rawmidi_free() tries to free
     both of substreams list but list for output
     (&rmidi->streams[SNDRV_RAWMIDI_STREAM_OUTPUT]) is not initialized yet.
     
     Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
 + Timer Midlevel
   - Remove useless reference to obsolete KERNELD
     
     Remove the final useless reference to the obsolete KERNELD feature.
     
     Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - Fix patches for addition of const to f_ops
 + /misc/Makefile
   - Fix broken build with ac97_bus module
     
     Build ac97_bus module properly, which was moved/renamed
     from pci/ac97.
 + /oss/Makefile
   - 2.6 sync: [PATCH] The scheduled removal of some OSS drivers
     
     This patch contains the scheduled removal of OSS drivers that:
     - have ALSA drivers for the same hardware without known regressions and
     - whose Kconfig options have been removed in 2.6.17.
     
     [michal.k.k.piotrowski@gmail.com: build fix]
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
     Signed-off-by: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
     Cc: David Woodhouse <dwmw2@infradead.org>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 + /soc/Makefile
   - ASoC: Build files
     
     This patch adds support for building the ASoC core and the dynamic audio
     power management support.
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC codecs: build files
     
     This patch adds an ASoC Makefile and Kconfig for the WM8731, WM8750 and
     WM9712 codecs.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC AT91RM92000 build
     
     This patch adds a Makefile and Kconfig to build the ASoC AT91RM9200
     support.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - Add support of ASoC
     
     Add/fixes files to support ASoC drivers on alsa-driver tree.
   - SH7760 ASoC support
     
     ALSA ASoC support for SH7760
     
     This patch adds ALSA ASoC drivers for the Audio interfaces
     of the SH7760 SoC:
     
     Add driver for the SH7760 DMA engine (dmabrg)
     Add AC97 driver for HAC unit(s) found on SH7760/SH7780
     Add I2S driver for SSI unit(s) found on SH7760/SH7780
     Add a generic SH7760-AC97 machine driver.
     Hook it all up with the build system.
     
     Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
   - ASoC pxa2xx build support
     
     This patch builds ASoC pxa2xx support for Corgi, Spitz, Tosa and Poodle
     Zaurus machines.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC Samsung S3C24xx build
     
     This patch builds the Samsung S3C24xx audio DMA and I2S drivers.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
 + /soc/codecs/Makefile
   - ASoC codecs: build files
     
     This patch adds an ASoC Makefile and Kconfig for the WM8731, WM8750 and
     WM9712 codecs.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC WM8753 codec - build changes
     
     This patch adds the WM8753 codec driver to the kernel build system.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
 + /soc/pxa/Makefile
   - Add missing soc/pxa entries
     
     Added missing soc/pxa entries to build properly.
   - ASoC pxa2xx build support
     
     This patch builds ASoC pxa2xx support for Corgi, Spitz, Tosa and Poodle
     Zaurus machines.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
 + AC97 Codec
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - ac97 - fix various issues with AD1986/AD1986A support
     
     Previously, ac97_codec.c was coded to support AD1986 and AD1986A
     CODECs using code written for the AD1985 CODEC.  This allowed the
     LINE_OUT and HEADPHONE jacks to function properly, however register
     differences between the CODECs prevented line and microphone inputs
     from functioning.
     
     Specifically, this patch fixes issues with the following mixer
     controls:  'V_REFOUT', 'Spread Front to Surround and Center/LFE',
     'Exchange Front/Surround', 'Surround Jack Mode', and 'Channel Mode'.
     This patch removes the undocumented AD1888 control
     'High Pass Filter Enable' and adds the new control
     'Exchange Mic/Line In'.
     
     Signed-off-by: Randy Cushman <rcushman_linux@earthlink.net>
   - ac97 - Fix silent output problem with Cx20551 codec
     
     Fixed the silent output problem on laptops with Conexant Cx20551 codec
     chip, such as Packard-bell EasyNote A* series.
     
     The information was taken from ALSA bug#1134.
   - ac97 - Fix vt1617a build ops
     
     This patch connects the extra vt1616 controls for the vt1617a, which
     is necessary to control the rear speakers on e.g. a Shuttle SN25P.
     
     Signed-off-by: Daniel Jacobowitz <drow@false.org>
   - ac97 - fix AD shared shared jack control logic
     
     This patch fixes the control logic for shared
     Microphone in/Center+LFE out and Line in/Surround out jacks
     for Analog Devices AD1888, AD1980 and AD1985 AC '97 CODECs.
     
     Signed-off-by: Randy Cushman <rcushman_linux@earthlink.net>
   - ASoC: core and dapm headers
     
     This patch adds the ASoC and DAPM headers.
     
     Features:-
     
      o Defines Digital Audio Interface (DAI) API
      o Defines Codec, Platform and Machine API
      o Defines Dynamic Audio Power Management API
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - Remove obsolete snd_ac97_bus stuff from pci/ac97/Makefile
     
     Removed the obsolete snd_ac97_bus stuff from pci/ac97/Makefile.
   - ac97 - Fix MSI L720 laptop
     
     Fix internal speaker output of MSI L720 laptop with ALC655 codec.
   - ac97 - Smart 5.1 for VIA 1617a codec
     
     This patch provides a single 8 way enum called 'Smart 5.1 Select' with
     some reasonable names for each enum that allows the user to choose
     which of the 8 possible settings for vt1617a's version of what via
     calls 'Smart 5.1'.
     
     Signed-off-by: John Utz <john.utz@dmx.com>
   - ac97 - enables sound output through speakers on MSI S250 laptop
     
     Signed-off-by: Jerome Demange <jdemange@cict.fr>
   - ac97_codec - trivial fix for bit update functions
     
     This patch fixes a couple of bit update functions in
     alsa-kernel/pci/ac97/ac97_codec.c, which could possibly corrupt bits not
     in the given mask.
     
     Specifically, it'll clobber unset bits in the target that are not in the
     mask, when the corresponding bit in the given new value is set.
     
     Signed-off-by: James C Georgas <jgeorgas@rogers.com>
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
     
     Commit 2d4ba4a3b9aef95d328d74a17ae84f8d658059e2 introduced a dependency
     that was never meant to exist when the ac97_bus.c module was created.
     Move ac97_bus.c up the directory hierarchy to make sure it is built when
     selected even if sound is configured out so things work as originally
     intended.
     
     Signed-off-by: Nicolas Pitre <nico@cam.org>
     Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 sync: WorkStruct: make allyesconfig
     
     Fix up for make allyesconfig.
     
     Signed-Off-By: David Howells <dhowells@redhat.com>
   - 2.6 sync: fix broken merge
   - ac97 - fix malfunctioning mixer controls for AD1985
     
     This patch replaces the "V_REFOUT Enable" mixer switch control
     with a listbox control for the AD1985 CODEC.
     
     Previous patch "AD1888 mixer controls for DC mode" added
     controls that were propogated to multiple codecs.  For the
     AD1985 codec, the bits VREFH and VREFD function differently,
     preventing the "V_REFOUT Enable" control from setting V_REFOUT
     to Hi-Z.
     
     This patch also corrects an issue in which register bits relating
     to mixer controls "Surround Jack Mode" and "Channel Mode".
     The register bits controlled by these controls were being set
     at boot time to states inconsistent with the stored values of
     these controls.
     
     Signed-off-by: Randy Cushman <rcushman_linux@earthlink.net>
   - ac97 - Add Thinkpad X31 and R40 to AD1981x blacklist
     
     Added Thinkpad X31 and R40 to AD1981x line/HP-jack-sense blacklist
     for avoiding the harmful mixer controls.
     
   - ac97 - Make patch functions static
     
     Include ac97_patch.c from the main ac97_codec.c in order to make
     bunch of patch_*() functions static.  This helps optimization.
   - Fix ac97_codec.c patch for inclusion of ac97_patch.c
     
     The new ac97_codec.c includes ac97_patch.c.  Fixed the path.
   - ac97_codec (ALC655): add EAPD hack for MSI L725 laptop
     New PCI ID described and tested Spectr <spectr@gmail.com> .
   - Fix AC97 power-saving mode
     
     Fix the bug in AC97 power-saving mode that the power isn't turned on
     when power_save is set to 1 via sysfs during the power off state.
     
   - ac97: Identify CMI9761 chips.
   - Remove AC97 POP control for STAC9708/11
     
     The STAC9708/11 AC97 codecs implement the PCM Out Path & Mute bit in
     the General Purpose register (0x20:F), even though they don't implement
     the actual function in the mixer.
     
     Since the alsa tests for the function by toggling the bit and reading
     it back to see if it changed, it mistakenly creates a useless control.
     
     This patch explicitly removes the control when the codec is an
     STAC9708/11.
     
     I put the check in patch_sigmatel_stac9708_specific(), because I have
     an SBLive with this chip on it. I don't know if the STAC9758 or other
     codecs also behave this way. If they do, then this check could maybe go
     in patch_sigmatel_stac97xx_specific(), or some other more general
     function.
     
     Signed-off-by: James C Georgas <jgeorgas@rogers.com>
   - Improved delayed_work wrapper
     
     Improved delayed_work wrapper, to be built without patching.
   - ac97 - fix microphone and line_in selection logic
     
     This patch fixes the Microphone and LINE_IN select logic for
     Analog Devices surround codecs with shared jacks.  The existing
     code can never utilize the shared jacks for Microphone and LINE_IN
     due to the reversed jack selection logic.  The patched code
     correctly selects the shared jack for input if the "Channel Mode"
     selector does not specify that the jack is to be used for output.
     
     Specifically, in "2ch" mode the Center/LFE jack is used for
     microphone input and the Surround jack is used for LINE_IN,
     in "4ch" mode the Center/LFE jack is used for microphone input
     and the Surround jack is used for output, and in "6ch" mode
     both jacks are used for output.
     
     Signed-off-by: Randy Cushman <rcushman_linux@earthlink.net>
   - Include quirks from Ubuntu Dapper/Edgy/Feisty
     
     Included is a patch against current alsa-kernel hg tip adding
     quirks that Ubuntu Dapper/Edgy/Feisty contains.
     
     Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
   - ac97 - Suppress power-saving mode on non-supporting drivers
     
     Don't enable power-saving mode on drivers that don't support
     it.  The supporting drivers set AC97_SCAP_POWER_SAVE to scaps
     at creation of ac97 instance.
     
     Currently enable on the following drivers: intel8x0, intel8x0m,
     atiixp, atiixp-modem, via82xx and via82xx-modem.
     
     Also, a bit clean up of power-saving stuff:
     - Don't create an own workq
     - Remove superfluous ifdefs
     
   - Remove delayed work properly at free and suspend
     
     Remove delayed work properly at free and suspend in ac97 codec and
     ak4114 drivers.
   - ac97 - Fix potential negative array index
     
     Fix the case cidx2 >= 0 and cidx2 < 0 which may result in negative
     array index.
 + AC97 bus driver
   - ac97_bus power management
     
     This patch adds CONFIG_PM to the ac97_bus driver.
     
     Signed-off-by: Martin Langer <martin-langer@gmx.de>
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
     
     Commit 2d4ba4a3b9aef95d328d74a17ae84f8d658059e2 introduced a dependency
     that was never meant to exist when the ac97_bus.c module was created.
     Move ac97_bus.c up the directory hierarchy to make sure it is built when
     selected even if sound is configured out so things work as originally
     intended.
     
     Signed-off-by: Nicolas Pitre <nico@cam.org>
     Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - Fix broken build with ac97_bus module
     
     Build ac97_bus module properly, which was moved/renamed
     from pci/ac97.
 + AD1816A driver
   - ad1816a: Fix modprobe snd_mpu401 && modprobe snd_ad1816a
     
        The ad1816a driver fails if the mpu401 driver has been loaded first. This
     patch against linux 2.6.20 fixes it by just ignoring the MPU-401 device in
     that case, so that the rest of the sound card can be used. The ad1816a
     driver already handles the MPU-401 device being unavailable due to lack of
     resources in the same way.
     
     Signed-off-by: Rask Ingemann Lambertsen <rask@sygehus.dk>
   - sound/isa/ad1816a/ad1816a.c: check kmalloc() return value
     
     Check the return value of kmalloc() in function snd_card_ad1816a_pnp(),
     in file sound/isa/ad1816a/ad1816a.c.
     
     Signed-off-by: Amit Choudhary <amit2030@gmail.com>
 + AD1848 driver
   - Fix __devinit and __devexit issues with sound drivers
     
     Fix __devinit and __devexit issues with sound drivers.
     
     Resolves MODPOST warnings similar to:
     
     WARNING: sound/drivers/snd-dummy.o - Section mismatch: reference to .init.text:snd_dummy_probe from .data.rel.local between 'snd_dummy_driver' (at offset 0x0) and 'snd_dummy_controls'
     WARNING: sound/drivers/snd-mtpav.o - Section mismatch: reference to .init.text:snd_mtpav_probe from .data.rel.local between 'snd_mtpav_driver' (at offset 0x0) and 'snd_mtpav_input'
     WARNING: sound/drivers/snd-virmidi.o - Section mismatch: reference to .init.text:snd_virmidi_probe from .data.rel.local after 'snd_virmidi_driver' (at offset 0x0)
     
     Signed-off-by: Prarit Bhargava <prarit@redhat.com>
   - isa_bus: ad1848
     
     ad1848: port to isa_bus infrastructure
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + AD1889 driver
   - Remove IRQF_DISABLED for shared PCI irqs
     
     Fix IRQ flags for PCI devices.
     The shared IRQs for PCI devices shouldn't be allocated with
     IRQF_DISABLED.  Also, when MSI is enabled, IRQF_SHARED shouldn't
     be used.
     
     The patch removes unnecessary cast in request_irq and free_irq,
     too.
 + AK4114 receiver
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - ak4114 - Fix possible Oops with callbacks
     
     ak4114 code may trigger Oops when the parameters are changed without
     call of snd_ak4114_build().  Now it checks the existence of kctl
     element, and the workq is triggered after building the necessary
     kcontrols.
     
     Also, did some code clean up.
   - snd-ak4114: Fix two array overflows
     
     Fix the handling of the TXCSB registers cache. There was one array
     overflow in reg_write() and one in snd_ak4114_reg_write(). Thanks
     to David Binderman for reporting the latter.
     
     The second overflow probably doesn't matter much, given that the
     function snd_ak4114_reg_write() appears to be never called. I wonder
     why it exists and why it is exported.
     
     Signed-off-by: Jean Delvare <khali@linux-fr.org>
   - Add some more "const", but needs changes in i2c/other/ak4*
     
     Make data passed to ak4xxx_create "const".
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - Fix misc bugs in i2c/others/ak4114.c
     
     * correct register for "IEC958 Non-PCM Bitstream", "IEC958 DTS Bitstream"
       to use AK4114_REG_RCS0
     * correct check for control name: if (strstr(kctl->id.name, "Playback"))
     * correct check: if (!chip->init) in snd_ak4114_external_rate
     * added PCM control "IEC958 PPL Lock Status"
     
     Signed-off-by: Pavel Hofman <dustin@seznam.cz>
   - 2.6 sync: WorkStruct: make allyesconfig
     
     Fix up for make allyesconfig.
     
     Signed-Off-By: David Howells <dhowells@redhat.com>
   - Improved delayed_work wrapper
     
     Improved delayed_work wrapper, to be built without patching.
   - ak4114 - Use global workqueue
     
     Use global workqueue for simplicity instead of own workqueue.
   - ak4114 - Fix a typo in DIF2 bit definition
     
     Fixed a typo in AK4114_DIF2 bit definition.  This may fix some
     problems for Audiophile 192 and Juli boards.
   - Remove delayed work properly at free and suspend
     
     Remove delayed work properly at free and suspend in ac97 codec and
     ak4114 drivers.
 + AK4117 receiver
   - Add some more "const", but needs changes in i2c/other/ak4*
     
     Make data passed to ak4xxx_create "const".
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
 + AK4XXX AD/DA converters
   - Add some more "const", but needs changes in i2c/other/ak4*
     
     Make data passed to ak4xxx_create "const".
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - Add even more "const" to everything related to TLV
     
     Mark TLV data as "const"
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - ice1724 - Add PCM Playback Switch to Revo 7.1
     
     This patch adds the support of mute for front channels of M-Audio
     Revolution 7.1 (the DAC AK4381 features a mute bit).
     
     Signed-off-by: Pavel Hofman <dustin@seznam.cz>
   - Enable capture from line-in and CD on Revolution 5.1
     
     Enable capture from line-in and CD on the Revolution 5.1 card.
     
     This patch adds support for switching between the 5 input channels of
     the AK5365 ADC and modifies the Revolution 5.1 driver to make use of
     this facility.  Previously the capture channel was fixed to channel 0
     (microphone on the Revolution 5.1 card).
     
     Signed-off-by: Jochen Voss <voss@seehuhn.de>
 + ALI5451 driver
   - Add missing sysfs device assignment for ALSA PCI drivers
     
     Added the missing sysfs device assignment for ALSA PCI drivers.
     
   - ali5451 - Fix possible NULL dereference
     
     Reported by Eric Sesterhenn.
     Fix the wrong checks of extra voice pointer, which may cause NULL
     dereferences.
     
   - Add snd_pcm_group_for_each_entry() for code cleanup
     
     Added a new macro snd_pcm_group_for_each_entry() just for code cleanup.
     Old macros, snd_pcm_group_for_each() and snd_pcm_group_substream_entry(),
     are removed.
   - ali5451 - Code clean up, irq handler fix
     
     - Clean up ali5451.c, following the standard coding style, unneeded codes
       reduced, and removal of redundant variable initializations.
       Hungarian notation isn't fixed yet ;)
     - Fix irq handler to return IRQ_NONE properly for shared irqs.
       Also check the hardware availability in irq handler to avoid possible
       initialization races at loading the driver.
   - Remove IRQF_DISABLED for shared PCI irqs
     
     Fix IRQ flags for PCI devices.
     The shared IRQs for PCI devices shouldn't be allocated with
     IRQF_DISABLED.  Also, when MSI is enabled, IRQF_SHARED shouldn't
     be used.
     
     The patch removes unnecessary cast in request_irq and free_irq,
     too.
   - ali5451 - Fix invalid type of codec->irq field
     
     The irq field of struct snd_ali shouldn't be unsigned since it's
     uninitialized value is -1.
   - Various fixes for suspend/resume of ALSA PCI drivers
     
     - Check the return value of pci_enable_device() and request_irq()
       in the suspend.  If any error occurs there, disable the device
       using snd_card_disconnect().
     - Call pci_set_power_state() properly with pci_choose_state().
     - Fix the order to call pci_set_power_state().
     - Removed obsolete house-made PM codes in some drivers.
     
 + ALS4000 driver
   - Various fixes for suspend/resume of ALSA PCI drivers
     
     - Check the return value of pci_enable_device() and request_irq()
       in the suspend.  If any error occurs there, disable the device
       using snd_card_disconnect().
     - Call pci_set_power_state() properly with pci_choose_state().
     - Fix the order to call pci_set_power_state().
     - Removed obsolete house-made PM codes in some drivers.
     
 + ALSA sequencer
   - Fix possible deadlocks in sequencer at removal of ports
     
     Fix possible rwsem deadlocks in sequencer code at removal of
     sequencer ports.  The list_lock of port group can be double
     locked.
 + ALSA<-OSS emulation
   - 2.6 sync - [PATCH] mark struct file_operations const 9
     
     Many struct file_operations in the kernel can be "const".  Marking them const
     moves these to the .rodata section, which avoids false sharing with potential
     dirty data.  In addition it'll catch accidental writes at compile time
     to these shared resources.
     
     Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - Fix patches for addition of const to f_ops
   - Fix races in PCM OSS emulation
     
     Fixed the race among multiple threads accessing the OSS PCM
     instance concurrently by simply introducing a mutex for protecting
     a setup of the PCM.
     
   - getting rid of all casts of k[cmz]alloc() calls
     
     Run this:
     
         #!/bin/sh
         for f in $(grep -Erl "\([^\)]*\) *k[cmz]alloc" *) ; do
           echo "De-casting $f..."
           perl -pi -e "s/ ?= ?\([^\)]*\) *(k[cmz]alloc) *\(/ = \1\(/" $f
         done
     
     And then go through and reinstate those cases where code is casting pointers
     to non-pointers.
     
     And then drop a few hunks which conflicted with outstanding work.
     
     From: Robert P. J. Day <rpjday@mindspring.com>
   - header cleaning: don't include smp_lock.h when not used
     
     Remove includes of <linux/smp_lock.h> where it is not used/needed.
     Suggested by Al Viro.
     
     Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,
     sparc64, and arm (all 59 defconfigs).
     
     Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
   - re-include smp_lock.h where needed
     
     <linux/smp_lock.h> is needed for (un)lock_kernel() in the old ioctl
     compatibility code.
   - Fix hang-up at disconnection of usb-audio
     
     Fix hang-up at disconnection of usb-audio devices while accessing PCM.
     Don't handle PCM operations any more after shutdown flag is set.
     
 + AMD InterWave driver
   - sound/isa/gus/interwave.c: check kmalloc() return value
     
     Check the return value of kmalloc() in function snd_interwave_pnp(),
     in file sound/isa/gus/interwave.c.
     
     Signed-off-by: Amit Choudhary <amit2030@gmail.com>
   - Fix probe of non-PnP ISA devices
     
     isa_register_driver() returns an error if no device is found
     and it's no fatal error for the drivers with pnp support.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
   - [2.6.19-SYNC] Various drivers' irq handlers: kill dead code, needless casts
     
 + ARM AACI PL041 driver
   - arm header fix
     
     Cc: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
     
     Remove struct pt_regs * argument from irq handler.
     
 + ARM PXA2XX driver
   - Fix __devinit and __devexit issues with sound drivers
     
     Fix __devinit and __devexit issues with sound drivers.
     
     Resolves MODPOST warnings similar to:
     
     WARNING: sound/drivers/snd-dummy.o - Section mismatch: reference to .init.text:snd_dummy_probe from .data.rel.local between 'snd_dummy_driver' (at offset 0x0) and 'snd_dummy_controls'
     WARNING: sound/drivers/snd-mtpav.o - Section mismatch: reference to .init.text:snd_mtpav_probe from .data.rel.local between 'snd_mtpav_driver' (at offset 0x0) and 'snd_mtpav_input'
     WARNING: sound/drivers/snd-virmidi.o - Section mismatch: reference to .init.text:snd_virmidi_probe from .data.rel.local after 'snd_virmidi_driver' (at offset 0x0)
     
     Signed-off-by: Prarit Bhargava <prarit@redhat.com>
   - Fix irq handlers for recent kernels
     
     Fixed the irq handlers for recent kernels (removing pt_regs).
   - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
     
     Remove struct pt_regs * argument from irq handler.
     
   - [ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX
     
     This patch removes the unnecessary bit number from CKENnn_XXXX
     definitions for PXA, so that
     
             CKEN0_PWM0 --> CKEN_PWM0
             CKEN1_PWM1 --> CKEN_PWM1
             ...
             CKEN24_CAMERA --> CKEN_CAMERA
     
     Signed-off-by: eric miao <eric.y.miao@gmail.com>
     Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
 + ATIIXP driver
   - atiixp - Use quirk list helper function
     
     Clean up ac97_codec quirk using snd_pci_quirk_lookup().
   - atiixp - Add a parameter ac97_quirk
     
     Add an option to specify the AC'97 codec instead of
     probing.  This is a fix for bugzilla #7467.
     
     Signed-off-by: Dan Carpenter <error27@gmail.com>
   - ac97 - Suppress power-saving mode on non-supporting drivers
     
     Don't enable power-saving mode on drivers that don't support
     it.  The supporting drivers set AC97_SCAP_POWER_SAVE to scaps
     at creation of ac97 instance.
     
     Currently enable on the following drivers: intel8x0, intel8x0m,
     atiixp, atiixp-modem, via82xx and via82xx-modem.
     
     Also, a bit clean up of power-saving stuff:
     - Don't create an own workq
     - Remove superfluous ifdefs
     
 + ATIIXP-modem driver
   - ac97 - Suppress power-saving mode on non-supporting drivers
     
     Don't enable power-saving mode on drivers that don't support
     it.  The supporting drivers set AC97_SCAP_POWER_SAVE to scaps
     at creation of ac97 instance.
     
     Currently enable on the following drivers: intel8x0, intel8x0m,
     atiixp, atiixp-modem, via82xx and via82xx-modem.
     
     Also, a bit clean up of power-saving stuff:
     - Don't create an own workq
     - Remove superfluous ifdefs
     
 + AZT3328 driver
   - azt3328.c: small cleanup patch
     
     - change "PCM" mixer control (pre/post 3D) to "PCM Output Route"
     - improve snd_azf3328_debug_show_ports
     - less aggressive module init message
     - document Bass/Treble non-bug (prompted by user report - Thank You!!)
     - add some items to card description
     - add some I/O register documentation
     - enhance copyright
     
     Signed-off-by: Andreas Mohr <andi@lisas.de>
   - Fix conflicts between const and __devinitdata
     
     Marvin told with a depressed face,
       gcc doesn't like both __devinitdata and const in the same line.
     So, remove const from all over places now...
 + Adlib FM driver
   - isa_bus: adlib
     
     adlib: port to isa_bus infrastructure.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + Apple Onboard Audio driver
   - snd-aoa: fix onyx resume
     
     When the machine resumes the onyx codec might be in a weird state. Hence,
     simply fully reset it once (and keep the code to take it out of suspend in
     case the suspend of the codec chip survives a reset).
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - sound: aoa of_node_put and kfree cleanup
     
     This patch removes redundant argument checks for of_node_put() and kfree().
     
     Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
     Acked-by: Johannes Berg <johannes@sipsolutions.net>
   - 2.6 kernel sync
   - [POWERPC] sound: Constify & voidify get_property()
     
     Now that get_property() returns a void *, there's no need to cast it
     return value. Also, treat the return value as const, so we can
     constify get_property later.
     
     powerpc-specific sound driver changes.
     
     Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - [PATCH] aoa is pmac-only
     
     Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - create device symlink in snd-aoa
     
     create sysfs device symlinks for snd-aoa in /sys/class/sound/controlC0 This
     allows hald to recognize the device as sound device.  Furthermore it allows
     the desktop user to actually access the sound device nodes.  hald and
     related packages will modify the acl attributes.
     
     Fixes https://bugzilla.novell.com/show_bug.cgi?id=106294
     
     Signed-off-by: Olaf Hering <olaf@aepfle.de>
     Acked-by: Johannes Berg <johannes@sipsolutions.net>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - create driver symlink in snd-aoa /sys/bus/aoa-soundbus/devices/*/
     
     create sysfs driver symlink for snd-aoa in /sys/bus/aoa-soundbus/devices/*/
     
     Signed-off-by: Olaf Hering <olaf@aepfle.de>
     Acked-by: Johannes Berg <johannes@sipsolutions.net>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - 2.6 sync: WorkStruct: make allyesconfig
     
     Fix up for make allyesconfig.
     
     Signed-Off-By: David Howells <dhowells@redhat.com>
   - aoa i2sbus: Stop Apple i2s DMA gracefully
     
     This fixes the problem of getting extra bytes inserted at the
     beginning of a recording when using the Apple i2s interface and DBDMA
     controller.  It turns out that we can't just abort the DMA; we have to
     let it stop at the end of a command, and then wait for the S7 bit to
     be set before turning off the DBDMA controller.  Doing that for
     playback doesn't seem to be necessary, but doesn't hurt either.
     
     We use the technique used by the Darwin driver: make each transfer
     command branch to a stop command if the S0 status bit is set.  Thus we
     can ask the DMA controller to stop at the end of the current command
     by setting S0.
     
     The interrupt routine now looks at and clears the status word of the
     DBDMA command ring.  This is necessary so it can know when the DBDMA
     controller has seen that S0 is set, and so when it should look for the
     DBDMA controller being stopped and S7 being set.  This also ended up
     simplifying the calculation in i2sbus_pcm_pointer.
     
     Tested on a 15 inch albook.
     
     [Addition by Johannes]
     I modified this patch and added the suspend/resume bits to it to get my
     powermac into a decent state when playing sound across suspend to disk
     that has a different bitrate from what the firmware programs the
     hardware to.
     
     I also added the SNDRV_PCM_INFO_JOINT_DUPLEX flag because it seemed the
     right thing to do and I was looking at the info stuff.
     
     Signed-off-by: Paul Mackerras <paulus@samba.org>
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: set device pointer in pcms
     
     This patch makes a few whitespace cleanups and makes i2sbus assign the new
     struct device pointer in struct snd_pcm so that the proper device symlink
     shows up in sysfs.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: fix up i2sbus_attach_codec
     
     This patch changes i2sbus_attach_codec to implement a proper error handling
     strategy using labels to jump to the right part. Since it has an elaborate
     set-up sequence it also needs that tear-down, which I had hard-coded
     inbetween all the checks. This increases readability and should reduce .text
     size as well.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - sound: strlcpy is smart enough
     
     strlcpy already accounts for the trailing zero in its length
     computation, so there is no need to substract one to the buffer size.
     
     Signed-off-by: Jean Delvare <khali@linux-fr.org>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
   - [POWERPC] get_property returns const
     
     This just tidies up some of the remains.
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - [POWERPC] Rename get_property to of_get_property: sound
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - aoa: uevent: use add_uevent_var() instead of open coding it
     
     Make use of add_uevent_var() instead of (often incorrectly) open coding it.
     
     Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
     Signed-off-by: Eric Rannaud <eric.rannaud@gmail.com>
     Cc: Kay Sievers <kay.sievers@vrfy.org>
     Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - Add wrapper for of_get_property()
   - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
     
     Remove struct pt_regs * argument from irq handler.
     
   - [2.6.19-SYNC] Remove all inclusions of <linux/config.h>
     
   - Enable stereo line input for TAS codec
     
     Despite what the data sheet says in one place, to get stereo input
     from input A (line in), we have to clear the "input B monaural" bit in
     the ACR.
     
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - aoa: remove suspend/resume printks
     
     This just removes two useless printks.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - aoa: fix a sparse warning
     
     This fixes a warning sparse gives.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - snd-aoa-i2sbus: use MODULE_DEVICE_TABLE instead of plain MODULE_ALIAS
     
     This patch changes snd-aoa-i2sbus to use MODULE_DEVICE_TABLE instead of
     a hardcoded MODULE_ALIAS. Thanks to Sylvain Munaut for pointing this
     out.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
   - [POWERPC] Rename device_is_compatible to of_device_is_compatible
     
     for consistency with other Open Firmware interfaces (and Sparc).
     
     This is just a straight replacement.
     
     This leaves the compatibility define in place.
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - sound: Don't include i2c-dev.h
     
     Don't include <linux/i2c-dev.h> as it's not needed.
     
     Signed-off-by: Jean Delvare <khali@linux-fr.org>
 + Asihpi driver
   - Update to Audioscience asihpi driver
     
     * Update from hpklinux version 3.00 to 3.05.06
     * Support 64 bit kernel
     * Add ASI6600 PCI express, ASI6500 PCI cards
     * Update ASI87xx for MPEG layer 2/3 record, Add PAL tv
     * Add StreamRead/WriteBuf API,
     * Fix error in ALSA capture parameters
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - asihpi 3.07.04
     
     The bulk of this patch is addition of doxygen documentation to hpi.h and
     hpifunc.c. (hopefully coming to the end of this soon)
     
     Add several new adapter types ASI6618, ASI6518. ASI8900
     Bug fixes to ASI6416 DSP code
     Filtered out some more conditionally not compiled for ALSA.
     
     asihpi.c: experimental MMAP mode (disabled)
     hpidebug.h: simplify debug macros
     hpios_linux_kernel.h:  remove a layer of macros wrapping spinlocks
     hpicmn.c: pull more common code from hpi backends
     hpifunc.c: remove more obsolete functions
     hpimsgx.c: remove dead code
     hpios.h pOsReference now struct pci_dev* not void*
     hpi6205.c: use power of 2 buffers (REQUIRES matching firmware)
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - asihpi: remove deprecated kmem_cache_t
     
     Replace the deprecated kmem_cache_t with struct kmem_cache.
   - ALSA sanitization for ASIHPI driver
     
     Fixed coding styles in the last patch.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - add MODULE_FIRMWARE entries
     
     Add MODULE_FIRMWARE() entries, where appropriate.
   - bugfix and clean driver/pci/asihpi/hpi6205.[ch]
     
     Patch makes power of 2 buffering unconditional.
     and fixes incorrect buffer allocation when requested size was rounded up to a
     power of 2.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - asihpi fix 64 bit compile error
     
     Add missed conditional compilation in hpi.h for 64 bit build.
     Tweak struct HPI_RESOURCE so size is constant for 32/64 bit.  Update size
     check to reflect this.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - Fix build with the latest 2.6.19-git
     
     The IRQ handler is changed in 2.6.19-git (after rc1), so we have to
     adapt that style for the older kernels.
     
     - configure checks the new IRQ handler, adds missing headers.
     - Wrappers for request_irq(), free_irq() and get_irq_regs() are
       provided for older kernels.
     - For usb and parport drivers, need to patch the irq handlers.
     
     Also, fixed the build failure due to the change of namespace and
     kmem_cache_destroy().
   - asihpi driver 3.05.07
     
     asihpi.c: Fix problem with capture hanging. Tweak verbose logging options.
     
     hpi6205.c: Fix bus master buffer allocation
     
     hpidspcd.c: Remove unused code
     
     hpifunc.c: Doxygen comments
     
     hpi.h: change some datastructures to improve compatibility with older driver,
     versions.  *requires matching DSP firmware*.
     
     other files: minor changes.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
 + Avance Logic ALS300/300+ driver
   - Fix obsolete *_t typedefs
     
     Fixed obsolete *_t typedefs.  Now completely removed.
   - Disable debugging output for the ALS300 driver
     
     Disables debugging output in the ALS300 driver.
     Also contains a whitespace cleanup and a fix for a potential bug.
     
     Signed-off-by: Ash Willis <ashwillis@programmer.net>
   - Various fixes for suspend/resume of ALSA PCI drivers
     
     - Check the return value of pci_enable_device() and request_irq()
       in the suspend.  If any error occurs there, disable the device
       using snd_card_disconnect().
     - Call pci_set_power_state() properly with pci_choose_state().
     - Fix the order to call pci_set_power_state().
     - Removed obsolete house-made PM codes in some drivers.
     
 + BT87x driver
   - bt87x - Add ATI TV-Wonder to the supported list
     
     Added ATI TV-Wonder (1002:0001) to the supported list.
   - Fix alsa-devel ML address
     
     This replaces all occurences of alsa-devel@lists.s[ource]f[orge].net
     that a simple recursive grep found in the current HG ALSA repos by
     alsa-devel@alsa-project.org.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + CA0106 driver
   - Summary: snd-ca0106: Add support for X-Fi Extreme Audio.
     
     This card is just a normal SB Live 24bit,
     but under a different marketing name.
     
   - snd-ca0106: Updated Enum control names.
   - snd-ca0106: Add new card variant.
     Fixed ALSA bug#2326
     
   - snd-ca0106: Fix typos.
     
   - ca0106: Fix sound capture on Audigy LS via AC97.
     
     Fixes ALSA bug#2286
   - ca0106 - Add missing sysfs device assignment
     
     Added the missing device assignment before creating sysfs tree.
     This caused the insufficient device permissions.
   - Add snd_pcm_group_for_each_entry() for code cleanup
     
     Added a new macro snd_pcm_group_for_each_entry() just for code cleanup.
     Old macros, snd_pcm_group_for_each() and snd_pcm_group_substream_entry(),
     are removed.
   - Fix invalid assignment of PCI revision
     
     Fix the type of PCI revision to char from int and avoid invalid
     assignment with pointer cast.
   - PCI: Cleanup the includes of <linux/pci.h>
     
     I noticed that many source files include <linux/pci.h> while they do
     not appear to need it. Here is an attempt to clean it all up.
     
     Signed-off-by: Jean Delvare <khali@linux-fr.org>
     Cc: Badari Pulavarty <pbadari@us.ibm.com>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 + CMI8330 driver
   - sound/isa/cmi8330.c: check kmalloc() return value
     
     Check the return value of kmalloc() in function snd_cmi8330_pnp(),
     in file sound/isa/cmi8330.c.
     
     Signed-off-by: Amit Choudhary <amit2030@gmail.com>
   - Port the rest of ALSA ISA drivers to isa_driver
     
     Port the rest of ALSA ISA drivers to use isa_driver framework
     instead of platform_driver.
   - Fix __devinit and __devexit issues with sound drivers
     
     Fix __devinit and __devexit issues with sound drivers.
     
     Resolves MODPOST warnings similar to:
     
     WARNING: sound/drivers/snd-dummy.o - Section mismatch: reference to .init.text:snd_dummy_probe from .data.rel.local between 'snd_dummy_driver' (at offset 0x0) and 'snd_dummy_controls'
     WARNING: sound/drivers/snd-mtpav.o - Section mismatch: reference to .init.text:snd_mtpav_probe from .data.rel.local between 'snd_mtpav_driver' (at offset 0x0) and 'snd_mtpav_input'
     WARNING: sound/drivers/snd-virmidi.o - Section mismatch: reference to .init.text:snd_virmidi_probe from .data.rel.local after 'snd_virmidi_driver' (at offset 0x0)
     
     Signed-off-by: Prarit Bhargava <prarit@redhat.com>
   - isa_bus device/driver naming
     
     isa_bus: delete snd_ prefix from the (sysfs visible) device/driver names.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
   - Fix probe of non-PnP ISA devices
     
     isa_register_driver() returns an error if no device is found
     and it's no fatal error for the drivers with pnp support.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + CMIPCI driver
   - cmipci - Allow to disable integrated FM port
     
     The driver didn't allow to disable the integrated FM port (if available),
     and this annoyed people who don't want FM port.  Now fm_port=0 disables
     the FM port unconditionally.  fm_port=1 is used for enabling the integrated
     FM port (as default).
     
     Also fixed the documentation about this option.
     Fix ALSA bug#2491.
     
   - _snd_cmipci_uswitch_put doesn't set zero flags
     
     Playing with spdif output on cmipci i've noticed the SPDO5V option does
     not change appropriate bits the register.
     
     The _snd_cmipci_uswitch_put checks the change in flags in wrong way.
     If 'active' state of an option corresponds to a _zero_ bits in a hw
     register then function fails. The SPDO5V is the sample.
     In the most cases 'active' state of option is set through an non-zerio
     bits in a register. This case works fine.
     
     The fix attached.
     Unfortunately i was unable to change spdif output voltage anyway.
     Although the register changes right at least.
     
     From: Timofei V. Bondarenko <tim@ipi.ac.ru>
 + CREDITS file
   - 2.6 kernel sync
   - sync kernel subdirectory with 2.6 GIT tree
   - 2.6 kernel sync - kernel subdirectory
   - 2.6 GIT kernel sync
   - linux 2.6 code sync
 + CS4231 driver
   - Add snd_pcm_group_for_each_entry() for code cleanup
     
     Added a new macro snd_pcm_group_for_each_entry() just for code cleanup.
     Old macros, snd_pcm_group_for_each() and snd_pcm_group_substream_entry(),
     are removed.
   - isa_bus: cs4231
     
     cs4231: port to isa_bus infrastructure.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + CS4236+ driver
   - Port the rest of ALSA ISA drivers to isa_driver
     
     Port the rest of ALSA ISA drivers to use isa_driver framework
     instead of platform_driver.
   - isa_bus device/driver naming
     
     isa_bus: delete snd_ prefix from the (sysfs visible) device/driver names.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
   - Fix probe of non-PnP ISA devices
     
     isa_register_driver() returns an error if no device is found
     and it's no fatal error for the drivers with pnp support.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + CS46xx driver
   - remove unused header file: sound/pci/cs46xx/imgs/cwcemb80.h
     
     Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
   - PCI: Cleanup the includes of <linux/pci.h>
     
     I noticed that many source files include <linux/pci.h> while they do
     not appear to need it. Here is an attempt to clean it all up.
     
     Signed-off-by: Jean Delvare <khali@linux-fr.org>
     Cc: Badari Pulavarty <pbadari@us.ibm.com>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
 + CS5530 Cyrix/NatSemi VSA1 softaudio init
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
     
     Add support for Cyrix/NatSemi Geode CS5530 (VSA1).
     
     Signed-off-by Ash Willis <ashwillis@programmer.net>
 + CX88 driver
   - 2.6 GIT kernel sync
 + Conexant Riptide driver
   - Add missing sysfs device assignment for ALSA PCI drivers
     
     Added the missing sysfs device assignment for ALSA PCI drivers.
     
 + Digigram PCXHR driver
   - pcxhr - Minor optimization in trigger callback
     
     Minor optimization in trigger start callback.  This fixes a nasty
     compile warning, too.
 + Digigram VX Pocket driver
   - vxpocket: fix an if() condition
     
     Apply the patch to <= 2.6.16 versions, too.
   - 2.6 sync: [PATCH] pcmcia: conf.ConfigBase and conf.Present consolidation
     
     struct pcmcia_device *p_dev->conf.ConfigBase and .Present are set in almost
     all PCMICA driver right at the beginning, using the same calls but slightly
     different implementations. Unfiy this in the PCMCIA core.
     
     Includes a small bugfix ("drivers/net/pcmcia/xirc2ps_cs.c: remove unused
     label") from and Signed-off-by Adrian Bunk <bunk@stusta.de>
     
     Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
   - sound/pcmcia/vx/vxpocket.c: fix an if() condition
     
     It seems noone ever tried to use this driver with more than one device.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
 + Digigram VX core
   - Add even more "const" to everything related to TLV
     
     Mark TLV data as "const"
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
 + Documentation
   - Add description of imac-intel model
     
     Added the description of missing imac-intel model for hda-intel driver.
   - hda-codec - Add ALC861VD/ALC660VD support
     
     o Added ALC861VD support to patch_realtek.c under hda-intel
     
     o Added ALC660VD as a model of 861VD
     
     o Added pci quirks for Asus G1 as well as for two devices found in Realtek's
     driver to point at ALC660VD model (3stack-660)
     
     o Added pci quirk for Lenovo 3000 C200 - although untested, it should work
     with ALC861VD 3stack model
     
     o Changed preset id = 0x10ec0660 to point at new patch_alc861vd instead of
     patch_861
     
     o Organised the list of presets
     
     Signed-off-by: Jakub Schmidtke <sjakub@gmail.com>
   - hda-codec - Define pin configs for MacBooks
     
     Define pin configs for MacBook and MacBook Pro with STAC92xx codecs.
     The latter is detected automatically by checking codec SSID now.
     
     Also, fixed the documentation regarding available modeliof sigmatel
     codec chips.
     
   - hda-codec - Add HP BPC-D7000 support
     
     Add HP BPC-D7000 support.
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - hda-codec - Add AD1884 / AD1984 codec support
     
     Added the support of AD1884 and AD1984 codec chips.
     Also experimental quirks for Thinkpad T61/X61 laptops with AD1984.
   - Fix documentation of ASoC
     
     Fixed obsolete *_t typedefs in ASoC documentation.
   - hda-codec - Use snd_pci_quirk_lookup() for board config lookup
     
     Use snd_pci_quirk_lookup() for looking up a board config table.
     The config table is sorted in numerical order of PCI SSIDs.
   - ASoC: documentation & maintainer
     
     This patch adds documentation describing the ASoC architecture and a
     maintainer entry for ASoC.
     
     The documentation includes the following files:-
     
     codec.txt: Codec driver internals.
     
     DAI.txt: Description of Digital Audio Interface standards and how to
     configure a DAI within your codec and CPU DAI drivers.
     
     dapm.txt: Dynamic Audio Power Management.
     
     platform.txt: Platform audio DMA and DAI.
     
     machine.txt: Machine driver internals.
     
     pop_clicks.txt: How to minimise audio artifacts.
     
     clocking.txt: ASoC clocking for best power performance.
     
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - hda-codec - Add support for Medion laptops
     
     This patch adds audio support for Medion's line of laptops,
     based on code shipped with the laptops.  Microphone support is
     still being explored.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Allow model=generic always for generic parser
     
     Accept model=generic option to specify the generic parser regardless
     of codec chips.  This is helpful for testing and debugging.
   - hda-codec - Add support for Sigmatel STAC9202/9250/9251 codecs
     
     This patch adds support for Gateway laptops based on the
     Sigmatel STAC9250 codecs, as well as basic support for
     STAC9202/9250/9251 codecs.  Some Gateway systems require
     probe_mask=1 to work.  More work to be done prior to alsa 1.0.14
     final.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add support for Samsung Q1 Ultra
     
     This adds support for the Samsung Q1 Ultra tablet pc.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - Documentation/sound/alsa/DocBook: typos
     
     Some typos in Documentation/sound/alsa/DocBook.
     
     Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
   - hda-codec - more systems for Analog Devices
     
     This patch adds support for more systems using Analog Devices codecs.
     
         Asus P5B-DLX - AD1988
         Toshiba U205 - AD1981
         Lenovo M55 - AD1986
         Samsung R55 - AD1986
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - Add Native Instrument usb audio device support
     
     Add snd-usb-caiaq driver to support caiaq usb-audio devices from
     Native Instrument:
     	* Native Instruments RigKontrol2
     	* Native Instruments Kore Controller
     	* Native Instruments Audio Kontrol 1
     	* Native Instruments Audio 8 DJ
     
     Signed-off-by: Daniel Mack <daniel@caiaq.org>
     Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
   - hda-codec - Add support of newer version of Intel iMac
     
     Added the pin configs for newer version of Intel iMac.
     The information provided by Ivan N. Zlatev <contact@i-nz.net>.
   - atiixp - Add a parameter ac97_quirk
     
     Add an option to specify the AC'97 codec instead of
     probing.  This is a fix for bugzilla #7467.
     
     Signed-off-by: Dan Carpenter <error27@gmail.com>
   - make sound/core/control.c:snd_ctl_new() static
     
     Now that everyone uses snd_ctl_new1() and noone is using snd_ctl_new()
     anymore, we can make it static.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - hda-codec - Add asus model to ALC861 codec
     
     This patch adds support for Asus laptops (for example: Asus
     A6Rp-AP002).
     
     Signed-off-by: Mariusz Domanski <mariook@wp.pl>
   - Add description about probe_mask option for snd-hda-intel
     
     Added a brief description about probe_mask option for snd-hda-intel.
   - 2.6 sync: Fix typos in /Documentation : 'U-Z'
     
     This patch fixes typos in various Documentation txts. The patch
     addresses some words starting with the letters 'U-Z'.
     
     Looks like I made it through the alphabet...just in time to start over again
     too!  Maybe I can fit more profound fixes into the next round...?  Time
     will +tell. :)
     
     Signed-off-by: Matt LaPlante <kernel1@cyberdogtech.com>
     Acked-by: Randy Dunlap <rdunlap@xenotime.net>
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - 2.6 sync: all remaining one line changes
   - Fix typo and add entry to documentation
     
     This patch adds the macpro and fixes a typo in the ALC882 section of
     ALSA-Configuration.txt.
     
     Signed-off-by:  Tobin Davis <tdavis@dsl-only.net>
   - ASoC documentation updates
     
     This patch updates the documentation for ASoC to reflect the recent
     changes in API between 0.12.x and 0.13.x
     
     Changes:-
     
      o Removed all reference to old API's.
      o Removed references and examples of automatic DAI config and matching.
      o Fixed 80 char line length on some files.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - cmipci - Allow to disable integrated FM port
     
     The driver didn't allow to disable the integrated FM port (if available),
     and this annoyed people who don't want FM port.  Now fm_port=0 disables
     the FM port unconditionally.  fm_port=1 is used for enabling the integrated
     FM port (as default).
     
     Also fixed the documentation about this option.
     Fix ALSA bug#2491.
     
   - mpu401 - Add MPU401_INFO_UART_ONLY bitflag
     
     Added MPU401_INFO_UART_ONLY bitflag to avoid issueing UART_ENTER command
     at opening streams.  Some devices support only UART mode and give errors
     to UART_ENTER.
     
     A new module option, uart_enter, is added to snd-mpu401 driver.
     For UART-only devices, set uart_enter=0.
   - Add snd-portman2x4 driver for Midiman Portman 2x4 MIDI device
     
     snd-portman2x4 driver supports Midiman Portman 2x4 parallel port
     MIDI device.
     
     Signed-off-by: Matthias Koenig <mkoenig@suse.de>
   - hda-codec - Add support for MacBook Pro 1st generation
     
     Fix audio on Macbook Pro 1st generation.
     
     Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
   - HDA: Add support for Gateway NX860
     
     This patch adds support for the Gateway NX860 system.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
     
     Add support for Cyrix/NatSemi Geode SC5530 (VSA1).
     The driver is snd-cs5530.
     
     Signed-off-by Ash Willis <ashwillis@programmer.net>
   - ice1724 - Add support of M-Audio Audiophile 192
     
     Added the (experimental) support of M-Audio Audiophile 192 board.
     Currently, the analog and the digital playbacks seem working fine.
     The inputs seem not working as far as I've tested yet.
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
     
     This patch adds support for the DAI BCLK to be generated by multiplying
     Rate * Channels * Word Size (RCW).
     
     This now gives 3 options for BCLK clocking and synchronisation :-
     
      1. BCLK = Rate * x
     
      2. BCLK = MCLK / x
     
      3. BCLK = Rate * Chn * Word Size.  (New)
     
     Changes:-
     
      o Add support for RCW generation of BCLK
      o Update Documentation to include RCW.
      o Update DAI documentation for label = value DAI modes.
      o Add RCW support to wm8731, wm8750 and pxa2xx-i2s drivers.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Fix irq handler arguments in documents
     
     Fixed the irq handler arguments in documents (removing pt_regs).
   - hda-codec - Add ALC861VD Lenovo support
     
     - Added ALC861VD Lenovo support (17aa:3802, 17aa:2066)
     - Modify alc_subsystem_id
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - hda-codec - Fix pin configs for Intel Macs
     
     * adds the pinconfigs for all 5 Apple boards and 14 Subsystem IDs
       (support for possibly all iMac, Mac, MacMini etc etc)
     * adds "intel-mac-v1" to v5 models which replace the current
     * reflects changes in Alsa-Configuration.txt
     
     Signed-off-by: Ivan N. Zlatev <contact@i-nz.net>
   - hda-codec - Clevo M540JE, M550JE laptops (Nvidia MCP51 chipset, ALC883 codec)
     
     We need to enable External Amplifier on this laptops. This patch basicly
     adds laptop-eapd model to ALC883 codec.
     
     Signed-off-by: Andrew L. Neporada <nepal@asplinux.ru>
   - hda-codec - Add support for Sony UX-90s
     
     Added the model entry (model=hippo) for Sony UX-90s with ALC262 codec.
     Although the device has no SPDIF output, the hippo model adds a
     PCM output, but it must be harmless.
   - hda-intel - Disable MSI support as default
     
     Disable MSI support on HD-audio driver as default since there
     are too many broken devices.
     The module option is changed from disable_msi to enable_msi,
     too.  For turning MSI support on, pass enable_msi=1, instead.
     
   - Remove IRQF_DISABLED for shared PCI irqs
     
     Fix IRQ flags for PCI devices.
     The shared IRQs for PCI devices shouldn't be allocated with
     IRQF_DISABLED.  Also, when MSI is enabled, IRQF_SHARED shouldn't
     be used.
     
     The patch removes unnecessary cast in request_irq and free_irq,
     too.
   - Fix typos in documents
     
     Sync with 2.6.19-git tree.
     Fix typos in documents, removed obsolete DEVFS stuff.
     
   - Add description about spdif_aclink option for snd-intel8x0
     
     Added a description about spdif_aclink option for snd-intel8x0 driver
     in ALSA-Configuration.txt.
   - hda-codec - Add toshiba model to ALC861 codec
     
     This patch adds support for Toshiba laptops.  Code is from
     RealTek's alsa-driver-1.0.12-4.05b tree.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add new modesl for Realtek codecs
     
     Changes from Realtek driver:
     - New models hippo and hippo_1 for ALC262
     - New models tagra-dig and tagra-2ch-dig for ALC883
     - New id for ALC660 codec chip
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - hda-codec - Add support for Fujitsu PI1556 Realtek ALC880
     
     This patch adds support for the Fujitsu PI1556 laptop.
     
     Issue:  Volume knob on system maxes out lower than alsamixer (0x35 vs 0x40).
     Everything else works, and audio quality is good at 0x35.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add asus-laptop model for ALC861 (ALC660)
     
     Added a new model "asus-laptop" for ASUS F2*/F3* laptops
     with ALC861 (equivalent with ALC660) codec chip.
     Also fixed the model for PCI SSID 1043:1338.
     
     Corresponding to ALSA bug#2480.
 + Dreamcast AICA sound (pcm) driver
   - Add ALSA support for the SEGA Dreamcast PCM device
     
     ALSA support for the SEGA Dreamcast Yamaha AICA sound device (pcm)
     
     This patch adds ALSA sound support for pcm playback on two channels on
     the SEGA Dreamcast built-in sound device (the Yamaha AICA)
     
     Add driver for the AICA sound device built into the SEGA Dreamcast
     
     Hook it all up with the build system.
     
     Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk>
   - Add entries for sh/aica driver
     
     Added the detection of SuperH archs, added the entries for sh/aica
     driver.
 + EMU10K1/EMU10K2 driver
   - emu10k1: fix typo
     
     fix a typo
   - emu10k1 - Fix ABI for older ld10k1
     
     Fix ABI for older ld10k1.  When no EMU10K1_PVERSION ioctl is issued,
     the driver accepts ioctls with the old struct size without TLV information.
     Also, changed the struct field to make the conversion easier from the
     old to the new structs.
   - Fix a typo in Makefile
     
     From: Willy Tarreau <w@1wt.eu>
   - emu10k1: fix request_firmware() parameters on older kernels
     
     On 2.4 kernels, request_firmware() takes a device name instead of a
     pointer to struct device.
   - snd_emu10k1: Added support for 14dB Attenuation PADS on DACs and ADCs.
   - snd-emu10k1: Update Enum naming.
   - snd-emu10k1: Fix capture for one variant.
     
     Fixes ALSA bug#324
     
   - snd-emu10k1: Added support for emu1010, including E-Mu 1212m and E-Mu 1820m
   - Summary: snd-emu10k1: Prevent E-Mu 1010 Notebook card from hanging PC.
     
     E-Mu 1010 is not currently supported yet. Needs development work.
   - Fix invalid assignment of PCI revision
     
     Fix the type of PCI revision to char from int and avoid invalid
     assignment with pointer cast.
   - emu10k1 - Fix compile warning
     
     Fixed a compile warning regarding print format for size_t.
   - emu10k1 - Fix STAC9758 front channel
     
     For some time now, some users of STAC9758 (emu10k1) would have no sound on
     their front channels. This can be fixed (at least for me) by unmuting  head
     phone volume and setting it to 0dB before removing the "Front Playback"
     control. For details, cf.
     https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2308
     Find the appropriate patch attached.
     
     Credits to: Raymond
     
     Signed-off-by: Rolf Stefan Wilke <stefan.wilke@uni-ulm.de>
   - snd-emu10k1: Add emu1010 internal clock rate control for 44100 or 48000.
   - snd-emu10k1: emu1010: replace long udelay with msleep.
   - emu10k1: Introduce header file for p17v chip.
   - emu10k1: Add Audio capture support for Audigy 2 ZS Notebook.
     
     Implement functionallity in order to fixe ALSA bug#2058.
   - emu10k1: Rename the digital optical capture control for the Audigy 2 ZS
     Notebook.
     
     Digital playback and capture now works, but it is not bit accurate because it
     passes through a resampler.
     Bit accurate playback and capture will be implemented later via the p17v.
   - emu10k1: Update registers defines for the Audigy 2/emu10k2.5
   - emu10k1: Fix outl() in snd_emu10k1_resume_regs()
     
     The emu10k1 driver saves the A_IOCFG and HCFG register on suspend and restores
     it on resumes. Unfortunately, this doesn't work as the arguments to outl() are
     reversed.
     
     Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
 + ENS1370/1+ driver
   - ens1371 - Clean up quirks
     
     Clean up quirks in snd-ens1371 driver using snd_pci_quirk_lookup().
 + ES1688 driver
   - es1688 - code clean-up
     
     Seperate out the legacy probing into its own function, improving
     readability.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
   - isa_bus: es1688
     
     es1688: port to isa_bus infrastructure. very slight reorganization of
     the auto-probe code to be a bit easier on the eye (if not the senses).
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + ES18xx driver
   - Port the rest of ALSA ISA drivers to isa_driver
     
     Port the rest of ALSA ISA drivers to use isa_driver framework
     instead of platform_driver.
   - isa_bus device/driver naming
     
     isa_bus: delete snd_ prefix from the (sysfs visible) device/driver names.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
   - Fix probe of non-PnP ISA devices
     
     isa_register_driver() returns an error if no device is found
     and it's no fatal error for the drivers with pnp support.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + ES1968 driver
   - es1968 - Fix stuttering capture
     
     Looks like the buffer size for the stereo capture has to be a
     power of two.  Now added a constraint to buffer bytes.
     Also removed unnecessary #if 0 lines.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + Echoaudio driver
   - echoaudio, add TLV support
     
     This patch adds TLV support to the echoaudio driver.
     
     All gains are in the range -127dB to +6dB with steps of 1dB, and -128 is
     mute. VU-meters levels go from -128 to 0dB. The input gain of the Layla20
     ranges from -25dB to +25dB in steps of 0.5dB.
     
     Signed-off-by: Giuliano Pochini <pochini@shiny.it>
   - Update echoaudio patches
     
     Updated echoaudio patches due to addition of TLV support.
   - Add missing sysfs device assignment for ALSA PCI drivers
     
     Added the missing sysfs device assignment for ALSA PCI drivers.
     
   - Fix potential NULL pointer dereference in echoaudio midi
     
     Fix races between the timer handler and the close function.
     
     Signed-off-by: Giuliano Pochini <pochini@shiny.it>
   - echoaudio: fix compilation on older kernels
     
     Fix reading the PCI subsystem device ID which is not yet a member of the
     pci device structure on 2.2.x kernels.
   - [PATCH] kmemdup: some users
     
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - echo3g_dsp.c shouldn't include #include <linux/irq.h>
     
     Despite being under linux/, linux/irq.h shouldn't be #include'd by arch
     independent code.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - echoaudio - increase sleep time at loading firmware
     
     The new ASIC code needs more time to set up.
     (Note: the driver still works fine with the old firmware after this change.
     The opposite is not true.)
     
     From: Giuliano Pochini <pochini@shiny.it>
 + GUS Classic driver
   - isa_bus: gusclassic
     
     gusclassic: port to isa_bus infrastructure
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + GUS Extreme driver
   - isa_bus: gusextreeme
     
     gusextreme: port to isa_bus infrastructure
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
   - gusextreme: set codec_flag
     
     The gusextreme driver neglects to set the gus->codec_flag meaning
     snd_gf1_pcm_new() allocates a second "PCM Playback Volume" control,
     which makes the driver fail to load.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
 + GUS Library
   - sound/isa/gus/gus_main.c: Use abs() instead of x < 0 ? -x : x.
     
     Signed-off-by: Peter Eriksen <s022018@student.dtu.dk>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
 + GUS MAX driver
   - Port the rest of ALSA ISA drivers to isa_driver
     
     Port the rest of ALSA ISA drivers to use isa_driver framework
     instead of platform_driver.
   - isa_bus device/driver naming
     
     isa_bus: delete snd_ prefix from the (sysfs visible) device/driver names.
     
     Signed-off-by: Rene Herman <rene.herman@gmail.com>
   - [2.6.19-SYNC] Various drivers' irq handlers: kill dead code, needless casts
     
 + Generic drivers
   - Clean up serial-u16500.c
     
     Remove uesless typedefs and clean up the code a bit to follow
     the standard coding style.
   - sound: fix incorrect use of platform_device_register()
     
     The platform_device allocated by platform_device_alloc()
     should be added to the device hierarchy by platform_device_add()
     instead of platform_device_register().
     
     Otherwise it will hit WARN_ON() in platform_device_register().
     by illegal refcount.
     
     This patch fixes such incorrect usages in portman2x4 and mts64 drivers.
     Also it removes unnecessary trailing whitespaces.
     
     Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
   - pc-speaker driver for 2.6.19
     
     - Rediff against 2.6.19
     - Do not pass "struct pt_regs" in an IRQ handlers,
       as per 2.6.19
     
     Signed-off-by: Stas Sergeev <stsp@aknet.ru>
   - Add even more "const" to everything related to TLV
     
     Mark TLV data as "const"
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - [PATCH] NULL noise removal
     
     
     Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
     
     Commit 2d4ba4a3b9aef95d328d74a17ae84f8d658059e2 introduced a dependency
     that was never meant to exist when the ac97_bus.c module was created.
     Move ac97_bus.c up the directory hierarchy to make sure it is built when
     selected even if sound is configured out so things work as originally
     intended.
     
     Signed-off-by: Nicolas Pitre <nico@cam.org>
     Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - make snd-aloop loopback device work
     
     the snd-aloop device is a full-duplex loopback device, that can
     be used to connect 2 apps together, so that each apps output
     gets the input of the other app.
     
     the first app forces the second app to use its settings, so
     no rate, format or channel number conversion is done.
     
     examples (hw:0 is loopback, !default is real soundcard / dmix):
     
     capture output from other apps to hdd:
     aplay -D hw:0,0 play.wav
     arecord -D hw:0,1 record.wav
     
     the same:
     aplay -D hw:0,1 play.wav
     arecord -D hw:0,0 record.wav
     
     or have more fun:
     ecasound -f:16,2,48000 -i:alsahw,0,1,0 &
     ecasound -f:16,2,48000 -i:alsahw,0,1,1 &
     ecasound -f:16,2,48000 -i:alsahw,0,1,2 &
     ...
     now open up to 8 oss apps _without_ aoss, sit back and relax.
     
     Signed-off-by: Ahmet Ä°nan <ainan <at> mathematik.uni-freiburg.de>
   - portman2x4 - do not use irqsave/irqrestore in IRQ handler
     
     Replace spin_lock_irqsave/spin_unlock_irqrestore with
     spin_lock/spin_unlock in IRQ handler.
     
     Signed-off-by: Matthias Koenig <mkoenig@suse.de>
   - Add snd-portman2x4 driver for Midiman Portman 2x4 MIDI device
     
     snd-portman2x4 driver supports Midiman Portman 2x4 parallel port
     MIDI device.
     
     Signed-off-by: Matthias Koenig <mkoenig@suse.de>
   - Move portman2x4 driver to alsa-kernel tree.
   - Fix __devinit and __devexit issues with sound drivers
     
     Fix __devinit and __devexit issues with sound drivers.
     
     Resolves MODPOST warnings similar to:
     
     WARNING: sound/drivers/snd-dummy.o - Section mismatch: reference to .init.text:snd_dummy_probe from .data.rel.local between 'snd_dummy_driver' (at offset 0x0) and 'snd_dummy_controls'
     WARNING: sound/drivers/snd-mtpav.o - Section mismatch: reference to .init.text:snd_mtpav_probe from .data.rel.local between 'snd_mtpav_driver' (at offset 0x0) and 'snd_mtpav_input'
     WARNING: sound/drivers/snd-virmidi.o - Section mismatch: reference to .init.text:snd_virmidi_probe from .data.rel.local after 'snd_virmidi_driver' (at offset 0x0)
     
     Signed-off-by: Prarit Bhargava <prarit@redhat.com>
   - Fix a typo in __dev* changes in portman2x4.c
     
     Fix a typo in the last __dev* changes in portman2x4.c.
     
   - Fix irq handlers for recent kernels
     
     Fixed the irq handlers for recent kernels (removing pt_regs).
   - Fix build with the latest 2.6.19-git
     
     The IRQ handler is changed in 2.6.19-git (after rc1), so we have to
     adapt that style for the older kernels.
     
     - configure checks the new IRQ handler, adds missing headers.
     - Wrappers for request_irq(), free_irq() and get_irq_regs() are
       provided for older kernels.
     - For usb and parport drivers, need to patch the irq handlers.
     
     Also, fixed the build failure due to the change of namespace and
     kmem_cache_destroy().
   - portman2x4 code cleanup
     
     - changed code structure to mirror the one of the mts64.c driver
       for better maintenance
     - added proper handling of platform device
     - general cleanup (no CamelCase names)
     
     Signed-off-by: Matthias Koenig <mkoenig@suse.de>
   - portman2x4 - Fix callbacks
     
     Add no-op open/close callbacks to avoid Oops.
     
     Signed-off-by: Matthias Koenig <mkoenig@suse.de>
   - Fix trailing spaces in pcsp driver
     
     Regenerated the volume tables without a trailing spaces.
     
     Signed-off-by: Stas Sergeev <stsp@aknet.ru>
 + HDA Codec driver
   - hda-codec - Fix 8-channel auto-configuration
     
     Fix the auto-configuration of 8-channel devices.  The sequence numbers
     of usual 7.1 outputs are: 0/1/2/4 = Front/CLFE/Rear/Side
   - hda-intel - Add ATI RS780,R600 HDMI audio support
     
     This patch is for ATI RS780 and R600 HDMI support.
     
     Signed-off-by: Wolke Liu <wolke.liu@amd.com>
   - snd_hda_intel: fix for intel imac
     
     Add handling of Intel-iMac-specific pinconfig of the sound card.
     Intel-iMac now handled as a separated subsystem.
     
     Signed-off-by: Sylvain FORET <sylvain.foret@anu.edu.au>
   - hda-codec (realtek): add support for MacPro series workstations
     
     This patch adds limited support for Intel-based MacPro workstations.
     Currently, the front headphone jack is not functioning, but line out
     and line in are working.  S/PDIF not tested.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add ALC861VD/ALC660VD support
     
     o Added ALC861VD support to patch_realtek.c under hda-intel
     
     o Added ALC660VD as a model of 861VD
     
     o Added pci quirks for Asus G1 as well as for two devices found in Realtek's
     driver to point at ALC660VD model (3stack-660)
     
     o Added pci quirk for Lenovo 3000 C200 - although untested, it should work
     with ALC861VD 3stack model
     
     o Changed preset id = 0x10ec0660 to point at new patch_alc861vd instead of
     patch_861
     
     o Organised the list of presets
     
     Signed-off-by: Jakub Schmidtke <sjakub@gmail.com>
   - hda-codec - Define pin configs for MacBooks
     
     Define pin configs for MacBook and MacBook Pro with STAC92xx codecs.
     The latter is detected automatically by checking codec SSID now.
     
     Also, fixed the documentation regarding available modeliof sigmatel
     codec chips.
     
   - hda-codec - Add HP BPC-D7000 support
     
     Add HP BPC-D7000 support.
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - hda-codec - Add support for ASUS A8J modem
     
     This patch adds support for the ASUS A8J Series 56k Modem (Motorola SM56)
     
     Signed-off-by: Christian Rothlaender <christian@rothlaender.net>
   - hda-codec - Add AD1884 / AD1984 codec support
     
     Added the support of AD1884 and AD1984 codec chips.
     Also experimental quirks for Thinkpad T61/X61 laptops with AD1984.
   - hda-codec - Add quirk for MSI S420
     
     Add a quirk for MSI S420 (based on a guess work).
     
     From: Baruch Even <baruch@ev-en.org>
   - hda-codec - Use snd_pci_quirk_lookup() for board config lookup
     
     Use snd_pci_quirk_lookup() for looking up a board config table.
     The config table is sorted in numerical order of PCI SSIDs.
   - hda-codec - Add support for Medion laptops
     
     This patch adds audio support for Medion's line of laptops,
     based on code shipped with the laptops.  Microphone support is
     still being explored.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add model entry for ASUS U5F laptop
     
     Added a model entry for ASUS U5F laptop with AD1986A codec.
     
   - hda-codec - Add missing comma
     
     Added a missing comma in the medion patch.
   - hda-codec - Allow opening SPDIF while analog dup mode
     
     Allow opening the dedicated SPDIF stream while running on analog dup
     mode.  Then the SPDIF stream is once reset and assigned for the new
     stream.  It's useful for exclusive SPDIF output like AC3/DTS.
     (In the former version, you had to close once the analog stream to
      play the exclusive digital stream.)
   - hda-intel - Merge hda-codec module to a single module
     
     Merge hda-codec module to a single hda-intel module since this is the
     only user right now.  Although hda-codec stuff is designed to be used
     universally from different controller drivers, currently only one
     controller interface (and compatibles) are used.  So, let's merge them
     to a single module to save memory.
   - hda-codec - Code clean up
     
     Trivial code clean-ups to follow the standard coding styles.
   - hda-codec - Add support for Asus A8JN Laptop
     
     This patch adds support for the Asus A8JN Laptop.
     
     Other modes were tested, this one worked best.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add line_out_type to auto_pin_cfg struct
     
     Added line_out_type field to auto_pin_cfg struct to provide the
     pin type of default line_outs.
   - hda-codec - Fix output pin types in auto configuration
     
     Use PIN_HP output type for HP pin widgets accordingly, instead of
     always applying PIN_OUT.
   - hda: add sigmatel 9205 eapd support
     
     Adds support for handling EAPD on 9205 codecs
     
     Signed-off-by: Matt Porter <mporter@embeddedalley.com>
   - hda-codec - Add quirk for Turbo-X Coeus G610P
     
     This patch adds the Turbo-X Coeus G610P to the alc880 config table,
     based on user provided information.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Allow model=generic always for generic parser
     
     Accept model=generic option to specify the generic parser regardless
     of codec chips.  This is helpful for testing and debugging.
   - hda-codec - Add missing Mic Boost for AD1986A codec
     
     Added the missing "Mic Boost" switch for AD1986A codec.
     This influences largely on the recording level of mic-input on some boards.
     
   - hda-codec - Fix logic error in headphone mute for Conexant codecs
     
     This patch fixes a logic error introduced in the previous patch.
     Without it, speaker automute mutes the speakers when headphones are
     removed and unmutes when headphones are plugged in.
     
     This was reported by Gregorio Guidi after getting the earlier patch
     off this mailing list.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Change default config for Asus P5GD1
     
     This patch changes the default configuration for the Asus P5GD1
     motherboard from 5stack to asus, as reported by stelek on
     linuxquestions.org
     	http://www.linuxquestions.org/questions/showthread.php?p=2556497#post2556497
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add support for Toshiba M105 to Realtek patch
     
     This patch adds support for the Toshiba M105-S3041 laptop (ALC861).
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add support for Sigmatel STAC9202/9250/9251 codecs
     
     This patch adds support for Gateway laptops based on the
     Sigmatel STAC9250 codecs, as well as basic support for
     STAC9202/9250/9251 codecs.  Some Gateway systems require
     probe_mask=1 to work.  More work to be done prior to alsa 1.0.14
     final.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add support for Samsung Q1 Ultra
     
     This adds support for the Samsung Q1 Ultra tablet pc.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)
     
     Recognize the Realtek ALC883 chip on MSI K9A Platinum motherboards (model
     no.  MS-7280), enabling full sound capabilities.
     
     Error messages seen before this patch:
     
     cannot find the slot for index 0 (range 0-0)
     hda-intel: Error creating card!
     HDA Intel: probe of 0000:00:14.2 failed with error -12
     
     [akpm@osdl.org: updated to match recent ALSA table changes]
     Signed-off-by: Leonard Norrgard <leonard.norrgard@refactor.fi>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - hda-codec - Add suppoprt for Asus M2N-SLI motherboard
     
     This patch adds a cfg_tbl to the ad1988 code with the Asus M2N-SLI as
     it's first member.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add Sony VGC-LA1 to patch_sigmatel.c
     
     This patch adds the Sony Vaio VGC-LA1 to the stac9872_cfg_tbl.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Conexant improvements
     
     This patch further improves on the Conexant Audio driver.
     Adds support for Fujistu Siemens Si1520 series laptops.
     Adds support for mic/line in on CX20549 based systems (aka 5045).
     removes duplicated or unused controls (gpio, spdif) from test model.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Code clean up of patch_sigmatel.c
     
     - Remove superfluous array member in stac9205_dmic_nids[]
     - Use ARRAY_SIZE() instead of hard-coded numbers
   - hda-codec - more systems for Analog Devices
     
     This patch adds support for more systems using Analog Devices codecs.
     
         Asus P5B-DLX - AD1988
         Toshiba U205 - AD1981
         Lenovo M55 - AD1986
         Samsung R55 - AD1986
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Fix Macmini and Macbook pin configs
     
     Original idea from Nicolas Boichat <nicolas@boichat.ch>.
     
     The pin configurations of Macmini and MacBook (1st generation, at least)
     seem identical with MacBook Pro (1st generation).
   - hda-codec - Fix ALC882/861VD codec support on some laptops
     
     Fixed some platform no sound and Add JD Function for below platform list:
          Sony(0x104d)  0x9015, 0x900e, 0x1f00
          Toshiba(0x1179)  DALLAS  0xff00, 0xff01
          Targa(0x1462) 0x28fb
          Asus(0x1043) A7J 0x060d
          Lenovo(0x17aa)  0x3bfd, 0x2085
          MEDION(0x17c0) MD2 0x4071
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - hda-intel: fix ASUS M2V detection
     
     Commit f32610edab47f36946d23b883aeae91e15986121 added ALC660VD support, but
     this caused a 2.6.21 regression for some users. The ASUS M2V device is
     now detected as ALC660VD rather than ALC660/861 but the PCI quirk was not
     carried over.
     
     This patch allows affected users to use audio again.
     http://bugzilla.kernel.org/show_bug.cgi?id=8273
     https://bugs.gentoo.org/show_bug.cgi?id=178243
     
     Signed-off-by: Daniel Drake <dsd@gentoo.org>
   - hda-codec - Add support of newer version of Intel iMac
     
     Added the pin configs for newer version of Intel iMac.
     The information provided by Ivan N. Zlatev <contact@i-nz.net>.
   - hda: fix sigmatel dell system detection
     
     Fixes Dell system detection on 9200 codecs. The support
     to detect certain Dell machines was merged in the
     9205 table where it will be unused on the various Dell
     9200-based codec systems. This moves the subsystem IDs
     to the correct 9200 table.
     
     Signed-off-by: Matt Porter <mporter@embeddedalley.com>
   - hda: fix typo for xw4400 PCI sub-ID
     
     The PCI sub-device ID for the HP xw4400 is actually 0x280c.
     
     Signed-off-by: John W. Linville <linville@tuxdriver.com>
   - hda-codec - Fix model for ASUS M2N-MX
     
     Add a proper model (3stack) for ASUS M2N-MX with AD1986A codec.
     
   - hda-codec - Add support for Evesham Voyager C530RD laptops
     
     This patch adds support for the Evesham Voyager C530RD series laptops.
     So far, only playback has been tested, but microphone should also work.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - make sound/pci/hda/patch_sigmatel.c:stac92xx_dmic_labels[] static
     
     This patch makes the needlessly global stac92xx_dmic_labels[] static.
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
   - hda-codec - Add missing array to conexant driver
     
     This patch adds a missing array to the conexant driver.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda_intel: add ATI RS690 HDMI audio support
     
     This patch adds support for the HDMI codec of the ATI RS690 IGP northbridge.
     
     Signed-off-by: Felix Kuehling <fkuehlin@ati.com>
   - hda-codec - Add asus model to ALC861 codec
     
     This patch adds support for Asus laptops (for example: Asus
     A6Rp-AP002).
     
     Signed-off-by: Mariusz Domanski <mariook@wp.pl>
   - hda-codec - Fix AD1988 SPDIF playback route control
     
     Fix AD1988 SPDIF playback route control for selecting ADC1-3.
   - hda-codec - Fix ALC880 uniwill auto-mutes
     
     Fix the auto-mute controls of ALC880 uniwill model.  Split to two
     individual functions to handle HP and front-mic mutes.  For front-mic
     mute, use snd_hda_codec_amp_update() to be consistent with mixer.
   - hda-codec - Fix a typo
     
     The AMP mute bit is bit 7.  No real influence since no one uses this
     definition yet, though...
   - hda-codec - Fix SPDIF output
     
     Fix SPDIF output (at least on Realtek codecs).  The DIGI_CONVERT verbs
     have to be reset before the PCM stream is set up.  Otherwise the digital
     setup is screwed up.
     
     Also, check the AMP capability before setting AMP of the digital out
     widget.
   - hda-codec - Add ALC662 support
     
     - Add ALC662 support
     - Fixed no sound for [0x1631, 0xc017, "PB V7900", ALC260_WILL]
     - Fixed no sound for [0x161f, 0x2057, "Replacer 672V", ALC260_REPLACER_672V]
     - Add SKU ID for auto mode
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - hda-codec - Add support of 96kHz back
     
     Added the support of 96kHz sample rate back.  Although the rate isn't
     listed in the ACC_PAR_PCM bits but si3054 codecs do support this rate
     explicitly.  Now fixed the deteciton code not to check this extra bit.
   - hda-codec - clean up patch_realtek.c
     
     Trivial code clean-ups of patch_realtek.c: indent and whitespace fixes.
   - hda-codec - Prefer audio codec name as the mixer name
     
     Prefer the name of audio codecs as the mixer name even if
     modem codecs are probed before the audio codecs.
   - 2.6 sync: WorkStruct: make allyesconfig
     
     Fix up for make allyesconfig.
     
     Signed-Off-By: David Howells <dhowells@redhat.com>
   - hda-codec - Add Asus P5W DH to alc882_cfg_tbl
     
     This patch adds the Asus P5W DH to the ALC882 config table
     as a 6stack-dig system.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Fix Oops with probing sigmatel codec chips
     
     When a device is unkown, the driver tries to set up the codec based on
     the BIOS information.  Then it may result in Oops if BIOS is broken.
     The patch fixes the issue, falling back to a reference model in such a
     case.
   - hda-codec - Add method for configuring Mac Pro without PCI SSID
     
     This patch adds a switch to configure systems that do not provide
     PCI SSID's for HD Audio like Mac Pro with ALC885.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Fix models for some lpatops/mobos
     
     Added the missing models for some laptops / mobos:
         ASUS z35m, ASRock board
     
   - hda-codec - Add missing Mic Boost controls for ALC262
     
     Added missing Mic Boost controls for ALC262 codec chip.
     
   - hda-codec - Add support for MacBook Pro 1st generation
     
     Fix audio on Macbook Pro 1st generation.
     
     Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
   - hda-codec - Add model for HP Compaq d5750
     
     Added model=hp-3013 for HP Compaq d5750 with ALC260 codec chip.
     
   - hda-codec - Fix front/rear mic inputs on AD1986A codec
     
     Fix the front/rear mic inputs on ASUS M2NPV-VM board with AD1986A
     codec chip (3stack model).
     
     Signed-off-by: Andrea Arcangeli <andrea@suse.de>
   - hda-codec - Add support for new HP DV series laptops
     
     This patch adds support for 3 new HP laptops to the Conexant
     "Venice" driver.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Fix resume of STAC92xx codecs
     
     Added a missing call to resume mixer controls for STAC92xx codecs.
   - hda-codec - bug fixes for stac92xx HDA codecs.
     
     * fixed surround playback on stac922x. Pin direction control bits were
       not being set correctly in stac92xx_set_pinctl(). Specifically it
       would refuse to set the port as an output if the port was already
       configured as an input. Last hunk (#8).
     
     * fixed an input mux bug on 92xx codecs. When there is more than one
       possible input calculated for the muxes, the actual mux widget never
       gets set from its reset default, which is index 0, in the stac9221
       case that is port E. So alsamixer/amixer/gnome-mixer report the Mic
       as being the selected input source, but in fact is something else
       (line-in port E in stac9221 case). Another problem with this is that
       if you actually try to set the mux input to "Mic", nothing happens
       because *cur_val == idx (see snd_hda_input_mux_put). You have to
       actually toggle input source to line-in then back to mic to actually
       set the mux widget. Hunk #7.
     
     * fixed some typos in patch_sigmatel.c. Hunk #6.
     
     * fix to stac92xx_add_dyn_out_pins() that fixes surround playback on
       codecs with less that 4 DACs (stac9205 for example). It reads the widget
       caps cache created by hda_codec to count the total number of analog DACs
       found. It then uses that to determine whether there will be enough
       independent DACs available for line/mic switch controls. Hunk #1, #2,
       and #3.
     
     * improvements to stac92xx_auto_fill_dac_nids() to make it more general.
       This fixes surround playback on some codecs in combination with the
       fix to stac92xx_add_dyn_out_pins() above. It reads the full connection
       list now, instead of just the first entry, and then locates an analog
       DAC in the list. If one is found and it's free, assign it to that line-out.
       If no free DAC is found for the line-out, return -ENODEV. It also makes
       sure to actually select the chosen DAC if more than one DAC is input to
       the pin. Hunks #4, #5.
     
     Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
   - hda-codec - Make the mixer capability check more robust
     
     In some cases, mixer elements return -EINVAL because it couldn't
     obtain proper amp_cap bits.  The patch improves the robustness,
     trying the amp_cap query again in such a case.
   - HDA: Add support for Gateway NX860
     
     This patch adds support for the Gateway NX860 system.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - HDA: Add more systems to Sigmatel codec
     
     This patch adds more Dell systems and a Panasonic laptop with
     STAC9200 codecs.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - HDA: Fix headphone mute issue on non-eapd Conexant systems
     
     This patch fixes an automute code issue for systems that do not rely
     on eapd support.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Change Gigabyte K8N51 from 6stack to 6stack-digout
     
     This patch moves the entry for the Gigabyte K8N51 from the 6stack
     grouping to the 6stack-digout grouping, allowing for S/PDIF output
     functionality.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Fix ALC861 connection of front-output
     
     Fix the wrongly set SET_CONNECTION verb for NID 0x0f of ALC861.
     The widget has only a single connection although the init verb
     sets to 0x01.
   - hda-codec - Add model for ASUS W3j laptop
     
     Added a proper model entry (model=laptop-eapd) for ASUS W3j laptop
     with AD1986A codec.
   - Fix obsolete *_t typedefs
     
     Fixed obsolete *_t typedefs.  Now completely removed.
   - hda: add dig mic support for sigmatel codecs
     
     Adds support for digital microphone pin widgets on SigmaTel codecs.
     Enables support only on the 9205 codecs for now.
     
     Signed-off-by: Matt Porter <mporter@embeddedalley.com>
   - hda-codec - Add first generation macbook subsystem ID
     
     First generation MacBooks were getting ignored by sigmatel drivers
     and wrongly being identified as MACMINI. This patch makes them
     identify as MACBOOK.
     
     Signed-off-by: Abhijit Bhopatkar <bainonline@gmail.com>
   - HDA-Intel: Fix headphone squeal on Conexant audio
     
     This patch fixes the headphone squeal and noise on Conexant CX20551
     (Waikiki) audio.
     
     Signed-off-by: Tobin Davis <gruemaster@email.uophx.edu>
   - sound: Change final two instances of kcalloc(1,...) to kzalloc()
     
       Change the two remaining instances in the tree of kcalloc(1,...) to
     the corresponding kzalloc() call.
     
     Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
   - hda-codec - Use global workqueue
     
     Use global workqueue for simplicity.
     The unsolicited event frequency isn't so high to have own queue.
   - hda-codec - More fixes for Conexant HD Audio support
     
     Renamed Conexant 5045 to CX20549 (Venice) per Conexant Documentation
     Renamed Conexant 5047 to CX20551 (Waikiki) per Conexant Documentation
     Fixed automute on HP Laptops with CX20551 codec.
     Fixed recording issues on Toshiba Satelite P100/P105 series laptops
     Added HP DV8000, DV2000Z, Fujitsu Si1520 support
     
     More work to be done on CX20549 based systems, but CX20551 Systems are
     much better now.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Patch for enabling LFE on more Dell laptops
     
     Fix LFE controls for Dell Inspiron E1705/9400 and XPS M1710 laptops.
     
     Signed-off-by: Mikael Nilsson <mikael@nilsson.name>
   - hda-codec - add ASUS W7J (0x1043, 0x1205) to quirk list - 3stack
     
     See Novell-bug#228201 .
   - hda-codec - Dell Latitude D820 + D/Port
     
     Support port replicator headphone output on Dell Latitude D820 + D/Port.
     
     Signed-off-by: Cory T. Tusar <ctusar@videon-central.com>
   - hda-codec - Fix speaker output on MacPro
     
     Initialize the first line-out widget as the output pin in stac92xx_init().
     Some devices like MacPro seem to set this widget as INPUT as default,
     and confuses the driver.
     
   - hda-codec - Add model for HP Compaq d5700
     
     Added model=hp-3013 for HP Compaq d5700 desktop with ALC260 codec.
     
   - hda-codec - Add ALC861VD Lenovo support
     
     - Added ALC861VD Lenovo support (17aa:3802, 17aa:2066)
     - Modify alc_subsystem_id
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - Add speaker pin sequencing to hda_codec.c:snd_hda_parse_pin_def_config()
     
     Some verb tables (such as an Asus VT sent by IDT) contain only speaker
     outs in the default pin configs, and no line-outs. In such a case the
     speaker sequence numbers have to be used to order the speaker out
     pins, just as is being done for line-out pins. Then, when speaker-outs
     are copied to line-outs, the line-outs will be ordered properly.
     
     Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
   - Include quirks from Ubuntu Dapper/Edgy/Feisty
     
     Included is a patch against current alsa-kernel hg tip adding
     quirks that Ubuntu Dapper/Edgy/Feisty contains.
     
     Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
   - hda-codec - Add quirk for Supermicro PDSBA to alc883_cfg_tbl[]
     
     Tested and verified in #alsa/Freenode on Tuesday, May 29, 2007.
     
     Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
   - hda-codec - Add support for MSI K9N Ultra
     
     This patch adds the MSI K9N Ultra system to the realtek patch.
     
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Fix pin configs for Gateway MX6453
     
     Fix pin default configs for speaker associations and sequence
     for Gateway MX6453 machine with STAC925x codecs.
     
     Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
   - hda-codec - Fix pin configs for Intel Macs
     
     * adds the pinconfigs for all 5 Apple boards and 14 Subsystem IDs
       (support for possibly all iMac, Mac, MacMini etc etc)
     * adds "intel-mac-v1" to v5 models which replace the current
     * reflects changes in Alsa-Configuration.txt
     
     Signed-off-by: Ivan N. Zlatev <contact@i-nz.net>
   - hda-codec - Fix input with STAC92xx
     
     The recent fix for STAC92xx surround outputs broke the input pin
     setting for shared line-in and mic jacks.  This patch fixes the
     breakage.
     
   - hda-codec - Fix STAC922x capture boost level
     
     STAC922x provides the capture boost level up to 4, but actually it
     works only up to 2.  Since the range of the mixer is automatically
     defined from amp-capability bits, we need to override the value
     beforehand.  snd_hda_override_amp_caps() is introduced for this
     purpose.
     
     The function patch_stac922x() calls this for NID 0x12 (Mux Capture
     Volume).  This should fix another recording problem on Intel Macs.
     
   - hda-codec - Clevo M540JE, M550JE laptops (Nvidia MCP51 chipset, ALC883 codec)
     
     We need to enable External Amplifier on this laptops. This patch basicly
     adds laptop-eapd model to ALC883 codec.
     
     Signed-off-by: Andrew L. Neporada <nepal@asplinux.ru>
   - hda-codec - Fix model for ASUS V1j laptop
     
     Add a proper model entry (laptop-eapd) for ASUS V1j laptop with
     AD1986A codec.
   - hda-codec - Fix detection of supported sample rates
     
     Don't include 9.6kHz in the list of supported sample rates.
     Since this rate isn't indicated in AC_PAR_PCM parameter,
     the driver might guess wrongly as if it's available.
   - Add Conexant audio support to the HD Audio driver
     
     This driver adds limited support for the Conexant 5045 and 5047 HD Audio
     codecs.  Some issues still need to be resolved.  The code is based
     primarily on code from the Analog Devices AD1981 support and the Realtek
     ALC260 support.  Some code came from the original code developed by Alex
     Pototskiy (see alsa bugtracker 2485).
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add support for Sony UX-90s
     
     Added the model entry (model=hippo) for Sony UX-90s with ALC262 codec.
     Although the device has no SPDIF output, the hippo model adds a
     PCM output, but it must be harmless.
   - snd_hda_intel 3stack mode for ASUS P5P-L2
     
     I have ASUS P5PL2 motherboard and it's embedded sound card requires
     the following patch which sets "3stack" model to operate properly:
     
     00:1b.0 0403: 8086:27d8 (rev 01)
             Subsystem: 1043:817f
             Flags: bus master, fast devsel, latency 0, IRQ 177
             Memory at dfdf8000 (64-bit, non-prefetchable) [size=16K]
             Capabilities: [50] Power Management version 2
             Capabilities: [60] Message Signalled Interrupts: 64bit+
     Queue=0/0 Enable-
             Capabilities: [70] Express Unknown type IRQ 0
     
     Signed-off-by: Nickolay V. Shmyrev <nshmyrev@yandex.ru>
   - hda-codec - Fix compile warnings without CONFIG_SND_DEBUG
     
     Fix compile warnings (unused variables) in patch_conexant.c
     without CONFIG_SND_DEBUG.
   - hda-codec - Make internal speaker work on Acer C20x tablets
     
     The following patch creates a new "Mono speaker" control in alsamixer
     when the Realtek "acer" model is used with hda_intel.  This is needed so
     the internal mono speaker (when present) can be controlled.
     
     This new control won't do anything in Acer laptops which are not fitted with
     a mono speaker. Acer models which are known to have a mono speaker are the
     C20x tablet series but there may be others.  I guess we could define a new
     model specifically for Acers with mono speakers but this seems a bit silly
     given that such a model will be identical to the normal "acer" model except
     for this added control.
     
     This patch also adds the C20x tablets to the list of PCI ids associated with
     the "acer" model.  This means that owners of C20x machines will no longer
     have to supply "model=acer" when loading hda_intel.
     
     Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
   - hda-codec - Fix wrong error checks in patch_{realtek,analog}.c
     
     Fix wrong error checks of *_ch_mode_put() in patch_realtek.c and
     patch_analog.c.  snd_hda_ch_mode_put() could return a positive
     value for success, too.
   - hda-codec - Don't return error at initialization of modem codec
     
     Some modem codec seem to fail in the initialization, and this
     stopped loading of the whole module although the audio is OK.
     Since it's usually a non-fatal issue, the driver tries to proceed
     to initialize now.
   - hda-codec - Add toshiba model to ALC861 codec
     
     This patch adds support for Toshiba laptops.  Code is from
     RealTek's alsa-driver-1.0.12-4.05b tree.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add new modesl for Realtek codecs
     
     Changes from Realtek driver:
     - New models hippo and hippo_1 for ALC262
     - New models tagra-dig and tagra-2ch-dig for ALC883
     - New id for ALC660 codec chip
     
     Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
   - hda-codec - Add model for HP q965
     
     Added a model entry (HP_BPC) for HP q965 with ALC262 codec.
   - hda-codec - Fix model for Lenovo A60 desktop
     
     Add a proper model entry (3stack) for Lenovo A60 desktop with
     AD1986a codec to fix noise problems.
     
   - hda-codec - Fix surround output on AD1986A
     
     Fix surround output on AD1986A codec 3stack model.
     
     The following bugs are fixed:
     - init verbs for 3stack disabled the shared surround outputs
     - a channel mode change resulted in the mute of surrounds
   - hda-codec - Add support for Gigabyte S-Series GA-M57SLI-S4 motherboard
     
     Added the support for Gigabyte S-Series GA-M57SLI-S4 motherboard
     (model=6stack-dig).
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Fix model for ASUS A9rp
     
     Fixed the model (asus-laptop) for ASUS A9rp with ALC660 codec.
   - hda-codec - Add support for Fujitsu PI1556 Realtek ALC880
     
     This patch adds support for the Fujitsu PI1556 laptop.
     
     Issue:  Volume knob on system maxes out lower than alsamixer (0x35 vs 0x40).
     Everything else works, and audio quality is good at 0x35.
     
     Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
   - hda-codec - Add LFE support on Dell M90
     
     Added LFE support on Dell M90 laptop.
     
   - Fix a typo in the last patch_realtek.c change
     
     Fixed a typo in the last patch_realtek.c change.
   - hda-codec - Missing Mic Boost on Realtek ALC882/883
     
     This patch adds Mic Boost controls for Realtek ALC882 and ALC883 chips.
     
     Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
   - hda-codec - Add model for Uniwill X40AIx
     
     Added model=uniwill-m31 for Uniwill X40AIx with ALC861 codec.
   - Fix NULL dereference with null modelname
     
     Fix the NULL dereference of modelname option.  The check is moved to
     find_codec_preset() now, too.
   - hda-codec - Fix missing array terminators
     
     Added missing array terminators in patch_conexant.c.
   - hda-codec - Fix wrong mixer controls for AD1984 thinkpad model
     
     Fixed the wrong mixer controls for AD1984 thinkpad model.
   - hda-codec - fix typo in PCI IDs
     
     my notebook is a Samsung X11 of course... The attached patch fixes the typo.
     
     Signed-off-by: Christian Hesse <mail@earthworm.de>
   - hda-codec - Add asus-laptop model for ALC861 (ALC660)
     
     Added a new model "asus-laptop" for ASUS F2*/F3* laptops
     with ALC861 (equivalent with ALC660) codec chip.
     Also fixed the model for PCI SSID 1043:1338.
     
     Corresponding to ALSA bug#2480.
   - hda-codec - Add support for VIA VT1708(A) HD audio codec
     
     This patch is VIA first release for HD audio codec, VT1708(A) and
     it provides geneneral HD audio driver features.
     
     Signed-off-by: Joseph Chan <josephchan@via.com.tw>
   - Summary: hda-codec - Add support for VIA VT1708(A) HD audio codec
     
     This patch is VIA first release for HD audio codec, VT1708(A) and
     it provides geneneral HD audio driver features.
     
     Signed-off-by: Joseph Chan <josephchan@via.com.tw>
   - hda-codec - Fix assignment of PCM devices for Realtek codecs
     
     Fixed the assignment of PCM devices for Realtek codecs.
     The secondary analog capture should be statically asigned to the
     third device regardless whether SPDIF exists or not.
     
 + HDA Intel driver
   - hda-intel - Add ATI RS780,R600 HDMI audio support
     
     This patch is for ATI RS780 and R600 HDMI support.
     
     Signed-off-by: Wolke Liu <wolke.liu@amd.com>
   - hda-intel - Don't try to probe invalid codecs
     
     Fix the max number of codecs detected by HD-intel (and compatible)
     controllers to 3.  Some hardware reports extra bits as if
     connected, and the driver gets confused to probe unexisting codecs.
   - hda-intel - Fix HDA buffer alignment
     
     From the HDA spec it appears that the buffers written to the BDL and
     sent to a codec must be 128 byte aligned (section 4.5.1).  The alignment
     was not happening especially when playing 6 channels.  This patch set
     the alignment of buffers and periods to 128 bytes.
     
     Signed-off-by: Joachim Deguara <joachim.deguara@amd.com>
   - hda_intel: increase maximum DMA buffer size to 1024MB
     See ALSA bug#2481 .
   - hda-intel - Fix codec probe with ATI contorllers
     
     ATI controllers may have up to 4 codecs while ICH up to 3.
     Thus the earlier fix to change AZX_MAX_CODECS to 3 cause a regression
     on some devices that have the audio codec at bit#3.
     
     Now max codecs is defined according to the driver type, either 3 or 4.
     Currently 4 is set only to ATI chips.  Other might need the same
     change, too.
     
   - hda_intel: add ATI RS690 HDMI audio support
     
     This patch adds support for the HDMI codec of the ATI RS690 IGP northbridge.
     
     Signed-off-by: Felix Kuehling <fkuehlin@ati.com>
   - hda-intel - Add check of MSI availabity
     
     Check the availability of MSI and turn off MSI automatically when it's
     not available on the hardware.  MSI seems broken on some hardwares
     but the kernel doesn't know exactly, thus we have to turn the MSI
     feature off on the sound driver manually.
     
   - hda-intel - Add black/whitelist for position_fix option
     
     Some devices are known to require position_fix=1 or 2 to make the
     driver working correctly.  Otherwise the sound gets weird effects,
     such as stutters.
     
     Now a black/whitelist is introduced to indicate the position_fix
     value explicitly for such misbehaving hardwares.  As a first example,
     Dell D820 is listed there.  More will come later likely...
   - hda-intel - Fix detection of audio codec on Toshiba A100
     
     Some boards have the audio codec on slot #3 while the modem codec
     on slot #0.  The driver should continue to probe the slots when
     no audio codec is found.
     
     This fixes the problem of no device on Toshiba A100 (and some other
     ATI SB450 devices).
   - hda_intel: build fix
     
       CC [M]  sound/pci/hda/hda_intel.o
     sound/pci/hda/hda_intel.c:1508: error: position_fix_list causes a section type \
     conflict
     
     Gcc like its __devinitdata readable not const, it seems.  An alternative
     fix would be to remove the __devinitdata attribute but that would result
     in slight runtime bloat.
     
     Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
   - hda-intel - Disable MSI support as default
     
     Disable MSI support on HD-audio driver as default since there
     are too many broken devices.
     The module option is changed from disable_msi to enable_msi,
     too.  For turning MSI support on, pass enable_msi=1, instead.
     
   - hda-intel - Disable INTX when MSI is used
     
     Call pci_intx() to disable/enable INTX when MSI is used/unused.
     Nvidia and AMD boards seem to have problems with MSI when INTX
     isn't disabled.
   - Audio: Add nvidia HD Audio controllers of MCP67 support to hda_intel.c
     
     Add the support for HD audio controllers of MCP51,MCP55,MCP61,MCP65 & MCP67.
     
     Signed-off-by: Peer Chen <pchen@nvidia.com>
   - hda-intel - Probe additional slots only if necessary
     
     Probing the codec slots on ATI controller causes problems on some
     devices like Acer laptops.  On these devices, reading from codec
     slot 3 results in the communication failure with the codec chip.
     Meanwhile, some laptops (e.g. Gateway) have the codec connection
     only on slot 3, and probing this slot is mandatory for them.
     
     The patch improves the probing robustness.  The additional slots
     are now checked only when no codecs are found in the primary three
     slots.
   - hda_intel: ALSA HD Audio patch for Intel ICH9
     
     This patch adds the Intel ICH9 HD Audio controller DID's for ALSA.
     
     Signed-off-by: Jason Gaston <jason.d.gaston@intel.com>
 + HDA generic driver
   - hda-codec - Use snd_pci_quirk_lookup() for board config lookup
     
     Use snd_pci_quirk_lookup() for looking up a board config table.
     The config table is sorted in numerical order of PCI SSIDs.
   - hda-intel - Merge hda-codec module to a single module
     
     Merge hda-codec module to a single hda-intel module since this is the
     only user right now.  Although hda-codec stuff is designed to be used
     universally from different controller drivers, currently only one
     controller interface (and compatibles) are used.  So, let's merge them
     to a single module to save memory.
   - hda-codec - Add line_out_type to auto_pin_cfg struct
     
     Added line_out_type field to auto_pin_cfg struct to provide the
     pin type of default line_outs.
   - hda-codec - Fix NULL dereference in generic hda code
     
     Fix NULL dereference in hda_generic.c.
   - hda-codec - Fix SPDIF output
     
     Fix SPDIF output (at least on Realtek codecs).  The DIGI_CONVERT verbs
     have to be reset before the PCM stream is set up.  Otherwise the digital
     setup is screwed up.
     
     Also, check the AMP capability before setting AMP of the digital out
     widget.
   - hda_codec.c: add __NO_VERSION__
     
     Add __NO_VERSION__ to hda_codec.c to fix compilation on 2.2 kernels.
   - hda-codec - Use global workqueue
     
     Use global workqueue for simplicity.
     The unsolicited event frequency isn't so high to have own queue.
   - Fix hda_codec.patch for workqueue changes
     
     Regenerated patch for global workqueue changes.
   - hda-codec - Fix connection list in generic parser
     
     Fix the retrival of widget connection list in the generic parser.
   - hda-codec - Fix STAC922x capture boost level
     
     STAC922x provides the capture boost level up to 4, but actually it
     works only up to 2.  Since the range of the mixer is automatically
     defined from amp-capability bits, we need to override the value
     beforehand.  snd_hda_override_amp_caps() is introduced for this
     purpose.
     
     The function patch_stac922x() calls this for NID 0x12 (Mux Capture
     Volume).  This should fix another recording problem on Intel Macs.
     
   - hda-codec - Verbose proc output for PCM parameters
     
     Make the output for PCM parameters more verbose, showing
     each rate, bits and format.
   - hda-codec - Fix a typo
     
     Fixed a typo in proc file.
   - PCI: Cleanup the includes of <linux/pci.h>
     
     I noticed that many source files include <linux/pci.h> while they do
     not appear to need it. Here is an attempt to clean it all up.
     
     Signed-off-by: Jean Delvare <khali@linux-fr.org>
     Cc: Badari Pulavarty <pbadari@us.ibm.com>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - hda-codec - Add support for VIA VT1708(A) HD audio codec
     
     This patch is VIA first release for HD audio codec, VT1708(A) and
     it provides geneneral HD audio driver features.
     
     Signed-off-by: Joseph Chan <josephchan@via.com.tw>
 + ICE1712 driver
   - ak4114 - Fix possible Oops with callbacks
     
     ak4114 code may trigger Oops when the parameters are changed without
     call of snd_ak4114_build().  Now it checks the existence of kctl
     element, and the workq is triggered after building the necessary
     kcontrols.
     
     Also, did some code clean up.
   - ice1724 - Add support for Prodigy 7.1 XT
     
     This patch supports Audiotrack 7.1 XT.
     7.1XT is almost same hardware as 7.1LT. so using 7.1 LT's code.
     
     Signed-off-by: Toshimune Konno <heitouk@nifty.com>
   - Add support of the ESI Waveterminal 192M to the ice1724 ALSA driver
     
     This patch adds the support of the ESI Waveterminal 192M soundcard
     to the ice1724 familly ALSA driver.
     It's a semi-professionnal soundcard for home studio : many I/O and
     a quality of sound is good, better than consumer cards, but less
     musical than professional cards.
     It use a Via Envy24ht chipset as ice1724 soundcard, Sigmatel
     stac9640 ADC/DAC for the analog I/O as Prodigy192, and Atmel ak4114
     for S/PDIF as ESI Julia.
     Is working : the 8 analog outputs, the analog inputs 1&2, the mic
     input 1, the coaxial & optical digital outputs.
     
     Signed-off-by: Clement Guedez <klem.dev@gmail.com>
   - ice1712 - Reorganize existing eeprom data
     
     Reorganize EEPROM data (in C99 style).
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - Add "const" to files in pci/ice1712/
     
     Mark a lot of data as "const"
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - Add some more "const", but needs changes in i2c/other/ak4*
     
     Make data passed to ak4xxx_create "const".
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - ice1724 - call snd_ak4114_build() in juli
     
     Call snd_ak4114_build() in juli support code to build proper mixer
     elements for SPDIF inputs.
   - ice1724 - Functioning support for Prodigy 192
     
     Fixes:
     --------
     * correct card specific ice1724 initialization
     * working IEC958 output of the card
     * renamed capture controls
     
     
     New features:
     ------------------
     * analog input switch (line-in/mic)
     * optional ak4114 based MI/ODI/O card detection & support: IEC958 input,
       digital input switch (toslink/coax)
     
     Unresolved issues
     -----------------------
     * Analog and digital input enums are listed on playback panel of alsamixer,
       I do not know how to push them onto the capture one.
     
     Signed-off-by: Pavel Hofman <dustin@seznam.cz>
   - ice1724 - Misc fixes for Prodigy192
     
     - always set 256fs in SPDIF master clock mode
     - disable deemphasis filter in AK4114 for Prodigy192
     
     Signed-off-by: Pavel Hofman <dustin@seznam.cz>
   - ice1712: build fixes
     
       CC [M]  sound/pci/ice1712/ice1712.o
     sound/pci/ice1712/ice1712.c:290: error: snd_ice1712_mixer_digmix_route_ac97 cau\
     ses a section type conflict
     sound/pci/ice1712/ice1712.c:1630: error: snd_ice1712_eeprom causes a section ty\
     pe conflict
     ...
     
     Gcc like its __devinitdata readable not const, it seems.  An alternative
     fix would be to remove the __devinitdata attribute but that would result
     in slight runtime bloat.
     
     Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
   - Fix conflicts between const and __devinitdata
     
     Marvin told with a depressed face,
       gcc doesn't like both __devinitdata and const in the same line.
     So, remove const from all over places now...
 + ICE1724 driver
   - Add "const" to files in pci/ice1712/
     
     Mark a lot of data as "const"
     
     Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
   - ice1724 - Add PCM Playback Switch to Revo 7.1
     
     This patch adds the support of mute for front channels of M-Audio
     Revolution 7.1 (the DAC AK4381 features a mute bit).
     
     Signed-off-by: Pavel Hofman <dustin@seznam.cz>
   - ice1724 - Fix AP192 4wire mode access
     
     ap192_4wire_start() in ice1712/revo.c returns unsigned char
     whereas it should return unsigned int.
   - ice1724 - Add support of M-Audio Audiophile 192
     
     Added the (experimental) support of M-Audio Audiophile 192 board.
     Currently, the analog and the digital playbacks seem working fine.
     The inputs seem not working as far as I've tested yet.
   - ice1724 - Add comments for naming of PCM streams
     
     Added some comments regarding naming of PCM streams on vt172x chip.
   - ice1724 - Misc fixes for Prodigy192
     
     - always set 256fs in SPDIF master clock mode
     - disable deemphasis filter in AK4114 for Prodigy192
     
     Signed-off-by: Pavel Hofman <dustin@seznam.cz>
   - Fix conflicts between const and __devinitdata
     
     Marvin told with a depressed face,
       gcc doesn't like both __devinitdata and const in the same line.
     So, remove const from all over places now...
   - Enable capture from line-in and CD on Revolution 5.1
     
     Enable capture from line-in and CD on the Revolution 5.1 card.
     
     This patch adds support for switching between the 5 input channels of
     the AK5365 ADC and modifies the Revolution 5.1 driver to make use of
     this facility.  Previously the capture channel was fixed to channel 0
     (microphone on the Revolution 5.1 card).
     
     Signed-off-by: Jochen Voss <voss@seehuhn.de>
 + ISA
   - Fix SB-module dependency with PCI drivers
     
     A few PCI drivers like ALS4000 and CS5530 require the SB16-codes.
     This patch fixes / improves the dependency between SB modules and
     PCI drivers.
   - msnd-pinnacle: replace mod_firmware_load() with request_firmware()
     
     Since mod_firmware_load() depends on CONFIG_SOUND_PRIME, it cannot be
     used any longer by ALSA drivers.  Replace it with request_firmware().
   - Enable Kconfig options for external firmwares
     
     Some drivers are already ifdefs for enabling external firmwares
     but not defined in Kconfig.  Now they appear as the kernel configs.
   - Kconfig: fix FW_LOADER dependencies
     
     Move the FW_LOADER dependencies out of the *_FIRMWARE_IN_KERNEL entries
     because these drivers use the firmware loader regardless of whether
     there is an in-kernel firmware image.
   - Kconfig: clarify help text for external firmware entries
     
     The external firmware files are not in the alsa-plugins but in the
     alsa-firmware package.
   - do not depend on FW_LOADER when internal firmware images are used
     
     Since request_firmware() is no longer used when the internal firmware
     images are used, it is no longer necessary to depend on FW_LOADER in
     this case.
   - Fix dependency of snd-adlib driver in Kconfig
     
     Added the missing dependency on CONFIG_SND for snd-adlib driver.
     
 + Intel8x0 driver
   - intel8x0 - Fix Oops in crash kernel
     
     When intel8x0 driver is loaded in the crash kernel, it gets Oops
     occasionally.  This is because the irq handler gets called before
     the proper hardware initialization.  Now defer it after
     snd_intel8x0_chip_init().
     
     (reference: http://lkml.org/lkml/2007/3/5/252)
   - intel8x0 - Fix speaker output after S2RAM
     
     Fixed the mute speaker problem after S2RAM on some laptops:
     	http://bugme.osdl.org/show_bug.cgi?id=6181
     
     Signed-off-by: Tommi Kyntola <tommi.kyntola@ray.fi>
   - intel8x0 - Add spdif_aclink option
     
     Added spdif_aclink module option to specify whether the board
     has SPDIF over AC-link or a direct connection from the controller
     chip.
     
     NForce and ICH4 (or newer) boards may be equipped with SPDIF
     through AC97 codec.  In such a case, SPDIF should be handled
     as if the old ICH style (the same slot for analog and digital).
     
     A quirk list is added to detect this automatically for known
     hardwares.
     
     Corresponds to ALSA bug#2637.
   - intel8x0 - Use pci_iomap
     
     Use pci_iomap and ioread*/iowrite*() functions for accessing
     hardwares.  pci_iomap is suitable for hardwares like ICH and
     compatible that have both PIO and MMIO.
   - Add pci_iomap compat layer for intel8x0[m] drivers
     
     Added pci_iomap compat layer for intel8x0[m] drivers.
   - 2.6 sync: [PATCH] Merge headphone and speaker volume controls for Panasonic R4 laptop
     
     Signed-off-by: Keith Packard <keithp@neko.keithp.com>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - intel8x0 - Fix Oops at kdump crash kernel
     
     Fixed Oops at crash kernel from intel8x0 driver that is triggered
     from interrupt handler.  Proper irqsave version seems needed for
     kexec/kdump.
     
   - Include quirks from Ubuntu Dapper/Edgy/Feisty
     
     Included is a patch against current alsa-kernel hg tip adding
     quirks that Ubuntu Dapper/Edgy/Feisty contains.
     
     Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
   - ac97 - Suppress power-saving mode on non-supporting drivers
     
     Don't enable power-saving mode on drivers that don't support
     it.  The supporting drivers set AC97_SCAP_POWER_SAVE to scaps
     at creation of ac97 instance.
     
     Currently enable on the following drivers: intel8x0, intel8x0m,
     atiixp, atiixp-modem, via82xx and via82xx-modem.
     
     Also, a bit clean up of power-saving stuff:
     - Don't create an own workq
     - Remove superfluous ifdefs
     
 + Intel8x0-modem driver
   - intel8x0 - Use pci_iomap
     
     Use pci_iomap and ioread*/iowrite*() functions for accessing
     hardwares.  pci_iomap is suitable for hardwares like ICH and
     compatible that have both PIO and MMIO.
   - Add pci_iomap compat layer for intel8x0[m] drivers
     
     Added pci_iomap compat layer for intel8x0[m] drivers.
 + KORG1212 driver
   - Enable Kconfig options for external firmwares
     
     Some drivers are already ifdefs for enabling external firmwares
     but not defined in Kconfig.  Now they appear as the kernel configs.
   - korg1212: add request_firmware()
     
     Load the DSP code using request_firmware(), if possible, instead of
     using the built-in blob.
   - Don't use request_firmware if internal firmwares are defined
     
     Don't use request_firmware() if the internal firmwares are defined
     via Kconfig.  Otherwise it results in a significant delay at loading
     time (minutes).
   - Fix patch files for request_firmware()
     
     Fix patch files for request_firmware()
   - korg1212: fix printk format warning
     
     sound/pci/korg1212/korg1212.c:2359: warning: format '%d' expects type 'int', but
     argument 4 has type 'size_t'
     
     Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - [2.6.19-SYNC] Various drivers' irq handlers: kill dead code, needless casts
     
 + MAINTAINERS file
   - ASoC: documentation & maintainer
     
     This patch adds documentation describing the ASoC architecture and a
     maintainer entry for ASoC.
     
     The documentation includes the following files:-
     
     codec.txt: Codec driver internals.
     
     DAI.txt: Description of Digital Audio Interface standards and how to
     configure a DAI within your codec and CPU DAI drivers.
     
     dapm.txt: Dynamic Audio Power Management.
     
     platform.txt: Platform audio DMA and DAI.
     
     machine.txt: Machine driver internals.
     
     pop_clicks.txt: How to minimise audio artifacts.
     
     clocking.txt: ASoC clocking for best power performance.
     
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - Fix alsa-devel ML address
     
     Fixed MAINTAINERS, alsa-devel ML is now subscribers-only.
   - 2.6 kernel sync
   - sync kernel subdirectory with 2.6 GIT tree
   - 2.6 kernel sync - kernel subdirectory
   - 2.6 GIT kernel sync
   - 2.6 sync - missing updates from previous patch and more
   - linux 2.6 code sync
 + MIPS AU1x00 driver
   - [PATCH] sound/mips/au1x00: Use ARRAY_SIZE macro
     
     Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0])
     
     Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
     Cc: Ralf Baechle <ralf@linux-mips.org>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 + MPU401 UART
   - mpu401 - Add MPU401_INFO_UART_ONLY bitflag
     
     Added MPU401_INFO_UART_ONLY bitflag to avoid issueing UART_ENTER command
     at opening streams.  Some devices support only UART mode and give errors
     to UART_ENTER.
     
     A new module option, uart_enter, is added to snd-mpu401 driver.
     For UART-only devices, set uart_enter=0.
   - Fix mpu401.patch for uart_enter option
     
     Fixed mpu401.patch for new uart_enter option.
 + MSND driver
   - msnd-pinnacle: replace mod_firmware_load() with request_firmware()
     
     Since mod_firmware_load() depends on CONFIG_SOUND_PRIME, it cannot be
     used any longer by ALSA drivers.  Replace it with request_firmware().
   - add MODULE_FIRMWARE entries
     
     Add MODULE_FIRMWARE() entries, where appropriate.
   - Fix build with the latest 2.6.19-git
     
     The IRQ handler is changed in 2.6.19-git (after rc1), so we have to
     adapt that style for the older kernels.
     
     - configure checks the new IRQ handler, adds missing headers.
     - Wrappers for request_irq(), free_irq() and get_irq_regs() are
       provided for older kernels.
     - For usb and parport drivers, need to patch the irq handlers.
     
     Also, fixed the build failure due to the change of namespace and
     kmem_cache_destroy().
 + Maestro3 driver
   - maestro3 - Use quirk list helper function
     
     Clean up maestro3 amp and GPIO quirks using snd_pci_quirk_lookup().
   - Update maestro3.patch
     
     Update maestro3.patch after clean up with snd_pci_quirk_lookup()
   - maestro3: add request_firmware()
     
     Load the ASSP codes using request_firmware(), if possible, instead of
     using the built-in blobs.
   - Don't use request_firmware if internal firmwares are defined
     
     Don't use request_firmware() if the internal firmwares are defined
     via Kconfig.  Otherwise it results in a significant delay at loading
     time (minutes).
   - Fix patch files for request_firmware()
     
     Fix patch files for request_firmware()
 + Memalloc module
   - alsa core: convert to list_for_each_entry*
     
     This patch converts most uses of list_for_each to list_for_each_entry all
     across alsa. In some place apparently an item can be on a list with
     different pointers so of course that isn't compatible with list_for_each, I
     therefore didn't touch those places.
     
     Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
 + NM256 driver
   - nm256 - Use quirk list helper function
     
     Clean up nm256-quirk lookup using snd_pci_quirk_lookup().
 + OSS device core
   - [PATCH] build sound/sound_firmware.c only for OSS
     
     All sound/sound_firmware.c contains is mod_firmware_load() that is a
     API only used by some OSS drivers.
     
     This patch builds it into an own sound_firmware module that is only
     depending on CONFIG_SOUND_PRIME making the kernel slightly smaller f
     users.
     
     [alan@lxorguk.ukuu.org.uk: comment fix]
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
     Acked-by: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Alan Cox <alan@redhat.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - Driver core: convert sound core to use struct device
     
     Converts from using struct "class_device" to "struct device" making
     everything show up properly in /sys/devices/ with symlinks from the
     /sys/class directory.
     
     It also makes the struct sound_card to show up as a "real" device
     where all the different sound class devices are placed as childs
     and different card attribute files can hang off of. /sys/class/sound is
     still a flat directory, but the symlink targets of all devices belonging
     to the same card, point the the /sys/devices tree below the new card
     device object.
     
     Thanks to Kay for the updates to this patch.
     
     Signed-off-by: Kay Sievers <kay.sievers@novell.com>
     Acked-by: Jaroslav Kysela <perex@suse.cz>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - 2.6 sync: [PATCH] The scheduled removal of some OSS drivers
     
     This patch contains the scheduled removal of OSS drivers that:
     - have ALSA drivers for the same hardware without known regressions and
     - whose Kconfig options have been removed in 2.6.17.
     
     [michal.k.k.piotrowski@gmail.com: build fix]
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
     Signed-off-by: Michal Piotrowski <michal.k.k.piotrowski@gmail.com>
     Cc: David Woodhouse <dwmw2@infradead.org>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 sync - missing updates from previous patch and more
 + OSS firmware core
   - [PATCH] build sound/sound_firmware.c only for OSS
     
     All sound/sound_firmware.c contains is mod_firmware_load() that is a
     API only used by some OSS drivers.
     
     This patch builds it into an own sound_firmware module that is only
     depending on CONFIG_SOUND_PRIME making the kernel slightly smaller f
     users.
     
     [alan@lxorguk.ukuu.org.uk: comment fix]
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
     Acked-by: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Alan Cox <alan@redhat.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - 2.6 sync: [PATCH] struct path: convert sound
     
     Signed-off-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 + Opti9xx drivers
   - sound/isa/opti9xx/opti92x-ad1848.c: check kmalloc() return value
     
     Check the return value of kmalloc() in function snd_card_opti9xx_pnp(),
     in file sound/isa/opti9xx/opti92x-ad1848.c.
     
     Signed-off-by: Amit Choudhary <amit2030@gmail.com>
   - Add snd_pcm_group_for_each_entry() for code cleanup
     
     Added a new macro snd_pcm_group_for_each_entry() just for code cleanup.
     Old macros, snd_pcm_group_for_each() and snd_pcm_group_substream_entry(),
     are removed.
 + PCI drivers
   - Update to Audioscience asihpi driver
     
     * Update from hpklinux version 3.00 to 3.05.06
     * Support 64 bit kernel
     * Add ASI6600 PCI express, ASI6500 PCI cards
     * Update ASI87xx for MPEG layer 2/3 record, Add PAL tv
     * Add StreamRead/WriteBuf API,
     * Fix error in ALSA capture parameters
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
   - Fix SB-module dependency with PCI drivers
     
     A few PCI drivers like ALS4000 and CS5530 require the SB16-codes.
     This patch fixes / improves the dependency between SB modules and
     PCI drivers.
   - Enable Kconfig options for external firmwares
     
     Some drivers are already ifdefs for enabling external firmwares
     but not defined in Kconfig.  Now they appear as the kernel configs.
   - Kconfig: fix FW_LOADER dependencies
     
     Move the FW_LOADER dependencies out of the *_FIRMWARE_IN_KERNEL entries
     because these drivers use the firmware loader regardless of whether
     there is an in-kernel firmware image.
   - Kconfig: clarify help text for external firmware entries
     
     The external firmware files are not in the alsa-plugins but in the
     alsa-firmware package.
   - pci: select FW_LOADER instead of depending on it
     
     Let the AudioScience, Echoaudio and Riptide drivers select FW_LOADER
     instead of depending on it so that they can be configured without having
     to enable FW_LOADER manually.
   - emu10k1: select FW_LOADER
     
     Let the emu10k1 driver select FW_LOADER because the new Emu1010 support
     requires it.
   - do not depend on FW_LOADER when internal firmware images are used
     
     Since request_firmware() is no longer used when the internal firmware
     images are used, it is no longer necessary to depend on FW_LOADER in
     this case.
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
     
     Add support for Cyrix/NatSemi Geode SC5530 (VSA1).
     The driver is snd-cs5530.
     
     Signed-off-by Ash Willis <ashwillis@programmer.net>
   - ymfpci: add request_firmware()
     
     Load the DSP and controller microcode using request_firmware(), if
     possible, instead of using the built-in firmware.
 + PCI iomap compatibility layer
   - Add pci_iomap compat layer for intel8x0[m] drivers
     
     Added pci_iomap compat layer for intel8x0[m] drivers.
   - Add fastcall check to pci/pci_iomap_compat.c
 + PDAudioCF driver
   - 2.6 sync: [PATCH] pcmcia: conf.ConfigBase and conf.Present consolidation
     
     struct pcmcia_device *p_dev->conf.ConfigBase and .Present are set in almost
     all PCMICA driver right at the beginning, using the same calls but slightly
     different implementations. Unfiy this in the PCMCIA core.
     
     Includes a small bugfix ("drivers/net/pcmcia/xirc2ps_cs.c: remove unused
     label") from and Signed-off-by Adrian Bunk <bunk@stusta.de>
     
     Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
   - 2.6 sync: [PATCH] pcmcia: IDs for Elan serial PCMCIA devcies
     
     Add IDs for Elan serial PCMCIA devices. In addition, move the
     pdaudio_cf driver from matching based on manf_id and card_id to
     the more specific prod_id1 and prod_id2 to avoid false
     positives.
     
     Signed-off-by: Tony Olech <tony.olech@elandigitalsystems.com>
     Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
   - [2.6.19-SYNC] missing include in pdaudiocf_irq
     
 + PDPlus driver
   - pdplus - Replace obsolete SA_* flags
     
     Replaced obsolete SA_* flags with IRQF_* flags.
 + PPC PMAC driver
   - [POWERPC] Rename get_property to of_get_property: sound
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - [POWERPC] Remove old interface find_devices
     
     Replace uses with of_find_node_by_name and for_each_node_by_name.
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - Add wrapper for of_get_property()
   - [POWERPC] Rename device_is_compatible to of_device_is_compatible
     
     for consistency with other Open Firmware interfaces (and Sparc).
     
     This is just a straight replacement.
     
     This leaves the compatibility define in place.
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
 + PPC Tumbler driver
   - [POWERPC] sound: Constify & voidify get_property()
     
     Now that get_property() returns a void *, there's no need to cast it
     return value. Also, treat the return value as const, so we can
     constify get_property later.
     
     powerpc-specific sound driver changes.
     
     Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - Fix tumbler.patch
     
     The tumbler driver doesn't compile. This patch patches the patch.
     (I tested it on 2.6 kernel only)
     
     Signed-off-by Giuliano Pochini <pochini@shiny.it>
   - [POWERPC] Rename get_property to of_get_property: sound
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - [POWERPC] Remove old interface find_devices
     
     Replace uses with of_find_node_by_name and for_each_node_by_name.
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
   - Add wrapper for of_get_property()
   - [POWERPC] Rename device_is_compatible to of_device_is_compatible
     
     for consistency with other Open Firmware interfaces (and Sparc).
     
     This is just a straight replacement.
     
     This leaves the compatibility define in place.
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: Paul Mackerras <paulus@samba.org>
 + PXA Mainstone driver
   - 2.6 GIT kernel sync
   - linux 2.6 code sync
 + RME HDSP driver
   - hdsp - Add support for fine tuning of sample rate support to HDSP 9632
     
     Add "DDS Sample Rate Offset" control. Allows values in Hz from -5000 to +5000.
     The value is added to the nominal sample rate and written to the DDS register.
     
     Signed-off-by: Julian Cable <julian_cable@yahoo.com>
   - hdsp: support for mixer matrix of RME9632 rev 152
     
     Added the support for mixer matrix of RME9632 rev 152.
     
     Signed-off-by: Remy Bruno <remy.bruno@trinnov.com>
   - hdsp: precise_ptr control switched off by default
     
     precise_ptr option causes dysfunction with hdsp driver.
     Turn it off as default.
     
     Signed-off-by: Remy Bruno <remy.bruno@trinnov.com>
   - hdsp - Add DDS register support for RME9632 rev >= 152
     
     Add DDS register support for RME9632 rev >= 152.
     This register sets the sample rate for these cards and is required
     in addition to the standard control register. It corresponds to a
     quartz divisor.
     
     Signed-off-by: Remy Bruno <remy.bruno@trinnov.com>
 + RME9652 driver
   - Add missing sysfs device assignment for ALSA PCI drivers
     
     Added the missing sysfs device assignment for ALSA PCI drivers.
     
   - hdspm - Fix printk warnings
     
     sound/pci/rme9652/hdspm.c: In function 'snd_hdspm_hw_params':
     sound/pci/rme9652/hdspm.c:3681: warning: format '%08X' expects type 'unsigned int', but argument 4 has type 'unsigned char *'
     sound/pci/rme9652/hdspm.c:3692: warning: format '%08X' expects type 'unsigned int', but argument 4 has type 'unsigned char *'
   - hdspm: Add support for AES32
     
     Add support for AES32. Difference between MADI and AES32 is done
     through revision. Master support is not finished for now (RME so-called DDS
     feature is not supported yet)
     
     Signed-off-by: Remy Bruno <remy.bruno@trinnov.com>
   - hdspm - Support for Master mode of AES32 and recent MADI
     
     The current MADI driver was found not to completely work, at least on recent
     MADI cards (rev 204), in particular at 96kHz. This patch solves this:
       * Add support of DDS feature
       * Channel map fixed
       * Channel/rate rules fixed
       * DMA allocation fixed (need to alloc for all channels and not only for the
         used ones)
     Full support for AES32 master mode was added:
       * Add support of DDS feature
       * Channel map fixed
       * Channel/rate rules fixed
     
     Signed-off-by: Remy Bruno <remy.bruno@trinnov.com>
   - rme9652 - Fix the hw_pointer check
     
     The negative check in hw_pointer callback doesn't work because the
     value is unsigned.  Cast to int in the comparison to fix this.
 + RTC timer driver
   - rtctimer: handle RTC interrupts with a tasklet
     
     The calls to rtc_control() from inside the interrupt handler can upset
     the RTC code, so move our interrupt handling code to a tasklet.
   - is_power_of_2 in rtctimer.c
     
     Replacing (n & (n-1)) in the context of power of 2 checks
     with is_power_of_2
     
     Signed-off-by: vignesh babu <vignesh.babu@wipro.com>
 + SA11xx UDA1341 driver
   - 2.6 sync: all remaining one line changes
 + SAA7134 driver
   - V4L/DVB (4613): Unmute/mute saa7134 when opening/closing the audio capture device
     
     This patch should enable unmuting the audio device when opening it (and
     posterior muting when closing it), doing away with the need for unmute
     ioctls or v4lctl usage.
     
     Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
     Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
   - 2.6 kernel sync - kernel subdirectory
   - 2.6 sync - missing updates from previous patch and more
 + SB drivers
   - Fix SB-module dependency with PCI drivers
     
     A few PCI drivers like ALS4000 and CS5530 require the SB16-codes.
     This patch fixes / improves the dependency between SB modules and
     PCI drivers.
   - sb16: add request_firmware()
     
     Load the CSP programs using request_firmware(), if possible, instead of
     using the built-in firmware blobs.
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
     
     Add support for Cyrix/NatSemi Geode SC5530 (VSA1).
     The driver is snd-cs5530.
     
     Signed-off-by Ash Willis <ashwillis@programmer.net>
   - Remove IRQF_DISABLED for shared PCI irqs
     
     Fix IRQ flags for PCI devices.
     The shared IRQs for PCI devices shouldn't be allocated with
     IRQF_DISABLED.  Also, when MSI is enabled, IRQF_SHARED shouldn't
     be used.
     
     The patch removes unnecessary cast in request_irq and free_irq,
     too.
 + SB16/AWE driver
   - Enable Kconfig options for external firmwares
     
     Some drivers are already ifdefs for enabling external firmwares
     but not defined in Kconfig.  Now they appear as the kernel configs.
   - sb16: add request_firmware()
     
     Load the CSP programs using request_firmware(), if possible, instead of
     using the built-in firmware blobs.
   - Don't use request_firmware if internal firmwares are defined
     
     Don't use request_firmware() if the internal firmwares are defined
     via Kconfig.  Otherwise it results in a significant delay at loading
     time (minutes).
   - Fix patch files for request_firmware()
     
     Fix patch files for request_firmware()
   - Add support for Cyrix/NatSemi Geode CS5530 (VSA1)
     
     Add support for Cyrix/NatSemi Geode SC5530 (VSA1).
     The driver is snd-cs5530.
     
     Signed-off-by Ash Willis <ashwillis@programmer.net>
 + SPARC AMD7930 driver
   - [SOUND] sparc/amd7930: Use __devinit and __devinitdata as needed.
     
     Fixes section-mismatch errors.
     
     Signed-off-by: David S. Miller <davem@davemloft.net>
   - [SPARC/64] constify of_get_property return: sound
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: David S. Miller <davem@davemloft.net>
 + SPARC DBRI driver
   - sparc dbri comment fix
     
     This is a comment fix to avoid misleading about locking in the
     dbri_cmdsend.
     
     Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
   - [PATCH] NULL noise removal
     
     
     Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - [PATCH] sound/sparc/dbri: 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>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 + SPARC cs4231 driver
   - Sparc CS4231: Fix IRQ return value and initialization.
     
     SBUS: Change IRQ-handler return value from 0 to IRQ_HANDLED and
     fix some initialisation problems.
     
     Change period_bytes_min from 4096 to 256 to allow driver to work with
     low latency (VOIP) applications. Hope this does not break EBUS.
     
     Signed-off-by: Georg Chini <georg.chini@triaton-webhosting.com>
     Signed-off-by: David S. Miller <davem@davemloft.net>
   - Sparc CS4231: Use 64 for period_bytes_min
     
     This matches what the ISA cs4231 driver uses.
     
     Tested by Georg Chini.
     
     Signed-off-by: David S. Miller <davem@davemloft.net>
   - [SPARC/64] constify of_get_property return: sound
     
     Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
     Signed-off-by: David S. Miller <davem@davemloft.net>
   - Fix compilation error in sparc/cs4231.c
     
     Removed the unnecessary line I forgot in the last clean-up patch
     wrt snd_pcm_group_for_each_entry().
 + Serial BUS drivers
   - reflect new workqueue changes (alsa-driver tree is compilable again on 2.6.16)
   - pt2258: add to export-objs
     
     Mark pt2258 as containing exported symbols.
   - Improved delayed_work wrapper
     
     Improved delayed_work wrapper, to be built without patching.
   - Enable the analog loopback of the Revolution 5.1
     
     Enable the analog loopback of the Revolution 5.1 card.
     
     This patch adds support for the PT2258 volume controller and modifies
     the Revolution 5.1 driver to make use of this facility.  This allows
     to control the analog loopback of the card.
     
     Signed-off-by: Jochen Voss <voss@seehuhn.de>
 + SoC Audio for the Atmel AT91 System-on-Chip
   - soc - ASoC 0.13 AT91xxxx slave patch
     
     This patch adds support for I2S slave mode for the ETI_B1 machine from
     Endrelia.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - ASoC 0.13 AT91xxxx I2S
     
     This patch updates the AT91xxxx I2S driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Removed DAI capabilities matching code in favour of manual matching in
     the machine drivers.
     
     o Added DAI operations for codec and CPU interfaces.
     
     o Removed config_sysclk() function and struct snd_soc_clock_info. No
     longer needed as clocking is now configured manually in the machine
     drivers. Also removed other clocking data from structures.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - ASoC 0.13 AT91xxxx DMA
     
     This patch updates the AT91xxxx audio DMA driver to the new API in ASoC
     0.13.
     
     Changes:-
     
     o Updated to use new 0.13 data structures.
     
     o Suspend and Resume now conditionally compiled.
     
     o #include guard around at91-pcm.h header.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - ASoC 0.13 AT91xxxx Eti_B1 board support
     
     This patch updates the EtI B1 machine driver to the new API in ASoC
     0.13.
     
     Changes:-
     
     o  Manually configure DAI hardware format.
     
     o Removed config_sysclk() function. No longer needed as clocking is now
     configured manually.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Update AT91 ASoC driver for 2.6.19 kernel.
     
     Changes were required to support latest AT91 header files.
     
     Also updated to remove AT91RM9200-specific code in the ASoC
     platform drivers to support the AT91SAM9260 and AT91SAM9261
     chips, but no testing was performed on these chips.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Renamed to at91-*.c
   - ASoC AT91RM92000 audio DMA
     
     This patch adds ASoC audio DMA support to the Atmel AT91RM9200 CPU.
     
     Features:-
     
      o Playback/Capture supported.
      o 16 Bit data size.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC AT91RM92000 I2S support
     
     This patch adds I2S support to the Atmel AT91RM9200 CPU.
     
     Features:-
     
     o Playback/Capture supported.
     o 16 Bit data size.
     o 8k - 48k sample rates.
     o ssc0, ssc1 and ssc2 supported as I2S ports.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC AT91RM92000 eti_b1 machine support
     
     This patch adds support for the Endrelia ETI_B1 machine using the WM8731
     codec and the AT91RM9200 platform.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC AT91RM92000 build
     
     This patch adds a Makefile and Kconfig to build the ASoC AT91RM9200
     support.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC DAI capabilities labelling
     
     This patch suggested by Takashi changes the DAI capabilities definitions
     in pxa-i2s.c, at91rm9200-i2s.c, wm8731.c, wm8750.c and wm9712.c to use a
     label = value style.
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - Remove trailing whitespaces from soc/* files
     
     Remove trailing whitespaces from soc/* files added by the
     conversion to C99-style initialization.
   - ASoC AT91xxxx - SSC port DSP support
     
     This patch series by Frank Madarino updates the AT91xxxx core to add
     DSP/PCM audio hardware formats.
     
     Changes:-
     
      o Rename at19-i2s.c -> at91-ssc.c
      o Rename at91-i2s.h -> at91-ssc.h
      o Add DSP hardware formats.
      o Rename various I2S labels to SSC
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC AT91xxxx eti B1 machine SSC changes
     
     This patch by Frank Madarino updates the eti B1 machine to use the newer
     AT91xxxx SSC core with the DSP/PCM audio hardware changes.
     
     Changes:-
     
      o #include "at91-ssc.h" instead of "at91-i2s.h"
      o Rename various I2S labels to SSC
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC AT91xxxx build fix
     
     This patch by Frank Madarino updates the AT91xxxx Makefile and Kconfig
     to build the renamed SSC files.
     
     Changes:-
     
     o Rename various i2s labels to ssc
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Rename soc/at92/at91-i2s.c to at91-ssc.c
   - Change AT91 PDC register defines for 2.6.20 kernel
     
     Use the new PDC register name defines that were updated
     in Linux 2.6.20.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Solve typos/compilation problems for debug functions in soc-dapm and at91-i2s
     
     soc-dapm
     ·Removed list_for_each since the loop is list_for_each_entry() and
      not list_for_each(). Thanks to Liam Girdwood and Seth Forshee.
     
     at91-i2s
     ·Fixed typo in dai modes definition.
     ·Fixed struct member name in at91_ssc_info->ssc_state.
     ·Fixed compilation problem, ssc_state is bundled in at91_ssc_info.
     
     Signed-off-by: Raúl Sánchez Siles <rss@barracuda.es>
     Signed-off-by: Seth Forshee <seth.forshee@gmail.com>
   - ASoC at91 - Fix NULL pointer dereference in at91_i2s_shutdown
     
     This patch fixes a NULL pointer exception which occurs when a
     substream is opened and immediately closed.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - sound: SPIN_LOCK_UNLOCKED cleanup
     
     SPIN_LOCK_UNLOCKED cleanup,use __SPIN_LOCK_UNLOCKED instead
     
     Signed-off-by: Milind Arun Choudhary <milindchoudhary@gmail.com>
   - soc - Fix dependencies in Kconfig files
     
     Fixed dependencies in Kconfig files of soc drivers.
     
   - ASoC AT91 DAI modes update
     
     This patch by Frank Mandarino updates the AT91RM9200 I2S DAI audio modes
     as follows:-
     
      o fixes a typo in the 16k mode
      o removes experimental 24k mode
      o adds a 32k mode.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Fix irq handler in soc/at91/at91rm9200-i2s.c
     
     Fixed the irq handler in soc/at91-at91rm9200-i2s.c to follow the
     new style without pt_regs.
   - Fix mask to stop AT91 SSC clock on shutdown
     
     This patch by Frank Mandarino and Hubert Kahlert fixes a bug in the AT91
     SSC (i2s) shutdown code that would erroneously disable other AT91
     peripheral clocks.
     
     Signed-off-by: Hubert Kahlert <hkahlert@hk-datentechnik.de>
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - fix SND_SOC Kconfig
     
     The new ALSA "SOC" support has bogus Kconfig ... it should
     not be presenting anything AT91-related except on AT91,
     or anything PXA-related except on PXA.  Right now, x86
     sees both of those menus, as do all other platforms.
     
     This patch removes needless Kconfig layering, and the
     related inappropriate choice presentation.
     
     Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
 + SoC Audio for the Samsung S3C24XX chips
   - ASoC S3C24xx machine drivers - s3c2443-AC97
     
     This patch adds AC97 support to the Samsung S3C2443 CPU.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC S3C24xx machine drivers - Openmoko Neo1973
     
     This patch adds ALSA support for the Openmoko Neo1973 phone. Features:-
     
      * HiFi Playback and capture.
      * Phone calls supported.
      * Support for BT PCM in WM8753 voice interface.
      * Support for LM4857 audio amp.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC S3C24xx machine drivers - SMDK 2443
     
     This patch adds ALSA support for the SMDK2443 reference board.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC S3C24xx machine drivers - Kconfig
     
     This patch adds Kconfig and build support for the Neo1973, SMDK2443 and
     S3C2443 AC97 ALSA audio drivers.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Add ASoC s3cs4xx ac97 codes
     
     Add ASoC s3cs4xx ac97 codes to build.
   - soc - Fix dependencies in s3c24xx/Kconfig
     
     Fixed dependencies in soc/s3c24xx/Kconfig file.
   - ASoC Samsung S3c24xx updates - audio DMA cleanup
     
     This patch cleans up the audio DMA for the Samsung S3C24xx platform.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC Samsung S3C24xx updates - i2s
     
     This patch adds DMA size fields to the S3C24xx audio DMA params and
     exports the S3C24xx I2S digital audio interface.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Fix ASoC s3c24xx-pcm spinlock bug
     
     This should fix a spinlock lockup bug on the s3c24xx arch.
     
     From: Zoltan Devai <zdevai@gmail.com>
   - ASoC Samsung S3C24xx I2S support
     
     This patch by Ben Dooks from Simtec Electronics adds ASoC I2S support
     for the Samsung S3C24xx CPU.
     
     Signed-off-by: Ben Dooks <ben@simtec.co.uk>
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC Samsung S3C24xx audio DMA
     
     This patch by Ben Dooks from Simtec Electronics adds ASoC audio DMA
     support for the Samsung S3C24xx CPU.
     
     Signed-off-by: Ben Dooks <ben@simtec.co.uk>
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC Samsung S3C24xx build
     
     This patch builds the Samsung S3C24xx audio DMA and I2S drivers.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Fix build with soc/s3c24xx-* drivers
 + SoC Codec AC97
   - soc - ASoC 0.13 generic AC97 codec
     
     This patch updates the AC97 codec driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Removed DAI capabilities matching code in favour of manual matching in
     the machine drivers.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC codecs: generic AC97 support
     
     This patch allows the std Alsa AC97 codec driver to use any AsoC AC97
     controller driver. Currently, only HiFi playback and Capture are
     supported atm.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC export AC97 DAI
     
     This patch exports the ASoC AC97 Digital Audio Interface as a GPL'ed
     symbol.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC AC97 static GPL symbol fix
     
     This patch fixes a bug whereby the GPL'ed symbol ac97_dai was being
     declared as static.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC AC97 device reg bugfix
     
     This patch fixes a bug whereby AC97 bus device data was being clobbered
     when AC97 codecs using the generic ac97_codec.c driver were being
     registered. Codecs that didn't use the generic driver were unaffected
     (e.g. WM9712, WM9713).
     
     Changes:-
     
      o Add new AC97 codec class for custom (or need bus dev registration)
     AC97 codecs.
      o Only register/deregister this custom codec device with the AC97 bus.
     The generic AC97 driver already does this for generic codec devices.
     
     This may be related to bug #3038 :-
     
     https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3038
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
 + SoC Codec WM8731
   - soc - ASoC 0.13 WM8731 codec
     
     This patch updates the WM8731 codec driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Removed DAI capabilities matching code in favour of manual matching in
     the machine drivers.
     
     o Added DAI operations for codec and CPU interfaces.
     
     o Removed config_sysclk() function and struct snd_soc_clock_info. No
     longer needed as clocking is now configured manually in the machine
     drivers. Also removed other clocking data from structures.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC codecs: WM8731 support
     
     This patch adds ASoC support for the WM8731 codec.
     
     Supported features:-
     
      o Capture/Playback/Sidetone/Bypass.
      o 16 & 24 bit audio.
      o 8k - 96k sample rates.
      o DAPM.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC DAI capabilities labelling
     
     This patch suggested by Takashi changes the DAI capabilities definitions
     in pxa-i2s.c, at91rm9200-i2s.c, wm8731.c, wm8750.c and wm9712.c to use a
     label = value style.
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - Remove trailing whitespaces from soc/* files
     
     Remove trailing whitespaces from soc/* files added by the
     conversion to C99-style initialization.
   - soc - Clean up with kmemdup()
     
     Clean up by replacing with kmemdup().
   - ASoC - mixer name changes for older OSS app support
     
     This patch suggested by Richard Purdie changes the names of some WM8731
     and WM8750 mixers so that they will be recognised by some older OSS
     mixer apps.
     
     Changes:-
     
      o WM8731 Playback changed to Master Playback
      o WM8750 Out1 changed to Headphone
      o WM8750 Out2 changed to Speaker
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
     
     This patch adds support for the DAI BCLK to be generated by multiplying
     Rate * Channels * Word Size (RCW).
     
     This now gives 3 options for BCLK clocking and synchronisation :-
     
      1. BCLK = Rate * x
     
      2. BCLK = MCLK / x
     
      3. BCLK = Rate * Chn * Word Size.  (New)
     
     Changes:-
     
      o Add support for RCW generation of BCLK
      o Update Documentation to include RCW.
      o Update DAI documentation for label = value DAI modes.
      o Add RCW support to wm8731, wm8750 and pxa2xx-i2s drivers.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC codec error reporting
     
     This patch improves the codec probe() error reporting by printing error
     messages when the card or pcms fail to register.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC WM8731 support for 32k @ 12MHz sysclk
     
     This patch adds support for 32k audio on the WM8731 when running from a
     12MHz system clock.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
 + SoC Codec WM8750
   - soc - ASoC 0.13 WM8750 codec driver
     
     This patch updates the WM8750 codec driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Removed DAI capabilities matching code in favour of manual matching in
     the machine drivers.
     
     o Added DAI operations for codec and CPU interfaces.
     
     o Removed config_sysclk() function and struct snd_soc_clock_info. No
     longer needed as clocking is now configured manually in the machine
     drivers. Also removed other clocking data from structures.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC codecs: WM8750 support
     
     This patch adds ASoC support for the WM8750 codec.
     
     Supported features:-
     
     o Capture/Playback/Sidetone/Bypass.
     o 16 & 24 bit audio.
     o 8k - 96k sample rates.
     o DAPM.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - soc - Clean up with kmemdup()
     
     Clean up by replacing with kmemdup().
   - wm8750 typo fix
     
     I quuestion the testing status of that patch!
     
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
   - soc - Fix delayed_work related changes on 2.6.20 kernel
     
     Fix the changes realted to delayed_work in soc/codecs/wm8750.c.
   - ASoC - mixer name changes for older OSS app support
     
     This patch suggested by Richard Purdie changes the names of some WM8731
     and WM8750 mixers so that they will be recognised by some older OSS
     mixer apps.
     
     Changes:-
     
      o WM8731 Playback changed to Master Playback
      o WM8750 Out1 changed to Headphone
      o WM8750 Out2 changed to Speaker
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
     
     This patch adds support for the DAI BCLK to be generated by multiplying
     Rate * Channels * Word Size (RCW).
     
     This now gives 3 options for BCLK clocking and synchronisation :-
     
      1. BCLK = Rate * x
     
      2. BCLK = MCLK / x
     
      3. BCLK = Rate * Chn * Word Size.  (New)
     
     Changes:-
     
      o Add support for RCW generation of BCLK
      o Update Documentation to include RCW.
      o Update DAI documentation for label = value DAI modes.
      o Add RCW support to wm8731, wm8750 and pxa2xx-i2s drivers.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - Use global workqueue
     
     Use global workqueue for simplicity instead of own workqueue
     in SoC core and wm8750 codes.
   - ASoC codec error reporting
     
     This patch improves the codec probe() error reporting by printing error
     messages when the card or pcms fail to register.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
 + SoC Codec WM8753
   - SoC WM8753 codec support
     
     This patch series adds support for the WM8753 codec as found on the
     OpenMoko Neo 1973 (other Neo 1973 and Samsung S3C24xx patches to follow
     today) as well other new devices.
     
     Features:-
     
      o HiFi and Voice DAI supported (inc runtime switching of DAI mode)
      o DAPM
      o All mixers
      o PLL calculator
      o 16,20 and 24bit samples.
      o WM8753 I2C ID added to include/linux/i2c-id.h
     
     From: Liam Girdwood <lg@opensource.wolfsonmicro.com>
     Signed-off-by: Harald Welte <laforge@openmoko.org>
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Seth Forshee <seth.forshee@gmail.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Add soc/codecs/wm8753.c for build
 + SoC Codec WM9712
   - soc - ASoC 0.13 WM9712 codec driver
     
     This patch updates the WM9712 codec driver to the new API in ASoC 0.13.
     
     Changes:-
     
     o Removed DAI capabilities matching code in favour of manual matching in
     the machine drivers.
     
     o Added DAI operations for codec and CPU interfaces.
     
     o Removed config_sysclk() function and struct snd_soc_clock_info. No
     longer needed as clocking is now configured manually in the machine
     drivers. Also removed other clocking data from structures.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC codecs: WM9712 support
     
     This patch adds ASoC support for the WM9712 codec.
     
     Supported features:-
     
     o Capture/Playback/Sidetone/Bypass.
     o Aux DAC.
     o 8k - 48k sample rates.
     o DAPM.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC WM9712 kmemdup
     
     This patch creates the WM9712 codec register cache using kmemdup instead
     of doing a kzalloc followed by a memcpy.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Remove trailing white space from wm9712.c
     
     This patch removes some trailing white space from the WM9712 ASoC codec
     driver.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC AC97 device reg bugfix
     
     This patch fixes a bug whereby AC97 bus device data was being clobbered
     when AC97 codecs using the generic ac97_codec.c driver were being
     registered. Codecs that didn't use the generic driver were unaffected
     (e.g. WM9712, WM9713).
     
     Changes:-
     
      o Add new AC97 codec class for custom (or need bus dev registration)
     AC97 codecs.
      o Only register/deregister this custom codec device with the AC97 bus.
     The generic AC97 driver already does this for generic codec devices.
     
     This may be related to bug #3038 :-
     
     https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3038
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - Fix WM9712 register cache entry
     
     This patch by Joe Sauer fixes the WM9712 codec register cache value for
     register 0x08. Value should be 0x0f0f and not 0xf0f0.
     
     Signed-off-by: Joe Sauer <jsauer@vernier.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - WM9712 PCM volume
     
     This patch suggested by Joe Sauer adds PCM playback volume kcontrol for
     the WM9712.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC codec error reporting
     
     This patch improves the codec probe() error reporting by printing error
     messages when the card or pcms fail to register.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
 + SoC Dynamic Audio Power Management
   - soc - 0.13 ASoC DAPM bug fix for unnamed streams
     
     This patch fixes a bug whereby an unnamed stream would cause a NULL
     pointer ref in snd_soc_dapm_stream_event().
     
     Signed-off-by: Seth Forshee <seth.forshee@gmail.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC: core and dapm headers
     
     This patch adds the ASoC and DAPM headers.
     
     Features:-
     
      o Defines Digital Audio Interface (DAI) API
      o Defines Codec, Platform and Machine API
      o Defines Dynamic Audio Power Management API
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC: dynamic audio power management (DAPM)
     
     This patch adds Dynamic Audio Power Management (DAPM) to ASoC.
     
     Dynamic Audio Power Management (DAPM) is designed to allow portable and
     handheld Linux devices to use the minimum amount of power within the
     audio subsystem at all times. It is independent of other kernel PM and
     as such, can easily co-exist with the other PM systems.
     
     DAPM is also completely transparent to all user space applications as
     all power switching is done within the ASoC core. No code changes or
     recompiling are required for user space applications. DAPM makes power
     switching decisions based upon any audio stream (capture/playback)
     activity and audio mixer settings within the device.
     
     DAPM spans the whole machine. It covers power control within the entire
     audio subsystem, this includes internal codec power blocks and machine
     level power systems.
     
     There are 4 power domains within DAPM:-
     
     1. Codec domain - VREF, VMID (core codec and audio power)
     Usually controlled at codec probe/remove and suspend/resume, although
     can be set at stream time if power is not needed for sidetone, etc.
     
     2. Platform/Machine domain - physically connected inputs and outputs
     Is platform/machine and user action specific, is configured by the
     machine driver and responds to asynchronous events e.g when HP are
     inserted
     
     3. Path domain - audio subsystem signal paths
     Automatically set when mixer and mux settings are changed by the user.
     e.g. alsamixer, amixer.
     
     4. Stream domain - DAC's and ADC's.
     Enabled and disabled when stream playback/capture is started and stopped
     respectively. e.g. aplay, arecord.
     
     All DAPM power switching decisions are made automatically by consulting
     an audio routing map of the whole machine. This map is specific to each
     machine and consists of the interconnections between every audio
     component (including internal codec components).
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC DAPM switching for reentrant codec paths
     
     This patch fixes an issue whereby power was applied to any inactive
     analog path that would leave and reenter a codec (e.g. ACOP -> ACIN on
     WM8753).  This change now checks for such paths and DAPM will power them
     down when not in use.
     
     Signed-off-by: Seth Forshee <seth.forshee@gmail.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - Clean up with kmemdup()
     
     Clean up by replacing with kmemdup().
   - sound/soc/soc-dapm.c: make 4 functions static
     
     Make the following needlessly global functions static:
     
     - dapm_power_widgets()
     - dapm_mux_update_power()
     - dapm_mixer_update_power()
     - dapm_free_widgets()
     
     Signed-off-by: Adrian Bunk <bunk@stusta.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
 + SoC Layer
   - Fix the soc code after dhowells workqueue changes.
     From: Andrew Morton <akpm@osdl.org>
     
     I converted the workqueues to per-device while I was there.  It seems
     strange to create a new kernel thread (on each CPU!) and to then only
     have a single global work to ever be queued upon it.
     
     Plus without this, I'd have to use the _NAR stuff, gawd help me.
     
     Does that workqueue really need to be per-cpu?
     
     Does that workqueue really need to exist?  Why not use keventd?
     
     Cc: Takashi Iwai <tiwai@suse.de>
     Cc: David Howells <dhowells@redhat.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
   - soc - 0.13 ASoC headers
     
     This patch updates the API's to include the new DAI configuration and
     clocking architecture.
     
     Changes:-
     
      o Removed DAI automatic matching and capabilities structure (struct
     snd_soc_dai_mode) and macros.
     
      o Added DAI operations for codec and CPU interfaces.
     
      o Removed config_sysclk() function and struct snd_soc_clock_info. No
     longer needed as clocking is now configured manually in the machine
     drivers. Also removed other clocking data from structures.
     
      o Updated version to 0.13
     
      o Added shift to SOC_SINGLE_EXT kcontrol macro.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - ASoC 0.13 core changes
     
     This patch updates the ASoC core to the new DAI matching and clocking
     API in version 0.13
     
     Changes:-
     
      o Removed DAI capabilities matching code in favour of manual matching
     in the machine drivers.
     
      o Added DAI operations for codec and CPU interfaces.
     
      o Removed config_sysclk() function and struct snd_soc_clock_info. No
     longer needed as clocking is now configured manually in the machine
     drivers. Also removed other clocking data from structures.
     
      o Added machine driver prepare callback.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC: core and dapm headers
     
     This patch adds the ASoC and DAPM headers.
     
     Features:-
     
      o Defines Digital Audio Interface (DAI) API
      o Defines Codec, Platform and Machine API
      o Defines Dynamic Audio Power Management API
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC: core code
     
     This patch is the core of ASoC functionality.
     
     The ASoC core is designed to provide the following features :-
     
     o  Codec independence. Allows reuse of codec drivers on other platforms
     and machines.
     
     o Platform driver code reuse. Reuse of platform specific audio DMA and
     DAI drivers on different machines.
     
     o Easy I2S/PCM digital audio interface configuration between codec and
     SoC. Each SoC interface and codec registers their audio interface
     capabilities with the core at initialisation. The capabilities are
     subsequently matched and configured at run time for best power and
     performance when the application hw params are known.
     
      o Machine specific controls/operations: Allow machines to add controls
     and operations to the audio subsystem. e.g. volume control for speaker
     amp.
     
     To achieve all this, ASoC splits an embedded audio system into 3
     components :-
     
     1. Codec driver: The codec driver is platform independent and contains
     audio controls, audio interface capabilities, codec dapm and codec IO
     functions.
     
     2. Platform driver: The platform driver contains the audio dma engine
     and audio interface drivers (e.g. I2S, AC97, PCM) for that platform.
     
     3. Machine driver: The machine driver handles any machine specific
     controls and audio events. i.e. turning on an amp at start of playback.
     
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.Girdwood@wolfsonmicro.com>
   - ASoC: Build files
     
     This patch adds support for building the ASoC core and the dynamic audio
     power management support.
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC codecs: build files
     
     This patch adds an ASoC Makefile and Kconfig for the WM8731, WM8750 and
     WM9712 codecs.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC AT91RM92000 build
     
     This patch adds a Makefile and Kconfig to build the ASoC AT91RM9200
     support.
     
     Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC debug output build breakage
     
     This patch fixes a build failure when ASoC debug is enabled.
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC WM8753 codec - build changes
     
     This patch adds the WM8753 codec driver to the kernel build system.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Additional credits to soc-core
     
     This patch adds copyright and credit for my good friend Richard Purdie
     from OpenedHand for his help and code contribution throughout the
     development of the core code. Many thanks Richard (I guess we overlooked
     this in trying to get everything working well).
     
     It also adds some extra comments wrt to DAI clock matching.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - SoC codecs - fix Kconfig - depends -> depends on
   - SH7760 ASoC support
     
     ALSA ASoC support for SH7760
     
     This patch adds ALSA ASoC drivers for the Audio interfaces
     of the SH7760 SoC:
     
     Add driver for the SH7760 DMA engine (dmabrg)
     Add AC97 driver for HAC unit(s) found on SH7760/SH7780
     Add I2S driver for SSI unit(s) found on SH7760/SH7780
     Add a generic SH7760-AC97 machine driver.
     Hook it all up with the build system.
     
     Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
   - ASoC - Bit clock matching error
     
     This patch by Philipp Zabel fixes a bug whereby the BCLK matching fails
     when the Codec BCLK is constant and the CPU BCLK is based upon a
     divider.
     
     Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc-core: fix multi-line string literal
     
     Properly quote a string that had an embedded newline.
   - ASoC - Fix build warnings in soc-core.c
     
     This patch fixes some build warnings in soc-core.c
     
     Changes:-
     
      o Check the return value of soc_ac97_dev_register()
      o Check return value of calls to device_create_file()
     
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - soc - Fix delayed_work related changes on 2.6.20 kernel
     
     Fix the changes realted to delayed_work in soc/codecs/wm8750.c.
   - ASoC very minor coding style fix for snd_soc_new_pcms()
     
     This very minor patch fixes the snd_soc_new_pcms() function to comply
     with the kernel coding style.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - Fix dependencies in Kconfig files
     
     Fixed dependencies in Kconfig files of soc drivers.
     
   - ASoC AC97 device reg bugfix
     
     This patch fixes a bug whereby AC97 bus device data was being clobbered
     when AC97 codecs using the generic ac97_codec.c driver were being
     registered. Codecs that didn't use the generic driver were unaffected
     (e.g. WM9712, WM9713).
     
     Changes:-
     
      o Add new AC97 codec class for custom (or need bus dev registration)
     AC97 codecs.
      o Only register/deregister this custom codec device with the AC97 bus.
     The generic AC97 driver already does this for generic codec devices.
     
     This may be related to bug #3038 :-
     
     https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3038
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC pxa2xx build support
     
     This patch builds ASoC pxa2xx support for Corgi, Spitz, Tosa and Poodle
     Zaurus machines.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC: Add support for BCLK based on (Rate * Chn * Word Size)
     
     This patch adds support for the DAI BCLK to be generated by multiplying
     Rate * Channels * Word Size (RCW).
     
     This now gives 3 options for BCLK clocking and synchronisation :-
     
      1. BCLK = Rate * x
     
      2. BCLK = MCLK / x
     
      3. BCLK = Rate * Chn * Word Size.  (New)
     
     Changes:-
     
      o Add support for RCW generation of BCLK
      o Update Documentation to include RCW.
      o Update DAI documentation for label = value DAI modes.
      o Add RCW support to wm8731, wm8750 and pxa2xx-i2s drivers.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC Kconfig description
     
     This patch makes the ASoC Kconfig descriptions a little more meaningful.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - soc - Use global workqueue
     
     Use global workqueue for simplicity instead of own workqueue
     in SoC core and wm8750 codes.
   - ASoC codec probe failure bug
     
     This patch fixes a bug whereby some resources were not being freed when
     codec probe() failed.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC Samsung S3C24xx build
     
     This patch builds the Samsung S3C24xx audio DMA and I2S drivers.
     
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC force running of delayed PM work at suspend() and remove()
     
     This patch fixes a bug whereby the power management delayed work would
     never be run at driver suspend() or module remove(). Delayed work would
     be created (after audio had finished) with a long delay (~5 secs) and
     was sometimes never queued before flush_scheduled_work() was being
     called at suspend or module remove. This caused the delayed work to
     queued after the module had been removed or after resume.
     
     This patch forces any delayed work to complete by cancelling it (timer
     cannot fire and add it to queue later), scheduling it for now and
     waiting on it's completion.
     
     This is something I probably would like to add to workqueue.c in the
     next merge window, however it's here atm because it can oops.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - fix SND_SOC Kconfig
     
     The new ALSA "SOC" support has bogus Kconfig ... it should
     not be presenting anything AT91-related except on AT91,
     or anything PXA-related except on PXA.  Right now, x86
     sees both of those menus, as do all other platforms.
     
     This patch removes needless Kconfig layering, and the
     related inappropriate choice presentation.
     
     Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
 + SoC PXA2xx Corgi
   - soc - ASoC Sharp corgi machine
     
     This patch updates the Sharp corgi machine driver to the new API in ASoC
     0.13.
     
     Changes:-
     
     o  Manually configure DAI hardware format.
     
     o Removed config_sysclk() function. No longer needed as clocking is now
     configured manually.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Add missing soc/pxa entries
     
     Added missing soc/pxa entries to build properly.
   - ASoC pxa2xx Corgi machine support
     
     This patch adds Alsa audio support to the Sharp Zaurus SL-C7x0/C860
     (Corgi) machines.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Graeme Gregory <dp@xora.org.uk>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
 + SoC PXA2xx Poodle
   - soc - ASoC 0.13 Sharp poodle machine
     
     This patch updates the Sharp poodle machine driver to the new API in
     ASoC 0.13.
     
     Changes:-
     
     o  Manually configure DAI hardware format.
     
     o Removed config_sysclk() function. No longer needed as clocking is now
     configured manually.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - Add missing soc/pxa entries
     
     Added missing soc/pxa entries to build properly.
   - ASoC pxa2xx Poodle machine support
     
     This patch adds Alsa audio support to the Sharp Zaurus SL-C5600 (Poodle)
     machine.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
 + SoC PXA2xx Spitz
   - soc - ASoC 0.13 spitz machine
     
     This patch updates the Sharp spitz machine driver to the new API in ASoC
     0.13.
     
     Changes:-
     
     o  Manually configure DAI hardware format.
     
     o Removed config_sysclk() function. No longer needed as clocking is now
     configured manually.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC pxa2xx Spitz machine support
     
     This patch adds Alsa audio support to the Sharp Zaurus SL-C1000/SL-C3x00
     (Akita/Spitz) machines.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
 + SoC PXA2xx Tosa
   - soc - ASoC 0.13 Sharp tosa machine
     
     This patch updates the Sharp tosa machine driver to the new API in ASoC
     0.13.
     
     Changes:-
     
     o  Update machine operations to new API.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC pxa2xx Tosa machine support
     
     This patch adds Alsa audio support to the Sharp Zaurus SL-C6000 (Tosa)
     machine.
     
     From: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
     Signed-off-by: Dirk Opfer <Dirk@Opfer-Online.de>
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
 + SoC SH7760 AC97
   - SH7760 ASoC support
     
     ALSA ASoC support for SH7760
     
     This patch adds ALSA ASoC drivers for the Audio interfaces
     of the SH7760 SoC:
     
     Add driver for the SH7760 DMA engine (dmabrg)
     Add AC97 driver for HAC unit(s) found on SH7760/SH7780
     Add I2S driver for SSI unit(s) found on SH7760/SH7780
     Add a generic SH7760-AC97 machine driver.
     Hook it all up with the build system.
     
     Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
   - Add soc/sh entries
     
     Added the new soc/sh entries.
 + USB
   - Add Native Instrument usb audio device support
     
     Add snd-usb-caiaq driver to support caiaq usb-audio devices from
     Native Instrument:
     	* Native Instruments RigKontrol2
     	* Native Instruments Kore Controller
     	* Native Instruments Audio Kontrol 1
     	* Native Instruments Audio 8 DJ
     
     Signed-off-by: Daniel Mack <daniel@caiaq.org>
     Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
 + USB USX2Y
   - usbusx2yaudio: kfree(NULL) is valid
     
     if (!x) kfree(x); is not needed since kfree(NULL) is valid.
     
     Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
   - usb-usx2y: fix the start_frame fix
     
     Create a separate symbol for the start_frame mask in order to move the
     preprocessor directives out of macro parameters.
   - [PATCH] mm: incorrect VM_FAULT_OOM returns from drivers
     
     Some drivers are returning OOM when it is not in response to a memory
     shortage.
     
     Signed-off-by: Nick Piggin <npiggin@suse.de>
     Cc: Dave Airlie <airlied@linux.ie>
     Cc: Jaroslav Kysela <perex@suse.cz>
     Cc: Takashi Iwai <tiwai@suse.de>
     Cc: Greg KH <greg@kroah.com>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - Repair snd-usb-usx2y over OHCI
     
     The previous patch "Repair snd-usb-usx2y for usb 2.6.18" assumed
     urb->start_frame roll over beyond MAX_INT for both UHCI & OHCI.
     This isn't true until now (kernel 2.6.20).
     Fix this by only looking at the common between OHCI & UHCI Frame number
     range.
     This is for mainline and stable kernels >= 2.6.18.
     
     Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
   - Fix usx2yaudio patches
     
     Fixed usx2yaudio patches.
   - Fix bug in snd-usb-usx2y's usX2Y_pcms_lock_check()
     
     Fix bug in snd-usb-usx2y's usX2Y_pcms_lock_check()
     
     substream can be NULL......
     in mainline, bug was introduced by:
     2006-06-22  [ALSA] Add O_APPEND flag support to PCM
     
     Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
   - Repair snd-usb-usx2y for usb 2.6.18
     
     urb->start_frame rolls over beyond MAX_INT now.
     This is for stable kernel and stable alsa.
     
     Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
   - Repair snd-usb-usx2y for usb 2.6.18
     
     urb->start_frame rolls over beyond MAX_INT now.
     This is for stable alsa-driver.
     
     Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
 + USB caiaq
   - Add Native Instrument usb audio device support
     
     Add snd-usb-caiaq driver to support caiaq usb-audio devices from
     Native Instrument:
     	* Native Instruments RigKontrol2
     	* Native Instruments Kore Controller
     	* Native Instruments Audio Kontrol 1
     	* Native Instruments Audio 8 DJ
     
     Signed-off-by: Daniel Mack <daniel@caiaq.org>
     Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
   - Add usb/caiaq entry
     
     Added usb/caiaq entries for the new snd-usb-caiaq driver.
   - snd-usb-caiaq: Make playback work
     
     some typo fixes.
     
     Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
 + USB generic driver
   - usbaudio - remove urb->bandwidth reference
     
     Recent changes in usbcore removed the bandwidth field from struct urb.
     Remove the occurence in usbaudio.c
     
     Signed-off-by: Jiri Kosina <jkosina@suse.cz>
   - usb-audio: add PCR-A PCM support
     
     Add support for the PCM interfaces of the Edirol PCR-A.
   - usbaudio - Add support for Edirol UA-101
     
     Added support for the Edirol UA-101 (only in high-speed mode) by taking
     the quirks for the UA-1000 and change them accordingly. Changes were
     made in "usbaudio.c", "usbaudio.h", and "usbquirks.h"
     
     MIDI and recording seem to work perfectly (with JACK), but playback
     gives some few glitches. I think that's the mentioned
     synchronizing-problem in the UA-1000 quirk ("FIXME: playback must be
     synchronized to capture"), so I didn't change that.
     
     ToDo: Adding Mixer-Support for the built-in
     control-panel/patch-bay/router.
     
     Signed-off-by: Bjoern Fay <mail@bfay.de>
   - usb: usbmixer error path fix
     
     Without the patch below namelist[0] will not be freed in case
     of kmalloc error.
     
     Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
   - usbaudio - Fix kobject_add() error at reconnection
     
     Fixed the error from kobject_add() at reconnection the usb audio device.
     
     This happens when an app keeps opening a device while the device is
     replugged, due to the confliction of the internal bookkept index and
     the really empty slot.
     
   - usb-audio: explicitly match Logitech QuickCam
     
     Commit 93c8bf45e083b89dffe3a708363c15c1b220c723 modified the USB device
     matching behaviour to ignore interface class matches if the device class
     is vendor-specific.
     
     This patch adds explicit ID matches for Logitech QuickCam devices, which
     have a vendor specific device class (but standards-compliant audio
     interfaces).
     
     This fixes a 2.6.20 regression where the audio component of these
     devices was no longer usable.
     
     http://bugs.gentoo.org/show_bug.cgi?id=175715
     https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/93822
     https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3040
     
     Based on a patch from sergiom
     
     Signed-off-by: Daniel Drake <dsd@gentoo.org>
   - usb-audio: work around broken M-Audio MidiSport Uno firmware
     
     The firmware of the M-Audio USB Uno MIDI Interface has, at least in
     hardware revision 1.25, a bug that garbles its USB output.  When it
     receives a Note On MIDI message that uses running status, the resulting
     USB MIDI packet has a wrong CIN (4 instead of 9) and a wrong length
     (2 bytes, the status byte is still missing).
     
     This patch adds a workaround to track the CINs and the MIDI messages of
     received USB MIDI packets to detect whether a packet with CIN 4 is a
     correct SysEx packet or a buggy running status packet.
   - usb-audio: work around wrong wMaxPacketSize on ESI M4U
     
     Add a workaround for the ESI M4U that claims to support 32-byte packets
     but ignores the remaining bytes of packets bigger than four bytes.
   - usb-audio: work around wrong frequency in CM6501 descriptors
     
     The C-Media CM6501 chip's descriptors say that altsetting 5 supports
     48 kHz, but it actually plays at 96 kHz.
   - USB: Dealias -110 code (more complete)
     
     The purpose of this patch is to split off the case when a device doe
     not reply on the lower level (which is reported by HC hardware), and
     a case when the device accepted the request, but does not reply at
     upper level. This redefinition allows to diagnose issues easier,
     without asking the user if the -110 happened "immediately".
     
     The usbmon splits such cases already thanks to its timestamp, but
     it's not always available.
     
     I adjusted all drivers which I found affected (by searching for "urb
     Out of tree drivers may suffer a little bit, but I do not expect muc
     breakage. At worst they may print a few messages.
     
     Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - [PATCH] kmemdup: some users
     
     Signed-off-by: Andrew Morton <akpm@osdl.org>
     Signed-off-by: Linus Torvalds <torvalds@osdl.org>
   - usb: usbmixer free kill urb cleanup
     
     - usb_free_urb() cleanup
     - usb_kill_urb() cleanup
     
     Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - 2.6 sync: usb: usbmidi kill urb cleanup
     
     - usb_kill_urb() cleanup
     
     Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
     Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
   - usbaudio.c: remove unneeded casts
     
     Went rummaging through usbaudio.c and found some castings that
     aren't needed as far as I can see.  Part of the KernelJanitors
     TODO list.
     
     Signed-off-by: John Daiker <daikerjohn@gmail.com>
   - usbaudio - Fix Oops with unconventional sample rates
     
     The patch fixes the memory corruption by the support of unconventional
     sample rates.  Also, it avoids the too restrictive constraints if
     any of usb descriptions contain continuous rates.
   - usbaudio - Revert the minimal period size fix patch
     
     The last patch didn't really work (false report).
     Although the hardware supports 125us minimum period, the current
     usb-audio driver code assumes the 1ms period in many places.
     Rollback the change.
   - usb-audio: another Logitech QuickCam ID
     
     This patch adds the ID for another quickcam microphone, reported by freqmod
     on ALSA ticket #0003040
     
     I'm going to submit a USB patch separately to provide a macro to simplify these
     entries, as suggested by Alan Stern. We could switch to using that in future.
     
     Signed-off-by: Daniel Drake <dsd@gentoo.org>
   - usbaudio - Coping with short replies in usbmixer
     
     This patch makes sure that short USB replies are treated as an
     error when requesting the value of a certain mixer control.
     
     Signed-off-by: Thomas Reitmayr <thomas@devbase.at>
   - usbaudio - Fix Oops with broken usb descriptors
     
     This is a patch for ALSA Bug #2724. Some webcams provide bogus
     settings with no valid rates. With this patch those are skipped.
     
     Signed-off-by: Gregor Jasny <gjasny@web.de>
   - usb-audio - Fix the minimum period size per transfer mode
     
     The minimal period size is 125us for high-speed mode while
     1ms for full-speed mode.
   - Fix hang-up at disconnection of usb-audio
     
     Fix hang-up at disconnection of usb-audio devices while accessing PCM.
     Don't handle PCM operations any more after shutdown flag is set.
     
   - usb-audio: merge playback/capture hardware information structs
     
     The hardware information structures for playback and capture streams,
     respectively, are the same, so we can use just one structure for both
     streams.
   - usb-audio: allow pausing
     
     Add pause capabilities for both USB playback and capture streams.
   - sound/usb/usbaudio: Handle return value of usb_register()
     
     Handle the return value of usb_register() in the module_init function.
     
     Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
 + USB1400 touchscreen driver
   - 2.6 sync
   - ucb1400_ts.c compilation fix (struct snd_ac97)
     From: Andrew Morton <akpm@osdl.org>
     
     Cc: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Andrew Morton <akpm@osdl.org>
 + Utils
   - reflect 'struct device *' changes from 2.6, add SND_AC97_BUS kernel dependancy
   - Add entries for sh/aica driver
     
     Added the detection of SuperH archs, added the entries for sh/aica
     driver.
   - Mark new SND_SB_* configs in mod-deps.c
     
     Mark new SND_SB_* configs in mod-deps.c as passive selections.
   - Rename AT91_SOC_I2S -> AT91_SOC_SSC
   - pc-speaker driver for 2.6.19
     
     - Rediff against 2.6.19
     - Do not pass "struct pt_regs" in an IRQ handlers,
       as per 2.6.19
     
     Signed-off-by: Stas Sergeev <stsp@aknet.ru>
   - Add some soc configs to no_cards
     
     Added some SND_SOC* configs to no_cards list to avoid the build
     of unnecessary modules.
   - Fix mod-deps to suppress snd-soc-wm8753
     
     Fix the dependency of snd-soc-wm8753 in mod-deps.
   - Fix broken build with ac97_bus module
     
     Build ac97_bus module properly, which was moved/renamed
     from pci/ac97.
   - Use external table for kernel-version dependent drivers
     
     mod-deps refers to an external file for checking the kernel-version
     dependent drivers.  $TOP/kconfig-vers is used as default.
     Now it accepts the ksublevel number, such as, 2.6.15, which means
     2.6.15 or later version.
   - Add entries for soc/sh to mod-deps.c
     
     Added some entires for soc/sh modules to mod-deps.c to ignore
     dependencies properly.
   - Fix build with soc/s3c24xx-* drivers
   - pc-speaker driver update for 2.6.18
     
     pc-speaker hook patch for 2.6.18
     
     Signed-off-by: Stas Sergeev <stsp@aknet.ru>
 + VIA82xx driver
   - via82xx - Use quirk list helper function
     
     Clean up dxs_support quirk list using snd_pci_quirk_lookup().
   - via82xx: add __devinitdata
     
     add __devinitdata to struct whitelist, since it's used within
     a __devinit function.
     Add const attribute to iterator variable, too.
     
     Compile-tested (no section warnings etc.) and run-tested
     on vt8233, 2.6.18-mm3 (hopefully applies well to current ALSA).
     
     Signed-off-by: Andreas Mohr <andi@lisas.de>
 + Wavefront drivers
   - wavefront: only declare isapnp on CONFIG_PNP
     From: David Rientjes <rientjes@google.com>
     
     isapnp[] is only used for CONFIG_PNP.  If this configuration option is
     not set, do not declare the array.
     
     Cc: Adam Belay <ambx1@neo.rr.com>
     Signed-off-by: David Rientjes <rientjes@google.com>
     Cc: Takashi Iwai <tiwai@suse.de>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
   - Enable Kconfig options for external firmwares
     
     Some drivers are already ifdefs for enabling external firmwares
     but not defined in Kconfig.  Now they appear as the kernel configs.
   - wavefront: simplify YSS225 register initialization
     
     Instead of using a somewhat algorithmic approach of initializing the
     YSS225's registers, just use a simple series of port/value pairs.
     This makes it easier to later replace or entirely remove the register
     data blob.
   - wavefront: add request_firmware()
     
     Load the YSS225 register initialization data using request_firmware(),
     if possible, instead of using the built-in data blob.
   - Don't use request_firmware if internal firmwares are defined
     
     Don't use request_firmware() if the internal firmwares are defined
     via Kconfig.  Otherwise it results in a significant delay at loading
     time (minutes).
   - Fix patch files for request_firmware()
     
     Fix patch files for request_firmware()
 + YMFPCI driver
   - Current driver does not utilize 44.1kHz high quality sampling rate converter.
     Following patch will make the driver to use the 44.1kHz SRC automatically
     if the pcm source is 44.1kHz signed 16bit stereo.
     The SRC is available in YMF754 only.
     
     Signed-off-by: Teru KAMOGASHIRA <teru@sodan.ecc.u-tokyo.ac.jp>
   - ymfpci: fix compilation on 2.4 kernels
     
     Fix the invocation of request_firmware() that takes a different
     parameter on 2.4 kernels.
   - Fix invalid assignment of PCI revision
     
     Fix the type of PCI revision to char from int and avoid invalid
     assignment with pointer cast.
   - ymfpci: fix swap_rear for S/PDIF passthrough
     
     This patch fixes incorrect assignment of swap_rear,
     which was broken since patch "ymfpci - make rear channel swap optional"
     It removes module_param rear_swap.
     
     Signed-off-by: Glen Masgai <mimosius@gmx.de>
   - ymfpci: add request_firmware()
     
     Load the DSP and controller microcode using request_firmware(), if
     possible, instead of using the built-in firmware.
 + au88x0 driver
   - sound/pci/au88x0/au88x0.c: ioremap balanced with iounmap
     
     Signed-off-by: Amol Lad <amol@verismonetworks.com>
   - Delete unused header file sound/pci/au88x0/au88x0_sb.h
     
     Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
     Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
 + ic2-id.h update
   - ASoC codecs: WM8731 support
     
     This patch adds ASoC support for the WM8731 codec.
     
     Supported features:-
     
      o Capture/Playback/Sidetone/Bypass.
      o 16 & 24 bit audio.
      o 8k - 96k sample rates.
      o DAPM.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - ASoC codecs: WM8750 support
     
     This patch adds ASoC support for the WM8750 codec.
     
     Supported features:-
     
     o Capture/Playback/Sidetone/Bypass.
     o 16 & 24 bit audio.
     o 8k - 96k sample rates.
     o DAPM.
     
     Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
     Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
   - SoC WM8753 codec support
     
     This patch series adds support for the WM8753 codec as found on the
     OpenMoko Neo 1973 (other Neo 1973 and Samsung S3C24xx patches to follow
     today) as well other new devices.
     
     Features:-
     
      o HiFi and Voice DAI supported (inc runtime switching of DAI mode)
      o DAPM
      o All mixers
      o PLL calculator
      o 16,20 and 24bit samples.
      o WM8753 I2C ID added to include/linux/i2c-id.h
     
     From: Liam Girdwood <lg@opensource.wolfsonmicro.com>
     Signed-off-by: Harald Welte <laforge@openmoko.org>
     Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
     Signed-off-by: Seth Forshee <seth.forshee@gmail.com>
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - ASoC S3C24xx machine drivers - I2C ID for LM4857
     
     This patch adds I2C ID for the LM4857 audio amp and corrects the spacing
     of the WM8731, WM8750 and WM8753 ID's.
     
     Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
   - added kernel/include/linux/i2c-id.h file from 2.6 mainstream
 + pci_ids.h update
   - sync kernel subdirectory with 2.6 GIT tree
   - 2.6 kernel sync - kernel subdirectory

alsa-lib

 + Core
   - Check _POSIX_SOURCE for timeval definition
     
     Check _POSIX_SOURCE for struct timeval definition.
     In rare cases, _POSIX_C_SOURCE isn't defined but only _POSIX_SOURCE
     is set, and it results in the confliction of timeval definition.
   - Fix build with no PCM plugin
     
     When pcm plugin is disabled, the static build fails because of
     lack of pcm_symbols_list.c.  Fixed now.
   - Add struct timeval and timespec definition when _POSIX_C_SOURCE is not defined
     
     FIXME: It might cause problems on some platforms when tv_usec is not long type.
   - fix various warnings
     See also ALSA bug#1689
   - change iface argument for namehint function to const char *
     remove snd_ctl_iface_conf_name function
   - release 1.0.13
   - Allow build without libdl and libpthread
     
     Allow building alsa-lib without libdl and libpthread.
     Added new options to configure, --with-libdl and --with-pthread.
   - Add config and plugin directory options to configure
     
     Added --with-configdir and --with-plugindir options to configure
     which specify the directories for config files and plugin objects
     respectively.  The default paths when these options are not
     specified are unchanged.
   - add snd_device_name_get_hint() function, make hints private to alsa-lib (void)
     
     We can define more string groups for one hint now. It is quite easy
     flexible for future.
   - more name hint interace updates
     - add long card name to device description
     - create empty PCM plugin to allow right hint description parsing
     - reorder devices in alsa.conf
     - make namehint more configurable (using default.namehint.showall switch)
     - add two levels basic and exteded for hints to default configuration files
     - do not show direct device aliases
     - removed all known memory leaks
   - Add --enable-symbolic-functions configure option
     
     Added --enable-symbolic-functions configure option.  This will detect
     and pass -Bsymbolic-functions linker option, which gives you better
     performance and smaller binary size.  Only recent binutils supports
     this option.
   - add support for symbol prefixes in shared libraries
     
     attached patch updates the Version script so that it supports SYMBOL_PREFIX
     
     From: Mike Frysinger <vapier@gentoo.org>
   - Add --with-ctl-plugins configure option
     
     Added --with-ctl-plugins configure option to specify the optinal
     plugins to build.
   - Use AS_HELP_STRING in configure.in
     
     Use AS_HELP_STRING macro in configure.in.
     Fix some help descriptions.
   - allow building out of tree (sort of)
     
     the current configure script assumes that it will be run in the srcdir ... i
     often build things out of tree so you can quickly punt all the generated
     files:
     mkdir build
     cd build
     ../configure
     cd ..
     rm -r build
     clean!
     
     this tweaks the configure script in a few places to use the correct variable
     instead of assuming that configure is always in $PWD ...
     
     i say "sort of" in the subject because there is still the issues of the pcm
     symbols list being generated in $builddir instead of $srcdir and the alsa
     include symlink, but these doesnt really concern me for what i need ;)
     
     Signed-off-by: Mike Frysinger <vapier@gentoo.org>
   - add snd_device_name_hint() function and initial implementation
     
     - add snd_device_name_hint() and snd_device_name_free_hint() functions
     - add snd_ctl_iface_conf_name() functions
     - do not accept parameters for the plugin definition without @args section
     - add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
     - add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
     - add test/namehint test utility
     - doxygen related cleanups
 + Control API
   - fix various warnings
     See also ALSA bug#1689
   - revert back one diff from changeset 2219 (fix various warnings)
   - change iface argument for namehint function to const char *
     remove snd_ctl_iface_conf_name function
   - Fix build of static library
     
     - Add missing pcm_empty entry
     - Return the array pointer instead of the first array member.
       Otherwise only the first entry is linked to the binary.
   - namehint changes: longname -> cardname, use get_card_name instead longname
   - fix string list parameter in snd_device_name_(free_)hint prototypes
     
     Fix the type of the string list parameter in the prototypes of
     snd_device_name_hint() and snd_device_name_free_hint().  The prototypes
     used char**, while the implementation and the users are using void**.
   - Fix device name listing with card = -1
     
     Fixed the device name listing with card = -1, such as
     aplay -L.
   - remove snd_ctl_iface_conf_name() prototype, namehint doxygen cleanups
   - add snd_device_name_get_hint() function, make hints private to alsa-lib (void)
     
     We can define more string groups for one hint now. It is quite easy
     flexible for future.
   - more name hint interace updates
     - add long card name to device description
     - create empty PCM plugin to allow right hint description parsing
     - reorder devices in alsa.conf
     - make namehint more configurable (using default.namehint.showall switch)
     - add two levels basic and exteded for hints to default configuration files
     - do not show direct device aliases
     - removed all known memory leaks
   - pcm config files cleanups and name hint extension
     - remove device 0/subdevice 0 from configuration files (it's default)
     - name_hint
       - fixed parsing slaves
       - obtain device numbers directly from 'type hw' configurations to
         avoid poluting of configurations scripts with hint.device lines
   - add snd_device_name_get_hint() prototype to include/control.h
   - Add --with-ctl-plugins configure option
     
     Added --with-ctl-plugins configure option to specify the optinal
     plugins to build.
   - Add missing control_ext entry
     
     Added missing entry for control_ext.c for static symbol table.
   - add snd_device_name_hint() function and initial implementation
     
     - add snd_device_name_hint() and snd_device_name_free_hint() functions
     - add snd_ctl_iface_conf_name() functions
     - do not accept parameters for the plugin definition without @args section
     - add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
     - add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
     - add test/namehint test utility
     - doxygen related cleanups
   - fix two issues in snd_device_name_hint()
     - returned wrong error when the namehint section does not exist
     - variable underflow for the rawmidi interface
 + Device Name API
   - Remove snd_name_list() and snd_name_list_free() functions.
     
     These functions were not used in applications anyway.
 + HWDEP API
   - Fix build of static library
     
     - Add missing pcm_empty entry
     - Return the array pointer instead of the first array member.
       Otherwise only the first entry is linked to the binary.
 + Mixer API
   - Implements support for capture/playback enums.
   - fix SNDERR() format strings/arguments
   - simple mixer - fix error recovery path for volume / switch write
     
     If volume or switch write fails, the internal contents for element
     is changed, but it is wrong. Reread the whole simple element in this
     case to get correct values.
   - add snd_device_name_hint() function and initial implementation
     
     - add snd_device_name_hint() and snd_device_name_free_hint() functions
     - add snd_ctl_iface_conf_name() functions
     - do not accept parameters for the plugin definition without @args section
     - add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
     - add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
     - add test/namehint test utility
     - doxygen related cleanups
 + PCM API
   - Improve the sample conversion in plug layer
     
     Improve the sample conversion in plug layer for the sample bits
     reduction.  Use round instead of truncating, which introduces
     more quantization noise.
     
     Original patch by Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
   - Add support for gain in softvol plugin
     
     This patch allows for gain in the softvol plugin, in addition to attenuation.
     The plugin now has a "max_dB" parameter (up to 50 dB) as well as the
     original "min_dB" parameter (down to -51 dB). max_dB defaults to 0 dB, so
     unless max_dB is specified in a device conf, the behavior of the plugin will
     be the same as before (attenuation only).
     
     HDA-Intel.conf is also modified to use softvol for its default capture.
     So now, capture is filtered through softvol (range -30 to +30 dB) before
     being passed on to dsnoop as before.
     
     The softvol plugin allows a range of -51 to +50 dB, so max_dB could be
     increased to 50. But eventually samples are going to get clipped. At 40
     dB I was beginning to get clipping when recording a sample sound at a
     "reasonably soft" volume using a digital mic on the stac9205 HDA codec.
     
     The motivation for this work is that some HDA codecs have no hardware gain
     control for some paths. For instance, the stac9205 has support for digital
     mics, but there is no gain control widget for this signal before it is placed
     on the Azalia link (only a mute). Therefore gain can only be accomplished
     via software.
     
     Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
   - fix various warnings
     See also ALSA bug#1689
   - added pcm_empty plugin and .hgignore additions
   - Fix build of static library
     
     - Add missing pcm_empty entry
     - Return the array pointer instead of the first array member.
       Otherwise only the first entry is linked to the binary.
   - direct pcm plugins: fix channel number selection
     
     The code to set the number of channels did not work when the requested
     channel count was not available and when the min/max channel counts were
     not identical.
     
     Replacing the entire selection code with
     snd_pcm_hw_params_set_channels_near() gives the same result in the cases
     where it previously worked, and works in all other cases.
   - direct pcm plugins: fix format selection
     
     The old format tried to do something when the requested format was not
     supported by the hardware, but did not actually select any other format.
     Now we try to switch to any format supported by dmix, or any other
     format when the plugin is not dmix.
   - fix SNDERR() format strings/arguments
   - Fix compile warning with internal function
     
     Fixed the compile warning refering to the internal function
     snd_pcm_hw_params_set_format_first.
   - fix a signedness warning
   - dmix/dshare/dsnoop plugin: enable slowptr by default
     
     Enabling the slowptr options does not make snd_pcm_delay() and related
     functions much slower than they would have been with a hw device, while
     disabling this option greatly reduces the accuracy of those functions,
     thus creating more jitter in any media player application that
     synchronizes its output to the sound device.
     
     Therefore, it is preferrable to have this option enabled by default.
   - pcm: fix ipc offset calculation for direct plugins
     
     Also add more accurate description to x24 formats.
   - String array for default rate plugin list
     
     Change the rate converter type to allow string arrays in addition to
     a string.  When a string array is given, the rate plugin probes each
     string and try to load the converter plugin in the order of the list.
     
     For example, you can set
     	defaults.pcm.rate_converter	[ "samplerate" "linear" ]
     so that samplerate plugin is preferred to linear plugin if it's
     installed.
   - Trivial fix of compile warning
     
     Fix unused variable j.
   - more name hint interace updates
     - add long card name to device description
     - create empty PCM plugin to allow right hint description parsing
     - reorder devices in alsa.conf
     - make namehint more configurable (using default.namehint.showall switch)
     - add two levels basic and exteded for hints to default configuration files
     - do not show direct device aliases
     - removed all known memory leaks
   - pcm direct plugins - fix memory leak (sconf must be deleted)
   - Fix start/stop of multi plugin
     
     The start/stop of sync'ed stream of multi plugin.
     This should make some JACK users with multiple devices happier.
   - More better fix for linked start/stop
     
     Instead of link_fd, more generic callback link_slaves is introduced.
     This is called for linking the slave streams as the source to the
     given master stream.
   - Remove _snd_pcm_link_descriptors() and more comments
     
     Removed the obsoleted _snd_pcm_link_descriptors() from pcm_local.h.
     Added more comments on multi plugin.
   - Revert the wrong change in src/pcm/Makefile.am
     
     Reverted the wrong change in src/pcm/Makefile.am, accidentally merged
     from my own development version...
   - pcm_ladspa - fix none policy
     In some configurations, channel samples were not copied correctly.
     Also, fix memory leaks and remove extra end-of-line chars from SNDERR
     strings.
   - Define an array of default rate plugins
     
     Define an array of default rate plugins, set speexrate as the first
     entry.  The linear is used as a fallback.
   - Fixed an access to uninitialized variable in pcm_rate.c
     
     Fixed an access to uninitialized variable in pcm_rate.c (in error message).
   - Fix snd_pcm_open_noupdate() to refer alias
     
     Fixed snd_pcm_open_noupdate() to refer alias.  This fixes the call like
     
     	% aplay -Dplug:bah
     
     where bah is an alias of a certain definition.
   - add snd_device_name_hint() function and initial implementation
     
     - add snd_device_name_hint() and snd_device_name_free_hint() functions
     - add snd_ctl_iface_conf_name() functions
     - do not accept parameters for the plugin definition without @args section
     - add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
     - add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
     - add test/namehint test utility
     - doxygen related cleanups
 + PCM Plugin API
   - String array for default rate plugin list
     
     Change the rate converter type to allow string arrays in addition to
     a string.  When a string array is given, the rate plugin probes each
     string and try to load the converter plugin in the order of the list.
     
     For example, you can set
     	defaults.pcm.rate_converter	[ "samplerate" "linear" ]
     so that samplerate plugin is preferred to linear plugin if it's
     installed.
 + RawMidi API
   - rawmidi: do not abort when seeing the hint node
     
     Add the hint node to the nodes that are allowed in rawmidi definitions,
     and factor out the detection of such nodes into a common function.
   - Fix build of static library
     
     - Add missing pcm_empty entry
     - Return the array pointer instead of the first array member.
       Otherwise only the first entry is linked to the binary.
 + Sequencer API
   - change iface argument for namehint function to const char *
     remove snd_ctl_iface_conf_name function
   - Fix build of static library
     
     - Add missing pcm_empty entry
     - Return the array pointer instead of the first array member.
       Otherwise only the first entry is linked to the binary.
 + Timer API
   - Fix build of static library
     
     - Add missing pcm_empty entry
     - Return the array pointer instead of the first array member.
       Otherwise only the first entry is linked to the binary.
   - initialize dl handles where it needs to
     
     this trivial patch initializes dl handle in timer.c and timer_query.c
     where it needs to.
     
     Signed-off-by: Benoit Fouet <benoit.fouet@purplelabs.com>
   - Fix error code in timer_query.c
     
     Fix the returned error code for the invalid timer definition.
 + /Makefile.am
   - Allow build without libdl and libpthread
     
     Allow building alsa-lib without libdl and libpthread.
     Added new options to configure, --with-libdl and --with-pthread.
 + /src/Makefile.am
   - Compatibility problem with automake 1.10 fixed.
     alsa bug#2592
   - Allow build without libdl and libpthread
     
     Allow building alsa-lib without libdl and libpthread.
     Added new options to configure, --with-libdl and --with-pthread.
   - Add --enable-symbolic-functions configure option
     
     Added --enable-symbolic-functions configure option.  This will detect
     and pass -Bsymbolic-functions linker option, which gives you better
     performance and smaller binary size.  Only recent binutils supports
     this option.
   - add support for symbol prefixes in shared libraries
     
     attached patch updates the Version script so that it supports SYMBOL_PREFIX
     
     From: Mike Frysinger <vapier@gentoo.org>
 + ALSA Lisp
   - Add config and plugin directory options to configure
     
     Added --with-configdir and --with-plugindir options to configure
     which specify the directories for config files and plugin objects
     respectively.  The default paths when these options are not
     specified are unchanged.
 + Async helpers
   - Allow build without libdl and libpthread
     
     Allow building alsa-lib without libdl and libpthread.
     Added new options to configure, --with-libdl and --with-pthread.
 + Configuration
   - Add support for gain in softvol plugin
     
     This patch allows for gain in the softvol plugin, in addition to attenuation.
     The plugin now has a "max_dB" parameter (up to 50 dB) as well as the
     original "min_dB" parameter (down to -51 dB). max_dB defaults to 0 dB, so
     unless max_dB is specified in a device conf, the behavior of the plugin will
     be the same as before (attenuation only).
     
     HDA-Intel.conf is also modified to use softvol for its default capture.
     So now, capture is filtered through softvol (range -30 to +30 dB) before
     being passed on to dsnoop as before.
     
     The softvol plugin allows a range of -51 to +50 dB, so max_dB could be
     increased to 50. But eventually samples are going to get clipped. At 40
     dB I was beginning to get clipping when recording a sample sound at a
     "reasonably soft" volume using a digital mic on the stac9205 HDA codec.
     
     The motivation for this work is that some HDA codecs have no hardware gain
     control for some paths. For instance, the stac9205 has support for digital
     mics, but there is no gain control widget for this signal before it is placed
     on the Azalia link (only a mute). Therefore gain can only be accomplished
     via software.
     
     Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
   - Fix CS46xx.conf default capture
     
     Fix the capture slave to hw for CS46xx default PCM since dsnoop
     seems not working with this hardware well.
   - Revert dmix.conf and dsnoop.conf
     
     Revert dmix.conf and dsnoop.conf.
     The ipc key offset had been already modified to be unique for
     each card, stream, device and subdevice interanally in dmix &
     co plugins.
   - add card_name configuration function
     
     Add a configuration function "card_name" so that configuration files can
     use device-specific definitions based on a card's short name.
   - remove superfluous strdup() calls
     
     Remove same calls of strdup() that were unnecessary because the
     temporary string would not be modified or held longer than the lifetime
     of the original string.
   - fix SNDERR() format strings/arguments
   - Add missing smixer.conf for installation
   - Allow build without libdl and libpthread
     
     Allow building alsa-lib without libdl and libpthread.
     Added new options to configure, --with-libdl and --with-pthread.
   - Add config and plugin directory options to configure
     
     Added --with-configdir and --with-plugindir options to configure
     which specify the directories for config files and plugin objects
     respectively.  The default paths when these options are not
     specified are unchanged.
   - fix a typo
     
     fix a typo introduced in changeset d14ade7ede2a
   - more name hint interace updates
     - add long card name to device description
     - create empty PCM plugin to allow right hint description parsing
     - reorder devices in alsa.conf
     - make namehint more configurable (using default.namehint.showall switch)
     - add two levels basic and exteded for hints to default configuration files
     - do not show direct device aliases
     - removed all known memory leaks
   - pcm config files cleanups and name hint extension
     - remove device 0/subdevice 0 from configuration files (it's default)
     - name_hint
       - fixed parsing slaves
       - obtain device numbers directly from 'type hw' configurations to
         avoid poluting of configurations scripts with hint.device lines
   - enable dmix-ing and proper 5.1 routing for USB audio devices
     
     add a configuration file for USB audio devices
   - add USB-Audio.conf to Makefile.am
   - Specify subdevice number for Maestor3 dmix setting
     
     The subdevice number of a dmix slave PCM has to be specified explicitly
     for the device with multiple substreams such as Maestro3.
   - Use dmix/dsnoop for maestro3 boards
     
     Use dmix/dsnoop for maestro3 boards.  Although maestro3 has multiple
     playback capability, it supports only two streams (with the currently
     available firmware).
   - add snd_device_name_hint() function and initial implementation
     
     - add snd_device_name_hint() and snd_device_name_free_hint() functions
     - add snd_ctl_iface_conf_name() functions
     - do not accept parameters for the plugin definition without @args section
     - add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
     - add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
     - add test/namehint test utility
     - doxygen related cleanups
   - add card number to ipc key for dmix / dsnoop PCM definitions
     
     See ALSA bug#1573
     Also add card_inum, iadd, imul functions to configuration files.
 + Documentation
   - add snd_device_name_hint() function and initial implementation
     
     - add snd_device_name_hint() and snd_device_name_free_hint() functions
     - add snd_ctl_iface_conf_name() functions
     - do not accept parameters for the plugin definition without @args section
     - add defaults.pcm.dmix.card/device and dsnoop.card/device definitions
     - add hints for HDA-Intel.conf, pcm/dmix.conf, pcm/dsnoop.conf and alsa.conf
     - add test/namehint test utility
     - doxygen related cleanups
 + Kernel Headers
   - Update emu10k1.h for new version
     
     Updated emu10k1.h for newer version.
     The size of emu10k1_fx8010_control_gpr_t is changed.  The apps need to
     issue SNDRV_EMU10K1_IOCTL_PVERSION first to switch to the new ABI.
 + Simple Abstraction Mixer Modules
   - Add config and plugin directory options to configure
     
     Added --with-configdir and --with-plugindir options to configure
     which specify the directories for config files and plugin objects
     respectively.  The default paths when these options are not
     specified are unchanged.
 + Test/Example code
   - change iface argument for namehint function to const char *
     remove snd_ctl_iface_conf_name function
   - alsa-lib: test dir: make check: static building doesn't work on PIC architectures
     
     Some architectures, such as AMD64, IA64 and Alpha cannot mix PIC and non-PIC
     objects when creating a PIC output. Hardened compilers (which uses SSP and
     PIE) creates PIC executables, passing -static in CFLAGS for tests in make
     check in alsa-lib makes their linking to fail.
     
     See bug#1541
 + Utils
   - alsa.pc's Libs shouldn't contain -lm -ldl -lpthread
     
     -lm -ldl -lpthread are _not_ needed in Libs (since the alsa interface
     doesn't depend on libm, libdl or libpthread interface) and just bring
     unneeded dependencies. These should rather be put in Libs.private:
     
     Libs: -L${libdir} -lasound
     Libs.private: -lm -ldl -lpthread
     
     See ALSA bug#2212 .

alsa-plugins

 + Core
   - Fix plugindir config setting
     
     Fixed plugindir config setting when no option was given.
     Also fixed an obvious typo.
   - Alsa support for Maemo SDK (n770): Build configuration
     
     This patch file changes the build configuration files to add alsa-dsp
     plugin to communicate
     with n770 system.
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Add rate resampler plugin based on speex
     
     Added another rate resampler plugin based on speex code.
     Light weight and much better quality.
     
     From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
   - Add plugin directory configure option
     
     Added --with-plugindir configure option to specify the directory
     for plugin objects.
   - Enable link with external libspeex
     
     - Add --with-speex configure option to specify the build of speex rate
       plugin.  As default, it's linked to external library.  If not available,
       defaults to builtin code.
     - Show build conditions at the end of configure script
     - Use AS_HELP_TEXT()
   - Add livavcodec resampler plugin
     
     Add a new pcm_rate plugin, "lavcrate", that uses the resampling
     filter from libavcodec.  It should provide high performance and
     good output quality.
     Add a documentation file for lavcrate.
     Update autoconf and automake to build lavcrate.
     
     From: Nicholas Kain <njkain@gmail.com>
 + /Makefile.am
   - compile maemo only if DBUS is present
   - Alsa support for Maemo SDK (n770): Build configuration
     
     This patch file changes the build configuration files to add alsa-dsp
     plugin to communicate
     with n770 system.
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Add rate resampler plugin based on speex
     
     Added another rate resampler plugin based on speex code.
     Light weight and much better quality.
     
     From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
   - Enable link with external libspeex
     
     - Add --with-speex configure option to specify the build of speex rate
       plugin.  As default, it's linked to external library.  If not available,
       defaults to builtin code.
     - Show build conditions at the end of configure script
     - Use AS_HELP_TEXT()
   - Add livavcodec resampler plugin
     
     Add a new pcm_rate plugin, "lavcrate", that uses the resampling
     filter from libavcodec.  It should provide high performance and
     good output quality.
     Add a documentation file for lavcrate.
     Update autoconf and automake to build lavcrate.
     
     From: Nicholas Kain <njkain@gmail.com>
 + A52 Output plugin
   - Add plugin directory configure option
     
     Added --with-plugindir configure option to specify the directory
     for plugin objects.
   - Fix segfault of a52 plugin
     
     Added the missing call of avcodec_init() to avoid setfault of a52
     plugin with the latest svn revision of ffmpeg.
     
     From: Fabian van der Werf <fvanderwerf@gmail.com>
 + Alsa support for Maemo SDK (n770)
   - release 1.0.14rc1
   - Alsa support for Maemo SDK (n770): Header files
     
     This patch file adds header files needed by alsa-dsp plugin.
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Alsa support for Maemo SDK (n770): DSP protocol
     
     This patch file adds  communication protocol with maemo SDK audio system.
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Alsa support for Maemo SDK (n770): External PCM IO plugin
     
     This patch file adds an ALSA External PCM I/O plugin. This source uses
     the dsp-protocol
     implementation.
     
     The plugin probes for a free communication channel at the start time.
     It will probe only
     for channels specified into the configuration file for the plugin. An
     configuration example is:
     # PCM
            pcm.!default {
                    type alsa_dsp
                    playback_device_file ["/dev/dsptask/pcm2"]
                    recording_device_file ["/dev/dsptask/pcm_rec"]
            }
     
     The plugin supports the following:
     
         *  Playback:
               o 16-bit PCM formats:
                     + S16_LE
                     + S16_BE
                     + U16_LE
                     + U16_BE
               o 8-bit PCM formats:
                     + A_LAW
                     + MU_LAW
                     + U8
                     + S8
               o Rates:
                     + 8 KHz
                     + 11.025 KHz
                     + 12 KHz
                     + 16 KHz
                     + 22.050 KHz
                     + 24 KHz
                     + 32 KHz
                     + 44.1 KHz
                     + 48 KHz
               o Channels:
                     + Mono
                     + Stereo
         * Recording:
               o 16-bit PCM formats:
                     + S16_LE
               o 8-bit PCM formats:
                     + A_LAW
                     + MU_LAW
               o Rates:
                     + 8 KHz
               o Channels
                     + Mono
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Alsa support for Maemo SDK (n770): External Control plugin
     
     This patch file adds an ALSA External Control plugin. This source uses
     the dsp-protocol
     implementation.
     
     The plugin probes for all communication channel at the start time. It
     will handle only
     channels specified into alsa configuration file. An configuration example is:
             # Mixer
             ctl.!default {
                     type dsp_ctl
                     playback_devices ["/dev/dsptask/pcm2"]
                     recording_devices ["/dev/dsptask/pcm_rec"]
             }
     
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Alsa support for Maemo SDK (n770): Build configuration
     
     This patch file changes the build configuration files to add alsa-dsp
     plugin to communicate
     with n770 system.
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Alsa support for Maemo SDK (n770) - Remove compile warnings
     
         Here is a patch to remove compile warnings. It must be applied
     after last patch set I sent.
         This patch simply changes signedness of some point from the code
     to match the correct sign used by dsp-protocol structures. All must
     use unsigned variables.
         It also changes the way the pthread_mutex is initialized. The
     warning about pthreads is also removed.
     
         I tested the compilation with:
     gcc (GCC) 4.1.2 20061028 (prerelease) (Debian 4.1.1-19)
     and
     sbox-arm-linux-gcc (GCC) 3.4.4 (release) (CodeSourcery ARM 2005q3-2)
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
 + Documentation
   - Alsa support for Maemo SDK (n770): Documentation
     
     This patch file adds a REAME file for alsa-dsp plugin.
     
     Signed-off-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
   - Add livavcodec resampler plugin
     
     Add a new pcm_rate plugin, "lavcrate", that uses the resampling
     filter from libavcodec.  It should provide high performance and
     good output quality.
     Add a documentation file for lavcrate.
     Update autoconf and automake to build lavcrate.
     
     From: Nicholas Kain <njkain@gmail.com>
   - Add documentation for speex rate plugin
     
     Added the documentation for speex rate plugin.
     
     From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
 + Jack PCM plugin
   - Add plugin directory configure option
     
     Added --with-plugindir configure option to specify the directory
     for plugin objects.
 + Public Parrot Hack rate converter
   - Add missing files for pph
     
     Added missing files for pph speex resampler plugin.
   - pph - do not include <samplerate.h> in rate_speexrate.c
   - Add rate resampler plugin based on speex
     
     Added another rate resampler plugin based on speex code.
     Light weight and much better quality.
     
     From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
   - Enable link with external libspeex
     
     - Add --with-speex configure option to specify the build of speex rate
       plugin.  As default, it's linked to external library.  If not available,
       defaults to builtin code.
     - Show build conditions at the end of configure script
     - Use AS_HELP_TEXT()
   - Update version of speex resampler plugin
     
     From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
     
     I'm attaching an updated version of my resampler plugin. It fixes a few
     minor issues and it adds support for fixed-point processing (just add
     -DFIXED_POINT to the build). Let me know if there's any problem.
   - Add missing header files for pph
 + PulseAudio -> ALSA plugin
   - Improve parameter constraints in alsa-pulse
     
     Remove parameter constraints where we actually have none. Also, restrict
     total buffer size to 4 MB as current versions of the PulseAudio server
     will refuse streams larger than that.
     
     Signed-off-by: Pierre Ossman <ossman@cendio.se>
 + Rate Converter plugins
   - Fix wrong implementation of input/output_frames in samplerate plugin
     
     The libsamplerate rate plugin has wrong implementations of input_frames
     and output_frames callbacks.  They have to be swapped.
     
     From: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
 + libavcodec's resampler
   - Add missing gcd.h to rate-lavc/Makefile.am
     
     Added missing gcd.h to rate-lavc/Makefile.am.
   - Add livavcodec resampler plugin
     
     Add a new pcm_rate plugin, "lavcrate", that uses the resampling
     filter from libavcodec.  It should provide high performance and
     good output quality.
     Add a documentation file for lavcrate.
     Update autoconf and automake to build lavcrate.
     
     From: Nicholas Kain <njkain@gmail.com>

alsa-utils

 + Core
   - utils: Make default sample files be in /usr/share/sounds/alsa
   - alsa-utils.spec.in - additions
     See bug#2139 for details
 + ALSA Control (alsactl)
   - alsactl - Error message when failing to open the config file
     
     Tells the user that it was not able to open the config file with the
     precise error message.
     
     From: Tomas Pospisek <tpo2@sourcepole.ch>
   - alsactl - adjust spaces in help texts
     
     adds a space in the help text between "restore" and "<card>" and indents
     the rest of the text accordingly to fit.
     
     From: Tomas Pospisek <tpo2@sourcepole.ch>
   - alsactl - More explicit open error message
     
     Include more explicit error message when open config file in write
     mode (this is for the "names" command)
     
     From: Tomas Pospisek <tpo2@sourcepole.ch>
   - alsactl - More explicit open error message (#2)
     
     same as last patch, this time for the store command
     
     Tomas Pospisek <tpo2@sourcepole.ch>
   - alsactl - Display help for names command
     
     shortly explain the "names" command in the help text
     
     From: Tomas Pospisek <tpo2@sourcepole.ch>
   - alsactl - return error state, fail when no configuration is found
     See bug#843
 + ALSA RawMidi Utility (amidi)
   - amidi: open devices non-blockingly
     
     Open the RawMIDI devices in non-blocking mode so that we do not hang
     while a device is busy.
 + Speaker Test
   - speaker-test: fix typos in manpage
     
     See bug#2178
     Debian 364560
 + aconnect
   - Fix aconnect man page
     
     Use local definitions of .EX/.EE or .DS/.DE to avoid low-level troff
     requests in the page body.  There are plans to add these to groff man;
     in the interim, this patch adds a compatible definition.
     
     From: Eric S. Raymond <esr@thyrsus.com>
 + alsaconf
   - alsaconf fix: cannot find the snd-powerpc module
     
     The expression used in the search does not match.
     See: bug#2179
   - alsaconf - rcalsasound script does not exists in some distros
     See bug#1505
 + alsamixer
   - alsamixer - Fix duplicated appearance in All view mode
     
     Fixed the duplicated appearances of common volumes / switches
     in ALL view mode.
   - alsamixer: cosmetic fix
 + amixer
   - Implement Playback/Capture enum.
   - amixer - show iec958 status bits in contents command
     
     Show first 4 bytes of iec958 status bits for elements with
     SND_CTL_ELEM_TYPE_IEC958 in contents command.
   - amixer: sset - check if command is valid
     See bug#532
   - amixer - remove beep on errors in arguments
     See bug#1247
 + aplay/arecord
   - Fix argument for snd_device_name_hint().
     
     Fix the iface argument for snd_device_name_hint().
   - aplay: add fflush(stdout) for -vvv verbosity
     See bug#2454
   - fix for recent namehint API (use get_hint function)
   - aplay: namehint fix - use filter before printing device name
   - aplay/arecord -L command: process properly end-of-line characters
   - aplay/arecord: Remove -n commad (obsolete, undocumented)
     
     Also fix a small memory leak (missing snd_output_delete call).
   - aplay/arecord - use snd_device_name_hint() for -L command
   - aplay/arecord: filter direction for -L command
 + aplaymidi/arecordmidi
   - aplaymidi: handle big SysEx commands
     
     Make sure that the sequencer output buffer is big enough to handle all
     events that we send, and split large SysEx commands into one-second
     chunks so that the sequencer kernel code can handle them.

alsa-tools

 + Envy24 Control
   - Don't compare with a literal
     
     Don't compare a pointer with a string literal.  Use strcmp instead.
 + ac3dec (Dolby Digital Decoder)
   - ac3dec - remove config.sub
 + as10k1 (EMU10K1+ DSP Assembler)
   - as10k1 - increase max number of macros and check the size
     
     - Increase the max number of macros to 30.
     - Check the current number of macros to avoid segfault.
 + ld10k1 (EMU10K1+ DSP Code Loader)
   - ld10k1 - Use the new API
     
     Issue SNDRV_EMU10K1_IOCTL_PVERSION and check the driver.
     This prevents to run ld10k1 on the older binary-incompatible driver.
 + qlo10k1
   - Add lib64 search paths for QTDIR
   - qlo10k1 - added real support for lib64 detection (OpenSuSE 10.2)
 + us428control
   - us428control 0.4.6
     
     Minor clean ups.
     
     From: Rui Nuno Capela <rncbc@rncbc.org>
   - us428control 0.4.5
     
     - A new command line option indicates which interface model is actually
     present (-m us428|us224|mixxx) -- nb. the mixxx mode is actually
     orthogonal to the us428 and us224 ones, which are in turn both mutually
     exclusive, so that more than one -m option can be specified in the same
     command line, for compatibility sake; default to us428 mode, of course.
     
     - New BANK switching allows for mapping to a maximum of 32 (!) logical
     channel-tracks. This introduces effective BANK L/R button functionality.
     Under the default us428 mode it now offers a total of 4 switchable banks
     (or layers) for the available 8 fader-channels; while in the new us224
     mode, one can switch across 8 banks of 4 fader-channels each. Each
     fader-channel maps sequentially (0-31) to a logical track in your DAW,
     when connected in a MMC closed-loop. This only applies when not in INPUT
     MONITOR mode.
     
     - SELECT, REC, MUTE and SOLO state LEDs/buttons/channel functionality
     are now split into INPUT MONITOR and BANK modes, so that each bank
     (layer) has its own state. INPUT MONITOR mode gets its own independent
     state, which is the only that affects the audio interface channel signal
     volume (via respective faders) through the internal hardware mixer --
     nb. this special mode deals exclusively to channel/faders 0 and 1 (A/B)
     and eventually to 2 and 3 (C/D) which are only available on the US-428
     and made accessible through modprobe'ing snd-usb-usx2y with nrpacks=1
     and thus made usable via the special hwdep "rawusb" interface mode (ie.
     hw:N,2).
     
     - The new track-channel mapping gets effectively signaled through
     correspondent but rather experimental MMC MASKED WRITE sub-commands for
     RECORD, MUTE and SOLO arming. It is important to note that this late
     SOLO sub-command is just some MMC implementation mockup of mine, as I
     believe there's no support whatsoever for just that from the official
     MIDI MMC RP-013 document (which I don't even have access to date:)
     However, I've been prototyping around with this, to my own amusement and
     home-brew audio/MIDI sequencer, qtractor:
     	http://qtractor.sourceforge.net
     
     - NULL fader switch LED is now switchable on/off, but not actually of
     any usefulness at this time ;)
     
     I have tried to maintain all previous functionality as it were. Of
     course I only tested this new stuff over my own US-224, for which it
     surely needs the '-m us224' command-line option. This is also proposedto
     be specified in a correspondent udev rule, for all this to work
     correctly OOTB for the US-224 at least. US-428 owners don't need to
     bother ;)
     
     From: Rui Nuno Capela <rncbc@rncbc.org>
   - us428control support for mixxx
     
     This patch allow to change the mapping of the us428, the new mapping is
     used with mixxx.
     To use the new mapping:
     ./us428control -m mixxx
     
     Signed-off-by: Cedric GESTES <goctaf@gmail.com>

alsa-firmware

 + Core
   - add ymfpci firmware
     
     Add firmware files for the ymfpci driver.
   - add korg1212 firmware
     
     Add a firmware file for the korg1212 driver.
   - add maestro3 firmware
     
     Add firmware files for the maestro3 driver.
   - add sb16 firmware
     
     Add firmware files for the sb16 driver.
   - add wavefront firmware
     
     Add a firmware file for the wavefront driver.
   - configure: remove superfluous slash at end of path
     
     The slash at the end of the detected hotplug firmware directory is not
     needed because all makefiles use correct delimiters.
   - add emi26/emi62 firmware
     
     Add firmware files for the emi26 and emi62 drivers.
   - Add Dreamcast AICA firmware
     
     Added Dreamcast AICA firmware to alsa-firmware repo.
     
     From: Adrian McMenamin <adrianmcmenamin@gmail.com>
 + AICA (Dreamcast) Firmware
   - Renamed aica/licence.txt -> aica/license.txt
   - Add Dreamcast AICA firmware
     
     Added Dreamcast AICA firmware to alsa-firmware repo.
     
     From: Adrian McMenamin <adrianmcmenamin@gmail.com>
 + AudioScience ASIHPI Firmware
   - Update ASIHPI firmware 3.07.04
     
     Updated ASIHPI firmware to version 3.07.04.
   - asihpi driver 3.05.07
     
     Firmware updtes for asihpi driver 3.05.07.
     
     Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
 + Digigram Echo Audio Firmware
   - Echoaudio, add support for new revisions of Indigo's and Mia cards
     
     This patch adds support for:
     - new revision 5 Indigo IO and Indigo DJ hardware
     - new revision 4 Mia MIDI hardware
     
     From: Giuliano Pochini <pochini@shiny.it>
 + EMU Firmware
   - Summary: emu: Add firmware for the micro_dock and the emu1010 notebook card.
   - Summary: Add firmware image for emu0404 PCI card.
   - Summary: Ensure the firmware image installs.
 + Emagic EMI 2|6 Audio Interface Firmware
   - emi26/62: make firmware files binary
     
     For the emi26/emi62 firmware, use raw binary files that are easier to
     handle for the loader driver.
   - add emi26/emi62 firmware
     
     Add firmware files for the emi26 and emi62 drivers.
 + Korg 1212 Firmware
   - add korg1212 firmware
     
     Add a firmware file for the korg1212 driver.
 + Maestro3 Firmware
   - add maestro3 firmware
     
     Add firmware files for the maestro3 driver.
 + SB16 (CSP) Firmware
   - add sb16 firmware
     
     Add firmware files for the sb16 driver.
 + Wavefront Firmware
   - wavefront: simplify YSS225 register initialization
     
     Instead of using a somewhat algorithmic approach of initializing the
     YSS225's registers, just use a simple series of port/value pairs.
     This makes it easier to later replace or entirely remove the register
     data blob from the driver.
   - add wavefront firmware
     
     Add a firmware file for the wavefront driver.
 + Yamaha PCI (YMFPCI) Firmware
   - add ymfpci firmware
     
     Add firmware files for the ymfpci driver.


Detailed changelog between 1.0.12rc2 and 1.0.14 releases

alsa-oss

 + Core
   - release 1.0.12rc2
   - Fix LFS support for fopen in alsa-oss
     
     fopen64 is overloaded to call original fopen, not fopen64. This makes
     certain applications fail (vmware working with large disk images).
     
     Attached patch fixes the problem and also makes open64 support more
     straightforward.
     
     From: Constantine Gavrilov <constantine.gavrilov@gmail.com>
   - release 1.0.12
Custom Search
Personal tools
Namespaces

Variants
Actions
Navigation
wiki
Toolbox