Difference between revisions of "Changes v1.0.16 v1.0.17"

From AlsaProject
Jump to: navigation, search
 
m (1 revision(s))

Revision as of 14:00, 14 July 2008

Contents

Changelog between 1.0.15 and 1.0.17 releases

alsa-oss

Core

removed .hg* files and renamed hgcompile to gitcompile
gitcompile: HGCOMPILE_NO_MAKE -> GITCOMPILE_NO_MAKE
Release v1.0.17

Changelog between 1.0.16 and 1.0.17 releases

alsa-driver

Sound Core

Add pm_qos_params.h wrapper
Move pcsp driver to alsa-kernel tree
propagate errors from recursive make calls
Add check of CONFIG_INPUT_PCSPKR to configure script
Fix build with x86-64 on 2.6.25+ kernels
We support 2.6.25 kernel
Add asm/unaligned.h wrapper
Add --with-extra-version option to configure
Fix put_unaligned_*() wrappers
Moving to GIT.. Rename and update hg files..
Convert to menuconfig
New kconfig parser
Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Add -c option to setup-alsa-kernel
Add description of setup-alsa-kernel script
Check device_create_drvdata() and add a workaround in sound.c
Use --with-cards and --with-card-options again for configure
Make CONFIG_SND_KERNELDIR to use always absolute path...
Release v1.0.17rc1
Fixed 'make pack' for GIT alsa-kmirror repo
2nd attempt to fix 'make pack'
configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
Third fix to 'make pack'
Add --disable-update-version option
Release v1.0.17rc2
configure: Add GFP_DMA32 check for 2.4 kernels
configure: Added page_to_pfn check for older kernels
Fix PPC platform detection and mod-deps condition optimization
Release v1.0.17rc3
autoconf: Fix RHEL5 deprecated autoconf.h trouble
Release v1.0.17
snd-pcsp: adjust help texts to frighten users
sound: Convert to menuconfig

ALSA Core

