platform/kernel/linux-rpi.git
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>
16 years agoALSA: dummy driver - do not use assignment in if condition
Jaroslav Kysela [Fri, 15 Aug 2008 10:59:02 +0000 (12:59 +0200)]
ALSA: dummy driver - do not use assignment in if condition

checkpatch.pl does not like assignment in if condition

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agosound: Fix esoteric double free in the dummy sound driver.
Daniel THOMPSON [Fri, 15 Aug 2008 09:53:38 +0000 (10:53 +0100)]
sound: Fix esoteric double free in the dummy sound driver.

The dummy driver uses runtime->private_free but still frees
its pcm structures on error paths.

This is esoteric because the error paths in question are
unreachable. Thus the bug is only a problem when someone
copies this code into other drivers.

Signed-off-by: Daniel R Thompson <daniel.thompson@st.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: 92HD75xx fixes
Matthew Ranostay [Fri, 15 Aug 2008 05:45:52 +0000 (07:45 +0200)]
ALSA: hda: 92HD75xx fixes

Fixed several noise issues with DACs and ADCs on some 92HD75xxx based codecs
with certain revision id's.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: dynamically create capture mux controls
Matthew Ranostay [Fri, 15 Aug 2008 05:43:24 +0000 (07:43 +0200)]
ALSA: hda: dynamically create capture mux controls

Dynamically create capture mux volume controls when a output amp is detected.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: fix a typo during snd_assert() removal
Takashi Iwai [Thu, 14 Aug 2008 05:51:57 +0000 (07:51 +0200)]
ALSA: fix a typo during snd_assert() removal

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: usb-audio - Add ignore_ctl_error parameter
Takashi Iwai [Wed, 13 Aug 2008 13:40:53 +0000 (15:40 +0200)]
ALSA: usb-audio - Add ignore_ctl_error parameter

Added the ignore_ctl_error parameter to enable/disable the control-error
handling for mixer interfaces.  It was a hard-coded ifdef, and now you
can change it more easily.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Add missing description of usb-audio parameters
Takashi Iwai [Wed, 13 Aug 2008 13:27:43 +0000 (15:27 +0200)]
ALSA: Add missing description of usb-audio parameters

Added the missing description of module parameters of usb-audio driver
to ALSA-Configuration.txt.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - put all HDA codec IDs to components for precise hw detection
Jaroslav Kysela [Wed, 13 Aug 2008 18:55:32 +0000 (20:55 +0200)]
ALSA: hda - put all HDA codec IDs to components for precise hw detection

Export HDA codec subvendor ID and revision ID to user space via the
components variable. Our alsactl utility requires these values for
the perfect hardware identification.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ALSA-Configuration.txt: supported cards update
Alexander Beregalov [Tue, 12 Aug 2008 20:10:55 +0000 (00:10 +0400)]
ALSA: ALSA-Configuration.txt: supported cards update

ALSA-Configuration.txt: supported cards update

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: sound/pci: supported cards update
Alexander Beregalov [Wed, 13 Aug 2008 08:36:21 +0000 (12:36 +0400)]
ALSA: sound/pci: supported cards update

sound/pci: supported cards update

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - initialize node 0x21 properly on AD1988 codecs
Takashi Iwai [Mon, 11 Aug 2008 16:08:54 +0000 (18:08 +0200)]
ALSA: hda - initialize node 0x21 properly on AD1988 codecs

The widget node 0x21 should be initialized as unmuted/full (0dB)
as default.  This will reduce additional manual work by user at the
first time use.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Don't reset SPDIF in each status change
Takashi Iwai [Mon, 11 Aug 2008 08:04:40 +0000 (10:04 +0200)]
ALSA: hda - Don't reset SPDIF in each status change

The SPDIF output is toggled at each time any SPDIF status bits are changed
because of the known problems on some codecs.  But, this also results in
loosing the sync, and the problem is more obvious on HDMI output over
SPDIF.  Since the toggle is necessary only for some codecs, we should
check whether this workaround is needed and skip if unnecessary.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: sound/pci/Kconfig: update for ice1712/24
Alexander Beregalov [Sun, 10 Aug 2008 22:52:42 +0000 (02:52 +0400)]
ALSA: sound/pci/Kconfig: update for ice1712/24

