Changes v1.0.17 v1.0.18

From AlsaProject
Revision as of 14:01, 29 October 2008 by Perex (Talk | contribs)

Jump to: navigation, search

Contents

Changelog between 1.0.17 and 1.0.18 releases

alsa-driver

Sound Core

Fix build of hda-beep stuff with older 2.6 kernels
build stub for us122l
Add kstrndup() wrapper
Release v1.0.18rc1
Fix include files in configure checks
Fix ARCH detection for ppc and ppc64
Add arch/include check to configure
soc - Add a workaround for incompatible debugfs
Release v1.0.18rc3
Mark CONFIG_SND_JACK as 2.6.27 or later
Add pci_ioremap_bar() check and wrapper
Add check of video_drvdata()
x86 mach: test for mach_apic.h to skip empty directories
Fix build for old 2.4 kernels
Release v1.0.18
sound: make OSS sound core optional
Fix CONFIG_AC97_BUS dependency

ALSA Core

Add a wrapper for strict_strtoul() for older kernels
Fix device_create_drvdata() in snd_card_register()
Add missing pr_xxx() for older kernels
Regenerate patch for replacement with device_create_drvdata()
Add device_create_drvdata() check
Fix build with recent linux-next tree
Revert "Add device_create_drvdata() check"
Kill snd_assert()
Add WARN() and WARN_ON() wrappers for older kernels
Add kstrndup() wrapper
Add dev_printk() and co macros for 2.2/2.4 kernels
Force to re-define WARN_ON() for older 2.6 kernels
Add patches for sparc/*.c
add print_hex_dump_bytes() wrapper
Fix patches for device_create() updates
Add pci_ioremap_bar() check and wrapper
Add check of video_drvdata()
Add fmode_t definition for older kernels
Fix build for old 2.4 kernels
sound: cdev lock_kernel() pushdown
device create: sound: convert device_create to device_create_drvdata
PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures
ALSA: Add jack reporting API
ALSA: Build jack detection
ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
ALSA: IEC958 definition for consumer status channel update
sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
ALSA: Add USB US122L driver
ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
ALSA: Introduce snd_BUG_ON() macro
ALSA: Kill snd_assert() in sound/core/*
ALSA: Kill snd_assert() definition
ALSA: Clean up snd_BUG()
ALSA: Clean up SG-buffer helper functions and macros
ALSA: Allocate larger pages in sgbuf
sound: make OSS sound core optional
ALSA: Remove bitwise from snd_pcm_hw_param_t
ALSA: Increase components array size
ALSA: Add a note on dependency of RTC stuff
alsa: Remove special SBUS dma support code.
device create: sound: convert device_create_drvdata to device_create
ALSA: Print function symbol in the error messages

SoC PXA2xx Core

[ARM] 5063/1: pxa: add clk support for pxa2xx I2S
[ARM] 5098/1: fix sound/soc/pxa/tosa.c to new gpio api
ALSA: ASoC: Permit simultaneous compilation of both PXA AC97 drivers
ALSA: ASoC: fix pxa2xx-i2s clk_get call
sound: ASoC: Support runtime selection of CPU in pxa2xx-i2s
ALSA: Separate common pxa2xx-ac97 code
ALSA: Separate common pxa2xx-pcm code
pxa: move I2S register and bit definitions into pxa2xx-i2s.c
[ARM] pxa: simplify DMA register definitions

Control Midlevel

Kill snd_assert()
ALSA: Kill snd_assert() in sound/core/*
ALSA: use correct lock in snd_ctl_dev_disconnect()

HWDEP Midlevel

Kill snd_assert()
ALSA: Kill snd_assert() in sound/core/*

Jack Input Event Midlevel

Add missing jack.c build stub
jack - fix build with older kernels
Fix jack.c compilation - missing SW_LINEOUT_INSERT
ALSA: Add jack reporting API
ALSA: Handle NULL jacks in snd_jack_report()
ALSA: jack: lineout support to jack abstraction layer
ALSA: hda: dynamic jack id

PCM Midlevel

Regenerated pcm_native.patch
snd/PCM: fasync BKL pushdown
ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
pcm_native.c: remove unused label
Revert "pcm_native.c: remove unused label"
ALSA: Clean up SG-buffer helper functions and macros
ALSA: Allocate larger pages in sgbuf
ALSA: add dummy function to support shared mmap in nommu Blackfin arch
ALSA: fix locking in snd_pcm_open*() and snd_rawmidi_open*()
ALSA: remove unneeded power_mutex lock in snd_pcm_drop
ALSA: kernel docs: fix sound/core/ kernel-doc
sound: add missing pcm kernel-doc

RawMidi Midlevel

ALSA: fix locking in snd_pcm_open*() and snd_rawmidi_open*()

Timer Midlevel

ALSA: fix a typo during snd_assert() removal

/arm/Makefile

ALSA: Separate common pxa2xx-ac97 code
ALSA: Separate common pxa2xx-pcm code

/isa/Makefile

ALSA: wss_lib: move cs4231_lib into wss_lib

/soc/Makefile

sound: ASoC: Blackfin: Include Blackfin architecture support in build

/soc/codecs/Makefile

ALSA: ASoC: Add Texas Instruments TLV320AIC26 codec driver
ALSA: ASoC: AD1980 audio codec driver
ALSA: ASoC: Add WM8900 CODEC driver
ALSA: ASoC: Add WM8580 CODEC driver
ALSA: ASoC: Add WM8903 CODEC driver
sound: ASoC codec: SSM2602 audio codec driver
ALSA: ASoC: Sort Kconfig and Makefile entries for codecs
sound: ASoC: Add WM8971 CODEC driver
ALSA: ASoC codec: AD73311 audio codec driver
ALSA: ASoC: Add TLV320AIC23 codec driver

/sparc/Makefile

Add patches for sparc/*.c

AC97 Codec

ALSA: add TriTech 28023 AC97 codec ID and Wolfson 9701 name.
ALSA: re-order AC97 codec ID table.
ALSA: make snd_ac97_add_vmaster() static
ALSA: ac97 - Enable mono-out on ALC203 codec as default
ALSA: Kill snd_assert() in sound/pci/*
ALSA: ac97 - vt1618 7.1 Audio Support
ALSA: ac97_patch make functions static
ALSA: ASoC: update email address for Liam Girdwood
ALSA: Enable SPDIF output on ALC655

AD1816A driver

ALSA: Kill snd_assert() in sound/isa/*
ALSA: snd-ad1816a: add different TerraTec EWS64 S model

AD1848 driver

ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
ALSA: wss_lib: use wss constants instead of ad1848 ones
ALSA: wss_lib: replace ad1848 mixer element macros with wss ones
ALSA: wss_lib: use CS4231P instead of AD1848P (kill the AD1848P)
ALSA: wss_lib: use wss mixer code instead of ad1848 one
ALSA: wss_lib: use wss pcm code instead of ad1848 one
ALSA: wss_lib: use wss detection code instead of ad1848 one
ALSA: remove stale files

AD1889 driver

ALSA: Kill snd_assert() in sound/pci/*
sound: pci: use pci_ioremap_bar() in sound/

AK4531 codec

ALSA: Kill snd_assert() in sound/pci/*

AK4XXX AD/DA converters

ALSA: revo51: add headphone output

ALS4000 driver

ALSA: als4000 - Code clean up
ALSA: ALS4000 driver work, step 2

ALSA Minor Numbers

ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE

ALSA Version

ALSA: release v1.0.18rc1
ALSA: Release v1.0.18rc3
ALSA: Release v1.0.18

ALSA<-OSS emulation

ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
[PATCH] introduce fmode_t, do annotations

ALSA<-OSS sequencer

sound: ensure device number is valid in snd_seq_oss_synth_make_info

ARM

ALSA: Separate common pxa2xx-ac97 code
ALSA: Separate common pxa2xx-pcm code

ARM AACI PL041 driver

ALSA: aaci - Fix NULL test at error path

ARM PXA2XX driver

[ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead
[ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
ALSA: Separate common pxa2xx-ac97 code
ALSA: pxa2xx-ac97-lib: support building for several CPUs
ALSA: Separate common pxa2xx-pcm code
[ARM] pxa: simplify DMA register definitions
ALSA: Fix pxa2xx-ac97-lib.c compilation
ALSA: Ensure PXA runtime data is initialised

ATIIXP driver

ALSA: Kill snd_assert() in sound/pci/*
ALSA: atiixp - Add PCI ID for SB600 (1002:4382)
sound: pci: use pci_ioremap_bar() in sound/

ATIIXP-modem driver

ALSA: Kill snd_assert() in sound/pci/*
sound: pci: use pci_ioremap_bar() in sound/

AZT2320 driver

ALSA: wss_lib: rename cs4231.h into wss.h
ALSA: wss_lib: rename cs4321_foo to wss_foo

AZT3328 driver

ALSA: sound/pci/azt3328.h: no variables for enums

Apple Onboard Audio driver

aoa - Rename aoa/codec/*.c files
aoa - Rename more files
ALSA: aoa - Remove duplicate assignment of SNDRV_PCM_FMTBIT_S{16,24}_BE bits
powerpc/drivers: Use linux/of_device.h instead of asm/of_device.h
ALSA: aoa i2sbus: don't overwrite module parameter
ALSA: aoa: clean up file names

Asihpi driver

split public and private defs
add control-specific query functions
use new query functions
add extra checks to control cache
Update to hpi_internal.h. Minor cleanups
No longer used
Rewrite PAD control string caching
Simplify DSP crashed flag
Add ASI1723, log buffer properties. Tweak function params for SWIG.
Remove duplicate func prototypes (also in hpimsginit.h)
add missing comma in list
add buffer size member to adapter struct
HPI Stream buffers allocated according to application request
style fixes
need hpimsginit.h
Better error handling in tuner query. Need hpimsginit.h
checkpatch fixes
asihpi - Fix compile warnings regarding printf and size_t
Fix format in portable way.
Include adapter buffer alloc inside adapter mutex
Add support for ASI50xx SSX (multichannel) mode.
asihpi - Mem buffer alloc inside adapter mutex.
asihpi - Avoid null pointer dereference
asihpi - Return from timer func if XRUN
asihpi - Turn off verbose logging
asihpi - Fix printk compile warning

Au12x0/Au1550 PSC ASoC

ALSA: Au1xpsc: psc not disabled when TX is idle

BT87x driver

ALSA: Clean up SG-buffer helper functions and macros

CA0106 driver

ALSA: CA0106 on MSI K8N Diamond PLUS Motherboard
ALSA: misc typo fixes

CMI8330 driver

ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
ALSA: wss_lib: use wss constants instead of ad1848 ones
ALSA: wss_lib: replace ad1848 mixer element macros with wss ones
ALSA: wss_lib: use wss pcm code instead of ad1848 one
ALSA: wss_lib: use wss detection code instead of ad1848 one

CMI8788 (Oxygen) driver

ALSA: virtuoso: add Xonar D1 support
ALSA: oxygen: prevent muting of nonexistent AC97 controls
ALSA: oxygen: fix distorted output on AK4396-based cards
ALSA: oxygen: use SPDIF channel status symbols
ALSA: oxygen: use a copy of the model struct
ALSA: oxygen: add probe callback
ALSA: oxygen: remove X-Meridian magic number
ALSA: oxygen: handle X-Meridian dynamically
ALSA: virtuoso: handle D2X/DX dynamically
ALSA: virtuoso: create common functions for GPIO bit switch controls
ALSA: oxygen: rename pcm_dev_cfg
ALSA: oxygen: configure MIDI via device_config
ALSA: oxygen: add UART I/O functions
ALSA: oxygen: add self-documenting functions
ALSA: virtuoso: allow I2C-connected PCM1796
ALSA: virtuoso: make number of PCM1796 DACs configurable
ALSA: virtuoso: rename AC97 callback function
ALSA: oxygen: rename first PCM device
ALSA: virtuoso: add Xonar HDAV1.3 support
ALSA: oxygen: wait for ACK when resetting UART

CS4231 driver

Add build stub for new wss_lib
ALSA: wss_lib: move cs4231_lib into wss_lib
ALSA: wss_lib: rename cs4231.h into wss.h
ALSA: wss_lib: rename cs4321_foo to wss_foo

CS4236+ driver

ALSA: cs4232: fix crash during chip PNP detection
ALSA: wss_lib: rename cs4321_foo to wss_foo
ALSA: snd-cs4236: add Techmakers MF-4236PW PnP card ID
ALSA: Kill snd_assert() in sound/isa/*

CS423x drivers

Add build stub for new wss_lib
ALSA: wss_lib: move cs4231_lib into wss_lib

CS46xx driver

ALSA: cs46xx: Add PCI IDs for TerraTec and Hercules cards

CS5530 Cyrix/NatSemi VSA1 softaudio init

sound: use a common working email address

Conexant Riptide driver

riptide: treat firmware data as const

Digigram PCXHR driver

pcxhr: treat firmware data as const
Fix a const pointer usage warning in the Digigram pcxhr soundcard driver

Digigram VX core

vx: treat firmware data as const
ALSA: Kill snd_assert() in other places

Digigram VX222 driver

vx222: treat firmware data as const

Documentation

ALSA: virtuoso: add Xonar D1 support
remove mention of CONFIG_KMOD from documentation
Documentation cleanup: trivial misspelling, punctuation, and grammar corrections.
ALSA: Allow to force model to intel-mac-v3 in snd_hda_intel (sigmatel).
ALSA: Introduce snd_BUG_ON() macro
ALSA: Kill snd_assert() definition
ALSA: ALSA-Configuration.txt: supported cards update
ALSA: Add missing description of usb-audio parameters
ALSA: usb-audio - Add ignore_ctl_error parameter
ALSA: hda - Add AD1882A codec support
ALSA: hda - Add descriptions of missing model values
ALSA: hda - Add support of Toshiba RX1
ALSA: Documentation/sound/alsa/ALSA-Configuration.txt: fix typo
ALSA: virtuoso: add Xonar HDAV1.3 support
alsa: Remove special SBUS dma support code.
Documentation: fix the now deprecated reference to {set,reset}_scoop_gpio

Dreamcast AICA sound (pcm) driver

sh: migrate to arch/sh/include/
ALSA: Fix section for snd-aica platform driver

EMU10K1/EMU10K2 driver

Regenerate emu10k1_main.patch
Fix emu10k1_main.patch
ALSA: emu10k1: fix device names for Live!/Audigy1/2/4/E-mu
ALSA: emu10k1: fix faulty commit 18c71092
ALSA: emu10k1: fix coding style for emu10k1_main.c

ENS1370/1+ driver

ALSA: ens1370: SRC stands for Sample Rate Converter
ALSA: ALSA: ens1370: communicate PCI device to AC97

ES1688 driver

ALSA: Kill snd_assert() in sound/isa/*

GUS Library

ALSA: Kill snd_assert() in sound/isa/*

GUS MAX driver

ALSA: wss_lib: rename cs4321_foo to wss_foo

Generic drivers

pcsp - Add a wrapper for hrtimer_get_expires()
ALSA: Kill snd_assert() in other places
sound: Fix esoteric double free in the dummy sound driver.
ALSA: dummy driver - do not use assignment in if condition
ALSA: mtpav - Fix race in probe
ALSA: misc typo fixes
ALSA: pcsp - Fix locking messes in snd-pcsp
hrtimer: convert sound/ to the new hrtimer apis

HDA Codec driver

Add pci/hda/patch_nvhdmi.c build stub
ALSA: hda - Added support for Asus V1Sn
ALSA: hda - Add support of ASUS Eeepc P90*
ALSA: hda: digital pc-beep support hd-audio codecs
ALSA: HDA - Add automatic model setting for the Acer Aspire 5920G laptop
ALSA: Allow to force model to intel-mac-v3 in snd_hda_intel (sigmatel).
ALSA: hda: added 92HD81/83 support
ALSA: hda - Fix sound on NEC Versa S9100
ALSA: hda: Add support for ECS/PC Chips boards with Sigmatel codecs
ALSA: hda - Don't reset SPDIF in each status change
ALSA: hda - initialize node 0x21 properly on AD1988 codecs
ALSA: hda - put all HDA codec IDs to components for precise hw detection
ALSA: hda: dynamically create capture mux controls
ALSA: hda: 92HD75xx fixes
ALSA: hda - Fix capture source widgets on ALC codecs
ALSA: hda - Fix call of alc888_coef_init()
ALSA: hda - Add definitions of HDMI-related verbs
ALSA: hda - set up HDMI channels
ALSA: hda - Add AD1882A codec support
ALSA: hda - Create beep control on ALC269 codec
ALSA: hda - Fix ALC269 capture source
ALSA: hda - fix spaces in patch_realtek.c
ALSA: hda - Add support of HP DC7600
ALSA: hda - Add support of Toshiba S06
ALSA: hda - Add support of Acer Aspire One
ALSA: hda - Add support of Quanta FL1
ALSA: hda - support more ALC888 devices
ALSA: hda - Add more ALC662/663 codec support
sound: Revert "ALSA: hda - Added model selection for iMac 24""
ALSA: hda - Add descriptions of missing model values
ALSA: hda - Add support of Toshiba RX1
ALSA: hda: Distortion fix for dell_m6_core_init
ALSA: hda - Fix ALC663 auto-probe
ALSA: hda - Add mic-boost controls to ALC662/663 auto configuration
ALSA: hda - Add model for Toshiba L305 laptop
ALSA: hda: SPDIF mux controls
ALSA: hda: removed unneeded hp_nid references
ALSA: hda: slave digital out support
ALSA: hda: digital slave support for IDT codecs
ALSA: hda: SPDIF mux name change
ALSA: hda - add missing slave_dig_outs for 92HD73bxx
ALSA: HDA patch_via.c: cleanup
ALSA: HDA patch_via.c: HP and CD pin connect config
ALSA: HDA patch_via.c: Fix inversion of surround and side channels
ALSA: HDA patch_via.c: Add VT1708S and VT1702 support
ALSA: HDA patch_via.c: Mute on headphone plug-in
ALSA: HDA patch_via.c: Independent DAC for headphone
ALSA: HDA patch_via.c: Second S/PDIF (HDMI) support
ALSA: hda: fix oopses in snd-hda-intel after digital slave support additions
ALSA: hda: Added a STAC_HP_M4 quirk
ALSA: hda: Input port AMP controls
ALSA: hda: fixed hp_nid DAC for DELL_M6
ALSA: hda: 92hd73xx fixes
ALSA: HDA: patch_analog: Fix SPDIF output on AD1989B
ALSA: HDA: patch_analog: Implement multiple outputs for AD1988
ALSA: HDA: patch_analog: Quirk for Asus P5Q Premium/Pro boards.
ALSA: HDA VIA: Fix crash on codecs without Headphone
ALSA: HDA VIA: Fix 2nd S/PDIF out function
ALSA: HDA VIA: Replace buggy Mic Boost
ALSA: hda: SPDIF mux fixes for STAC927x
ALSA: hda - Add PCI subsystem ID for MacBookPro4,1
ALSA: hda - Fix ALC662 DAC mixer mutes also for auto config model
ALSA: hda - Fix model for Dell Inspiron 1525
ALSA: hda: use last DAC defined for hp_pin
ALSA: hda: slave_dig_outs code block in wrong location
ALSA: hda - Fix / clean-up slave digital out codes
ALSA: Support NVIDIA MCP78/7A HDMI audio
ALSA: hda: 92xx S/PDIF In support
ALSA: hda: HP laptop quirk
ALSA: hda - Map ALC662 model for Gigabyte 945GCM-S2L
ALSA: hda - Map ALC662 model for Foxconn 45CMX/45GMX/45CMX-K
ALSA: hda: appletv support
ALSA: hda: SPDIF stream muting support
ALSA: hda: add more board-specific information for Realtek ALC662 rev1
ALSA: hda - Fix another ALC889A (rev 0x100101)
ALSA: hda - Fix PCI SSID for ASROCK K18N78FullHD-hSLI
ALSA: hda: comment typo fix
ALSA: hda: comment typo fix
ALSA: hda: STAC_HP_M4
ALSA: hda: VREF powerdown for headphones
ALSA: hda: add mixers for analog mixer on 92hd75xx codecs
ALSA: hda: corrected invalid mixer values
ALSA: hda: fix nid variable warning
ALSA: hda - Add auto mic switch in realtek auto-probe mode
ALSA: hda - Fix PCI SSID of ASUS M90V
ALSA: hda - Add ALC1200 support
ALSA: hda - Add ALC887 support
ALSA: hda - Add support of ALC272
ALSA: hda - Fix quirk lists for realtek codecs
ALSA: hda - Fix PCM type of Nvidia HDMI devices
ALSA: hda - Add infrastructure for dynamic stream allocation
ALSA: hda - Add generic arrays
ALSA: hda - Use generic array helpers
ALSA: hda - Allocate name string of each codec
ALSA: hda - Manage kcontrol lists
ALSA: hda - Add codec reconfiguration feature
ALSA: hda - Add sysfs entries to hwdep devices
ALSA: hda - Add init_verbs entries
ALSA: hda - Add hints for reconfig
ALSA: hda: add support for jack detection on IDT/Sigmatel
ALSA: hda - Release jack instance for dynamic reconfigure
ALSA: hda - Fix conflicting volume controls on ALC260
ALSA: hda - correct bracketing in spdif test in patch_sigmatel.c
ALSA: hda: add snd_hda_get_jack* functions
ALSA: hda: add support for jack detection on IDT codecs.

HDA Intel driver

ALSA: hda - Align BDL position adjustment parameter
ALSA: hda_intel: ALSA HD Audio patch for Intel Ibex Peak DeviceIDs
ALSA: hda - support new AMD HDMI Audio (1002:970f)
ALSA: hda_intel: enable snoop for nvidia HDA controller
ALSA: hda - disable delayed period-ack with bdl_pos_adj=0
ALSA: hda - check page continuity
ALSA: hda - Fix VIA recording problem
ALSA: hda - allow probing of 4 codecs
ALSA: Fix for reading RIRB buffer on NVIDIA aza controller with AMD Phenom cpu
ALSA: hda - Add infrastructure for dynamic stream allocation

HDA generic driver

hda: digital pc-beep support hd-audio codecs
fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
Fix build of hda-beep stuff with older 2.6 kernels
alsa-info.sh - upload to www.alsa-project.org, alsactl init changes in boot scripts
ALSA: hda: digital pc-beep support hd-audio codecs
ALSA: hda - use input_free_device()
ALSA: hda - print a few HDMI information in proc
ALSA: hda: Input port AMP controls
ALSA: HDA: hda_local: Less magic numbers.
ALSA: HDA: hda_proc: Fix printf format specifier
ALSA: Support NVIDIA MCP78/7A HDMI audio
ALSA: hda - Allocate name string of each codec
ALSA: hda - Manage kcontrol lists
ALSA: hda - Add codec reconfiguration feature
ALSA: hda - Add sysfs entries to hwdep devices
ALSA: hda - Add init_verbs entries
ALSA: hda - Add hints for reconfig
ALSA: hda: add snd_hda_get_jack* functions

ICE1712 driver

ALSA: ice1724 - Support for Terrasoniq/MUSONIK TS22 PCI card
ALSA: sound/pci: supported cards update
ALSA: ice1724: enable MIDI on Terratec Aureon 7.1 Universe
ALSA: ice1724: Enable MIDI on TerraTec PHASE 22 and PHASE 28
ALSA: ice1712/aureon.c: fix coding style
ALSA: ice1712/wtm: fix coding style
ALSA: ice1712/ice1724: Coding style fixes part 1 (more coming up)
ALSA: ice1712.c: fix coding style

ICE1724 driver

ALSA: ice1724/revo: simple clean up
ALSA: revo51: add headphone output
ALSA: ice1724 - limit channels for multi-channel playback
ALSA: ice1712/ice1724: Coding style fixes part 1 (more coming up)
ALSA: ice1724.c: fix coding style
ALSA: ice1724 - Fix TX IRQ lockup

IOCTL32 emulation

Kill snd_assert()

ISA

firmware: convert sb16_csp driver to use firmware loader exclusively
ALSA: wss_lib: move cs4231_lib into wss_lib
ALSA: wss_lib: use wss pcm code instead of ad1848 one
ALSA: wss_lib: use wss detection code instead of ad1848 one
ALSA: remove obsolete *_FIRMARE_IN_KERNEL in isa/Kconfig

Intel8x0 driver

ALSA: sound/pci: supported cards update
ALSA: intel8x0: implement ac97_clock whitelist
ALSA: intel8x0 - use snd_pci_quirk for clock list
ALSA: intel8x0 - Add quirk for Fujitsu Lifebook P7010

KORG1212 driver

Regenerated patches for request_firmware updates in kernel
fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
firmware: convert korg1212 driver to use firmware loader exclusively

MIPS AU1x00 driver

removed unused #include <linux/version.h>'s

MIXART driver

Fix a const pointer usage warning in the Digigram miXart soundcard driver

Maestro3 driver

Regenerated patches for request_firmware updates in kernel
fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
maestro3.patch: Fix second request_firmware call for 2.4 kernels
maestro3: treat firmware data as const
firmware: convert maestro3 driver to use firmware loader exclusively

Memalloc module

Fix compile warnings with older kernels
ALSA: Kill snd_assert() in sound/core/*
ALSA: Clean up SG-buffer helper functions and macros
ALSA: Fix allocation size calculation in snd_dma_alloc_pages_fallback()
ALSA: Allocate larger pages in sgbuf
sparc: Make SBUS DMA interfaces take struct device.
alsa: Remove special SBUS dma support code.

OPL3

ALSA: Kill snd_assert() in other places

OPL3SA2 driver

ALSA: opl3sa2: drop snd_card pointer from the snd_opl3sa2 structure
ALSA: opl3sa2: replace nd_opl3sa2_info_xxx() with snd_wss_info_xxx()

OPL4

ALSA: Kill snd_assert() in other places

OSS device core

sound: cdev lock_kernel() pushdown
device create: sound: convert device_create to device_create_drvdata
sound: make OSS sound core optional
ALSA: fix section mismatch in the sound_core
device create: sound: convert device_create_drvdata to device_create
sound: use a common working email address

Opti9xx drivers

ALSA: opti93x - Fix NULL dereference
ALSA: opti9xx: no isapnp param for !CONFIG_PNP
ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
ALSA: wss_lib: use wss constants instead of ad1848 ones
ALSA: wss_lib: use wss mixer code instead of ad1848 one
ALSA: wss_lib: use wss pcm code instead of ad1848 one
ALSA: wss_lib: use wss detection code instead of ad1848 one
ALSA: wss_lib: opti92x-ad1848 WSS_HW_DETECT fix
ALSA: Kill snd_assert() in sound/isa/*

PARISC Harmony driver

ALSA: harmony - fix a typo

PCI drivers

Fixed dependency of pci/ens1371.c
firmware: convert korg1212 driver to use firmware loader exclusively
firmware: convert ymfpci driver to use firmware loader exclusively
firmware: convert maestro3 driver to use firmware loader exclusively
ALSA: hda: digital pc-beep support hd-audio codecs
ALSA: virtuoso: add Xonar D1 support
ALSA: sound/pci/Kconfig: update for ice1712/24
ALSA: virtuoso: add Xonar HDAV1.3 support
ALSA: Support NVIDIA MCP78/7A HDMI audio
ALSA: hda: add support for jack detection on IDT/Sigmatel

PPC AWACS driver

ALSA: snd-powermac: mixers for PowerMac G4 AGP
ALSA: snd-powermac: HP detection for 1st iMac G3 SL

PPC PS3 driver

ALSA: ps3: Add support for SPDIF/HDMI passthru

RTC timer driver

Remove duplicated definition of is_power_of_2() from rtctimer.c

SA11xx UDA1341 driver

[ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead
[ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
ALSA: Kill snd_assert() in other places
ALSA: fix section for sa11xx-uda1341 platform driver

SB drivers

ALSA: ALS4000 driver work, step 2

SB16/AWE driver

Regenerated patches for request_firmware updates in kernel
fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
firmware: convert sb16_csp driver to use firmware loader exclusively

SPARC AMD7930 driver

Add patches for sparc/*.c
amd7930: Convert to pure OF driver.
sparc: Annotate of_device_id arrays with const or __initdata.

SPARC DBRI driver

sparc: Make SBUS DMA interfaces take struct device.
dbri: Convert to pure OF driver.
sparc: Annotate of_device_id arrays with const or __initdata.

SPARC cs4231 driver

cs4231: Use SNDRV_DMA_TYPE_DEV instead of SNDRV_DMA_TYPE_SBUS.
cs4231: Convert SBUS side to OF driver.
sparc: Move EBUS DMA interfaces into seperate header file.
cs4231: Convert to EBUS side to pure OF driver.
sparc: Annotate of_device_id arrays with const or __initdata.

Serial BUS drivers

Regenerated i2c/other/tea575x-tuner.patch
Add check of video_drvdata()
Clean up i2c/other/Makefile
Add missing tea575x-tuner.c generation in i2c/other/Makefile

SoC Audio for the Atmel AT32 System-on-Chip

Add missing soc/* build stubs
sound: ASoC: Convert wm8510 to a new-style i2c driver
ALSA: ASoC: Fix at32-pcm build breakage with PM enabled
ALSA: sound/soc/at32: Useless NULL test
ALSA: ASoC: Convert playpaq_wm8510 to bulk route registration API

SoC Audio for the Atmel AT91 System-on-Chip

[ARM] 5130/4: Support for the at91sam9g20
removed unused #include <linux/version.h>'s
ALSA: ASoC: Add missing new-line at end of strings
ALSA: ASoC: Convert wm8731 to a new-style i2c driver
ALSA: ASoC: Remove references to Endrelia ETI-B1 board
ALSA: ASoC: update email address for Liam Girdwood

SoC Audio for the Samsung S3C24XX chips

[ARM] Eliminate useless includes of asm/mach-types.h
sound: ASoC: Fix an error path in neo1973_wm8753
sound: ASoC: Convert wm8753 to a new-style i2c driver
sound: ASoC: Convert neo1973/lm4857 to a new-style i2c driver
ALSA: ASoC: Check for machine type in GTA01 machine driver
ALSA: ASoC: Use snd_soc_dapm_nc_pin() in GTA01 audio driver
ALSA: ASoC: Add widgets before setting endpoints on GTA01
ALSA: ASoC: Fix build of GTA01 audio driver
ALSA: ASoC: Drop device registration from GTA01 lm4857 driver

SoC Blackfin

Add soc/blackfin build stub
sound: ASoC: Blackfin: SPORT peripheral interface driver
sound: ASoC: Blackfin: DMA Driver for AC97 sound chip
sound: ASoC: Blackfin: AC97 Blackfin CPU DAI driver
sound: ASoC: Blackfin: DMA Driver for I2S sound chip
sound: ASoC: Blackfin: I2S CPU DAI driver
sound: ASoC: Blackfin: board driver for AD1980/1 audio codec
sound: ASoC: Blackfin: board driver for SSM2602 sound chip
sound: ASoC: Blackfin: add Blackfin arch ASoC Kconfig and Makefile
ALSA: ASoC Blackfin: add I2S DAI support for AD73311
ALSA: ASoC Blackfin: add asoc ad73311 driver supporting in Blackfin boards
ALSA: ASoC Blackfin: fix bug - Audio Latency on AD1981 with MMAP enabled

SoC Codec AC97

ALSA: ASoC: update email address for Liam Girdwood

SoC Codec AD1980

Add missing soc/* build stubs
ALSA: ASoC: AD1980 audio codec driver
ALSA: ASoC codec: fix compiling error in ad1980 driver after ASoC API changed
ALSA: ASoC codec: remove unused #include <version.h>

SoC Codec AD73311

ALSA: ASoC codec: AD73311 audio codec driver

SoC Codec AK4535

ALSA: ASoC: Fix double free and memory leak in many codec drivers
ALSA: ASoC: Convert ak4535 to a new-style i2c driver
ALSA: ASoC: Don't suggest compile time selection of codec access
ALSA: ASoC: Remove unused AUDIO_NAME define from codec drivers

SoC Codec CS4270

ALSA: make the CS4270 driver a new-style I2C driver
ALSA: ASoC: Fix another cs4270 error path
ALSA: ASoC: Fix cs4270 error path

SoC Codec Philips UDA1380

ALSA: ASoC: Fix double free and memory leak in many codec drivers
ALSA: ASoC: Convert uda1380 to a new-style i2c driver
ALSA: ASoC: Don't suggest compile time selection of codec access

SoC Codec SSM2602

sound: ASoC codec: SSM2602 audio codec driver
ALSA: ASoC: Remove unused AUDIO_NAME define from codec drivers

SoC Codec TLV320AIC23

ALSA: ASoC: Add TLV320AIC23 codec driver
ALSA: ASoC: Add custom SOC_SINGLE_TLV for tlv320aic23 codec
ALSA: ASoC: Remove unused AUDIO_NAME define from codec drivers
ALSA: ASoC: Fix compile-time warning for tlv320aic23.c

SoC Codec TLV320AIC26

ALSA: ASoC: Add Texas Instruments TLV320AIC26 codec driver
ALSA: ASoC: Export DAI and codec for TLV320AIC26
ALSA: ASoC: Staticise keyclick dev_attr in tlv320aic26

SoC Codec TLV320AIC3X

ALSA: ASoC: Fix double free and memory leak in many codec drivers
ALSA: ASoC: Convert tlv320aic3x to a new-style i2c driver (v2)
ALSA: Correct Vladimir Barinov's e-mail address
ALSA: ASoC: tlv320aic3x: Use uniform tlv320aic naming
ALSA: ASoC: tlv320aic3x: Fix DSP DAI format and signal polarities matching

SoC Codec WM8510

sound: ASoC: Convert wm8510 to a new-style i2c driver
ALSA: ASoC: Correct inverted Mic PGA Switch control in wm8510 driver
ALSA: ASoC: Add WM8510 SPI support
ALSA: ASoC: Implement WM8510 bias level control
ALSA: ASoC: Make WM8510 microphone input a DAPM mixer

SoC Codec WM8580

ALSA: ASoC: Add WM8580 CODEC driver
ALSA: ASoC codec: remove unused #include <version.h>
ALSA: ASoC: Convert wm8580 to a new-style i2c driver

SoC Codec WM8731

ALSA: ASoC: Convert wm8731 to a new-style i2c driver
ALSA: ASoC: Add SPI support for WM8731
sound: ASoC: Fix WM8731 SPI write

SoC Codec WM8750

ALSA: wm8750: it's MONO1, not MONO
ALSA: wm8750: add missing VREF output
ALSA: ASoC: Convert wm8750 to a new-style i2c driver
ALSA: ASoC: Don't suggest compile time selection of codec access
sound: ASoC: Add WM8750 SPI support

SoC Codec WM8753

sound: ASoC: Convert wm8753 to a new-style i2c driver
ASoC: Set correct name for WM8753 rec mixer output
ALSA: ASoC: Add WM8753 SPI support

SoC Codec WM8900

ALSA: ASoC: Add WM8900 CODEC driver
ALSA: ASoC codec: remove unused #include <version.h>
ALSA: ASoC: Convert wm8900 to a new-style i2c driver

SoC Codec WM8903

Add wm8903 build stub
ALSA: ASoC: Add WM8903 CODEC driver
ALSA: ASoC: WM8903 I2C cleanups
ALSA: ASoC: Fix inverted input PGA mute bits in WM8903

SoC Codec WM8971

sound: ASoC: Add WM8971 CODEC driver

SoC Codec WM8990

ALSA: wm8990: Fix routing of left DAC to speaker mixer
ALSA: wm8990: Implement speaker volume PGA
ALSA: ASoC: Convert wm8990 to a new-style i2c driver

SoC Codec WM9712

ALSA: soc - wm9712 mono mixer

SoC Codec WM9713

ALSA: ASoC: Fix indentation in WM9713
sound: ASoC: DAPM support for ADC on WM9713 PCM interface

SoC DaVinci

[ARM] Eliminate useless includes of asm/mach-types.h
ALSA: ASoC: Add missing new-line at end of strings
ALSA: ASoC: Convert tlv320aic3x to a new-style i2c driver (v2)
ALSA: Correct Vladimir Barinov's e-mail address

SoC Dynamic Audio Power Management

soc - Add a workaround for incompatible debugfs
ALSA: ASoC: Refactor DAPM event handler
ALSA: ASoC: Factor PGA DAPM handling into main
ALSA: ASoC: Export dapm_reg_event() fully
ALSA: ASoC: Convert bitfields in ASoC into full int width
ALSA: ASoC: Rename mask to max to reflect usage
ALSA: ASoC: convert use of uint to unsigned int
ALSA: ASoC: Convert DAPM pop time configuration to debugfs
ALSA: ASoC: add new param mux to dapm_mux_update_power
ALSA: ASoC: Allow machine drivers to mark pins as not connected
ALSA: Fix debugfs_create_dir's error checking method for sound/soc/
ALSA: ASoC: Remove snd_soc_dapm_connect_input()

SoC Freescale

ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound drivers
ALSA: ASoC: Add OpenFirmware helper for matching bus and codec drivers
ALSA: ASoC: Add mpc5200-psc I2S driver
ALSA: ASoC: fix SNDCTL_DSP_SYNC support in Freescale 8610 sound drivers
ALSA: ASoC - fix DMA channel selection in Freescale MPC8610 sound drivers

SoC Layer

ALSA: ASoC: Allow codecs to override register display
ALSA: ASoC: Convert bitfields in ASoC into full int width
ALSA: ASoC: Rename mask to max to reflect usage
ALSA: ASoC: Add OpenFirmware helper for matching bus and codec drivers
ALSA: ASoC: Make OpenFirmware helper include file conditional
ALSA: ASoC: Add Texas Instruments TLV320AIC26 codec driver
ALSA: ASoC: AD1980 audio codec driver
ALSA: ASoC: Add all CODECs Kconfig option
ALSA: ASoC: convert use of uint to unsigned int
ALSA: ASoC: Add WM8900 CODEC driver
ALSA: ASoC: Add WM8580 CODEC driver
ALSA: ASoC: Add WM8903 CODEC driver
ALSA: ASoC: Make all codecs depend on rather than selecting I2C
ALSA: ASoC: Add SPI support for WM8731
sound: ASoC codec: SSM2602 audio codec driver
sound: ASoC: Blackfin: Include Blackfin architecture support in build
ALSA: ASoC: Sort Kconfig and Makefile entries for codecs
ALSA: ASoC: Use codec digital mute when stopping playback
sound: ASoC: Add WM8971 CODEC driver
sound: ASoC: Fix dependency on AC97_BUS
ALSA: ASoC codec: AD73311 audio codec driver
ALSA: ASoC: Add TLV320AIC23 codec driver
ALSA: ASoC - clean up Kconfig for TLV320AIC2
ALSA: ASoC: Make TLV320AIC26 user-visible
ALSA: ASoC: Hide TLV320AIC26 configuration option for non-OpenFirwmare users

SoC PXA2xx Corgi

[ARM] pxa/corgi: use generic GPIO API for SCOOP GPIOs
ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers

SoC PXA2xx Poodle

ALSA: ASoC: Update Poodle to current ASoC API
ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers

SoC PXA2xx Spitz

ALSA: spitz: MONO -> MONO1
ALSA: ASoC: Convert wm8750 to a new-style i2c driver
[ARM] pxa/spitz: use generic GPIO API for SCOOP1/SCOOP2 GPIOs
[ARM] pxa/akita: use pca953x instead of akita-ioexp
ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers

SoC PXA2xx Tosa

[ARM] 5098/1: fix sound/soc/pxa/tosa.c to new gpio api
ALSA: sound/soc/pxa/tosa.c: removed duplicated include
ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers

SoC Texas Instruments OMAP

ALSA: ASoC: Fix error paths in N810 machine driver init and release clocks at exit
ALSA: ASoC: Convert tlv320aic3x to a new-style i2c driver (v2)
ALSA: ASoC: Use snd_soc_dapm_nc_pin() in N810 machine driver
ALSA: ASoC: Add support for osk5912
ALSA: ASoC: Add DSP DAI format support to the OMAP McBSP driver
ALSA: ASoC: OMAP: Add multilink support to McBSP DAI driver
ALSA: ASoC: OMAP: Add support for OMAP2430 and OMAP34xx in McBSP DAI driver
ALSA: ASoC: OMAP: Set DMA stream name at runtime in McBSP DAI driver
ALSA: ASoC: Add destination and source port for DMA on OMAP1
ALSA: ASoC: OMAP: Fix DSP DAI format in McBSP DAI driver
ALSA: ASoC: OMAP: Continue fixing DSP DAI format in McBSP DAI driver

Sound Galaxy driver

ALSA: wss_lib: replace ad1848 mixer element macros with wss ones

TEA575x tuner

V4L/DVB (8484): videodev: missed two more usages of the removed 'owner' field.
V4L/DVB (8523): v4l2-dev: remove unused type and type2 field from video_device
V4L/DVB (8777): tea575x-tuner: replace video_exclusive_open/release
V4L/DVB (8788): v4l: replace video_get_drvdata(video_devdata(filp)) with video_drvdata(filp)

USB

ALSA: Add USB US122L driver
ALSA: us122l - Add missing dependency on CONFIG_SND_HWDEP

USB USX2Y

build stub for us122l
ALSA: Add USB US122L driver
ALSA: us122l: fix missing unlock in usb_stream_hwdep_vm_fault()

USB generic driver

ALSA: usb-audio: add BOSS GT-10 support
ALSA: Add USB US122L driver
ALSA: snd_usb_audio: fix SB Extigy IR Remote regression
ALSA: usb-audio - Add ignore_ctl_error parameter
ALSA: usb-audio: add support for E-Mu Tracker Pre
ALSA: usb - Fix possible Oops at USB-MIDI disconnection
ALSA: snd-usb-audio: support for Edirol UA-4FX device
ALSA: usb-audio: dynamic detection of MIDI interfaces in uaxx-quirk

Utils

alsa-info.sh - upload to www.alsa-project.org, alsactl init changes in boot scripts
recent alsactl cleanups for /etc/init.d boot scripts (use -r and restore only)
alsa-info.sh: fix --pastebin option
alsa-info.sh: Add output from 'amixer info'
alsa-info - Fix quoting

VIA82xx driver

ALSA: via82xx - ignore buffer preallocation errors
ALSA: via82xx - check continuous pages in buffer setup

WSS library

Add build stub for new wss_lib
ALSA: wss_lib: move cs4231_lib into wss_lib
ALSA: wss_lib: rename cs4231.h into wss.h
ALSA: wss_lib: rename cs4321_foo to wss_foo
ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
ALSA: wss_lib: use wss constants instead of ad1848 ones
ALSA: wss_lib: use wss mixer code instead of ad1848 one
ALSA: wss_lib: use wss pcm code instead of ad1848 one
ALSA: wss_lib: fix opti93x capture formats limitations
ALSA: wss_lib: remove second mutexes initialization
ALSA: wss_lib: fix AZT2320 probe.
ALSA: wss_lib: rework snd_ad1848_probe()
ALSA: wss_lib: missing closing brace in (ifdeffed out) debug function.
ALSA: wss_lib: snd_wss_calibrate_mute improvement
ALSA: wss_lib: do not mess mixer settings during probe

Wavefront drivers

ALSA: wss_lib: rename cs4231.h into wss.h

YMFPCI driver

ymfpci: treat firmware data as const
firmware: convert ymfpci driver to use firmware loader exclusively

au88x0 driver

ALSA: au88x0: clipping ceiling loop wrong in comment
ALSA: Clean up SG-buffer helper functions and macros
sound: pci: use pci_ioremap_bar() in sound/

alsa-lib

Core

IEC958 definition for consumer status channel update
Release v1.0.17a
Release v1.0.18rc3
Release v1.0.18

Control API

Replace some assert() with runtime checks
Fix return value of snd_ctl_hw_subscribe_events()
Fix sort-out of non-existing devices in namehint

Mixer API

alsa-lib: Don't call the simple mixer interface "legacy"

PCM API

Add boolean (mute) functionality to softvol plugin
clamp snd_pcm_rewind()/snd_pcm_forward() into the right direction
fix type of internally used sframes variable, to avoid unnecessary casts
fix return value of snd_pcm_rewind()/snd_pcm_forward() to return how much actually has been rewound, instead of what actually could have rewound
Fix interleave check in pcm_direct.c
Fix non-tread mode with PCM direct plugins
alsa-lib: Make sure SND_PCM_NO_xxx flags don't get lost when nonblocking mode is enabled
alsa-lib: Reword doxygen doc for snd_pcm_delay()
Add snd_pcm_avail() and snd_pcm_avail_delay() functions. Make snd_pcm_hwsync() deprecated.
pcm_softvol plugin: remove access type change for refine
Fix comment typos for snd_pcm_read[in]()
Add snd_pcm_avail() and snd_pcm_avail_delay() prototypes

Configuration

Add iec958 PCM definition for PS3

Kernel Headers

Increase the components array size

Test/Example code

test/pcm: Fix error messages in async callback and add snd_pcm_start() condition

alsa-utils

Core

alsactl - install initialization files
Release v1.0.18rc1
Release v1.0.18rc2
Remove unneeded files from EXTRA_DIST in root Makefile.am
Release v1.0.18rc3
Add --disable-alsaconf to configure script
Release v1.0.18

ALSA Control (alsactl)

Initial 'alsactl init' implementation
alsactl init: added support for Lenovo T61
alsactl init: Changed support for Acer Travelmate 8100 (use subvendor and subdevice for matching)
alsactl init - Fix Lenovo T61 configuraton
alsactl - install initialization files
alsactl init configuration syntax changes
alsactl init - allow enum specification by name strings
alsactl init - add dB and percentual CTL{value} parsing for integer values
alsactl init - restore calls also init on failure
alsactl init - modified configuration for Acer Travelmate 8100
alsactl init - fixed enumeration string setting, update Lenovo T61 config (dB)
alsactl init - add ATTR{dBmin} and ATTR{dBmax}
alsactl init - CTL{values}, CTL{enums} and default "guess method" initialization
alsactl init - add default command to help config and fix packaging
alsactl - remove 'names' command, fix alsactl man page
alsactl: Allow card specification by device name (support for udev)
alsactl init - fixed EXTRA_DIST typo in alsactl/init subdirectory
alsactl init - fix memory leaks (valgrind helped)
alsactl.1 - explicitly notify about ALSA_CONFIG_PATH environment variable
Add missing files to be included in alsactl/Makefile.am
alsactl: Fix oops (when parsing card argument)
alsactl: Add -g,--ignore option to ignore 'No soundcards found' error

Speaker Test

alsactl - install initialization files

amixer

amixer - fixed TLV dBscale and added dBrange parsing

aplay/arecord

aplay - show sample arrangement (mmap areas) in verbose more for debugging
aplay/arecord: add --test-position test

iecset

iecset update for new consumer status channel bits
iecset - Add missing help text for -n option

alsa-tools

Core

more gitcompile cleanups
improve Makefile error paths, improve automake directory detection for sbiload
Added configure target to global Makefile and gitcompile to EXTRA_DIST
Release v1.0.18

/seq/Makefile

improve Makefile error paths, improve automake directory detection for sbiload
Added seq/gitcompile and seq/Makefile to tarball

Digigram Echo Mixer

improved automake directory detection for echomixer tree
Added configure target to global Makefile and gitcompile to EXTRA_DIST
Fix the gitcompile addition to EXTRA_DIST - echomixer

Envy24 Control

more gitcompile cleanups
Added configure target to global Makefile and gitcompile to EXTRA_DIST

RME Digi Control

rmedigicontrol/gitcompile fixed typo

ac3dec (Dolby Digital Decoder)

gitcompile: return error return code and add GITCOMPILE_NO_MAKE condition
Added configure target to global Makefile and gitcompile to EXTRA_DIST
ac3dec - Add -H option for HDMI
ac3dec - Add missing -H option

as10k1 (EMU10K1+ DSP Assembler)

gitcompile: return error return code and add GITCOMPILE_NO_MAKE condition
more gitcompile cleanups

hdspconf

more gitcompile cleanups

sb16_csp

sb16_csp/gitcompile improve automake directory detection

sbiload

improve Makefile error paths, improve automake directory detection for sbiload

alsa-plugins

Core

Add usb_stream PCM plugin
Release v1.0.18rc1
Release v1.0.18rc2
Fix build with recent ffmpeg
Release v1.0.18rc3
Release v1.0.18

/Makefile.am

Add usb_stream PCM plugin

A52 Output plugin

Fix build with recent ffmpeg

PulseAudio -> ALSA plugin

pulse - Returns errors instead of assert()
send both an uncork and a trigger in _start()
Reindent to Linux kernel style
Add Emacs-style /*-*- linux-c -*-*/ header comment
Make pulse_new() a proper C function
Don't modify the SIGPIPE handler
Call pa_context_disconnect() explicitly
use SNDERR instead of fprintf to print error messages
Support S32 sample types
Add trailing NUL character to snprintf output
Get rid of pulse_poll_revents()
Add more error checking
Remove fix for bug 0003470
Rework hardware parameter selection
A bag of minor clean ups for ctl_pulse.c
Make pulse_ext_callback const
Drop our own implementation of the poll() callbacks
A bag of minor clean-ups for pulse.c
Split out O_NONBLOCK setting into seperate function
Save a byte of memory
Adjust buffering metrics to match what PA internally uses
Make sure we always have a sensible channel mapping
Use PA_STREAM_EARLY_REQUESTS if available
Use S32/FLOAT32 only where available in the PA libs
Add const to our snd_pcm_ioplug_callback_t instances
Don't implement our own poll handlers, we can use the default ones
Remove our own poll handler implementation entirely
A bag of clean-ups for pcm_ctl.c
pulse - Start PA event loop after we have created the context
pulse - fix minor memory leak
pulse - Fix destruction order on failure
pulse - Fix destruction logic on failed construction
pulse - Fix capture problem