Add pm_qos_params.h wrapper
Mark hpetimer as BROKEN
add vmaster to export-objs
Fix irq wapper for multiple handlers
snd-powermac: older kernel compatibility
Add asm/unaligned.h wrapper
Fix put_unaligned_*() wrappers
Convert to menuconfig
Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Check device_create_drvdata() and add a workaround in sound.c
Add list_first_entry wrapper for older kernels
configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
configure: Add GFP_DMA32 check for 2.4 kernels
sound: Add upper_32_bits() for older kernels
GFP_DMA32 check - change from GFP_DMA to 0 for kernels not supporting GFP_DMA32 flag
configure: Added page_to_pfn check for older kernels
Move vmaster code to sound core
Dont touch fs_struct in drivers
IEC958 definitions for consumer status channel, byte 4
fix comments in sound/core.h
sound: this amplifier only goes up to 7
sound/core.h: evil #ifdefs
Fix the race of card instance unregistration
Clean up snd_card_free*()
sound: replace remaining __FUNCTION__ occurences
proc: remove proc_root from drivers
SOUND: fix race in device_create
sound: Convert to menuconfig
[ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
[ALSA] Improve the slots option handling
alsa: add annotations to bitwise type snd_pcm_hw_param_t
[ALSA] Revert "alsa: add annotations to bitwise type snd_pcm_hw_param_t"
ALSA: remove CONFIG_KMOD from sound

SoC PXA2xx Core

soc - Support PXA3xx AC97
soc - pxa2xx-ac97 - Use __func__ not __FUNCTION__
soc - pxa2xx-pcm - Fix checkpatch warnings
[ARM] 4834/3: Convert ASoC pxa2xx-ac97 driver to use the clock API
[ARM] pxa: separate GPIOs and their mode definitions to pxa2xx-gpio.h
[ARM] 4977/2: soc - pxa2xx-ac97 - Add missing clk_enable()
[ALSA] Add EM-X270 ASoC driver
ALSA: ASoC: Pass the DAI being configured into CPU DAI probe and remove
ALSA: asoc: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
ALSA: ASoC: pxa2xx-ac97: fix warning due to missing argument in fuction declaration

Control Midlevel

Move vmaster code to sound core
ALSA: make snd_ctl_elem_read() and snd_ctl_elem_write() static

PCM Midlevel

latency.c: use QoS infrastructure
alsa: add annotations to bitwise type snd_pcm_hw_param_t
[ALSA] Revert "alsa: add annotations to bitwise type snd_pcm_hw_param_t"

Timer Midlevel

Dont touch fs_struct in drivers
ALSA: remove CONFIG_KMOD from sound

/mips/Makefile

ALSA: ALSA driver for SGI HAL2 audio device
ALSA: ALSA driver for SGI O2 audio board

/soc/Makefile

Davinci ASoC support
ASoC: Add drivers for the Texas Instruments OMAP processors
[ALSA] Revised AT32 ASoC Patch
ALSA: ASoC: Au12x0/Au1550 PSC Audio support

/soc/codecs/Makefile

ASoC: WM9713 driver
[ALSA] ASoC: Add UDA1380 driver
[ALSA] ASoC: Add WM8510 driver
[ALSA] ASoC: Add WM8990 driver
ALSA: ASoC: Add AK4535 driver

/soc/pxa/Makefile

[ALSA] Add EM-X270 ASoC driver

AC97 Codec

ak4531_codec was moved from pci/ac97/ to pci/
intel8x0 - Add support of 8 channel sound
sound: ac97_pcm.c fix shadowed variable warning
add a private field for ac97-device drivers and let ucb1400 be its first user
ac97 - Add a workaround for broken quirk for VT1617A codec
ac97 - Add virtual master control to VT1616/VT1617A codec.
[ALSA] ac97 - Fix ASUS A9T laptop output
[ALSA] Clean up sound/pci/ac97/Makefile
[ALSA] Make ak4531 local to ens1370 driver
Revert "add a private field for ac97-device drivers and let ucb1400 be its first user"
[ALSA] ac97: add support for wm9711 master left inv switch
[ALSA] ac97 - Fix power_save option value as time-out
ALSA: Fix AC97 power down
ALSA: ac97 - fix patch_ucb1400 for proper resume

AD1843 driver

ALSA: ALSA driver for SGI O2 audio board

AD1889 driver

Fix synchronize_irq() bugs, redundancies
sound: replace remaining __FUNCTION__ occurences

AK4114 receiver

AK4114 - listing regs in proc
some fixes and cleanup for ICE1724 cards

AK4531 codec

Fix ak4531 build stub
[ALSA] Make ak4531 local to ens1370 driver
ALSA: Remove duplicate MODULE_AUTHOR/DESCRIPTION/LICENCE from snd-ens1370.ko

AK4XXX AD/DA converters

some fixes and cleanup for ICE1724 cards

ALI5451 driver

sound: ali5451.c fix shadowed variable warnings
Fix synchronize_irq() bugs, redundancies

ALSA Version

Added scripts/git-ok-commits and include/version.h to proper alsa-kernel.git sync
ALSA: Release v1.0.17rc1
ALSA: Release 1.0.17rc2
ALSA: Release v1.0.17rc3
ALSA: Release v1.0.17

ALSA sequencer

Dont touch fs_struct in drivers
ALSA: remove CONFIG_KMOD from sound

ALSA<-OSS sequencer

seq-oss - Remove invalid BUG()

ARM

Convert to menuconfig
sound: Convert to menuconfig

ARM PXA2XX driver

sound: fix platform driver hotplug/coldplug
pxa2xx-ac97: Support PXA3xx AC97
[ARM] 4833/3: Convert non-SoC PXA2xx AC97 driver to clock API
[ARM] pxa: separate GPIOs and their mode definitions to pxa2xx-gpio.h
sound: replace remaining __FUNCTION__ occurences

ATIIXP driver

Fix synchronize_irq() bugs, redundancies

AZT3328 driver

PCI168 snd-azt3328 Linux driver: another huge update
[ALSA] PCI168 snd-azt3328 Linux driver: another huge update
ALSA: PCI168 snd-azt3328: some more fixups

Apple Onboard Audio driver

sound: Convert to menuconfig

Asihpi driver

asihpi - Fix section mismatch
asihpi: minor checkpatch cleanups
asihpi: Add new HPI apis for sampleclock, tuner
asihpi: Remove HPI4000
asihpi: replace volatile with barriers
asihpi: add hwdep (experimental)
asihpi - new checkpatch = more changes
asihpi - replace old class_device_*()
asihpi - Common init files for HPI
asihpi - Fix sampleclock source get. Fix volume control dB range.
asihpi - Replace hpimod.c with hpioctl.c
asihpi - Include pci table again, avoiding warning about extern.
asihpi - Log warning if DSP code version doesn't match driver.
asihpi - Version 3.10.00. Add new functions for HD radio tuner, and for firmware debug.
asihpi - Support variable size cached control information.
asihpi - Checkpatch tweaks
asihpi: Meter control return peak.
asihpi: Disable S24_3LE incompatible with 2^N buffer size.
asihpi - Add missing GFP_KERNEL to allocator
asihpi - V3.10.1. Add hpi_RDS enum.
asihpi - Regularise control creation
asihpi - Move mutex out from subsystem message
asihpi - HPI v3.10.03. Formatting tweaks.

Atmel AT73C213 DAC driver

Add __devinit macro to at73c213 sound driver probe functions
at73c213: fix error checking for clk API
at73c213: monaural support
at73c213: remove redundant private_free routine
at73c213: fix DMA size at the end of DMA buffer
Revert "at73c213: fix DMA size at the end of DMA buffer"
at73c213: Add constraints for periods value

Au12x0/Au1550 PSC ASoC

Add soc/au1x build stub
ALSA: ASoC: Au12x0/Au1550 PSC Audio support

BT87x driver

bt87X: fix freeing of shared interrupt

CA0106 driver

ca0106 - Add master volume controls
sound: ca0106_main.c fix shadowed variable warnings
sound: ca0106_mixer.c fix shadowed variable warnings
Fix possible races at free_irq in PCI drivers
ALSA: ca0106 - Add entry for another MSI K8N Diamond MB

CMI8788 (Oxygen) driver

virtuoso: move PCM1796 symbols to a header file
virtuoso: separate D2/D2X init functions
virtuoso: fix build stub
oxygen: add owner field
sound: virtuoso.c fix shadowed variable warning
oxygen: move WM8785 symbols to a header file
virtuoso: move PCM1796 symbols to a header file
oxygen: add monitor controls
oxygen: change model-specific PCM device configuration
oxygen: make SPI/2-wire configuration model-specific
oxygen: move MIDI flag to model struct
oxygen: disable clock of unused I2S inputs
oxygen: fix line-in recording selection (now for real)
oxygen: add I2C support
virtuoso: separate D2/D2X init functions
virtuoso: allow both CS5381 and CS5361
virtuoso: move some code to xonar_common_init()
virtuoso: set PCM1796 oversampling rate
virtuoso: change card short name
virtuoso: fix typo
virtuoso: add Xonar DX support
virtuoso: correctly switch input jack on Xonar DX
oxygen: use SPDIF input only if present
virtuoso: add GPIO 1 mixer control
virtuoso: initialize two-wire control register
virtuoso: fix DX front panel I/O
hifier: remove empty hifier_mixer_init()
oxygen: generalize handling of DAC volume limits
oxygen: mute by default
oxygen: generalize DAC volume TLV handling
oxygen: fix version in MODULE_LICENSE
oxygen: add symbol for I/O space size
oxygen: save register writes
oxygen: simplify DAC volume initialization
oxygen: separate out hardware initialization code
virtuoso: add xonar_enable_output()
oxygen: add PM support
oxygen: add symbols for buffer/period size constraints
virtuoso: restrict period time to less than 10 s
sound: oxygen: fix NULL pointer dereference when loading snd-oxygen

CMIPCI driver

sound: cmipci.c fix shadowed variable warning

CREDITS file

2.6 kernel sync
Do not track mainstream files outside ALSA tree - use alsa-kernel.git repo

CS4231 driver

ALSA: opti93x: add support for Opti93x codec in cs4231-lib

CS46xx driver

Fix possible races at free_irq in PCI drivers

CX88 driver

Fix synchronize_irq() bugs, redundancies

Common EMU synth

emux midi synthesizer doesn't honor SOFT_PEDAL-release event

Conexant Riptide driver

sound: riptide.c fix shadowed variable warnings

Digigram PCXHR driver

sound: pcxhr_core.c fix shadowed variable warning
sound/pci: remove unused variable
sound/pci/pcxhr/pcxhr_core.c: fix printk warning
sound/pci/pcxhr/pcxhr.c: fix warnings

Digigram VX Pocket driver

ALSA: Fix a const to non-const assignment in the Digigram VXpocket sound driver

Digigram VX core

configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
ALSA: Fix a const pointer usage warning in the Digigram VX soundcard driver

Documentation

Add -c option to setup-alsa-kernel
hda-codec - Add support of AD1883/1884A/1984A/1984B
hda-codec - Add model=mobile for AD1884A & co
Add description of aw2 driver
hda-codec - Add missing descriptions for STAC codec models
pcsp: add description
Revert "at73c213: fix DMA size at the end of DMA buffer"
hda-codec - Fix spekaer output of Panasonic CF-74
hda-codec - Support of Lenovo Thinkpad X300
hda-codec - Remove now uneeded 6stack-hp model from ALC883
hda-codec - Add missing models in ALSA-Configuration.txt
hda-codec - Support mic automute for Clevo M720R/SR
hda-intel: Add Quanta IL1 ALC267 model
hda - revert wrongly committed patch
hda - Add support of AD1989A/AD1989B
hda - Add support of Medion RIM 2150
[ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
[ALSA] hda - Add ALC663 support
[ALSA] Improve the slots option handling
ALSA: hda - remove position_fix=3
ALSA: hda - Add description of bdl_pos_adj option

Dreamcast AICA sound (pcm) driver

Remove duplicated unlikely() in IS_ERR()

EMU10K1/EMU10K2 driver

sound: emuproc.c fix signedness warning
sound: emu10k1x.c fix shadowed variable warnings
Fix possible races at free_irq in PCI drivers
[ALSA] emu10k1 - simplify page allocation for synth
[ALSA] emu10k1 - Fix inverted Analog/Digital mixer switch on Audigy2
sound: emu10k1 - fix system hang with Audigy2 ZS Notebook PCMCIA card
ALSA: emu10k1 - Fix page allocation with GFP_DMA
ALSA: emu10k1 - fix possible memory leak in memory allocation routines
ALSA: emu10k1 - simplify the last fix

ENS1370/1+ driver

sound: ens1370.c fix shadowed variable warning

ES1968 driver

sound: es1968.c fox shadowed variable warning
es1968: fix sleep-while-holding-lock bug
es1968: fix jitter on some maestro cards
es1968 - fix coding style in the last patch

Echoaudio driver

Fix possible races at free_irq in PCI drivers

Emagic Audiowerk 2

Add build stub for aw2 driver
aw2: fix build stubs
Emagic Audiowerk 2 ALSA driver.
aw2 - Add missing module parameters
aw2 - Remove endian dependency
aw2 - Rename aw2-tsl.h to aw2-tsl.c
sound/pci/aw2/aw2-alsa.c needs dma-mapping.h
aw2: remove duplicate MODULE_LICENSE
ALSA: aw2 - Fix Oops at initialization

FM801 driver

sound: fm801.c fix shadowed variable warning

Generic drivers

pcsp driver update
pcsp - Comply to Lindent & checkpatch.pl
improved snd-aloop quality when using certain samplerates and kernel HZ
aloop - more cleanups
pcsp - Check return value of pcspkr_input_init()
aloop - even more cleanups
pcsp: use platform_driver API
pcsp: Add NForce workaround
improved snd-aloop quality when using certain samplerates and kernel HZ
Move pcsp driver to alsa-kernel tree
snd-aloop - more cleanups
Remove old Kconfig entry for pcsp
Convert to menuconfig
snd-dummy - improved timing, silence on prepare
snd-dummy - better realtime app support
Add PC-speaker sound driver
pcsp - clean ups
pcsp: improve "enable" option handling
pcsp: locking fix
[ML403-AC97CR] Remove duplicate snd_card_set_dev()
sound/drivers/pcsp/pcsp.c build fix
pcsp: remove downsampling
sound: fix platform driver hotplug/coldplug
sound/drivers/dummy.c: fix negative snd_pcm_format_width() check
pcsp - Fix dependency in Kconfig
pcsp: fix wording in DEBUG_PAGEALLOC warning
pcsp - Fix CONFIG_DEBUG_PAGEALLOC warning message again
pcsp - Remove dependency to INPUT_PCSPKR=n again
pcsp - Fix more dependency
pcsp: Fix build with CONFIG_PM=n
ac97 - Add virtual master control to VT1616/VT1617A codec.
pcspkr: fix dependancies
snd-pcsp: adjust help texts to frighten users
snd-pcsp: put back the compatibility code for the older alsa-libs
snd-pcsp: depend on CONFIG_EXPERIMENTAL
snd-pcsp: silent misleading warning
snd-pcsp: use HRTIMER_CB_SOFTIRQ
[ALSA] snd-pcsp - fix pcsp_treble_info() to honour an item number
sound: Convert to menuconfig
[ALSA] Fix AC97 kconfig items

HDA Codec driver

hda-intel - Fix PCM device number assignment
hda-codec - Add ID for an unknown HDMI codec chip
hda: STAC927x power down inactive DACs
hda-codec - Correct HDMI transmitter names
hda-codec - remove duplicate controls in alc268 test mixer
hda-codec - Fix race condition in generic bound volume/swtich controls
hda-codec - Fix ALC880 F1734 model
hda-codec - Fix automute of AD1981HD hp model
hda-codec - Don't create vmaster if no slaves found
hda-codec - Fix wrong capture source selection for ALC883 codec
hda-codec - Fix ALC882 capture source selection
hda-codec - Clean up capture source selection of Realtek codecs
hda-codec - Implement auto-mic jack sensing on Samsung laptops
hda-codec - More fix-up for auto-configuration
hda-codec - Fix auto-configuration of Realtek codecs
hda-codec - Add "IEC958 Default PCM" switch
hda-codec - Add more names to vendor list
hda-codec - Fix breakage of resume in auto-config of realtek codecs
hda-codec - Fix missing capsrc_nids for ALC262
hda-codec - Add support of AD1883/1884A/1984A/1984B
hda-codec - Add model=mobile for AD1884A & co
hda-codec - Fix Master volume on HP dv8000
Keep private TLV entry in vmaster itself
hda-codec - Fix ALC662 recording
hda-codec - Add beep volume control to ALC268
hda-codec - Fix ALC268 capture source
hda-codec - Don't create multiple capture streams for single inputs
hda: fix STAC927x power management
hda: STAC927x invalid association value
hda: 92HDxxxx PCI Quirks
hda: STAC927x analog mic
hda: Mic as output fix
hda-codec - Adapt eeepc p701 mixer for virtual master control
hda-codec - Fix AD1988 capture elements
hda-codec - Add Fujitsu Lifebook E8410 to quirk table
hda-codec - Fix initial DAC numbers of 92HD71bxx codecs
hda-codec - Add docking-station mic input for Thinkpad X61
hda-codec - Fix mixer names of realtek codecs to adapt mater controls
sound: patch_sigmatel.c fix shadowed variable warning
hda-codec - Use int instead of long in patch_sigmatel.c
sound: hda: missing includes of hda_patch.h
hda: disable power management on fixed ports
hda: add verbs for 92hd73xxx laptops
hda-codec - Fix the array over-range access with stac92hd71bxx codec
hda-codec - model for alc883 to support M720R
ALC288 - Add NEC S970 to the quirk table
hda-codec - model for alc883 to support FUJITSU Pi2515
hda-codec - model for cx20549 to support laptop HP530
hda-codec - Fix dmics on ALC268 in auto configuration
hda-codec - Add internal mic item for ALC268 acer model
HDA Codecs: add support for Toshiba Equium L30
hda: Reorganized DAC outputs
hda-intel - Fix microphone capture with ALC880 F1734 model
hda-codec - Improve ALC262 ultra model
hda: 92HD73xxx distortion fix
hda-codec - Fix orphan Headphone controls in STAC codecs
hda-codec - Fix ALC662 DAC mixer mutes
hda-codec - Map 3stack-6ch-dig ALC662 model for Asus P5GC-MX
hda-codec - Fujitsu Lifebook port replicator/dock headphone jack sense
Revert "at73c213: fix DMA size at the end of DMA buffer"
hda-codec - Fix DAC assignment order in ALC883
hda-codec - Map 3stack-6ch-dig ALC883 model for MSI 945GCM5 V2 (MSI-7267)
hda-codec - Fix spekaer output of Panasonic CF-74
hda-codec - keep the format verb at closing PCM streams
hda-codec - Support of Lenovo Thinkpad X300
hda: 92hd71bxxx DMIC nid
hda-codec - model for alc262 to support Lenovo 3000
hda-codec - Remove now uneeded 6stack-hp model from ALC883
hda-codec - Use base ALC883 mixer for 6stack-dell model
hda-codec - Use common 3stack-6ch mixer for 3stack-hp model
hda-codec - Map clevo-m720r ALC883 model for Clevo M720SR
hda-codec - Support mic automute for Clevo M720R/SR
hda-codec - PCI quirk for MSI laptop
hda-codec - Fix unbalanced mutex
hda - Should use HDA_OUTPUT instead of HDA_INPUT to mute pin 15 of ALC880
hda - PCI quirk for laptop LG which use CMI9880
hda - Fujitsu Lifebook PC speaker signal
hda: Correct SPDIF out default config
hda: EAPD power management
hda-intel: Add Quanta IL1 ALC267 model
hda - revert wrongly committed patch
hda - Add support of AD1989A/AD1989B
hda: Add 5.1 support for second headphone jack
hda - Fix ALC889A codec support
hda - Avoid unexpected breakage with ALC889A hack
hda - Fix model for Acer Aspire 5720z
hda - Fix Thinkpad X300 digital mic
hda - Add support of Medion RIM 2150
hda - Support IDT 92HD206 codec
Revert migration to alc_set_pin_output() in alc861_auto_set_output_and_unmute()
[ALSA] hda - Fix ALC262 fujitsu model
[ALSA] hda - Fix ASUS P5GD1 model
[ALSA] hda - Add model for ASUS P5K-E/WIFI-AP
[ALSA] hda - Fix noise on VT1708 codec
[ALSA] hda - Fix COEF and EAPD in ALC889 auto-configuration mode
[ALSA] hda - Added support for Foxconn P35AX-S mainboard
[ALSA] hda - Fix capture mute Widget for stac9250/9251
[ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
[ALSA] hda - Add ALC663 support
[ALSA] hda - Fix vref pincap check in alc882 auto-detection
[ALSA] hda - show correct codec chip in PCM stream names
[ALSA] hda - Fix EAPD and COEF setups for realtek codecs
[ALSA] hda - Fix mic input on HP2133
[ALSA] hda - Fix model for LG LS75 laptop
[ALSA] hda - support intel DG33 motherboards
[ALSA] hda - Fix PLL gating control on Realtek codecs
[ALSA] hda - COMPAL IFL90/JFL-92 laptop quirk
[ALSA] hda - Fix resume of auto-config mode with Realtek codecs
[ALSA] hda - Fix "alc262_sony_unsol[]" hda_verb array
[ALSA] hda - Add Toshiba dynabook SS RX1 support
ALSA: hda - Fix stac9205_cfg_tbl
ALSA: hda - Remove unused mutex
ALSA: hda: Add support for 92HD73xxx codecs
ALSA: hda - Fix wrong volumes in AD1988 auto-probe mode
ALSA: hda - Fix digital converter proc output
ALSA: hda - Added model selection for iMac 24"
ALSA: hda - Added SSID for 'Fujitsu Siemens Amilo M1451G' laptop
ALSA: hda - Add MacBook 3.1 support
ALSA: hda - disable amp override on non-HP machines
ALSA: ALSA: hda - Fix ALC883 medion model
ALSA: hda - Add missing Thinkpad Z60m support
ALSA: ALSA: hda - Fix speaker output on Toshiba P105
ALSA: hda - Add support for Lenovo 3000 N200
ALSA: hda - removed redundant gpio_mask
ALSA: HDA - HP dc7600 with pci sub IDs 0x103c/0x3011 belongs to hp-3013 model
ALSA: hda: 92hd71bxx PC Beep
ALSA: hda - Fix internal mic vref pin setup
ALSA: hda - Fix missing init for unsol events on micsense model
ALSA: hda - Fix FSC V5505 model

HDA Intel driver

hda-intel - Fix PCM device number assignment
hda-intel - Use SG buffer
hda-intel - Support 64bit buffer allocation
hda-intel - Fix a compile error with CONFIG_SND_DEBUG_DETECT=y
HDA-Intel - Patch to support RV7xx HDMI Audio
hda-intel - Fix Oops with ATI HDMI devices
hda-intel - Clean up stream definitions
hda-intel - Use PCI_DEVICE() macro
hda_intel needs dma-mapping.h
hda_intel: Add the DIDs of nvidia MCP79 HD audio controller to hda_intel.c
hda-intel - Fix power-off hang on ASUS P5AD2
hda-intel - Add barrier
hda-intel - Add sync support
hda - Fix DMA position inaccuracy
[ALSA] hda - Fix DMA position inaccuracy
[ALSA] hda - Add support of Teradici controller
[ALSA] hda - Add ICH9 controller support (8086:2911)
[ALSA] hda - increase max_codecs of ICH to 4
ALSA: hda - Add bdl_pos_adj option
ALSA: hda - remove position_fix=3
ALSA: hda - bdl_pos_adj option to each instance
ALSA: hda - Fix bdl_pos_adj value for ATI SB chipsets
ALSA: hda - Add a warning if pending IRQ is found
ALSA: hda - bdl_pos_adj=32 as default
ALSA: hda - use upper_32_bits()

HDA generic driver

Move vmaster build stub to acore
hda-codec - Add "IEC958 Default PCM" switch
hda-codec - Fix amp-in values for pin widgets
Keep private TLV entry in vmaster itself
hda-codec - keep the format verb at closing PCM streams
[ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
ALSA: hda - Fix digital converter proc output

I2C cs8427

i2c: cs8427.c use put_unaligned helper

ICE1712 driver

ice1712 - Fix hoontech MIDI input
Added support for Delta1010E (newer revisions of Delta1010)
ice1712 - added support for M-Audio Delta 66E
sound: ice1712.c fix shadowed variable warnings
sound: ice1712: unused structs
ice1724 - Fix the SPDIF input sample-rate on Juli@
some fixes and cleanup for ICE1724 cards
ice1724 - Fix return codes in some pointis callbacks
ice1724 - Improved the Juli rate setting
Don't set gpio mask register in snd_ice1712_gpio_write_bits()
ice1712 - Add Terrasoniq TS88 support
ice1724 - Fix IRQ lock-up with MPU access
[ALSA] ice1724: fix MIDI

ICE1724 driver

sound: ice1712: unused structs
ice1724 - Fix the SPDIF input sample-rate on Juli@
some fixes and cleanup for ICE1724 cards
ice1724 - Improved the Juli rate setting
ice1724.c: toggle "chip reset" and "eeprom based setup" sequence
Audiophile 192: Fix ad converter initialization
ice1724 - Fix IRQ lock-up with MPU access
Add MPU401_INFO_NO_ACK bitflag
ice1724 - Enable watermarks
[ALSA] ice1724: fix MIDI

ISA

Convert to menuconfig
sound: Convert to menuconfig
[ALSA] remove SND_GUS_SYNTH
ALSA: opti93x: use cs4231 lib

Intel8x0 driver

Fix intel8x0.patch for 2.6.25 changes
intel8x0 - Add support of 8 channel sound
x86: convert CPA users to the new set_page_ API
x86: cpa: move flush to cpa
intel8x0 - Add quirk for Compaq Deskpro EN

L3 drivers

[ALSA] remove CVS keywords

MAINTAINERS file

2.6 kernel sync
Do not track mainstream files outside ALSA tree - use alsa-kernel.git repo

MIPS

ALSA: ALSA driver for SGI HAL2 audio device
ALSA: ALSA driver for SGI O2 audio board

MIPS SGI A2 Audio System

ALSA: ALSA driver for SGI HAL2 audio device

MPU401 UART

mpu401: reduce tx loop timeout
Define MPU401 registers in sound/mpu401_uart.h
Add MPU401_INFO_NO_ACK bitflag

Maestro3 driver

sound: maestro3.c fix shadowed variable warnings
[ALSA] maestro3: Fix hw volume on HP OmniBook

Memalloc module

regenerated memalloc.patch for proc change
Move hack for dma_alloc_coherent() from alsa-kernel
Fix the wrong patch in the last commit to memalloc.patch
configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
sound: use non-racy method for /proc/driver/snd-page-alloc creation
Remove unneeded ugly hack for i386 in memalloc.c

NM256 driver

ALSA: correct kcalloc usage

Opti9xx drivers

[ALSA] opti93x: fix sound ouput for Opti930
ALSA: opti93x: use cs4231 lib

PCI drivers

asihpi: add hwdep (experimental)
Convert to menuconfig
ak4531_codec was moved from pci/ac97/ to pci/
Remove old export flag for ak4531
Move vmaster code to sound core
ca0106 - Add master volume controls
Emagic Audiowerk 2 ALSA driver.
ice1724 - Improved the Juli rate setting
virtuoso: add Xonar DX support
[ALSA] fm801 - Fix kconfig dependency mess of fm801-tea575x
[ALSA] ice1724: fix MIDI
[ALSA] Fix AC97 kconfig items
[ALSA] Make ak4531 local to ens1370 driver

PDAudioCF driver

configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks

PDPlus driver

Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE

PPC AWACS driver

snd-powermac: AWACS and Screamer mixers for PM7500, Beige, and iMac SL
snd-powermac: style awacs.s and awacs.h
snd-powermac: more coding style fixes for awacs.[ch]

PPC Beep

snd-powermac: older kernel compatibility
snd-powermac: more older kernel compatibility

PPC Burgundy driver

snd-powermac: Burgundy mixers for B&W and iMac
snd-powermac: style burgundy.c

PPC DACA driver

Dont touch fs_struct in drivers
ALSA: remove CONFIG_KMOD from sound

PPC PMAC driver

powermac - fix irq handlers
snd-powermac: enable headphone detection on older kernels
snd-powermac: older kernel compatibility
snd-powermac: enable headphone detection
snd-powermac: style pmac.c

PPC PS3 driver

ALSA: Storage class should be before const qualifier

PPC Tumbler driver

snd-powermac: more older kernel compatibility

PXA Mainstone driver

[ARM] pxa: separate GPIOs and their mode definitions to pxa2xx-gpio.h
[ARM] pxa: use new pin configuration mechanism for mainstone
[ARM] pxa: use gpio_keys.c to support mainstone's wakeup switch of GPIO1
[ARM] pxa: add partial keypad support for mainstone
[ARM] 4901/3: mainstone: Register primary I2C bus
Do not track mainstream files outside ALSA tree - use alsa-kernel.git repo

RME HDSP driver

hdsp - RME 9632 fix at 192kHz

RME32 driver

sound: rme32.c fix integer as NULL pointer warning

RME96 driver

sound: rme96.c fix integer as NULL pointer warning

RME9652 driver

sound: hdspm.c fix returning void expression warnings
sound/pci/rme9652/hdspm.c: stop inlining largish static functions

RTC timer driver

Fix build of rtctimer.c for older kernels

SA11xx UDA1341 driver

[ALSA] remove CVS keywords

SAA7134 driver

Fix synchronize_irq() bugs, redundancies
2.6 kernel sync - add one-line changes

SB drivers

sound: replace remaining __FUNCTION__ occurences
[ALSA] trivial clean up of sound/isa/sb/Makefile
ALSA: sb - Fix wrong assertions

SB16/AWE driver

sound: replace remaining __FUNCTION__ occurences

SB8 driver

sb8: fix SB 1.0 capture DMA programming

SGI O2 Audio

ALSA: ALSA driver for SGI O2 audio board

SIS7019 driver

ALSA: Storage class should be before const qualifier

SPARC DBRI driver

ALSA: make sparc/dbri.c:snd_dbri_proc() static

SoC Audio for the Atmel AT32 System-on-Chip

Add soc/at32/Makefile for build
[ALSA] Revised AT32 ASoC Patch
ALSA: asoc: at32 - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
ALSA: asoc: machines - add Digital Audio Interface (DAI) control functions.
ALSA: asoc: at32 - DAI struct merge and enable_pin() change.

SoC Audio for the Atmel AT91 System-on-Chip

[ARM] 4912/2: [AT91] Endrelia audio driver must use GPIO interface
soc - at91-pcm - Fix line wrapping
soc at91 minor bug fixes
soc - eti_b1_wm8731 - Convert to use bulk DAPM control registration
ALSA: asoc: at91 - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Audio for the Samsung S3C24XX chips

soc - Fix s3c24xx-i2s LR sync while timer ticks are disabled
soc - neo1973_wm8753 - Fix module unload
soc - s3c24xx-i2s - Replace __FUNCTION__ with __func__
soc - s3c24xx - Improve diagnostic output
soc - s3c24xx - Declare suspend and resume static
soc - s3c24xx-i2s - Use linux/io.h
soc - s3c24xx-i2s - Fix tab/space breakage
soc - s3c24xx-i2s - Add missing spaces
soc - s3c2443-ac97 - Fix checkpatch warnings
soc - s3c24xx-pcm - Fix checkpatch warnings
soc - ln2440sbc_alc650 - Fix checkpatch warnings
soc - neo1973_wm8753.c cleanup checkpatch issues
soc - neo1973_wm8753.c change maintainer contact info
soc - neo1973_wm8753.c add suspend and shutdown hooks for lm4857 chip
soc - fix s3c2410 PCM breakage
soc - fix S3C2410 i2s programming error
soc - Patch to add debug messages to the neo1973_wm8753 (GTA01) sound driver
soc - neo1973_wm8753 - Convert to bulk DAPM registration APIs
ALSA: ASoC: Add TLV information to the LM4857 controls on the GTA01
ALSA: asoc: s3c24xx - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Codec AC97

soc - ac97 - Clean up checkpatch warnings
ASoC: Remove in-code changelogs
[ALSA] ASoC: Remove in-code changelogs
ALSA: ASoC: Add missing includes
ALSA: ASoC: AC97 codec PM
ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Codec AK4535

ALSA: ASoC: Add AK4535 driver
ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Codec CS4270

SOC: fix tests in cs4270_hw_params()
ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Codec Philips UDA1380

[ALSA] ASoC: Add UDA1380 driver
ALSA: ASoC: Fix register cache size for UDA1380

SoC Codec TLV320AIC3X

ASoC: Fix TLV320AIC3X PLL divider table for 64 kHz rate
ASoC: Add support for 12 MHz MCLK in TLV320AIC3X
ASoC/TLV320AIC3X: Stop I2C driver ID abuse
ASoC: Add support for 19.2 MHz MCLK in TLV320AIC3X
soc - tlv320aic3x - revisit clock setup
soc - tlv320aic3x - add GPIO support
ASoC: Fix TLV320AIC3X mono line output interconnect
soc - tlv320aic3x - Convert to use bulk registration APIs
ASoC: Clarify API for bias configuration
ALSA: ASoC: Tweak tlv320aicx reg_cache_size
ALSA: ASoC: TLV320AIC3X: Use register modifier widget for mic bias
ALSA: ASoC: TLV320AIC3X: Modify only interface related bits in aic3x_set_dai_fmt
ALSA: ASoC: TLV320AIC3X: Add support for digital microphone input
ALSA: ASoC: TLV320AIC3X: Add mixer control for ADC highpass filter
ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Codec WM8510

[ALSA] ASoC: Add WM8510 driver
[ALSA] ASoC: Fix default mono mixer configuration for WM8510
ALSA: ASoC: Replace custom debug macros with pr_ equivalents

SoC Codec WM8731

soc - wm8731 - Clean up checkpatch warnings
soc - Convert Wolfson codec drivers to use bulk DAPM registration
ALSA: ASoC: Fix register cache sizes for Wolfson codecs
ALSA: ASoC: Replace custom debug macros with pr_ equivalents

SoC Codec WM8750

soc - wm8750 - Clean up checkpatch warnings
soc - Convert Wolfson codec drivers to use bulk DAPM registration
ALSA: ASoC: Fix register cache sizes for Wolfson codecs
ALSA: ASoC: Replace custom debug macros with pr_ equivalents

SoC Codec WM8753

soc - Add Invert Switch for ROUT2
soc - wm8753 - Clean up checkpatch warnings
soc - Convert Wolfson codec drivers to use bulk DAPM registration
ALSA: ASoC: Fix register cache sizes for Wolfson codecs
ALSA: ASoC: Add TLV information to remaining WM8753 controls
ALSA: ASoC: Replace custom debug macros with pr_ equivalents

SoC Codec WM8990

[ALSA] ASoC: Add WM8990 driver

SoC Codec WM9712

ASoC: Fix WM9712 mixer_event DAPM widget function type
soc - wm9712: Remove unneeded AC97_EXTENDED_MID updates
soc - wm9712 - checkpatch fixes
soc - Convert Wolfson codec drivers to use bulk DAPM registration
ASoC: Remove in-code changelogs
[ALSA] ASoC: Remove in-code changelogs
ALSA: ASoC: Add missing includes
ALSA: ASoC: Check for exact register match in wm97xx_reset()

SoC Codec WM9713

ASoC: WM9713 driver
soc - Add missing audio path between Mono Mixer and Mic PGAs
wm9713: Don't control touch screen power on suspend
ASoC: Remove in-code changelogs
[ALSA] ASoC: Remove in-code changelogs
ALSA: ASoC: Fix WM9713 voice PCM slave mode configuration
ALSA: ASoC: Check for exact register match in wm97xx_reset()
ALSA: ASoC: Advertise 16000Hz rate for WM9713 PCM interface

SoC DaVinci

Add soc/davinci build stub
Davinci ASoC support
soc - davinci-evm - Update for bulk DAPM registration APIs
ALSA: ASoC: Pass the DAI being configured into CPU DAI probe and remove
ALSA: asoc: davinci - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Dynamic Audio Power Management

soc - Report errors from snd_soc_dapm_set_endpoint()
soc - Include register in DAPM debug output
soc - DAPM - add hook to read state of DAPM widget
sound: fix export symbol typo
soc - DAPM - Add bulk control registration
soc - DAPM - Bulk route registration
ASoC: Clarify API for bias configuration
ALSA: ASoC: Add support for generic DAPM register modifier widget
ALSA: ASoC: Make pop/click debug wait times dynamically configurable
ALSA: ASoC: Fix warning from strict_strtoul()
ALSA: asoc: core - refactored DAPM pin control API.
ALSA: ASoC: Switch DAPM to use of standard DEBUG macro
ALSA: ASoC: Dump DAPM state for non-stream changes

SoC Freescale

soc - duplicate strcasecmp test for "rj-master" in mpc8610_hpcd_probe()
Removed deprecated sound/driver.h from Freescale MPC8610 drivers
soc - fsl_ssi.c fix "BUG: scheduling while atomic"
ALSA: Fix register programming in Freescale MPC8610 HPCD sound driver
ALSA: asoc: fsl - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
ALSA: asoc: kbuild - only show menus for the current ASoC CPU platform.

SoC Layer

ASoC: WM9713 driver
Davinci ASoC support
sound: fix platform driver hotplug/coldplug
ASoC: Add drivers for the Texas Instruments OMAP processors
ASoC: build fix for snd_soc_info_bool_ext
ASoC: Clarify API for bias configuration
ASoC: Make CPU and codec DAI operations have same type
ASoC: core checkpatch cleanups
[ALSA] ASoC: Make CPU and codec DAI operations have same type
[ALSA] ASoC: Add SOC_DOUBLE_S8_TLV control type
[ALSA] ASoC: Add UDA1380 driver
[ALSA] ASoC: Add WM8510 driver
[ALSA] ASoC: Add WM8990 driver
[ALSA] Revised AT32 ASoC Patch
ALSA: ASoC: Pass the DAI being configured into CPU DAI probe and remove
ALSA: ASoC: Add SOC_SINGLE_EXT_TLV control type
ALSA: ASoC: Don't block system resume
ALSA: ASoC: fix PM=n build
ALSA: ASoC: Add AK4535 driver
ALSA: asoc: core - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
ALSA: asoc: core - add Digital Audio Interface (DAI) control functions.
ALSA: ASoC: Au12x0/Au1550 PSC Audio support

SoC PXA2xx Corgi

ASoC: Fix DAPM widget function types in pxa machine drivers
soc - corgi - Fix checkpatch warnings
soc - Zaurus - Convert to bulk DAPM registration APIs
ASoC: Remove in-code changelogs
[ALSA] ASoC: Remove in-code changelogs
ALSA: asoc: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC PXA2xx EM-X270

[ALSA] Add EM-X270 ASoC driver

SoC PXA2xx Poodle

ASoC: Fix DAPM widget function types in pxa machine drivers
soc - poodle - Fix checkpatch warnings
soc - Zaurus - Convert to bulk DAPM registration APIs
ALSA: asoc: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC PXA2xx Spitz

ASoC: Fix DAPM widget function types in pxa machine drivers
soc - spitz - Fix checkpatch warnings
soc - Zaurus - Convert to bulk DAPM registration APIs
ALSA: asoc: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC PXA2xx Tosa

ASoC: Fix DAPM widget function types in pxa machine drivers
soc - Zaurus - Convert to bulk DAPM registration APIs
ALSA: tosa: fix compilation with new DAPM API

SoC SH7760 AC97

ALSA: asoc: sh - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.

SoC Texas Instruments OMAP

Add build stub for soc omap drivers
ASoC: Add drivers for the Texas Instruments OMAP processors
soc - n810 - Update for bulk DAPM registration APIs
ASoC: Fix wrong enum count for jack_function in N810 machine driver
ASoC: Convert N810 machine driver to use gpiolib
[ALSA] ASoC: Convert N810 machine driver to use gpiolib
ALSA: ASoC: Cover also Nokia N810 WiMAX Edition in N810 machine driver
ALSA: ASoC: Add digital mic configuration to N810 machine driver
ALSA: asoc: omap - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
ALSA: asoc: n810 - fix build error.
ALSA: asoc: kbuild - only show menus for the current ASoC CPU platform.

Trident driver

[ALSA] trident - clean up obsolete synth codes
ALSA: trident - pause s/pdif output

UDA1341

[ALSA] remove CVS keywords

USB MIDI Gadget driver

USB: gadget code switches to pr_err() and friends

USB USX2Y

adapt usx2y patches for VM_DONTEXPAND change
vm audit: add VM_DONTEXPAND to mmap for drivers that need it

USB caiaq

Fix caiaq-device.patch
caiaq - fix section mismatch warning
caiaq - Add __devinit* again
snd_usb_caiaq: fix potential lockups locking
snd_usb_caiaq: correct input channel order
snd_usb_caiaq: make high sample rates work with A8DJ
snd_usb_caiaq: add support for "Session I/O" interface
caiaq endianness fix

USB generic driver

usb-audio: add workaround for broken E-Mu frequency feedback
usb-audio: sort quirks list
USB: usbaudio: handle kcalloc failure
usb-audio - Add a proper error check
usb audio: Fix another Dallas quirk
usb audio: make quirk handling more readable, and fix commented-out code
sound/usb/usbaudio.c: coding style
usb-audio - Fix race in reconnection
[ALSA] usb-audio - Support for Roland SonicCell sound module
[ALSA] usbaudio.c: remove #ifndef CONFIG_USB_EHCI_SPLIT_ISO code
ALSA: Add Yamaha KX49 (USB MIDI controller) to usbquirks.h
ALSA: usb-audio: fix Yamaha KX quirk
ALSA: usb-audio: add some Yamaha USB MIDI quirks

USB1400 touchscreen driver

2.6 kernel sync - add one-line changes
add a private field for ac97-device drivers and let ucb1400 be its first user
Revert "add a private field for ac97-device drivers and let ucb1400 be its first user"

Utils

Fix build with wm9713
Add soc/davinci build stub
propagate errors from recursive make calls
Add a hack to handle XXX=n kconfig
New kconfig parser
Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Add utils/setup-alsa-kernel script
Change symlinks in setup-alsa-kernel script
setup-alsa-kernel - Check alsa-driver root directory
Add -c option to setup-alsa-kernel
Create sound symlink in setup-alsa-kernel script
Use --with-cards and --with-card-options again for configure
Add alsa-info.sh to this package
Fixed the URL to download alsa-info.sh
alsa-info.sh: Use new "official" URL for updates
alsa-info.sh: Fix "official" URL for changelog and change download URL
mod-deps: fix PPC (and maybe other) dependencies problem using right brackets in acinclude.m4
Fix PPC platform detection and mod-deps condition optimization

VIA82xx driver

ALSA: via82xx - Add VIA audio device #1841 to ac97_quirk list

Virtual Master

Move vmaster build stub to acore
Move vmaster code to sound core
Keep private TLV entry in vmaster itself

Wavefront drivers

ALSA: wavefront - add const

YMFPCI driver

ymfpci - Fix race at removal
ALSA: ymfpci - fix initial volume for 44.1kHz output

au88x0 driver

sound: au88x0_pcm.c fix integer as NULL pointer warning
[ALSA] remove CVS keywords

gitcompile script

Moving to GIT.. Rename and update hg files..
modified gitcompile script to use ../alsa-kmirror directory as ALSAKERNELDIR
gitcompile - Check if alsa-kernel directory already exists

hgcompile script

Moving to GIT.. Rename and update hg files..

pci_ids.h update

2.6 kernel sync

alsa-lib

Core

Add atomic operation for super-H(sh3,4) architectures
Create doxgen.cfg dynamically
IEC958 definitions for consumer status channel, byte 4
removed .hg files and renamed hgcompile to gitcompile
Release v1.0.17rc1
PCM: allow mmap-access conversion in plug
Release v1.0.17rc2
Release v1.0.17

Control API

Fix device number assignment in hints
Don't show non-existing devices in snd_device_name_hint()
Fix cast warning

Mixer API

implemented integer volume <-> dB volume conversion functions for simple mixer

Mixer Abstraction API

implemented integer volume <-> dB volume conversion functions for simple mixer

PCM API

Fix conflict of obsoleted snd_pcm_hw_* definitions
Fix the state in snd_pcm_ioplug_pause()
Fix the build with old glibc
dmix skipping first set of samples
Add truncate option to PCM file plugin
Use slave PCM as a timing-source for file ifile
Add the support of WAV format in PCM file plugin
Use defaults.pcm.file_format for the default file format of file plugin
fix compilation in pcm/pcm_hw.c - monotonic clock
PCM API - explain more trigger timestamp
added snd_pcm_hw_params_is_monotonic/can_forward/can_rewind functions
implemented snd_pcm_rewindable() and snd_pcm_forwardable(), removed can_rewind and can_forward
Implemented snd_pcm_sw_params_(set|get)_period_event for interrupt wakeup like behaviour
Fix compile warnings in pcm_hw.c
pcm_mmap_emul: Fix invalid check
pcm_mmap_emul: clean up
Export __snd_pcm_mmap_emul_open()
PCM: allow mmap-access conversion in plug
Fix segfault with dmix of 3-bytes formats
pcm: fix comment for snd_pcm_avail_update()

Sequencer API

Fix snd_seq_change_bit()
add snd_seq_unset_bit()
add snd_seq_client_info_event_filter_*() functions
use snd_seq_client_info_event_filter_*() functions
mark snd_seq_client_info_{get,set}_event_filter deprecated

/Makefile.am

hgcompile -> gitcompile

Configuration

Add surround71 definition to NFORCE.conf
Add PCM "hdmi"
Fix for alsa-lib cross-compilation problems with ALSA_CONFIG_DIR and ALSA_PLUGIN_DIR
Add truncate option to PCM file plugin
Use defaults.pcm.file_format for the default file format of file plugin
pcsp: remove downsampling

Documentation

Create doxgen.cfg dynamically

Kernel Headers

Add surround71 definition to NFORCE.conf
Implemented snd_pcm_sw_params_(set|get)_period_event for interrupt wakeup like behaviour

Simple Abstraction Mixer Modules

Fix for alsa-lib cross-compilation problems with ALSA_CONFIG_DIR and ALSA_PLUGIN_DIR
implemented integer volume <-> dB volume conversion functions for simple mixer

Test/Example code

add a test code for snd_seq_client_info_event_filter_*()
Implemented snd_pcm_sw_params_(set|get)_period_event for interrupt wakeup like behaviour
Fix type-punning in test/pcm.c
test/pcm.c: Fix SND_PCM_FORMAT_S24 support

alsa-utils

Core

Require alsa-lib 1.0.16
Add check of ncurses*-config
hgcompile -> gitcompile
Release v1.0.17rc1
Release v1.0.17rc2
Release v1.0.17

ALSA Control (alsactl)

alsactl: simplify and fix item type detection

Speaker Test

speaker-test.c - fix sine generator on big-endian archs
speaker-test.c - fix pink noise generator on big-endian archs

alsaconf

alsaconf: use 'type -p', not which

alsamixer

Add check of ncurses*-config

aplay/arecord

aplay/arecord - Add support for IEEE float 32-bit WAV files
Support for playing WAV files with "extensible format" header using aplay.
aplay - Add stereo VU-meter support
aplay - Fix a compile warning

aplaymidi/arecordmidi

fix poll timeout

aseqdump

aseqdump: increase verbosity
fix poll timeout
aseqdump: flush output

gitcompile

renamed hgcompile to gitcompile

hgcompile

renamed hgcompile to gitcompile

alsa-tools

Core

remove .hg files and renamed hgcompile to gitcompile
hgcompile -> gitcompile changes (include README files)
HGCOMPILE -> GITCOMPILE
Release v1.0.17rc1
Added compile script
improved compile script (too look also to subdirs)
Release v1.0.17

ac3dec (Dolby Digital Decoder)

hgcompile -> gitcompile changes (include README files)

hdspmixer

hdspmixer - Fix Digiface channel map for ADAT speed mode 1

alsa-firmware

Core

removed .hg* files and renamed hgcompile to gitcompile
Release v1.0.17rc1
Release v1.0.17rc2
Release v1.0.17

AudioScience ASIHPI Firmware

Update asihpi firmware to ver.3.09.14.
asihpi - Update firmware to version 3.10.00
Update asihpi firmware

alsa-plugins

Core

removed .hg* files and renamed hgcompile to gitcompile
Improve configure for maemo plugin
Release v1.0.17rc2
Fix invalid withval in configure script
Release v1.0.17

/Makefile.am

hgcompile -> gitcompile change
Improve configure for maemo plugin

A52 Output plugin

Various plugins don't support "hint" sections

Alsa support for Maemo SDK (n770)

Various plugins don't support "hint" sections
Fix close in maemo callback

Jack PCM plugin

Various plugins don't support "hint" sections

PulseAudio -> ALSA plugin

pulse - Fix useless assert
pulse - Remove another assert
Pulseaudio alsa configure hook
pulse - Change to hook load_if_running

alsa-python

Core

Release v1.0.17rc1
Release v1.0.17

Documentation

alsa-python: API coverage documentation tool
Added python coverage doc

Test python scripts

added ask_volume_dB and ask_dB_volume for mixer element

pyalsa.alsacard module

unify naming, only classes and constants use upper letters now

pyalsa.alsacontrol module

unify naming, only classes and constants use upper letters now

pyalsa.alsamixer module

added ask_volume_dB and ask_dB_volume for mixer element

pyalsa.alsaseq module

alsaseq - poll() must be in Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS block

Detailed changelog between 1.0.15 and 1.0.17 releases

alsa-oss

Core

- removed .hg* files and renamed hgcompile to gitcompile
- gitcompile: HGCOMPILE_NO_MAKE -> GITCOMPILE_NO_MAKE
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Detailed changelog between 1.0.16 and 1.0.17 releases

alsa-driver

Sound Core

- Add pm_qos_params.h wrapper
Added pm_qos_params.h wrapper introduced in 2.6.25. Also obsolete
latency.h as well.
- Move pcsp driver to alsa-kernel tree
- propagate errors from recursive make calls
Make sure that recursive make calls are checked for errors, and that
failed application of patches does not result in an apparently up-to-
date source file.
- Add check of CONFIG_INPUT_PCSPKR to configure script
- Fix build with x86-64 on 2.6.25+ kernels
2.6.25+ x86-64 arch requires the include of asm/mach-$type as well as
on x86-32.
- We support 2.6.25 kernel
- Add asm/unaligned.h wrapper
Added asm/unaligned.h wrapper. Only put_unaligned_*() are added so far.
- Add --with-extra-version option to configure
- Fix put_unaligned_*() wrappers
The previous hack for put_unaligned_*() wrappers for older kernels was buggy.
Let's fix them.
- Moving to GIT.. Rename and update hg files..
- Convert to menuconfig
Convert menu in Kconfig files to menuconfig, as well as in kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- New kconfig parser
Introduced a new kconfig parser for handling menuconfig and if.
With this change, the configure options --with-cards and --with-card-options
are dropped, and --with-kconfig is added instead.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Rename to CONFIG_SND_DEBUG_VERBOSE to match with its purpose better.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add -c option to setup-alsa-kernel
Added -c option to setup-alsa-kernel. With this option, the files are
copied instead of symlinks from the kernel tree so that it can be easily
archived.
Also, some files for kernel doc are now stored in utils directory.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add description of setup-alsa-kernel script
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Check device_create_drvdata() and add a workaround in sound.c
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Use --with-cards and --with-card-options again for configure
Back to the old --with-cards and --with-card-options.
First off, it's always good to keep compatibility.
And, this makes easier the practical use, indeed.
Instead of --with-exclude option, now --with-cards and --with-card-options
options accept the style as "ITEM=n". This disables the given item.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Make CONFIG_SND_KERNELDIR to use always absolute path...
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fixed 'make pack' for GIT alsa-kmirror repo
- 2nd attempt to fix 'make pack'
- configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
Also all files using config.h directly were modified to use autoconf.h
conditionaly.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Third fix to 'make pack'
- Add --disable-update-version option
Added --disable-update-version option to avoid the updating of version.h
of alsa-kernel tree. It's useful when alsa-kernel tree is symlinked
(e.g. via utils/setup-alsa-kernel script) so that the external tree
won't be changed by alsa-driver build.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.17rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- configure: Add GFP_DMA32 check for 2.4 kernels
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- configure: Added page_to_pfn check for older kernels
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix PPC platform detection and mod-deps condition optimization
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17rc3
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- autoconf: Fix RHEL5 deprecated autoconf.h trouble
The root of the problem is that including the header
include/linux/config.h produces a warning on RHEL5. This interferes with
several autoconf tests that treat warnings as errors. Therefore it seemed
best to globally check use of
in the same pattern as was already done for init_utsname.
Furthermore, the check for is_power_of_2 would produce 2 warnings: one for
the use of an undeclared function (desired), and another warning for an
un-used variable. Still the test would succeed, because the required
condition is flagged by warnings, not errors. This was fixed by following
the pattern from init_utsname.
Signed-off-by: Ben Stanley <Ben.Stanley@exemail.com.au>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- snd-pcsp: adjust help texts to frighten users
Added the warning text to the help of snd-pcsp about the possible problem
with this driver so that user can know of the problem in advance.
Also, removed the obsoleted text about ancient pc-speaker patch in
CONFIG_SOUND help.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: Convert to menuconfig
Convert menu in sound Kconfig files to menuconfig and if.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

ALSA Core

- Add pm_qos_params.h wrapper
Added pm_qos_params.h wrapper introduced in 2.6.25. Also obsolete
latency.h as well.
- Mark hpetimer as BROKEN
hpet timer code doesn't build properly with the recent kernel.
Mark it as BROKEN.
- add vmaster to export-objs
- Fix irq wapper for multiple handlers
When a driver assigns multiple irq handlers with the same data (e.g.
in snd-powermac driver), it couldn't be released well because the
wrapper doesn't remember and check irq numbers.
This patch fixes the problem.
- snd-powermac: older kernel compatibility
Allow to compile snd-powermac on older kernels.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- Add asm/unaligned.h wrapper
Added asm/unaligned.h wrapper. Only put_unaligned_*() are added so far.
- Fix put_unaligned_*() wrappers
The previous hack for put_unaligned_*() wrappers for older kernels was buggy.
Let's fix them.
- Convert to menuconfig
Convert menu in Kconfig files to menuconfig, as well as in kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Rename to CONFIG_SND_DEBUG_VERBOSE to match with its purpose better.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Check device_create_drvdata() and add a workaround in sound.c
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add list_first_entry wrapper for older kernels
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
Also all files using config.h directly were modified to use autoconf.h
conditionaly.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- configure: Add GFP_DMA32 check for 2.4 kernels
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: Add upper_32_bits() for older kernels
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- GFP_DMA32 check - change from GFP_DMA to 0 for kernels not supporting GFP_DMA32 flag
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- configure: Added page_to_pfn check for older kernels
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Move vmaster code to sound core
Move the codes for virtual master controls to sound core part so that
not only hda-intel drivers can use it.
- Dont touch fs_struct in drivers
The sound drivers and the pnpbios core test for current->root != NULL. This
test seems to be unnecessary since we always have rootfs mounted before
initializing the drivers.
Signed-off-by: Jan Blunck <jblunck@suse.de>
Acked-by: Christoph Hellwig <hch@lst.de>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Jaroslav Kysela <perex@suse.cz>
Acked-by: Takashi Iwai <tiwai@suse.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- IEC958 definitions for consumer status channel, byte 4
Added definition for byte 4 of SPDIF channel status, according to
second edition of IEC 60958-3 (consumer) spec.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
- fix comments in sound/core.h
Two sentences seem to be spliced into one in comment, fix that and fix
english. Also fix codingstyle.
Signed-off-by: Pavel Machek <pavel@suse.cz>
- sound: this amplifier only goes up to 7
sound: kernel log levels are 0-7
Kernel log levels are 0-7, not 0-9.
Signed-off-by: Nick Andrew <nick@nick-andrew.net>
- sound/core.h: evil #ifdefs
snd_minor_info_oss_* is an function returning int _or_ comment,
depending on config parameters. That is truly evil, fix it.
Signed-off-by: Pavel Machek <pavel@suse.cz>
- Fix the race of card instance unregistration
Move the call of device_unregister() for the card instance in
snd_card_disconnect() to avoid the race of sysfs card entry, which
can be typically found on usb-audio reconnection.
- Clean up snd_card_free*()
A little clean up of snd_card_free*().
Removed snd_card_free_prepare() since it's actually almost identical
with snd_card_disconnect().
- sound: replace remaining __FUNCTION__ occurences
__FUNCTION__ is gcc-specific, use __func__
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- proc: remove proc_root from drivers
Remove proc_root export. Creation and removal works well if parent PDE is
supplied as NULL -- it worked always that way.
So, one useless export removed and consistency added, some drivers created
PDEs with &proc_root as parent but removed them as NULL and so on.
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
- SOUND: fix race in device_create
There is a race from when a device is created with device_create() and
then the drvdata is set with a call to dev_set_drvdata() in which a
sysfs file could be open, yet the drvdata will be NULL, causing all
sorts of bad things to happen.
This patch fixes the problem by using the new function,
device_create_drvdata().
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
- sound: Convert to menuconfig
Convert menu in sound Kconfig files to menuconfig and if.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE to
represent its meaning more better. This config isn't provided only
for the detection but for more verbose debug prints in general.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Improve the slots option handling
Fix and improve the slots option handling. The sound core tries to
find the slot with the given module name first and assign if it's
still available. If all pre-given slots are unavailable, then try
to find another free slot.
Also, when a module name begins with '!', it means the negative match:
the slot will be given for any modules but that one.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- alsa: add annotations to bitwise type snd_pcm_hw_param_t
Fully half of all alsa sparse warnings are from snd_pcm_hw_param_t degrading
to integer type, this goes a long way towards eliminating them.
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- [ALSA] Revert "alsa: add annotations to bitwise type snd_pcm_hw_param_t"
This reverts commit 36b34d2437104f323e09d7c6af6451d3c0b9c0cd.
From: Al Viro <viro@ZenIV.linux.org.uk>
WIW, *all* this stuff is not bitwise at all. For crying out loud, half
of these types are routinely used as array indices and loop variables...
If anything, we want a different set of allowed operations - subtraction
between elements of type (yielding integer), addition/subtraction of
integer types not bigger than ours (yielding our type), comparisons,
assignments (=, +=, -=, passing to function as argument, return from
function, initializers) and second/third arguments in ?:. With 0 *not*
being allowed as a constant of such type.
It's not bitwise; we may use the same infrastructure in sparse, but it
should be a separate class of types (__attribute__((affine))).
dma_addr_t is another candidate for the same treatment, but there we'll
need helpers for conversions to hw-acceptable form (dma_to_le32(), etc.)
and gradual conversion of drivers.
ALSA ones and pm mess are absolutely straightforward cases, though.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: remove CONFIG_KMOD from sound
A bunch of things in alsa depend on CONFIG_KMOD,
use CONFIG_MODULES instead where the dependency
is needed at all.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC PXA2xx Core

- soc - Support PXA3xx AC97
The PXA3xx does not support the use of interrupts during reset and access
to the GPIO status requires similar handling to that for PXA27x.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - pxa2xx-ac97 - Use __func__ not __FUNCTION__
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - pxa2xx-pcm - Fix checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- [ARM] 4834/3: Convert ASoC pxa2xx-ac97 driver to use the clock API
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Takashi Iwai <tiwai@suse.de>
Acked-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] pxa: separate GPIOs and their mode definitions to pxa2xx-gpio.h
two reasons:
1. GPIO namings and their mode definitions are conceptually not part
of the PXA register definitions
2. this is actually a temporary move in the transition of PXA2xx to
use MFP-alike APIs (as what PXA3xx is now doing), so that legacy
code will still work and new code can be added in step by step
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] 4977/2: soc - pxa2xx-ac97 - Add missing clk_enable()
Add missing clk_enable()
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: eric miao <eric.y.miao@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ALSA] Add EM-X270 ASoC driver
This patch adds ASoC support for EM-X270 machine.
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Pass the DAI being configured into CPU DAI probe and remove
This allows per-DAI initialisation to be done by the CPU DAI drivers.
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: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the PXA platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: pxa2xx-ac97: fix warning due to missing argument in fuction declaration
Signed-off-by: Dmitry Baryshkov <dbaryshkov@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>

Control Midlevel

- Move vmaster code to sound core
Move the codes for virtual master controls to sound core part so that
not only hda-intel drivers can use it.
- ALSA: make snd_ctl_elem_read() and snd_ctl_elem_write() static
snd_ctl_elem_read() and snd_ctl_elem_write() are no longer used by
any other drivers.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PCM Midlevel

- latency.c: use QoS infrastructure
Replace latency.c use with pm_qos_params use.
Signed-off-by: mark gross <mgross@linux.intel.com>
Cc: "John W. Linville" <linville@tuxdriver.com>
Cc: Len Brown <lenb@kernel.org>
Cc: Jaroslav Kysela <perex@suse.cz>
Cc: Takashi Iwai <tiwai@suse.de>
Cc: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- alsa: add annotations to bitwise type snd_pcm_hw_param_t
Fully half of all alsa sparse warnings are from snd_pcm_hw_param_t degrading
to integer type, this goes a long way towards eliminating them.
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- [ALSA] Revert "alsa: add annotations to bitwise type snd_pcm_hw_param_t"
This reverts commit 36b34d2437104f323e09d7c6af6451d3c0b9c0cd.
From: Al Viro <viro@ZenIV.linux.org.uk>
WIW, *all* this stuff is not bitwise at all. For crying out loud, half
of these types are routinely used as array indices and loop variables...
If anything, we want a different set of allowed operations - subtraction
between elements of type (yielding integer), addition/subtraction of
integer types not bigger than ours (yielding our type), comparisons,
assignments (=, +=, -=, passing to function as argument, return from
function, initializers) and second/third arguments in ?:. With 0 *not*
being allowed as a constant of such type.
It's not bitwise; we may use the same infrastructure in sparse, but it
should be a separate class of types (__attribute__((affine))).
dma_addr_t is another candidate for the same treatment, but there we'll
need helpers for conversions to hw-acceptable form (dma_to_le32(), etc.)
and gradual conversion of drivers.
ALSA ones and pm mess are absolutely straightforward cases, though.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Timer Midlevel

- Dont touch fs_struct in drivers
The sound drivers and the pnpbios core test for current->root != NULL. This
test seems to be unnecessary since we always have rootfs mounted before
initializing the drivers.
Signed-off-by: Jan Blunck <jblunck@suse.de>
Acked-by: Christoph Hellwig <hch@lst.de>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Jaroslav Kysela <perex@suse.cz>
Acked-by: Takashi Iwai <tiwai@suse.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- ALSA: remove CONFIG_KMOD from sound
A bunch of things in alsa depend on CONFIG_KMOD,
use CONFIG_MODULES instead where the dependency
is needed at all.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/mips/Makefile

- ALSA: ALSA driver for SGI HAL2 audio device
This patch adds a new ALSA driver for the audio device found inside
many older SGI workstation (Indy, Indigo2). The hardware uses a SGI
custom chip, which feeds two codec chips, an IEC chip and a synth chip.
Currently only one of the codecs is supported. This driver already has
the same functionality as the HAL2 OSS driver and will replace it.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ALSA driver for SGI O2 audio board
This patch adds a new ALSA driver for the audio device found inside
most of the SGI O2 workstation. The hardware uses a SGI custom chip,
which feeds a AD codec chip.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/soc/Makefile

- Davinci ASoC support
Add ASoC support for the TI Davinci SoC and the Davicni-EVM reference board.
It includes:
- ASoC Davinci DMA driver
- ASoC Davinci I2S (Davinci McBSP module based) driver
- ASoC Davinci-EVM reference board
Signed-off-by: Vladimir Barinov <vbarinov@ru.mvista.com>
- ASoC: Add drivers for the Texas Instruments OMAP processors
Add common OMAP ASoC drivers and machine driver for Nokia N810. Currently
supported features are:
- Covers OMAPs from 1510 to 2420
- Common DMA driver
- DAI link driver using McBSP port in I2S mode
- Basic machine driver for Nokia N810
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- [ALSA] Revised AT32 ASoC Patch
Attached is a revised version of my patch to add AT32 to ASoC. This cleans
most of the style issues associated with the previous patch. Also fixes an
issue with the playpaq_wm8510.c code depending on a non-released patch to th
AT32 portmux support.
Patch is against 2.6.24.3.atmel.3 kernel, the latest AVR32 kernel Atmel has
released, with the linux-2.6-asoc patches from when v2.6.24 was tagged also
applied.
[Fixed up minor checkpatch issues and updated for current kernels -- broonie]
Signed-off-by: Geoffrey Wossum <gwossum@acm.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Au12x0/Au1550 PSC Audio support
Audio for Au12x0/Au1550 PSCs in AC97 and I2S mode, for ASoC v1 framework.
- DBDMA, AC97 and I2S drivers
- sample AC97 machine code (Db1200)
Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/soc/codecs/Makefile

- ASoC: WM9713 driver
This patch adds an ASoC driver for the WM9713 AC97 codec.
Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- [ALSA] ASoC: Add UDA1380 driver
The UDA1380 codec is used by the HTC Magician and a number of Samsung
reference boards.
This driver has had a long out of tree history, having originally been
written by Giorgio Padrin and converted to ASoC by Richard Purdie.
Since conversion to ASoC most of the work on the driver has been done by
Philipp Zabel with some review and updates for new APIs by Liam Girdwood
and Mark Brown.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] ASoC: Add WM8510 driver
The WM8510 is a mono CODEC with speaker driver optimised for telephony
applications, featuring:
- 16/20/24/32 bit audio at data rates between 8kHz and 48kHz
- On-chip PLL
- Dual microphone inputs
This driver was originally written by Liam Girdwood with updates from
Brett Saunders, Geoffrey Wossum and myself.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Brett Saunders <breton.saunders@ntlworld.com>
Signed-off-by: Geoffrey Wossum <geoffrey@pager.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] ASoC: Add WM8990 driver
The WM8990 is a highly integrated ultra-low power hi-fi codec designed
for handsets rich in multimedia features such as mobile TV, digital
audio playback and gaming.
The bulk of this driver was written by Liam Girdwood with some
additional development and updates for new ASoC APIs by me.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Add AK4535 driver
The AK4535 codec is included in some HP iPAQ systems.
This driver was originally written by Richard Purdie and with some bug
fixes from Milan Plzik. While out of tree it has also had some
mechanical updates for new APIs and current best practices from Liam
Girdwood, Graeme Gregory and Mark Brown.
Signed-off-by: Richard Purdie <richard@openedhand.com>
Signed-off-by: Milan Plzik <milan.plzik@gmail.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: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/soc/pxa/Makefile

