Changes v1.0.13 v1.0.14rc1
From AlsaProject
Changelog between 1.0.13 and 1.0.14rc1 releases
- alsa-driver
+ Sound Core - 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 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 - Add i2c-id.h header mangling (compatibility layer) - Fix build with the latest 2.6.19-git - Add a dummy linux/latency.h for older kernels + ALSA Core - 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 - 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 - 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* - [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 - 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 - Add missing soc/pxa entries - ASoC pxa2xx DMA support - ASoC pxa2xx I2S support - ASoC pxa2xx AC97 support - ASoC pxa2xx build support + 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 - sound/core/control.c: remove dead code + HWDEP Midlevel - Dereference after free in snd_hwdep_release() - hwdep_compat missed __user annotations - alsa core: convert to list_for_each_entry* + PCM Midlevel - 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 - add struct snd_pcm_substream forward declaration - sound: fix PCM substream list - alsa core: add struct device pointer to struct snd_pcm - alsa core: convert to list_for_each_entry* - Fix hang-up at disconnection of usb-audio - Fix compilation of pcm_native.c + RawMidi Midlevel - sound: initialize rawmidi substream list + /soc/Makefile - ASoC: Build files - ASoC codecs: build files - ASoC AT91RM92000 build - Add support of ASoC - ASoC pxa2xx build support + /soc/codecs/Makefile - ASoC codecs: build files + /soc/pxa/Makefile - Add missing soc/pxa entries - ASoC pxa2xx build support + AC97 Codec - ASoC: core and dapm headers - ac97 - enables sound output through speakers on MSI S250 laptop - ac97_codec - trivial fix for bit update functions - ac97_codec (ALC655): add EAPD hack for MSI L725 laptop - Fix AC97 power-saving mode - ac97 - Suppress power-saving mode on non-supporting drivers - ac97 - Fix potential negative array index + AD1816A driver - sound/isa/ad1816a/ad1816a.c: check kmalloc() return value + AD1889 driver - Remove IRQF_DISABLED for shared PCI irqs + AK4XXX AD/DA converters - Enable capture from line-in and CD on Revolution 5.1 + ALI5451 driver - Remove IRQF_DISABLED for shared PCI irqs - Various fixes for suspend/resume of ALSA PCI drivers + ALS4000 driver - Various fixes for suspend/resume of ALSA PCI drivers + ALSA<-OSS emulation - Fix races in PCM OSS emulation - Fix hang-up at disconnection of usb-audio + AMD InterWave driver - sound/isa/gus/interwave.c: check kmalloc() return value - [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 - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers + 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 + Apple Onboard Audio driver - [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/*/ - aoa: set device pointer in pcms - aoa: fix up i2sbus_attach_codec - [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 - sound: Don't include i2c-dev.h + Asihpi driver - Fix build with the latest 2.6.19-git + Avance Logic ALS300/300+ driver - Fix obsolete *_t typedefs - Various fixes for suspend/resume of ALSA PCI drivers + CA0106 driver - snd-ca0106: Updated Enum control names. - snd-ca0106: Add new card variant. - snd-ca0106: Fix typos. - Fix invalid assignment of PCI revision + CMI8330 driver - sound/isa/cmi8330.c: check kmalloc() return value + CREDITS file - sync kernel subdirectory with 2.6 GIT tree - 2.6 kernel sync - kernel subdirectory + Documentation - 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 - atiixp - Add a parameter ac97_quirk - make sound/core/control.c:snd_ctl_new() static - hda-codec - Add asus model to ALC861 codec - ice1724 - Add support of M-Audio Audiophile 192 - ASoC: Add support for BCLK based on (Rate * Chn * Word Size) - 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 asus-laptop model for ALC861 (ALC660) + EMU10K1/EMU10K2 driver - 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 - Fix invalid assignment of PCI revision - emu10k1 - Fix compile warning - 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: Fix outl() in snd_emu10k1_resume_regs() + ENS1370/1+ driver - ens1371 - Clean up quirks + Echoaudio driver - echoaudio, add TLV support - Update echoaudio patches - Fix potential NULL pointer dereference in echoaudio midi - echoaudio: fix compilation on older kernels - [PATCH] kmemdup: some users + GUS MAX driver - [2.6.19-SYNC] Various drivers' irq handlers: kill dead code, needless casts + Generic drivers - Clean up serial-u16500.c - [PATCH] NULL noise removal - Fix build with the latest 2.6.19-git - Fix trailing spaces in pcsp driver + HDA Codec driver - 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: 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 - 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 - 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 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: increase maximum DMA buffer size to 1024MB - hda_intel: add ATI RS690 HDMI audio support - hda-intel - Add check of MSI availabity - 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: ALSA HD Audio patch for Intel ICH9 + HDA generic driver - hda-codec - Use snd_pci_quirk_lookup() for board config lookup - hda-codec - Verbose proc output for PCM parameters - hda-codec - Fix a typo - hda-codec - Add support for VIA VT1708(A) HD audio codec + ICE1724 driver - ice1724 - Add support of M-Audio Audiophile 192 - Enable capture from line-in and CD on Revolution 5.1 + ISA - Fix dependency of snd-adlib driver in Kconfig + Intel8x0 driver - intel8x0 - Add spdif_aclink option - intel8x0 - Use pci_iomap - Add pci_iomap compat layer for intel8x0[m] drivers - 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 - korg1212: add 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 - sync kernel subdirectory with 2.6 GIT tree - 2.6 kernel sync - kernel subdirectory + MIPS AU1x00 driver - [PATCH] sound/mips/au1x00: Use ARRAY_SIZE macro + MSND driver - Fix build with the latest 2.6.19-git + Maestro3 driver - maestro3 - Use quirk list helper function - Update maestro3.patch - maestro3: add 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 + OSS firmware core - [PATCH] build sound/sound_firmware.c only for OSS + Opti9xx drivers - sound/isa/opti9xx/opti92x-ad1848.c: check kmalloc() return value + PCI drivers - pci: select FW_LOADER instead of depending on it - emu10k1: select FW_LOADER - 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.19-SYNC] missing include in pdaudiocf_irq + PPC Tumbler driver - [POWERPC] sound: Constify & voidify get_property() + RME HDSP driver - 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 - hdspm - Fix printk warnings - hdspm: Add support for AES32 + RTC timer driver - rtctimer: handle RTC interrupts with a tasklet + SAA7134 driver - V4L/DVB (4613): Unmute/mute saa7134 when opening/closing the audio capture device - 2.6 kernel sync - kernel subdirectory + SB drivers - sb16: add request_firmware() - Remove IRQF_DISABLED for shared PCI irqs + SB16/AWE driver - sb16: add request_firmware() + SPARC AMD7930 driver - [SOUND] sparc/amd7930: Use __devinit and __devinitdata as needed. + SPARC DBRI driver - [PATCH] NULL noise removal - [PATCH] sound/sparc/dbri: Use ARRAY_SIZE macro + Serial BUS drivers - pt2258: add to export-objs - Enable the analog loopback of the Revolution 5.1 + SoC Audio for the Atmel AT91 System-on-Chip - 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 AT91 DAI modes update - Fix irq handler in soc/at91/at91rm9200-i2s.c - Fix mask to stop AT91 SSC clock on shutdown + SoC Codec AC97 - ASoC codecs: generic AC97 support + SoC Codec WM8731 - ASoC codecs: WM8731 support - ASoC DAI capabilities labelling - Remove trailing whitespaces from soc/* files - ASoC - mixer name changes for older OSS app support - ASoC: Add support for BCLK based on (Rate * Chn * Word Size) + SoC Codec WM8750 - ASoC codecs: WM8750 support - ASoC - mixer name changes for older OSS app support - ASoC: Add support for BCLK based on (Rate * Chn * Word Size) + SoC Codec WM9712 - ASoC codecs: WM9712 support + SoC Dynamic Audio Power Management - ASoC: core and dapm headers - ASoC: dynamic audio power management (DAPM) - sound/soc/soc-dapm.c: make 4 functions static + SoC Layer - ASoC: core and dapm headers - ASoC: core code - ASoC: Build files - ASoC codecs: build files - ASoC AT91RM92000 build - ASoC debug output build breakage - ASoC - Bit clock matching error - soc-core: fix multi-line string literal - ASoC - Fix build warnings in soc-core.c - ASoC pxa2xx build support - ASoC: Add support for BCLK based on (Rate * Chn * Word Size) + SoC PXA2xx Corgi - Add missing soc/pxa entries - ASoC pxa2xx Corgi machine support + SoC PXA2xx Poodle - Add missing soc/pxa entries - ASoC pxa2xx Poodle machine support + SoC PXA2xx Spitz - ASoC pxa2xx Spitz machine support + SoC PXA2xx Tosa - ASoC pxa2xx Tosa machine support + USB USX2Y - usb-usx2y: fix the start_frame fix - 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 generic driver - usb-audio: work around wrong frequency in CM6501 descriptors - USB: Dealias -110 code (more complete) - [PATCH] kmemdup: some users - 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() + Utils - Add some soc configs to no_cards - pc-speaker driver update for 2.6.18 + VIA82xx driver - via82xx - Use quirk list helper function - via82xx: add __devinitdata + Wavefront drivers - wavefront: simplify YSS225 register initialization - wavefront: add 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 + ic2-id.h update - ASoC codecs: WM8731 support - ASoC codecs: WM8750 support - 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 - 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 - add snd_device_name_get_hint() function, make hints private to alsa-lib (void) - more name hint interace updates - 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 - 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 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. - simple mixer - fix error recovery path for volume / switch write - add snd_device_name_hint() function and initial implementation + PCM API - 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 - pcm: fix ipc offset calculation for direct plugins - more name hint interace updates - pcm direct plugins - fix memory leak (sconf must be deleted) - Fix snd_pcm_open_noupdate() to refer alias - add snd_device_name_hint() function and initial implementation + 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 + /src/Makefile.am - Compatibility problem with automake 1.10 fixed. + Configuration - Fix CS46xx.conf default capture - Revert dmix.conf and dsnoop.conf - fix a typo - more name hint interace updates - pcm config files cleanups and name hint extension - 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 + 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 - Alsa support for Maemo SDK (n770): Build configuration + /Makefile.am - compile maemo only if DBUS is present - Alsa support for Maemo SDK (n770): Build configuration + Alsa support for Maemo SDK (n770) - 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
- alsa-utils
+ Core - utils: Make default sample files be in /usr/share/sounds/alsa - alsa-utils.spec.in - additions + ALSA Control (alsactl) - alsactl - return error state, fail when no configuration is found + Speaker Test - speaker-test: fix typos in manpage + alsaconf - alsaconf fix: cannot find the snd-powerpc module - alsaconf - rcalsasound script does not exists in some distros + alsamixer - alsamixer: cosmetic fix + amixer - Implement Playback/Capture enum. - 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 + us428control - 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 + 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
Detailed changelog between 1.0.13 and 1.0.14rc1 releases
- alsa-driver
+ Sound Core - 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 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 - Add i2c-id.h header mangling (compatibility layer) - 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 a dummy linux/latency.h for older kernels Added a dummy linux/latency.h for older kernels. + ALSA Core - 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. - 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> - 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> - [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. - 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 - Add missing soc/pxa entries Added missing soc/pxa entries to build properly. - 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> + 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. - 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> + 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> + PCM Midlevel - 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> - 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> - 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> - 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> + /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. - 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> + /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> + /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 - 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> - 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> - 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 - 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 - ac97 - Fix potential negative array index Fix the case cidx2 >= 0 and cidx2 < 0 which may result in negative array index. + AD1816A driver - 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> + 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. + AK4XXX AD/DA converters - 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 - 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. - 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<-OSS emulation - 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. - 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> - [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 - [2.6.19-SYNC] IRQ: Maintain regs pointer globally rather than passing to IRQ handlers Remove struct pt_regs * argument from irq handler. + 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 + Apple Onboard Audio 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> - [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> - 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> - [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> - 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 - 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(). + Avance Logic ALS300/300+ driver - Fix obsolete *_t typedefs Fixed obsolete *_t typedefs. Now completely removed. - 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. + CA0106 driver - snd-ca0106: Updated Enum control names. - snd-ca0106: Add new card variant. Fixed ALSA bug#2326 - snd-ca0106: Fix typos. - Fix invalid assignment of PCI revision Fix the type of PCI revision to char from int and avoid invalid assignment with pointer cast. + 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> + CREDITS file - sync kernel subdirectory with 2.6 GIT tree - 2.6 kernel sync - kernel subdirectory + Documentation - 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> - 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> - 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> - 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 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. + EMU10K1/EMU10K2 driver - 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 - 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. - 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: 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(). + 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. - 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> + GUS MAX driver - [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. - [PATCH] NULL noise removal Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org> - 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(). - 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 - 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: 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 - 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 - 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 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: increase maximum DMA buffer size to 1024MB See ALSA bug#2481 . - 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 - 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: 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-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. - 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> + ICE1724 driver - 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. - 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 dependency of snd-adlib driver in Kconfig Added the missing dependency on CONFIG_SND for snd-adlib driver. + Intel8x0 driver - 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. - 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 - korg1212: add request_firmware() Load the DSP code using request_firmware(), if possible, instead of using the built-in blob. - 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> - sync kernel subdirectory with 2.6 GIT tree - 2.6 kernel sync - kernel subdirectory + 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> + MSND driver - 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. + 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> + 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> + 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> + PCI drivers - 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. - 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.19-SYNC] missing include in pdaudiocf_irq + 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> + RME HDSP driver - 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 - 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> + 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. + 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 + SB drivers - sb16: add request_firmware() Load the CSP programs using request_firmware(), if possible, instead of using the built-in firmware blobs. - 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 - sb16: add request_firmware() Load the CSP programs using request_firmware(), if possible, instead of using the built-in firmware blobs. + 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 DBRI driver - [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> + Serial BUS drivers - pt2258: add to export-objs Mark pt2258 as containing exported symbols. - 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 - 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 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> + SoC Codec AC97 - 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> + SoC Codec WM8731 - 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. - 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 Codec WM8750 - 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> - 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 Codec WM9712 - 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> + SoC Dynamic Audio Power Management - 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> - 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 - 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 - 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> - 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> + SoC PXA2xx Corgi - 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 - 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 - 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 - 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> + USB USX2Y - 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. - 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 generic driver - 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> - 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> + Utils - Add some soc configs to no_cards Added some SND_SOC* configs to no_cards list to avoid the build of unnecessary modules. - 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: 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. + 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> + 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> - 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 - 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 - 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 - 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. - 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 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. - 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 - 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. - pcm: fix ipc offset calculation for direct plugins Also add more accurate description to x24 formats. - 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 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 + 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. + /src/Makefile.am - Compatibility problem with automake 1.10 fixed. alsa bug#2592 + Configuration - 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. - 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 - 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 + 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 - 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> + /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> + Alsa support for Maemo SDK (n770) - 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>
- 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 - return error state, fail when no configuration is found See bug#843 + Speaker Test - speaker-test: fix typos in manpage See bug#2178 Debian 364560 + 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: cosmetic fix + amixer - Implement Playback/Capture enum. - 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. + us428control - 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. + 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.

Custom Search