USB stream plugin

Add usb_stream PCM plugin
Add missing noinst_HEADERS to usb_stream/Makefile.am

libavcodec's resampler

Fix build with recent ffmpeg

Detailed changelog between 1.0.17 and 1.0.18 releases

alsa-driver

Sound Core

- Fix build of hda-beep stuff with older 2.6 kernels
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- build stub for us122l
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add kstrndup() wrapper
Added kstrndup() wrapper for older kernels.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.18rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix include files in configure checks
Don't include from $CONFIG_SND_KERNELDIR directly in configure checks.
The header files can be in different places.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix ARCH detection for ppc and ppc64
arch/ppc is obsoleted on 2.6.27.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add arch/include check to configure
Added an include path to arch/include if exists (for 2.6.27 or later)
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- soc - Add a workaround for incompatible debugfs
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.18rc3
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Mark CONFIG_SND_JACK as 2.6.27 or later
The older kernel has no proper framework for that.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add pci_ioremap_bar() check and wrapper
pci_ioremap_bar() is added on (supposedly) 2.6.28-rc1 and later.
Check it in configure and add a simple wrapper in adriver.h.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add check of video_drvdata()
Added the check of video_drvdata() in configure script, and update
i2c/other/tea575x-tuner.patch.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- x86 mach: test for mach_apic.h to skip empty directories
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix build for old 2.4 kernels
- Fix missing linux/io.h
- Fix missing pci_name()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.18
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: make OSS sound core optional
sound/sound_core.c implements soundcore.ko and contains two parts -
sound_class which is shared by both ALSA and OSS and device
redirection support for OSS. It's always compiled when any sound
support is enabled although it's necessary only when OSS (the actual
one or emulation) is enabled. This is slightly wasteful and as device
redirection always registers character device region for major 14, it
prevents alternative implementation.
This patch introduces a new config SOUND_OSS_CORE which is selected
iff OSS support is actually necessary and build the OSS core part
conditionally.
If OSS is disabled, soundcore merely contains sound_class but leaving
it that way seems to be the simplest approach as otherwise sound_class
should be in ALSA core file if OSS is disabled but should be in
soundcore if OSS is enabled. Also, there's also the user confusion
factor.
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix CONFIG_AC97_BUS dependency
CONFIG_AC97_BUS is used from both sound and ucb1400 drivers.
The recent change in Kconfig introduced the exclusive dependency on
CONFIG_SOUND, and disabled the ucb1400 build without sound.
This patch makes CONFIG_AC97_BUS independent.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Tested-by: Randy Dunlap <randy.dunlap@oracle.com>