- [ALSA] Add EM-X270 ASoC driver
This patch adds ASoC support for EM-X270 machine.
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

AC97 Codec

- ak4531_codec was moved from pci/ac97/ to pci/
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- intel8x0 - Add support of 8 channel sound
Added the support of 8 channel sound for codecs that are known to work.
So far, only ALC850 is marked as a 8ch-support codec.
This fix is a modified version of the patch on ALSA BTS#2097 by
Martin Ellis:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2097
- sound: ac97_pcm.c fix shadowed variable warning
err is always assigned before it is used, no need to declare another
inside the if statement.
sound/pci/ac97/ac97_pcm.c:577:7: warning: symbol 'err' shadows an earlier one
sound/pci/ac97/ac97_pcm.c:572:6: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- add a private field for ac97-device drivers and let ucb1400 be its first user
From: Sebastian Siewior <bigeasy@linutronix.de>
Currently the UCB1400 driver discovers the interrupt via probing. This works
probably only on x86. This patch adds a private field to the ac97 struct
where the ac97 driver can deposit informations for the device driver that
serves a device which is attached to the ac97 bus.
This patch also converts the UCB1400 driver to use this information if
available.
Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de>
- ac97 - Add a workaround for broken quirk for VT1617A codec
On boards with VT1617A codec, the sound disappears suddenly.
This looks like a problem with HPE-bit control that is supposed to be
set in patch_vt1617a(). However, on such problematic hardwares, the
bit is actually reset mysteriously.
The patch adds a workaround for the wrong quirk.
- ac97 - Add virtual master control to VT1616/VT1617A codec.
Enable VMASTER for VT1616 / VT1617A codec.
Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com>
- [ALSA] ac97 - Fix ASUS A9T laptop output
ASUS A9T laptop uses line-out pin as the real front-output while
other devices use it as the surround.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Clean up sound/pci/ac97/Makefile
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Make ak4531 local to ens1370 driver
The ak4531 module is used only by ens1370 driver (and unlikely that
any other will use it ever). Let's make it local to ens1370.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Revert "add a private field for ac97-device drivers and let ucb1400 be its first user"
This reverts commit 61f7a0339c0a25b642f11436c25d16a923983864.
Altough I agree with this change, Takashi Iwai <tiwai@suse.de> NACked it.
- [ALSA] ac97: add support for wm9711 master left inv switch
This patch adds support for Master Left Inv Switch on wm9711.
At least required to drive the mono speaker on the PXA270 platfrom
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
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] ac97 - Fix power_save option value as time-out
The power_save option was set as boot although it was meant to be a
timeout value like the same option of snd-hda-intel originally.
Now fixed to the same style.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix AC97 power down
Some laptops don't like PR3 powerdown. Do PR3 powerdown only
for the real power-saving.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ac97 - fix patch_ucb1400 for proper resume
Replace 'snd_ac97_write' with snd_ac97_write_cache' in pacth_ucb1400 to allow
proper codec wakeup.
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AD1843 driver

- ALSA: ALSA driver for SGI O2 audio board
This patch adds a new ALSA driver for the audio device found inside
most of the SGI O2 workstation. The hardware uses a SGI custom chip,
which feeds a AD codec chip.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AD1889 driver

- Fix synchronize_irq() bugs, redundancies
free_irq() calls synchronize_irq() for you, so there is no need for
drivers to manually do the same thing (again). Thus, calls where
sync-irq immediately precedes free-irq can be simplified.
However, during this audit several bugs were noticed, where free-irq is
preceded by a "irq >= 0" check... but the sync-irq call is not covered
by the same check.
So, where sync-irq could not be eliminated completely, the missing check
was added.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
- sound: replace remaining __FUNCTION__ occurences
__FUNCTION__ is gcc-specific, use __func__
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

AK4114 receiver

- AK4114 - listing regs in proc
A simple patch for listing AK4114 regs in proc.
Signed-off-by: Pavel Hofman <dustin@seznam.cz>
- some fixes and cleanup for ICE1724 cards
* removing the hack with NON_AKM ak4xxx type
* support for card-specific flags in ak4114_stats
* definition of the flags for corresponding cards
Signed-off-by: Pavel Hofman <dustin@seznam.cz>

AK4531 codec

- Fix ak4531 build stub
ak4531 is moved to pci.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Make ak4531 local to ens1370 driver
The ak4531 module is used only by ens1370 driver (and unlikely that
any other will use it ever). Let's make it local to ens1370.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Remove duplicate MODULE_AUTHOR/DESCRIPTION/LICENCE from snd-ens1370.ko
But comment only extra code in ak4531_codec.c for history.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AK4XXX AD/DA converters

- some fixes and cleanup for ICE1724 cards
* removing the hack with NON_AKM ak4xxx type
* support for card-specific flags in ak4114_stats
* definition of the flags for corresponding cards
Signed-off-by: Pavel Hofman <dustin@seznam.cz>

ALI5451 driver

- sound: ali5451.c fix shadowed variable warnings
enable is used to test for whether or not spdif should be enabled,
change to spdif_enable.
sound/pci/ali5451/ali5451.c:1812:15: warning: symbol 'enable' shadows an earlier one
sound/pci/ali5451/ali5451.c:63:12: originally declared here
sound/pci/ali5451/ali5451.c:1840:27: warning: symbol 'enable' shadows an earlier one
sound/pci/ali5451/ali5451.c:63:12: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- Fix synchronize_irq() bugs, redundancies
free_irq() calls synchronize_irq() for you, so there is no need for
drivers to manually do the same thing (again). Thus, calls where
sync-irq immediately precedes free-irq can be simplified.
However, during this audit several bugs were noticed, where free-irq is
preceded by a "irq >= 0" check... but the sync-irq call is not covered
by the same check.
So, where sync-irq could not be eliminated completely, the missing check
was added.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

ALSA Version

- Added scripts/git-ok-commits and include/version.h to proper alsa-kernel.git sync
- ALSA: Release v1.0.17rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Release 1.0.17rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Release v1.0.17rc3
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALSA sequencer

- Dont touch fs_struct in drivers
The sound drivers and the pnpbios core test for current->root != NULL. This
test seems to be unnecessary since we always have rootfs mounted before
initializing the drivers.
Signed-off-by: Jan Blunck <jblunck@suse.de>
Acked-by: Christoph Hellwig <hch@lst.de>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Jaroslav Kysela <perex@suse.cz>
Acked-by: Takashi Iwai <tiwai@suse.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- ALSA: remove CONFIG_KMOD from sound
A bunch of things in alsa depend on CONFIG_KMOD,
use CONFIG_MODULES instead where the dependency
is needed at all.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALSA<-OSS sequencer

- seq-oss - Remove invalid BUG()
Removed invalid BUG() - the driver should handle the error case properly
rather than issuing BUG().

ARM

- Convert to menuconfig
Convert menu in Kconfig files to menuconfig, as well as in kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: Convert to menuconfig
Convert menu in sound Kconfig files to menuconfig and if.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

ARM PXA2XX driver

- sound: fix platform driver hotplug/coldplug
Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is
prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable sound
platform drivers, to re-enable auto loading.
[dbrownell@users.sourceforge.net: more drivers, registration fixes]
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- pxa2xx-ac97: Support PXA3xx AC97
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- [ARM] 4833/3: Convert non-SoC PXA2xx AC97 driver to clock API
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Takashi Iwai <tiwai@suse.de>
Acked-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] pxa: separate GPIOs and their mode definitions to pxa2xx-gpio.h
two reasons:
1. GPIO namings and their mode definitions are conceptually not part
of the PXA register definitions
2. this is actually a temporary move in the transition of PXA2xx to
use MFP-alike APIs (as what PXA3xx is now doing), so that legacy
code will still work and new code can be added in step by step
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- sound: replace remaining __FUNCTION__ occurences
__FUNCTION__ is gcc-specific, use __func__
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

ATIIXP driver

- Fix synchronize_irq() bugs, redundancies
free_irq() calls synchronize_irq() for you, so there is no need for
drivers to manually do the same thing (again). Thus, calls where
sync-irq immediately precedes free-irq can be simplified.
However, during this audit several bugs were noticed, where free-irq is
preceded by a "irq >= 0" check... but the sync-irq call is not covered
by the same check.
So, where sync-irq could not be eliminated completely, the missing check
was added.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

AZT3328 driver

- PCI168 snd-azt3328 Linux driver: another huge update
- figured out "Digital(ly) Enhanced Game Port" functionality,
implemented support for it (eliminating gameport polling overhead)
- removed optional joystick activation, gameport now enabled unconditionally,
since we now support it via the PCI I/O space, not via conflict-prone
legacy I/O (which I was thus able to DISABLE now)!
- fix playback bug (a muted wave output would get unmuted upon start of
playback, of course this is not what we want, thus remember mute state)
- implement partial power management: when idle, lower clock rate and disable
codec (reduced noise!), and disable gameport circuit when unused
- instantiate OPL3 timer, too
- much better implementation of snd_azf3328_mixer_write_volume_gradually()
- slightly optimized interrupt handling
- lots of cleanup
This time, I also found a way to verify proper OPL3 operation
via MIDI file playback (emulation via synth hardware).
Signed-off-by: Andreas Mohr <andi@lisas.de>
- [ALSA] PCI168 snd-azt3328 Linux driver: another huge update
- figured out 'Digital(ly) Enhanced Game Port' functionality,
implemented support for it (eliminating gameport polling overhead)
- removed optional joystick activation, gameport now enabled unconditionally,
since we now support it via the PCI I/O space, not via conflict-prone
legacy I/O (which I was thus able to DISABLE now)!
- fix playback bug (a muted wave output would get unmuted upon start of
playback, of course this is not what we want, thus remember mute state)
- implement partial power management: when idle, lower clock rate and disable
codec (reduced noise!), and disable gameport circuit when unused
- instantiate OPL3 timer, too
- much better implementation of snd_azf3328_mixer_write_volume_gradually()
- slightly optimized interrupt handling
- lots of cleanup
This time, I also found a way to verify proper OPL3 operation
via MIDI file playback (emulation via synth hardware).
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: PCI168 snd-azt3328: some more fixups
- fix problem with codec register 0x6a being write-only
by adding a software shadow register
(caused annoying noise after module loading due to _toggling_
between gameport and audio bits instead of configuring them properly)
- rename several "Wave" mixer controls to "PCM", since this is
what Wine and several other apps are looking for (IOW, _requiring_)
and this is what AC97 specs use as naming, too,
thus I'd guess it's what these controls are
- cleanup, small optimizations
Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Apple Onboard Audio driver

- sound: Convert to menuconfig
Convert menu in sound Kconfig files to menuconfig and if.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Asihpi driver

- asihpi - Fix section mismatch
Fix a section mismatch error in snd_asihpi_bind().
- asihpi: minor checkpatch cleanups
A few minor checkpatch cleanups. Make hpi ioctl cmd unique.
Signed-off-by: Eliot Blennerhassett <linux@audioscience.com>
- asihpi: Add new HPI apis for sampleclock, tuner
Signed-off-by: Eliot Blennerhassett <linux@audioscience.com>
- asihpi: Remove HPI4000
Remove HPI4000
Signed-off-by: Eliot Blennerhassett <linux@audioscience.com>
- asihpi: replace volatile with barriers
Replace volatile with barriers where required.
Other minor cleanups.
Signed-off-by: Eliot Blennerhassett <linux@audioscience.com>
- asihpi: add hwdep (experimental)
Add hpi ioctl via hwdep (experimental, disabled by default).
Adjust sampleclock control to use new hpi apis.
Signed-off-by: Eliot Blennerhassett <linux@audioscience.com
- asihpi - new checkpatch = more changes
* HPI version 3.09.15
* Updating to latest version of checkpatch resulted in some more warnings to
clean up.
* A few whitespace cleanups
* Removed DBG_TXT and DBG_CHAR macros
Signed-off-by: Eliot Blennerhasssett <linux@audioscience.com>
- asihpi - replace old class_device_*()
Fix build with 2.6.26-rc1 kernel. Old class_device_*() are replaced with
normal device_*().
- asihpi - Common init files for HPI
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Fix sampleclock source get. Fix volume control dB range.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Replace hpimod.c with hpioctl.c
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Include pci table again, avoiding warning about extern.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Log warning if DSP code version doesn't match driver.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Version 3.10.00. Add new functions for HD radio tuner, and for firmware debug.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Support variable size cached control information.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Checkpatch tweaks
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi: Meter control return peak.
Use Peak meter instead of Rms meter because it is supported by all card
families.
Minor checkpatch cleanups.
Signed-off-by: Eliot Blennerhassett <linux@audioscience.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- asihpi: Disable S24_3LE incompatible with 2^N buffer size.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- asihpi - Add missing GFP_KERNEL to allocator
dma_alloc_coherent() should be called not only with GFP_DMA* but
together with GFP_KERNEL.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - V3.10.1. Add hpi_RDS enum.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Regularise control creation
Regularise control creation. Add readonly AESEBU status control.
Fix ChannelMode enumeration.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - Move mutex out from subsystem message
Subsystem message now outside adapter#0 mutex.
Fixes segfault when no adapter#0 present.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- asihpi - HPI v3.10.03. Formatting tweaks.
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Atmel AT73C213 DAC driver

- Add __devinit macro to at73c213 sound driver probe functions
This patch adds __devinit to the functions used when probing. Will also reduce
the memory footprint a bit if CONFIG_HOTPLUG is not enabled.
Signed-off-by: Hans-Christian Egtvedt <hcegtvedt@atmel.com>
- at73c213: fix error checking for clk API
The clk_round_rate() and clk_set_rate() will return int, so not store thier
return value to unsigned long variable. This bug hides real error on these
API.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- at73c213: monaural support
Add support for monaural playback to at73c213 driver. The sound will be apear
on L-channel. Tested on AT91SAM9260-EK.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- at73c213: remove redundant private_free routine
snd_pcm_lib_preallocate_free_for_all() is called from snd_pcm_free() just
after calling the private_free routine. So there should be no need to call
it in driver's private_free routine.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- at73c213: fix DMA size at the end of DMA buffer
The interrupt handler always provide runtime->period_size data, but it should
provide additional residual data when the pointer back to zero.
This patch fixes periodic click noise when runtime->buffer_size was not
multiple of runtime->period_size.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- Revert "at73c213: fix DMA size at the end of DMA buffer"
Revert the patch "at73c213: fix DMA size at the end of DMA buffer".
With the next patch to use the hw_constraint, this isn't needed any more.
- at73c213: Add constraints for periods value
The interrupt handler always provide runtime->period_size data, so it
works correctly only if buffer_size was a multiple of period_size.
This patch fixes periodic click noise.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>

Au12x0/Au1550 PSC ASoC

- Add soc/au1x build stub
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Au12x0/Au1550 PSC Audio support
Audio for Au12x0/Au1550 PSCs in AC97 and I2S mode, for ASoC v1 framework.
- DBDMA, AC97 and I2S drivers
- sample AC97 machine code (Db1200)
Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

BT87x driver

- bt87X: fix freeing of shared interrupt
Call free_irq() after iounmap() because other devices could trigger our
shared interrupt handler.

CA0106 driver

- ca0106 - Add master volume controls
Added master volume and switch controls for ca0106 using vmaster.
- sound: ca0106_main.c fix shadowed variable warnings
change to intr_enable as per the two functions it is defined in.
sound/pci/ca0106/ca0106_main.c:438:15: warning: symbol 'enable' shadows an earlier one
sound/pci/ca0106/ca0106_main.c:159:12: originally declared here
sound/pci/ca0106/ca0106_main.c:449:15: warning: symbol 'enable' shadows an earlier one
sound/pci/ca0106/ca0106_main.c:159:12: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- sound: ca0106_mixer.c fix shadowed variable warnings
Change the variable err to _err within the ADD_CTLS macro to avoid
shadowing the local variable.
sound/pci/ca0106/ca0106_mixer.c:710:2: warning: symbol 'err' shadows an earlier one
sound/pci/ca0106/ca0106_mixer.c:663:6: originally declared here
sound/pci/ca0106/ca0106_mixer.c:712:3: warning: symbol 'err' shadows an earlier one
sound/pci/ca0106/ca0106_mixer.c:663:6: originally declared here
sound/pci/ca0106/ca0106_mixer.c:721:3: warning: symbol 'err' shadows an earlier one
sound/pci/ca0106/ca0106_mixer.c:663:6: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- Fix possible races at free_irq in PCI drivers
The irq handler of PCI drivers must be released before releasing other
resources since the handler for a shared irq can be still called and
may access the freed resource again.
- ALSA: ca0106 - Add entry for another MSI K8N Diamond MB
Added an entry for another MSI K8N Diamond mobo with SSID 1102:1009.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CMI8788 (Oxygen) driver

- virtuoso: move PCM1796 symbols to a header file
Move the PCM1796 register symbol definitions to their own header file.
- virtuoso: separate D2/D2X init functions
Use separate model structures for the D2 and D2X so that the init
function does not have to check for the model again.
- virtuoso: fix build stub
Add the build stub for the virtuoso.c file.
- oxygen: add owner field
I forgot to set the module owner for the HiFier/Xonar models.
- sound: virtuoso.c fix shadowed variable warning
Use priv_idx as an identifier.
sound/pci/oxygen/virtuoso.c:277:15: warning: symbol 'index' shadows an earlier one
sound/pci/oxygen/virtuoso.c:56:12: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- oxygen: move WM8785 symbols to a header file
Move the WM8786 register symbol definitions to their own header file.
- virtuoso: move PCM1796 symbols to a header file
Move the PCM1796 register symbol definitions to their own header file.
- oxygen: add monitor controls
Add controls to enable monitoring of the analog and digital inputs.
To allow monitoring after loading the driver when nothing has been
played back or recorded yet, the I2S input and outputs are initialized
to a valid configuration.
- oxygen: change model-specific PCM device configuration
When specifying which PCM devices to use, model drivers now use flags
that also specify the routing between PCM devices and DMA channels
instead of just DMA channel bits. This simplifies some code that checks
for these flags.
- oxygen: make SPI/2-wire configuration model-specific
Allow the model drivers to specify if the codec communication goes over
SPI or a 2-wire bus.
- oxygen: move MIDI flag to model struct
Put the flag that enables the MIDI port into the model structure instead
of passing it as a separate parameter to oxygen_pci_probe().
- oxygen: disable clock of unused I2S inputs
Disable the master clock outputs of any unused I2S inputs.
- oxygen: fix line-in recording selection (now for real)
On C-Media cards, the GPIO pin 0 of the CM9780 must be handled exactly
like on Xonar cards, so move the Xonar code to the common mixer code.
- oxygen: add I2C support
Add a function to write I2C registers.
- virtuoso: separate D2/D2X init functions
Use separate model structures for the D2 and D2X so that the init
function does not have to check for the model again.
- virtuoso: allow both CS5381 and CS5361
Rename all CS5381 symbols to CS53x1 because they can also be used for
Xonar models with a CS5361.
- virtuoso: move some code to xonar_common_init()
Move the code that is common to all Xonar models to a separate function,
and make it more generic in preparation for another model.
- virtuoso: set PCM1796 oversampling rate
When playing data at 96 kHz or higher, reduce the DAC oversampling rate
to 32.
- virtuoso: change card short name
Change the card short name to show to show the card name instead of the
chip name.
- virtuoso: fix typo
Fix a (fortunately harmless) typo.
- virtuoso: add Xonar DX support
Add support for the Asus Xonar DX.
- virtuoso: correctly switch input jack on Xonar DX
When selecting the capture source on the Xonar DX, the input jack must
be routed to either the line input or the microphone input by setting a
GPIO pin. This requires an additional callback so that the model driver
can hook into the toggling of AC97 switches.
- oxygen: use SPDIF input only if present
If the card model does not have a digital input or an AC97 codec,
disable the respective interrupt and mixer controls.
- virtuoso: add GPIO 1 mixer control
Add a mixer control for switching whatever it is that is connected to
GPIO pin 1 on the Xonar DX.
- virtuoso: initialize two-wire control register
On the Xonar DX, initialize all bits of the two-wire control register.
- virtuoso: fix DX front panel I/O
Fix the GPIO 1 mixer control to enable I/O through the front panel
connector of the Xonar DX.
- hifier: remove empty hifier_mixer_init()
The empty hifier_mixer_init() function is useless; remove it.
- oxygen: generalize handling of DAC volume limits
Add fields for the DAC volume limits to the module structure so that
model drivers do not need to install their own control info handlers.
- oxygen: mute by default
Initialize the playback volume controls as being muted and having
minimal volume.
- oxygen: generalize DAC volume TLV handling
Add a pointer for DAC volume TLV data to the model structure so that the
model driver do not need to manually assign it in their control filter.
- oxygen: fix version in MODULE_LICENSE
Adjust the MODULE_LICENSE strings to properly reflect the actual license.
- oxygen: add symbol for I/O space size
Remove another magic number - add a symbol for the size of the PCI I/O
range.
- oxygen: save register writes
Save the written values of all CMI8788 and AC97 registers and of some of
the DAC/ADC registers so that it is possible to restore the register
state later.
- oxygen: simplify DAC volume initialization
When initializing the DAC volume registers, we can just use the generic
volume update functions instead of setting the registers manually.
- oxygen: separate out hardware initialization code
Create separate functions for the code that initializes the hardware, as
opposed to initializing internal driver state, so that they can be
reused for resume support.
- virtuoso: add xonar_enable_output()
Move the setting of the output enable GPIO bit to a separate function.
- oxygen: add PM support
Add suspend/resume support.
- oxygen: add symbols for buffer/period size constraints
Introduce symbols for the buffer/period size constraints so that their
limits and relationships become clearer.
- virtuoso: restrict period time to less than 10 s
Add a constraint for the period time so that there are less than ten
seconds between interrupts so that ALSA does not assume that the device
is dead.
- sound: oxygen: fix NULL pointer dereference when loading snd-oxygen
Check that model->control_filter is set before trying to call it.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>

