openwrt/staging/blogic.git
16 years agoALSA: fix section for sa11xx-uda1341 platform driver
Uwe Kleine-König [Tue, 9 Sep 2008 11:47:11 +0000 (13:47 +0200)]
ALSA: fix section for sa11xx-uda1341 platform driver

Don't use __init but __devinit to define probe function.  A pointer to
sa11xx_uda1341_probe is passed to the core via platform_driver_register
and so the function must not disappear after the module is loaded.  Using
__init and having HOTPLUG=y and SND_SA11XX_UDA1341=m the following
probably oopses:

echo -n sa11xx_uda1341.1 > /sys/bus/platform/driver/sa11xx_uda1341/unbind
echo -n sa11xx_uda1341.1 > /sys/bus/platform/driver/sa11xx_uda1341/bind

Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Brian Avery <b.avery@hp.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - add missing slave_dig_outs for 92HD73bxx
Matthew Ranostay [Tue, 9 Sep 2008 08:46:38 +0000 (10:46 +0200)]
ALSA: hda - add missing slave_dig_outs for 92HD73bxx

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: SPDIF mux name change
Matthew Ranostay [Mon, 8 Sep 2008 15:36:59 +0000 (11:36 -0400)]
ALSA: hda: SPDIF mux name change

Changed the mux naming scheme from "IEC9258 Mux" to "IEC958 Playback Source" to match
the coding style.

Signed-by-off: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: digital slave support for IDT codecs
Matthew Ranostay [Mon, 8 Sep 2008 15:20:05 +0000 (11:20 -0400)]
ALSA: hda: digital slave support for IDT codecs

Added slave_dig_outs entries for several IDT codecs that have multiple
SPDIF outs, and enabled these SPDIF outs in several pin configs.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Use codec digital mute when stopping playback
Mark Brown [Sat, 6 Sep 2008 17:33:24 +0000 (18:33 +0100)]
ALSA: ASoC: Use codec digital mute when stopping playback

Muting the DAC masks artefacts introduced as the digital stream shuts
down, for example when the input stops being clocked.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Sort Kconfig and Makefile entries for codecs
Mark Brown [Sat, 6 Sep 2008 17:11:51 +0000 (18:11 +0100)]
ALSA: ASoC: Sort Kconfig and Makefile entries for codecs

Hopefully this will make merges a little bit easier.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Fix indentation in WM9713
Mark Brown [Fri, 5 Sep 2008 21:40:49 +0000 (22:40 +0100)]
ALSA: ASoC: Fix indentation in WM9713

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: slave digital out support
Matthew Ranostay [Sun, 7 Sep 2008 18:31:40 +0000 (14:31 -0400)]
ALSA: hda: slave digital out support

Added support for playing a stream on multiple digital outs. This is done
by defining codec->slave_dig_outs as array of hda_nid_t with a null-terminated entry to set the
slave SPDIF outs, in which the slave outs have cloned settings of the master out (e.g. dig_out_nid).

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: fix section mismatch in the sound_core
Krzysztof Helt [Sun, 7 Sep 2008 15:24:33 +0000 (17:24 +0200)]
ALSA: fix section mismatch in the sound_core

The __exit cleanup_oss_soundcore() is called from
the __init init_soundcore(). This causes section mismatch
and breaks kernel's linking on sparc64.

Remove the __exit attribute from the cleanup_oss_soundcore().

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: use correct lock in snd_ctl_dev_disconnect()
Takashi Iwai [Sun, 7 Sep 2008 10:51:13 +0000 (12:51 +0200)]
ALSA: use correct lock in snd_ctl_dev_disconnect()

The lock used in snd_ctl_dev_disconnect() should be card->ctl_files_rwlock
for protection of card->ctl_files entries, instead of card->controls_rwsem.

Reported-by: Vegard Nossum <vegard.nossum@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1712.c: fix coding style
Alexander Beregalov [Sun, 7 Sep 2008 10:17:02 +0000 (14:17 +0400)]
ALSA: ice1712.c: fix coding style

before:
total: 113 errors, 169 warnings, 2786 lines checked
total: 26 errors, 24 warnings, 504 lines checked

after:
total: 14 errors, 163 warnings, 2799 lines checked
total: 0 errors, 24 warnings, 504 lines checked

Compile tested only.

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1724.c: fix coding style
Alexander Beregalov [Sun, 7 Sep 2008 10:11:04 +0000 (14:11 +0400)]
ALSA: ice1724.c: fix coding style

before:
total: 96 errors, 66 warnings, 2612 lines checked

after:
total: 11 errors, 64 warnings, 2624 lines checked