ALSA Core

- Add a wrapper for strict_strtoul() for older kernels
It's a pretty lazy imlementation, maybe we need a better one.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix device_create_drvdata() in snd_card_register()
Use the obsoleted device_create() for older kernels.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add missing pr_xxx() for older kernels
pr_err() and co are newly defined.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Regenerate patch for replacement with device_create_drvdata()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add device_create_drvdata() check
From: Eliot Blennerhassett <linux@audioscience.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix build with recent linux-next tree
device_create_drvdata() is removed again, and device_create() is changed
again. sigh.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Revert "Add device_create_drvdata() check"
This reverts commit ad33f3a5598faaf568d935f835e62bcd2007d95b.
Commit 79fe3963cf1193f89880f4969f702e9efd98edc9 obsoletes it.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Kill snd_assert()
Replace snd_assert() with snd_BUG_ON() and co.
Patches are re-generated.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add WARN() and WARN_ON() wrappers for older kernels
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add kstrndup() wrapper
Added kstrndup() wrapper for older kernels.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add dev_printk() and co macros for 2.2/2.4 kernels
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Force to re-define WARN_ON() for older 2.6 kernels
Force to re-define WARN_ON() for older 2.6 kernels.
The old WARN_ON() doesn't return the value, and this breaks some drivers
that check the return value from WARN_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add patches for sparc/*.c
2.6.28 and later use the generic of_*().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- add print_hex_dump_bytes() wrapper
Add an emulation of print_hex_dump_bytes() for older kernels.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- Fix patches for device_create() updates
device_create_drvdata() was removed and merged to the new device_create().
Fixed patches for these changes.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add pci_ioremap_bar() check and wrapper
pci_ioremap_bar() is added on (supposedly) 2.6.28-rc1 and later.
Check it in configure and add a simple wrapper in adriver.h.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add check of video_drvdata()
Added the check of video_drvdata() in configure script, and update
i2c/other/tea575x-tuner.patch.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add fmode_t definition for older kernels
fmode_t is newly introduced in 2.6.28 kernel.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix build for old 2.4 kernels
- Fix missing linux/io.h
- Fix missing pci_name()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
- device create: sound: convert device_create to device_create_drvdata
device_create() is race-prone, so use the race-free
device_create_drvdata() instead as device_create() is going away.
Cc: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
- PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures
On 32-bit architectures PAGE_ALIGN() truncates 64-bit values to the 32-bit
boundary. For example:
u64 val = PAGE_ALIGN(size);
always returns a value < 4GB even if size is greater than 4GB.
The problem resides in PAGE_MASK definition (from include/asm-x86/page.h for
example):
#define PAGE_SHIFT 12
#define PAGE_SIZE (_AC(1,UL) << PAGE_SHIFT)
#define PAGE_MASK (~(PAGE_SIZE-1))
...
#define PAGE_ALIGN(addr) (((addr)+PAGE_SIZE-1)&PAGE_MASK)
The "~" is performed on a 32-bit value, so everything in "and" with
PAGE_MASK greater than 4GB will be truncated to the 32-bit boundary.
Using the ALIGN() macro seems to be the right way, because it uses
typeof(addr) for the mask.
Also move the PAGE_ALIGN() definitions out of include/asm-*/page.h in
include/linux/mm.h.
See also lkml discussion: http://lkml.org/lkml/2008/6/11/237
[akpm@linux-foundation.org: fix drivers/media/video/uvc/uvc_queue.c]
[akpm@linux-foundation.org: fix v850]
[akpm@linux-foundation.org: fix powerpc]
[akpm@linux-foundation.org: fix arm]
[akpm@linux-foundation.org: fix mips]
[akpm@linux-foundation.org: fix drivers/media/video/pvrusb2/pvrusb2-dvb.c]
[akpm@linux-foundation.org: fix drivers/mtd/maps/uclinux.c]
[akpm@linux-foundation.org: fix powerpc]
Signed-off-by: Andrea Righi <righi.andrea@gmail.com>
Cc: <linux-arch@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- ALSA: Add jack reporting API
Currently very few systems provide information about jack status to user
space, even though many have hardware facilities to do detection. Those
systems that do use an input device with the existing SW_HEADPHONE_INSERT
switch type to do so, often independently of ALSA.
This patch introduces a standard method for representing jacks to user
space into ALSA. It allows drivers to register jacks for a sound card with
the input subsystem, binding the input device to the card to help user
space associate the input devices with their sound cards. The created
input devices are named in the form "card longname jack" where jack is
provided by the driver when allocating a jack. By default the parent for
the input device is the sound card but this can be overridden by the
card driver.
The existing user space API with SW_HEADPHONE_INSERT is preserved.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Build jack detection
Since jack detection requires the input subsystem which may not be
desired on small systems it is not built unless required by a driver
that is being built. Drivers using jack detection should use a pattern
like this:
config SND_FOO
tristate "..."
...
select SND_JACK if INPUT=y || INPUT=SND
to ensure that the jack detection API is enabled if the input subsystem
is. If the input subsystem is not enabled then a stub version of the
API is provided.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.
Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices. The same limit was present in OSS emulation code. It has
been fixed as well.
Additionally the device field of struct snd_pcm is now int, instead of
unsigned int, as there is no obvious reason for keeping it unsigned.
This caused a lot of problems with comparing this value with other
(almost always signed) variables. There is just one more place where
device number is unsigned - in struct snd_pcm_info, which should be
also sorted out in future.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: IEC958 definition for consumer status channel update
Updated IEC958 consumer status channel definitions according
to the third edition of IEC60958-3 spec.
Signed-off-by: Pawel Moll <pawel.moll@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
This reverts commit fb3d6f2b77bdec75d45aa9d4464287ed87927866.
New, updated patch with same subject replaces this commit.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Add USB US122L driver
Added a new US122L usb-audio driver. This driver works together with a
dedicated alsa-lib plugin.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.
Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices.
Additionally the device field of struct snd_pcm had to be changed to int,
as its "unsignednity" caused a lot of problems when comparing it to
potentially negative signed values. (-1 is 0xffffffff or even more then ;-)
Signed-off-by: Pawel Moll <pawel.moll@st.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Introduce snd_BUG_ON() macro
Introduced snd_BUG_ON() macro as a replacement of snd_assert() macro.
snd_assert() is pretty ugly as it has the control flow in its argument.
OTOH, snd_BUG_ON() behaves like a normal conditional, thus it's much
easier to read the flow.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Kill snd_assert() in sound/core/*
Kill snd_assert() in sound/core/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Kill snd_assert() definition
Remove snd_assert() completely now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Clean up snd_BUG()
Use the standard WARN() macro for snd_BUG().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Clean up SG-buffer helper functions and macros
Clean up SG-buffer helper functions and macros. Helpers take substream
as arguments now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Allocate larger pages in sgbuf
Most hardwares have limited buffer-descriptor table length. This
also restricts the max buffer size of the sound driver.
For example, snd-hda-intel has 1MB buffer size limit, and this is
because it can have at most 256 BDL entries. For supporting larger
buffers, we need to allocate larger pages even for sg-buffers.
This patch changes the sgbuf allocation code to try to allocate
larger pages first. At each head of the allocated pages, the
number of allocated pages is stored in the lowest bits of the
corresponding entry of the table addr field. This change isn't
visible as long as the driver uses snd_sgbuf_get_addr() helper.
Also, the patch adds a new function, snd_pcm_sgbuf_get_chunk_size().
This returns the size of the chunk on continuous pages starting at
the given position offset. If the chunk reaches to a non-continuous
page, it returns the size to the boundary.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: make OSS sound core optional
sound/sound_core.c implements soundcore.ko and contains two parts -
sound_class which is shared by both ALSA and OSS and device
redirection support for OSS. It's always compiled when any sound
support is enabled although it's necessary only when OSS (the actual
one or emulation) is enabled. This is slightly wasteful and as device
redirection always registers character device region for major 14, it
prevents alternative implementation.
This patch introduces a new config SOUND_OSS_CORE which is selected
iff OSS support is actually necessary and build the OSS core part
conditionally.
If OSS is disabled, soundcore merely contains sound_class but leaving
it that way seems to be the simplest approach as otherwise sound_class
should be in ALSA core file if OSS is disabled but should be in
soundcore if OSS is enabled. Also, there's also the user confusion
factor.
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Remove bitwise from snd_pcm_hw_param_t
We have some arithmetic operations against snd_pcm_hw_param_t, thus
bitwise isn't correct for it. Better to remove the flag to shut up
sparse warnings.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Increase components array size
Increase the card components[] (and thus snd_card_info.components[],
too) array size from 80 to 128 chars so that more strings can be
stored. The 80 chars aren't enough for more than 2 HD-audio codecs,
and this hits an ugly snd_BUG() as reported by Wu Fegguang for HP
2230s.
The control protocol number is increased to 2.0.6 as well, in case
it matters.
Reported-by: Wu Fengguang <wfg@linux.intel.com>
Acked-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Add a note on dependency of RTC stuff
Added a note on the dependency of old RTC stuff, which is exclusive
with the new RTC class drivers.
http://bugme.linux-foundation.org/show_bug.cgi?id=11430
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsa: Remove special SBUS dma support code.
No longer used.
Signed-off-by: David S. Miller <davem@davemloft.net>
- device create: sound: convert device_create_drvdata to device_create
Now that device_create() has been audited, rename things back to the
original call to be sane.
Cc: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
- ALSA: Print function symbol in the error messages
Use the new %pF for error messages in snd_device_*() functions
to give more understandable results.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC PXA2xx Core

- [ARM] 5063/1: pxa: add clk support for pxa2xx I2S
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- [ARM] 5098/1: fix sound/soc/pxa/tosa.c to new gpio api
The sound/soc/pxa/tosa.c contains dependencies on parts that never
ever hit mainline. Replace them with current support for tc6393xb.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: ASoC: Permit simultaneous compilation of both PXA AC97 drivers
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: fix pxa2xx-i2s clk_get call
pxa2xx-i2s: probe actual device and use it for clk_get call
thus fixing error during startup hook
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: ASoC: Support runtime selection of CPU in pxa2xx-i2s
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Separate common pxa2xx-ac97 code
ASoC and non-ASoC drivers for ACLINK on PXA share lot's of common code.
Move all common code into separate module snd-pxa2xx-lib.
[Fixed handing of SND_AC97_CODEC in Kconfig and some checkpatch warnings
-- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Separate common pxa2xx-pcm code
ASoC and non-ASoC drivers for PCM DMA on PXA share lots of common code.
Move it to pxa2xx-lib.
[Fixed some checkpatch warnings -- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- pxa: move I2S register and bit definitions into pxa2xx-i2s.c
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] pxa: simplify DMA register definitions
1. DRCMRxx is no longer recommended, use DRCMR(xx) instead, and
pass DRCMR index by "struct resource" if possible
2. DCSRxx, DDADRxx, DSADRxx, DTADRxx, DCMDxx is never used, use
DCSR(), DDADR(), DSADR(), DTADR(), DCMD() instead
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

Control Midlevel

- Kill snd_assert()
Replace snd_assert() with snd_BUG_ON() and co.
Patches are re-generated.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Kill snd_assert() in sound/core/*
Kill snd_assert() in sound/core/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: use correct lock in snd_ctl_dev_disconnect()
The lock used in snd_ctl_dev_disconnect() should be card->ctl_files_rwlock
for protection of card->ctl_files entries, instead of card->controls_rwsem.
Reported-by: Vegard Nossum <vegard.nossum@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

HWDEP Midlevel

- Kill snd_assert()
Replace snd_assert() with snd_BUG_ON() and co.
Patches are re-generated.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Kill snd_assert() in sound/core/*
Kill snd_assert() in sound/core/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Jack Input Event Midlevel

- Add missing jack.c build stub
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- jack - fix build with older kernels
Add a definition of SW_LINEOUT_INSERT for older kernels.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix jack.c compilation - missing SW_LINEOUT_INSERT
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Add jack reporting API
Currently very few systems provide information about jack status to user
space, even though many have hardware facilities to do detection. Those
systems that do use an input device with the existing SW_HEADPHONE_INSERT
switch type to do so, often independently of ALSA.
This patch introduces a standard method for representing jacks to user
space into ALSA. It allows drivers to register jacks for a sound card with
the input subsystem, binding the input device to the card to help user
space associate the input devices with their sound cards. The created
input devices are named in the form "card longname jack" where jack is
provided by the driver when allocating a jack. By default the parent for
the input device is the sound card but this can be overridden by the
card driver.
The existing user space API with SW_HEADPHONE_INSERT is preserved.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Handle NULL jacks in snd_jack_report()
Facilitate drivers that wish to carry on if they can't create a jack
input device by handling attempts to report the state of a NULL jack,
removing the need to check for initialisation before use.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: jack: lineout support to jack abstraction layer
This patch introduces support for reporting SW_LINEOUT_INSERT detection events
via the jack abstraction layer.
Also adds a SND_JACK_LINEOUT define to the input system header.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Cc: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: dynamic jack id
This patch duplicates the jack->id pointer with kstrdup() to prevent
scoping issues from calling autoprobing functions from the HDA section.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PCM Midlevel

- Regenerated pcm_native.patch
For addition of get_unmapped_area fops.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- snd/PCM: fasync BKL pushdown
Chances are this is unneeded, but the code is twisty enough that it is hard
to tell.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
- ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.
Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices. The same limit was present in OSS emulation code. It has
been fixed as well.
Additionally the device field of struct snd_pcm is now int, instead of
unsigned int, as there is no obvious reason for keeping it unsigned.
This caused a lot of problems with comparing this value with other
(almost always signed) variables. There is just one more place where
device number is unsigned - in struct snd_pcm_info, which should be
also sorted out in future.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
This reverts commit fb3d6f2b77bdec75d45aa9d4464287ed87927866.
New, updated patch with same subject replaces this commit.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.
Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices.
Additionally the device field of struct snd_pcm had to be changed to int,
as its "unsignednity" caused a lot of problems when comparing it to
potentially negative signed values. (-1 is 0xffffffff or even more then ;-)
Signed-off-by: Pawel Moll <pawel.moll@st.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- pcm_native.c: remove unused label
This fixes the warning
sound/core/pcm_native.c: In function 'snd_pcm_fasync':
sound/core/pcm_native.c:3262: warning: label 'out' defined but not used
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- Revert "pcm_native.c: remove unused label"
This reverts commit 680db0136e0778a0d7e025af7572c6a8d82279e2. The label
is actually used, but hidden behind CONFIG_SND_DEBUG and the horrible
snd_assert() macro.
That macro could probably be improved to be along the lines of
#define snd_assert(expr, args...) do { if ((void)(expr),0) { args; } } while (0)
or similar to make sure that we always both evaluate 'expr' and parse
'args', but while gcc should optimize it all away, I'm too lazy to
really verify that. So I'll just admit defeat and will continue to live
with the annoying warning.
Noted-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Linus "Grr.." Torvalds
- ALSA: Clean up SG-buffer helper functions and macros
Clean up SG-buffer helper functions and macros. Helpers take substream
as arguments now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Allocate larger pages in sgbuf
Most hardwares have limited buffer-descriptor table length. This
also restricts the max buffer size of the sound driver.
For example, snd-hda-intel has 1MB buffer size limit, and this is
because it can have at most 256 BDL entries. For supporting larger
buffers, we need to allocate larger pages even for sg-buffers.
This patch changes the sgbuf allocation code to try to allocate
larger pages first. At each head of the allocated pages, the
number of allocated pages is stored in the lowest bits of the
corresponding entry of the table addr field. This change isn't
visible as long as the driver uses snd_sgbuf_get_addr() helper.
Also, the patch adds a new function, snd_pcm_sgbuf_get_chunk_size().
This returns the size of the chunk on continuous pages starting at
the given position offset. If the chunk reaches to a non-continuous
page, it returns the size to the boundary.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: add dummy function to support shared mmap in nommu Blackfin arch
Cc: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: fix locking in snd_pcm_open*() and snd_rawmidi_open*()
The PCM and rawmidi open callbacks have a lock against card->controls_list
but it takes a wrong one, card->controls_rwsem, instead of a right one
card->ctl_files_rwlock. This patch fixes them.
This change also fixes automatically the potential deadlocks due to
mm->mmap_sem in munmap and copy_from/to_user, reported by Sitsofe
Wheeler:
A: snd_ctl_elem_user_tlv(): card->controls_rwsem => mm->mmap_sem
B: snd_pcm_open(): card->open_mutex => card->controls_rwsem
C: munmap: mm->mmap_sem => snd_pcm_release(): card->open_mutex
The patch breaks the chain.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: remove unneeded power_mutex lock in snd_pcm_drop
The power_mutex lock in snd_pcm_drop may cause a possible deadlock
chain, and above all, it's unneeded. Let's get rid of it.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: kernel docs: fix sound/core/ kernel-doc
Add kernel-doc function short descriptions to sound/core functions that
are missing this short description. Mostly this involves moving some of
the function description onto the @funcname line.
Also correct a few variable names and fix other kernel-doc notation.
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: add missing pcm kernel-doc
Fix alsa kernel-doc warning in linux-next:
Warning(linux-next-20081016//sound/core/pcm_misc.c:327): No description found for parameter 'samples'
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

RawMidi Midlevel

- ALSA: fix locking in snd_pcm_open*() and snd_rawmidi_open*()
The PCM and rawmidi open callbacks have a lock against card->controls_list
but it takes a wrong one, card->controls_rwsem, instead of a right one
card->ctl_files_rwlock. This patch fixes them.
This change also fixes automatically the potential deadlocks due to
mm->mmap_sem in munmap and copy_from/to_user, reported by Sitsofe
Wheeler:
A: snd_ctl_elem_user_tlv(): card->controls_rwsem => mm->mmap_sem
B: snd_pcm_open(): card->open_mutex => card->controls_rwsem
C: munmap: mm->mmap_sem => snd_pcm_release(): card->open_mutex
The patch breaks the chain.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Timer Midlevel

- ALSA: fix a typo during snd_assert() removal
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/arm/Makefile

- ALSA: Separate common pxa2xx-ac97 code
ASoC and non-ASoC drivers for ACLINK on PXA share lot's of common code.
Move all common code into separate module snd-pxa2xx-lib.
[Fixed handing of SND_AC97_CODEC in Kconfig and some checkpatch warnings
-- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Separate common pxa2xx-pcm code
ASoC and non-ASoC drivers for PCM DMA on PXA share lots of common code.
Move it to pxa2xx-lib.
[Fixed some checkpatch warnings -- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/isa/Makefile

- ALSA: wss_lib: move cs4231_lib into wss_lib
Move the file sound/isa/cs423x/cs4231_lib.c
into sound/isa/cs423x/wss_lib.c
This is the first step toward merging all libraries
for Windows Sound System compatible chips
into a single library.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/soc/Makefile

- sound: ASoC: Blackfin: Include Blackfin architecture support in build
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/soc/codecs/Makefile

- ALSA: ASoC: Add Texas Instruments TLV320AIC26 codec driver
ASoC Codec driver for the TLV320AIC26 device. As it stands, this driver
doesn't support all the modes and clocking options of the AIC16, but it
is a start.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: AD1980 audio codec driver
[Mechanical updates from code review applied -- broonie]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add WM8900 CODEC driver
The WM8900 is designed for portable multimedia applications requiring
low power consumption, high performance audio and a compact form factor
providing:
- 24 bit stereo ADC and DAC
- Microphone and line inputs
- Line outputs
- Class G headphone amplifier
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add WM8580 CODEC driver
The WM8580 is an audio CODEC designed for DVD and surround sound
applications, offering three stereo DACs and a stereo ADC.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add WM8903 CODEC driver
The WM8903 is a high performance ultra-low power stereo CODEC optimised
for portable audio applications. Features include:
* 5mW power consumption for DAC to headphone playback
* Stereo DAC SNR 96dB typical, THD -86dB typical
* Stereo ADC SNR 93dB typical, THD -80dB typical
* Up to 3 single ended inputs per stereo channel
* Up to 2 pseudo differential inputs per stereo channel
* Up to 1 fully differential mic input per stereo channel
* Digital Dynamic Range Controller (compressor/limiter)
* Digital sidetone mixing
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC codec: SSM2602 audio codec driver
[Some checkpatch fixups done by Mark Brown.]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Sort Kconfig and Makefile entries for codecs
Hopefully this will make merges a little bit easier.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Add WM8971 CODEC driver
The WM8971 is a low power, high quality stereo codec designed for
portable digital audio applications.
This driver was originally written by Kenneth Kiraly. While out of tree
it has had updates to reflect current kernel APIs and coding standards
from Graeme Gregory and Mark Brown.
Signed-off-by: Kenneth Kiraly <kiraly@lab126.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC codec: AD73311 audio codec driver
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add TLV320AIC23 codec driver
ASoC codec driver for TLV320AIC23 device
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

/sparc/Makefile

- Add patches for sparc/*.c
2.6.28 and later use the generic of_*().
Signed-off-by: Takashi Iwai <tiwai@suse.de>

AC97 Codec

- ALSA: add TriTech 28023 AC97 codec ID and Wolfson 9701 name.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: re-order AC97 codec ID table.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: make snd_ac97_add_vmaster() static
This patch makes the needlessly global snd_ac97_add_vmaster() static.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ac97 - Enable mono-out on ALC203 codec as default
Use pin 37 for mono-out as default on ALC203.
Reported-by: george pee <georgepee@gmail.com>
Tested-by: george pee <georgepee@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Kill snd_assert() in sound/pci/*
Kill snd_assert() in sound/pci/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ac97 - vt1618 7.1 Audio Support
1. Implement 7.1 Output for vt1618 codec.
2. Fix typos in comments from my previous 1617a patch.
Signed-off-by: John L. Utz III <john.utz@dmx.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ac97_patch make functions static
Only used in ac97_codec by including ac97_patch.c directly, effectively static
Found by sparse:
sound/pci/ac97/ac97_patch.c:3551:5: warning: symbol 'patch_vt1617a' was not declared. Should it be static?
sound/pci/ac97/ac97_patch.c:3767:5: warning: symbol 'patch_vt1618' was not declared. Should it be static?
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: update email address for Liam Girdwood
Update the contact information for Liam Girdwood in ASoC core and
drivers as my old email address is no longer valid.
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Enable SPDIF output on ALC655
Some hardwares with ALC655 codec don't indicate the proper ext id bit
for SPDIF output although it supports. Force to enable the bit.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AD1816A driver

- ALSA: Kill snd_assert() in sound/isa/*
Kill snd_assert() in sound/isa/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: snd-ad1816a: add different TerraTec EWS64 S model
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AD1848 driver

- ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
The snd_wss is superset of the snd_ad1848 so kill
the latter and replace it with the snd_wss.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss constants instead of ad1848 ones
Use wss constants for mode.
Move ad1848 hardware constants to the wss.h.
Move mixer tlv macros into the ad1848_lib.c from the ad1848.h.
Drop the MODE_RUNNING spurious IRQ guard on AD1848 as it doesn not seem
to be needed.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: replace ad1848 mixer element macros with wss ones
Use the wss macros instead of ad1848 ones.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use CS4231P instead of AD1848P (kill the AD1848P)
Use CS4231P instead of AD1848P (kill the AD1848P).
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss mixer code instead of ad1848 one
Use the wss mixer code and kill the ad1848 mixer code.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss pcm code instead of ad1848 one
Use the wss pcm code and kill the ad1848 pcm code.
The AD1848 chip is much slower than CS4231 chips
so the waiting loop was increased 100x (10x is not
enough).
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss detection code instead of ad1848 one
Use the wss detection code and kill the ad1848 library.
The library is fully assimilated into the new wss library.
This required reworking of the AD1848 family code
so the code is changed to correctly detect chips from
the AD1848 and CS4231 families.
I have tested it on following cards:
Gallant SC-6600 (codec: AD1848, driver: snd-sc6600)
SoundScape VIVO/90 (codec: AD1845, driver: snd-sscape)
SG Waverider (codec: CS4231A, driver: Rene Herman's snd-galaxy)
Opti930 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Opti931 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Gallant SC-70P (chip/codec: CS4237B, driver: snd-cs4236)
Audio Plus 3D (chip/codec: CMI8330A, driver: snd-cmi8330)
Dell Latitude CP (chip/codec: cs4236, driver snd-cs4232)
Sound playback and recording works on all these cards.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: remove stale files
Empty files remained likely due to wrong patching.
Remove them now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AD1889 driver

- ALSA: Kill snd_assert() in sound/pci/*
Kill snd_assert() in sound/pci/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: pci: use pci_ioremap_bar() in sound/
Use the newly introduced pci_ioremap_bar() function in sound/.
pci_ioremap_bar() just takes a pci device and a bar number, with the goal
of making it really hard to get wrong, while also having a central place
to stick sanity checks.
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AK4531 codec

- ALSA: Kill snd_assert() in sound/pci/*
Kill snd_assert() in sound/pci/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AK4XXX AD/DA converters

- ALSA: revo51: add headphone output
It is ALSA bug #1754.
D6 bit in 02 register is PW4.
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALS4000 driver

- ALSA: als4000 - Code clean up
- use specs-derived register name enums instead of open-coded numeric
values, for better understanding of things
- fix naming confusion ("gcr" was _NOT_ the GCR register stuff, but
instead the io _base_ which has multiplexed _access_ to GCR config
space, at _sub_ registers 0x08 and 0x0c)
- add FIXME comments about a race condition and MPU401 features
Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ALS4000 driver work, step 2
- more register naming work
- finally figured out that weird CR register stuff
(and did I mention that I hate _really_ undecipherable open-coded values?)
- fix handling of IRQ sharing in interrupt handler
(hopefully properly, otherwise I'd be grateful to hear your
pedantic comments ;)
- add handy SPECS_PAGE references wherever useful
- comments, cleanup
- add me as module author
Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALSA Minor Numbers

- ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.
Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices. The same limit was present in OSS emulation code. It has
been fixed as well.
Additionally the device field of struct snd_pcm is now int, instead of
unsigned int, as there is no obvious reason for keeping it unsigned.
This caused a lot of problems with comparing this value with other
(almost always signed) variables. There is just one more place where
device number is unsigned - in struct snd_pcm_info, which should be
also sorted out in future.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
This reverts commit fb3d6f2b77bdec75d45aa9d4464287ed87927866.
New, updated patch with same subject replaces this commit.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.
Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices.
Additionally the device field of struct snd_pcm had to be changed to int,
as its "unsignednity" caused a lot of problems when comparing it to
potentially negative signed values. (-1 is 0xffffffff or even more then ;-)
Signed-off-by: Pawel Moll <pawel.moll@st.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALSA Version

- ALSA: release v1.0.18rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Release v1.0.18rc3
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Release v1.0.18
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALSA<-OSS emulation

- ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE
When compiled with CONFIG_SND_DYNAMIC_MINORS the ALSA core is fine
to have more than 8 PCM devices per card, except one place - the
SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE ioctl, which will not enumerate
devices > 7. This patch fixes the issue, changing the devices list
organisation.
Instead of adding new device to the tail, the list is now kept always
ordered (by card number, then device number). Thus, during enumeration,
it is easy to discover the fact that there is no more given card's
devices. The same limit was present in OSS emulation code. It has
been fixed as well.
Additionally the device field of struct snd_pcm is now int, instead of
unsigned int, as there is no obvious reason for keeping it unsigned.
This caused a lot of problems with comparing this value with other
(almost always signed) variables. There is just one more place where
device number is unsigned - in struct snd_pcm_info, which should be
also sorted out in future.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: Revert "ALSA: Fix limit of 8 PCM devices in SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE"
This reverts commit fb3d6f2b77bdec75d45aa9d4464287ed87927866.
New, updated patch with same subject replaces this commit.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- [PATCH] introduce fmode_t, do annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

ALSA<-OSS sequencer

- sound: ensure device number is valid in snd_seq_oss_synth_make_info
snd_seq_oss_synth_make_info() incorrectly reports information
to userspace without first checking for the validity of the
device number, leading to possible information leak (CVE-2008-3272).
Reported-By: Tobias Klein <tk@trapkit.de>
Acked-and-tested-by: Takashi Iwai <tiwai@suse.de>
Cc: stable@kernel.org
Signed-off-by: Willy Tarreau <w@1wt.eu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

ARM

- ALSA: Separate common pxa2xx-ac97 code
ASoC and non-ASoC drivers for ACLINK on PXA share lot's of common code.
Move all common code into separate module snd-pxa2xx-lib.
[Fixed handing of SND_AC97_CODEC in Kconfig and some checkpatch warnings
-- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Separate common pxa2xx-pcm code
ASoC and non-ASoC drivers for PCM DMA on PXA share lots of common code.
Move it to pxa2xx-lib.
[Fixed some checkpatch warnings -- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ARM AACI PL041 driver

- ALSA: aaci - Fix NULL test at error path
The original fix by Julien Brunel <brunel@diku.dk>.
aaci_init_card() returns a pointer with ERR_PTR(), but in aaci_init()
NULL is supposed at this error path.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ARM PXA2XX driver

- [ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead
Remove includes of asm/hardware.h in addition to asm/arch/hardware.h.
Then, since asm/hardware.h only exists to include asm/arch/hardware.h,
update everything to directly include asm/arch/hardware.h and remove
asm/hardware.h.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
This just leaves include/asm-arm/plat-* to deal with.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: Separate common pxa2xx-ac97 code
ASoC and non-ASoC drivers for ACLINK on PXA share lot's of common code.
Move all common code into separate module snd-pxa2xx-lib.
[Fixed handing of SND_AC97_CODEC in Kconfig and some checkpatch warnings
-- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: pxa2xx-ac97-lib: support building for several CPUs
Support building of pxa2xx-ac97-lib for several CPUs by making code
run-time selected, not only compile-time.
[Fixed 3XX->3xx typos in ifdef checks -- broonie.]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Separate common pxa2xx-pcm code
ASoC and non-ASoC drivers for PCM DMA on PXA share lots of common code.
Move it to pxa2xx-lib.
[Fixed some checkpatch warnings -- broonie]
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- [ARM] pxa: simplify DMA register definitions
1. DRCMRxx is no longer recommended, use DRCMR(xx) instead, and
pass DRCMR index by "struct resource" if possible
2. DCSRxx, DDADRxx, DSADRxx, DTADRxx, DCMDxx is never used, use
DCSR(), DDADR(), DSADR(), DTADR(), DCMD() instead
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: Fix pxa2xx-ac97-lib.c compilation
The last ALSA merge broke pxa2xx-ac97-lib.c, as it brought back
references to cpu_is_pxa21x that Eric Miao removed in commit
0ffcbfd54ea81ca24c0749f55ca4fcf3e2bdc23e:
[ARM] pxa: make cpu_is_pxa2* macros more consistent
This patch gets rid of those references, and only keeps cpu_is_pxa25x().
Signed-off-by: Marc Zyngier <maz@misterjones.org>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Ensure PXA runtime data is initialised
The rest of the code relies on the runtime data being zero initialised
so we need to use kzalloc() to allocate it.
Reported-by: Oliver Ford <ipaqlinux@oliford.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ATIIXP driver

- ALSA: Kill snd_assert() in sound/pci/*
Kill snd_assert() in sound/pci/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: atiixp - Add PCI ID for SB600 (1002:4382)
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: pci: use pci_ioremap_bar() in sound/
Use the newly introduced pci_ioremap_bar() function in sound/.
pci_ioremap_bar() just takes a pci device and a bar number, with the goal
of making it really hard to get wrong, while also having a central place
to stick sanity checks.
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ATIIXP-modem driver

- ALSA: Kill snd_assert() in sound/pci/*
Kill snd_assert() in sound/pci/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: pci: use pci_ioremap_bar() in sound/
Use the newly introduced pci_ioremap_bar() function in sound/.
pci_ioremap_bar() just takes a pci device and a bar number, with the goal
of making it really hard to get wrong, while also having a central place
to stick sanity checks.
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AZT2320 driver

- ALSA: wss_lib: rename cs4231.h into wss.h
Rename file include/sound/cs4231.h
into include/sound/wss.h
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: rename cs4321_foo to wss_foo
Rename functions and structures from the former
cs4321_lib to names more corresponding with the
new name: wss_lib.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AZT3328 driver

- ALSA: sound/pci/azt3328.h: no variables for enums
AZF_FREQUENCIES and AZF_GAME_CONFIGS were variables, and this doesn't
seem to have been intended.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Acked-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Apple Onboard Audio driver

- aoa - Rename aoa/codec/*.c files
Following the renames in the kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- aoa - Rename more files
Forgot to commit remaining files to rename.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: aoa - Remove duplicate assignment of SNDRV_PCM_FMTBIT_S{16,24}_BE bits
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- powerpc/drivers: Use linux/of_device.h instead of asm/of_device.h
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Acked-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
- ALSA: aoa i2sbus: don't overwrite module parameter
We shouldn't modify a global variable here.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: aoa: clean up file names
This cleans up the apple onboard audio driver filenames.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Asihpi driver

- split public and private defs
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- add control-specific query functions
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- use new query functions
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- add extra checks to control cache
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Update to hpi_internal.h. Minor cleanups
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- No longer used
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Rewrite PAD control string caching
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Simplify DSP crashed flag
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add ASI1723, log buffer properties. Tweak function params for SWIG.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Remove duplicate func prototypes (also in hpimsginit.h)
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- add missing comma in list
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- add buffer size member to adapter struct
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- HPI Stream buffers allocated according to application request
HPI Stream buffers allocated according to application request. E.g. if HPI ioctl is only used for control, no buffers are needed. Buffers can be preallocated but default size is 0
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- style fixes
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- need hpimsginit.h
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Better error handling in tuner query. Need hpimsginit.h
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- checkpatch fixes
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Fix compile warnings regarding printf and size_t
 %z prefix is necessary for arguments with size_t.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix format in portable way.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Include adapter buffer alloc inside adapter mutex
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add support for ASI50xx SSX (multichannel) mode.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Mem buffer alloc inside adapter mutex.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Avoid null pointer dereference
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Return from timer func if XRUN
Return from timer func if XRUN.
Avoids read/write of reset stream.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Turn off verbose logging
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Fix printk compile warning
runtime->dma_addr can be a 64bit type depending on kconfig.
Cast to unsigned long (as it's 32bit value).
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Au12x0/Au1550 PSC ASoC

- ALSA: Au1xpsc: psc not disabled when TX is idle
TX idleness isn't tested, but RX twice. PSC is not disabled when TX is idle
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Acked-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

BT87x driver

- ALSA: Clean up SG-buffer helper functions and macros
Clean up SG-buffer helper functions and macros. Helpers take substream
as arguments now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CA0106 driver

- ALSA: CA0106 on MSI K8N Diamond PLUS Motherboard
Correct a previous patch for the ca0106 onboard the MSI K8N Diamond PLUS
motherboard. Confirmed to have Line/Mic/Aux working for input, and sound
output working as expected.
Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: misc typo fixes
Fixed typos in disabled codes via #if 0.
Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

CMI8330 driver

- ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
The snd_wss is superset of the snd_ad1848 so kill
the latter and replace it with the snd_wss.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss constants instead of ad1848 ones
Use wss constants for mode.
Move ad1848 hardware constants to the wss.h.
Move mixer tlv macros into the ad1848_lib.c from the ad1848.h.
Drop the MODE_RUNNING spurious IRQ guard on AD1848 as it doesn not seem
to be needed.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: replace ad1848 mixer element macros with wss ones
Use the wss macros instead of ad1848 ones.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss pcm code instead of ad1848 one
Use the wss pcm code and kill the ad1848 pcm code.
The AD1848 chip is much slower than CS4231 chips
so the waiting loop was increased 100x (10x is not
enough).
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss detection code instead of ad1848 one
Use the wss detection code and kill the ad1848 library.
The library is fully assimilated into the new wss library.
This required reworking of the AD1848 family code
so the code is changed to correctly detect chips from
the AD1848 and CS4231 families.
I have tested it on following cards:
Gallant SC-6600 (codec: AD1848, driver: snd-sc6600)
SoundScape VIVO/90 (codec: AD1845, driver: snd-sscape)
SG Waverider (codec: CS4231A, driver: Rene Herman's snd-galaxy)
Opti930 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Opti931 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Gallant SC-70P (chip/codec: CS4237B, driver: snd-cs4236)
Audio Plus 3D (chip/codec: CMI8330A, driver: snd-cmi8330)
Dell Latitude CP (chip/codec: cs4236, driver snd-cs4232)
Sound playback and recording works on all these cards.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CMI8788 (Oxygen) driver

- ALSA: virtuoso: add Xonar D1 support
Add support for the Asus Xonar D1. It is the same as the DX, but
without the external power detection.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: prevent muting of nonexistent AC97 controls
The Xonar DX does not have CD Capture controls, so we have to check that
a control actually exists before muting it.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Cc: <stable@kernel.org>
- ALSA: oxygen: fix distorted output on AK4396-based cards
When changing the sample rate, the CMI8788's master clock output becomes
unstable for a short time. The AK4396 needs the master clock to do SPI
writes, so writing to an AK4396 control register directly after a sample
rate change will garble the value. In our case, this leads to the DACs
being misconfigured to I2S sample format, which results in a wrong
output level and horrible distortions on samples louder than -6 dB.
To fix this, we need to wait until the new master clock signal has
become stable before doing SPI writes.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
CC: <stable@kernel.org>
- ALSA: oxygen: use SPDIF channel status symbols
When setting the SPDIF channel status sample rate field, use the
recently defined symbols instead of magic numbers.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: use a copy of the model struct
Put a copy of the model structure into the chip structure so that model-
specific drivers can modify it depending on a particular device
instance.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: add probe callback
Add a probe callback to the model structure so that model-specific
drivers can refine their model detection before the card is initialized.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: remove X-Meridian magic number
Introduce symbols that indicate the two models handled by the snd-oxygen
driver, instead of using a magic number.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: handle X-Meridian dynamically
Handle the differences between the X-Meridian and the other models in
the probe callback instead of using a second model structure.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: virtuoso: handle D2X/DX dynamically
The Xonar D2X and DX are very similar to the D2 and D1, respectively, so
we can handle the differences dynamically instead of using a separate
model structure for each one.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: virtuoso: create common functions for GPIO bit switch controls
Factor out the common code of the mixer callbacks that handle controls
that just switch a single GPIO bit.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: rename pcm_dev_cfg
Rename the pcm_dev_cfg field to device_config because there will be
additional flags that do not describe PCM devices.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: configure MIDI via device_config
To enable the MIDI port, model drivers must now set flags in
device_config, not only in misc_flags. This allows model drivers to
enable the UART without creating an ALSA MIDI device.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: add UART I/O functions
Add functions to allow model drivers to communicate with external chips
by doing I/O with the not-used-for-MIDI UART.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: add self-documenting functions
Introduce some trivial functions to better document the relationships of
the various model callbacks.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: virtuoso: allow I2C-connected PCM1796
Add support for PCM1796 chips that are connected with an I2C bus instead
of SPI.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: virtuoso: make number of PCM1796 DACs configurable
Do not use a hardcoded number when iterating over the PCM1796 DACs to
allow for cards with a different number of analog output channels.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: virtuoso: rename AC97 callback function
Rename the callback function that switches between line and mic inputs
on the Xonar D1 because it is also usable on other models.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: rename first PCM device
Rename the first PCM device from "Analog" to "Multichannel" because it
can be used for HDMI output on the Xonar HDAV.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: virtuoso: add Xonar HDAV1.3 support
Add support for the Asus Xonar HDAV1.3 and the Xonar HDAV1.3 Deluxe.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: oxygen: wait for ACK when resetting UART
After sending a reset command to the UART, wait some time for the ACK to
be generated (and to be read and dropped by the interrupt handler)
before sending the next command.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>

CS4231 driver

- Add build stub for new wss_lib
Also remove obsolete files.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: wss_lib: move cs4231_lib into wss_lib
Move the file sound/isa/cs423x/cs4231_lib.c
into sound/isa/cs423x/wss_lib.c
This is the first step toward merging all libraries
for Windows Sound System compatible chips
into a single library.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: rename cs4231.h into wss.h
Rename file include/sound/cs4231.h
into include/sound/wss.h
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: rename cs4321_foo to wss_foo
Rename functions and structures from the former
cs4321_lib to names more corresponding with the
new name: wss_lib.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CS4236+ driver

- ALSA: cs4232: fix crash during chip PNP detection
The acard->wss pointer is uninitialized in this function
which leads to crash during chip PNP detection.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Acked-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: wss_lib: rename cs4321_foo to wss_foo
Rename functions and structures from the former
cs4321_lib to names more corresponding with the
new name: wss_lib.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: snd-cs4236: add Techmakers MF-4236PW PnP card ID
Add the Techmakers MF-4236PW (Crystal CX4236B-XQ3) PnP card ID.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Kill snd_assert() in sound/isa/*
Kill snd_assert() in sound/isa/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CS423x drivers

- Add build stub for new wss_lib
Also remove obsolete files.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: wss_lib: move cs4231_lib into wss_lib
Move the file sound/isa/cs423x/cs4231_lib.c
into sound/isa/cs423x/wss_lib.c
This is the first step toward merging all libraries
for Windows Sound System compatible chips
into a single library.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CS46xx driver

- ALSA: cs46xx: Add PCI IDs for TerraTec and Hercules cards
This patch adds PCI IDs for:
* TerraTec DMX XFire 1024
* Hercules Gamesurround Fortissimo II
* Hercules Gamesurround Fortissimo III 7.1
All those cards were supported as generic CS46xx device,
so they will work as before. I'm pretty sure that first two
cards work, as they have same hardware design as reference
card. Not sure about Fortissimo III, but this won't break it
if it worked.
Tested on TerraTec DMX XFire 1024.
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CS5530 Cyrix/NatSemi VSA1 softaudio init

- sound: use a common working email address
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Conexant Riptide driver

- riptide: treat firmware data as const
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

Digigram PCXHR driver

- pcxhr: treat firmware data as const
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
- Fix a const pointer usage warning in the Digigram pcxhr soundcard driver
Fix a const pointer usage warning in the Digigram pcxhr compatible soundcard
driver. A const pointer is being passed to copy_from_user() to load the
firmware into. This is okay in this case because the function has allocated
the firmware struct itself, but the const qualifier is part of the firmware
struct - so the patch casts the const away.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Digigram VX core

- vx: treat firmware data as const
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
- ALSA: Kill snd_assert() in other places
Kill snd_assert() in other places, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Digigram VX222 driver

- vx222: treat firmware data as const
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

Documentation

- ALSA: virtuoso: add Xonar D1 support
Add support for the Asus Xonar D1. It is the same as the DX, but
without the external power detection.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- remove mention of CONFIG_KMOD from documentation
Also includes a few Kconfig files (xtensa, blackfin)
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Cc: linux-doc@vger.kernel.org
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Acked-by: Randy Dunlap <rdunlap@xenotime.net>
- Documentation cleanup: trivial misspelling, punctuation, and grammar corrections.
Cc: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- ALSA: Allow to force model to intel-mac-v3 in snd_hda_intel (sigmatel).
Currently, even if you pass model=intel-mac-v3 as a module parameter to
snd_hda_intel, the function patch_stac922x (patch_sigmatel.c) will still
try to auto-detect the model type. This is a problem on my MacBook Pro 1st
generation, which needs intel-mac-v3, but sometimes incorrectly reports
0x00000100 as subsystem id, which causes the switch in patch_stac922x to
select intel-mac-v4.
To fix this, I added a new model called intel-mac-auto, so in case no
module parameter is passed, and an Intel Mac board is detected, the
model will be automatically detected, while no detection will be done
if the model is forced to intel-mac-v3.
This problem has been around for quite a while, and I used to fix it
by moving the case statement for 0x00000100 in patch_stac922x so that
intel-mac-v3 is chosen.
Another way to fix the problem would be to check if a module parameter
was set directly in patch_stac922x, using something like this:
if (spec->board_config == STAC_INTEL_MAC_V3 &&
!codec->bus->modelname) {
But I think it is less elegant (if you prefer that way, I can prepare a
patch).
Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Introduce snd_BUG_ON() macro
Introduced snd_BUG_ON() macro as a replacement of snd_assert() macro.
snd_assert() is pretty ugly as it has the control flow in its argument.
OTOH, snd_BUG_ON() behaves like a normal conditional, thus it's much
easier to read the flow.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Kill snd_assert() definition
Remove snd_assert() completely now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ALSA-Configuration.txt: supported cards update
ALSA-Configuration.txt: supported cards update
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Add missing description of usb-audio parameters
Added the missing description of module parameters of usb-audio driver
to ALSA-Configuration.txt.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: usb-audio - Add ignore_ctl_error parameter
Added the ignore_ctl_error parameter to enable/disable the control-error
handling for mixer interfaces. It was a hard-coded ifdef, and now you
can change it more easily.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add AD1882A codec support
Added the basic support of AD1882A codec chip.
It's almost compatible with AD1882, but with a digital mic and some
differences in connections.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add descriptions of missing model values
Added the descriptions of missing model values.
Also, fixed the model strings of a few new models to a standard style.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support of Toshiba RX1
Added the support of Toshiba RX1 laptop with ALC262 codec chip.
Related ALSA bug#3386:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3386
Signed-off-by: Hiroshi Miura <miurahr@acm.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Documentation/sound/alsa/ALSA-Configuration.txt: fix typo
As noted by Gu Rui in http://bugzilla.kernel.org/show_bug.cgi?id=11444,
there is a typo in Documentation/sound/alsa/ALSA-Configuration.txt.
After checking the source (sound/pci/hda/hda_intel.c), the report
looks correct to me.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: virtuoso: add Xonar HDAV1.3 support
Add support for the Asus Xonar HDAV1.3 and the Xonar HDAV1.3 Deluxe.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- alsa: Remove special SBUS dma support code.
No longer used.
Signed-off-by: David S. Miller <davem@davemloft.net>
- Documentation: fix the now deprecated reference to {set,reset}_scoop_gpio
Due to recent patches removing the now deprecated references to
{set,reset}_scoop_gpio() and converting them to the generic GPIO
API, the references in the documentation also need to be fixed.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Liam Girdwood <lrg@kernel.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

Dreamcast AICA sound (pcm) driver

- sh: migrate to arch/sh/include/
This follows the sparc changes a439fe51a1f8eb087c22dd24d69cebae4a3addac.
Most of the moving about was done with Sam's directions at:
http://marc.info/?l=linux-sh&m=121724823706062&w=2
with subsequent hacking and fixups entirely my fault.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
- ALSA: Fix section for snd-aica platform driver
Don't use __init but __devinit to define probe function. A pointer to
snd_aica_probe is passed to the core via platform_driver_register and so the
function must not disappear after the module is loaded. Using __init
and having HOTPLUG=y and SND_AICA=m the following probably oopses:
echo -n AICA > /sys/bus/platform/driver/AICA/unbind
echo -n AICA > /sys/bus/platform/driver/AICA/bind
Strange enough add_aicamixer_controls which is only called by
snd_aica_probe was already using __devinit.
While at it move the remove function to .devexit.text section.
Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Cc: Adrian McMenamin <adrian@mcmen.demon.co.uk>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

EMU10K1/EMU10K2 driver

- Regenerate emu10k1_main.patch
Regenerated emu10k1_main.patch for the recent clean up of the id table.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix emu10k1_main.patch
The coding-style fixes broke the patch. Fixed now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: emu10k1: fix device names for Live!/Audigy1/2/4/E-mu
* added missing SBxxxx, CTxxxx, PCxxx and MAEMxxxx where they were missing,
and fixed some of them which were wrong (according to kx.inf, which is pretty
accurate compared to anything out there)
* fixed device names to make them more consistent across various cards
* fixed order of devices where appropriate
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: emu10k1: fix faulty commit 18c71092
Commit 18c7109289625106cdc810b20b628cd13b46d6dd had #endif leftoff from
compilation. This patch fixes it.
Also, I replaced a misplaced comment by a useful one, that explains why are
here #ifdef and #endif added in compilation.
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: emu10k1: fix coding style for emu10k1_main.c
I fixed all of coding style errors and some warnings, now it is down to:
checkpatch.pl-0.24 --no-tree --file --strict --terse emu10k1_main.c
total: 0 errors, 62 warnings, 7 checks, 2075 lines checked
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ENS1370/1+ driver

- ALSA: ens1370: SRC stands for Sample Rate Converter
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ALSA: ens1370: communicate PCI device to AC97
communicate the ES137x PCI device to the AC97 code for its
subsys_vendor/device values
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ES1688 driver

- ALSA: Kill snd_assert() in sound/isa/*
Kill snd_assert() in sound/isa/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

GUS Library

- ALSA: Kill snd_assert() in sound/isa/*
Kill snd_assert() in sound/isa/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

GUS MAX driver

- ALSA: wss_lib: rename cs4321_foo to wss_foo
Rename functions and structures from the former
cs4321_lib to names more corresponding with the
new name: wss_lib.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Generic drivers

- pcsp - Add a wrapper for hrtimer_get_expires()
It's introduced newly in 2.6.28.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Kill snd_assert() in other places
Kill snd_assert() in other places, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: Fix esoteric double free in the dummy sound driver.
The dummy driver uses runtime->private_free but still frees
its pcm structures on error paths.
This is esoteric because the error paths in question are
unreachable. Thus the bug is only a problem when someone
copies this code into other drivers.
Signed-off-by: Daniel R Thompson <daniel.thompson@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: dummy driver - do not use assignment in if condition
checkpatch.pl does not like assignment in if condition
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: mtpav - Fix race in probe
Ingo reported Oops at probing mtpav driver. It's a race between
the irq handler and the rawmidi instance registration.
This patch fixes the order of registration to avoid the race.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Tested-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: misc typo fixes
Fixed typos in disabled codes via #if 0.
Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: pcsp - Fix locking messes in snd-pcsp
snd-pcsp driver takes chip->substream_lock together with PCM substream
lock. These are even mixed up with hrtimer's lock, resulting in messy
lock depencies. Right now, snd-pcsp driver resolves the deadlock by
using HRTIMER_CB_SOFTIRQ. However, this isn't nice for a really fast
path like bit-flipping.
This patch introduces a tasklet for PCM period handling so that the
hrtimer callback can be handled fast. This also reduce the use of
chip->substream_lock to avoid deadlocks. It's still used in pointer
callback, but even this could be removed with a proper barrier.
Another good solution is to introduce async trigger callback. But,
this will involve with a major rewrite of the PCM core code, so I
take first this easy fix.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- hrtimer: convert sound/ to the new hrtimer apis
In order to be able to do range hrtimers we need to use accessor functions
to the "expire" member of the hrtimer struct.
This patch converts sound/ to these accessors.
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>

HDA Codec driver

- Add pci/hda/patch_nvhdmi.c build stub
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Added support for Asus V1Sn
Added the necessary ID for Asus V1Sn to patch_realtek.c
to use ALC861VD_LENOVO on these laptops.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support of ASUS Eeepc P90*
- Support ASUS_P900A = P703
- Support ASUS_P901
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: digital pc-beep support hd-audio codecs
Added digital pc-beep support using linear tone generation for hd-codecs along
with initial support for several IDT codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA - Add automatic model setting for the Acer Aspire 5920G laptop
Make the Acer Aspire 5920G (1025:0121) select ALC883_ACER_ASPIRE by default.
Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Allow to force model to intel-mac-v3 in snd_hda_intel (sigmatel).
Currently, even if you pass model=intel-mac-v3 as a module parameter to
snd_hda_intel, the function patch_stac922x (patch_sigmatel.c) will still
try to auto-detect the model type. This is a problem on my MacBook Pro 1st
generation, which needs intel-mac-v3, but sometimes incorrectly reports
0x00000100 as subsystem id, which causes the switch in patch_stac922x to
select intel-mac-v4.
To fix this, I added a new model called intel-mac-auto, so in case no
module parameter is passed, and an Intel Mac board is detected, the
model will be automatically detected, while no detection will be done
if the model is forced to intel-mac-v3.
This problem has been around for quite a while, and I used to fix it
by moving the case statement for 0x00000100 in patch_stac922x so that
intel-mac-v3 is chosen.
Another way to fix the problem would be to check if a module parameter
was set directly in patch_stac922x, using something like this:
if (spec->board_config == STAC_INTEL_MAC_V3 &&
!codec->bus->modelname) {
But I think it is less elegant (if you prefer that way, I can prepare a
patch).
Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda: added 92HD81/83 support
Added support for 92HD81/83 family of codecs.
This also includes a pwr_mapping array for pins that have more than
one amp to power down.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix sound on NEC Versa S9100
This patch adds sound support for NEC Versa S9100
With it, we get sound on the internal speaker and headphone (with
automute working) while there is no sound by default.
External mic also works fine but I don't know if there is an internal
one (if there is an internal mic it does not work currently), and I
had to send back the hardware.
Signed-off-by: Pascal Terjan <pterjan@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: Add support for ECS/PC Chips boards with Sigmatel codecs
Thanks to Sistema Fenix (http://www.sistemafenix.com.br/) and CDI Brasil
(www.cdibrasil.com.br/) for sponsoring this development.
Signed-off-by: Gilberto <gilberto@sistemafenix.com.br>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Don't reset SPDIF in each status change
The SPDIF output is toggled at each time any SPDIF status bits are changed
because of the known problems on some codecs. But, this also results in
loosing the sync, and the problem is more obvious on HDMI output over
SPDIF. Since the toggle is necessary only for some codecs, we should
check whether this workaround is needed and skip if unnecessary.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - initialize node 0x21 properly on AD1988 codecs
The widget node 0x21 should be initialized as unmuted/full (0dB)
as default. This will reduce additional manual work by user at the
first time use.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - put all HDA codec IDs to components for precise hw detection
Export HDA codec subvendor ID and revision ID to user space via the
components variable. Our alsactl utility requires these values for
the perfect hardware identification.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: dynamically create capture mux controls
Dynamically create capture mux volume controls when a output amp is detected.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: 92HD75xx fixes
Fixed several noise issues with DACs and ADCs on some 92HD75xxx based codecs
with certain revision id's.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix capture source widgets on ALC codecs
On some Realtek codecs like ALC882 or ALC883, the capture source is
no mux but sum widget. We have to initialize all channels properly
for this type, otherwise noises may come in from the unused route.
The patch assures to mute unused routes, and unmute the currently
selected route.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Tested-by: Daniel J Blueman <daniel.blueman@gmail.com>
- ALSA: hda - Fix call of alc888_coef_init()
Using init_hook to call alc888_coef_init() is problematic for configurations
that already set another init_hook. Better to put it in alc_init() as is
(although it looks a bit hackish).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add definitions of HDMI-related verbs
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - set up HDMI channels
Set up channel information for HDMI widgets. This will allow LPCM
with multiple channels supported on some HDMI devices.
TODO: It still doesn't check ELD and doesn't change PCM parameters
dynamically.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add AD1882A codec support
Added the basic support of AD1882A codec chip.
It's almost compatible with AD1882, but with a digital mic and some
differences in connections.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Create beep control on ALC269 codec
ALC269 codec has a beep, but it was not used, so far.
Create a beep control appropriately.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix ALC269 capture source
ALC269 capture source wasn't properly set up.
It's an independent MUX (0x23), not a source of ADC.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - fix spaces in patch_realtek.c
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support of HP DC7600
Fixed the support of HP DC7600 with ALC260, which was formerly handled
as model=hp-3013.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support of Toshiba S06
Added the support of Toshiba S06 with ALC262 codec chip.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support of Acer Aspire One
Added the support of Acer Aspire One with ALC269 codec chip.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support of Quanta FL1
Added the support of Quanta FL1 with ALC269 code chip.
Also a bit space clean-ups.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - support more ALC888 devices
- Add Lenovo Sky support (17aa:101d)
- Add ASUS M90V support (1043:8317)
- Add ASUS Eee 1601 support (1043:835f)
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add more ALC662/663 codec support
- Add support for ECS (1019:9087)
- Delete G71V record from alc662_cfg_tbl[]
The PCI SubsystemID was the same with M70V
- Add more ASUS notebook support
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: Revert "ALSA: hda - Added model selection for iMac 24""
This reverts commit 3e0e469fa216ec70c93b1593821b759d19ee2e6b.
The patch introduced a wrong detection of other intel Macs with
ALC88* codec because they share the same PCI SSID (but have different
codec subsystem-IDs). See http://lkml.org/lkml/2008/8/24/143
Reported-and-tested-by: Guillaume Chazarain <guichaz@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add descriptions of missing model values
Added the descriptions of missing model values.
Also, fixed the model strings of a few new models to a standard style.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support of Toshiba RX1
Added the support of Toshiba RX1 laptop with ALC262 codec chip.
Related ALSA bug#3386:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3386
Signed-off-by: Hiroshi Miura <miurahr@acm.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: Distortion fix for dell_m6_core_init
Added the EQ distortion fix to the dell_m6_core_init.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Fix ALC663 auto-probe
Fix the wrong DAC assignment for NID 0x17 mono-pin on ALC663.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add mic-boost controls to ALC662/663 auto configuration
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add model for Toshiba L305 laptop
Added Subsystem IDs (0x1179, 0xff64) for the Toshiba Satellite L305
laptop, so it automatically uses the ALC268_TOSHIBA quirk.
Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: SPDIF mux controls
Dynamically create mux controls for SPDIF outs on certain IDT/Sigmatel codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: removed unneeded hp_nid references
Removed unneeded hp_nid references for 92hd73xx codec family.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: slave digital out support
Added support for playing a stream on multiple digital outs. This is done
by defining codec->slave_dig_outs as array of hda_nid_t with a null-terminated entry to set the
slave SPDIF outs, in which the slave outs have cloned settings of the master out (e.g. dig_out_nid).
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: digital slave support for IDT codecs
Added slave_dig_outs entries for several IDT codecs that have multiple
SPDIF outs, and enabled these SPDIF outs in several pin configs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: SPDIF mux name change
Changed the mux naming scheme from "IEC9258 Mux" to "IEC958 Playback Source" to match
the coding style.
Signed-by-off: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - add missing slave_dig_outs for 92HD73bxx
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA patch_via.c: cleanup
* add extra parenthesis to make code more readable
* use kzalloc() for alloc+zero rather than kcalloc()
* ensure that AUTO_SEQ_* starts at 0
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA patch_via.c: HP and CD pin connect config
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA patch_via.c: Fix inversion of surround and side channels
In the current driver, there is a consistent mistake between the SURROUND and
the SIDE channels. This patch fixes it.
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA patch_via.c: Add VT1708S and VT1702 support
The VT1702 and VT1708S codecs are new HDA codecs by VIA.
This patch adds support for them to the patch_via.c file for HDA
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA patch_via.c: Mute on headphone plug-in
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA patch_via.c: Independent DAC for headphone
This mode allows an output stream to have two substreams, one for the
speakers and one for the headphone. Each of the substreams has independent
PCM data and uses a different DAC.
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA patch_via.c: Second S/PDIF (HDMI) support
The VT1702 and VT1708S have a second S/PDIF output which is used to
connect to a HDMI transmitter. This patch adds support for it.
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: fix oopses in snd-hda-intel after digital slave support additions
Many places fail to check if codec has slave_dig_outs entries (the most common
case is not having any entry), leading to various possible oopses in hda_codec
code.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: Added a STAC_HP_M4 quirk
Added a new quirk for STAC_HP_M4 series for an 92hd75xxx family laptop.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: Input port AMP controls
Added support for controlling hardware gain amps on input ports
using a volume control mixer with a mux selecting the port being controlled.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: fixed hp_nid DAC for DELL_M6
This patch sets the HP out not used by the "Headphone to Line Out" switch to the
hp_nid.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: 92hd73xx fixes
Added support for defining the number of amps and the creation
of the private_dimux dynamically for the 92hd73xx codec family.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
[Fixed a typo by tiwai]
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA: patch_analog: Fix SPDIF output on AD1989B
The SPDIF pins for AD1989 are not enabled by default. Set OUT bit so that they
actually work. Also initialize the HDMI SPDIF at the same time.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA: patch_analog: Implement multiple outputs for AD1988
Implement the slave_dig_outs for AD1989 cards. Untested due to lack of
hardware.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA: patch_analog: Quirk for Asus P5Q Premium/Pro boards.
Use 6STACK_DIG for the AD2000BX variant of the AD1989B chip used by Asus
on their Asus P5Q Premium and Pro boards.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA VIA: Fix crash on codecs without Headphone
Don't enumerate via_hp_mixer while hp_mux is null (headphone does not exist),
to fix the crash of via_independent_hp_info (via_hp_mixer's .info), which will
reference hp_mux.
Signed-off-by: Logan Li <LoganLi@viatech.com.cn>
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA VIA: Fix 2nd S/PDIF out function
As it seems, the recently-sent patch for the 2nd S/PDIF (HDMI) output
is not working with alsa-kernel 1.0.18rc3.
This patch makes it work by
* activating the second S/PDIF output pin in the pin config
* consolidating the dig_playback_pcm_prepare() with extra_dig_pcm_prepare()
functions
* remove the need for an extra hda_pcm_stream structure and rather represents
the second digital output as substream within the primary S/PDIF digital out
stream.
Signed-off-by: Logan Li <LoganLi@viatech.com.cn>
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA VIA: Replace buggy Mic Boost
VT1708S' Mic Boost should be hidden in hardware design according to some
customers' requirements. However, in case of bugs, it has to be exhibited to
normal users, so we need to:
* open a software backdoor, which is disabled by default in hardware
* re-write .tlv & .info, to indicate the actual necessary info, which we cannot
get from amplifier's capabiliies
Signed-off-by: Logan Li <LoganLi@viatech.com.cn>
Signed-off-by: Harald Welte <HaraldWelte@viatech.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: SPDIF mux fixes for STAC927x
Corrected bounds-checking in stac92xx_auto_create_mux_input_ctls() and added a spec->spdif_labels
pointer for custom SPDIF mux labels for non-standard codec connections.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add PCI subsystem ID for MacBookPro4,1
This seems to work if I tell it that it's a mbp3. Not sure if there are
actually any differences.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix ALC662 DAC mixer mutes also for auto config model
In previous change "[ALSA] hda-codec - Fix ALC662 DAC mixer mutes", I
missed to fix the mixer mute switches also for the auto config model of
ALC662. Now mute for mixer items "Front", "Surround", "Center" and "LFE"
when available will work too with "auto" model.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix model for Dell Inspiron 1525
Dell Inspiron 1525 seems to have a buggy BIOS setup and screws up
the recent codec parser, as reported by Oleksandr Natalenko:
http://lkml.org/lkml/2008/9/12/203
This patch adds the working model, dell-3stack, statically.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
- ALSA: hda: use last DAC defined for hp_pin
Patch allows the last DAC in the dac_nids for the hp_nid if there is an
available one this isn't in use by a line_out entry or if hp_nid isn't already
defined. This solves the issues with the 'Headphone Playback' mixer
controls on the 92hd73xxx branch and possibly others.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: slave_dig_outs code block in wrong location
Removed invalid references to slave_dig_outs inside the S/PDIF IN capture switch
control. Beforehand this was basically a mute switch for the S/PDIF outs as well.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix / clean-up slave digital out codes
The recent slave_dig_out addition has some rooms to clean up.
Also it doesn't call snd_hda_cleanup_stream() properly for slaves
at closing. The patch fixes both issues.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Support NVIDIA MCP78/7A HDMI audio
Add NVIDIA HDMI HD-audio codec support in snd-hda-intel driver,
include NVIDIA MCP78/7A HDMI.
Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: 92xx S/PDIF In support
Add support for S/PDIF IN on reference boards quirks. Also disable the
IEC958 capture switch on boards with GPIO0 enabled.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: HP laptop quirk
Added HP laptop SND_PCI_QUIRK for STAC_HP_M4.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Map ALC662 model for Gigabyte 945GCM-S2L
Use 3stack-6ch-dig ALC662 model for Gigabyte 945GCM-S2L motherboard.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Map ALC662 model for Foxconn 45CMX/45GMX/45CMX-K
Use 3stack-6ch-dig ALC662 model for Foxconn 45CMX/45GMX/45CMX-K motherboard.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: appletv support
The AppleTV needs the same handling as the 24" iMac.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: SPDIF stream muting support
Added support for muting S/DPIF outs using the 'Digital Playback Source' muxs on
supporting codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: add more board-specific information for Realtek ALC662 rev1
I recently got a chance to play with two boards with ALC662 rev1:
* BIOSTAR TA780G M2+
* ASROCK K10N78FullHD-hSLI R3.0
Both use 3 stack, 6ch mode with digital out. Since autodetection isn't able
to figure that out from BIOS, we need to specify that manually.
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix another ALC889A (rev 0x100101)
ALC889A hardware (id 0x10ec0885 rev 0x100101) to use patch_alc883
Signed-off-by: Clive Messer <clive@vacuumtube.org.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix PCI SSID for ASROCK K18N78FullHD-hSLI
The PCI SSID for ASROCK mobo in commit
ac56445dd6a38a36c2fa91989f5f6220a9bdf97c is wrong.
This patch fixes to the correct one, 1849:3662.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: comment typo fix
fix a typo in comment for process_unsol_events().
Signed-off-by: Wu Fengguang<wfg@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: comment typo fix
fix a typo in comment for is_in_nid_list().
Signed-off-by: Wu Fengguang <wfg@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: STAC_HP_M4
Set the third microphone to a default config of a 'Line In' to be
added the Input Source Mux's.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: VREF powerdown for headphones
Add support for powering down VREF on standard headphone insertion, also
powers up the VREF on a headset insertion.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: add mixers for analog mixer on 92hd75xx codecs
Add support for mixers on the analog mixer on some 92hd75xx codecs,
along with adding a 'Mixer' entry for it's connection on the dmux.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda: corrected invalid mixer values
Corrected invalid mixer index values on the 92hd71bxxx codec branch.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda: fix nid variable warning
Fixed compiler warning with possible uninitialized variable 'nid'.
CC [M] /home/mranostay/git/alsa-driver/pci/hda/patch_sigmatel.o
/home/mranostay/git/alsa-driver/pci/hda/../../alsa-kernel/pci/hda/patch_sigmatel.c: In function
‘stac92xx_parse_auto_config’:
/home/mranostay/git/alsa-driver/pci/hda/../../alsa-kernel/pci/hda/patch_sigmatel.c:2815: warning: ‘nid’ may be used
uninitialized in this function
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add auto mic switch in realtek auto-probe mode
Add the automatic mic switch via jack sensing in auto-probe mode
for Realtek codecs.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Fix PCI SSID of ASUS M90V
ASUS M90V has PCI SSID 1043:1873. Corrected in the quirk list.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add ALC1200 support
Add ALC1200 codec support. Almost compatible with ALC888.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add ALC887 support
Added ALC887 support. It's almost compatible with ALC883/888.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add support of ALC272
Added the support of ALC272 codec. It's almost compatible with ALC663.
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Fix quirk lists for realtek codecs
- Fix Toshiba S06 SSID to 1179:ff7b
- Fix ASUS G50V quirk name
- Add ASUS N20 quirk
Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Fix PCM type of Nvidia HDMI devices
Added the missing PCM type for Nvidia HDMI devices so that they point
the right device number.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add infrastructure for dynamic stream allocation
Added the infrastructure for dynamic stream allocation on HD-audio.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add generic arrays
Added helper functions to handle generic arrays.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Use generic array helpers
Use generic array helpers to simplify array handling in snd-hda-intel.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Allocate name string of each codec
Allocate dynamically the name string of each codec instead of
pointing to a static string.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Manage kcontrol lists
Manage all kcontrol elements created in the hda-intel driver.
This makes it possible to remove and reconfigure the controls
of each codec.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add codec reconfiguration feature
Added the reconfiguration feature of any individual codec.
Via the reconfiguration, the old resources are released and
the patch is called again to recreate the PCM and mixers in
addition to the re-initialization.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add sysfs entries to hwdep devices
Added the sysfs entries to hwdep devices so that the new features
like reconfiguration can be done via sysfs.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add init_verbs entries
This patch enables the additional init verbs for each codec. The verbs
can be entered via hwdep sysfs file. These verbs are executed at
reconfiguring the codec for non-standard setups like overriding
the pin-defcfg.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add hints for reconfig
This patch adds the "hints" for reconfiguring codecs. The hints
are simply string arrays and can be freely used/parsed by the codec
patch. The hints can be input via hwdep sysfs files.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: add support for jack detection on IDT/Sigmatel
Added support for jack detection reporting to userspace for
IDT/Sigmatel codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Release jack instance for dynamic reconfigure
The jack instance has to be release manually in free callback
in patch_sigmatel.c for dynamic reconfiguration.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix conflicting volume controls on ALC260
ALC260 auto-parsing mode may create multiple controls for the same volume
widget (0x08 and 0x09) depending on the pin. For example, Front and
Headphone volumes may control the same volume, just the latter one wins.
This patch adds a proper check of the existing of the volume control
and avoid the doulbed creation of the same volume controls.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - correct bracketing in spdif test in patch_sigmatel.c
Noticed by sparse:
sound/pci/hda/patch_sigmatel.c:1285:43: warning: dubious: !x & y
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Acked-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: add snd_hda_get_jack* functions
This patch adds snd_hda_get_jack* functions for reporting jack location,
device, and connectivity type.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: add support for jack detection on IDT codecs.
This patch adds support to the IDT codec families to report jack status
to the jack abstraction layer. This required some reorganization in the
stac92xx_unsol_event function in which the index value is changed to
reporting the nid with the event.
Also adds an sigmatel_jack struct to keep track of the nid relation
to the jack abstraction layer instance. Also adds functions to set and
retrieve data values for each nid, this is used in stac92xx_unsol_event
to retrieve the GPIO mask for STAC_VREF_EVENT.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

HDA Intel driver

- ALSA: hda - Align BDL position adjustment parameter
It seems NVidia and other hardwares require the alignment for period
update timing. For satisfying this condition, align the position
adjustment for delayed wake-up to the initial bdl_pos_adj value.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda_intel: ALSA HD Audio patch for Intel Ibex Peak DeviceIDs
This patch adds the Intel Ibex Peak (PCH) HD Audio Controller DeviceIDs.
Signed-off by: Seth Heasley <seth.heasley@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - support new AMD HDMI Audio (1002:970f)
Signed-off-by: Libin Yang <libin.yang@amd.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda_intel: enable snoop for nvidia HDA controller
Enable the snoop for nvidia hda controller to avoid data coherence issue.
Signed-off-by: Peer Chen <peerchen@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - disable delayed period-ack with bdl_pos_adj=0
When bdl_pos_adj=0 is given, disable the position-check and the delayed
period update mechanism. Usually bdl_pos_adj=0 is set only for the
debugging purpose on really broken hardwares. It's better to disable
the extra complexity in such a case.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - check page continuity
Check the continuity of allocated pages to reduce the BDL size as much
as possible so that it can use more than 1MB buffers.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix VIA recording problem
Add a workaround for bad DMA-position reporting on VIA chipset.
Signed-off-by: Joseph Chan <josephchan@via.com.tw>
[modified and cleaned up by tiwai]
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - allow probing of 4 codecs
Allow probing of 4 codecs on known good situations.
On some known bad situations, it should be avoided.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix for reading RIRB buffer on NVIDIA aza controller with AMD Phenom cpu
When read RIRB buffer immediately after RIRB interrupt received,
sometimes the data will be "0x0". If we wait for some time, the data
in buffer will be correct. This issue only occurred with AMD Phenom cpu.
So we set this "needs_damn_long_delay" flag.
Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add infrastructure for dynamic stream allocation
Added the infrastructure for dynamic stream allocation on HD-audio.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

HDA generic driver

- hda: digital pc-beep support hd-audio codecs
Added the respective file entry to call ../alsa-kernel/pci/hda_beep.c
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix build of hda-beep stuff with older 2.6 kernels
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- alsa-info.sh - upload to www.alsa-project.org, alsactl init changes in boot scripts
The alsa-info.sh script has been updated to upload status contents to
www.alsa-project.org server. The reason is to keep information for later
purposes (comparing configuration, write "alsactl init" default settings
and so on).
The alsactl command has "init" function now. Use this functionality in
/etc/init.d boot scripts (alsasound and alsasound.posix). Create file
/var/run/alsactl.init.failed when initial configuration does not exist
(might be improved to test cards separately not all-in-one).
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: digital pc-beep support hd-audio codecs
Added digital pc-beep support using linear tone generation for hd-codecs along
with initial support for several IDT codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - use input_free_device()
Use input_free_devce() correctly instead of kfree() at error path.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - print a few HDMI information in proc
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: Input port AMP controls
Added support for controlling hardware gain amps on input ports
using a volume control mixer with a mux selecting the port being controlled.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA: hda_local: Less magic numbers.
Explain some of the magic numbers I saw while trying to fix the AD1989 SPDIF
issue. Maybe should just use the expanded form directly in the verbs?
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: HDA: hda_proc: Fix printf format specifier
The Pincap output had a typod format specifier, leading to an extraneous "08"
in the output, which is a reserved bit of the Vref field, and was really
confused :-).
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Support NVIDIA MCP78/7A HDMI audio
Add NVIDIA HDMI HD-audio codec support in snd-hda-intel driver,
include NVIDIA MCP78/7A HDMI.
Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Allocate name string of each codec
Allocate dynamically the name string of each codec instead of
pointing to a static string.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Manage kcontrol lists
Manage all kcontrol elements created in the hda-intel driver.
This makes it possible to remove and reconfigure the controls
of each codec.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add codec reconfiguration feature
Added the reconfiguration feature of any individual codec.
Via the reconfiguration, the old resources are released and
the patch is called again to recreate the PCM and mixers in
addition to the re-initialization.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add sysfs entries to hwdep devices
Added the sysfs entries to hwdep devices so that the new features
like reconfiguration can be done via sysfs.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add init_verbs entries
This patch enables the additional init verbs for each codec. The verbs
can be entered via hwdep sysfs file. These verbs are executed at
reconfiguring the codec for non-standard setups like overriding
the pin-defcfg.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add hints for reconfig
This patch adds the "hints" for reconfiguring codecs. The hints
are simply string arrays and can be freely used/parsed by the codec
patch. The hints can be input via hwdep sysfs files.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: add snd_hda_get_jack* functions
This patch adds snd_hda_get_jack* functions for reporting jack location,
device, and connectivity type.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ICE1712 driver

- ALSA: ice1724 - Support for Terrasoniq/MUSONIK TS22 PCI card
Added support for Terrasoniq/MUSONIK TS22 PCI card.
Signed-off-by: Misha Zhilin <misha@epiphan.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: sound/pci: supported cards update
sound/pci: supported cards update
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1724: enable MIDI on Terratec Aureon 7.1 Universe
This enables MIDI on Terratec Aureon 7.1 Universe cards specifically.
Apparently the other envy24ht-based Aureon cards do not have MIDI ports,
hence I added a Universe specific eeprom array.
The newer cards (Aureon 7.1 PCI / 5.1 PCI/Fun) have MIDI but use a CMI
DSP so this driver does not concern them at all.
Signed-off-by: Maximilian Rehkopf <otakon@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1724: Enable MIDI on TerraTec PHASE 22 and PHASE 28
Even though MIDI was fixed on ice1724 chips a while ago, it wasn't yet
enabled for some cards as it didn't get enough testing. This was tested
with MIDI keyboard on PHASE 22 and with looping back output to input and
it works stable, so it's safe to enable it.
Besides this, there are some more minor fixes, not exactly user visible:
* added info about PHASE 28 (collected, as I don't have a card)
* added info about TS22PCI and new revisions of PHASE 22
* disable 192k on PHASE 22 as AK4524 I2S doesn't support it
* enable SPDIF reciever on PHASE 22
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1712/aureon.c: fix coding style
before:
total: 304 errors, 137 warnings, 2259 lines checked
after:
total: 0 errors, 121 warnings, 2284 lines checked
Compile tested, size is different because of include was changed,
but without that change md5sum is different because of cmp cx,dx/cmp
dx,cx swap and __LINE__ was changed in printk function.
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1712/wtm: fix coding style
before:
total: 2 errors, 0 warnings, 20 lines checked
total: 49 errors, 2 warnings, 518 lines checked
after:
total: 0 errors, 0 warnings, 20 lines checked
total: 0 errors, 0 warnings, 518 lines checked
Compile tested, size and code are equal.
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1712/ice1724: Coding style fixes part 1 (more coming up)
Inspired by Alexander Beregalov's patches for wtm and aureon.c,
I decided to run checkpatch on some more files. After some work
checkpatch.pl-0.23 --no-tree --file --strict <file> reports
0 errors, 0 warnings, 0 checks, n lines checked for:
phase.c
phase.h
juli.c (1 check about unused code, maybe we should comment it)
juli.h (no changes necessary)
In other files I have just fixed // comments and long lines along the
way (but not all of them), more coming up.
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1712.c: fix coding style
before:
total: 113 errors, 169 warnings, 2786 lines checked
total: 26 errors, 24 warnings, 504 lines checked
after:
total: 14 errors, 163 warnings, 2799 lines checked
total: 0 errors, 24 warnings, 504 lines checked
Compile tested only.
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ICE1724 driver

- ALSA: ice1724/revo: simple clean up
ice1724/revo: simple clean up
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: revo51: add headphone output
It is ALSA bug #1754.
D6 bit in 02 register is PW4.
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1724 - limit channels for multi-channel playback
Limit the available channels for multi-channel playback device to
the real number of channels. Until now, always up to 8 channels
are created, which are simply useless without the real outputs.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1712/ice1724: Coding style fixes part 1 (more coming up)
Inspired by Alexander Beregalov's patches for wtm and aureon.c,
I decided to run checkpatch on some more files. After some work
checkpatch.pl-0.23 --no-tree --file --strict <file> reports
0 errors, 0 warnings, 0 checks, n lines checked for:
phase.c
phase.h
juli.c (1 check about unused code, maybe we should comment it)
juli.h (no changes necessary)
In other files I have just fixed // comments and long lines along the
way (but not all of them), more coming up.
Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1724.c: fix coding style
before:
total: 96 errors, 66 warnings, 2612 lines checked
after:
total: 11 errors, 64 warnings, 2624 lines checked
Compile tested only.
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ice1724 - Fix TX IRQ lockup
MPU TX causes IRQ floods on VT172x devices mysteriously.
Disable TX IRQ if the IRQ flood is detected.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

IOCTL32 emulation

- Kill snd_assert()
Replace snd_assert() with snd_BUG_ON() and co.
Patches are re-generated.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

ISA

- firmware: convert sb16_csp driver to use firmware loader exclusively
Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
- ALSA: wss_lib: move cs4231_lib into wss_lib
Move the file sound/isa/cs423x/cs4231_lib.c
into sound/isa/cs423x/wss_lib.c
This is the first step toward merging all libraries
for Windows Sound System compatible chips
into a single library.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss pcm code instead of ad1848 one
Use the wss pcm code and kill the ad1848 pcm code.
The AD1848 chip is much slower than CS4231 chips
so the waiting loop was increased 100x (10x is not
enough).
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss detection code instead of ad1848 one
Use the wss detection code and kill the ad1848 library.
The library is fully assimilated into the new wss library.
This required reworking of the AD1848 family code
so the code is changed to correctly detect chips from
the AD1848 and CS4231 families.
I have tested it on following cards:
Gallant SC-6600 (codec: AD1848, driver: snd-sc6600)
SoundScape VIVO/90 (codec: AD1845, driver: snd-sscape)
SG Waverider (codec: CS4231A, driver: Rene Herman's snd-galaxy)
Opti930 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Opti931 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Gallant SC-70P (chip/codec: CS4237B, driver: snd-cs4236)
Audio Plus 3D (chip/codec: CMI8330A, driver: snd-cmi8330)
Dell Latitude CP (chip/codec: cs4236, driver snd-cs4232)
Sound playback and recording works on all these cards.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: remove obsolete *_FIRMARE_IN_KERNEL in isa/Kconfig
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Intel8x0 driver

- ALSA: sound/pci: supported cards update
sound/pci: supported cards update
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: intel8x0: implement ac97_clock whitelist
The AC97 clock detection is not accurate in some cases. This patch adds
an initial whitelist for audio devices gathered from RedHat's bugzilla:
https://bugzilla.redhat.com/show_bug.cgi?id=441087
As a side effect, white-listing might speedup kernel booting (AC97 clock
measuring code is not activated).
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: intel8x0 - use snd_pci_quirk for clock list
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: intel8x0 - Add quirk for Fujitsu Lifebook P7010
Fujitsu Lifebook P7010 requires ac97_quirk=hp_only.
http://bugzilla.kernel.org/show_bug.cgi?id=9100
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

KORG1212 driver

- Regenerated patches for request_firmware updates in kernel
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- firmware: convert korg1212 driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

MIPS AU1x00 driver

- removed unused #include <linux/version.h>'s
This patch lets the files using linux/version.h match the files that
#include it.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

MIXART driver

- Fix a const pointer usage warning in the Digigram miXart soundcard driver
Fix a const pointer usage warning in the Digigram miXart soundcard driver. A
const pointer is being passed to copy_from_user() to load the firmware into.
This is okay in this case because the function has allocated the firmware
struct itself, but the const qualifier is part of the firmware struct - so the
patch casts the const away.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

Maestro3 driver

- Regenerated patches for request_firmware updates in kernel
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- maestro3.patch: Fix second request_firmware call for 2.4 kernels
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- maestro3: treat firmware data as const
The maestro3 driver is byte-swapping its firmware to be host-endian in
advance, when it doesn't seem to be necessary -- we could just use
le16_to_cpu() as we load it.
Doing that means that we need to switch the in-tree firmware to be
little-endian too.
Take the least intrusive way of doing this, which is to switch the
existing snd_m3_convert_from_le() function to convert _to_ little-endian
instead, and use it on the in-tree firmware instead of the loaded
firmware. It's a bit suboptimal but doesn't matter much right now
because we're about to remove the special cases for the in-tree version
anyway.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
- firmware: convert maestro3 driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

Memalloc module

- Fix compile warnings with older kernels
The older kernels don't work well with WARN_ON(). (Re-)define it
in memalloc.inc.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Kill snd_assert() in sound/core/*
Kill snd_assert() in sound/core/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Clean up SG-buffer helper functions and macros
Clean up SG-buffer helper functions and macros. Helpers take substream
as arguments now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix allocation size calculation in snd_dma_alloc_pages_fallback()
snd_dma_alloc_pages_fallback() always tries to reduce the size in a half,
but it's not good when the given size isn't a power-of-two.
Check it first then try to align.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Allocate larger pages in sgbuf
Most hardwares have limited buffer-descriptor table length. This
also restricts the max buffer size of the sound driver.
For example, snd-hda-intel has 1MB buffer size limit, and this is
because it can have at most 256 BDL entries. For supporting larger
buffers, we need to allocate larger pages even for sg-buffers.
This patch changes the sgbuf allocation code to try to allocate
larger pages first. At each head of the allocated pages, the
number of allocated pages is stored in the lowest bits of the
corresponding entry of the table addr field. This change isn't
visible as long as the driver uses snd_sgbuf_get_addr() helper.
Also, the patch adds a new function, snd_pcm_sgbuf_get_chunk_size().
This returns the size of the chunk on continuous pages starting at
the given position offset. If the chunk reaches to a non-continuous
page, it returns the size to the boundary.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sparc: Make SBUS DMA interfaces take struct device.
This is the first step in converting all the SBUS drivers
over to generic dma_*().
Signed-off-by: David S. Miller <davem@davemloft.net>
- alsa: Remove special SBUS dma support code.
No longer used.
Signed-off-by: David S. Miller <davem@davemloft.net>

OPL3

- ALSA: Kill snd_assert() in other places
Kill snd_assert() in other places, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

OPL3SA2 driver

- ALSA: opl3sa2: drop snd_card pointer from the snd_opl3sa2 structure
Remove card pointer from the snd_opl3sa2
structure and break circular reference
snd_card->snd_opl3sa2->snd_card.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Acked-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: opl3sa2: replace nd_opl3sa2_info_xxx() with snd_wss_info_xxx()
Replace snd_opl3sa2_info_xxx() with snd_wss_info_xxx().
Drop check of card->private_data which cannot be NULL
if card is not NULL (spotted by Rene Herman).
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

OPL4

- ALSA: Kill snd_assert() in other places
Kill snd_assert() in other places, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

OSS device core

- sound: cdev lock_kernel() pushdown
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
- device create: sound: convert device_create to device_create_drvdata
device_create() is race-prone, so use the race-free
device_create_drvdata() instead as device_create() is going away.
Cc: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
- sound: make OSS sound core optional
sound/sound_core.c implements soundcore.ko and contains two parts -
sound_class which is shared by both ALSA and OSS and device
redirection support for OSS. It's always compiled when any sound
support is enabled although it's necessary only when OSS (the actual
one or emulation) is enabled. This is slightly wasteful and as device
redirection always registers character device region for major 14, it
prevents alternative implementation.
This patch introduces a new config SOUND_OSS_CORE which is selected
iff OSS support is actually necessary and build the OSS core part
conditionally.
If OSS is disabled, soundcore merely contains sound_class but leaving
it that way seems to be the simplest approach as otherwise sound_class
should be in ALSA core file if OSS is disabled but should be in
soundcore if OSS is enabled. Also, there's also the user confusion
factor.
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: fix section mismatch in the sound_core
The __exit cleanup_oss_soundcore() is called from
the __init init_soundcore(). This causes section mismatch
and breaks kernel's linking on sparc64.
Remove the __exit attribute from the cleanup_oss_soundcore().
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- device create: sound: convert device_create_drvdata to device_create
Now that device_create() has been audited, rename things back to the
original call to be sane.
Cc: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
- sound: use a common working email address
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Opti9xx drivers

- ALSA: opti93x - Fix NULL dereference
Probing non-existing device causes Oops with snd-opti93x driver
due to NULL access in the destructor of the error path.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Tested-by: Rene Herman <rene.herman@gmail.com>
Acked-by: Rene Herman <rene.herman@gmail.com>
Tested-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: opti9xx: no isapnp param for !CONFIG_PNP
"isapnp" needs CONFIG_PNP to be useful.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
The snd_wss is superset of the snd_ad1848 so kill
the latter and replace it with the snd_wss.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss constants instead of ad1848 ones
Use wss constants for mode.
Move ad1848 hardware constants to the wss.h.
Move mixer tlv macros into the ad1848_lib.c from the ad1848.h.
Drop the MODE_RUNNING spurious IRQ guard on AD1848 as it doesn not seem
to be needed.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss mixer code instead of ad1848 one
Use the wss mixer code and kill the ad1848 mixer code.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss pcm code instead of ad1848 one
Use the wss pcm code and kill the ad1848 pcm code.
The AD1848 chip is much slower than CS4231 chips
so the waiting loop was increased 100x (10x is not
enough).
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss detection code instead of ad1848 one
Use the wss detection code and kill the ad1848 library.
The library is fully assimilated into the new wss library.
This required reworking of the AD1848 family code
so the code is changed to correctly detect chips from
the AD1848 and CS4231 families.
I have tested it on following cards:
Gallant SC-6600 (codec: AD1848, driver: snd-sc6600)
SoundScape VIVO/90 (codec: AD1845, driver: snd-sscape)
SG Waverider (codec: CS4231A, driver: Rene Herman's snd-galaxy)
Opti930 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Opti931 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Gallant SC-70P (chip/codec: CS4237B, driver: snd-cs4236)
Audio Plus 3D (chip/codec: CMI8330A, driver: snd-cmi8330)
Dell Latitude CP (chip/codec: cs4236, driver snd-cs4232)
Sound playback and recording works on all these cards.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: opti92x-ad1848 WSS_HW_DETECT fix
snd-opti92x-ad1848 mistakingly passes WSS_HW_OPTI93X currently. This
fixes it as tested with a OPTi 82C929A/AD1848 card.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Kill snd_assert() in sound/isa/*
Kill snd_assert() in sound/isa/*, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PARISC Harmony driver

- ALSA: harmony - fix a typo
Fix a typo in the patch to remove snd_assert().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PCI drivers

- Fixed dependency of pci/ens1371.c
- firmware: convert korg1212 driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- firmware: convert ymfpci driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
- firmware: convert maestro3 driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
- ALSA: hda: digital pc-beep support hd-audio codecs
Added digital pc-beep support using linear tone generation for hd-codecs along
with initial support for several IDT codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: virtuoso: add Xonar D1 support
Add support for the Asus Xonar D1. It is the same as the DX, but
without the external power detection.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: sound/pci/Kconfig: update for ice1712/24
sound/pci/Kconfig: update for ice1712/24
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: virtuoso: add Xonar HDAV1.3 support
Add support for the Asus Xonar HDAV1.3 and the Xonar HDAV1.3 Deluxe.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: Support NVIDIA MCP78/7A HDMI audio
Add NVIDIA HDMI HD-audio codec support in snd-hda-intel driver,
include NVIDIA MCP78/7A HDMI.
Signed-off-by: Wei Ni <wni@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: add support for jack detection on IDT/Sigmatel
Added support for jack detection reporting to userspace for
IDT/Sigmatel codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PPC AWACS driver

- ALSA: snd-powermac: mixers for PowerMac G4 AGP
Add mixer controls for PowerMac G4 AGP (Screamer).
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: snd-powermac: HP detection for 1st iMac G3 SL
Correct headphone detection for 1st generation iMac G3 Slot-loading (Screamer).
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PPC PS3 driver

- ALSA: ps3: Add support for SPDIF/HDMI passthru
Add support for SPDIF/HDMI pass-through support of PS3 audio driver.
Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

RTC timer driver

- Remove duplicated definition of is_power_of_2() from rtctimer.c
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SA11xx UDA1341 driver

- [ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead
Remove includes of asm/hardware.h in addition to asm/arch/hardware.h.
Then, since asm/hardware.h only exists to include asm/arch/hardware.h,
update everything to directly include asm/arch/hardware.h and remove
asm/hardware.h.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
This just leaves include/asm-arm/plat-* to deal with.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: Kill snd_assert() in other places
Kill snd_assert() in other places, either removed or replaced with
if () with snd_BUG_ON().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: fix section for sa11xx-uda1341 platform driver
Don't use __init but __devinit to define probe function. A pointer to
sa11xx_uda1341_probe is passed to the core via platform_driver_register
and so the function must not disappear after the module is loaded. Using
__init and having HOTPLUG=y and SND_SA11XX_UDA1341=m the following
probably oopses:
echo -n sa11xx_uda1341.1 > /sys/bus/platform/driver/sa11xx_uda1341/unbind
echo -n sa11xx_uda1341.1 > /sys/bus/platform/driver/sa11xx_uda1341/bind
Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Brian Avery <b.avery@hp.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SB drivers

- ALSA: ALS4000 driver work, step 2
- more register naming work
- finally figured out that weird CR register stuff
(and did I mention that I hate _really_ undecipherable open-coded values?)
- fix handling of IRQ sharing in interrupt handler
(hopefully properly, otherwise I'd be grateful to hear your
pedantic comments ;)
- add handy SPECS_PAGE references wherever useful
- comments, cleanup
- add me as module author
Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SB16/AWE driver

- Regenerated patches for request_firmware updates in kernel
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- fix compilation issues caused by the latest linux-2.6 tree merge (firmware & hda_beep)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- firmware: convert sb16_csp driver to use firmware loader exclusively
Signed-off-by: Jaswinder Singh <jaswinder@infradead.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

SPARC AMD7930 driver

- Add patches for sparc/*.c
2.6.28 and later use the generic of_*().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- amd7930: Convert to pure OF driver.
Signed-off-by: David S. Miller <davem@davemloft.net>
- sparc: Annotate of_device_id arrays with const or __initdata.
As suggested by Stephen Rothwell.
Signed-off-by: David S. Miller <davem@davemloft.net>

SPARC DBRI driver

- sparc: Make SBUS DMA interfaces take struct device.
This is the first step in converting all the SBUS drivers
over to generic dma_*().
Signed-off-by: David S. Miller <davem@davemloft.net>
- dbri: Convert to pure OF driver.
Signed-off-by: David S. Miller <davem@davemloft.net>
- sparc: Annotate of_device_id arrays with const or __initdata.
As suggested by Stephen Rothwell.
Signed-off-by: David S. Miller <davem@davemloft.net>

SPARC cs4231 driver

- cs4231: Use SNDRV_DMA_TYPE_DEV instead of SNDRV_DMA_TYPE_SBUS.
SBUS layer now uses dma_*() interfaces, no need for special DMA code
any longer.
Signed-off-by: David S. Miller <davem@davemloft.net>
- cs4231: Convert SBUS side to OF driver.
Signed-off-by: David S. Miller <davem@davemloft.net>
- sparc: Move EBUS DMA interfaces into seperate header file.
These have no dependencies on the EBUS probing layer, the clients
setup the registers and all of those details. The EBUS DMA layer
just programs and manages the DMA controller found in EBUS.
Signed-off-by: David S. Miller <davem@davemloft.net>
- cs4231: Convert to EBUS side to pure OF driver.
Signed-off-by: David S. Miller <davem@davemloft.net>
- sparc: Annotate of_device_id arrays with const or __initdata.
As suggested by Stephen Rothwell.
Signed-off-by: David S. Miller <davem@davemloft.net>

Serial BUS drivers

- Regenerated i2c/other/tea575x-tuner.patch
2.6.27-rc1 broke the patch. No longer vd.hardware and vd.type fields.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add check of video_drvdata()
Added the check of video_drvdata() in configure script, and update
i2c/other/tea575x-tuner.patch.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Clean up i2c/other/Makefile
The hack in i2c/other/Makefile for fm801-tea575x should be no longer
necessary and even breaks the build. Let's get rid of it.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add missing tea575x-tuner.c generation in i2c/other/Makefile
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Audio for the Atmel AT32 System-on-Chip

- Add missing soc/* build stubs
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: ASoC: Convert wm8510 to a new-style i2c driver
Convert the wm8510 codec driver to the new (standard) device
driver binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Geoffrey Wossum <gwossum@acm.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Fix at32-pcm build breakage with PM enabled
s/PDC_PTCR/ATMEL_PDC_PTCR/
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: sound/soc/at32: Useless NULL test
The test (ssc != NULL) can only be reached if the call to the function
ssc_request, the result of which ssc is assigned, succeeds. Moreover,
two statements assign NULL to ssc just before a return, which is useless
since it is a local variable. So, we suggest to delete the test and
the two assignments.
A simplified version of the semantic match that finds this problem is
as follows:
(http://www.emn.fr/x-info/coccinelle/)
// <smpl>
@bad_null_test@
expression x,E;
@@
x = ssc_request(...)
... when != x = E
* x != NULL
// </smpl>
Signed-off-by: Julien Brunel <brunel@diku.dk>
Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Convert playpaq_wm8510 to bulk route registration API
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Audio for the Atmel AT91 System-on-Chip

- [ARM] 5130/4: Support for the at91sam9g20
Support for the at91sam9g20 : Atmel 400Mhz ARM 926ej-s SOC.
AT91sam9g20 is an evolution of the at91sam9260 with a faster clock
speed.
We created a new board for this device but based the chip support
directly on 9260 files with little updates.
Here is the chip page on Atmel wabsite:
http://atmel.com/dyn/products/product_card.asp?part_id=4337
Signed-off-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
Signed-off-by: Justin Waters <justin.waters@timesys.com>
Acked-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- removed unused #include <linux/version.h>'s
This patch lets the files using linux/version.h match the files that
#include it.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- ALSA: ASoC: Add missing new-line at end of strings
Two warning messages lack their trailing new-line, add it.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Convert wm8731 to a new-style i2c driver
Convert the wm8731 codec driver to the new (standard) device driver
binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Remove references to Endrelia ETI-B1 board
The ASoC machine drivers for this board were only provided as examples
for the new AT91 ASoC platform driver. Since the ETI-B1 board is
proprietary and there are other AT91 ASoC machine drivers available,
it makes sense to remove these drivers.
Signed-off-by: Frank Mandarino <fmandarino@endrelia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: update email address for Liam Girdwood
Update the contact information for Liam Girdwood in ASoC core and
drivers as my old email address is no longer valid.
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Audio for the Samsung S3C24XX chips

- [ARM] Eliminate useless includes of asm/mach-types.h
There are 43 includes of asm/mach-types.h by files that don't
reference anything from that file. Remove these unnecessary
includes.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- sound: ASoC: Fix an error path in neo1973_wm8753
The error handling in neo1973_init is incorrect:
* If platform_device_add fails, we go on with the rest of the
initialization instead of bailing out. Things will break when the
module is removed (platform_device_unregister called on a device
that wasn't registered.)
* If i2c_add_driver fails, we return an error so the module will not
load, but we don't unregister neo1973_snd_device, so we are leaking
resources.
Add the missing error handling.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Tim Niemeyer <reddog@mastersword.de>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Convert wm8753 to a new-style i2c driver
Convert the wm8753 codec driver to the new (standard) i2c device
driver binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ville Syrjala <syrjala@sci.fi>
Cc: Frank Mandarino <fmandarino@endrelia.com>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Convert neo1973/lm4857 to a new-style i2c driver
Convert the lm4857 driver in neo1973_wm8753 to the new (standard)
i2c device driver binding model. I assumed that the LM4857 was always
on the same I2C bus as the WM8753 codec.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Tim Niemeyer <reddog@mastersword.de>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Check for machine type in GTA01 machine driver
Since there are now multiple OpenMoko platforms it is more important to
check that the machine driver is running on the correct system. This
was orgininally generated as part of the initial GTA02 machine port.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Use snd_soc_dapm_nc_pin() in GTA01 audio driver
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add widgets before setting endpoints on GTA01
This prevents error messages at startup where the endpoints are being
set before the widgets/controls have even been added.
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Fix build of GTA01 audio driver
Fix a couple of thinkos introduced during the I2C API update.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Drop device registration from GTA01 lm4857 driver
Device registration should be handled at the machine level and not
in the driver code itself. This patch removes the device registration
from the driver code in preparation for moving it to the machine
definition.
[Squashed down two parts to this patch for bisectability - there's also
a third part adding registration of the device to the out of tree GTA01
machine driver -- broonie]
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Blackfin

- Add soc/blackfin build stub
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: ASoC: Blackfin: SPORT peripheral interface driver
SPORT is a serial port which can support serveral serial communication
protocols. It can be used as I2C/PCM/AC97. For further information,
please look up the HRM.
[Additional coding standards fixes by Mark Brown.]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: DMA Driver for AC97 sound chip
[Additional coding standards fixes by Mark Brown.]
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: AC97 Blackfin CPU DAI driver
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: DMA Driver for I2S sound chip
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: I2S CPU DAI driver
[Additional coding standards fixes by Mark Brown.]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: board driver for AD1980/1 audio codec
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: board driver for SSM2602 sound chip
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: add Blackfin arch ASoC Kconfig and Makefile
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC Blackfin: add I2S DAI support for AD73311
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC Blackfin: add asoc ad73311 driver supporting in Blackfin boards
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC Blackfin: fix bug - Audio Latency on AD1981 with MMAP enabled
With MMAP enabled (DMA mode) on the AD1981, there is +/- 250ms of delay between
writing data to alsa and audio starts coming out of the AD1981.
Copy more data to local buffer before starting DMA
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec AC97

- ALSA: ASoC: update email address for Liam Girdwood
Update the contact information for Liam Girdwood in ASoC core and
drivers as my old email address is no longer valid.
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec AD1980

- Add missing soc/* build stubs
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: AD1980 audio codec driver
[Mechanical updates from code review applied -- broonie]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC codec: fix compiling error in ad1980 driver after ASoC API changed
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC codec: remove unused #include <version.h>
The files below do not use LINUX_VERSION_CODE nor KERNEL_VERSION.
sound/soc/codecs/ad1980.c
sound/soc/codecs/wm8580.c
sound/soc/codecs/wm8900.c
This patch removes the said #include <version.h>.
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec AD73311

- ALSA: ASoC codec: AD73311 audio codec driver
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec AK4535

- ALSA: ASoC: Fix double free and memory leak in many codec drivers
Many SoC audio codec drivers have improper freeing of memory in error
paths.
* codec is allocated in the platform device probe function, but is not
freed there in case of error. Instead it is freed in the i2c device
probe function's error path. However the success or failure of both
functions is not linked, so this could result in a double free (if
the platform device is successfully probed, the i2c device probing
fails and then the platform driver is unregistered.)
* codec->private_data is allocated in many platform device probe
functions but not freed in their error paths.
This patch hopefully solves all these problems.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert ak4535 to a new-style i2c driver
Convert the ak4535 codec driver to the new (standard) device driver
binding model. After this change, AK4535 devices are no longer
discovered automatically and must instead be instantiated explicitly.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Don't suggest compile time selection of codec access
Currently the boiler plate code used by most ASoC codecs to provide a
placeholder for SPI access suggests making the selection of SPI a
compile time option which is suboptimal when trying to build kernels
supporting multiple systems. Change this template to suggest allowing
runtime selection instead.
Leave the drivers not yet converted to new style I2C access for now to
avoid collisions.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Remove unused AUDIO_NAME define from codec drivers
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec CS4270

- ALSA: make the CS4270 driver a new-style I2C driver
Update the CS4270 ALSA device driver to use the new-style I2C interface.
Starting with the 2.6.27 PowerPC kernel, I2C devices that have entries in the
device trees can no longer be probed by old-style I2C drivers. The device
tree for Freescale MPC8610 HPCD has included an entry for the CS4270 since
2.6.25, but that entry was previously ignored by the PowerPC I2C subsystem.
Since that's no longer the case, the best solution is to update the CS4270
driver to a new-style interface, rather than try to revert the behavior of
new PowerPC I2C subsystem.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Fix another cs4270 error path
Conversion to new-style i2c driver missed the error path of the
probe function. Fix it.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Fix cs4270 error path
The error path in cs4270_probe/cs4270_remove is pretty broken:
* If cs4270_probe fails, codec is leaked.
* If snd_soc_register_card fails, cs4270_i2c_driver stays registered.
* If I2C support is enabled but no I2C device is found, i2c_del_driver
is never called (neither in cs4270_probe nor in cs4270_remove.
Fix all 3 problems by implementing a clean error path in cs4270_probe
and jumping to its labels as needed.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec Philips UDA1380

- ALSA: ASoC: Fix double free and memory leak in many codec drivers
Many SoC audio codec drivers have improper freeing of memory in error
paths.
* codec is allocated in the platform device probe function, but is not
freed there in case of error. Instead it is freed in the i2c device
probe function's error path. However the success or failure of both
functions is not linked, so this could result in a double free (if
the platform device is successfully probed, the i2c device probing
fails and then the platform driver is unregistered.)
* codec->private_data is allocated in many platform device probe
functions but not freed in their error paths.
This patch hopefully solves all these problems.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert uda1380 to a new-style i2c driver
Convert the uda1380 codec driver to the new (standard) device driver
binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Don't suggest compile time selection of codec access
Currently the boiler plate code used by most ASoC codecs to provide a
placeholder for SPI access suggests making the selection of SPI a
compile time option which is suboptimal when trying to build kernels
supporting multiple systems. Change this template to suggest allowing
runtime selection instead.
Leave the drivers not yet converted to new style I2C access for now to
avoid collisions.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec SSM2602

- sound: ASoC codec: SSM2602 audio codec driver
[Some checkpatch fixups done by Mark Brown.]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Remove unused AUDIO_NAME define from codec drivers
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec TLV320AIC23

- ALSA: ASoC: Add TLV320AIC23 codec driver
ASoC codec driver for TLV320AIC23 device
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add custom SOC_SINGLE_TLV for tlv320aic23 codec
Replaces SOC_ENUM with custom SOC_SINGLE_TLV for Sidetone volume
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Remove unused AUDIO_NAME define from codec drivers
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Fix compile-time warning for tlv320aic23.c
Fixes this warning:
sound/soc/codecs/tlv320aic23.c: In function 'tlv320aic23_write':
sound/soc/codecs/tlv320aic23.c:104: warning: passing argument 2 of
'codec->hw_write' makes pointer from integer without a cast
Replaces i2c smbus write function with standard i2c write function
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec TLV320AIC26

- ALSA: ASoC: Add Texas Instruments TLV320AIC26 codec driver
ASoC Codec driver for the TLV320AIC26 device. As it stands, this driver
doesn't support all the modes and clocking options of the AIC16, but it
is a start.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Export DAI and codec for TLV320AIC26
This fixes sparse warnings and allows non-OpenFirmware systems to attempt
to bind to the device.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Staticise keyclick dev_attr in tlv320aic26
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec TLV320AIC3X

- ALSA: ASoC: Fix double free and memory leak in many codec drivers
Many SoC audio codec drivers have improper freeing of memory in error
paths.
* codec is allocated in the platform device probe function, but is not
freed there in case of error. Instead it is freed in the i2c device
probe function's error path. However the success or failure of both
functions is not linked, so this could result in a double free (if
the platform device is successfully probed, the i2c device probing
fails and then the platform driver is unregistered.)
* codec->private_data is allocated in many platform device probe
functions but not freed in their error paths.
This patch hopefully solves all these problems.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert tlv320aic3x to a new-style i2c driver (v2)
Convert the tlv320aic3x codec driver to the new (standard) device
driver binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Vladimir Barinov <vbarinov@ru.mvista.com>
Tested-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Correct Vladimir Barinov's e-mail address
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: tlv320aic3x: Use uniform tlv320aic naming
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: tlv320aic3x: Fix DSP DAI format and signal polarities matching
- Codec doesn't support to configure bit clock and frame sync polarities
- Codec doesn't support DSP_A format but DSP_B with inverted bit clock
polarity
- Match also other formats with their signal polarities
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec WM8510

- sound: ASoC: Convert wm8510 to a new-style i2c driver
Convert the wm8510 codec driver to the new (standard) device
driver binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Geoffrey Wossum <gwossum@acm.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Correct inverted Mic PGA Switch control in wm8510 driver
Mic PGA Switch should be inverted in the WM8510 driver but isn't.
Reported-by: ext-jukka.hynninen@vaisala.com
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add WM8510 SPI support
Implement SPI support for WM8510, cut'n'pasting from the support for
WM8731 contributed by Cliff Cai and Alan Horstmann since the wire format
is the same for both codecs.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Implement WM8510 bias level control
The WM8510 bias level configuration blindly overwrites the power
management registers, interfering with the operation of DAPM.
Only adjust the specific bits required, implementing use of the VMID
resistor string configuration control as we go.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Make WM8510 microphone input a DAPM mixer
The WM8510 microphone input PGA was represented as a DAPM PGA but in
DAPM terms the functionality is that of a mixer since it takes three
switchable inputs and produces one output. Representing it as an input
was causing its controls to be misinterpreted as gain controls and
would cause some required DAPM updates to be missed.
Reported-by: Jukka Hynninen <ext-jukka.hynninen@vaisala.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec WM8580

- ALSA: ASoC: Add WM8580 CODEC driver
The WM8580 is an audio CODEC designed for DVD and surround sound
applications, offering three stereo DACs and a stereo ADC.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC codec: remove unused #include <version.h>
The files below do not use LINUX_VERSION_CODE nor KERNEL_VERSION.
sound/soc/codecs/ad1980.c
sound/soc/codecs/wm8580.c
sound/soc/codecs/wm8900.c
This patch removes the said #include <version.h>.
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert wm8580 to a new-style i2c driver
Convert the wm8580 codec driver to the new (standard) device driver
binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM8731

- ALSA: ASoC: Convert wm8731 to a new-style i2c driver
Convert the wm8731 codec driver to the new (standard) device driver
binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add SPI support for WM8731
[Modified to allow runtime selection between I2C and SPI and to select
SPI_MASTER for all codecs build so this is included. -- broonie]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Fix WM8731 SPI write
Ensure wm8731_spi_write byte order is consistent regardless of
endianess.
Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM8750

- ALSA: wm8750: it's MONO1, not MONO
Since first commit wm8750 contained output named MONO, but
all routes mentioned MONO1. Correct MONO to be MONO1.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: wm8750: add missing VREF output
Add missing output VREF. After a65f0568f6cc8433877fb71dd7d36b551854b0bc
it's critical, since it makes chip routing initialisation to fail.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert wm8750 to a new-style i2c driver
Convert the wm8750 codec driver to the new (standard) device driver
binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Don't suggest compile time selection of codec access
Currently the boiler plate code used by most ASoC codecs to provide a
placeholder for SPI access suggests making the selection of SPI a
compile time option which is suboptimal when trying to build kernels
supporting multiple systems. Change this template to suggest allowing
runtime selection instead.
Leave the drivers not yet converted to new style I2C access for now to
avoid collisions.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Add WM8750 SPI support
Implement SPI support for WM8750, cut'n'pasting from the support for
WM8731 contributed by Cliff Cai and Alan Horstmann since the wire format
is the same for both codecs.
Also fix a cut'n'pasted comment in the I2C side of the driver (which was
clearly written in the same way) while we're at it.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM8753

- sound: ASoC: Convert wm8753 to a new-style i2c driver
Convert the wm8753 codec driver to the new (standard) i2c device
driver binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ville Syrjala <syrjala@sci.fi>
Cc: Frank Mandarino <fmandarino@endrelia.com>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ASoC: Set correct name for WM8753 rec mixer output
Rob Sims wrote:
"I can't seem to turn on register 0x17, bit 3 in the sound chip, except
by codec_reg_write; the mixer lacks direct or indirect control. It
seems there are two names for the output of the rec mixer:
Capture ST Mixer
Playback Mixer
Would the following do the trick?"
I confirm that this solves the audio problems I was having.
Signed-off-by: Jonas Bonn <jonas.bonn@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add WM8753 SPI support
Implement SPI support for WM8753, cut'n'pasting from the support for
WM8731 contributed by Cliff Cai and Alan Horstmann since the wire format
is the same for both codecs.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec WM8900

- ALSA: ASoC: Add WM8900 CODEC driver
The WM8900 is designed for portable multimedia applications requiring
low power consumption, high performance audio and a compact form factor
providing:
- 24 bit stereo ADC and DAC
- Microphone and line inputs
- Line outputs
- Class G headphone amplifier
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC codec: remove unused #include <version.h>
The files below do not use LINUX_VERSION_CODE nor KERNEL_VERSION.
sound/soc/codecs/ad1980.c
sound/soc/codecs/wm8580.c
sound/soc/codecs/wm8900.c
This patch removes the said #include <version.h>.
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert wm8900 to a new-style i2c driver
Convert the wm8900 codec driver to the new (standard) device driver
binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM8903

- Add wm8903 build stub
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add WM8903 CODEC driver
The WM8903 is a high performance ultra-low power stereo CODEC optimised
for portable audio applications. Features include:
* 5mW power consumption for DAC to headphone playback
* Stereo DAC SNR 96dB typical, THD -86dB typical
* Stereo ADC SNR 93dB typical, THD -80dB typical
* Up to 3 single ended inputs per stereo channel
* Up to 2 pseudo differential inputs per stereo channel
* Up to 1 fully differential mic input per stereo channel
* Digital Dynamic Range Controller (compressor/limiter)
* Digital sidetone mixing
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: WM8903 I2C cleanups
Fix a few issues identified by Jean Delvare:
- Add missing newline to error display.
- Return an error when we fail to locate the I2C adaptor.
- Remove the static wm8903_i2c_device Jean suggested, it's redundant.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Fix inverted input PGA mute bits in WM8903
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec WM8971

- sound: ASoC: Add WM8971 CODEC driver
The WM8971 is a low power, high quality stereo codec designed for
portable digital audio applications.
This driver was originally written by Kenneth Kiraly. While out of tree
it has had updates to reflect current kernel APIs and coding standards
from Graeme Gregory and Mark Brown.
Signed-off-by: Kenneth Kiraly <kiraly@lab126.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM8990

- ALSA: wm8990: Fix routing of left DAC to speaker mixer
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: wm8990: Implement speaker volume PGA
The latest revisions of the WM8990 provide a programmable gain amplifier
for the speaker - configure the register cache and implement controls
for this. Older revisions of the device ignore writes to these controls.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert wm8990 to a new-style i2c driver
Convert the wm8990 codec driver to the new (standard) device driver
binding model. After this change, WM8990 devices are no longer
discovered automatically and must instead be instantiated explicitly.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM9712

- ALSA: soc - wm9712 mono mixer
this fixes typo in wm9712 codec which prevents it from registering all audio
routes (and thus working correctly). Please consider applying.
(Tested and works on palmtx, palmld and palmt5)
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Mark Brown <brooie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM9713

- ALSA: ASoC: Fix indentation in WM9713
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: DAPM support for ADC on WM9713 PCM interface
The stereo ADC in the WM9713 can be used to produce data for both the
standard AC97 interface and the additional voice PCM interface. Support
use on both by defining virtual ADCs tied to each accepting the output
from the actual ADCs.
Reported-by: Rodolfo Giometti <giometti@enneenne.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC DaVinci

- [ARM] Eliminate useless includes of asm/mach-types.h
There are 43 includes of asm/mach-types.h by files that don't
reference anything from that file. Remove these unnecessary
includes.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: ASoC: Add missing new-line at end of strings
Two warning messages lack their trailing new-line, add it.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Convert tlv320aic3x to a new-style i2c driver (v2)
Convert the tlv320aic3x codec driver to the new (standard) device
driver binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Vladimir Barinov <vbarinov@ru.mvista.com>
Tested-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Correct Vladimir Barinov's e-mail address
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Dynamic Audio Power Management

- soc - Add a workaround for incompatible debugfs
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Refactor DAPM event handler
The DAPM event callback code has many layers of indentation, taking it
over 80 columns. Refactor the code to give less indentation in order to
avoid checkpatch issues on further changes and exploding indentation.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Factor PGA DAPM handling into main
This allows pre and post event hooks to be provided for PGA widgets.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Export dapm_reg_event() fully
dapm_reg_event() is used by devices using SND_SOC_DAPM_REG() so needs to
be exported to support building them as modules and prototyped to avoid
sparse warnings and potential build issues.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Convert bitfields in ASoC into full int width
Convert bitfields in ASoC into full int width. This is a
simple mechanical conversion. Two places in the DAPM code
were fixed to properly use mask.
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Rename mask to max to reflect usage
Most of the ASoC controls refer to the maximum value that can be set for
a control as mask but there is no actual requirement for all bits to be
set at the highest possible value making the name mask misleading.
Change the code to use max instead.
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: convert use of uint to unsigned int
ASOC: convert use of uint to unsigned int
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Convert DAPM pop time configuration to debugfs
Pop time configuration is a debugging feature which shouldn't be used in
normal operation so move it to debugfs where it is clearer. This also
simplifies the code since debugfs provides standard facilities for
exposing simple integer values to user space.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: add new param mux to dapm_mux_update_power
Function dapm_mux_update_power needs enum index mux and register mask value val
as parameters, but it only has a parameter val, and uses it as both val and mux.
snd_soc_test_bits(widget->codec, e->reg, mask, val) val is register mask here,
e->texts[val] but val should be enum index mux here.
This patch adds a new param mux to fix it.
Signed-off-by: Richard Zhao <linuxzsc@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Allow machine drivers to mark pins as not connected
Add a new API call snd_soc_dapm_nc_pin() which allows machine drivers to
mark pins as being permanently disabled. At present this is identical
to snd_soc_dapm_disable_pin() except in terms of improving the internal
documentation of machine drivers that use it. The intention is that in
future it will be extended to provide additional features such as hiding
controls that are only relevant to paths using the disconnected pin.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Fix debugfs_create_dir's error checking method for sound/soc/
debugfs_create_dir() returns NULL if an error occurs, returns -ENODEV
when debugfs is not enabled in the kernel.
Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Remove snd_soc_dapm_connect_input()
This was marked as deprecated in 2.6.27 and all users except for
playpaq_wm8510 fixed in that release.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Freescale

- ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound drivers
The Freescale MPC8610 SSI device has the option of using one clock for both
transmit and receive (synchronous mode), or independent clocks (asynchronous).
The SSI driver, however, programs the SSI into synchronous mode and then
tries to program the clock registers independently. The result is that the wrong
sample size is usually generated during recording.
This patch fixes the discrepancy by restricting the sample rate and sample size
of the playback and capture streams. The SSI driver remembers which stream
is opened first. When a second stream is opened, that stream is constrained
to the same sample rate and size as the first stream.
A future version of this driver will lift the sample size restriction.
Supporting independent sample rates is more difficult, because only certain
codecs provide dual independent clocks.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add OpenFirmware helper for matching bus and codec drivers
Simple utility layer for creating ASoC machine instances based on data
in the OpenFirmware device tree. OF aware platform drivers and codec
drivers register themselves with this framework and the framework
automatically instantiates a machine driver. At the moment, the driver
is not very capable and it is expected to be extended as more features
are needed for specifying the configuration in the device tree.
This is most likely temporary glue code to work around limitations in
the ASoC v1 framework. When v2 is merged, most of this driver will
need to be reworked.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add mpc5200-psc I2S driver
This is an I2S bus driver for the MPC5200 PSC device. It depends on the
soc-of helper functions to match a PSC device with a codec based on data
in the device tree.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: fix SNDCTL_DSP_SYNC support in Freescale 8610 sound drivers
If an OSS application calls SNDCTL_DSP_SYNC, then ALSA will call the driver's
_hw_params and _prepare functions again. On the Freescale MPC8610 DMA ASoC
driver, this caused the DMA controller to be unneccessarily re-programmed, and
apparently it doesn't like that. The DMA will then not operate when
instructed. This patch relocates much of the DMA programming to
fsl_dma_open(), which is called only once.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC - fix DMA channel selection in Freescale MPC8610 sound drivers
On the Freescale MPC8610, SSI1 is hard-coded to use DMA channels 0 and 1
for playback and capture, and SSI2 is hard-coded to use DMA channels 2 and 3.
This patch fixes the fabric driver so that it uses the right channels.
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Layer

- ALSA: ASoC: Allow codecs to override register display
Some codecs have unusual features in their register maps such as very
large registers representing arrays of coefficients. Support these
codecs in the register cache sysfs file by allowing them to provide a
function register_display() overriding the default output for register
contents.
Also ensure that we don't overflow PAGE_SIZE while writing out the
register dump.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Convert bitfields in ASoC into full int width
Convert bitfields in ASoC into full int width. This is a
simple mechanical conversion. Two places in the DAPM code
were fixed to properly use mask.
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Rename mask to max to reflect usage
Most of the ASoC controls refer to the maximum value that can be set for
a control as mask but there is no actual requirement for all bits to be
set at the highest possible value making the name mask misleading.
Change the code to use max instead.
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add OpenFirmware helper for matching bus and codec drivers
Simple utility layer for creating ASoC machine instances based on data
in the OpenFirmware device tree. OF aware platform drivers and codec
drivers register themselves with this framework and the framework
automatically instantiates a machine driver. At the moment, the driver
is not very capable and it is expected to be extended as more features
are needed for specifying the configuration in the device tree.
This is most likely temporary glue code to work around limitations in
the ASoC v1 framework. When v2 is merged, most of this driver will
need to be reworked.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Make OpenFirmware helper include file conditional
The OpenFirmware API headers don't build on all platforms so ensure
that they are not included unless they are being used.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add Texas Instruments TLV320AIC26 codec driver
ASoC Codec driver for the TLV320AIC26 device. As it stands, this driver
doesn't support all the modes and clocking options of the AIC16, but it
is a start.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: AD1980 audio codec driver
[Mechanical updates from code review applied -- broonie]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add all CODECs Kconfig option
Allow all the CODEC drivers to be built without a machine driver in order
to facilitate testing of subsystem-wide changes and gain better coverage
from automated testing efforts. This also helps things like the generic
OpenFirmware machine driver for PowerPC.
Currently AC97 CODECs are not included since the current setup relies
on having a controller driver available.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: convert use of uint to unsigned int
ASOC: convert use of uint to unsigned int
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add WM8900 CODEC driver
The WM8900 is designed for portable multimedia applications requiring
low power consumption, high performance audio and a compact form factor
providing:
- 24 bit stereo ADC and DAC
- Microphone and line inputs
- Line outputs
- Class G headphone amplifier
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add WM8580 CODEC driver
The WM8580 is an audio CODEC designed for DVD and surround sound
applications, offering three stereo DACs and a stereo ADC.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add WM8903 CODEC driver
The WM8903 is a high performance ultra-low power stereo CODEC optimised
for portable audio applications. Features include:
* 5mW power consumption for DAC to headphone playback
* Stereo DAC SNR 96dB typical, THD -86dB typical
* Stereo ADC SNR 93dB typical, THD -80dB typical
* Up to 3 single ended inputs per stereo channel
* Up to 2 pseudo differential inputs per stereo channel
* Up to 1 fully differential mic input per stereo channel
* Digital Dynamic Range Controller (compressor/limiter)
* Digital sidetone mixing
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Make all codecs depend on rather than selecting I2C
The I2C layer uses I/O operations that aren't available on all
architectures and since select bypasses Kconfig dependency checking
selecting I2C breaks builds like allmodconfig on some architectures.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add SPI support for WM8731
[Modified to allow runtime selection between I2C and SPI and to select
SPI_MASTER for all codecs build so this is included. -- broonie]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC codec: SSM2602 audio codec driver
[Some checkpatch fixups done by Mark Brown.]
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Blackfin: Include Blackfin architecture support in build
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Sort Kconfig and Makefile entries for codecs
Hopefully this will make merges a little bit easier.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Use codec digital mute when stopping playback
Muting the DAC masks artefacts introduced as the digital stream shuts
down, for example when the input stops being clocked.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Add WM8971 CODEC driver
The WM8971 is a low power, high quality stereo codec designed for
portable digital audio applications.
This driver was originally written by Kenneth Kiraly. While out of tree
it has had updates to reflect current kernel APIs and coding standards
from Graeme Gregory and Mark Brown.
Signed-off-by: Kenneth Kiraly <kiraly@lab126.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Graeme Gregory <gg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: ASoC: Fix dependency on AC97_BUS
When built with AC97 support the ASoC core depends on AC97_BUS so force
it to be available Kconfig.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC codec: AD73311 audio codec driver
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add TLV320AIC23 codec driver
ASoC codec driver for TLV320AIC23 device
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC - clean up Kconfig for TLV320AIC2
Removed unnecessary dependency. Also, make it uninteractive, as it's
only for selection by other configs.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Make TLV320AIC26 user-visible
The TLV320AIC26 Kconfig option is unusual in that it supports the
OpenFirmware machine driver which doesn't have a hard binding to the
codec driver but discovers the codec via the device tree. This makes it
meaningful to select the codec without a machine driver.
Ideally there would be a proxy entry so that this option was only
visible on OpenFirmware systems.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Hide TLV320AIC26 configuration option for non-OpenFirwmare users
Make the visibility of the tristate conditional on having the OpenFirmware
helper code enabed so that users who can't use it don't see the visible
option. Kconfig ignores dependencies for select so other users are
unaffected.
Thanks to Takashi for the suggestion.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC PXA2xx Corgi

- [ARM] pxa/corgi: use generic GPIO API for SCOOP GPIOs
Original patch from Dmitry Baryshkov's inital scoop gpio conversion
work at http://git.infradead.org/users/dbaryshkov/zaurus-2.6.git.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC PXA2xx Poodle

- ALSA: ASoC: Update Poodle to current ASoC API
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC PXA2xx Spitz

- ALSA: spitz: MONO -> MONO1
Correct route name to be MONO1 instead of MONO to follow
recent fix in wm8750.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert wm8750 to a new-style i2c driver
Convert the wm8750 codec driver to the new (standard) device driver
binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- [ARM] pxa/spitz: use generic GPIO API for SCOOP1/SCOOP2 GPIOs
Original patch from Dmitry Baryshkov's inital scoop gpio conversion
work at http://git.infradead.org/users/dbaryshkov/zaurus-2.6.git.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] pxa/akita: use pca953x instead of akita-ioexp
Use generic pca953x which provides gpiolib interface instead of
akita-specific akita-ioexp with non-standard interface to pins.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC PXA2xx Tosa

- [ARM] 5098/1: fix sound/soc/pxa/tosa.c to new gpio api
The sound/soc/pxa/tosa.c contains dependencies on parts that never
ever hit mainline. Replace them with current support for tc6393xb.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- ALSA: sound/soc/pxa/tosa.c: removed duplicated include
Removed duplicated include <asm/arch/tosa.h> in
sound/soc/pxa/tosa.c.
Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Use snd_soc_dapm_nc_pin() in Zaurus machine drivers
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Texas Instruments OMAP

- ALSA: ASoC: Fix error paths in N810 machine driver init and release clocks at exit
Thanks to Felipe Balbi <felipe.balbi@nokia.com> by noticing that if clk_get
to sys_clkout2_src fails, then n810_snd_device is never released.
Add also sys_clkout2_src release into error path, error code return and
release the clocks at exit.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Convert tlv320aic3x to a new-style i2c driver (v2)
Convert the tlv320aic3x codec driver to the new (standard) device
driver binding model.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Vladimir Barinov <vbarinov@ru.mvista.com>
Tested-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Use snd_soc_dapm_nc_pin() in N810 machine driver
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add support for osk5912
Adding ASoC machine driver for osk5912
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add DSP DAI format support to the OMAP McBSP driver
Enables DSP DAI format for McBSP in OMAP platform driver
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: OMAP: Add multilink support to McBSP DAI driver
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: OMAP: Add support for OMAP2430 and OMAP34xx in McBSP DAI driver
Thanks to Arun KS <arunks@mistralsolutions.com> for fixing one typo in
original version of this patch.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: OMAP: Set DMA stream name at runtime in McBSP DAI driver
This suits better when adding support for multiple links and different
link formats.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add destination and source port for DMA on OMAP1
Adds destination and source port for dma in platform driver as
required by OMAP1
Signed-off-by: Arun KS <arunks@mistralsolutions.com>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: OMAP: Fix DSP DAI format in McBSP DAI driver
Fix word clock length which must equal to one bit clock cycle in DSP mode.
Surprisingly McBSP is able synchronize into wrong length when it's
slave but e.g. TLV320AIC33 codec in slave configuration is outputting
some amount of noise if word clock length is longer than one bit clock
cycle.
Fix also bit clock and frame sync polarities in DSP mode since they are
opposite from I2S.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Cc: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: OMAP: Continue fixing DSP DAI format in McBSP DAI driver
Fix "ASoC: OMAP: Fix DSP DAI format in McBSP DAI driver" was not correct
due misunderstanding of DSP_A format and similar error in TLV320AIC33
codec which was used to test the original fix.
This patch corrects now DSP_A format in OMAP McBSP DAI driver and is
verified with TLV320AIC23 codec that's implementing DSP_A correctly.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Cc: Arun KS <arunks@mistralsolutions.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Sound Galaxy driver

- ALSA: wss_lib: replace ad1848 mixer element macros with wss ones
Use the wss macros instead of ad1848 ones.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

TEA575x tuner

- V4L/DVB (8484): videodev: missed two more usages of the removed 'owner' field.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
- V4L/DVB (8523): v4l2-dev: remove unused type and type2 field from video_device
The type and type2 fields were unused and so could be removed.
Instead add a vfl_type field that contains the type of the video
device.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
- V4L/DVB (8777): tea575x-tuner: replace video_exclusive_open/release
Move the video_exclusive_open/release functionality into the
driver itself.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
- V4L/DVB (8788): v4l: replace video_get_drvdata(video_devdata(filp)) with video_drvdata(filp)
Use the new video_drvdata(filp) function where it is safe to do so.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

USB

- ALSA: Add USB US122L driver
Added a new US122L usb-audio driver. This driver works together with a
dedicated alsa-lib plugin.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: us122l - Add missing dependency on CONFIG_SND_HWDEP
CONFIG_SND_USB_US122L uses snd_hwdep_new(), so SND_HWDEP needs
to be enabled (selected).
ERROR: "snd_hwdep_new" [sound/usb/usx2y/snd-usb-us122l.ko] undefined!
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

USB USX2Y

- build stub for us122l
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Add USB US122L driver
Added a new US122L usb-audio driver. This driver works together with a
dedicated alsa-lib plugin.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: us122l: fix missing unlock in usb_stream_hwdep_vm_fault()
Should unlock us122l->mutex before returning VM_FAULT_SIGBUS.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

USB generic driver

- ALSA: usb-audio: add BOSS GT-10 support
Add a quirk entry for the BOSS GT-10.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: Add USB US122L driver
Added a new US122L usb-audio driver. This driver works together with a
dedicated alsa-lib plugin.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: snd_usb_audio: fix SB Extigy IR Remote regression
The support for the SB Extigy's remote seems to be broken in all
recent ALSA versions, including 1.0.17. The driver detects the event
correctly, then submits a URB to query the RC code. On the Extigy, the
URB is submitted with a length of 2 bytes. My hardware, however, only
replies with 1 byte, containing the correct RC button code. The
current implementation discards this as being too short. (line 1784 of
usbmixer.c)
This patch specifies a "minimum packet length" in the remote control
configuration. I've left the values for the Audigy 2/Live! the same as
the packet length, as I'm assuming the existing code works with them.
(I don't have the hardware to confirm) This fixes the Extigy RC
support, e.g. for use with Lirc.
Signed-off-by: Phillip Michael Jordan <phil@philjordan.eu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: usb-audio - Add ignore_ctl_error parameter
Added the ignore_ctl_error parameter to enable/disable the control-error
handling for mixer interfaces. It was a hard-coded ifdef, and now you
can change it more easily.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: usb-audio: add support for E-Mu Tracker Pre
Add support for the E-Mu "Tracker Pre" USB sound card, following
the example of the (very similar) E-Mu 0202 and E-Mu 0404 USB.
As with the 0202 and 0404 USB, functionality is very limited:
just a couple of sample rates, no volume/mute control, etc.
Signed-off-by: Eran Tromer <eran@tromer.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: usb - Fix possible Oops at USB-MIDI disconnection
The endpoints should be released immediately at disconnection
rather than the delayed release. This could be a reason of Oops
at USB-audio device disconnection being used.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: snd-usb-audio: support for Edirol UA-4FX device
Renamed the old quirk function for ua-700/ua-25 to become more
generic, moving the MIDI interfaces to the quirk data header.
Added a new quirk for the Edirol UA-4FX.
Signed-off-by: Pedro Lopez-Cabanillas <pedro.lopez.cabanillas@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: usb-audio: dynamic detection of MIDI interfaces in uaxx-quirk
The MIDI interfaces have to be detected dynamically for Edirol devices
ua-700, ua-25 and ua4-fx. This patch reverses the wrong changes made by
my other patch in uaxx-quirk.
Signed-off-by: Pedro Lopez-Cabanillas <pedro.lopez.cabanillas@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Utils

- alsa-info.sh - upload to www.alsa-project.org, alsactl init changes in boot scripts
The alsa-info.sh script has been updated to upload status contents to
www.alsa-project.org server. The reason is to keep information for later
purposes (comparing configuration, write "alsactl init" default settings
and so on).
The alsactl command has "init" function now. Use this functionality in
/etc/init.d boot scripts (alsasound and alsasound.posix). Create file
/var/run/alsactl.init.failed when initial configuration does not exist
(might be improved to test cards separately not all-in-one).
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- recent alsactl cleanups for /etc/init.d boot scripts (use -r and restore only)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsa-info.sh: fix --pastebin option
Fixed the output uploaded to pastebin.ca (when using --pastebin)
Signed-Off-By: Travis Place <wishie@wishie.net>
- alsa-info.sh: Add output from 'amixer info'
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsa-info - Fix quoting
$SYSFS is not quoted while checking if directory exist and fails if
empty. The patch fixes this problem.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

VIA82xx driver

- ALSA: via82xx - ignore buffer preallocation errors
The errors at buffer preallocations aren't fatal and safe to ignore.
The buffer will be allocated dynamically when opened.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: via82xx - check continuous pages in buffer setup
Check continuous pages in the buffer set up so that the number of
BDL is reduced. Also increased the max buffer size.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

WSS library

- Add build stub for new wss_lib
Also remove obsolete files.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: wss_lib: move cs4231_lib into wss_lib
Move the file sound/isa/cs423x/cs4231_lib.c
into sound/isa/cs423x/wss_lib.c
This is the first step toward merging all libraries
for Windows Sound System compatible chips
into a single library.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: rename cs4231.h into wss.h
Rename file include/sound/cs4231.h
into include/sound/wss.h
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: rename cs4321_foo to wss_foo
Rename functions and structures from the former
cs4321_lib to names more corresponding with the
new name: wss_lib.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use struct snd_wss instead of snd_ad1848
The snd_wss is superset of the snd_ad1848 so kill
the latter and replace it with the snd_wss.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss constants instead of ad1848 ones
Use wss constants for mode.
Move ad1848 hardware constants to the wss.h.
Move mixer tlv macros into the ad1848_lib.c from the ad1848.h.
Drop the MODE_RUNNING spurious IRQ guard on AD1848 as it doesn not seem
to be needed.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss mixer code instead of ad1848 one
Use the wss mixer code and kill the ad1848 mixer code.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: use wss pcm code instead of ad1848 one
Use the wss pcm code and kill the ad1848 pcm code.
The AD1848 chip is much slower than CS4231 chips
so the waiting loop was increased 100x (10x is not
enough).
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: fix opti93x capture formats limitations
Limit opti93x cards capture formats to only linear ones.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: remove second mutexes initialization
Remove initializations of spinlock and mutexes which
are done earlier in snd_wss_new(). The snd_wss_new()
is called from snd_wss_create().
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: fix AZT2320 probe.
After the transition from cs4321_lib to wss_lib, azt2320 probe visits
snd_ad1848_probe during detection. It expects register 0 (LEFT_INPUT)
to be able to retain the value 0xaa during detection but AZT2320 does
not support MIC gain meaning it reads back as 0x8a instead.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: rework snd_ad1848_probe()
Make snd_ad1848_probe() easier to follow. With an exception for only
trying once as soon as the codec is out of init (which should be all
that's needed) the detection logic should be unchanged.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: missing closing brace in (ifdeffed out) debug function.
Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: snd_wss_calibrate_mute improvement
Mute sound by setting mute bit without
setting volume to 0. It makes both source code
and binary shorter.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: wss_lib: do not mess mixer settings during probe
Use the wss_dout function which does not mess
shadowed register values during chip probing.
Otherwise, user ends up with stupid mixer settings
after driver loading.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Acked-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Wavefront drivers

- ALSA: wss_lib: rename cs4231.h into wss.h
Rename file include/sound/cs4231.h
into include/sound/wss.h
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

YMFPCI driver

- ymfpci: treat firmware data as const
Standardise both in-kernel and loaded firmware to be stored as
little-endian instead of host-endian.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
- firmware: convert ymfpci driver to use firmware loader exclusively
Signed-off-by: David Woodhouse <dwmw2@infradead.org>

au88x0 driver

- ALSA: au88x0: clipping ceiling loop wrong in comment
As is the clipping ceiling loop appears wrong anyways
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Clean up SG-buffer helper functions and macros
Clean up SG-buffer helper functions and macros. Helpers take substream
as arguments now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: pci: use pci_ioremap_bar() in sound/
Use the newly introduced pci_ioremap_bar() function in sound/.
pci_ioremap_bar() just takes a pci device and a bar number, with the goal
of making it really hard to get wrong, while also having a central place
to stick sanity checks.
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

alsa-lib

Core

- IEC958 definition for consumer status channel update
Updated IEC958 consumer status channel definitions according
to the third edition of IEC60958-3 spec.
Signed-off-by: Pawel Moll <pawel.moll@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17a
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18rc3
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Control API

- Replace some assert() with runtime checks
assert() for sanity checks that can happen in runtime isn't a good idea.
Replaced it with the real check.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix return value of snd_ctl_hw_subscribe_events()
snd_ctl_subscribe_events() must return 0 when succeeded.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix sort-out of non-existing devices in namehint
get_dev_name() checks wrongly the device_output, and it doesn't check
properly the case when only device is set and device_input and output
are unset. This resulted in listing of non-existing HDMI device, for
example. The patch fixes both issues.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Mixer API

- alsa-lib: Don't call the simple mixer interface "legacy"
The simpler mixer interface is not legacy, so the header file shouldn't claim
otherwise.
Fixes bug#3569
From: Lennart Poettering <mznyfn@0pointer.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PCM API

- Add boolean (mute) functionality to softvol plugin
When the resolution is set to 2, a boolean control is created as a
mute switch instead of a volume control.
Also, fixed the possible zero-division error.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- clamp snd_pcm_rewind()/snd_pcm_forward() into the right direction
The clamping of the input parameter in snd_pcm_rewind()/_forward() is
in the wrong direction.
Signed-off-by: Lennart Poettering <lennart@poettering.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- fix type of internally used sframes variable, to avoid unnecessary casts
This minor patch fixes the type of the sframes variable in
snd_pcm_plugin_forward(). With this fix we need to cast less and the
code is less confusing.
Signed-off-by: Lennart Poettering <lennart@poettering.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- fix return value of snd_pcm_rewind()/snd_pcm_forward() to return how much actually has been rewound, instead of what actually could have rewound
Make snd_pcm_plugin_rewind()/_forward() actually return how much has
been rewound/forwarded instead of how much could have been
rewounded/forwarded. This makes the code actually do what the
documentation of snd_pcm_rewind() suggests.
Signed-off-by: Lennart Poettering <lennart@poettering.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix interleave check in pcm_direct.c
Fix the check of interleaved format. It checked a totally bogus value
as PCM format.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix non-tread mode with PCM direct plugins
tread=0 wasn't set properly for very old ALSA drivers with no timer
tread support.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- alsa-lib: Make sure SND_PCM_NO_xxx flags don't get lost when nonblocking mode is enabled
The plug PCM copies the 'mode' field from the slave PCM. If blocking mode is
enabled for the plug PCM the mode is subsequently overwritten with the original
requested 'mode'. If non-blocking mode is requested this does not happen.
Because the hw PCM synthesizes the 'mode' from the actual file descriptor flags
no SND_PCM_NO_xxx will ever be set for it. This has the effect that the 'mode'
of the plug PCM will also not include those flags anymore -- unless they are
overwritten as mentioned above. This basically means SND_PCM_NO_xxx is ignored
for plug:hw:4711 style device strings opened in non-blocking mode.
You can easily test this with "aplay --channels 7 --disable-channels -f S16_LE
-r 44100 -D plug:hw:0" on a device that cannot do 7 channels. Normally this
call should fail, however if you add "-N" to the command line this call will
succeed.
This patch simply copies the SND_PCM_NO_xxx flags back into the 'mode' field in
case we don't overwrite it with the original anyway.
Probably closes bug 3571 for good.
From: Lennart Poettering <mznyfn@0pointer.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsa-lib: Reword doxygen doc for snd_pcm_delay()
snd_pcm_delay() is for synchronization purposes, it returns the overall latency
of the stream, not just the latency induced by the hardware playback buffer.
The documentation is a bit misleading about this fact, and some people already
misunderstood it. So let's reword this to make the explanation clearer and
explicit.
This is a result of the discussions of the thread this mail belongs to:
http://mailman.alsa-project.org/pipermail/alsa-devel/2008-June/008456.html
From: Lennart Poettering <mznyfn@0pointer.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Add snd_pcm_avail() and snd_pcm_avail_delay() functions. Make snd_pcm_hwsync() deprecated.
As proposed in http://mailman.alsa-project.org/pipermail/alsa-devel/2008-June/008558.html
the snd_pcm_avail() and snd_pcm_avail_delay() functions are now available
to get accurate stream position in a straight way. The snd_pcm_avail_delay()
function was added to ensure full sync between avail and delay values. It's
actually implemented using delay() + avail_update() calls but it might be
changed in future.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- pcm_softvol plugin: remove access type change for refine
The softvol plugin does in-place sample recalculation. The access type
cannot be changed like in linear plugins. Remove access type change
in refine functions.
This bug was detected with PulseAudio on Sony PS3 platform.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix comment typos for snd_pcm_read[in]()
From: William Estrada <MrUmunhum@popdial.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Add snd_pcm_avail() and snd_pcm_avail_delay() prototypes
Prototypes for new functions from commit
fe5391c9da2212dc594d1ee7f366e55432af0454
were lost somehow.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Configuration

- Add iec958 PCM definition for PS3
Added the iec958 PCM definition for PS3.
Since it's a new feature, the definition is marked as optional.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Kernel Headers

- Increase the components array size
Increase the components array size from 80 to 128 chars.
The string there is supposed to be null-terminated, so it can cover
the smaller array size in the older version, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Test/Example code

- test/pcm: Fix error messages in async callback and add snd_pcm_start() condition
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

alsa-utils

Core

- alsactl - install initialization files
Also, spearate SOUNDSDIR and DATADIR in configure.in.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Remove unneeded files from EXTRA_DIST in root Makefile.am
automake packages such filse automatically.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.18rc3
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Add --disable-alsaconf to configure script
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALSA Control (alsactl)

- Initial 'alsactl init' implementation
See 'man 7 alsactl_init' for more details.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init: added support for Lenovo T61
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init: Changed support for Acer Travelmate 8100 (use subvendor and subdevice for matching)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - Fix Lenovo T61 configuraton
- alsactl - install initialization files
Also, spearate SOUNDSDIR and DATADIR in configure.in.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init configuration syntax changes
- change SYSFS_DEVICE to CONFIG{sysfs_device}
- INCLUDE key now handles also directories
- RESULT key can assign value now
- EXIT="return" operation returns from included file immediately
Default 00main and hda configuration files changes:
- handle preinit and postinit directories
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - allow enum specification by name strings
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - add dB and percentual CTL{value} parsing for integer values
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - restore calls also init on failure
The initialization procedure consist from default initialization and
state restoration. When restore fails for a reason or the config file
contains inaccurate information, then init is called.
Also, if something fails (init or restore), a file specified using -r
option can be created with description what failed. It can be useful
when user space decides to notify user to set the sound driver properly.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - modified configuration for Acer Travelmate 8100
- alsactl init - fixed enumeration string setting, update Lenovo T61 config (dB)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - add ATTR{dBmin} and ATTR{dBmax}
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - CTL{values}, CTL{enums} and default "guess method" initialization
Implemented CTL{values)=value to set all values at once.
Implemented CTL{enums} to match against strings in enum list.
Added 'default' (guess method) initialization configuration.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - add default command to help config and fix packaging
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl - remove 'names' command, fix alsactl man page
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl: Allow card specification by device name (support for udev)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - fixed EXTRA_DIST typo in alsactl/init subdirectory
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl init - fix memory leaks (valgrind helped)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl.1 - explicitly notify about ALSA_CONFIG_PATH environment variable
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Add missing files to be included in alsactl/Makefile.am
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- alsactl: Fix oops (when parsing card argument)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsactl: Add -g,--ignore option to ignore 'No soundcards found' error
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Speaker Test

- alsactl - install initialization files
Also, spearate SOUNDSDIR and DATADIR in configure.in.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

amixer

- amixer - fixed TLV dBscale and added dBrange parsing
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

aplay/arecord

- aplay - show sample arrangement (mmap areas) in verbose more for debugging
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- aplay/arecord: add --test-position test
In some cases (HDA audio) the ring buffer position values returned
from alsa-lib are inaccurate. The added --test-position option will
print suspicious values.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

iecset

- iecset update for new consumer status channel bits
Added iecset support for some of consumer status channel bits,
new in the third edition od IEC60958-3 spec.
Signed-off-by: Pawel Moll <pawel.moll@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- iecset - Add missing help text for -n option
Signed-off-by: Takashi Iwai <tiwai@suse.de>

alsa-tools

Core

- more gitcompile cleanups
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- improve Makefile error paths, improve automake directory detection for sbiload
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Added configure target to global Makefile and gitcompile to EXTRA_DIST
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/seq/Makefile

- improve Makefile error paths, improve automake directory detection for sbiload
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Added seq/gitcompile and seq/Makefile to tarball
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Digigram Echo Mixer

- improved automake directory detection for echomixer tree
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Added configure target to global Makefile and gitcompile to EXTRA_DIST
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix the gitcompile addition to EXTRA_DIST - echomixer
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Envy24 Control

- more gitcompile cleanups
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Added configure target to global Makefile and gitcompile to EXTRA_DIST
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

RME Digi Control

- rmedigicontrol/gitcompile fixed typo
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ac3dec (Dolby Digital Decoder)

- gitcompile: return error return code and add GITCOMPILE_NO_MAKE condition
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Added configure target to global Makefile and gitcompile to EXTRA_DIST
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ac3dec - Add -H option for HDMI
The HD-audio can have an independent HDMI PCM device via "hdmi".
The option -H is for using hdmi instead of spdif.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ac3dec - Add missing -H option
The option -H was missing in getopt argument.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

as10k1 (EMU10K1+ DSP Assembler)

- gitcompile: return error return code and add GITCOMPILE_NO_MAKE condition
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- more gitcompile cleanups
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

hdspconf

- more gitcompile cleanups
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

sb16_csp

- sb16_csp/gitcompile improve automake directory detection
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

sbiload

- improve Makefile error paths, improve automake directory detection for sbiload
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

alsa-plugins

Core

- Add usb_stream PCM plugin
usb_stream PCM plugin is used together with snd-usb-us122l driver.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.18rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix build with recent ffmpeg
Add a check of pkgconfig libavcodec in configure script.
Since the header file was moved to <libavcodec/*>, its location has
to be checked in configure, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.18rc3
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.18
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/Makefile.am

- Add usb_stream PCM plugin
usb_stream PCM plugin is used together with snd-usb-us122l driver.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

A52 Output plugin

- Fix build with recent ffmpeg
Add a check of pkgconfig libavcodec in configure script.
Since the header file was moved to <libavcodec/*>, its location has
to be checked in configure, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

PulseAudio -> ALSA plugin

- pulse - Returns errors instead of assert()
Some sanity checks in pcm_pulse.c with assert() causes the program to
abort unexpectedly when the pulseaudio daemon is dead. This is
suboptimal. Examples:
https://bugzilla.novell.com/show_bug.cgi?id=409532
Now fixed to return an error instead.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- send both an uncork and a trigger in _start()
Heya!
Here's a patch for alsa-plugins:
When playing very short streams, the pulse plugin needs call
pa_stream_trigger() in snd_pcm_start() to make sure the stream is
actually started, in addition to uncorking the stream.
Lennart
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Reindent to Linux kernel style
The PulseAudio plugin was horrible mix-up of different indenting styles even in
the same files. Indenting by 4, by 2, by 8 characters, sometimes with tabs,
sometimes with spaces. To fix this chaos I ran all files through "indent -kr
-i8". Hopefully future patches will follow kernel style indenting too.
- Add Emacs-style /*-*- linux-c -*-*/ header comment
As suggested in the kernel's CodingStyle document force Emacs into kernel-style
indenting to prevent future indenting chaos, at least for Emacs users.
- Make pulse_new() a proper C function
C functions taking no argument need a (void) as argument list. It's C++ where
() is allowed too.
- Don't modify the SIGPIPE handler
Since quite a while (2 years or so) PulsAudio doesn't require SIGPIPE anymore
to be set to SIG_IGN. Since resetting this was incredibly ugly in the first
place it is now time to get rid of this.
- Call pa_context_disconnect() explicitly
Make sure the pa_context is disconnected when we unref it. This is also done
implicitly when the last reference to the pa_context is dropped, but that might
be later then expected in case someone else took a reference on our object. To
make sure that the pa_context will than not make any call into our code,
disconnect it explicitly.
- use SNDERR instead of fprintf to print error messages
We shouldn't spam on stderr unconditionally, so let's use ALSA subsystem for
printing errors.
- Support S32 sample types
PulseAudio has been supporting these for a while, so let's make use of them
here.
- Add trailing NUL character to snprintf output
snprintf doesn't necessarily append a trailing NUL to the strings it writes. So
let's do it explicitly.
- Get rid of pulse_poll_revents()
pulse_poll_revents() has no real purpose, so let's remove it.
- Add more error checking
Add a bit more error checking where necessary
- Remove fix for bug 0003470
This fix is completely broken (introduces new segfaults) and the assert is
tries to fix is superfluous anyway, so let's just remove this altogether.
- Rework hardware parameter selection
Follow more closely the real limits of PulseAudio's API.
- A bag of minor clean ups for ctl_pulse.c
Use more error checking where applicable, optimize a few things, use PulseAudio
API functions for comparing pa_cvolume structures.
- Make pulse_ext_callback const
We can make our instance of snd_ctl_ext_callback_t const without any problems,
so let's do it.
- Drop our own implementation of the poll() callbacks
The ctl extension interfaces support poll() via a single file descriptor
anyway, so let's use it instead of rolling our own poll support callbacks.
- A bag of minor clean-ups for pulse.c
Use more error checking where appropriate, optimize a few things.
- Split out O_NONBLOCK setting into seperate function
Since we set O_NONBLOCK more than once, make it a nice and correct function.
- Save a byte of memory
Since we only need a single char, we should allocate only a single char,
instead of a string of two bytes.
Woah! We're saving memory, baby!
- Adjust buffering metrics to match what PA internally uses
Follow more closely the buffering metrics PA uses internally. This avoids
clamping of the metricsin PA internally.
- Make sure we always have a sensible channel mapping
If PA doesn't know a default channel map for the specified number of channels,
synthesize one by extending a known one with a smaller channel number.
- Use PA_STREAM_EARLY_REQUESTS if available
Use PA_STREAM_EARLY_REQUESTS if PA knows it. PA >= 0.9.12 learned this flag
which will make the buffering more similar to traditional fragment/period-based
scheduling. Instead of delaying buffer fillup until the latest moment possible
this will cause fillups much earlier.
This is useful for compatibility for broken ALSA clients that don't care about
'readability' of the ALSA fd but instead schedule audio via usleep() or a
similar call. (One exampler being mplayer)
- Use S32/FLOAT32 only where available in the PA libs
S32 samples are a recent addition to the PA API, so check if they are available
before actually using them.
- Add const to our snd_pcm_ioplug_callback_t instances
The fields are constant so let's declare that they actually are.
- Don't implement our own poll handlers, we can use the default ones
As long as we have only a single fd to watch we can use the default poll
handler implementations. So let's do this.
- Remove our own poll handler implementation entirely
Neither pcm_pulse.c nor ctl_pulse.c is using our poll handler implementation
anymore, so let's get rid of the common parts previously used by them, too
- A bag of clean-ups for pcm_ctl.c
Use more error checking where appropriate, optimize a few things, split common
code into seperate functions.
- pulse - Start PA event loop after we have created the context
We shouldn't be passing the main loop object to the pa_context while
that loop is running and not locked. Push the main loop startup after we
created the main loop.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pulse - fix minor memory leak
If we fail, we need to free the device string
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pulse - Fix destruction order on failure
If we failure we should make sure the event loop thread is not running
and hence not accessing our source/sink strings before we free those
strings.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pulse - Fix destruction logic on failed construction
We need to stop the main loop first, then free the context and finally
free the mainloop.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pulse - Fix capture problem
In pulse_start(), pa_stream_trigger() may return NULL for the capture
stream, and this caused -EIO error.
Allow now pa_stream_trigger() returning NULL.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

USB stream plugin

- Add usb_stream PCM plugin
usb_stream PCM plugin is used together with snd-usb-us122l driver.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add missing noinst_HEADERS to usb_stream/Makefile.am
Signed-off-by: Takashi Iwai <tiwai@suse.de>

libavcodec's resampler

- Fix build with recent ffmpeg
Add a check of pkgconfig libavcodec in configure script.
Since the header file was moved to <libavcodec/*>, its location has
to be checked in configure, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Custom Search
Personal tools
Namespaces

Variants
Actions
Navigation
wiki
Toolbox