CMIPCI driver

- sound: cmipci.c fix shadowed variable warning
A temporary variable for each mixer element is used in an initialization
loop, use the name elem_id.
sound/pci/cmipci.c:2747:26: warning: symbol 'id' shadows an earlier one
sound/pci/cmipci.c:56:13: originally declared here
[tiwai - fixed a coding style issue as well]
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

CREDITS file

- 2.6 kernel sync
- Do not track mainstream files outside ALSA tree - use alsa-kernel.git repo
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

CS4231 driver

- ALSA: opti93x: add support for Opti93x codec in cs4231-lib
This patch adds support for WSS compatible Opti93x
codec to the cs4231-lib.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Tested-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

- Fix possible races at free_irq in PCI drivers
The irq handler of PCI drivers must be released before releasing other
resources since the handler for a shared irq can be still called and
may access the freed resource again.

CX88 driver

- Fix synchronize_irq() bugs, redundancies
free_irq() calls synchronize_irq() for you, so there is no need for
drivers to manually do the same thing (again). Thus, calls where
sync-irq immediately precedes free-irq can be simplified.
However, during this audit several bugs were noticed, where free-irq is
preceded by a "irq >= 0" check... but the sync-irq call is not covered
by the same check.
So, where sync-irq could not be eliminated completely, the missing check
was added.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

Common EMU synth

- emux midi synthesizer doesn't honor SOFT_PEDAL-release event
When the hardware wavetable synthesizer of an Creative SB Audigy or SB
Live! card (with emu10k chip) receives the MIDI SOFT_PEADAL-press event
(?? 67 127) the appropriate voice is attenuted. Unfortunately when the
pedal is released (event ?? 67 0) the voice does not get it's original
volume again.
Boolean MIDI controls should interpret 0..63 as false and 64..127 as true.
Thanks to Clemens Ladisch for review and correction.
Original patch from "Uwe Kraeger" <uwe_debbug@arcor.de>
Submitted to http://bugs.debian.org/474312
Signed-off-by: maximilian attems <max@stro.at>
Cc: uwe_debbug@arcor.de
Cc: Clemens Ladisch <clemens@ladisch.de>

Conexant Riptide driver

- sound: riptide.c fix shadowed variable warnings
In both cases we are passing around the substream number, use
sub_num for this.
sound/pci/riptide/riptide.c:1633:6: warning: symbol 'index' shadows an earlier one
sound/pci/riptide/riptide.c:121:12: originally declared here
sound/pci/riptide/riptide.c:1673:6: warning: symbol 'index' shadows an earlier one
sound/pci/riptide/riptide.c:121:12: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

Digigram PCXHR driver