Compile tested only.

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1712/ice1724: Coding style fixes part 1 (more coming up)
Vedran Miletic [Sun, 7 Sep 2008 10:00:02 +0000 (12:00 +0200)]
ALSA: ice1712/ice1724: Coding style fixes part 1 (more coming up)

Inspired by Alexander Beregalov's patches for wtm and aureon.c,
I decided to run checkpatch on some more files. After some work
checkpatch.pl-0.23 --no-tree --file --strict <file> reports
0 errors, 0 warnings, 0 checks, n lines checked for:
phase.c
phase.h
juli.c (1 check about unused code, maybe we should comment it)
juli.h (no changes necessary)
In other files I have just fixed // comments and long lines along the
way (but not all of them), more coming up.

Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: removed unneeded hp_nid references
Matthew Ranostay [Sun, 7 Sep 2008 10:04:17 +0000 (12:04 +0200)]
ALSA: hda: removed unneeded hp_nid references

Removed unneeded hp_nid references for 92hd73xx codec family.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: SPDIF mux controls
Matthew Ranostay [Sun, 7 Sep 2008 10:03:41 +0000 (12:03 +0200)]
ALSA: hda: SPDIF mux controls

Dynamically create mux controls for SPDIF outs on certain IDT/Sigmatel codecs.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1712/wtm: fix coding style
Alexander Beregalov [Sat, 6 Sep 2008 21:54:27 +0000 (01:54 +0400)]
ALSA: ice1712/wtm: fix coding style

before:
total: 2 errors, 0 warnings, 20 lines checked
total: 49 errors, 2 warnings, 518 lines checked

after:
total: 0 errors, 0 warnings, 20 lines checked
total: 0 errors, 0 warnings, 518 lines checked

Compile tested, size and code are equal.

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1712/aureon.c: fix coding style
Alexander Beregalov [Sat, 6 Sep 2008 21:19:00 +0000 (01:19 +0400)]
ALSA: ice1712/aureon.c: fix coding style

before:
total: 304 errors, 137 warnings, 2259 lines checked

after:
total: 0 errors, 121 warnings, 2284 lines checked