sound/pci/Kconfig: update for ice1712/24

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ice1724/revo: simple clean up
Alexander Beregalov [Sun, 10 Aug 2008 22:09:04 +0000 (02:09 +0400)]
ALSA: ice1724/revo: simple clean up

ice1724/revo: simple clean up

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Clean up snd_BUG()
Takashi Iwai [Fri, 8 Aug 2008 15:18:08 +0000 (17:18 +0200)]
ALSA: Clean up snd_BUG()

Use the standard WARN() macro for snd_BUG().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Kill snd_assert() definition
Takashi Iwai [Fri, 8 Aug 2008 15:14:55 +0000 (17:14 +0200)]
ALSA: Kill snd_assert() definition

Remove snd_assert() completely now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Kill snd_assert() in other places
Takashi Iwai [Fri, 8 Aug 2008 15:12:47 +0000 (17:12 +0200)]
ALSA: Kill snd_assert() in other places

Kill snd_assert() in other places, either removed or replaced with
if () with snd_BUG_ON().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Kill snd_assert() in sound/pci/*
Takashi Iwai [Fri, 8 Aug 2008 15:12:14 +0000 (17:12 +0200)]
ALSA: Kill snd_assert() in sound/pci/*

Kill snd_assert() in sound/pci/*, either removed or replaced with
if () with snd_BUG_ON().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Kill snd_assert() in sound/isa/*
Takashi Iwai [Fri, 8 Aug 2008 15:11:45 +0000 (17:11 +0200)]
ALSA: Kill snd_assert() in sound/isa/*

Kill snd_assert() in sound/isa/*, either removed or replaced with
if () with snd_BUG_ON().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Kill snd_assert() in sound/core/*
Takashi Iwai [Fri, 8 Aug 2008 15:09:09 +0000 (17:09 +0200)]
ALSA: Kill snd_assert() in sound/core/*

Kill snd_assert() in sound/core/*, either removed or replaced with
if () with snd_BUG_ON().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: Introduce snd_BUG_ON() macro
Takashi Iwai [Fri, 8 Aug 2008 15:06:01 +0000 (17:06 +0200)]
ALSA: Introduce snd_BUG_ON() macro

Introduced snd_BUG_ON() macro as a replacement of snd_assert() macro.
snd_assert() is pretty ugly as it has the control flow in its argument.
OTOH, snd_BUG_ON() behaves like a normal conditional, thus it's much
easier to read the flow.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: missing closing brace in (ifdeffed out) debug function.
Rene Herman [Fri, 8 Aug 2008 14:39:21 +0000 (16:39 +0200)]
ALSA: wss_lib: missing closing brace in (ifdeffed out) debug function.

Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: au88x0: clipping ceiling loop wrong in comment
roel kluin [Thu, 7 Aug 2008 19:56:22 +0000 (15:56 -0400)]
ALSA: au88x0: clipping ceiling loop wrong in comment

As is the clipping ceiling loop appears wrong anyways

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC - fix DMA channel selection in Freescale MPC8610 sound drivers
Timur Tabi [Wed, 6 Aug 2008 20:01:01 +0000 (15:01 -0500)]
ALSA: ASoC - fix DMA channel selection in Freescale MPC8610 sound drivers

On the Freescale MPC8610, SSI1 is hard-coded to use DMA channels 0 and 1
for playback and capture, and SSI2 is hard-coded to use DMA channels 2 and 3.
This patch fixes the fabric driver so that it uses the right channels.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Add WM8580 CODEC driver
Mark Brown [Wed, 6 Aug 2008 12:18:26 +0000 (13:18 +0100)]
ALSA: ASoC: Add WM8580 CODEC driver

The WM8580 is an audio CODEC designed for DVD and surround sound
applications, offering three stereo DACs and a stereo ADC.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: rework snd_ad1848_probe()
Rene Herman [Wed, 6 Aug 2008 06:09:34 +0000 (08:09 +0200)]
ALSA: wss_lib: rework snd_ad1848_probe()

Make snd_ad1848_probe() easier to follow. With an exception for only
trying once as soon as the codec is out of init (which should be all
that's needed) the detection logic should be unchanged.

Signed-off-by: Rene Herman <rene.herman@gmail.com>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ac97 - Enable mono-out on ALC203 codec as default
Takashi Iwai [Tue, 5 Aug 2008 13:45:45 +0000 (15:45 +0200)]
ALSA: ac97 - Enable mono-out on ALC203 codec as default

Use pin 37 for mono-out as default on ALC203.

Reported-by: george pee <georgepee@gmail.com>
Tested-by: george pee <georgepee@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: snd_usb_audio: fix SB Extigy IR Remote regression
Phillip Michael Jordan [Tue, 5 Aug 2008 09:01:00 +0000 (11:01 +0200)]
ALSA: snd_usb_audio: fix SB Extigy IR Remote regression

The support for the SB Extigy's remote seems to be broken in all
recent ALSA versions, including 1.0.17. The driver detects the event
correctly, then submits a URB to query the RC code. On the Extigy, the
URB is submitted with a length of 2 bytes. My hardware, however, only
replies with 1 byte, containing the correct RC button code. The
current implementation discards this as being too short. (line 1784 of
usbmixer.c)

This patch specifies a "minimum packet length" in the remote control
configuration. I've left the values for the Audigy 2/Live! the same as
the packet length, as I'm assuming the existing code works with them.
(I don't have the hardware to confirm) This fixes the Extigy RC
support, e.g. for use with Lirc.

Signed-off-by: Phillip Michael Jordan <phil@philjordan.eu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: ASoC: Add WM8900 CODEC driver
Mark Brown [Mon, 4 Aug 2008 11:06:45 +0000 (12:06 +0100)]
ALSA: ASoC: Add WM8900 CODEC driver

The WM8900 is designed for portable multimedia applications requiring
low power consumption, high performance audio and a compact form factor
providing:

 - 24 bit stereo ADC and DAC
 - Microphone and line inputs
 - Line outputs
 - Class G headphone amplifier

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda: Add support for ECS/PC Chips boards with Sigmatel codecs
Mauro Carvalho Chehab [Mon, 4 Aug 2008 13:39:59 +0000 (10:39 -0300)]
ALSA: hda: Add support for ECS/PC Chips boards with Sigmatel codecs

Thanks to Sistema Fenix (http://www.sistemafenix.com.br/) and CDI Brasil
(www.cdibrasil.com.br/) for sponsoring this development.

Signed-off-by: Gilberto <gilberto@sistemafenix.com.br>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: hda - Fix sound on NEC Versa S9100
Pascal Terjan [Mon, 4 Aug 2008 12:36:05 +0000 (14:36 +0200)]
ALSA: hda - Fix sound on NEC Versa S9100

This patch adds sound support for NEC Versa S9100
With it, we get sound on the internal speaker and headphone (with
automute working) while there is no sound by default.
External mic also works fine but I don't know if there is an internal
one (if there is an internal mic it does not work currently), and I
had to send back the hardware.

Signed-off-by: Pascal Terjan <pterjan@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: fix AZT2320 probe.
Rene Herman [Tue, 5 Aug 2008 07:33:33 +0000 (09:33 +0200)]
ALSA: wss_lib: fix AZT2320 probe.

After the transition from cs4321_lib to wss_lib, azt2320 probe visits
snd_ad1848_probe during detection. It expects register 0 (LEFT_INPUT)
to be able to retain the value 0xaa during detection but AZT2320 does
not support MIC gain meaning it reads back as 0x8a instead.

Signed-off-by: Rene Herman <rene.herman@gmail.com>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: snd-cs4236: add Techmakers MF-4236PW PnP card ID
Rene Herman [Sun, 3 Aug 2008 23:23:43 +0000 (01:23 +0200)]
ALSA: snd-cs4236: add Techmakers MF-4236PW PnP card ID

Add the Techmakers MF-4236PW (Crystal CX4236B-XQ3) PnP card ID.

Signed-off-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: remove second mutexes initialization
Krzysztof Helt [Sun, 3 Aug 2008 15:57:21 +0000 (17:57 +0200)]
ALSA: wss_lib: remove second mutexes initialization

Remove initializations of spinlock and mutexes which
are done earlier in snd_wss_new(). The snd_wss_new()
is called from snd_wss_create().

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: opti92x-ad1848 WSS_HW_DETECT fix
Rene Herman [Mon, 4 Aug 2008 03:26:26 +0000 (05:26 +0200)]
ALSA: wss_lib: opti92x-ad1848 WSS_HW_DETECT fix

snd-opti92x-ad1848 mistakingly passes WSS_HW_OPTI93X currently. This
fixes it as tested with a OPTi 82C929A/AD1848 card.

Signed-off-by: Rene Herman <rene.herman@gmail.com>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: fix opti93x capture formats limitations
Krzysztof Helt [Thu, 31 Jul 2008 19:11:46 +0000 (21:11 +0200)]
ALSA: wss_lib: fix opti93x capture formats limitations

Limit opti93x cards capture formats to only linear ones.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: use wss detection code instead of ad1848 one
Krzysztof Helt [Thu, 31 Jul 2008 19:10:47 +0000 (21:10 +0200)]
ALSA: wss_lib: use wss detection code instead of ad1848 one

Use the wss detection code and kill the ad1848 library.
The library is fully assimilated into the new wss library.

This required reworking of the AD1848 family code
so the code is changed to correctly detect chips from
the AD1848 and CS4231 families.

I have tested it on following cards:
Gallant SC-6600 (codec: AD1848, driver: snd-sc6600)
SoundScape VIVO/90 (codec: AD1845, driver: snd-sscape)
SG Waverider (codec: CS4231A, driver: Rene Herman's snd-galaxy)
Opti930 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Opti931 (codec: built-in - CS4231 compatible, driver: snd-opti93x)
Gallant SC-70P (chip/codec: CS4237B, driver: snd-cs4236)
Audio Plus 3D (chip/codec: CMI8330A, driver: snd-cmi8330)
Dell Latitude CP (chip/codec: cs4236, driver snd-cs4232)

Sound playback and recording works on all these cards.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: use wss pcm code instead of ad1848 one
Krzysztof Helt [Thu, 31 Jul 2008 19:09:32 +0000 (21:09 +0200)]
ALSA: wss_lib: use wss pcm code instead of ad1848 one

Use the wss pcm code and kill the ad1848 pcm code.

The AD1848 chip is much slower than CS4231 chips
so the waiting loop was increased 100x (10x is not
enough).

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: use wss mixer code instead of ad1848 one
Krzysztof Helt [Thu, 31 Jul 2008 19:08:32 +0000 (21:08 +0200)]
ALSA: wss_lib: use wss mixer code instead of ad1848 one

Use the wss mixer code and kill the ad1848 mixer code.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: use CS4231P instead of AD1848P (kill the AD1848P)
Krzysztof Helt [Thu, 31 Jul 2008 19:07:30 +0000 (21:07 +0200)]
ALSA: wss_lib: use CS4231P instead of AD1848P (kill the AD1848P)

Use CS4231P instead of AD1848P (kill the AD1848P).

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: replace ad1848 mixer element macros with wss ones
Krzysztof Helt [Thu, 31 Jul 2008 19:06:46 +0000 (21:06 +0200)]
ALSA: wss_lib: replace ad1848 mixer element macros with wss ones

Use the wss macros instead of ad1848 ones.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
16 years agoALSA: wss_lib: use wss constants instead of ad1848 ones
Krzysztof Helt [Thu, 31 Jul 2008 19:05:44 +0000 (21:05 +0200)]
ALSA: wss_lib: use wss constants instead of ad1848 ones

Use wss constants for mode.
Move ad1848 hardware constants to the wss.h.
Move mixer tlv macros into the ad1848_lib.c from the ad1848.h.

Drop the MODE_RUNNING spurious IRQ guard on AD1848 as it doesn not seem
to be needed.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Reviewed-by: Rene Herman <rene.herman@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>