- sound: pcxhr_core.c fix shadowed variable warning
Inner loop redeclares err with u32 rather than int, stupid fix here
is to change the inner err to err2.
sound/pci/pcxhr/pcxhr_core.c:1008:8: warning: symbol 'err' shadows an earlier one
sound/pci/pcxhr/pcxhr_core.c:983:6: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- sound/pci: remove unused variable
The variable is_capture is initialized but never used otherwise.
The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)
// <smpl>
@@
type T;
identifier i;
constant C;
@@
(
extern T i;
|
- T i;
<+... when != i
- i = C;
...+>
)
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
- sound/pci/pcxhr/pcxhr_core.c: fix printk warning
sound/pci/pcxhr/pcxhr_core.c: In function `pcxhr_set_pipe_state':
sound/pci/pcxhr/pcxhr_core.c:899: warning: long int format, different type arg (arg 4)
suseconds_t is int on sparc64.
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- sound/pci/pcxhr/pcxhr.c: fix warnings
sparc64:
sound/pci/pcxhr/pcxhr.c: In function `pcxhr_update_r_buffer':
sound/pci/pcxhr/pcxhr.c:459: warning: cast to pointer from integer of different size
sound/pci/pcxhr/pcxhr.c: In function `pcxhr_trigger_tasklet':
sound/pci/pcxhr/pcxhr.c:628: warning: long int format, different type arg (arg 4)
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Digigram VX Pocket driver

- ALSA: Fix a const to non-const assignment in the Digigram VXpocket sound driver
Fix a const to non-const pointer assignment warning in the Digigram VXpocket
sound driver.
This may be due to patch 0aa4937648b91e9e6d3879b2cbeaa5f0c9863ac0.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Digigram VX core

- configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
Also all files using config.h directly were modified to use autoconf.h
conditionaly.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: Fix a const pointer usage warning in the Digigram VX soundcard driver
Fix a const pointer usage warning in the Digigram VX 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: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Documentation

- Add -c option to setup-alsa-kernel
Added -c option to setup-alsa-kernel. With this option, the files are
copied instead of symlinks from the kernel tree so that it can be easily
archived.
Also, some files for kernel doc are now stored in utils directory.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- hda-codec - Add support of AD1883/1884A/1984A/1984B
Added the support of new AD codecs: AD1883, AD1884A, AD1984A and AD1984B.
These are almost compatible except for additional digital pins, etc.
- hda-codec - Add model=mobile for AD1884A & co
Added the new model mobile for AD1884A and compatible codecs.
It's a reduced version of model=laptop.
- Add description of aw2 driver
Added a brief description of aw2 driver to ALSA-Configuration.txt.
- hda-codec - Add missing descriptions for STAC codec models
Added the missing descriptions for STAC codec models.
- pcsp: add description
update ALSA-Configuration.txt
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- Revert "at73c213: fix DMA size at the end of DMA buffer"
Revert the patch "at73c213: fix DMA size at the end of DMA buffer".
With the next patch to use the hw_constraint, this isn't needed any more.
- hda-codec - Fix spekaer output of Panasonic CF-74
Add a new model "panasonic" for Panasonic CF-74 with STAC9200 codec
to fix the speaker output.
- hda-codec - Support of Lenovo Thinkpad X300
Added the model thinkpad for Lenovo Thinkpad X300 with AD1984A codec.
- hda-codec - Remove now uneeded 6stack-hp model from ALC883
After DAC assignment fix in ALC883, the 6stack-hp model is now the same
as 6stack-dig. So just remove 6stack-hp model and replace its use with
6stack-dig.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Add missing models in ALSA-Configuration.txt
- hda-codec - Support mic automute for Clevo M720R/SR
Add support for mic automute in clevo-m720r ALC883 model, and rename it
to more generic clevo-m720. Also change model entry in ALSA-Configuration.txt
accordingly.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-intel: Add Quanta IL1 ALC267 model
This adds support for Quanta IL1 mini-notebook to alsa, defining a new model
for it. It comes with an ALC267 codec chip. Some notes about this model:
* In headphone automute, I use AC_VERB_SET_PIN_WIDGET_CONTROL instead of common
amp mute, to avoid conflict with mixer switch (mixer and automute use the
same nid).
* The only connected capture sources in the hardware are the internal mic and
external mic jack. So instead of using an input source selector like on other
ALC268 models, the mic automute automatically switch between captures.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda - revert wrongly committed patch
A work-in-progress patch was mistakenly committed together with another
patch. Reverged that part now.
- hda - Add support of AD1989A/AD1989B
Added the support of AD1989A and AD1989B codecs.
These codecs can have multiple SPDIF devices, but currently we handle
only one SPDIF. If any real devices with two SPDIF interfaces (likely
one for SPDIF and one for HDMI), we'll fix this rightly.
Otherwise, these codecs are pretty similar with AD1988.
- hda - Add support of Medion RIM 2150
Added the support of Medion RIM 2150 laptop with ALC880 codec.
ALSA bug#3708:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3708
- [ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE to
represent its meaning more better. This config isn't provided only
for the detection but for more verbose debug prints in general.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Add ALC663 support
Added the support of ALC663 codec, including specific models for
ASUS M51VA, ASUS G71V, ASUS H13 and ASUS G50V.
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Improve the slots option handling
Fix and improve the slots option handling. The sound core tries to
find the slot with the given module name first and assign if it's
still available. If all pre-given slots are unavailable, then try
to find another free slot.
Also, when a module name begins with '!', it means the negative match:
the slot will be given for any modules but that one.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - remove position_fix=3
position_fix=3 is the option to correct the DMA position with the
FIFO size. But, it never worked correctly, and we have now more other
workarounds for the DMA position fixes. Thus better to remove it.
Also, change POS_FIX_NONE to POS_FIX_LPIB to represent its real role
better.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add description of bdl_pos_adj option
Added a brief description of the new bdl_pos_adj option to
ALSA-Configuration.txt.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Dreamcast AICA sound (pcm) driver

- Remove duplicated unlikely() in IS_ERR()
Some drivers have duplicated unlikely() macros. IS_ERR() already has
unlikely() in itself.
This patch cleans up such pointless code.
Signed-off-by: Hirofumi Nakagawa <hnakagawa@miraclelinux.com>

EMU10K1/EMU10K2 driver

- sound: emuproc.c fix signedness warning
Reading regs from the fpga into an int instead of a u32, trivial
fix.
sound/pci/emu10k1/emuproc.c:422:34: warning: incorrect type in argument 3 (different signedness)
sound/pci/emu10k1/emuproc.c:422:34: expected unsigned int [usertype] *value
sound/pci/emu10k1/emuproc.c:422:34: got int *<noident>
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- sound: emu10k1x.c fix shadowed variable warnings
enable in these contexts refers specifically to intr enable, as
per the two functions it is found in. Use intr_enable instead.
sound/pci/emu10k1/emu10k1x.c:330:15: warning: symbol 'enable' shadows an earlier one
sound/pci/emu10k1/emu10k1x.c:53:12: originally declared here
sound/pci/emu10k1/emu10k1x.c:341:15: warning: symbol 'enable' shadows an earlier one
sound/pci/emu10k1/emu10k1x.c:53:12: originally declared here
instead of shadowing, use cap_voice as we test for the capture
voice in this statement.
sound/pci/emu10k1/emu10k1x.c:798:25: warning: symbol 'pvoice' shadows an earlier one
sound/pci/emu10k1/emu10k1x.c:787:24: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- Fix possible races at free_irq in PCI drivers
The irq handler of PCI drivers must be released before releasing other
resources since the handler for a shared irq can be still called and
may access the freed resource again.
- [ALSA] emu10k1 - simplify page allocation for synth
Simplify the page allocation of emu10k1 driver for emux synth support.
Since these pages aren't be necessarily coherent, we can avoid
expensive DMA-coherent routines.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] emu10k1 - Fix inverted Analog/Digital mixer switch on Audigy2
On Audigy2 Platinum, the Analog/Digital mixer switch is inverted.
https://bugzilla.novell.com/show_bug.cgi?id=396204
The patch adds a simple workaround.
There might be another device requiring a similar fix, too (or fix for
audigy2 generically), but right now I fix only the known broken one.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: emu10k1 - fix system hang with Audigy2 ZS Notebook PCMCIA card
When the Linux kernel is compiled with CONFIG_DEBUG_SHIRQ=y,
the Soundblaster Audigy2 ZS Notebook PCMCIA card causes the
system hang during boot (udev stage) or when the card is hot-plug.
The CONFIG_DEBUG_SHIRQ flag is by default 'y' with all Fedora
kernels since 2.6.23. The problem was reported as
https://bugzilla.redhat.com/show_bug.cgi?id=326411
The issue was hunted down to the snd_emu10k1_create() routine:
/* pseudo-code */
snd_emu10k1_create(...) {
...
request_irq(... IRQF_SHARED ...) {
register the irq handler
#ifdef CONFIG_DEBUG_SHIRQ
call the irq handler: snd_emu10k1_interrupt() {
poll I/O port // <---- !! system hangs
...
}
#endif
}
...
snd_emu10k1_cardbus_init(...) {
initialize I/O ports
}
...
}
The early access to I/O port in the interrupt handler causes
the freeze. Obviously it is necessary to init the I/O ports
before accessing them. This patch moves the registration of
the irq handler after the initialization of the I/O ports.
Signed-off-by: Jaroslav Franek <jarin.franek@post.cz>
Acked-by: James Courtier-Dutton <James@superbug.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: emu10k1 - Fix page allocation with GFP_DMA
Added the missing GFP_ATOMIC to page_alloc when called with GFP_DMA.
GFP_KERNEL often results in stalls for ZONE_DMA, so GFP_ATOMIC is more
prgmatic.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: emu10k1 - fix possible memory leak in memory allocation routines
The leak was introduced in "[ALSA] emu10k1 - simplify page allocation
for synth" commit.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: emu10k1 - simplify the last fix
Clean up the previous commit for fixing memory leaks.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

ENS1370/1+ driver

- sound: ens1370.c fix shadowed variable warning
index is incremented only when AC97_EI_SPDIF and then assigned to
the index field. Change the temporary name to is_spdif.
sound/pci/ens1370.c:1638:10: warning: symbol 'index' shadows an earlier one
sound/pci/ens1370.c:84:12: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

ES1968 driver

- sound: es1968.c fox shadowed variable warning
id is used when initializing the mixer elements, use elem_id here
instead.
sound/pci/es1968.c:1963:25: warning: symbol 'id' shadows an earlier one
sound/pci/es1968.c:129:13: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- es1968: fix sleep-while-holding-lock bug
snd_es1968_ac97_read() calls snd_es1968_ac97_wait() first outside a locked
area, and later, while holding a lock.
snd_es1968_ac97_wait() has a polling loop with a cond_resched() inside it..
which sleeps, so the second call is invalid.
This patch adds a version of the wait function that just pure polls. While
this is not very elegant in principle, it's very likely the easiest thing to
do here, we already checked if the chip was ready (while yielding) just
before, so it is very unlikely to take a long time here.
[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
- es1968: fix jitter on some maestro cards
This patch suppresses jitter on several Maestro cards in stereo mode (ALSA of
course).
The patch is also incorporated in the *BSD drivers where I "ported" it from.
Without this patch most of the stereo audio gets out of sync and really
distorted (oss-emulation with mplayer at 48000khz worked somehow).
From: Andreas Mueller <andreas@stapelspeicher.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- es1968 - fix coding style in the last patch
WARNING: braces {} are not necessary for single statement blocks
#40: FILE: sound/pci/es1968.c:1831:
+ if (diff > 1) {
+ __maestro_write(chip, IDR0_DATA_PORT, cp1);
+ }
total: 0 errors, 1 warnings, 35 lines checked
./patches/es1968-fix-jitter-on-some-maestro-cards.patch has style problems, please review. If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
Please run checkpatch prior to sending patches
Cc: Andreas Mueller <andreas@stapelspeicher.org>
Tested-by: Rene Herman <rene.herman@keyaccess.nl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Echoaudio driver

- Fix possible races at free_irq in PCI drivers
The irq handler of PCI drivers must be released before releasing other
resources since the handler for a shared irq can be still called and
may access the freed resource again.

Emagic Audiowerk 2

- Add build stub for aw2 driver
- aw2: fix build stubs
Fix the aw2 build stubs to compile with older kernels.
- Emagic Audiowerk 2 ALSA driver.
Signed-off-by: Cedric Bregardis <cedric.bregardis@free.fr>
Signed-off-by: Jean-Christian Hassler <jhassler@free.fr>
- aw2 - Add missing module parameters
Added the missing declarations for module parameters.
- aw2 - Remove endian dependency
Removed unnecessary dependency on the little-endianess.
- aw2 - Rename aw2-tsl.h to aw2-tsl.c
aw2-tsl.h should be rather a C file to be included since it's referred
only in aw2-saa6146.c and includes a table data.
- sound/pci/aw2/aw2-alsa.c needs dma-mapping.h
sparc32:
sound/pci/aw2/aw2-alsa.c: In function 'snd_aw2_create':
sound/pci/aw2/aw2-alsa.c:282: error: 'DMA_32BIT_MASK' undeclared (first use in this function)
sound/pci/aw2/aw2-alsa.c:282: error: (Each undeclared identifier is reported only once
sound/pci/aw2/aw2-alsa.c:282: error: for each function it appears in.)
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- aw2: remove duplicate MODULE_LICENSE
"GPL 2" does not mean that there have to be two MODULE_LICENSE("GPL")
entries.  ;-)
- ALSA: aw2 - Fix Oops at initialization
The irq handler may be called before the proper initialization of hardware.
Call snd_aw2_saa7146_setup() before the irq handler registration.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

FM801 driver

- sound: fm801.c fix shadowed variable warning
id was only used as a counter in a for loop, move the declaration
to where it is used and change it to i.
sound/pci/fm801.c:1288:6: warning: symbol 'id' shadows an earlier one
sound/pci/fm801.c:51:13: originally declared here
[tiwai - fixed a coding style issue as well]
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

Generic drivers

- pcsp driver update
- Update help text
- Update copyrights
- Fix some warnings
- Stop depending on EXPERIMENTAL as the driver was tested for long enough.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- pcsp - Comply to Lindent & checkpatch.pl
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- improved snd-aloop quality when using certain samplerates and kernel HZ
after using a HZ:=300 kernel for some time now and needing snd-aloop again i
found out, that i either had to correct the hardcoded number, or fix the
problem permanently, which couses stuttering and other problems.
i also removed the SYNC on start code, not just because its more or less
useless and brings problems, but ive got a nice idea how to fix this
overrun/underrun problem in a much nicer way.
Signed-off-by: Ahmet İnan <ainan <at> mathematik.uni-freiburg.de>
- aloop - more cleanups
removed some unneeded stuff.
Signed-off-by: Ahmet İnan <ainan <at> mathematik.uni-freiburg.de>
- pcsp - Check return value of pcspkr_input_init()
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- aloop - even more cleanups
removed my old debugging macros.
renamed variables to make it more clear.
Signed-off-by: Ahmet İnan <ainan <at> mathematik.uni-freiburg.de>
- pcsp: use platform_driver API
Use platform_driver API, suspend/resume now works.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- pcsp: Add NForce workaround
Implemented NForce workaround
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- improved snd-aloop quality when using certain samplerates and kernel HZ
when the time interval for a period is smaller than kernel HZ, then
snd-aloop and snd-dummy cannot call snd_pcm_period_elapsed as fast enough
annymore. this happens for example with games. but the app still needs to
see, that the buffer actually did go further, which is provided by these
patches.
Signed-off-by: Ahmet İnan <ainan <at> mathematik.uni-freiburg.de>
- Move pcsp driver to alsa-kernel tree
- snd-aloop - more cleanups
moved module parameter pcm_substreams range check code around, to prevent
catastrophe.
removed bogus module parameter pcm_devs code - aloop creates only one pair
of devices.
allowed float_le, too.
removed obsolete code.
Signed-off-by: Ahmet İnan <ainan <at> mathematik.uni-freiburg.de>
- Remove old Kconfig entry for pcsp
- Convert to menuconfig
Convert menu in Kconfig files to menuconfig, as well as in kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- snd-dummy - improved timing, silence on prepare
Signed-off-by: Ahmet İnan <ainan <at> mathematik.uni-freiburg.de>
- snd-dummy - better realtime app support
when the time interval for a period is smaller than kernel HZ, then
snd-aloop and snd-dummy cannot call snd_pcm_period_elapsed as fast enough
annymore. this happens for example with games. but the app still needs to
see, that the buffer actually did go further, which is provided by these
patches.
Signed-off-by: Ahmet İnan <ainan <at> mathematik.uni-freiburg.de>
- Add PC-speaker sound driver
Added PC-speaker sound driver (snd-pcsp).
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- pcsp - clean ups
- make pcsp_start_timer_tasklet static
- remove redundant includes. <asm/i8253.h> is not available on all platforms.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- pcsp: improve "enable" option handling
Simplify init code.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- pcsp: locking fix
pcsp: locking fix.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- [ML403-AC97CR] Remove duplicate snd_card_set_dev()
We want to have snd_card_set_dev() in _probe(), but not a second one in
snd_ml403_ac97cr_create().
Signed-off-by: Joachim Foerster <JOFT@gmx.de>
- sound/drivers/pcsp/pcsp.c build fix
sound/drivers/pcsp/pcsp.c: In function 'snd_pcsp_create':
sound/drivers/pcsp/pcsp.c:54: error: 'loops_per_jiffy' undeclared (first use in\ this function)
sound/drivers/pcsp/pcsp.c:54: error: (Each undeclared identifier is reported on\ ly once
sound/drivers/pcsp/pcsp.c:54: error: for each function it appears in.)
Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- pcsp: remove downsampling
pcsp: remove S16->U8 downsampling as dmix now supports U8 natively.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- sound: fix platform driver hotplug/coldplug
Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is
prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable sound
platform drivers, to re-enable auto loading.
[dbrownell@users.sourceforge.net: more drivers, registration fixes]
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- sound/drivers/dummy.c: fix negative snd_pcm_format_width() check
bps is unsigned, a negative snd_pcm_format_width() return value is not noticed
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
- pcsp - Fix dependency in Kconfig
Added the proper dependency to Kconfig for snd-pcsp driver.
It requires INPUT but is exclusive with pcspkr-input driver.
- pcsp: fix wording in DEBUG_PAGEALLOC warning
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
- pcsp - Fix CONFIG_DEBUG_PAGEALLOC warning message again
Put two line messages into a single line (as Stas intended originally).
- pcsp - Remove dependency to INPUT_PCSPKR=n again
This caused a dependency loop (although it's =n dependency).
Cut the chain.
- pcsp - Fix more dependency
Added the missing dependency and select for snd-pcsp driver.
- pcsp: Fix build with CONFIG_PM=n
sound/drivers/pcsp/pcsp.c: In function 'pcsp_suspend':
sound/drivers/pcsp/pcsp.c:201: error: implicit declaration of function 'snd_pcm_suspend_all'
Signed-off-by: Johann Felix Soden <johfel@users.sourceforge.net>
CC: Stas Sergeev <stsp@aknet.ru>
- ac97 - Add virtual master control to VT1616/VT1617A codec.
Enable VMASTER for VT1616 / VT1617A codec.
Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com>
- pcspkr: fix dependancies
fix pcspkr dependancies: make the pcspkr platform
drivers to depend on a platform device, and
not the other way around.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
CC: Vojtech Pavlik <vojtech@suse.cz>
CC: Michael Opdenacker <michael-lists@free-electrons.com>
[fixed for 2.6.26-rc1 by tiwai]
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- snd-pcsp: adjust help texts to frighten users
Added the warning text to the help of snd-pcsp about the possible problem
with this driver so that user can know of the problem in advance.
Also, removed the obsoleted text about ancient pc-speaker patch in
CONFIG_SOUND help.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- snd-pcsp: put back the compatibility code for the older alsa-libs
The attached patch adds back the compatibility code, allowing the
driver to work with older alsa-libs.
The removal was premature, it breaks the real-life configs.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- snd-pcsp: depend on CONFIG_EXPERIMENTAL
Considering all the feedbacks I got, depending snd-pcsp on
CONFIG_EXPERIMENTAL looks like the only safe way to get out
of all the troubles at one go. :)
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- snd-pcsp: silent misleading warning
It appears that alsa allows a sound buffer with size not
evenly devided by the period size. This triggers a warning in
snd-pcsp and floods the log. As a quick fix, the warning should
be disabled.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- snd-pcsp: use HRTIMER_CB_SOFTIRQ
Change HRTIMER_CB_IRQSAFE to HRTIMER_CB_SOFTIRQ,
as suggested by Thomas Gleixner.
That solves the lock dependancy reported in
Bug #10701.
That also allows to call hrtimer_start()
directly, tasklet "stupid hack" removed.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] snd-pcsp - fix pcsp_treble_info() to honour an item number
This solves the problem with mixers wrongly displaying the PWM freq.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: Convert to menuconfig
Convert menu in sound Kconfig files to menuconfig and if.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Fix AC97 kconfig items
The kconfig items related with AC97-powersave must be outside the
CONFIG_SND_PCI range. And it'd be better together with CONFIG_SND_AC97.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

HDA Codec driver

- hda-intel - Fix PCM device number assignment
In the current scheme, PCM device numbers are assigned incrementally
in the order of codecs. This causes problems when the codec number
is irregular, e.g. codec #0 for HDMI and codec #1 for analog. Then
the HDMI becomes the first PCM, which is picked up as the default
output device. Unfortuantely this doesn't work well with normal
setups.
This patch introduced the fixed device numbers for the PCM types,
namely, analog, SPDIF, HDMI and modem. The PCM devices are assigned
according to the corresponding PCM type. After this patch, HDMI will
be always assigned to PCM #3, SPDIF to PCM #1, and the first analog
to PCM #0, etc.
- hda-codec - Add ID for an unknown HDMI codec chip
Added the ID for an unknown HDMI codec chip on Jetway J9F2.
- hda: STAC927x power down inactive DACs
On several laptops that have STAC9228 codecs have unused DACs,
this powers them down to a D3 state.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda-codec - Correct HDMI transmitter names
Give better names to the new HDMI transmitter chips.
- hda-codec - remove duplicate controls in alc268 test mixer
I've just noticed that there are a handful of duplicate controls in the
ALC268 test model mixer. This patch (against alsa-driver 1.0.16) removes
them.
Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
- hda-codec - Fix race condition in generic bound volume/swtich controls
Attached patch fix race condition in hd_codec generic bound volume/swtich
controls
oops on this bug can be easy reproduced by two mixer apps on SMP system with
PREEMPT kernel
dmesg:
ALSA /home/ss/ALSA/alsa-driver-1.0.16/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:596:
hda_intel: azx_get_response timeout, switching to polling mode: las
t cmd=0x014f0900
BUG: unable to handle kernel paging request at virtual address 00070006
printing eip: f8f43e95 *pde = 00000000
Oops: 0000 [#1] PREEMPT SMP
Modules linked in: i915 drm snd_seq_dummy snd_seq_oss snd_seq_midi_event
snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss bnep rfcomm hidp l2cap
bluetooth w
lan_wep acpi_cpufreq coretemp hwmon mmc_block pcspkr psmouse wlan_scan_sta
ath_rate_sample snd_hda_intel ath_pci serio_raw wlan tg3 sdhci snd_pcm
firewire_o
hci mmc_core i2c_i801 snd_timer firewire_core snd_page_alloc ath_hal(P)
snd_hwdep snd iTCO_wdt crc_itu_t iTCO_vendor_support shpchp video output
acer_acpi b
acklight led_class wmi_acer
Pid: 3969, comm: gkrellm Tainted: P (2.6.24-jm #4)
EIP: 0060:[<f8f43e95>] EFLAGS: 00010292 CPU: 0
EIP is at snd_hda_mixer_bind_ctls_info+0x20/0x43 [snd_hda_intel]
EAX: 00000000 EBX: f7478e00 ECX: f763e000 EDX: f764f788
ESI: 00070002 EDI: edce5e00 EBP: edc3fe64 ESP: edc3fe54
DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process gkrellm (pid: 3969, ti=edc3e000 task=f1e4e000 task.ti=edc3e000)
Stack: f764f77c f7478e00 edce5e00 f6dd6000 edc3fe84 f8e590e8 edc7a239 f6d14034
f764f34c f6c0f7e0 edc3ff30 f6d14034 edc3fea8 f8e591b7 edc3ff30 edc3ff2c
00000000 f70aa668 f6d14034 f8e59165 bfbfadb0 edc3ff40 f8e587aa edc3ff2c
Call Trace:
[<c0104fbb>] show_trace_log_lvl+0x1a/0x2f
[<c010506d>] show_stack_log_lvl+0x9d/0xa5
[<c0105119>] show_registers+0xa4/0x1bd
[<c0105354>] die+0x122/0x206
[<c03daccc>] do_page_fault+0x535/0x623
[<c03d940a>] error_code+0x72/0x78
[<f8e590e8>] snd_mixer_oss_get_volume1_vol+0x74/0xf1 [snd_mixer_oss]
[<f8e591b7>] snd_mixer_oss_get_volume1+0x52/0xa5 [snd_mixer_oss]
[<f8e587aa>] snd_mixer_oss_ioctl1+0x673/0x71e [snd_mixer_oss]
[<f8e588af>] snd_mixer_oss_ioctl+0xb/0xd [snd_mixer_oss]
[<c017af0a>] do_ioctl+0x22/0x67
[<c017b186>] vfs_ioctl+0x237/0x24a
[<c017b1ca>] sys_ioctl+0x31/0x4b
[<c010402e>] syscall_call+0x7/0xb
=======================
Code: 3f 49 c7 89 f8 59 5b 5e 5f 5d c3 55 89 e5 57 89 d7 56 53 89 c3 83 ec 04
8b 70 5c 8b 40 60 05 7c 01 00 00 89 45 f0 e8 c0 3f 49 c7 <8b> 46 04 89 fa 89
4
3 5c 89 d8 8b 0e ff 11 89 73 5c 89 c7 8b 45
EIP: [<f8f43e95>] snd_hda_mixer_bind_ctls_info+0x20/0x43 [snd_hda_intel]
SS:ESP 0068:edc3fe54
---[ end trace 0a20bc209e9397cc ]---
similar issue report present in ALSA bugtracking system
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3652
Signed-off-by: Serge A. Suchkov <Serge.A.S@tochka.ru>
- hda-codec - Fix ALC880 F1734 model
Fixed some issues with ALC880 F1734 model
- fix capture via mic
- enable volume-wheel control
- hda-codec - Fix automute of AD1981HD hp model
Reprogram the speaker-pin setting at each HP pin plug to make sure
the spekaer auto-muting on AD1981HD hp model.
- hda-codec - Don't create vmaster if no slaves found
Don't create vmaster controls if no slaves are found in the given list.
This prevents the error due to an empty vmaster control.
- hda-codec - Fix wrong capture source selection for ALC883 codec
The widget list of capture source selection for ALC883 contains the
wrong NIDs.
- hda-codec - Fix ALC882 capture source selection
The capture source selection for ADC list with two elements is buggy
becaues of a wrong capture mux list. This patch fixes the starting
index based on spec->num_adc_nids.
- hda-codec - Clean up capture source selection of Realtek codecs
Clean up the codes of the capture source selection for Realtek codecs.
Now using common helper functions with the new capsrc_nids field.
- hda-codec - Implement auto-mic jack sensing on Samsung laptops
Implemented the auto-mic jack sensing for Samsung laptops with AD1986A
codec chip (model=laptop-eapd).
The hardware uses pin 0x1d and 0x1f for the internal and external
mics, respectively.
- hda-codec - More fix-up for auto-configuration
In some cases, the BIOS sets up only the HP pins with different assoc
and sequence numbers, e.g. on FSC Esprimo with ALC262.
This patch adds a fix-up for such a case. When multiple HPs are defined
and no line-outs is found, the configurator tries to re-assign some pins
from HP list to line-out, judging from the sequence number.
- hda-codec - Fix auto-configuration of Realtek codecs
This patch fixes some bugs in the auto-configurator of Realtek codecs:
- add missing pin set-up for speaker pins
- fix the speaker auto-mute function not to conflict with the existing
"Speaker" mixer switch
- hda-codec - Add "IEC958 Default PCM" switch
Added a new mixer switch to enable/disable the sharing of the default
PCM stream with analog and SPDIF outputs. When "IEC958 Default PCM"
switch is on, the PCM stream is routed both to analog and SPDIF outputs.
This is the behavior in the earlier version.
Turning this switch off has a merit for some codecs, though. Some codec
chips don't support 24bit formats for SPDIF but only for analog outputs.
In this case, you can use 24bit format by disabling this switch.
- hda-codec - Add more names to vendor list
Added more known names to the vendor id list.
- hda-codec - Fix breakage of resume in auto-config of realtek codecs
The last patch for fixing the auto-config pin setting breaks the resume
due to a wrong use of snd_hda_codec_amp_stereo(). The code in the init
hook shouldn't touch the amp cache.
- hda-codec - Fix missing capsrc_nids for ALC262
ALC262 must have capsrc_nids defined as well as in ALC882.
Also, add a NULL check in alc882_mux_enum_put to avoid Oops.
- hda-codec - Add support of AD1883/1884A/1984A/1984B
Added the support of new AD codecs: AD1883, AD1884A, AD1984A and AD1984B.
These are almost compatible except for additional digital pins, etc.
- hda-codec - Add model=mobile for AD1884A & co
Added the new model mobile for AD1884A and compatible codecs.
It's a reduced version of model=laptop.
- hda-codec - Fix Master volume on HP dv8000
HP dv8000 laptop has a problem with Master volume. It's due to the
connection of the widget 0x13. When it's connected from the analog
amp mixer (0x19), it works as expected mysteriously (ALSA bug#3775):
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3775
- Keep private TLV entry in vmaster itself
Use a private array for TLV entries of virtual master controls instead
of (supposed) static array. This cleans up the existing codes.
Also, now vmaster assumes the simple dB-range TLV that is the only type
it can handle.
- hda-codec - Fix ALC662 recording
Fixed ALC662 recording issue.
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
- hda-codec - Add beep volume control to ALC268
Added the beep volume control to ALC268 codec support code.
Since the codec doesn't return the correct AMP caps, we need to override
the value.
- hda-codec - Fix ALC268 capture source
Initialize the capture source properly for auto model.
It's especially important for cases that only mic is detected.
- hda-codec - Don't create multiple capture streams for single inputs
When the device has only one input source, it makes no sense to have
multiple capture streams.
- hda: fix STAC927x power management
Fix issue on STAC927x codecs that first DAC was getting powered down
even if was being used.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda: STAC927x invalid association value
STAC_DELL_BIOS quirks were setting the association value wrong
for port 0x0f, which prevented it from being included in hp_outs[].
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda: 92HDxxxx PCI Quirks
Added PCI_QUIRKS for laptop that have the 92HDxxx family of codecs.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda: STAC927x analog mic
Some laptops have a internal analog microphone that is not setup by the BIOS.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda: Mic as output fix
Added logic to check if AUTO_PIN_FRONT_MIC is available for output
switch, if AUTO_PIN_MIC isn't.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda-codec - Adapt eeepc p701 mixer for virtual master control
Fix the line-out volume control of eeepc p701 to be a proper slave of
the virtual master control.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Fix AD1988 capture elements
The some indices of capture elements of AD1988 are wrongly assigned.
This patch fixes it. See ALSA bug#3795
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3795
- hda-codec - Add Fujitsu Lifebook E8410 to quirk table
Add the proper model entry for Fujitsu Lifebook E8410 with ALC262 codec.
From: Tony Vroon <tony@linx.net>
- hda-codec - Fix initial DAC numbers of 92HD71bxx codecs
Fix the initial num_dacs of 92HD71bxx codecs.
- hda-codec - Add docking-station mic input for Thinkpad X61
Added the docking-stationc mic input to the capture source list
for Thinkpad X61.
- hda-codec - Fix mixer names of realtek codecs to adapt mater controls
Some models like eeepc ep20 have invalid mixer names that aren't
handled properly by virtual master controls. Rename them to the
proper names.
Also fixed some typos in the mixer names but they are not compiled
in right now.
- sound: patch_sigmatel.c fix shadowed variable warning
Temp variable in the loop shadows the second argument (which is otherwise
unused in this function). Change this to defcfg as it is used to hold
the default config.
sound/pci/hda/patch_sigmatel.c:2759:18: warning: symbol 'cfg' shadows an earlier one
sound/pci/hda/patch_sigmatel.c:2734:26: originally declared here
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- hda-codec - Use int instead of long in patch_sigmatel.c
The HD-audio parameters are at most 32bit int.
- sound: hda: missing includes of hda_patch.h
Move the array declaration to hda_codec.c where it is used and add includes
where the individual presets are declared.
Fixes the following sparse warnings:
sound/pci/hda/patch_realtek.c:13744:25: warning: symbol 'snd_hda_preset_realtek' was not declared. Should it be static?
sound/pci/hda/patch_cmedia.c:729:25: warning: symbol 'snd_hda_preset_cmedia' was not declared. Should it be static?
sound/pci/hda/patch_analog.c:3656:25: warning: symbol 'snd_hda_preset_analog' was not declared. Should it be static?
sound/pci/hda/patch_sigmatel.c:3995:25: warning: symbol 'snd_hda_preset_sigmatel' was not declared. Should it be static?
sound/pci/hda/patch_si3054.c:286:25: warning: symbol 'snd_hda_preset_si3054' was not declared. Should it be static?
sound/pci/hda/patch_atihdmi.c:156:25: warning: symbol 'snd_hda_preset_atihdmi' was not declared. Should it be static?
sound/pci/hda/patch_conexant.c:1721:25: warning: symbol 'snd_hda_preset_conexant' was not declared. Should it be static?
sound/pci/hda/patch_via.c:1962:25: warning: symbol 'snd_hda_preset_via' was not declared. Should it be static?
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- hda: disable power management on fixed ports
Power management can't be enabled on fixed ports, since the presence
will always return false and prevent output.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda: add verbs for 92hd73xxx laptops
Added core_init[] for several 92hd73xxx laptops.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda-codec - Fix the array over-range access with stac92hd71bxx codec
Add the check of the array range for dac_nids to prevent the over-range
access.
- hda-codec - model for alc883 to support M720R
There is no suitable model for M720R (ALSA bug#3781).
This patch is to support HP jack-sensing and mixer.
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
- ALC288 - Add NEC S970 to the quirk table
NEC S970 has no sound in the internal speakers when autodetection is
used.
With targa-dig model, there is sound in the speakers and it gets
correctly muted when pluging headphones.
From: Pascal Terjan <pterjan@mandriva.com>
- hda-codec - model for alc883 to support FUJITSU Pi2515
There is no suitable model for Pi2515.
This model is to support it. ALSA bug#3800.
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
- hda-codec - model for cx20549 to support laptop HP530
Currently the model laptop-hpsense use the 0x12 as ExtMic,
and use 0x14 as Internal IntMic.
But the hp530 only have one ExtMic, the Pin widget is 0x14.
In this patch, I changed the mixer item for them.
I still reserved the IntMic item, it will be helpful if
other machine may use this model.
ALSA bug#3821.
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
- hda-codec - Fix dmics on ALC268 in auto configuration
Fixed the handling of dmics on ALC268 in the auto-configuration mode.
- hda-codec - Add internal mic item for ALC268 acer model
Added the internal mic as a capture source item for ALC268 acer model.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- HDA Codecs: add support for Toshiba Equium L30
This patch adds support for the Toshiba Equium L30 laptop and renames the mixer
controls to match Laptop usages.
Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
- hda: Reorganized DAC outputs
Changed so that internal speakers point to the Front mixer instead of Surround.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda-intel - Fix microphone capture with ALC880 F1734 model
The default capture source should be the mic which is 0x01 on this model.
In addition to that the change to VREF50 allows for higher capture volume.
Signed-off-by: Michael Gruber <lists.mg@googlemail.com>
- hda-codec - Improve ALC262 ultra model
Improved ALC262 ultra model for Samsung Q1 Ultra series.
- clean up mixers
- support of input from HP jack as a mic
- add quirk for Q1 EL
- hda: 92HD73xxx distortion fix
Fixed issue on some laptops that if the Master mixer and DAC mixers are
turned all the way up that will cause distortion. This is fixed by limiting
the max volume with the volume knob nid.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda-codec - Fix orphan Headphone controls in STAC codecs
Currently, the headphone controls are created as Master wrongly in
some cases, and this prevents the virtual master controls.
The patch fixes the problem by simply using "Headphone" always for
headphone controls.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- hda-codec - Fix ALC662 DAC mixer mutes
Currently ALC662 doesn't suport amp mute for AmpOut in nids 0x02, 0x03,
0x04 (see block diagram in ALC662 datasheet page 3, does M correspond to
mute?). The result is that currently mute for "Front Playback Switch",
"Surround Playback Switch", "Center Playback Switch" and "LFE Playback
Switch" mixer items doesn't work (tested on Asus P5GC-MX motherboard
with 3stack-6ch model).
The solution I found for this is to mute the proper inputs in 0x0c,
0x0d, 0x0e audio mixers.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Map 3stack-6ch-dig ALC662 model for Asus P5GC-MX
Map 3stack-6ch-dig ALC662 model for Asus P5GC-MX.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Fujitsu Lifebook port replicator/dock headphone jack sense
The docking station headphone output had no audio and jack sense
was not considered.
Jack information from the laptop itself and the dock are combined, as
the dock does not obscure the connector.
Signed-off-by: Tony Vroon <tony@linx.net>
- Revert "at73c213: fix DMA size at the end of DMA buffer"
Revert the patch "at73c213: fix DMA size at the end of DMA buffer".
With the next patch to use the hw_constraint, this isn't needed any more.
- hda-codec - Fix DAC assignment order in ALC883
Actually clfe and surround DACs are inverted in alc883_dac_nids array
(see ALC883 datasheet). I discovered this while testing multi-channel
setup (using 3stack-6ch-dig model) on MSI 945GCM5 V2 motherboard that
has an ALC883 codec. Simply Rear Left/Right and Center/LFE were swapped
in 6 channel mode (also in 4 channel mode you didn't get rear left/right
output). Other models also were affected by this bug, as can be seen by
the mixer layouts that "workaround" this (the real bug was not noticed,
and some other models simply played with mixer and initial verbs). Thus
along with fixing the order of dac nids, also change the models that
relied on previous dac ordering properly.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Map 3stack-6ch-dig ALC883 model for MSI 945GCM5 V2 (MSI-7267)
Map 3stack-6ch-dig ALC883 model for MSI 945GCM5 V2 (MSI-7267).
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Fix spekaer output of Panasonic CF-74
Add a new model "panasonic" for Panasonic CF-74 with STAC9200 codec
to fix the speaker output.
- hda-codec - keep the format verb at closing PCM streams
Keep the format verb at closing PCM streams.
Introduced snd_hda_codec_cleanup_stream() for the parcicular purpose.
- hda-codec - Support of Lenovo Thinkpad X300
Added the model thinkpad for Lenovo Thinkpad X300 with AD1984A codec.
- hda: 92hd71bxxx DMIC nid
Added missing DMIC verb to dell_4_1_pin_configs[].
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda-codec - model for alc262 to support Lenovo 3000
This model is to support the Lenovo 3000 y410.
ALSA bug#3856:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3856
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
- hda-codec - Remove now uneeded 6stack-hp model from ALC883
After DAC assignment fix in ALC883, the 6stack-hp model is now the same
as 6stack-dig. So just remove 6stack-hp model and replace its use with
6stack-dig.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Use base ALC883 mixer for 6stack-dell model
After DAC assignment fix in ALC883, alc888_6st_dell_mixer is now the
same as alc883_base_mixer. Avoid duplicated code and use
alc883_base_mixer in 6stack-dell model, removing alc888_6st_dell_mixer
definition.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Use common 3stack-6ch mixer for 3stack-hp model
Forgot one more: 3stack-hp model also have now the same mixer as
3stack-6ch (after DAC assignment fix in ALC883), so use it avoiding
duplicating the same mixer definition.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Map clevo-m720r ALC883 model for Clevo M720SR
Map clevo-m720r ALC883 model for Clevo M720SR.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - Support mic automute for Clevo M720R/SR
Add support for mic automute in clevo-m720r ALC883 model, and rename it
to more generic clevo-m720. Also change model entry in ALSA-Configuration.txt
accordingly.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda-codec - PCI quirk for MSI laptop
Please refer to [0003848] on the alsa mantis.
This patch adds the pci quirk and Mic-Int controller.
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
- hda-codec - Fix unbalanced mutex
On Wed, Apr 02, 2008 at 08:19:29AM -0400, Miles Lane wrote:
> [ 48.765906] [ BUG: bad unlock balance detected! ]
> [ 48.765912] -------------------------------------
> [ 48.765918] pulseaudio/4277 is trying to release lock
> (&codec->spdif_mutex) at:
> [ 48.765930] [<c03031b7>] mutex_unlock+0x8/0xa
> [ 48.765945] but there are no more locks to release!
> [ 48.765950]
> [ 48.765952] other info that might help us debug this:
> [ 48.765959] 2 locks held by pulseaudio/4277:
> [ 48.765965] #0: (&pcm->open_mutex){--..}, at: [<f89f134b>]
> snd_pcm_open+0xc1/0x1ba [snd_pcm]
> [ 48.766003] #1: (&chip->open_mutex){--..}, at: [<f8b4f13d>]
> azx_pcm_open+0x36/0x184 [snd_hda_intel]
> [ 48.766057]
> [ 48.766059] stack backtrace:
> [ 48.766066] Pid: 4277, comm: pulseaudio Not tainted 2.6.25-rc8-mm1 #12
> [ 48.766086] [<c013afc6>] print_unlock_inbalance_bug+0xce/0xd8
> [ 48.766107] [<c0109e1c>] ? save_stack_trace+0x1d/0x3b
> [ 48.766130] [<c012f54e>] ? __kernel_text_address+0x1b/0x27
> [ 48.766146] [<c0104533>] ? dump_trace+0xcd/0xd9
> [ 48.766160] [<c0109d9e>] ? save_stack_address+0x0/0x2c
> [ 48.766176] [<c013b80a>] ? find_usage_backwards+0xa4/0xc3
> [ 48.766193] [<c013cfb5>] lock_release_non_nested+0x84/0x120
> [ 48.766209] [<c03031b7>] ? mutex_unlock+0x8/0xa
> [ 48.766222] [<c013d1bb>] lock_release+0x16a/0x199
> [ 48.766238] [<c0303137>] __mutex_unlock_slowpath+0xa9/0x121
> [ 48.766252] [<c03031b7>] mutex_unlock+0x8/0xa
> [ 48.766263] [<f8b4ffd8>] snd_hda_multi_out_analog_open+0xd3/0xef
> [snd_hda_intel]
The following patch should fix it.
From: Frederik Deweerdt <deweerdt@free.fr>
Cc: "Miles Lane" <miles.lane@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- hda - Should use HDA_OUTPUT instead of HDA_INPUT to mute pin 15 of ALC880
To mute the output of Pin widget 15 in ALC880, we should use the
HDA_OUTPUT. However, current code looks like :
snd_hda_codec_amp_stereo(codec, 0x15, HDA_INPUT, 0, HDA_AMP_MUTE, bits);
It may be a misspelling.
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
- hda - PCI quirk for laptop LG which use CMI9880
Please refer to [0003874] on the alsa mantis.
This patch added the pci quirk.
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
- hda - Fujitsu Lifebook PC speaker signal
The legacy PC speaker signal was not routed to outputs. The codec is not
prevented from powering down in this patch, although I suppose one could
argue that perhaps it should be. Let me know if anyone feels strongly one
way or the other.
Signed-off-by: Tony Vroon <tony@linx.net>
- hda: Correct SPDIF out default config
Several laptops have have the SPDIF out defined as 'Digital other out'
when it should be 'SPDIF out' in the default config.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda: EAPD power management
Power management support for EAPD enabled laptops, when headphones
are sensed it pulls the EAPD GPIO line low to power it down.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda-intel: Add Quanta IL1 ALC267 model
This adds support for Quanta IL1 mini-notebook to alsa, defining a new model
for it. It comes with an ALC267 codec chip. Some notes about this model:
* In headphone automute, I use AC_VERB_SET_PIN_WIDGET_CONTROL instead of common
amp mute, to avoid conflict with mixer switch (mixer and automute use the
same nid).
* The only connected capture sources in the hardware are the internal mic and
external mic jack. So instead of using an input source selector like on other
ALC268 models, the mic automute automatically switch between captures.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
- hda - revert wrongly committed patch
A work-in-progress patch was mistakenly committed together with another
patch. Reverged that part now.
- hda - Add support of AD1989A/AD1989B
Added the support of AD1989A and AD1989B codecs.
These codecs can have multiple SPDIF devices, but currently we handle
only one SPDIF. If any real devices with two SPDIF interfaces (likely
one for SPDIF and one for HDMI), we'll fix this rightly.
Otherwise, these codecs are pretty similar with AD1988.
- hda: Add 5.1 support for second headphone jack
Several 92hd7xxx and STAC9228 laptops have multiple headphone jacks,
the second headphone jack should be used for the 5.1 surround sound.
Add support for 'Headphone as Line Out' switch, which allows it be used
in 5.1 surround sound.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
- hda - Fix ALC889A codec support
ALC889A is recognized ALC885/ALC882 but it's actually closer to
ALC888/ALC883.
Cc: Kasper Sandberg <lkml@metanurb.dk>
- hda - Avoid unexpected breakage with ALC889A hack
The last ALC889A hack may break on some devices with certain model presets
since patch_alc*() have different model tables. So, now it's handled in
the original patch_alc882() but fly to patch_alc883() in model=auto
appropriately.
- hda - Fix model for Acer Aspire 5720z
Set the proper model=acer for Acer Aspire 5720z with ALC268 codec.
ALSA bug#3550:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3550
- hda - Fix Thinkpad X300 digital mic
TP X300 digital mic requires additional init verbs with magic COEFs.
- hda - Add support of Medion RIM 2150
Added the support of Medion RIM 2150 laptop with ALC880 codec.
ALSA bug#3708:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3708
- hda - Support IDT 92HD206 codec
Added the support for IDT 92HD206 codec chip.
It's compatible with STAC927x.
- Revert migration to alc_set_pin_output() in alc861_auto_set_output_and_unmute()
Change done by:
commit f6c7e5461e9046445d50c5c7a9a4587824239623
[ALSA] hda-codec - Fix auto-configuration of Realtek codecs
broke sound on ALC861 Analog.
Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
- [ALSA] hda - Fix ALC262 fujitsu model
Fixed the speaker auto-mute with two laptop and docking headphones.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Tony Vroon <tony@linx.net>
- [ALSA] hda - Fix ASUS P5GD1 model
Corrected the model assignment for the ASUS P5GD1 w/SPDIF after reports of
surround sound not being possible.
Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Add model for ASUS P5K-E/WIFI-AP
Added a config table entry for the ASUS P5K-E/WIFI-AP mainboard (ID
1043:8227) to use AD1988_6STACK_DIG
Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix noise on VT1708 codec
We get quite noisy output on the right channel on VT1708 codec
when 24bit samples are used. Suppress the 24bit support until any
real fix is found.
https://bugzilla.novell.com/show_bug.cgi?id=390473
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix COEF and EAPD in ALC889 auto-configuration mode
Fix the missing COEF and EAPD initialization in ALC889 auto-configuration
mode.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Added support for Foxconn P35AX-S mainboard
Added IDs for the Foxconn P35AX-S mainboard to patch_realtek.c, so
that ALC883_6ST_DIG is used by default.
Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix capture mute Widget for stac9250/9251
Fix capture mute widget for STAC9250/9251 codecs. The widget 0x09
has no mute but 0x14 does actually.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
- [ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE to
represent its meaning more better. This config isn't provided only
for the detection but for more verbose debug prints in general.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Add ALC663 support
Added the support of ALC663 codec, including specific models for
ASUS M51VA, ASUS G71V, ASUS H13 and ASUS G50V.
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix vref pincap check in alc882 auto-detection
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - show correct codec chip in PCM stream names
Show more exact codec chip name in the PCM stream name strings.
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix EAPD and COEF setups for realtek codecs
Fixed EAPD and COEF setups for Realtek ALC662/663, 660-VD and 888 codecs.
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix mic input on HP2133
The mic pins are wrongly assigned on AD1884A mobile model.
The mic handling is fixed for the automatic mic selection, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix model for LG LS75 laptop
Set the proper model for LG LS75 with CM9880 codec.
See ALSA bug#2105:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2105
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - support intel DG33 motherboards
These two motherboards's pin configuration are not covered by driver.
I wrote a new model to support them.
Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix PLL gating control on Realtek codecs
On some Realtek codecs, the analog PLL gating control bit must be set
off while the default value is 1.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - COMPAL IFL90/JFL-92 laptop quirk
Use quirk table to assign ALC268_TOSHIBA to COMPAL IFL90/JFL-92 laptops.
No analog output on autoprobe.
Signed-off-by: Tony Vroon <tony@linx.net>
Tested-by: Guri <gurashka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix resume of auto-config mode with Realtek codecs
The auto-config mode of Realtek ALC codecs has a bug since 2.6.25
that it cannot resume properly. The problem was the wrong assignment
of init_hook that overrides the whole initialization.
Relevant bug reports:
http://bugzilla.kernel.org/show_bug.cgi?id=10662
https://bugzilla.novell.com/show_bug.cgi?id=385473
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Fix "alc262_sony_unsol[]" hda_verb array
I think that hda_verb array must have "terminator (empty array)".
But alc262_sony_unsol[] does not have it.
And it causes gcc-4.3's buggy behavior
with snd_hda_sequence_write().
Signed-off-by: Akio Idehara <zbe64533@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Add Toshiba dynabook SS RX1 support
I have Toshiba dynabook SS RX1 and this patch adds that support.
Signed-off-by: Akio Idehara <zbe64533@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix stac9205_cfg_tbl
Sort stac9205_cfg_table in the order of id numbers, and removed the
duplicated (obsoleted) entries for 0x01fc and 0x01fd. This doesn't
change the driver behavior since the old entries are all secondary.
The duplication occured due to commit dfe495d0, and the old entries
were introduced by commit ae0a8ed8.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Remove unused mutex
Removed unused mutex from patch_*.c.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: Add support for 92HD73xxx codecs
Added support for new family of 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 - Fix wrong volumes in AD1988 auto-probe mode
Don't create mixer volume elements for Headphone and Speaker if they
use the same DAC as normal line-outs on AD1988. Otherwise the amp
value gets screwed up, e.g.
https://bugzilla.novell.com/show_bug.cgi?id=398255
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix digital converter proc output
AC_VERB_GET_DIGI_CONVERT_2 isn't actually implemented but reserved.
The whole SIC bits are returned from DIGI_CONVERT_1.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Added model selection for iMac 24"
Added the SSID of a known iMac 24" to automatically use
ALC885_IMAC24 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 - Added SSID for 'Fujitsu Siemens Amilo M1451G' laptop
Add the SSID for the "Fujitsu Siemens Amilo M1451G" laptop to
patch_realtek.c , so that it uses ALC880_FUJITSU by default.
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 - Add MacBook 3.1 support
MacBook 3.1 is compatible with model=mbp3.
Added the codec SSID 10b6:3600.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - disable amp override on non-HP machines
Some machines with Cx5045 seem to have no problem with the volume
over 0dB on NID 0x17. Disable amp overrides for other devices but HP.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ALSA: hda - Fix ALC883 medion model
ALC883 medion model doesn't unmute the proper amps so no output can be heard.
Replaced the mute switches to behave just like other models.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add missing Thinkpad Z60m support
Added the missing SSID of Thinkpad Z60m for model=thinkpad with
AD1981HD.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ALSA: hda - Fix speaker output on Toshiba P105
Toshiba Satellite P105 with cx5045 has no HP pin but only a
speaker pin and does the speaker-muting on hardware.
Thus the matching model is laptop-micsense.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add support for Lenovo 3000 N200
Added the model entry (model=lenovo) for Lenovo N3000 N200 laptop
with ALC861-VD. Reference below:
https://bugzilla.novell.com/show_bug.cgi?id=406425
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - removed redundant gpio_mask
An gpio_mask value was defined twice needlessly.
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 dc7600 with pci sub IDs 0x103c/0x3011 belongs to hp-3013 model
As reported and tested by an RedHat customer, HP dc7600 with pci sub IDs
0x103c/0x3011 works with the hp-3013 model and not with the hp only model.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda: 92hd71bxx PC Beep
Added volume controls for the analog PC Beep on 92hd71bxx 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 - Fix internal mic vref pin setup
Set the vref80 to the internal mic pin 0x12 for Cx5045.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix missing init for unsol events on micsense model
Fixed the missing initialization for unsolicited events on
Cx5045 micsense model.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix FSC V5505 model
model=laptop-hpmicsense matches better to FSC V5505 laptop.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

HDA Intel driver

- hda-intel - Fix PCM device number assignment
In the current scheme, PCM device numbers are assigned incrementally
in the order of codecs. This causes problems when the codec number
is irregular, e.g. codec #0 for HDMI and codec #1 for analog. Then
the HDMI becomes the first PCM, which is picked up as the default
output device. Unfortuantely this doesn't work well with normal
setups.
This patch introduced the fixed device numbers for the PCM types,
namely, analog, SPDIF, HDMI and modem. The PCM devices are assigned
according to the corresponding PCM type. After this patch, HDMI will
be always assigned to PCM #3, SPDIF to PCM #1, and the first analog
to PCM #0, etc.
- hda-intel - Use SG buffer
Use SG buffers for the HD-audio instead of linear buffers.
- hda-intel - Support 64bit buffer allocation
The HD-audio hardware usually supports 64bit address for DMA and other
buffers. The patch enables the feature if supported.
- hda-intel - Fix a compile error with CONFIG_SND_DEBUG_DETECT=y
Forgot to get rid of the obsolete fragsize field from a debug print.
- HDA-Intel - Patch to support RV7xx HDMI Audio
This patch is to add R7xx HDMI audio support.
Signed-off-by: Libin Yang <Libin.yang@amd.com>
- hda-intel - Fix Oops with ATI HDMI devices
The driver gets Oops with ATI HDMI devices due to the wrong calculation
of index for playback streams. This patch fixes it. Reference:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3746
- hda-intel - Clean up stream definitions
Clean up the code to define playback/capture streams.
- hda-intel - Use PCI_DEVICE() macro
Clean up the pci id table using PCI_DEVICE() macro.
- hda_intel needs dma-mapping.h
sparc32:
sound/pci/hda/hda_intel.c: In function 'azx_create':
sound/pci/hda/hda_intel.c:1838: error: 'DMA_64BIT_MASK' undeclared (first use in this function)
sound/pci/hda/hda_intel.c:1838: error: (Each undeclared identifier is reported only once
sound/pci/hda/hda_intel.c:1838: error: for each function it appears in.)
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- hda_intel: Add the DIDs of nvidia MCP79 HD audio controller to hda_intel.c
Add the Device IDs of nvidia MCP79 HD audio controller to hda_intel.c
Signed-off-by: Peer Chen <peerchen@gmail.com>
- hda-intel - Fix power-off hang on ASUS P5AD2
The hda-intel driver has a problem at power-off on ASUS P5AD2.
It's caused when the position-buffer is enabled -- most likely a
hardware-specific problem.
This patch adds a quirk to avoid the unnecessary enablement of
position-buffer.
- hda-intel - Add barrier
Add proper barriers in the RIRB communication code.
- hda-intel - Add sync support
Addded the support of sync streams to hda-intel driver.
- hda - Fix DMA position inaccuracy
Many HD-audio controllers seem inaccurate about the IRQ timing of
PCM period updates. This has caused problems on audio quality; e.g.
JACK doesn't work with two periods.
This patch fixes the problem by checking the current DMA position
at IRQ handler and delays the period-update via a workq if it's
inaccurate.
- [ALSA] hda - Fix DMA position inaccuracy
Many HD-audio controllers seem inaccurate about the IRQ timing of
PCM period updates. This has caused problems on audio quality; e.g.
JACK doesn't work with two periods.
This patch fixes the problem by checking the current DMA position
at IRQ handler and delays the period-update via a workq if it's
inaccurate.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- [ALSA] hda - Add support of Teradici controller
Add the new PCI ID 0x6549 0x1200 Teradici controller.
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - Add ICH9 controller support (8086:2911)
Added the missing PCI ID for ICH9 controller (8086:2911)
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] hda - increase max_codecs of ICH to 4
It turned out that some ICH9-based boards use SD3 for the audio codec
where the current driver code doesn't probe. Since we have a better
codec slot check now, it must be safe to increase this to 4.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Add bdl_pos_adj option
Added a new option, bdl_pos_adj, to adjust the delay of IRQ-wakeup
timing.
Most HD-audio hardwares have a problem that a BDL IRQ is issued before
actually the data and the DMA pointer are updated.
We have already a mechanism to force to delay snd_pcm_period_elapsed()
calls via workq, but this costs much CPU, and typically the delay is
within one sample. Thus, it's more clever to adjust the BDL entries
instead.
The new option adds the size of the delay in frames. As default,
it's set to 1 -- that is, one sample delay. Even the hardware is
really correct, one sample delay is relatively harmless in comparison
with reporting wrong positions.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - remove position_fix=3
position_fix=3 is the option to correct the DMA position with the
FIFO size. But, it never worked correctly, and we have now more other
workarounds for the DMA position fixes. Thus better to remove it.
Also, change POS_FIX_NONE to POS_FIX_LPIB to represent its real role
better.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - bdl_pos_adj option to each instance
The option bdl_pos_adj should be provided for each card instance instead of
a global one because the value depends rather on each controller-chip.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Fix bdl_pos_adj value for ATI SB chipsets
ATI SB controllers seem to report the DMA ahead in the amount of FIFO.
Thus bdl_pos_adj should be 32 for them as default.
Also, the default value is set to -1, which means to make the driver
to choose the appropriate value.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - Add a warning if pending IRQ is found
The pending IRQ handling is a very hackish workaround and should be
avoided as much as possible via a larger bdl_pos_adj option value.
Put a warning message if this situation occurs so that the user may have
a chance to notice that something is wrong.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - bdl_pos_adj=32 as default
Use bdl_pos_adj=32 as default except for Intel hardwares confirmed
to work with bdl_pos_adj=1. Looks like ATI and NVidia require this
higher value.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: hda - use upper_32_bits()
Use the standard upper_32_bits() instead of own macro.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

HDA generic driver

- Move vmaster build stub to acore
Move vmaster build stub to acore to follow the change in alsa-kernel tree.
- hda-codec - Add "IEC958 Default PCM" switch
Added a new mixer switch to enable/disable the sharing of the default
PCM stream with analog and SPDIF outputs. When "IEC958 Default PCM"
switch is on, the PCM stream is routed both to analog and SPDIF outputs.
This is the behavior in the earlier version.
Turning this switch off has a merit for some codecs, though. Some codec
chips don't support 24bit formats for SPDIF but only for analog outputs.
In this case, you can use 24bit format by disabling this switch.
- hda-codec - Fix amp-in values for pin widgets
Pin widgets have always one amp-input value regardless of number of
connections. The proc file showed values wrongly.
- Keep private TLV entry in vmaster itself
Use a private array for TLV entries of virtual master controls instead
of (supposed) static array. This cleans up the existing codes.
Also, now vmaster assumes the simple dB-range TLV that is the only type
it can handle.
- hda-codec - keep the format verb at closing PCM streams
Keep the format verb at closing PCM streams.
Introduced snd_hda_codec_cleanup_stream() for the parcicular purpose.
- [ALSA] Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE to
represent its meaning more better. This config isn't provided only
for the detection but for more verbose debug prints in general.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: hda - Fix digital converter proc output
AC_VERB_GET_DIGI_CONVERT_2 isn't actually implemented but reserved.
The whole SIC bits are returned from DIGI_CONVERT_1.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

I2C cs8427

- i2c: cs8427.c use put_unaligned helper
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

ICE1712 driver

- ice1712 - Fix hoontech MIDI input
Fixes the problems with Midi In on Hoontech/STA dsp24 cards, for example with
DSP2000 box, without restricting the box configurations available. Also adds
mpu_401 name strings.
Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
- Added support for Delta1010E (newer revisions of Delta1010)
For more details, see ALSA bug#3327 .
- ice1712 - added support for M-Audio Delta 66E
See ALSA bug#3327 for more details. Experimental.
Also fix support for M-Audio Delta 1010E - subdevice check.
- sound: ice1712.c fix shadowed variable warnings
In all four case, adding a private value to the iooff index,
call it priv_idx.
sound/pci/ice1712/ice1712.c:1300:6: warning: symbol 'index' shadows an earlier one
sound/pci/ice1712/ice1712.c:85:12: originally declared here
sound/pci/ice1712/ice1712.c:1312:6: warning: symbol 'index' shadows an earlier one
sound/pci/ice1712/ice1712.c:85:12: originally declared here
sound/pci/ice1712/ice1712.c:1338:6: warning: symbol 'index' shadows an earlier one
sound/pci/ice1712/ice1712.c:85:12: originally declared here
sound/pci/ice1712/ice1712.c:1350:6: warning: symbol 'index' shadows an earlier one
sound/pci/ice1712/ice1712.c:85:12: originally declared here
[tiwai - fixed coding issues as well]
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- sound: ice1712: unused structs
Don't need to declare a struct when defining a structure layout. Both
of these structs are unused.
sound/pci/ice1712/revo.c:39:3: warning: symbol 'revo51' was not declared. Should it be static?
sound/pci/ice1712/phase.c:54:3: warning: symbol 'phase28' was not declared. Should it be static?
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- ice1724 - Fix the SPDIF input sample-rate on Juli@
AK4114 on Juli@ has the SPDIF input sample rate detection and
causes errors when an incompatible sample rate is chosen.
The patch adds the open hook to check the current rate and limit
the hw constraints.
- some fixes and cleanup for ICE1724 cards
* removing the hack with NON_AKM ak4xxx type
* support for card-specific flags in ak4114_stats
* definition of the flags for corresponding cards
Signed-off-by: Pavel Hofman <dustin@seznam.cz>
- ice1724 - Fix return codes in some pointis callbacks
Fixed the return codes (1 for changed values) in put callbacks of
pontis.
- ice1724 - Improved the Juli rate setting
* moving most of clock-specific code to card-specific routines
* support for ESI Juli
* to-be-researched - monitoring of analog/digital inputs
Signed-off-by: Pavel Hofman <dustin@seznam.cz>
- Don't set gpio mask register in snd_ice1712_gpio_write_bits()
Some calls to snd_ice1712_gpio_write() go wrong, if
snd_ice1712_gpio_write_bits() ran before and changed the gpio mask register.
Read the actual gpio value and combine it with the to be set bits in the cpu
instead.
Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
- ice1712 - Add Terrasoniq TS88 support
Added the support of Terrasonq TS88.
Signed-off-by: Peter Lienig <lienig@rheinmetall-de.com>
- ice1724 - Fix IRQ lock-up with MPU access
The sound boards with VT1724 and compatible chips may lock up when
MPU401 is accessed together with the PCM streaming.
This patch fixes the problem.
- [ALSA] ice1724: fix MIDI
The VT1724 MIDI port is not MPU-401 compatible; remove the hacks that
try to make the MPU-401 library work with it, and just use some simple
device-specific code.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Tested-by: Pavel Hofman <pavel.hofman@insite.cz>

ICE1724 driver

- sound: ice1712: unused structs
Don't need to declare a struct when defining a structure layout. Both
of these structs are unused.
sound/pci/ice1712/revo.c:39:3: warning: symbol 'revo51' was not declared. Should it be static?
sound/pci/ice1712/phase.c:54:3: warning: symbol 'phase28' was not declared. Should it be static?
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- ice1724 - Fix the SPDIF input sample-rate on Juli@
AK4114 on Juli@ has the SPDIF input sample rate detection and
causes errors when an incompatible sample rate is chosen.
The patch adds the open hook to check the current rate and limit
the hw constraints.
- some fixes and cleanup for ICE1724 cards
* removing the hack with NON_AKM ak4xxx type
* support for card-specific flags in ak4114_stats
* definition of the flags for corresponding cards
Signed-off-by: Pavel Hofman <dustin@seznam.cz>
- ice1724 - Improved the Juli rate setting
* moving most of clock-specific code to card-specific routines
* support for ESI Juli
* to-be-researched - monitoring of analog/digital inputs
Signed-off-by: Pavel Hofman <dustin@seznam.cz>
- ice1724.c: toggle "chip reset" and "eeprom based setup" sequence
Let "chip reset" become first. Increasement of the "chip reset" related timeout
leads to correctly read eeprom's contents here.
Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
- Audiophile 192: Fix ad converter initialization
Correct some arguments in calls to snd_ice1712_gpio_write_bits() from
ap192_set_rate_val().
Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
- ice1724 - Fix IRQ lock-up with MPU access
The sound boards with VT1724 and compatible chips may lock up when
MPU401 is accessed together with the PCM streaming.
This patch fixes the problem.
- Add MPU401_INFO_NO_ACK bitflag
Added MPU401_INFO_NO_ACK bitflag to ignore the ACK check for UART
commands. VT172x doesn't handle ACK commands, for example.
Tested-by: Pavel Hofman <pavel.hofman@insite.cz>
- ice1724 - Enable watermarks
Enable watermarks settings (previously commented out) for MPU RX/TX.
Otherwise irqs aren't issued properly.
Tested-by: Pavel Hofman <pavel.hofman@insite.cz>
- [ALSA] ice1724: fix MIDI
The VT1724 MIDI port is not MPU-401 compatible; remove the hacks that
try to make the MPU-401 library work with it, and just use some simple
device-specific code.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Tested-by: Pavel Hofman <pavel.hofman@insite.cz>

ISA

- Convert to menuconfig
Convert menu in Kconfig files to menuconfig, as well as in kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- sound: Convert to menuconfig
Convert menu in sound Kconfig files to menuconfig and if.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] remove SND_GUS_SYNTH
After the removal of the sequencer instrument layer SND_GUS_SYNTH was
no longer used.
Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: opti93x: use cs4231 lib
This patch converts the Opti93x driver to use
the cs4231 library instead of duplicating the code.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Tested-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Intel8x0 driver

- Fix intel8x0.patch for 2.6.25 changes
- intel8x0 - Add support of 8 channel sound
Added the support of 8 channel sound for codecs that are known to work.
So far, only ALC850 is marked as a 8ch-support codec.
This fix is a modified version of the patch on ALSA BTS#2097 by
Martin Ellis:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2097
- x86: convert CPA users to the new set_page_ API
This patch converts various users of change_page_attr() to the new,
more intent driven set_page_*/set_memory_* API set.
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
- x86: cpa: move flush to cpa
The set_memory_* and set_pages_* family of API's currently requires the
callers to do a global tlb flush after the function call; forgetting this is
a very nasty deathtrap. This patch moves the global tlb flush into
each of the callers
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
- intel8x0 - Add quirk for Compaq Deskpro EN
Added the ac97_quirk hp_only for Compaq Deskpro EN.

L3 drivers

- [ALSA] remove CVS keywords
This patch removes CVS keywords that weren't updated for a long time
from comments.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

MAINTAINERS file

- 2.6 kernel sync
- Do not track mainstream files outside ALSA tree - use alsa-kernel.git repo
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

MIPS

- ALSA: ALSA driver for SGI HAL2 audio device
This patch adds a new ALSA driver for the audio device found inside
many older SGI workstation (Indy, Indigo2). The hardware uses a SGI
custom chip, which feeds two codec chips, an IEC chip and a synth chip.
Currently only one of the codecs is supported. This driver already has
the same functionality as the HAL2 OSS driver and will replace it.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ALSA driver for SGI O2 audio board
This patch adds a new ALSA driver for the audio device found inside
most of the SGI O2 workstation. The hardware uses a SGI custom chip,
which feeds a AD codec chip.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

MIPS SGI A2 Audio System

- ALSA: ALSA driver for SGI HAL2 audio device
This patch adds a new ALSA driver for the audio device found inside
many older SGI workstation (Indy, Indigo2). The hardware uses a SGI
custom chip, which feeds two codec chips, an IEC chip and a synth chip.
Currently only one of the codecs is supported. This driver already has
the same functionality as the HAL2 OSS driver and will replace it.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

MPU401 UART

- mpu401: reduce tx loop timeout
Reduce the number of times to check for a non-empty Tx FIFO from 100 to
2 because there is no MPU-401 implementation that needs more than one or
two reads to determine the actual FIFO status.
- Define MPU401 registers in sound/mpu401_uart.h
Define some MPU401 registers in sound/mpu401_uart.h so that other
drivers can refer to them.
- Add MPU401_INFO_NO_ACK bitflag
Added MPU401_INFO_NO_ACK bitflag to ignore the ACK check for UART
commands. VT172x doesn't handle ACK commands, for example.
Tested-by: Pavel Hofman <pavel.hofman@insite.cz>

Maestro3 driver

- sound: maestro3.c fix shadowed variable warnings
change id to elem_id as it is used to initialize each mixer element
sound/pci/maestro3.c:2071:25: warning: symbol 'id' shadows an earlier one
sound/pci/maestro3.c:67:13: originally declared here
index is used in each of these places to count over the dsp's memory,
change to the name dsp_index
sound/pci/maestro3.c:2572:9: warning: symbol 'index' shadows an earlier one
sound/pci/maestro3.c:66:12: originally declared here
sound/pci/maestro3.c:2604:9: warning: symbol 'index' shadows an earlier one
sound/pci/maestro3.c:66:12: originally declared here
[tiwai - fixed coding style issues as well]
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- [ALSA] maestro3: Fix hw volume on HP OmniBook
Make the hw volume buttons work correctly on some HP OmniBook laptops.
The original quirk was apparently applied a bit too early and it was
also lacking some critial register writes. This improved sequence was
discovered by trial and error (like the original sequence). Tested and
found working on OB500 and OB6000 laptops.
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Memalloc module

- regenerated memalloc.patch for proc change
- Move hack for dma_alloc_coherent() from alsa-kernel
Since the hack is removed from alsa-kernel tree, we need to move it to here.
- Fix the wrong patch in the last commit to memalloc.patch
The last patch broke the part of proc_create().
Also, added a workaround for 2.6.25 or former kernels.
- configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
Also all files using config.h directly were modified to use autoconf.h
conditionaly.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- sound: use non-racy method for /proc/driver/snd-page-alloc creation
Use proc_create() to make sure that ->proc_fops be setup before gluing PDE to
main tree.
Signed-off-by: Denis V. Lunev <den@openvz.org>
- Remove unneeded ugly hack for i386 in memalloc.c
The hack for dma_alloc_coherent() is no longer needed on 2.6.26 since
the base code was improved.

NM256 driver

- ALSA: correct kcalloc usage
kcalloc is supposed to be called with the count as its first argument and the
element size as the second.
Both arguments are size_t so does not affect correctness. This callsite is
during module_init and therefore not performance critical. Another patch will
optimize the case when the count is variable but the size is fixed.
Signed-off-by: Milton Miller <miltonm@bga.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>

Opti9xx drivers

- [ALSA] opti93x: fix sound ouput for Opti930
This patch fixes silenced output from the Opti930.
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: opti93x: use cs4231 lib
This patch converts the Opti93x driver to use
the cs4231 library instead of duplicating the code.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Tested-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PCI drivers

- asihpi: add hwdep (experimental)
Add hpi ioctl via hwdep (experimental, disabled by default).
Adjust sampleclock control to use new hpi apis.
Signed-off-by: Eliot Blennerhassett <linux@audioscience.com
- Convert to menuconfig
Convert menu in Kconfig files to menuconfig, as well as in kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ak4531_codec was moved from pci/ac97/ to pci/
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Remove old export flag for ak4531
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Move vmaster code to sound core
Move the codes for virtual master controls to sound core part so that
not only hda-intel drivers can use it.
- ca0106 - Add master volume controls
Added master volume and switch controls for ca0106 using vmaster.
- Emagic Audiowerk 2 ALSA driver.
Signed-off-by: Cedric Bregardis <cedric.bregardis@free.fr>
Signed-off-by: Jean-Christian Hassler <jhassler@free.fr>
- ice1724 - Improved the Juli rate setting
* moving most of clock-specific code to card-specific routines
* support for ESI Juli
* to-be-researched - monitoring of analog/digital inputs
Signed-off-by: Pavel Hofman <dustin@seznam.cz>
- virtuoso: add Xonar DX support
Add support for the Asus Xonar DX.
- [ALSA] fm801 - Fix kconfig dependency mess of fm801-tea575x
FM801-tea575x tuner has a reverse selection to V4L1 and this causes
nasty dependency problems.
The patch simplifies the dependency with a normal
"depends on VIDEO_V4L1". This decreases the usability but fixes bugs,
yeah. If any better feature like "requires" is introduced to kbuild
in future, we'll be able to switch it...
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] ice1724: fix MIDI
The VT1724 MIDI port is not MPU-401 compatible; remove the hacks that
try to make the MPU-401 library work with it, and just use some simple
device-specific code.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Tested-by: Pavel Hofman <pavel.hofman@insite.cz>
- [ALSA] Fix AC97 kconfig items
The kconfig items related with AC97-powersave must be outside the
CONFIG_SND_PCI range. And it'd be better together with CONFIG_SND_AC97.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Make ak4531 local to ens1370 driver
The ak4531 module is used only by ens1370 driver (and unlikely that
any other will use it ever). Let's make it local to ens1370.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

PDAudioCF driver

- configure: Added CONFIG_HAVE_DEPRECATED_CONFIG_H and CONFIG_HAVE_IS_POWER_OF_2 checks
Also all files using config.h directly were modified to use autoconf.h
conditionaly.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PDPlus driver

- Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Rename to CONFIG_SND_DEBUG_VERBOSE to match with its purpose better.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

PPC AWACS driver

- snd-powermac: AWACS and Screamer mixers for PM7500, Beige, and iMac SL
Add mixer controls and correct headphone detection bits for PowerMacs
7300/7500 (AWACS) and G3 Beige (Screamer), and iMac G3 Slot-loading
(Screamer).
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- snd-powermac: style awacs.s and awacs.h
Coding style corrections for awacs.c and awacs.h.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- snd-powermac: more coding style fixes for awacs.[ch]
Coding style fixes slipped from the last patch mistakenlly.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>

PPC Beep

- snd-powermac: older kernel compatibility
Allow to compile snd-powermac on older kernels.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- snd-powermac: more older kernel compatibility
More patches to allow to compile snd-powermac on older kernels.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>

PPC Burgundy driver

- snd-powermac: Burgundy mixers for B&W and iMac
Add mixer controls and correct headphone detection bits for PowerMac
G3 B&W and iMac G3 Tray-loading, both having Burgundy chipset.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- snd-powermac: style burgundy.c
Coding style corrections for burgundy.c.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>

PPC DACA driver

- Dont touch fs_struct in drivers
The sound drivers and the pnpbios core test for current->root != NULL. This
test seems to be unnecessary since we always have rootfs mounted before
initializing the drivers.
Signed-off-by: Jan Blunck <jblunck@suse.de>
Acked-by: Christoph Hellwig <hch@lst.de>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Jaroslav Kysela <perex@suse.cz>
Acked-by: Takashi Iwai <tiwai@suse.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
- ALSA: remove CONFIG_KMOD from sound
A bunch of things in alsa depend on CONFIG_KMOD,
use CONFIG_MODULES instead where the dependency
is needed at all.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

PPC PMAC driver

- powermac - fix irq handlers
Fix irq handlers to follow to the new style (the irq compat wrapper
does the conversion job).
- snd-powermac: enable headphone detection on older kernels
Enable port change interrupt while initialising AWACS, Screamer, and
Burgundy chipsets. Older kernels.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- snd-powermac: older kernel compatibility
Allow to compile snd-powermac on older kernels.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- snd-powermac: enable headphone detection
Enable port change interrupt while initialising AWACS, Screamer, and
Burgundy chipsets.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
- snd-powermac: style pmac.c
Coding style corrections for pmac.c.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>

PPC PS3 driver

- ALSA: Storage class should be before const qualifier
The C99 specification states in section 6.11.5:
The placement of a storage-class specifier other than at the
beginning of the declaration specifiers in a declaration is an
obsolescent feature.
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>

PPC Tumbler driver

- snd-powermac: more older kernel compatibility
More patches to allow to compile snd-powermac on older kernels.
Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>

PXA Mainstone driver

- [ARM] pxa: separate GPIOs and their mode definitions to pxa2xx-gpio.h
two reasons:
1. GPIO namings and their mode definitions are conceptually not part
of the PXA register definitions
2. this is actually a temporary move in the transition of PXA2xx to
use MFP-alike APIs (as what PXA3xx is now doing), so that legacy
code will still work and new code can be added in step by step
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] pxa: use new pin configuration mechanism for mainstone
1. the following code to configure PGSRx is no way portable and
intuitive:
- PGSR0 = 0x00008800;
- PGSR1 = 0x00000002;
- PGSR2 = 0x0001FC00;
- PGSR3 = 0x00001F81;
this is removed as low power state has already been encoded in
the pin configuration definitions.
Note: there is no specific reason for some of the GPIOs to drive
high in low power mode as indicated by the above setting, those
bits are ignored, and the result is validated to work.
2. the following code to configure GPIO wakeup is removed as this
is now totally handled by pxa2xx_mfp_config():
- PWER = 0xC0000002;
- PRER = 0x00000002;
- PFER = 0x00000002;
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] pxa: use gpio_keys.c to support mainstone's wakeup switch of GPIO1
NOTE: currently don't know if the key code of KEY_SUSPEND is fit for
such usage.
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] pxa: add partial keypad support for mainstone
This is partial because mainstone's keypad is really special, some of
the keys like '1', '2', ... are actually connected to two row/column
juntions, thus pressing '1' is equivalent to pressing 'A' & 'H'.
This is really brain damanged since it makes distinguishing between
pressing '1' and multiple keys pressing of 'A' & 'H' difficult.
So these special keys are not supported for the time being.
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- [ARM] 4901/3: mainstone: Register primary I2C bus
Mainstone has the primary I2C bus exposed for use on plugin modules.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: eric miao <eric.y.miao@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- Do not track mainstream files outside ALSA tree - use alsa-kernel.git repo
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

RME HDSP driver

- hdsp - RME 9632 fix at 192kHz
The bits indicating SPDIF frequency in the status register are not the same for
the 9632 than for the other cards, because it also supports 192kHz. A specific
bitmask has thus been added (used in hdsp_spdif_sample_rate()).
The 9632 does not seem to report external sample rates greater than 96kHz. In
this case, the best seems to report spdif rate when autosync reference is
spdif. This also required to move function hdsp_spdif_sample_rate().
Signed-off-by: Remy Bruno <remy.bruno@trinnov.com>

RME32 driver

- sound: rme32.c fix integer as NULL pointer warning
kernel style does assignment outside of if() statements.
sound/pci/rme32.c:1353:71: warning: Using plain integer as NULL pointer
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

RME96 driver

- sound: rme96.c fix integer as NULL pointer warning
kernel style does assignment outside of if() block
sound/pci/rme96.c:1562:71: warning: Using plain integer as NULL pointer
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

RME9652 driver

- sound: hdspm.c fix returning void expression warnings
Just drop the returns.
sound/pci/rme9652/hdspm.c:1031:3: warning: returning void-valued expression
sound/pci/rme9652/hdspm.c:1033:3: warning: returning void-valued expression
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- sound/pci/rme9652/hdspm.c: stop inlining largish static functions
sound/pci/rme9652/hdspm.c has unusually large number of static inline
functions - 22.
I looked through them and some of them seem to be too big to warrant inlining.
This patch removes "inline" from these static functions (regardless of number
of callsites - gcc nowadays auto-inlines statics with one callsite).
Size difference on 32bit x86:
text data bss dec hex filename
20437 2160 516 23113 5a49 linux-2.6-ALLYES/sound/pci/rme9652/hdspm.o
18036 2160 516 20712 50e8 linux-2.6.inline-ALLYES/sound/pci/rme9652/hdspm.o
[coding fix by Takashi Iwai <tiwai@suse.de>]
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>

RTC timer driver

- Fix build of rtctimer.c for older kernels
is_power_of_2() is missing for kernels older than 2.6.21.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SA11xx UDA1341 driver

- [ALSA] remove CVS keywords
This patch removes CVS keywords that weren't updated for a long time
from comments.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SAA7134 driver

- Fix synchronize_irq() bugs, redundancies
free_irq() calls synchronize_irq() for you, so there is no need for
drivers to manually do the same thing (again). Thus, calls where
sync-irq immediately precedes free-irq can be simplified.
However, during this audit several bugs were noticed, where free-irq is
preceded by a "irq >= 0" check... but the sync-irq call is not covered
by the same check.
So, where sync-irq could not be eliminated completely, the missing check
was added.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
- 2.6 kernel sync - add one-line changes

SB drivers

- sound: replace remaining __FUNCTION__ occurences
__FUNCTION__ is gcc-specific, use __func__
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- [ALSA] trivial clean up of sound/isa/sb/Makefile
Remove unneeded sort in sound/isa/sb/Makefile.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: sb - Fix wrong assertions
snd_assert() in save_mixer() and restore_mixer() in sb_mixer.c is
just wrong. The debug code wasn't tested at all, obviously...
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SB16/AWE driver

- sound: replace remaining __FUNCTION__ occurences
__FUNCTION__ is gcc-specific, use __func__
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>

SB8 driver

- sb8: fix SB 1.0 capture DMA programming
Fix a wrong version check that would cause an invalid command to be sent
to SB 1.0 chips.

SGI O2 Audio

- ALSA: ALSA driver for SGI O2 audio board
This patch adds a new ALSA driver for the audio device found inside
most of the SGI O2 workstation. The hardware uses a SGI custom chip,
which feeds a AD codec chip.
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SIS7019 driver

- ALSA: Storage class should be before const qualifier
The C99 specification states in section 6.11.5:
The placement of a storage-class specifier other than at the
beginning of the declaration specifiers in a declaration is an
obsolescent feature.
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>

SPARC DBRI driver

- ALSA: make sparc/dbri.c:snd_dbri_proc() static
This patch makes the needlessly global snd_dbri_proc() static.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Audio for the Atmel AT32 System-on-Chip

- Add soc/at32/Makefile for build
No stub files yet.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Revised AT32 ASoC Patch
Attached is a revised version of my patch to add AT32 to ASoC. This cleans
most of the style issues associated with the previous patch. Also fixes an
issue with the playpaq_wm8510.c code depending on a non-released patch to th
AT32 portmux support.
Patch is against 2.6.24.3.atmel.3 kernel, the latest AVR32 kernel Atmel has
released, with the linux-2.6-asoc patches from when v2.6.24 was tagged also
applied.
[Fixed up minor checkpatch issues and updated for current kernels -- broonie]
Signed-off-by: Geoffrey Wossum <gwossum@acm.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: asoc: at32 - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch series merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for AT32 platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: machines - add Digital Audio Interface (DAI) control functions.
This patch adds several functions for DAI control and config
and replaces the current method of calling function pointers within
the DAI struct within the machine drivers.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: at32 - DAI struct merge and enable_pin() change.
This adds support for the recent DAI struct merge and new DAPM pin API.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Audio for the Atmel AT91 System-on-Chip

- [ARM] 4912/2: [AT91] Endrelia audio driver must use GPIO interface
The SoC audio driver for the Endrelia ETI_B1 board should not access
the PIO controller directly, but must rather use the AT91 GPIO
interface.
(This is updated version of patch with removed trailing whitespace)
Signed-off-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
- soc - at91-pcm - Fix line wrapping
There's more checkpatch stuff to fix in the driver, this just fixes the
minimum required for the following patch to be clean.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc at91 minor bug fixes
Found these two bugs while browsing through the code. The first one is
a cut-n-paste bug, instead of disabling the clock when request_irq()
fails, it enabled it once more. The second one fixes a debug printout,
AT91_SSC_IER is write only, AT91_SSC_IMR is readable (the printed string
actually says imr).
Frank Mandarino was busy so he asked me to send these to this list.
/Patrik
Signed-off-by: Patrik Sevallius <patrik.sevallius@enea.com>
Acked-by: Frank Mandarino <fmandarino@endrelia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - eti_b1_wm8731 - Convert to use bulk DAPM control registration
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Frank Mandarino <fmandarino@endrelia.com>
- ALSA: asoc: at91 - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the AT91 platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Audio for the Samsung S3C24XX chips

- soc - Fix s3c24xx-i2s LR sync while timer ticks are disabled
When timer ticks are disabled when calling
sound/soc/s3c24xx/s3c24xx-i2s.c:s3c24xx_snd_lrsync
and the LR signal never happens, we loop forever.
This has been observed in the following call chain:
snd_pcm_common_ioctl1 -> snd_pcm_action_lock_irq ->
snd_pcm_action_single
-> snd_pcm_do_resume -> soc_pcm_trigger -> s3c24xx_i2s_trigger
The patch below changes the timeout mechanism to use udelay, which
doesn't need timer ticks.
Signed-off-by: Werner Almesberger <werner@openmoko.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - neo1973_wm8753 - Fix module unload
Signed-off-by: Tim Niemeyer <reddog@mastersword.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c24xx-i2s - Replace __FUNCTION__ with __func__
__FUNCTION__ is GCC specific and checkpatch won't let us submit with it.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c24xx - Improve diagnostic output
Add some debug messages for suspend/resume and to add a clear prefix to
s3c24xx-i2s and s3c24xx-pcm.
Signed-off-by: Tim Niemeyer <reddog@mastersword.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c24xx - Declare suspend and resume static
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c24xx-i2s - Use linux/io.h
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c24xx-i2s - Fix tab/space breakage
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c24xx-i2s - Add missing spaces
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c2443-ac97 - Fix checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - s3c24xx-pcm - Fix checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - ln2440sbc_alc650 - Fix checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - neo1973_wm8753.c cleanup checkpatch issues
Clean up a few issues with the file that checkpatch noted, no functionality
changes.
Signed-off-by: Graeme Gregory <graeme@openmoko.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - neo1973_wm8753.c change maintainer contact info
I have moved workplaces since I originally wrote this driver so update
the contact info for new employers.
Signed-off-by: Graeme Gregory <graeme@openmoko.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - neo1973_wm8753.c add suspend and shutdown hooks for lm4857 chip
Patch taken from the openmoko bugtracker
http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=781
This patch adds Suspend/Resume and Shutdown support for the lm4857 to
the driver.
Signed-off-by: Graeme Gregory <graeme@openmoko.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - fix s3c2410 PCM breakage
S3C2410 pcm doesn't work.
s3c2410_dma_request() now returns the channel number and not 0 if OK.
Signed-off-by: Davide Rizzo <davide@elpa.it>
Acked-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
- soc - fix S3C2410 i2s programming error
S3C2410 i2s driver currently manages only i2s protocol (and not left
justified one) and slave mode.
With this small patch, other modes are possible.
Signed-off-by: Davide Rizzo <davide@elpa.it>
Acked-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
- soc - Patch to add debug messages to the neo1973_wm8753 (GTA01) sound driver
Signed-off-by: Tim Niemeyer <reddog@mastersword.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - neo1973_wm8753 - Convert to bulk DAPM registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Graeme Gregory <graeme@openmoko.org>
- ALSA: ASoC: Add TLV information to the LM4857 controls on the GTA01
Signed-off-by: Mike Montour <mail@mmontour.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: s3c24xx - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the S3C24xx platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec AC97

- soc - ac97 - Clean up checkpatch warnings
Also change some if (x == NULL) to if (!x).
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ASoC: Remove in-code changelogs
The overwhelming majority just say "initial version" anyway.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Ben Dooks <ben-linux@fluff.org>
- [ALSA] ASoC: Remove in-code changelogs
The overwhelming majority just say 'initial version' anyway.
Acked-by: Ben Dooks <ben-linux@fluff.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 missing includes
Ensure that DAIs are prototyped in the codec drivers that define them.
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: AC97 codec PM
Simple suspend/resume for AC97 ASoC codec.
Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Acked-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the codec drivers.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec AK4535

- ALSA: ASoC: Add AK4535 driver
The AK4535 codec is included in some HP iPAQ systems.
This driver was originally written by Richard Purdie and with some bug
fixes from Milan Plzik. While out of tree it has also had some
mechanical updates for new APIs and current best practices from Liam
Girdwood, Graeme Gregory and Mark Brown.
Signed-off-by: Richard Purdie <richard@openedhand.com>
Signed-off-by: Milan Plzik <milan.plzik@gmail.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: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the codec drivers.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec CS4270

- SOC: fix tests in cs4270_hw_params()
cs4270_hw_params does several times:
ret = snd_soc_write()
if (ret < 0)
...
This only works when ret is signed.
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
- ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the codec drivers.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec Philips UDA1380

- [ALSA] ASoC: Add UDA1380 driver
The UDA1380 codec is used by the HTC Magician and a number of Samsung
reference boards.
This driver has had a long out of tree history, having originally been
written by Giorgio Padrin and converted to ASoC by Richard Purdie.
Since conversion to ASoC most of the work on the driver has been done by
Philipp Zabel with some review and updates for new APIs by Liam Girdwood
and Mark Brown.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Fix register cache size for UDA1380
The register cache size is used by the codec_reg sysfs file which works in
terms of the register cache access functions rather than in terms of raw
access to the cache so the size specified needs to be in terms of the
number of elements.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec TLV320AIC3X

- ASoC: Fix TLV320AIC3X PLL divider table for 64 kHz rate
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- ASoC: Add support for 12 MHz MCLK in TLV320AIC3X
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- ASoC/TLV320AIC3X: Stop I2C driver ID abuse
Please stop using random I2C driver IDs.
Also removed a pointless initialization to 0 of a static struct member.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
- ASoC: Add support for 19.2 MHz MCLK in TLV320AIC3X
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - tlv320aic3x - revisit clock setup
This patch cleans up the clocking setup for aic3x codecs. It drops the
dividers table and determines the PLL control values programatically.
Under certain conditions, the PLL is disabled entirely which could save
some power.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - tlv320aic3x - add GPIO support
This patch adds support for AIC3x GPIO lines. They can be configured for
many possible functions as well as be driven manually. I also introduced
i2c read functionality since the GPIO state register has to be read from
hardware every time and can not be served from cache.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ASoC: Fix TLV320AIC3X mono line output interconnect
There is no endpoint called MONOLOUT but MONO_LOUT.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- soc - tlv320aic3x - Convert to use bulk registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
- ASoC: Clarify API for bias configuration
Currently the ASoC core configures the bias levels in the system using
a callback on codecs and machines called "dapm_event", passing it PCI
style power levels as SNDRV_CTL_POWER_ constants. This is more obscure
than it needs to be and has caused confusion to driver authors,
especially given that DAPM is also performing power management.
Address this by renaming the callback function to "set_bias_level" and
using constants explicitly representing the off, standby, pre-on and on
states which DAPM transitions through.
Also unexport the API for setting bias level: there are currently no
in-tree users of this API other than the core itself and it is likely
that the core would need to be extended to cater for any users.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
- ALSA: ASoC: Tweak tlv320aicx reg_cache_size
ASoC codec drivers frequently set the register cache size using sizeof()
rather than ARRAY_SIZE(). For tlv320aicx either is correct since the
registers are 8 bit but update to use ARRAY_SIZE() for clarity.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: TLV320AIC3X: Use register modifier widget for mic bias
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: TLV320AIC3X: Modify only interface related bits in aic3x_set_dai_fmt
Those two serial data interface control register bits have also other
functions and they can be set before aic3x_set_dai_fmt is called.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: TLV320AIC3X: Add support for digital microphone input
AIC33 and AIC34 codecs in TLV320AIC3x family support digital microphone
input. When enabled, the codec ADC takes bitstream input to low-pass
filter from GPIO2 instead of its own delta-sigma modulator while providing
oversampling clock through GPIO1.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: TLV320AIC3X: Add mixer control for ADC highpass filter
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: codecs - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the codec drivers.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Codec WM8510

- [ALSA] ASoC: Add WM8510 driver
The WM8510 is a mono CODEC with speaker driver optimised for telephony
applications, featuring:
- 16/20/24/32 bit audio at data rates between 8kHz and 48kHz
- On-chip PLL
- Dual microphone inputs
This driver was originally written by Liam Girdwood with updates from
Brett Saunders, Geoffrey Wossum and myself.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Brett Saunders <breton.saunders@ntlworld.com>
Signed-off-by: Geoffrey Wossum <geoffrey@pager.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] ASoC: Fix default mono mixer configuration for WM8510
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: Replace custom debug macros with pr_ equivalents
Several ASoC codec drivers use custom macros equivalent to the standard
pr_ macros, most of which are not actually used. Replace these custom
macros with the standard ones.
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 WM8731

- soc - wm8731 - Clean up checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Convert Wolfson codec drivers to use bulk DAPM registration
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ALSA: ASoC: Fix register cache sizes for Wolfson codecs
The register cache size is used by the codec_reg sysfs file which works in
terms of the register cache access functions rather than in terms of raw
access to the cache so the size specified needs to be in terms of the
number of elements.
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: Replace custom debug macros with pr_ equivalents
Several ASoC codec drivers use custom macros equivalent to the standard
pr_ macros, most of which are not actually used. Replace these custom
macros with the standard ones.
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 WM8750

- soc - wm8750 - Clean up checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Convert Wolfson codec drivers to use bulk DAPM registration
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ALSA: ASoC: Fix register cache sizes for Wolfson codecs
The register cache size is used by the codec_reg sysfs file which works in
terms of the register cache access functions rather than in terms of raw
access to the cache so the size specified needs to be in terms of the
number of elements.
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: Replace custom debug macros with pr_ equivalents
Several ASoC codec drivers use custom macros equivalent to the standard
pr_ macros, most of which are not actually used. Replace these custom
macros with the standard ones.
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 WM8753

- soc - Add Invert Switch for ROUT2
GTA02 device has a speaker between LOUT2 & ROUT2 and in this mode ROUT2
needs to be inverted. This patch adds a mixer control for this.
Signed-off-by: Graeme Gregory <graeme@openmoko.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - wm8753 - Clean up checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Convert Wolfson codec drivers to use bulk DAPM registration
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ALSA: ASoC: Fix register cache sizes for Wolfson codecs
The register cache size is used by the codec_reg sysfs file which works in
terms of the register cache access functions rather than in terms of raw
access to the cache so the size specified needs to be in terms of the
number of elements.
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 TLV information to remaining WM8753 controls
Signed-off-by: Mike Montour <mail@mmontour.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: Replace custom debug macros with pr_ equivalents
Several ASoC codec drivers use custom macros equivalent to the standard
pr_ macros, most of which are not actually used. Replace these custom
macros with the standard ones.
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 WM8990

- [ALSA] ASoC: Add WM8990 driver
The WM8990 is a highly integrated ultra-low power hi-fi codec designed
for handsets rich in multimedia features such as mobile TV, digital
audio playback and gaming.
The bulk of this driver was written by Liam Girdwood with some
additional development and updates for new ASoC APIs by me.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC Codec WM9712

- ASoC: Fix WM9712 mixer_event DAPM widget function type
Add kcontrol argument to function since the API was changed by the commit
9af6d9562414568ecadf96aaef5b88e7e8b19821.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- soc - wm9712: Remove unneeded AC97_EXTENDED_MID updates
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - wm9712 - checkpatch fixes
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Convert Wolfson codec drivers to use bulk DAPM registration
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ASoC: Remove in-code changelogs
The overwhelming majority just say "initial version" anyway.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Ben Dooks <ben-linux@fluff.org>
- [ALSA] ASoC: Remove in-code changelogs
The overwhelming majority just say 'initial version' anyway.
Acked-by: Ben Dooks <ben-linux@fluff.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 missing includes
Ensure that DAIs are prototyped in the codec drivers that define them.
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: Check for exact register match in wm97xx_reset()
To provide added robustness in case an AC97 controller reads back all
zeros in error cases check for an exact match when testing to see if
resets have brought the codec back.
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 WM9713

- ASoC: WM9713 driver
This patch adds an ASoC driver for the WM9713 AC97 codec.
Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Add missing audio path between Mono Mixer and Mic PGAs
Signed-off-by: Robert Jarzmik <rjarzmik@free.fr>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- wm9713: Don't control touch screen power on suspend
Leave the power bit for the touch screen alone when suspending the WM9713
so that the touch screen driver can handle it. This allows the touch
screen to be used as a wakeup source when the system is suspended.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ASoC: Remove in-code changelogs
The overwhelming majority just say "initial version" anyway.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Ben Dooks <ben-linux@fluff.org>
- [ALSA] ASoC: Remove in-code changelogs
The overwhelming majority just say 'initial version' anyway.
Acked-by: Ben Dooks <ben-linux@fluff.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: Fix WM9713 voice PCM slave mode configuration
Reported-by: Rodolfo Giometti <giometti@enneenne.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: Check for exact register match in wm97xx_reset()
To provide added robustness in case an AC97 controller reads back all
zeros in error cases check for an exact match when testing to see if
resets have brought the codec back.
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: Advertise 16000Hz rate for WM9713 PCM interface
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 DaVinci

- Add soc/davinci build stub
Added soc/davinci build stub and fixed mod-deps.c to avoid unconditional
build of snd-davinci-soc-i2s module.
- Davinci ASoC support
Add ASoC support for the TI Davinci SoC and the Davicni-EVM reference board.
It includes:
- ASoC Davinci DMA driver
- ASoC Davinci I2S (Davinci McBSP module based) driver
- ASoC Davinci-EVM reference board
Signed-off-by: Vladimir Barinov <vbarinov@ru.mvista.com>
- soc - davinci-evm - Update for bulk DAPM registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ALSA: ASoC: Pass the DAI being configured into CPU DAI probe and remove
This allows per-DAI initialisation to be done by the CPU DAI drivers.
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: davinci - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the DaVinci platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Dynamic Audio Power Management

- soc - Report errors from snd_soc_dapm_set_endpoint()
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Include register in DAPM debug output
When logging register changes in DAPM debug output include the register
number.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - DAPM - add hook to read state of DAPM widget
This adds a hook to read the power state of a DAPM widget, I use this
in the gta02 driver to expose certain DAPM widgets in the mixer for
ease of audio routing.
Signed-off-by: Graeme Gregory <graeme@openmoko.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- sound: fix export symbol typo
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
- soc - DAPM - Add bulk control registration
Most SoC drivers cut'n'paste a loop iterating over an array to register
their DAPM controls. Provide a function they can call instead.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Frank Mandarino <fmandarino@endrelia.com>
Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
- soc - DAPM - Bulk route registration
ASoC codecs and machine drivers that use DAPM routes all cut'n'paste a
loop iterating over a null terminated array of routes. Factor out this
into a bulk registration function, improving the error reporting for
most users, and deprecate the old API to help out of tree users pick up
the changes.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Frank Mandarino <fmandarino@endrelia.com>
Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
- ASoC: Clarify API for bias configuration
Currently the ASoC core configures the bias levels in the system using
a callback on codecs and machines called "dapm_event", passing it PCI
style power levels as SNDRV_CTL_POWER_ constants. This is more obscure
than it needs to be and has caused confusion to driver authors,
especially given that DAPM is also performing power management.
Address this by renaming the callback function to "set_bias_level" and
using constants explicitly representing the off, standby, pre-on and on
states which DAPM transitions through.
Also unexport the API for setting bias level: there are currently no
in-tree users of this API other than the core itself and it is likely
that the core would need to be extended to cater for any users.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
- ALSA: ASoC: Add support for generic DAPM register modifier widget
This generic register modifier widget is for updating multiple codec
register bits at once when the widget changes its power state.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Make pop/click debug wait times dynamically configurable
DAPM supports adding a compile time configurable delay to the widget power
sequences, aiding diagnosis of problems with pops and clicks being
generated during them. This patch converts this to be configurable at run
time via a sysfs file.
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 warning from strict_strtoul()
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: core - refactored DAPM pin control API.
Refactored snd_soc_dapm_set_endpoint() to snd_soc_dapm_enable_pin() and
snd_soc_dapm_disable_pin().
Renamed snd_soc_dapm_sync_endpoints() to snd_soc_dapm_sync().
Renamed snd_soc_dapm_get_endpoint_status() to
snd_soc_dapm_get_pin_status().
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Switch DAPM to use of standard DEBUG macro
DAPM contains debug output controlled by a DAPM_DEBUG macro. Change this
to be controlled by the standard DEBUG, dropping the custom dbg() macro
as we go.
Also fix the error printed when configuring an unknown pin to be an
unconditionally displayed error rather than debug output.
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: Dump DAPM state for non-stream changes
Explicit DAPM syncs are likely to cause DAPM state updates, as are mixer
and mux configuration changes, so display the DAPM status after them too.
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

- soc - duplicate strcasecmp test for "rj-master" in mpc8610_hpcd_probe()
In linus' git tree I found this problem. Is it also in the alsa tree?
please confirm it's the right fix. The patch was not yet tested.
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Acked-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- Removed deprecated sound/driver.h from Freescale MPC8610 drivers
With commit 9004acc70e8c49c50c4c7b652f906f1e0ed5709d, include/sound/driver.h
is deprecated. This patch removes the #include from fsl_ssi.c and fsl_dma.c.
Signed-off-by: Timur Tabi <timur@freescale.com>
- soc - fsl_ssi.c fix "BUG: scheduling while atomic"
From: Anton Vorontsov <avorontsov@ru.mvista.com>
This patch fixes following bug caught with PREEMPT enabled:
root@b1:~# cat /dev/dsp > /dev/null
BUG: scheduling while atomic: cat/965/0x00000003
Call Trace:
[df165ce0] [c0008e84] show_stack+0x4c/0x1ac (unreliable)
[df165d20] [c001c18c] __schedule_bug+0x64/0x78
[df165d30] [c02b3344] schedule+0x2d8/0x334
[df165d70] [c02b3674] schedule_timeout+0x64/0xe4
[df165db0] [c002c05c] msleep+0x1c/0x34
[df165dc0] [c01f2fe0] fsl_ssi_trigger+0x130/0x144
[df165dd0] [c01ece54] soc_pcm_trigger+0x94/0xb8
[df165df0] [c01da764] snd_pcm_do_start+0x48/0x60
[df165e00] [c01da630] snd_pcm_action_single+0x4c/0xb4
[df165e20] [c01e0f50] snd_pcm_lib_read1+0x2a0/0x2d4
[df165e70] [c01ec274] snd_pcm_oss_read3+0xf0/0x13c
[df165eb0] [c01ec2e4] snd_pcm_oss_read2+0x24/0x4c
[df165ec0] [c01ec4ac] snd_pcm_oss_read+0x1a0/0x1f0
[df165ef0] [c0076478] vfs_read+0xb4/0x108
[df165f10] [c00768cc] sys_read+0x4c/0x90
[df165f40] [c00117a4] ret_from_syscall+0x0/0x38
Acked-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ALSA: Fix register programming in Freescale MPC8610 HPCD sound driver
Fix the Freescale MPC8610 HPCD sound driver so that it programs the DMACR
and PMUXCR registers in the global utilities correctly.
Signed-off-by: Timur Tabi <timur@freescale.com>
Acked-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: fsl - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the Freescale PPC platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: kbuild - only show menus for the current ASoC CPU platform.
We don't want to see ASoC platform menus for other non selected
architectures in our config.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Layer

- ASoC: WM9713 driver
This patch adds an ASoC driver for the WM9713 AC97 codec.
Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- Davinci ASoC support
Add ASoC support for the TI Davinci SoC and the Davicni-EVM reference board.
It includes:
- ASoC Davinci DMA driver
- ASoC Davinci I2S (Davinci McBSP module based) driver
- ASoC Davinci-EVM reference board
Signed-off-by: Vladimir Barinov <vbarinov@ru.mvista.com>
- sound: fix platform driver hotplug/coldplug
Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is
prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable sound
platform drivers, to re-enable auto loading.
[dbrownell@users.sourceforge.net: more drivers, registration fixes]
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- ASoC: Add drivers for the Texas Instruments OMAP processors
Add common OMAP ASoC drivers and machine driver for Nokia N810. Currently
supported features are:
- Covers OMAPs from 1510 to 2420
- Common DMA driver
- DAI link driver using McBSP port in I2S mode
- Basic machine driver for Nokia N810
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ASoC: build fix for snd_soc_info_bool_ext
I suspect that snd_ctl_boolean_mono should have been
snd_ctl_boolean_mono_info instead. This fixes the build for magician.
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ASoC: Clarify API for bias configuration
Currently the ASoC core configures the bias levels in the system using
a callback on codecs and machines called "dapm_event", passing it PCI
style power levels as SNDRV_CTL_POWER_ constants. This is more obscure
than it needs to be and has caused confusion to driver authors,
especially given that DAPM is also performing power management.
Address this by renaming the callback function to "set_bias_level" and
using constants explicitly representing the off, standby, pre-on and on
states which DAPM transitions through.
Also unexport the API for setting bias level: there are currently no
in-tree users of this API other than the core itself and it is likely
that the core would need to be extended to cater for any users.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
- ASoC: Make CPU and codec DAI operations have same type
The CPU and codec DAI operations differ only in the presence of the
digital mute operation for the codec so they may as well be the same
type.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- ASoC: core checkpatch cleanups
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- [ALSA] ASoC: Make CPU and codec DAI operations have same type
The CPU and codec DAI operations differ only in the presence of the
digital mute operation for the codec so they may as well be the same
type.
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 SOC_DOUBLE_S8_TLV control type
The SOC_DOUBLE_S8_TLV control type was originally implemented in the
UDA1380 driver by Philipp Zabel and was moved into the core by me.
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] ASoC: Add UDA1380 driver
The UDA1380 codec is used by the HTC Magician and a number of Samsung
reference boards.
This driver has had a long out of tree history, having originally been
written by Giorgio Padrin and converted to ASoC by Richard Purdie.
Since conversion to ASoC most of the work on the driver has been done by
Philipp Zabel with some review and updates for new APIs by Liam Girdwood
and Mark Brown.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] ASoC: Add WM8510 driver
The WM8510 is a mono CODEC with speaker driver optimised for telephony
applications, featuring:
- 16/20/24/32 bit audio at data rates between 8kHz and 48kHz
- On-chip PLL
- Dual microphone inputs
This driver was originally written by Liam Girdwood with updates from
Brett Saunders, Geoffrey Wossum and myself.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Brett Saunders <breton.saunders@ntlworld.com>
Signed-off-by: Geoffrey Wossum <geoffrey@pager.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] ASoC: Add WM8990 driver
The WM8990 is a highly integrated ultra-low power hi-fi codec designed
for handsets rich in multimedia features such as mobile TV, digital
audio playback and gaming.
The bulk of this driver was written by Liam Girdwood with some
additional development and updates for new ASoC APIs by me.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] Revised AT32 ASoC Patch
Attached is a revised version of my patch to add AT32 to ASoC. This cleans
most of the style issues associated with the previous patch. Also fixes an
issue with the playpaq_wm8510.c code depending on a non-released patch to th
AT32 portmux support.
Patch is against 2.6.24.3.atmel.3 kernel, the latest AVR32 kernel Atmel has
released, with the linux-2.6-asoc patches from when v2.6.24 was tagged also
applied.
[Fixed up minor checkpatch issues and updated for current kernels -- broonie]
Signed-off-by: Geoffrey Wossum <gwossum@acm.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: ASoC: Pass the DAI being configured into CPU DAI probe and remove
This allows per-DAI initialisation to be done by the CPU DAI drivers.
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 SOC_SINGLE_EXT_TLV control type
Signed-off-by: Mike Montour <mail@mmontour.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: Don't block system resume
On OpenMoko soc-audio resume is taking 700ms of the whole resume time of
1.3s, dominated by writes to the codec over I2C. This patch shunts the
resume guts into a workqueue which then is done asynchronously.
The "card" is locked using the ALSA power state APIs as suggested by
Mark Brown.
[Added fix for race with resume to suspend and fixed a couple of nits
from checkpatch -- broonie.]
Signed-off-by: Andy Green <andy@openmoko.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 PM=n build
Fix sound/soc build failure when CONFIG_PM=n:
linux-next-20080617/sound/soc/soc-core.c:829: error: 'soc_resume_deferred' undeclared (first use in this function)
soc3.out:make[3]: *** [sound/soc/soc-core.o] Error 1
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.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 AK4535 driver
The AK4535 codec is included in some HP iPAQ systems.
This driver was originally written by Richard Purdie and with some bug
fixes from Milan Plzik. While out of tree it has also had some
mechanical updates for new APIs and current best practices from Liam
Girdwood, Graeme Gregory and Mark Brown.
Signed-off-by: Richard Purdie <richard@openedhand.com>
Signed-off-by: Milan Plzik <milan.plzik@gmail.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: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: core - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch series merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai in preparation for further
ASoC v2 patches.
This merger removes duplication in both DAI structures and simplifies
the API for other users.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: core - add Digital Audio Interface (DAI) control functions.
This patch adds several functions for DAI control and config
and replaces the current method of calling function pointers within
the DAI struct.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Au12x0/Au1550 PSC Audio support
Audio for Au12x0/Au1550 PSCs in AC97 and I2S mode, for ASoC v1 framework.
- DBDMA, AC97 and I2S drivers
- sample AC97 machine code (Db1200)
Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC PXA2xx Corgi

- ASoC: Fix DAPM widget function types in pxa machine drivers
Add kcontrol argument to functions since the API was changed by the commit
9af6d9562414568ecadf96aaef5b88e7e8b19821.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- soc - corgi - Fix checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Zaurus - Convert to bulk DAPM registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
- ASoC: Remove in-code changelogs
The overwhelming majority just say "initial version" anyway.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Ben Dooks <ben-linux@fluff.org>
- [ALSA] ASoC: Remove in-code changelogs
The overwhelming majority just say 'initial version' anyway.
Acked-by: Ben Dooks <ben-linux@fluff.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: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the PXA platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC PXA2xx EM-X270

- [ALSA] Add EM-X270 ASoC driver
This patch adds ASoC support for EM-X270 machine.
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

SoC PXA2xx Poodle

- ASoC: Fix DAPM widget function types in pxa machine drivers
Add kcontrol argument to functions since the API was changed by the commit
9af6d9562414568ecadf96aaef5b88e7e8b19821.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- soc - poodle - Fix checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Zaurus - Convert to bulk DAPM registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
- ALSA: asoc: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the PXA platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC PXA2xx Spitz

- ASoC: Fix DAPM widget function types in pxa machine drivers
Add kcontrol argument to functions since the API was changed by the commit
9af6d9562414568ecadf96aaef5b88e7e8b19821.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- soc - spitz - Fix checkpatch warnings
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - Zaurus - Convert to bulk DAPM registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
- ALSA: asoc: pxa - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the PXA platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC PXA2xx Tosa

- ASoC: Fix DAPM widget function types in pxa machine drivers
Add kcontrol argument to functions since the API was changed by the commit
9af6d9562414568ecadf96aaef5b88e7e8b19821.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- soc - Zaurus - Convert to bulk DAPM registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
- ALSA: tosa: fix compilation with new DAPM API
Signed-off-by: Dmitry Baryshkov <dbaryshkov@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>

SoC SH7760 AC97

- ALSA: asoc: sh - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the SuperH platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

SoC Texas Instruments OMAP

- Add build stub for soc omap drivers
- ASoC: Add drivers for the Texas Instruments OMAP processors
Add common OMAP ASoC drivers and machine driver for Nokia N810. Currently
supported features are:
- Covers OMAPs from 1510 to 2420
- Common DMA driver
- DAI link driver using McBSP port in I2S mode
- Basic machine driver for Nokia N810
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
- soc - n810 - Update for bulk DAPM registration APIs
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
- ASoC: Fix wrong enum count for jack_function in N810 machine driver
Fix this typo and avoid similar errors by using ARRAY_SIZE macro.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- ASoC: Convert N810 machine driver to use gpiolib
Use gpiolib since it is now available for OMAPs. Change also references to
HW version RX44 to product name N810.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
- [ALSA] ASoC: Convert N810 machine driver to use gpiolib
Use gpiolib since it is now available for OMAPs. Change also references to
HW version RX44 to product name N810.
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Cover also Nokia N810 WiMAX Edition in N810 machine 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>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: ASoC: Add digital mic configuration to N810 machine driver
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: omap - merge structs snd_soc_codec_dai and snd_soc_cpu_dai.
This patch merges struct snd_soc_codec_dai and struct
snd_soc_cpu_dai into struct snd_soc_dai for the Omap platform.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: n810 - fix build error.
This patch adds a missing " that was recently introduced (removed)
in the DAI struct merge patch series.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: asoc: kbuild - only show menus for the current ASoC CPU platform.
We don't want to see ASoC platform menus for other non selected
architectures in our config.
Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Trident driver

- [ALSA] trident - clean up obsolete synth codes
Clean up the unused synth codes in the memory handling of trident driver.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: trident - pause s/pdif output
Stop the S/PDIF DMA engine and output when the device is told to pause.
It will keep on looping the current buffer contents if this isn't done.
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Tested-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

UDA1341

- [ALSA] remove CVS keywords
This patch removes CVS keywords that weren't updated for a long time
from comments.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

USB MIDI Gadget driver

- USB: gadget code switches to pr_err() and friends
We now have pr_err(), pr_warning(), and friends ... start using
them in the gadget stack instead of printk(KERN_ERR) and friends.
This gives us shorter lines and somewhat increased readability.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

USB USX2Y

- adapt usx2y patches for VM_DONTEXPAND change
- vm audit: add VM_DONTEXPAND to mmap for drivers that need it
Drivers that register a ->fault handler, but do not range-check the
offset argument, must set VM_DONTEXPAND in the vm_flags in order to
prevent an expanding mremap from overflowing the resource.
I've audited the tree and attempted to fix these problems (usually by
adding VM_DONTEXPAND where it is not obvious).
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

USB caiaq

- Fix caiaq-device.patch
- caiaq - fix section mismatch warning
Fix following warning:
WARNING: vmlinux.o(.text+0x11ec01a): Section mismatch in reference from the function setup_card() to the function .devinit.text:snd_usb_caiaq_control_init()
setup_card() are only used by init_card().
init_card() are only used by snd_probe()
snd_probe() are used for the .probe parameter in usb_driver.probe
Annotate them all __devinit to fix the warning.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
- caiaq - Add __devinit* again
With Sam's last fix to caiaq-device.c, the stuff in caiaq-control.c
can have __devinit* again properly.
- snd_usb_caiaq: fix potential lockups locking
This patch fixes potential lockups in snd_usb_caiaq by refining the
locking mechanims and by using usb_kill_urb() in favor to
usb_unlink_urb().
Signed-off-by: Daniel Mack <daniel@caiaq.de>
- snd_usb_caiaq: correct input channel order
This patch corrects the input channel order of hardware supported by
snd_usb_caiaq.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
- snd_usb_caiaq: make high sample rates work with A8DJ
This patch for snd_usb_caiaq makes sample rates higher dann 48KHz work
with devices which have more than 2 stereo input/output pairs.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
- snd_usb_caiaq: add support for "Session I/O" interface
This patch adds suport for Native Instruments new
"Guitar Rig Session I/O" audio hardware.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
- caiaq endianness fix
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

USB generic driver

- usb-audio: add workaround for broken E-Mu frequency feedback
Add a workaround for the feedback pipe of E-Mu 0202/0404 USB devices
that reports the number of samples per packet instead of the number of
samples per microframe.
- usb-audio: sort quirks list
Move some entries to their proper position so that the list is again
sorted by vendor/product ID.
- USB: usbaudio: handle kcalloc failure
sound/usb/usbaudio.c (check_hw_params_convention): Handle kcalloc failure.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
- usb-audio - Add a proper error check
The error in check_hw_params_convention() has to be checked and
handled properly.
- usb audio: Fix another Dallas quirk
Dallas USB speakers are buggy in more than one way. One of configs
they offer does not work at all.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- usb audio: make quirk handling more readable, and fix commented-out code
usb audio contains useful debugging code, protected by #if
0. Unfortunately, it will not compile because variable names changed;
fix it.
Dallas workaround is formatted in a way where it is not quite obvious
what is normal code and what is quirk. Reformat it to make it obvious.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
- sound/usb/usbaudio.c: coding style
Putting space between ! and variable is a strange coding style, fix
that, also make it fit into 80 columns where that is easy.
Signed-off-by: Pavel Machek <pavel@suse.cz>
- usb-audio - Fix race in reconnection
Fix the race at reconnection of the device.
The disconnected usb_chip[] must be cleared before the next probe
call properly.
- [ALSA] usb-audio - Support for Roland SonicCell sound module
Added entry into usbquirks.h to recognize Roland SonicCell sound module by
mostly duplicating the entry for the Roland SH-201. USB MIDI works just fine,
though the USB audio is a little unreliable (but still works well enough).
Signed-off-by: Chris Mennie <camennie@alumni.uwaterloo.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- [ALSA] usbaudio.c: remove #ifndef CONFIG_USB_EHCI_SPLIT_ISO code
Since USB_EHCI_SPLIT_ISO is now unconditionally enabled the
#ifndef CONFIG_USB_EHCI_SPLIT_ISO became wrong.
Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- ALSA: Add Yamaha KX49 (USB MIDI controller) to usbquirks.h
This patch is for the Yamaha USB MIDI controller KX49.
http://www.yamahasynth.com/products/kx/index.html
It has a 3-port MIDI interface and an HID interface (it has a tiny
keyboard subset).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- ALSA: usb-audio: fix Yamaha KX quirk
We have to restrict the quirk to interface 0 because the second
interface is not MIDI but HID. Additionally, this product ID is used
by all four KX models, so it is better to read the product name from
the device.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
- ALSA: usb-audio: add some Yamaha USB MIDI quirks
Add quirk entries for four Yamaha USB MIDI devices.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>

USB1400 touchscreen driver

- 2.6 kernel sync - add one-line changes
- add a private field for ac97-device drivers and let ucb1400 be its first user
From: Sebastian Siewior <bigeasy@linutronix.de>
Currently the UCB1400 driver discovers the interrupt via probing. This works
probably only on x86. This patch adds a private field to the ac97 struct
where the ac97 driver can deposit informations for the device driver that
serves a device which is attached to the ac97 bus.
This patch also converts the UCB1400 driver to use this information if
available.
Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de>
- Revert "add a private field for ac97-device drivers and let ucb1400 be its first user"
This reverts commit 61f7a0339c0a25b642f11436c25d16a923983864.
Altough I agree with this change, Takashi Iwai <tiwai@suse.de> NACked it.

Utils

- Fix build with wm9713
- Add soc/davinci build stub
Added soc/davinci build stub and fixed mod-deps.c to avoid unconditional
build of snd-davinci-soc-i2s module.
- propagate errors from recursive make calls
Make sure that recursive make calls are checked for errors, and that
failed application of patches does not result in an apparently up-to-
date source file.
- Add a hack to handle XXX=n kconfig
Added a hack to handle XXX=n kconfig action.
It won't work perfectly though.
- New kconfig parser
Introduced a new kconfig parser for handling menuconfig and if.
With this change, the configure options --with-cards and --with-card-options
are dropped, and --with-kconfig is added instead.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Replace CONFIG_SND_DEBUG_DETECT with CONFIG_SND_DEBUG_VERBOSE
Rename to CONFIG_SND_DEBUG_VERBOSE to match with its purpose better.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add utils/setup-alsa-kernel script
Added a script to set up the alsa-kernel directory containing symlinks
to the sound directories in the given linux kernel tree.
This is used to build alsa-drivers with the linux kernel tree instead
of alsa-kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Change symlinks in setup-alsa-kernel script
Change symlink in alsa-kernel directory to relative symlinks
with the main link to the linux kernel tree.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- setup-alsa-kernel - Check alsa-driver root directory
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add -c option to setup-alsa-kernel
Added -c option to setup-alsa-kernel. With this option, the files are
copied instead of symlinks from the kernel tree so that it can be easily
archived.
Also, some files for kernel doc are now stored in utils directory.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Create sound symlink in setup-alsa-kernel script
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Use --with-cards and --with-card-options again for configure
Back to the old --with-cards and --with-card-options.
First off, it's always good to keep compatibility.
And, this makes easier the practical use, indeed.
Instead of --with-exclude option, now --with-cards and --with-card-options
options accept the style as "ITEM=n". This disables the given item.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Add alsa-info.sh to this package
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fixed the URL to download alsa-info.sh
Use git instead of HG.
But, the URL is ugly and we'll need a better place / solution.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- alsa-info.sh: Use new "official" URL for updates
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- alsa-info.sh: Fix "official" URL for changelog and change download URL
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- mod-deps: fix PPC (and maybe other) dependencies problem using right brackets in acinclude.m4
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix PPC platform detection and mod-deps condition optimization
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

VIA82xx driver

- ALSA: via82xx - Add VIA audio device #1841 to ac97_quirk list
Signed-off-by: Walter Sheets <w41ter@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Virtual Master

- Move vmaster build stub to acore
Move vmaster build stub to acore to follow the change in alsa-kernel tree.
- Move vmaster code to sound core
Move the codes for virtual master controls to sound core part so that
not only hda-intel drivers can use it.
- Keep private TLV entry in vmaster itself
Use a private array for TLV entries of virtual master controls instead
of (supposed) static array. This cleans up the existing codes.
Also, now vmaster assumes the simple dB-range TLV that is the only type
it can handle.

Wavefront drivers

- ALSA: wavefront - add const
Fix const to non-const pointer cast warning in wavefront_synth.c.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

YMFPCI driver

- ymfpci - Fix race at removal
free_irq() must be called first to avoid races at removal.
- ALSA: ymfpci - fix initial volume for 44.1kHz output
YDSXGR_BUF441OUTVOL register isn't initialized properly. This may lead to
a silent output at full volume of unchanged "Wave Playback Volume".
http://bugzilla.kernel.org/show_bug.cgi?id=10963
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

au88x0 driver

- sound: au88x0_pcm.c fix integer as NULL pointer warning
sound/pci/au88x0/au88x0_pcm.c:508:15: warning: Using plain integer as NULL pointer
Also some small codingstyle fixes.
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
- [ALSA] remove CVS keywords
This patch removes CVS keywords that weren't updated for a long time
from comments.
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

gitcompile script

- Moving to GIT.. Rename and update hg files..
- modified gitcompile script to use ../alsa-kmirror directory as ALSAKERNELDIR
- gitcompile - Check if alsa-kernel directory already exists
Signed-off-by: Takashi Iwai <tiwai@suse.de>

hgcompile script

- Moving to GIT.. Rename and update hg files..

pci_ids.h update

- 2.6 kernel sync

alsa-lib

Core

- Add atomic operation for super-H(sh3,4) architectures
This patch adds atomic operation for super-H(sh3,sh4) architecture.
See ALSA bug#3789
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3789
- Create doxgen.cfg dynamically
The patch from bug#3799
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3799
The "doc" target in doc/Makefile.am assumes the build directory and
the source directory are the same and fails if they differ ... this is
because the doxygen.cfg contains relative paths (such as ../) that
only work when building in the source tree
The attached patch against hg replaces all relative paths with
@top_srcdir@ and changes doxygen.cfg to a generated file so that
configure replaces @top_srcdir@ with the appropriate configure-time
path.
Assuming people like being able to do `make -f Makefile.am doc` on
an unconfigured and having it work, i added a small `test&&sed`
that'll generate an appropriate default doxygen.cfg for them.
- IEC958 definitions for consumer status channel, byte 4
Added definition for byte 4 of SPDIF channel status, according to
second edition of IEC 60958-3 (consumer) spec.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
- removed .hg files and renamed hgcompile to gitcompile
- Release v1.0.17rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- PCM: allow mmap-access conversion in plug
The plug plugin has a long-standing problem that it can handle only
slaves that support mmap because of format/rate/access conversions
(these corresponding plugins work only with mmap).
This patch adds the support of automatic mmap->rw conversion via
mmap_emul plugin.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.17rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Control API

- Fix device number assignment in hints
Handle the device number properly if given in hints.
The current code resets the device number to -1 wrongly.
- Don't show non-existing devices in snd_device_name_hint()
Suppress the non-existing devices in snd_device_name_hint().
- Fix cast warning
int64_t and long long isn't strictly identical, and thus gcc gives us
a heartful warning. Suppress the warning by a pointer cast.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Mixer API

- implemented integer volume <-> dB volume conversion functions for simple mixer

Mixer Abstraction API

- implemented integer volume <-> dB volume conversion functions for simple mixer

PCM API

- Fix conflict of obsoleted snd_pcm_hw_* definitions
When only SND_PCM_OLD_HW_PARAMS_API is defined but no
SND_PCM_OLD_SW_PARAMS_API, the declerations of some obsoleted functions
conflict. Although the apps should define both at the same time, it's
not good to break. Fixed the ifdef now.
- Fix the state in snd_pcm_ioplug_pause()
The states[] in snd_pcm_ioplug_pause() has wrong values. They should be
swapped. ALSA bug#3796:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3796
- Fix the build with old glibc
The old systems don't support CLOCK_MONOTONIC although clock_gettime() API
itself exists. This causes compile errors.
- dmix skipping first set of samples
There was a change in alsa-lib 1.0.16 which looks like it was designed to
make dmix skip samples in the case of underruns, but it causes the first
sample to be skipped since dmix->slave_hw_ptr == dmix->slave_appl_ptr.
The following patch fixes this and fixes a small typo in the comment.
From: Mike Gorse <mgorse@mgorse.dhs.org>
- Add truncate option to PCM file plugin
Addeed a new option "truncate" to indicate the behavior of creating
the output file. When it's true (the default), the file is overwritten
and truncated at creation. When false, the plugin tries to open a
unique file with a number suffix.
The global behavior of "file" and "tee" PCMs is defined via
defaults.pcm.file_truncate option. You can overwrite it in ~/.asoundrc.
- Use slave PCM as a timing-source for file ifile
When ifile option is used for the file plugin, it ignores the slave PCM
and just feeds the input data.
This patch changes the behavior a bit - it uses the slave PCM as the
timing source (just read and throw data away) so that the input data
can be read in the right sample rate.
- Add the support of WAV format in PCM file plugin
Added the support of WAV format in PCM file plugin.
The infile is still only in raw format.
- Use defaults.pcm.file_format for the default file format of file plugin
Use "defaults.pcm.file_format" for the default file format of
file plugin. It's set to "raw" as default for compatibility.
- fix compilation in pcm/pcm_hw.c - monotonic clock
- PCM API - explain more trigger timestamp
- added snd_pcm_hw_params_is_monotonic/can_forward/can_rewind functions
- implemented snd_pcm_rewindable() and snd_pcm_forwardable(), removed can_rewind and can_forward
- Implemented snd_pcm_sw_params_(set|get)_period_event for interrupt wakeup like behaviour
Actually, PCM timer is used as source for poll(). It might be optimized
in the kernel code later.
- Fix compile warnings in pcm_hw.c
Two trivial compile warning fixes:
- Add a missing return to snd_pcm_hw_clear_timer_queue()
- params->info is no long but int
The second one might have hit already on 64bit machine, but alas,
no one didn't notice it.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pcm_mmap_emul: Fix invalid check
The check in snd_pcm_mmap_emul_refine() is bogus and buggy.
Since the changed access type is took back at snd_pcm_mmap_emul_refine
again, it has to check the availability of mmap at each time.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pcm_mmap_emul: clean up
A little bit of code clean up.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Export __snd_pcm_mmap_emul_open()
Export __snd_pcm_mmap_emul_open() for plug layer. This isn't exported
globally, though.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- PCM: allow mmap-access conversion in plug
The plug plugin has a long-standing problem that it can handle only
slaves that support mmap because of format/rate/access conversions
(these corresponding plugins work only with mmap).
This patch adds the support of automatic mmap->rw conversion via
mmap_emul plugin.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix segfault with dmix of 3-bytes formats
The i386 and x86-64 dmix may cause segfaults when 3-bytes formats are used
due to btsl asm code, which may overcome the buffer end-boundary.
The patch changes btsl to btsw so that it doesn't happen.
ALSA bug#3341:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3341
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pcm: fix comment for snd_pcm_avail_update()
In some cases, value might be used for r/w ops, too.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Sequencer API

- Fix snd_seq_change_bit()
snd_seq_change_bit() doesn't change but only set.
From: Aldrin Martoq <amartoq@dcc.uchile.cl>
- add snd_seq_unset_bit()
Added snd_seq_unset_bit() to alsa sequencer API
Signed-off-by: Aldrin Martoq <amartoq@dcc.uchile.cl>
- add snd_seq_client_info_event_filter_*() functions
Added snd_seq_client_info_event_filter_{clear,add,del,check} to alsa
sequencer API
Signed-off-by: Aldrin Martoq <amartoq@dcc.uchile.cl>
- use snd_seq_client_info_event_filter_*() functions
Change snd_seq_set_client_event_filter to use the new
snd_seq_client_info_event_filter_* API
Signed-off-by: Aldrin Martoq <amartoq@dcc.uchile.cl>
- mark snd_seq_client_info_{get,set}_event_filter deprecated
Mark snd_seq_client_info_{get,set}_event_filter deprecated
Signed-off-by: Aldrin Martoq <amartoq@dcc.uchile.cl>

/Makefile.am

- hgcompile -> gitcompile

Configuration

- Add surround71 definition to NFORCE.conf
Now the board with ALC850 can work with 8-channel outputs.
- Add PCM "hdmi"
Added the new PCM "hdmi" for HDA-Intel.
It's still experimental.
- Fix for alsa-lib cross-compilation problems with ALSA_CONFIG_DIR and ALSA_PLUGIN_DIR
"./configure" options for selecting ALSA configuration (default
/usr/share/alsa) and plugin (/usr/lib/alsa-lib) directories introduced
by alsa-hg/alsa-lib changeset 2284 cause problems with cross-compilation
and packaging - there is no way to redefine them in runtime, during
installation phase.
This patch adds a level of indirection between constants and their
usage - alsaconfigdir for ALSA_CONFIG_DIR and alsaplugindir for
ALSA_PLUGIN_DIR - which can be redefined during "make install" stage.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
- Add truncate option to PCM file plugin
Addeed a new option "truncate" to indicate the behavior of creating
the output file. When it's true (the default), the file is overwritten
and truncated at creation. When false, the plugin tries to open a
unique file with a number suffix.
The global behavior of "file" and "tee" PCMs is defined via
defaults.pcm.file_truncate option. You can overwrite it in ~/.asoundrc.
- Use defaults.pcm.file_format for the default file format of file plugin
Use "defaults.pcm.file_format" for the default file format of
file plugin. It's set to "raw" as default for compatibility.
- pcsp: remove downsampling
apply softvol before plug as softvol doesn't support U8 as of now.
This also improves the sound quality.
Signed-off-by: Stas Sergeev <stsp@aknet.ru>

Documentation

- Create doxgen.cfg dynamically
The patch from bug#3799
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3799
The "doc" target in doc/Makefile.am assumes the build directory and
the source directory are the same and fails if they differ ... this is
because the doxygen.cfg contains relative paths (such as ../) that
only work when building in the source tree
The attached patch against hg replaces all relative paths with
@top_srcdir@ and changes doxygen.cfg to a generated file so that
configure replaces @top_srcdir@ with the appropriate configure-time
path.
Assuming people like being able to do `make -f Makefile.am doc` on
an unconfigured and having it work, i added a small `test&&sed`
that'll generate an appropriate default doxygen.cfg for them.

Kernel Headers

- Add surround71 definition to NFORCE.conf
Now the board with ALC850 can work with 8-channel outputs.
- Implemented snd_pcm_sw_params_(set|get)_period_event for interrupt wakeup like behaviour
Actually, PCM timer is used as source for poll(). It might be optimized
in the kernel code later.

Simple Abstraction Mixer Modules

- Fix for alsa-lib cross-compilation problems with ALSA_CONFIG_DIR and ALSA_PLUGIN_DIR
"./configure" options for selecting ALSA configuration (default
/usr/share/alsa) and plugin (/usr/lib/alsa-lib) directories introduced
by alsa-hg/alsa-lib changeset 2284 cause problems with cross-compilation
and packaging - there is no way to redefine them in runtime, during
installation phase.
This patch adds a level of indirection between constants and their
usage - alsaconfigdir for ALSA_CONFIG_DIR and alsaplugindir for
ALSA_PLUGIN_DIR - which can be redefined during "make install" stage.
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
- implemented integer volume <-> dB volume conversion functions for simple mixer

Test/Example code

- add a test code for snd_seq_client_info_event_filter_*()
Added test code for
snd_seq_client_info_event_filter_{clear,add,del,check}
Signed-off-by: Aldrin Martoq <amartoq@dcc.uchile.cl>
- Implemented snd_pcm_sw_params_(set|get)_period_event for interrupt wakeup like behaviour
Actually, PCM timer is used as source for poll(). It might be optimized
in the kernel code later.
- Fix type-punning in test/pcm.c
The cast won't work well with strict aliasing.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- test/pcm.c: Fix SND_PCM_FORMAT_S24 support
The program uses snd_pcm_format_width() wrongly to calculate the sample
size. It must be snd_pcm_format_physical_width() instead.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

alsa-utils

Core

- Require alsa-lib 1.0.16
Require alsa-lib 1.0.16 and remove the superfluous check in configure
script.
- Add check of ncurses*-config
The recent ncurses package provides ncurses*-config program to give the
proper cflags and libs. Let's use them if available.
Right now, the ncurses version (5) is hard-coded. It should be better
to be variable as well, but it'd be messy. Hope the ncurses version won't
change rapidly.
- hgcompile -> gitcompile
- Release v1.0.17rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ALSA Control (alsactl)

- alsactl: simplify and fix item type detection
Use snd_ctl_elem_type_name() to detect the value of the type comment
instead of using hardcoded strings.
The types list now also includes the BYTES type (Debian bug 481515).
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>

Speaker Test

- speaker-test.c - fix sine generator on big-endian archs
speaker-test doesn't work well when you choose a little-endian format on a
big-endian processor, or the opposite. Yes, I know about plughw:, but for
debugging purposes it may not be an option. The following patch add proper
support for S32 and S16 support for but LE and BE processors:
- The "if (bits-per-sample)" construct was replaced by case (format).
- Support for S16_BE, S32_BE formats was added.
- S16_LE and S32_LE were made compatible with big-endian processors.
- NB: The pink noise generator wasn't changed (I'll do if this patch is OK).
From: Giuliano Pochini <pochini@shiny.it>
- speaker-test.c - fix pink noise generator on big-endian archs
This patch makes speaker-test fill the buffers with properly coded data on
both big- and little-endian processors.
Signed-off-by: Giuliano Pochini <pochini@shiny.it>

alsaconf

- alsaconf: use 'type -p', not which
Here is a small patch for alsaconf, which removes an useless dependency
on `which' by using a bash built-in instead : `type -p'. I encountered
the problem of the missing `which' while using alsaconf on a clfs-built
linux system. It is useless to install `which' when we already have
`type -p', and alsaconf already needs bash, so this does not replace
a dependency by another one, but really removes a dependency for alsaconf.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

alsamixer

- Add check of ncurses*-config
The recent ncurses package provides ncurses*-config program to give the
proper cflags and libs. Let's use them if available.
Right now, the ncurses version (5) is hard-coded. It should be better
to be variable as well, but it'd be messy. Hope the ncurses version won't
change rapidly.

aplay/arecord

- aplay/arecord - Add support for IEEE float 32-bit WAV files
This patch modifies aplay/arecord to support playing/capturing IEEE float
32-bit WAV files. Tested on HDA hardware in both stereo and multi-channel
modes. Added the WAV file constant for Dolby AC-3 S/PDIF passthrough to
formats.h for future use when AC-3 passthrough is better supported.
Signed-off-by: Andrew Paprocki <andrew@ishiboo.com>
- Support for playing WAV files with "extensible format" header using aplay.
WAV files with more than 2 channels or with more than 16 bits per samples
can be saved with "extensible format" chunk
(see http://msdn2.microsoft.com/en-us/library/ms713496(VS.85).aspx).
For instance, sox, when converting data to 24- or 32-bits per sample format
uses this format, and aplay was unable to play such file. Now the problem
is solved :-)
Signed-off-by: Pawel MOLL <pawel.moll@st.com>
- aplay - Add stereo VU-meter support
Added the support of stereo VU-meter.
Enabled via -Vs option.
The new option, -V, can be used to enable the VU-meter. Now
VU-meter can be enabled even without -vv.
- aplay - Fix a compile warning
aplay.c: In function ‘compute_max_peak’:
aplay.c:1327: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘size_t’

aplaymidi/arecordmidi

- fix poll timeout
Use an infinite poll timeout to prevent unnecessary wakeups.

aseqdump

- aseqdump: increase verbosity
Include the names of parameters when printing events instead of just
showing the raw values.
- fix poll timeout
Use an infinite poll timeout to prevent unnecessary wakeups.
- aseqdump: flush output
Flush the output after all currently available events have been printed
to allow filtering interactive output through a pipe.

gitcompile

- renamed hgcompile to gitcompile

hgcompile

- renamed hgcompile to gitcompile

alsa-tools

Core

- remove .hg files and renamed hgcompile to gitcompile
- hgcompile -> gitcompile changes (include README files)
- HGCOMPILE -> GITCOMPILE
- Release v1.0.17rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Added compile script
- improved compile script (too look also to subdirs)
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

ac3dec (Dolby Digital Decoder)

- hgcompile -> gitcompile changes (include README files)

hdspmixer

- hdspmixer - Fix Digiface channel map for ADAT speed mode 1
Fixed the channel map for ADAT speed mode 1 (rate > 48000).
ALSA bug#3732
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3732

alsa-firmware

Core

- removed .hg* files and renamed hgcompile to gitcompile
- Release v1.0.17rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

AudioScience ASIHPI Firmware

- Update asihpi firmware to ver.3.09.14.
Removed dsp4100.bin that is no longer supported.
- asihpi - Update firmware to version 3.10.00
Taken from
http://audioscience.com/internet/download/firmware/dspbins31000.zip
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Update asihpi firmware
dsp5000.bin ASI5041 fix input gain.
dsp8900.bin ASI89xx fix tuning failures
*.bin Update version to 3.10.03
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>

alsa-plugins

Core

- removed .hg* files and renamed hgcompile to gitcompile
- Improve configure for maemo plugin
ALSA bug#3860:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3860
The Maemo DSP plugin checks for D-Bus in configure.in and then makes a bold assumption that this means it should use a proprietary resource manager available only on a specific proprietary platform.
Attaching a patch to add --enable-maemo-resource-manager configure flag that enables the resource manager if set and if D-Bus is present.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.17rc2
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Fix invalid withval in configure script
Should be enableval instead.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

/Makefile.am

- hgcompile -> gitcompile change
- Improve configure for maemo plugin
ALSA bug#3860:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3860
The Maemo DSP plugin checks for D-Bus in configure.in and then makes a bold assumption that this means it should use a proprietary resource manager available only on a specific proprietary platform.
Attaching a patch to add --enable-maemo-resource-manager configure flag that enables the resource manager if set and if D-Bus is present.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

A52 Output plugin

- Various plugins don't support "hint" sections
Ignore hint sections defined by hand.
Those are heplful to get listed in various places, such as aplay -L
ALSA bug#3834:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3834
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Alsa support for Maemo SDK (n770)

- Various plugins don't support "hint" sections
Ignore hint sections defined by hand.
Those are heplful to get listed in various places, such as aplay -L
ALSA bug#3834:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3834
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Fix close in maemo callback
ALSA bug#3035:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3035
Use dbus_connection_unref() instead of the deprecated dbus_connection_close().
Signed-off-by: Takashi Iwai <tiwai@suse.de>

Jack PCM plugin

- Various plugins don't support "hint" sections
Ignore hint sections defined by hand.
Those are heplful to get listed in various places, such as aplay -L
ALSA bug#3834:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3834
Signed-off-by: Takashi Iwai <tiwai@suse.de>

PulseAudio -> ALSA plugin

- pulse - Fix useless assert
If stream connection failes, don't assume that stream is connected upon closing.
ALSA bug#3831:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3831
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pulse - Remove another assert
Remove another assert that results in an unexpected crash.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- Pulseaudio alsa configure hook
The attached patch extends the alsa pulse plugin set with a alsa
configuration hook. Allowing one to specify some configuration parameters
that only come into effect when pulseaudio is running.
For example a configution file like:
@hooks [ {
func on_pulse_is_running
pcm.!default { type pulse }
ctl.!default { type pulse }
}
]
will redirect the default alsa pcm and ctl to pulse iff pulse is running.
(Assuming you defined the hook function correctly ofcourse)
This is usefull for distributions that don't want to force their users to
switch completely to pulseaudio, but have things a bit more dynamic :)
The solutions isn't optimal though. It will mean that every program loading
accessing alsa will try to make an (extra) connection to pulse to decide what
to do. But i think it's the best we can do for now (or at least that i can do
with my minimal knowledge of alsa).
A nicer solution would be a way to always specify the pulse plugin as default
and have a sort of fallback for when that fails.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
- pulse - Change to hook load_if_running
Unfortunately some more testing revealed some issues with it,
specifically if pulse is running your complete config is replaced the bits in
the on_pulse_is_running directive. Which might not be what one actually wants :)
I couldn't find a proper solution for this. So i've changed the code to
optionally load config files. Just like the load hook does. Actually i just
optionally call the snd_config_hook_load function, but that's not actually in
the alsa API....
Also it now decides pulse is running as soon as the authorizing step begins
(just after the actually connection is setup), which should save some
round-trips and overhead.
Signed-off-by: Takashi Iwai <tiwai@suse.de>

alsa-python

Core

- Release v1.0.17rc1
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
- Release v1.0.17
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Documentation

- alsa-python: API coverage documentation tool
The following patch is a python tool that shows how much of the
asoundlib API is being covered by the alsa-python binding. It works by
parsing the C source code and comparing with the official Doxygen
documentation from alsa website.
It will help the following users:
- alsa-python developers: know how is mapped the original C API, so
which python function/variable may be used.
- python binding developers: know how much of the C API is covered. It
could help for mistakes (free() instead of using
snd_ctl_card_info_free), know what is missing, and statistic interest ;)
From: Aldrin Martoq <amartoq@dcc.uchile.cl>
- Added python coverage doc
This is the output of the alsa-python-coverage tool for the current HG
repository. It is intented to be used by the alsa-python without the
need to call the tool.
Sample usage:
-------------
$ grep ^STAT doc/COVERAGE
$ grep ^N/A doc/COVERAGE
From: Aldrin Martoq <amartoq@dcc.uchile.cl>

Test python scripts

- added ask_volume_dB and ask_dB_volume for mixer element

pyalsa.alsacard module

- unify naming, only classes and constants use upper letters now

pyalsa.alsacontrol module

- unify naming, only classes and constants use upper letters now

pyalsa.alsamixer module

- added ask_volume_dB and ask_dB_volume for mixer element

pyalsa.alsaseq module

- alsaseq - poll() must be in Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS block
Custom Search
Personal tools
Namespaces

Variants
Actions
Navigation
wiki
Toolbox