Compile tested, size is different because of include was changed,
but without that change md5sum is different because of cmp cx,dx/cmp
dx,cx swap and __LINE__ was changed in printk function.

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: Include Blackfin architecture support in build
Cliff Cai [Fri, 5 Sep 2008 10:21:34 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: Include Blackfin architecture support in build

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: add Blackfin arch ASoC Kconfig and Makefile
Cliff Cai [Fri, 5 Sep 2008 10:21:42 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: add Blackfin arch ASoC Kconfig and Makefile

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: board driver for SSM2602 sound chip
Cliff Cai [Fri, 5 Sep 2008 10:21:41 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: board driver for SSM2602 sound chip

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: board driver for AD1980/1 audio codec
Cliff Cai [Fri, 5 Sep 2008 10:21:40 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: board driver for AD1980/1 audio codec

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: I2S CPU DAI driver
Cliff Cai [Fri, 5 Sep 2008 10:21:39 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: I2S CPU DAI driver

[Additional coding standards fixes by Mark Brown.]

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: DMA Driver for I2S sound chip
Cliff Cai [Fri, 5 Sep 2008 10:21:38 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: DMA Driver for I2S sound chip

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: AC97 Blackfin CPU DAI driver
Cliff Cai [Fri, 5 Sep 2008 10:21:37 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: AC97 Blackfin CPU DAI driver

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: DMA Driver for AC97 sound chip
Cliff Cai [Fri, 5 Sep 2008 10:21:36 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: DMA Driver for AC97 sound chip

[Additional coding standards fixes by Mark Brown.]

Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Blackfin: SPORT peripheral interface driver
Cliff Cai [Fri, 5 Sep 2008 10:21:35 +0000 (18:21 +0800)]
sound: ASoC: Blackfin: SPORT peripheral interface driver

SPORT is a serial port which can support serveral serial communication
protocols.  It can be used as I2C/PCM/AC97. For further information,
please look up the HRM.

[Additional coding standards fixes by Mark Brown.]

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC codec: SSM2602 audio codec driver
Cliff Cai [Fri, 5 Sep 2008 10:09:57 +0000 (18:09 +0800)]
sound: ASoC codec: SSM2602 audio codec driver

[Some checkpatch fixups done by Mark Brown.]

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Convert wm8510 to a new-style i2c driver
Jean Delvare [Tue, 2 Sep 2008 15:07:30 +0000 (17:07 +0200)]
sound: ASoC: Convert wm8510 to a new-style i2c driver

Convert the wm8510 codec driver to the new (standard) device
driver binding model.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Geoffrey Wossum <gwossum@acm.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Convert neo1973/lm4857 to a new-style i2c driver
Jean Delvare [Mon, 1 Sep 2008 15:46:57 +0000 (17:46 +0200)]
sound: ASoC: Convert neo1973/lm4857 to a new-style i2c driver

Convert the lm4857 driver in neo1973_wm8753 to the new (standard)
i2c device driver binding model. I assumed that the LM4857 was always
on the same I2C bus as the WM8753 codec.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Tim Niemeyer <reddog@mastersword.de>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Convert wm8753 to a new-style i2c driver
Jean Delvare [Mon, 1 Sep 2008 15:45:34 +0000 (17:45 +0200)]
sound: ASoC: Convert wm8753 to a new-style i2c driver

Convert the wm8753 codec driver to the new (standard) i2c device
driver binding model.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ville Syrjala <syrjala@sci.fi>
Cc: Frank Mandarino <fmandarino@endrelia.com>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: ASoC: Fix an error path in neo1973_wm8753
Jean Delvare [Mon, 1 Sep 2008 15:44:05 +0000 (17:44 +0200)]
sound: ASoC: Fix an error path in neo1973_wm8753

The error handling in neo1973_init is incorrect:

* If platform_device_add fails, we go on with the rest of the
  initialization instead of bailing out. Things will break when the
  module is removed (platform_device_unregister called on a device
  that wasn't registered.)

* If i2c_add_driver fails, we return an error so the module will not
  load, but we don't unregister neo1973_snd_device, so we are leaking
  resources.

Add the missing error handling.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Tim Niemeyer <reddog@mastersword.de>
Cc: Graeme Gregory <graeme@openmoko.org>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: remove reference to dead sound OSS vars AEDSP16_MSS and SBPRO
Robert P. J. Day [Fri, 5 Sep 2008 07:16:38 +0000 (09:16 +0200)]
sound: remove reference to dead sound OSS vars AEDSP16_MSS and SBPRO

Remove the Kconfig definitions of unused variables AEDSP16_MSS and
AEDSP16_SBPRO since they're:

1) unused, and
2) referenced incorrectly anyway.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
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>
16 years agoALSA: us122l - Add missing dependency on CONFIG_SND_HWDEP
Randy Dunlap [Fri, 5 Sep 2008 03:28:13 +0000 (20:28 -0700)]
ALSA: us122l - Add missing dependency on CONFIG_SND_HWDEP

CONFIG_SND_USB_US122L uses snd_hwdep_new(), so SND_HWDEP needs
to be enabled (selected).

ERROR: "snd_hwdep_new" [sound/usb/usx2y/snd-usb-us122l.ko] undefined!

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC codec: fix compiling error in ad1980 driver after ASoC API changed
Cliff Cai [Thu, 4 Sep 2008 08:25:54 +0000 (16:25 +0800)]
ALSA: ASoC codec: fix compiling error in ad1980 driver after ASoC API changed

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: remove stale files
Takashi Iwai [Thu, 4 Sep 2008 07:20:40 +0000 (09:20 +0200)]
ALSA: remove stale files

Empty files remained likely due to wrong patching.
Remove them now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - allow probing of 4 codecs
Takashi Iwai [Wed, 3 Sep 2008 14:00:44 +0000 (16:00 +0200)]
ALSA: hda - allow probing of 4 codecs

Allow probing of 4 codecs on known good situations.
On some known bad situations, it should be avoided.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: add dummy function to support shared mmap in nommu Blackfin arch
Cliff Cai [Wed, 3 Sep 2008 08:54:36 +0000 (10:54 +0200)]
ALSA: add dummy function to support shared mmap in nommu Blackfin arch

Cc: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Don't suggest compile time selection of codec access
Mark Brown [Mon, 1 Sep 2008 17:47:04 +0000 (18:47 +0100)]
ALSA: ASoC: Don't suggest compile time selection of codec access

Currently the boiler plate code used by most ASoC codecs to provide a
placeholder for SPI access suggests making the selection of SPI a
compile time option which is suboptimal when trying to build kernels
supporting multiple systems.  Change this template to suggest allowing
runtime selection instead.

Leave the drivers not yet converted to new style I2C access for now to
avoid collisions.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Add SPI support for WM8731
Cliff Cai [Mon, 1 Sep 2008 17:47:03 +0000 (18:47 +0100)]
ALSA: ASoC: Add SPI support for WM8731

[Modified to allow runtime selection between I2C and SPI and to select
SPI_MASTER for all codecs build so this is included. -- broonie]

Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Convert wm8990 to a new-style i2c driver
Jean Delvare [Mon, 1 Sep 2008 17:47:02 +0000 (18:47 +0100)]
ALSA: ASoC: Convert wm8990 to a new-style i2c driver

Convert the wm8990 codec driver to the new (standard) device driver
binding model. After this change, WM8990 devices are no longer
discovered automatically and must instead be instantiated explicitly.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Convert wm8731 to a new-style i2c driver
Jean Delvare [Mon, 1 Sep 2008 17:47:01 +0000 (18:47 +0100)]
ALSA: ASoC: Convert wm8731 to a new-style i2c driver

Convert the wm8731 codec driver to the new (standard) device driver
binding model.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Convert wm8750 to a new-style i2c driver
Jean Delvare [Mon, 1 Sep 2008 17:47:00 +0000 (18:47 +0100)]
ALSA: ASoC: Convert wm8750 to a new-style i2c driver

Convert the wm8750 codec driver to the new (standard) device driver
binding model.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Convert ak4535 to a new-style i2c driver
Jean Delvare [Mon, 1 Sep 2008 17:46:59 +0000 (18:46 +0100)]
ALSA: ASoC: Convert ak4535 to a new-style i2c driver

Convert the ak4535 codec driver to the new (standard) device driver
binding model. After this change, AK4535 devices are no longer
discovered automatically and must instead be instantiated explicitly.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Convert uda1380 to a new-style i2c driver
Jean Delvare [Mon, 1 Sep 2008 17:46:58 +0000 (18:46 +0100)]
ALSA: ASoC: Convert uda1380 to a new-style i2c driver

Convert the uda1380 codec driver to the new (standard) device driver
binding model.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Make all codecs depend on rather than selecting I2C
Mark Brown [Mon, 1 Sep 2008 17:46:57 +0000 (18:46 +0100)]
ALSA: ASoC: Make all codecs depend on rather than selecting I2C

The I2C layer uses I/O operations that aren't available on all
architectures and since select bypasses Kconfig dependency checking
selecting I2C breaks builds like allmodconfig on some architectures.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: harmony - fix a typo
Takashi Iwai [Mon, 1 Sep 2008 17:45:58 +0000 (19:45 +0200)]
ALSA: harmony - fix a typo

Fix a typo in the patch to remove snd_assert().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: aaci - Fix NULL test at error path
Takashi Iwai [Mon, 1 Sep 2008 13:31:50 +0000 (15:31 +0200)]
ALSA: aaci - Fix NULL test at error path

The original fix by Julien Brunel <brunel@diku.dk>.

aaci_init_card() returns a pointer with ERR_PTR(), but in aaci_init()
NULL is supposed at this error path.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: intel8x0 - use snd_pci_quirk for clock list
Takashi Iwai [Mon, 1 Sep 2008 12:25:08 +0000 (14:25 +0200)]
ALSA: intel8x0 - use snd_pci_quirk for clock list

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Documentation/sound/alsa/ALSA-Configuration.txt: fix typo
Michael Kerrisk [Mon, 1 Sep 2008 12:03:50 +0000 (14:03 +0200)]
ALSA: Documentation/sound/alsa/ALSA-Configuration.txt: fix typo

As noted by Gu Rui in http://bugzilla.kernel.org/show_bug.cgi?id=11444,
there is a typo in Documentation/sound/alsa/ALSA-Configuration.txt.
After checking the source (sound/pci/hda/hda_intel.c), the report
looks correct to me.

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add model for Toshiba L305 laptop
Travis Place [Mon, 1 Sep 2008 06:24:00 +0000 (08:24 +0200)]
ALSA: hda - Add model for Toshiba L305 laptop

Added Subsystem IDs (0x1179, 0xff64) for the Toshiba Satellite L305
laptop, so it automatically uses the ALC268_TOSHIBA quirk.

Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ac97_patch make functions static
Harvey Harrison [Fri, 29 Aug 2008 20:32:00 +0000 (13:32 -0700)]
ALSA: ac97_patch make functions static

Only used in ac97_codec by including ac97_patch.c directly, effectively static

Found by sparse:
sound/pci/ac97/ac97_patch.c:3551:5: warning: symbol 'patch_vt1617a' was not declared. Should it be static?
sound/pci/ac97/ac97_patch.c:3767:5: warning: symbol 'patch_vt1618' was not declared. Should it be static?

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: atiixp - Add PCI ID for SB600 (1002:4382)
Takashi Iwai [Mon, 1 Sep 2008 06:21:49 +0000 (08:21 +0200)]
ALSA: atiixp - Add PCI ID for SB600 (1002:4382)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1724 - limit channels for multi-channel playback
Takashi Iwai [Fri, 29 Aug 2008 14:17:25 +0000 (16:17 +0200)]
ALSA: ice1724 - limit channels for multi-channel playback

Limit the available channels for multi-channel playback device to
the real number of channels.  Until now, always up to 8 channels
are created, which are simply useless without the real outputs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1724: Enable MIDI on TerraTec PHASE 22 and PHASE 28
Vedran Miletic [Fri, 29 Aug 2008 16:31:13 +0000 (18:31 +0200)]
ALSA: ice1724: Enable MIDI on TerraTec PHASE 22 and PHASE 28

Even though MIDI was fixed on ice1724 chips a while ago, it wasn't yet
enabled for some cards as it didn't get enough testing. This was tested
with MIDI keyboard on PHASE 22 and with looping back output to input and
it works stable, so it's safe to enable it.

Besides this, there are some more minor fixes, not exactly user visible:
* added info about PHASE 28 (collected, as I don't have a card)
* added info about TS22PCI and new revisions of PHASE 22
* disable 192k on PHASE 22 as AK4524 I2S doesn't support it
* enable SPDIF reciever on PHASE 22

Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1724: enable MIDI on Terratec Aureon 7.1 Universe
Maximilian Rehkopf [Fri, 29 Aug 2008 12:11:10 +0000 (14:11 +0200)]
ALSA: ice1724: enable MIDI on Terratec Aureon 7.1 Universe

This enables MIDI on Terratec Aureon 7.1 Universe cards specifically.
Apparently the other envy24ht-based Aureon cards do not have MIDI ports,
hence I added a Universe specific eeprom array.

The newer cards (Aureon 7.1 PCI / 5.1 PCI/Fun) have MIDI but use a CMI
DSP so this driver does not concern them at all.

Signed-off-by: Maximilian Rehkopf <otakon@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: intel8x0: implement ac97_clock whitelist
Jaroslav Kysela [Fri, 29 Aug 2008 09:29:39 +0000 (11:29 +0200)]
ALSA: intel8x0: implement ac97_clock whitelist

The AC97 clock detection is not accurate in some cases. This patch adds
an initial whitelist for audio devices gathered from RedHat's bugzilla:

https://bugzilla.redhat.com/show_bug.cgi?id=441087

As a side effect, white-listing might speedup kernel booting (AC97 clock
measuring code is not activated).

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: make OSS sound core optional
Tejun Heo [Thu, 28 Aug 2008 14:42:51 +0000 (16:42 +0200)]
sound: make OSS sound core optional

sound/sound_core.c implements soundcore.ko and contains two parts -
sound_class which is shared by both ALSA and OSS and device
redirection support for OSS.  It's always compiled when any sound
support is enabled although it's necessary only when OSS (the actual
one or emulation) is enabled.  This is slightly wasteful and as device
redirection always registers character device region for major 14, it
prevents alternative implementation.

This patch introduces a new config SOUND_OSS_CORE which is selected
iff OSS support is actually necessary and build the OSS core part
conditionally.

If OSS is disabled, soundcore merely contains sound_class but leaving
it that way seems to be the simplest approach as otherwise sound_class
should be in ALSA core file if OSS is disabled but should be in
soundcore if OSS is enabled.  Also, there's also the user confusion
factor.

Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add support of Toshiba RX1
Hiroshi Miura [Thu, 28 Aug 2008 14:09:06 +0000 (16:09 +0200)]
ALSA: hda - Add support of Toshiba RX1

Added the support of Toshiba RX1 laptop with ALC262 codec chip.
Related ALSA bug#3386:
    https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3386

Signed-off-by: Hiroshi Miura <miurahr@acm.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ac97 - vt1618 7.1 Audio Support
John L. Utz III [Thu, 28 Aug 2008 14:04:40 +0000 (16:04 +0200)]
ALSA: ac97 - vt1618 7.1 Audio Support

1. Implement 7.1 Output for vt1618 codec.
2. Fix typos in comments from my previous 1617a patch.

Signed-off-by: John L. Utz III <john.utz@dmx.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: remove obsolete *_FIRMARE_IN_KERNEL in isa/Kconfig
Takashi Iwai [Wed, 27 Aug 2008 13:31:03 +0000 (15:31 +0200)]
ALSA: remove obsolete *_FIRMARE_IN_KERNEL in isa/Kconfig

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Convert DAPM pop time configuration to debugfs
Mark Brown [Thu, 28 Aug 2008 11:46:24 +0000 (12:46 +0100)]
ALSA: ASoC: Convert DAPM pop time configuration to debugfs

Pop time configuration is a debugging feature which shouldn't be used in
normal operation so move it to debugfs where it is clearer. This also
simplifies the code since debugfs provides standard facilities for
exposing simple integer values to user space.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add descriptions of missing model values
Takashi Iwai [Wed, 27 Aug 2008 16:12:42 +0000 (18:12 +0200)]
ALSA: hda - Add descriptions of missing model values

Added the descriptions of missing model values.
Also, fixed the model strings of a few new models to a standard style.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Fix VIA recording problem
Joseph Chan [Tue, 26 Aug 2008 12:38:03 +0000 (14:38 +0200)]
ALSA: hda - Fix VIA recording problem

Add a workaround for bad DMA-position reporting on VIA chipset.

Signed-off-by: Joseph Chan <josephchan@via.com.tw>
[modified and cleaned up by tiwai]
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: WM8903 I2C cleanups
Mark Brown [Tue, 26 Aug 2008 14:29:11 +0000 (15:29 +0100)]
ALSA: ASoC: WM8903 I2C cleanups

Fix a few issues identified by Jean Delvare:

 - Add missing newline to error display.
 - Return an error when we fail to locate the I2C adaptor.
 - Remove the static wm8903_i2c_device Jean suggested, it's redundant.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Add missing new-line at end of strings
Jean Delvare [Tue, 26 Aug 2008 13:47:55 +0000 (15:47 +0200)]
ALSA: ASoC: Add missing new-line at end of strings

Two warning messages lack their trailing new-line, add it.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add more ALC662/663 codec support
Kailang Yang [Tue, 26 Aug 2008 12:03:29 +0000 (14:03 +0200)]
ALSA: hda - Add more ALC662/663 codec support

- Add support for ECS (1019:9087)
- Delete G71V record from alc662_cfg_tbl[]
  The PCI SubsystemID was the same with M70V
- Add more ASUS notebook support

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - support more ALC888 devices
Kailang Yang [Tue, 26 Aug 2008 11:17:46 +0000 (13:17 +0200)]
ALSA: hda - support more ALC888 devices

- Add Lenovo Sky support (17aa:101d)
- Add ASUS M90V support (1043:8317)
- Add ASUS Eee 1601 support (1043:835f)

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add support of Quanta FL1
Kailang Yang [Tue, 26 Aug 2008 11:13:00 +0000 (13:13 +0200)]
ALSA: hda - Add support of Quanta FL1

Added the support of Quanta FL1 with ALC269 code chip.
Also a bit space clean-ups.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add support of Acer Aspire One
Kailang Yang [Tue, 26 Aug 2008 11:10:22 +0000 (13:10 +0200)]
ALSA: hda - Add support of Acer Aspire One

Added the support of Acer Aspire One with ALC269 codec chip.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add support of Toshiba S06
Kailang Yang [Tue, 26 Aug 2008 11:05:55 +0000 (13:05 +0200)]
ALSA: hda - Add support of Toshiba S06

Added the support of Toshiba S06 with ALC262 codec chip.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add support of HP DC7600
Kailang Yang [Tue, 26 Aug 2008 11:02:23 +0000 (13:02 +0200)]
ALSA: hda - Add support of HP DC7600

Fixed the support of HP DC7600 with ALC260, which was formerly handled
as model=hp-3013.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - fix spaces in patch_realtek.c
Kailang Yang [Tue, 26 Aug 2008 10:58:38 +0000 (12:58 +0200)]
ALSA: hda - fix spaces in patch_realtek.c

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Add WM8903 CODEC driver
Mark Brown [Tue, 26 Aug 2008 12:05:27 +0000 (13:05 +0100)]
ALSA: ASoC: Add WM8903 CODEC driver

The WM8903 is a high performance ultra-low power stereo CODEC optimised
for portable audio applications.  Features include:

    * 5mW power consumption for DAC to headphone playback
    * Stereo DAC SNR 96dB typical, THD -86dB typical
    * Stereo ADC SNR 93dB typical, THD -80dB typical
    * Up to 3 single ended inputs per stereo channel
    * Up to 2 pseudo differential inputs per stereo channel
    * Up to 1 fully differential mic input per stereo channel
    * Digital Dynamic Range Controller (compressor/limiter)
    * Digital sidetone mixing

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Cosmetic change: CA0106 on MSI K8N Diamond PLUS Motherboard
Jaroslav Kysela [Mon, 25 Aug 2008 06:11:50 +0000 (08:11 +0200)]
ALSA: Cosmetic change: CA0106 on MSI K8N Diamond PLUS Motherboard

Make ',' delimited with space as for other entries in table.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: do not mess mixer settings during probe
Krzysztof Helt [Sun, 24 Aug 2008 16:08:03 +0000 (18:08 +0200)]
ALSA: wss_lib: do not mess mixer settings during probe

Use the wss_dout function which does not mess
shadowed register values during chip probing.
Otherwise, user ends up with stupid mixer settings
after driver loading.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Acked-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: snd-ad1816a: add different TerraTec EWS64 S model
Rene Herman [Thu, 21 Aug 2008 21:07:43 +0000 (23:07 +0200)]
ALSA: snd-ad1816a: add different TerraTec EWS64 S model

Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ALS4000 driver work, step 2
Andreas Mohr [Thu, 21 Aug 2008 19:55:57 +0000 (21:55 +0200)]
ALSA: ALS4000 driver work, step 2

- more register naming work
- finally figured out that weird CR register stuff
  (and did I mention that I hate _really_ undecipherable open-coded values?)
- fix handling of IRQ sharing in interrupt handler
  (hopefully properly, otherwise I'd be grateful to hear your
  pedantic comments ;)
- add handy SPECS_PAGE references wherever useful
- comments, cleanup
- add me as module author

Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Fix ALC269 capture source
Takashi Iwai [Thu, 21 Aug 2008 14:25:07 +0000 (16:25 +0200)]
ALSA: hda - Fix ALC269 capture source

ALC269 capture source wasn't properly set up.
It's an independent MUX (0x23), not a source of ADC.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: via82xx - check continuous pages in buffer setup
Takashi Iwai [Wed, 30 Jul 2008 13:23:06 +0000 (15:23 +0200)]
ALSA: via82xx - check continuous pages in buffer setup

Check continuous pages in the buffer set up so that the number of
BDL is reduced.  Also increased the max buffer size.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: via82xx - ignore buffer preallocation errors
Takashi Iwai [Thu, 21 Aug 2008 12:17:38 +0000 (14:17 +0200)]
ALSA: via82xx - ignore buffer preallocation errors

The errors at buffer preallocations aren't fatal and safe to ignore.
The buffer will be allocated dynamically when opened.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - check page continuity
Takashi Iwai [Wed, 30 Jul 2008 13:13:34 +0000 (15:13 +0200)]
ALSA: hda - check page continuity

Check the continuity of allocated pages to reduce the BDL size as much
as possible so that it can use more than 1MB buffers.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Allocate larger pages in sgbuf
Takashi Iwai [Wed, 30 Jul 2008 13:13:33 +0000 (15:13 +0200)]
ALSA: Allocate larger pages in sgbuf

Most hardwares have limited buffer-descriptor table length.  This
also restricts the max buffer size of the sound driver.
For example, snd-hda-intel has 1MB buffer size limit, and this is
because it can have at most 256 BDL entries.  For supporting larger
buffers, we need to allocate larger pages even for sg-buffers.

This patch changes the sgbuf allocation code to try to allocate
larger pages first.  At each head of the allocated pages, the
number of allocated pages is stored in the lowest bits of the
corresponding entry of the table addr field.  This change isn't
visible as long as the driver uses snd_sgbuf_get_addr() helper.

Also, the patch adds a new function, snd_pcm_sgbuf_get_chunk_size().
This returns the size of the chunk on continuous pages starting at
the given position offset.  If the chunk reaches to a non-continuous
page, it returns the size to the boundary.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Fix allocation size calculation in snd_dma_alloc_pages_fallback()
Takashi Iwai [Wed, 30 Jul 2008 13:13:33 +0000 (15:13 +0200)]
ALSA: Fix allocation size calculation in snd_dma_alloc_pages_fallback()

snd_dma_alloc_pages_fallback() always tries to reduce the size in a half,
but it's not good when the given size isn't a power-of-two.
Check it first then try to align.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Clean up SG-buffer helper functions and macros
Takashi Iwai [Thu, 21 Aug 2008 11:00:13 +0000 (13:00 +0200)]
ALSA: Clean up SG-buffer helper functions and macros

Clean up SG-buffer helper functions and macros.  Helpers take substream
as arguments now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: revo51: add headphone output
Alexander Beregalov [Thu, 21 Aug 2008 04:28:42 +0000 (08:28 +0400)]
ALSA: revo51: add headphone output

It is ALSA bug #1754.
 D6 bit in 02 register is PW4.

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Create beep control on ALC269 codec
Takashi Iwai [Wed, 20 Aug 2008 16:38:26 +0000 (18:38 +0200)]
ALSA: hda - Create beep control on ALC269 codec

ALC269 codec has a beep, but it was not used, so far.
Create a beep control appropriately.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: aoa - Remove duplicate assignment of SNDRV_PCM_FMTBIT_S{16,24}_BE bits
Roel Kluin [Wed, 20 Aug 2008 08:31:38 +0000 (10:31 +0200)]
ALSA: aoa - Remove duplicate assignment of SNDRV_PCM_FMTBIT_S{16,24}_BE bits

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: opl3sa2: replace nd_opl3sa2_info_xxx() with snd_wss_info_xxx()
Krzysztof Helt [Tue, 19 Aug 2008 19:51:49 +0000 (21:51 +0200)]
ALSA: opl3sa2: replace nd_opl3sa2_info_xxx() with snd_wss_info_xxx()

Replace snd_opl3sa2_info_xxx() with snd_wss_info_xxx().
Drop check of card->private_data which cannot be NULL
if card is not NULL (spotted by Rene Herman).

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: als4000 - Code clean up
Andreas Mohr [Wed, 20 Aug 2008 08:04:56 +0000 (10:04 +0200)]
ALSA: als4000 - Code clean up

- use specs-derived register name enums instead of open-coded numeric
values, for better understanding of things
- fix naming confusion ("gcr" was _NOT_ the GCR register stuff, but
  instead the io _base_ which has multiplexed _access_ to GCR config
  space, at _sub_ registers 0x08 and 0x0c)
- add FIXME comments about a race condition and MPU401 features

Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Update MAINTAINERS
Takashi Iwai [Tue, 19 Aug 2008 11:10:04 +0000 (13:10 +0200)]
ALSA: Update MAINTAINERS

Added tiwai to MAINTAINERS (per request of akpm)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: oss: remove driver for SGI HAL2 audio device
Thomas Bogendoerfer [Tue, 19 Aug 2008 09:54:14 +0000 (11:54 +0200)]
sound: oss: remove driver for SGI HAL2 audio device

With the restructering of the indy button handling the old OSS HAL2 driver
got broken.  Since there is a new ALSA driver for HAL2, the experimental
OSS driver is obsolete and will be removed by this patch.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Ralf Baechle <ralf@linux-mips.org>
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>
16 years agoALSA: hda - disable delayed period-ack with bdl_pos_adj=0
Takashi Iwai [Mon, 18 Aug 2008 15:11:09 +0000 (17:11 +0200)]
ALSA: hda - disable delayed period-ack with bdl_pos_adj=0

When bdl_pos_adj=0 is given, disable the position-check and the delayed
period update mechanism.  Usually bdl_pos_adj=0 is set only for the
debugging purpose on really broken hardwares.  It's better to disable
the extra complexity in such a case.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: snd_wss_calibrate_mute improvement
Krzysztof Helt [Sun, 17 Aug 2008 20:38:27 +0000 (22:38 +0200)]
ALSA: wss_lib: snd_wss_calibrate_mute improvement

Mute sound by setting mute bit without
setting volume to 0. It makes both source code
and binary shorter.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add AD1882A codec support
Takashi Iwai [Mon, 18 Aug 2008 11:53:07 +0000 (13:53 +0200)]
ALSA: hda - Add AD1882A codec support

Added the basic support of AD1882A codec chip.
It's almost compatible with AD1882, but with a digital mic and some
differences in connections.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: opl3sa2: drop snd_card pointer from the snd_opl3sa2 structure
Krzysztof Helt [Sun, 17 Aug 2008 18:01:14 +0000 (20:01 +0200)]
ALSA: opl3sa2: drop snd_card pointer from the snd_opl3sa2 structure

Remove card pointer from the snd_opl3sa2
structure and break circular reference
snd_card->snd_opl3sa2->snd_card.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Acked-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - set up HDMI channels
Takashi Iwai [Wed, 30 Jul 2008 13:13:29 +0000 (15:13 +0200)]
ALSA: hda - set up HDMI channels

Set up channel information for HDMI widgets.  This will allow LPCM
with multiple channels supported on some HDMI devices.

TODO: It still doesn't check ELD and doesn't change PCM parameters
dynamically.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - print a few HDMI information in proc
Takashi Iwai [Wed, 30 Jul 2008 13:13:29 +0000 (15:13 +0200)]
ALSA: hda - print a few HDMI information in proc

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Add definitions of HDMI-related verbs
Takashi Iwai [Wed, 30 Jul 2008 13:13:28 +0000 (15:13 +0200)]
ALSA: hda - Add definitions of HDMI-related verbs

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agompu401: reindent misindented spinlock
Ilpo Järvinen [Tue, 19 Aug 2008 07:56:33 +0000 (10:56 +0300)]
mpu401: reindent misindented spinlock

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: release v1.0.18rc1
Jaroslav Kysela [Fri, 15 Aug 2008 11:33:10 +0000 (13:33 +0200)]
ALSA: release v1.0.18rc1

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