Commit Graph

4934 Commits

Author SHA1 Message Date
Takashi Iwai
5e7b8e0d87 ALSA: hda - Make user_pin overriding the driver setup
Make user_pin overriding even the driver pincfg, e.g. the static / fixed
pin config table in patch_sigmatel.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 09:45:59 +01:00
Takashi Iwai
346ff70fdb ALSA: hda - Rename {override,cur}_pin with {user,driver}_pin
Rename from override_pin and cur_pin with user_pin and driver_pin,
respectively, to be a bit more intuitive.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 09:42:57 +01:00
Takashi Iwai
c17a1abae2 ALSA: hda - Use snd_hda_codec_get_pincfg() in the rest places
Replace with snd_hda_codec_get_pincfg() in the places where available.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 09:28:12 +01:00
Tim Blechmann
f9ffc5d6f0 ALSA: hdsp - whitespace cleanup
Impact: remove trailing spaces

Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 08:28:02 +01:00
Tim Blechmann
e588ed8304 ALSA: hdsp - poll for iobox
sleeping for 2 seconds before checking for the iobox is not enough
on some systems.
this patch increases the timeout, but polls the card during that
time. it thus speeds up the module loading when the card has already
been initialized, while being more robust on systems, which require
a higher timeout than the predefined 2 seconds.

Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 08:20:01 +01:00
Takashi Iwai
66a101dda6 Merge branch 'topic/hwdep-cleanup' into topic/hdsp 2009-02-23 08:17:28 +01:00
Takashi Iwai
1618a3281b Merge branch 'fix/hda' into topic/hda
Conflicts:
	sound/pci/hda/patch_realtek.c
2009-02-23 08:14:41 +01:00
Juan Jesus Garcia de Soria
cc374c477c ALSA: hda - Quirk for Acer Aspire 6530G
The Acer Aspire 6530G needs the 4930G "model" for the front mic to
work properly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 08:13:53 +01:00
Luke Yelavich
2d46638160 ALSA: hda - add another MacBook Pro 3,1 SSID
Reference: Ubuntu bug #33245
    https://bugs.launchpad.net/bugs/332456

Signed-off-by: Luke Yelavich <themuso@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 07:54:26 +01:00
Steve Chen
5370d96f85 ALSA: fix excessive background noise introduced by OSS emulation rate shrink
Incorrect variable was used to get the next sample which caused S2
to be stuck with the same value resulting in loud background noise.

Signed-off-by: Steve Chen <schen at mvista.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 07:49:04 +01:00
Andreas Mohr
ce71bfd1aa ALSA: ALS4000, slight mixer improvements
- add 8kHz / 20 kHz low-pass filter switch control
- add ALS4000 Mono capture route control
- add annotations to specs pages
- improve ALS4000 PM saved regs selection (remove SB dummy register,
  add missing ones)
- add some missing ALS4000 register defines
- constify two variables

Signed-off-by: Andreas Mohr <andi@lisas.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 07:47:52 +01:00
Anssi Hannula
e8bf069c41 ALSA: aw2: do not grab every saa7146 based device
Audiowerk2 driver snd-aw2 is bound to any saa7146 device as it does not
check subsystem ids. Many DVB devices are saa7146 based, so aw2 driver
grabs them as well.

According to http://lkml.org/lkml/2008/10/15/311 aw2 devices have the
subsystem ids set to 0, the saa7146 default.

Fix conflicts with DVB devices by checking for subsystem ids = 0
specifically.

Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 07:41:25 +01:00
Michael Schwingen
cc95948972 ALSA: hda - add support for "Maxdata Favorit 100XS" (Intel HDA/ALC260)
Signed-off-by: Michael Schwingen <michael@schwingen.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-23 07:39:34 +01:00
Ingo Molnar
fc6fc7f1b1 Merge branch 'linus' into x86/apic
Conflicts:
	arch/x86/mach-default/setup.c

Semantic conflict resolution:
	arch/x86/kernel/setup.c

Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-02-22 20:05:19 +01:00
Geert Uytterhoeven
3d92e8f3ae m68k: atari - Rename "mfp" to "st_mfp"
http://kisskb.ellerman.id.au/kisskb/buildresult/72115/:
| net/mac80211/ieee80211_i.h:327: error: syntax error before 'volatile'
| net/mac80211/ieee80211_i.h:350: error: syntax error before '}' token
| net/mac80211/ieee80211_i.h:455: error: field 'sta' has incomplete type
| distcc[19430] ERROR: compile net/mac80211/main.c on sprygo/32 failed

This is caused by

| # define mfp ((*(volatile struct MFP*)MFP_BAS))

in arch/m68k/include/asm/atarihw.h, which conflicts with the new "mfp" enum in
net/mac80211/ieee80211_i.h.

Rename "mfp" to "st_mfp", as it's a way too generic name for a global #define.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-02-22 09:23:02 -08:00
Mark Brown
93e051d277 ASoC: Only unregister drivers we registered for WM8753
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-22 14:24:00 +00:00
Mark Brown
eeb1080b29 ASoC: Report I/O errors from WM8753 reset
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-22 14:19:23 +00:00
Ingo Molnar
3b6f7b9beb Merge branch 'x86/urgent' into x86/core 2009-02-20 17:40:43 +01:00
Takashi Iwai
2f334f92cf ALSA: hda - Remove codec-specific pin save/restore functions
Replace the accessor to pin defaults with the common code for caching.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 16:48:40 +01:00
Takashi Iwai
330ee99579 ALSA: hda - Remove IDT codec-specific pin save/restore functions
Removed its own save/restore functions and replaced with the common code.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 16:48:39 +01:00
Takashi Iwai
0e8a21b59d ALSA: hda - Remove realtek codec-specific pin save/restore functions
Now it's done in the common code.
Also use the common access functions for pin defaults.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 16:48:38 +01:00
Takashi Iwai
3be141494a ALSA: hda - Add generic pincfg initialization
Added the generic pincfg cache and save/restore functions.
Also introduced the pin-overriding via hwdep sysfs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 16:48:26 +01:00
Takashi Iwai
d2f57cd54a Merge branch 'fix/hda' into topic/hda 2009-02-20 16:06:47 +01:00
Takashi Iwai
55290e1932 ALSA: hda - Fix parse of init_verbs sysfs entry
Fixed the parse of init_verbs hwdep sysfs entry.
Simplieied using sscanf.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 16:06:30 +01:00
Clemens Ladisch
f3990e610a sound: usb-audio: remove MIN_PACKS_URB
Remove the MIN_PACKS_URB symbol because other limits can force the
number of packets down to one, regardless of the value of this symbol,
and nobody has ever changed it anyway.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 11:14:55 +01:00
Clemens Ladisch
eacbb9dba6 sound: virtuoso: increase minimum volume to -60 dB
Use -60 dB as the minimum value of the master volume mixer control.
While the DACs would support ranges down to about -120 dB, such
attenuations are not useful in practice.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 11:14:25 +01:00
Clemens Ladisch
d91b424d6d sound: oxygen: handle AK5385 ADC on Claro halo cards
The HT-Omega Claro halo's ADC is an AK5385 instead of a WM8785, so we
should handle the ADC parameters as we do with the X-Meridian.

Using the code for the wrong ADC does not seem to have any audible
effects, and the Windows driver does it, but it is nonetheless a good
idea to run the AK5385 with an oversampling ratio that is not outside
the documented limits.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 11:14:09 +01:00
Harvey Harrison
e32740d978 ALSA: pcxhr.h replace signed one-bit bitfields
The usage and comments make it clear values of 1/0 were intended
rather than -1/0

Noticed by sparse:
sound/pci/pcxhr/pcxhr.h💯20: error: dubious one-bit signed bitfield
sound/pci/pcxhr/pcxhr.h:101:22: error: dubious one-bit signed bitfield
sound/pci/pcxhr/pcxhr.h:102:24: error: dubious one-bit signed bitfield
sound/pci/pcxhr/pcxhr.h:103:21: error: dubious one-bit signed bitfield
sound/pci/pcxhr/pcxhr.h:104:25: error: dubious one-bit signed bitfield
sound/pci/pcxhr/pcxhr.h:105:20: error: dubious one-bit signed bitfield

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-20 08:02:37 +01:00
Mark Brown
ce3bdaa871 ASoC: Disable WM8731 line bypass by default
This avoids temporarily enabling the ouput stages during startup which
can cause audible effets in the output stages.

Reported-by: Fredrik Redgård <rik@svep.se>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-19 14:30:57 +00:00
Takashi Iwai
e432472db2 Merge branch 'fix/usb-audio' into for-linus 2009-02-19 13:58:05 +01:00
Takashi Iwai
e6845d9101 Merge branch 'fix/misc' into for-linus 2009-02-19 13:58:01 +01:00
Takashi Iwai
379752fdf8 Merge branch 'fix/hda' into for-linus 2009-02-19 13:57:52 +01:00
Clemens Ladisch
1275d6f608 sound: oxygen: automatically restore overwritten EEPROM
If the EEPROM was partially overwritten (which seems to happen before the OS is
booted), restore its entire contents by deducing it from the remaining
information.

This does not have any effect on the Linux driver, which works even with
incomplete information in the EEPROM, but it makes other drivers work again.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 10:22:26 +01:00
Clemens Ladisch
30459d7b18 sound: oxygen: handle cards with broken EEPROM
Under as yet unknown circumstances, the first word of the sound card's
EEPROM gets overwritten.  When this has happened, we cannot rely on the
subsystem IDs that the kernel reads from the PCI configuration
registers.  Instead, we read the IDs directly from the EEPROM and do the
ID matching manually.

Because the model-specific driver cannot determine the model before
calling oxygen_pci_probe(), that function now gets a get_model()
callback as parameter.  The customizing of the model structure, which
was formerly done by the probe() callback, also has moved into
get_model().

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 10:22:25 +01:00
Clemens Ladisch
a69bb3c3fe sound: oxygen: use static driver name
When allocating resources, use a fixed name instead of reading it from
the model structure.  This allows us to allocate the resources before
the actual model is known.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 10:22:24 +01:00
Clemens Ladisch
6ed9115709 sound: oxygen: allocate model_data dynamically
Allocate the model-specific data dynamically instead of including it in
the memory block of the card structure.  This will allow us to determine
the actual model after the card creation.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 10:22:23 +01:00
Clemens Ladisch
bb71858853 sound: oxygen: make the owner module a parameter of the probe function
Move the owner field out of the oxygen_model structure and make it
a parameter of oxygen_pci_probe(), because the actual owner module does
not depend on the card model.  Furthermore, moving it out of the model
structure allows us to create the card structure before the actual model
is known.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 10:22:22 +01:00
Takashi Iwai
a5e0e970c0 Merge branch 'topic/snd_card_new-err' into topic/oxygen 2009-02-19 10:22:14 +01:00
Clemens Ladisch
6ce6c473a7 sound: virtuoso: revert "do not overwrite EEPROM on Xonar D2/D2X"
This reverts commit 7e86c0e685 ("do not
overwrite EEPROM on Xonar D2/D2X") because it did not actually help with
the problem.

More user reports show that the overwriting of the EEPROM is not
triggered by using this driver but by installing Linux, and that the
installation of any other operating system (even one without any CMI8788
driver) has the same effect.  In other words, the presence of this
driver does not have any effect on the occurrence of the error.  (So
far, the available evidence seems to point to a BIOS bug.)

Furthermore, it turns out that the EEPROM chip is protected against
stray write commands by the command format and by requiring a separate
write-enable command, so the error scenario in the previous commit (that
SPI writes can be misinterpreted as an EEPROM write command) is not even
theoretically possible.

The mixer control that was removed as a consequence of the previous
commit can only be partially emulated in userspace, which also means it
cannot be seen be the in-kernel OSS API emulation, so it is better to
revert that change.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 10:15:39 +01:00
Takashi Iwai
7e0e44d430 ALSA: hda - Add digital-only mode for ALC268
ALC268 can be configured as digital-only, e.g. for HDMI, on some
machines.  Allow the parser to set up the digital-only mode.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 08:15:49 +01:00
Takashi Iwai
ab9fec099b ALSA: hda - Avoid doubly beep attachment in patch_alc268()
Remove the doubly attachment in patch_alc268().
The input beep is attached conditionally only when needed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 08:13:26 +01:00
Takashi Iwai
07eba61dd6 ALSA: hda - Don't enable beep for digital-only ALC262
When ALC262 codec is configured as digital-only, it's meaningless to
add the digital beep input.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 08:06:35 +01:00
Mark Brown
c6f2981170 ASoC: Add device init/exit annotations to new-style Wolfson CODEC drivers
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 21:26:58 +00:00
Mark Brown
519cf2df5f ASoC: Check for errors when writing WM8731 reset register
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 21:06:01 +00:00
Peter Ujfalusi
6bab83fd88 ASoC: TWL4030: Add digital loopback support
This patch adds the digital loopback/bypass support for twl4030 codec.

The digital loopback will let the digimic0 (routed in the TX1 capture path
inside of TWL4030) data to be routed back to the RX2 playback path
(I2S stereo). It can also route the analog capture date routed through the
TX1 back to RX2.

Effectively the digital loopback is routing the audio from the TX1 capture path
to the RX2 playback path.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 17:14:23 +00:00
Takashi Iwai
2678f60d2b ALSA: jack - Use card->shortname for input name
Currently the jack layer refers to card->longname as a part of
its input device name string.  However, longname is often really long
and way too ugly as an identifier, such as,
"HDA Intel at 0xf8400000 irq 21".

This patch changes the code to use card->shortname instead.
The shortname string contains usually the h/w vendor and product
names but without messy I/O port or IRQ numbers.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-18 16:46:27 +01:00
Mark Brown
93b760b707 ASoC: Implement SPI device unregistration for WM8731
Completely untested.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 14:47:20 +00:00
Mark Brown
fc99675768 ASoC: Fix build for corgi and poodle
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 14:46:58 +00:00
Takashi Iwai
b3bdb30b6d ALSA: hda - Add quirk for Acer X3200
Acer X3200 needs model=auto, otherwise model=acer is pre-selected.

Reference: Novell bnc#476268
	https://bugzilla.novell.com/show_bug.cgi?id=476268

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-18 13:16:26 +01:00
Mark Brown
59544d33ff ASoC: Remove version display from the WM8753 driver
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 11:55:26 +00:00
Mark Brown
5998102b90 ASoC: Refactor WM8731 device registration
Move the WM8731 driver to use a more standard device registration
scheme where the device can be registered independantly of the ASoC
probe.

As a transition measure push the current manual code for registering
the WM8731 into the individual machine driver probes. This allows
separate patches to update the relevant architecture files with less
risk of merge issues.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 11:55:22 +00:00
Mark Brown
a8035c8f04 ASoC: Shuffle WM8731 SPI and I2C device registration
This is a pure code motion patch intended to improve reviewability of a
following patch moving WM8731 to use more standard device registration.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 11:25:48 +00:00
Mark Brown
7ee7538041 ASoC: Rename AT91SAMG20-EK for applications
This is a bit more idiomatic and makes identifying a configuration
based on the board type work better.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 11:25:23 +00:00
Mark Brown
5de7f9b200 ASoC: Actively manage MCLK for AT91SAM9G20-EK
We have software control of the MCLK for the WM8731 so save a bit of
power by actively managing it within the machine driver, enabling it
only while the codec is active.

Once ASoC supports multiple boards and doesn't require the soc-audio
device the initial clock setup should be pushed down into the arch/arm
code but for now this reduces merge issues.

Tested-by: Sedji Gaouaou <sedji.gaouaou@atmel.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 11:25:23 +00:00
Mark Brown
40135ea071 ASoC: Check machine type before loading on AT91SAM9G20-EK
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 11:25:22 +00:00
Mark Brown
d694354115 ASoC: Improve diagnostics for AT91SAM9G20-EK probe
We should display an error by default if we fail to register.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-18 11:25:21 +00:00
Roel Kluin
c16159123d sound: OSS: missing parentheses in pas2_card.c
Add missing parentheses in pas2_card.c.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-18 11:37:51 +01:00
Mark Brown
22d22ee514 ASoC: Clean up WM8731 bias level configuration
The WM8731 bias level configuration function was written slightly
obscurely - streamline the code a little and refresh the comments.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-17 14:29:54 +00:00
Mark Brown
7b317b692a ASoC: Remove version display from the WM8731 driver
It makes boot a bit more noisy and I never remember to update it.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-17 14:29:54 +00:00
Paul Fertser
31b59cf9ce ASoC: Fix WM8753 DAIs unregistering
WM8753 uses a tricky way to switch DAIs "on the fly", for that it
registers 2 dummy DAIs and substitutes them depending on mixer control.

List element of registered dummy DAIs should be preserved to allow
unregistering of DAIs on module unload.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-17 14:29:54 +00:00
Takashi Iwai
cda9043d56 ALSA: cs4236 - Merge snd-cs4236-lib module into snd-cs4236
Since cs4232 and cs4236 drivers are merged, there is no reason to keep
snd-cs4236-lib module separately.  Let's merge it into the main driver
as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-17 08:10:54 +01:00
Takashi Iwai
b22f5d94c4 sound: OSS: ad1848 - Fix another typo
Fix another typo of || and &&.

Reported-by: Jörg-Volker Peetz <jvpeetz@web.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-17 08:02:16 +01:00
Takashi Iwai
8380740079 ALSA: au88x0 - Fix &&|| typo
Fixed a typo of || and &&.
As it's in a disabled code section, there is no behavior change, though.

Reported-by: Jörg-Volker Peetz <jvpeetz@web.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-17 08:00:44 +01:00
Krzysztof Helt
c2b73d1458 ALSA: cs4236: cs4232 and cs4236 driver merge to solve PnP BIOS detection
cs4232 and cs4236 driver merge to solve PnP BIOS detection.

Also, the patch adds recognition if the chip is cs4236b+
or earlier part. This unifies drivers for both cs4232
and cs4236+ chips. It allows to use the PnP BIOS
detection for the cs4236+ chips. Previously, only
the snd-cs4232 could be detected by the PnP BIOS.

The cs4232+ cards reports two separate PnP BIOS ids.

The patch adds search for the second id to find out
resources assigned to a control port.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 23:05:25 +01:00
Takashi Iwai
96cf45cf55 Merge branch 'topic/snd_card_new-err' into topic/cs423x-merge 2009-02-16 23:03:57 +01:00
Joris van Rantwijk
3b03cc5b86 ALSA: usb-audio - Workaround for misdetected sample rate with CM6207
The CM6207 incorrectly advertises its 96 kHz playback setting as 48 kHz
in its USB device descriptor. This patch extends an existing workaround
in usbaudio.c to also cover the CM6207.

This resolves issue 0004249 in the ALSA bug tracker.

Signed-off-by: Joris van Rantwijk <jorispubl@xs4all.nl>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 22:58:23 +01:00
Takashi Iwai
0412558c87 ALSA: usb-audio - Fix non-continuous rate detection
The detection of non-continuous rates (given via rate tables) isn't
processed properly (e.g. for type II).

This patch fixes and simplifies the detection code.

Tested-by: Joris van Rantwijk <jorispubl@xs4all.nl>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 22:48:12 +01:00
Clemens Ladisch
e156ac4c57 sound: usb-audio: fix uninitialized variable with M-Audio MIDI interfaces
Fix the snd_usbmidi_create_endpoints_midiman() function, which forgot to
set the out_interval member of the endpoint info structure for Midiman/
M-Audio devices.  Since kernel 2.6.24, any non-zero value makes the
driver use interrupt transfers instead of bulk transfers.  With EHCI
controllers, these random interval values result in unbearably large
latencies for output MIDI transfers.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Reported-by: David <devurandom@foobox.com>
Tested-by: David <devurandom@foobox.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 15:31:48 +01:00
Takashi Iwai
c23127566c ALSA: hda - Clean up quirks for HP laptops with AD1984A
Clean up quirks for HP laptops with AD1984A using SND_PCI_QUIRK_MASK()

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 15:20:41 +01:00
Takashi Iwai
2ae466f8cc ALSA: hda - Cleanup IDT92HD7x HP quirks
Clean up IDT92HD7x quirks for HP laptops with SND_PCI_QUIRK_MASK().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 14:16:36 +01:00
Roel Kluin
a259cb8eb7 sound: OSS: &&/|| typo in ad1848.c
&&/|| typo

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 10:25:11 +01:00
Takashi Iwai
e23573d7e3 Merge branch 'fix/hda' into topic/hda 2009-02-16 10:23:35 +01:00
Herton Ronaldo Krzesinski
e2ea57a8df ALSA: hda - Fix speaker output on HP DV4 1155-SE
Force speaker pin config with model=hp-dv5 model for cases when bios
doesn't set it up properly. All reported hp laptops using model=hp-dv5
model have speaker at pin 0x0d with same config, so it's safe to add
this within hp-dv5 model.

Reference: alsa-devel mailing list thread on
    http://mailman.alsa-project.org/pipermail/alsa-devel/2009-February/014390.html

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 10:23:00 +01:00
Takashi Iwai
d14a7e0bfc Revert "Sound: hda - Restore PCI configuration space with interrupts off"
This reverts commit 32e176c14d.

That commit caused a regression with suspend on Thinkpad SL300.

Reference: kernel bug#12711
	http://bugzilla.kernel.org/show_bug.cgi?id=12711

Tested-by:  Alexandre Rostovtsev <tetromino@gmail.com>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-16 10:16:27 +01:00
Ingo Molnar
b69bc39674 Merge commit 'v2.6.29-rc5' into x86/apic 2009-02-15 09:00:18 +01:00
Kevin Hilman
bf3dbe5c8c ASoC: Fix DaVinci module unload error
Fix for the error when the audio module is unloaded.  On unregistering
the platform_device, platform_device_release will free the platform
data.If platform data is static the kernel panics when it is freed.
Instead use the platform device helper function to add data.

This change has been tested on DM644x EVM, DM644x SFFSDR and DM355 EVM.

Signed-off-by: Chaithrika U S <chaithrika@ti.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-13 20:21:30 +00:00
Linus Torvalds
b51ebdc40c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
  ASoC: Only register AC97 bus if it's not done already
  ALSA: hda - Add snd_hda_multi_out_dig_cleanup()
  ALSA: hda - Add missing terminator in slave dig-out array
  ALSA: hda - Change HP dv7 (103c:30f4) quirk from hp-m4 to hp-dv5 model
  ALSA: hda - Register (new) devices at reconfig
  ALSA: mtpav - Fix initial value for input hwport
  ALSA: hda - add id for Intel IbexPeak integrated HDMI codec
  ALSA: hda - compute checksum in HDMI audio infoframe
  ALSA: hda - enable HDMI audio pin out at module loading time
  ALSA: hda - allow multi-channel HDMI audio playback when ELD is not present
  ASoC: Update SDP3430 machine driver for snd_soc_card
  ALSA: hda - Add quirk for Asus z37e (1043:8284)
  sound: Remove OSSlib stuff from linux/soundcard.h
  ASoC: WM8990: Fix kcontrol's private value use in put callback
  ASoC: TLV320AIC3X: Fix kcontrol's private value use in put callback
2009-02-13 08:19:11 -08:00
Takashi Iwai
f1464ede55 Merge branch 'for-2.6.30' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc 2009-02-13 15:10:35 +01:00
Takashi Iwai
99cbb86180 Merge branch 'fix/asoc' into for-linus 2009-02-13 15:06:04 +01:00
Takashi Iwai
7c56c29a3b Merge branch 'fix/hda' into for-linus 2009-02-13 15:05:59 +01:00
Mark Brown
c85e5a4161 Merge branch 'for-2.6.29' into for-2.6.30 2009-02-13 14:02:08 +00:00
Mark Brown
14fa43f53f ASoC: Only register AC97 bus if it's not done already
ASoC supports both explicit codec drivers for AC97 devices and a simple
driver which uses the standard ALSA AC97 framework for codec support.
When used with the generic AC97 codec support that will provide the
ad hoc AC97 device for drivers like touchscreens to attach to so the
core shouldn't do so.

Reported-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-13 13:50:22 +00:00
Timur Tabi
d5e9ba1d58 ASoC: add additional controls to the CS4270 codec driver
Update the CS4270 codec driver to allow applications to use the mixer to
control Digital Loopback, Soft Ramp, Zero Cross, Popguard, and Auto-Mute.
Soft Ramp, Zero Cross, and Auto-Mute are disabled by the driver when it first
initializes the hardware, but these features either don't work or interfere
with normal ALSA behavior.  However, they can now be re-enabled by an
application if desired.

Remove CONFIG_SND_SOC_CS4270_HWMUTE and always allow ASoC to control the mute
bits.  The driver previously and erroneously assumed that these bits
control only external muting circuitry, but they also control internal
muting circuitry, so they should always be used.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-13 13:32:51 +00:00
Takashi Iwai
6a05ac4afa ALSA: hda - Support multiple digital outs with auto-probing
Added the support of multiple digital outputs via auto-probing for
Realtek ALC88x codecs.  The multiple outputs are handled as slave
streams, so only one PCM stream (and the corresponding IEC958*
elements) is provided to control both digital outputs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 11:59:33 +01:00
Takashi Iwai
9b5f12e5a4 ALSA: hda - Add proper cleanup for multiout-dig for ALC codecs
The recent patch_realtek.c contains the slave digital-out support
as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 11:59:31 +01:00
Takashi Iwai
c8a1a8985d Merge branch 'fix/hda' into topic/hda 2009-02-13 11:59:26 +01:00
Takashi Iwai
9411e21cd0 ALSA: hda - Add snd_hda_multi_out_dig_cleanup()
Added the helper function snd_hda_multi_out_dig_cleanup() to clean up
the digital outputs with multi setup.  This call is needed in cases
the codec supports multiple digital outputs as slaves.  Otherwise the
slave widgets aren't properly cleaned up.

For a single digital output (e.g. in patch_conexant.c), this call isn't
needed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 11:59:13 +01:00
Takashi Iwai
3a08e30de2 ALSA: hda - Add missing terminator in slave dig-out array
Added the missing terminator for ad1989b_slave_dig_outs[].

Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 11:53:27 +01:00
Ingo Molnar
f8a6b2b9ce Merge branch 'linus' into x86/apic
Conflicts:
	arch/x86/kernel/acpi/boot.c
	arch/x86/mm/fault.c
2009-02-13 09:44:22 +01:00
Takashi Iwai
946835074e ALSA: hda - Add quirk for Acer AX1700-U3700A
Force model=auto for Acer AX1700-U3700A with ALC888 codec.
Since Acer devices are handlded as model=acer as default, the auto
parsing has to be specified explicitly.
(Maybe it's better rather to remove this default model=acer handling,
 though.)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 09:31:20 +01:00
Takashi Iwai
344384494e Merge branch 'fix/hda' into topic/hda 2009-02-13 08:41:44 +01:00
Herton Ronaldo Krzesinski
92258a3ed2 ALSA: hda - Change HP dv7 (103c:30f4) quirk from hp-m4 to hp-dv5 model
Change HP dv7 quirk: although reported to work with hp-m4 model
(https://bugzilla.novell.com/show_bug.cgi?id=445321), the original
report doesn't contain info about testing of internal microphone.

Recently I received a report about internal mic not working
(https://qa.mandriva.com/show_bug.cgi?id=44855#c193), this must be
related with the forced line in on pin 0x0e done with hp-m4 model. Thus
change the current quirk from STAC_HP_M4 to STAC_HP_DV5, later reported
to be fixed on a provided kernel with this change
(https://qa.mandriva.com/show_bug.cgi?id=44855#c196).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 08:41:00 +01:00
Aristeu Sergio Rozanski Filho
27e089888f ALSA: hda: add quirk for Lenovo X200 laptop dock
Currently the HP connector on X200 dock doesn't detect when a HP is connected
nor allows sound to be played using it. This patch fixes the problem by adding
a quirk for this specific model. It's possible that others have the same NID
(0x19) to report when dock HP is connected, but I don't have access to any.
Please Cc me in the reply since I'm not subscribed to alsa-devel@.

Signed-off-by: Aristeu Rozanski <aris@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 08:40:20 +01:00
Matthew Ranostay
8bb0ac5573 ALSA: hda: Add STAC_DELL_S14 quirk
Add STAC_DELL_S14 quirk for new laptop series. Removed un-needed pins
in pin_nids for stac92hd83xxx. Also reorganized connection selection
code for the respective ports per quirk define.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 08:35:08 +01:00
Takashi Iwai
20db7cb0ac ALSA: hda - Add forced codec-slots for ASUS W5F
ASUS W5F needs the fixed codec-slots to probe to override the BIOS
problem.

Tested-by: Giovanni Moser Frainer <giovanni@redix.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 08:19:30 +01:00
Takashi Iwai
f1eaaeec11 ALSA: hda - Allow fixed codec-probe mask
Some devices have broken BIOS and they don't set the codec probe-bit
properly after cleared by the driver.  This makes the driver skipping
the necessary codec slots.

Since BIOS update isn't always easy, now the semantics of probe_mask
option is changed a bit.  When it contains the bit 8 (0x100), the
lower bits are used to probe that slots regardless of codec-probe bits
returned by the hardware.

For example, probe_mask=0x103 will force to probe the codec slot #0
and #1.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-13 08:16:55 +01:00
Harvey Harrison
e930e99500 ALSA: echoaudio - replace uses of __constant_{endian}
The base versions handle constant folding now.

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-12 00:24:11 +01:00
Herton Ronaldo Krzesinski
c98041f7d7 ALSA: hda - Cleanup setting of pin_configs in patch_stac927x
After commit "ALSA: hda - Fix restore of pin configs at resume for
STAC/IDT codecs", the introduced stac_save_pin_cfgs function checks
already for pins == NULL case, saving then default pin configs from
machine with stac92xx_save_bios_config_regs. So we can remove the
extra checks when stac927x_brd_tbl[spec->board_config] == NULL.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-12 00:17:31 +01:00
Takashi Iwai
a1152e3570 Merge branch 'fix/hda' into topic/hda 2009-02-12 00:14:34 +01:00
Takashi Iwai
26a74f1f61 ALSA: hda - Register (new) devices at reconfig
The devices that have been newly added during reconfig must be
registered.  Otherwise they won't be visible to user-space.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-12 00:13:19 +01:00
Takashi Iwai
32cf9a16f4 ALSA: mtpav - Fix initial value for input hwport
Fix the initial value for input hwport.  The old value (-1) may cause
Oops when an realtime MIDI byte is received before the input port is
explicitly given.
Instead, now it's set to the broadcasting as default.

Tested-by: Holger Dehnhardt <dehnhardt@ahdehnhardt.de>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-12 00:06:42 +01:00
Takashi Iwai
0852d7a654 ALSA: hda - Detect multiple digital-out pins
Detect multiple digital-out pins in snd_hda_parse_pin_defconfig().
The dig_out_pin and dig_out_type fields become arrays.

The codec parser still doesn't use this multiple pins detection, though.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-12 00:04:19 +01:00
Roel Kluin
1afa6e2e1d sound: OSS: dmabuf: too many loops
loop adev->dmap_out->nbufs times

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-11 14:12:04 +01:00
Takashi Iwai
32d2c7fa13 ALSA: hda - Fix a wrong pin check in snd_hda_parse_pin_def_config()
Fixed a wrong pin check (a typo) for debug print of digital input pin.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-11 11:33:13 +01:00
Takashi Iwai
df22313637 Merge branch 'fix/hda' into topic/hda 2009-02-11 09:09:29 +01:00
Wu Fengguang
a57c0eb655 ALSA: hda - add id for Intel IbexPeak integrated HDMI codec
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-11 09:09:15 +01:00
Wu Fengguang
9a957a24e3 ALSA: hda - compute checksum in HDMI audio infoframe
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-11 09:09:07 +01:00
Wu Fengguang
606c0cee69 ALSA: hda - enable HDMI audio pin out at module loading time
We found that enabling/disabling HDMI audio pin out at stream start/stop
time will kill the leading 500ms or so sound samples. Avoid this by enabling
pin out once and for ever at module loading time.

The leading ~500ms audio samples will still be lost when switching from
X-channel playback to Y-channel playback where X != Y. However there's no
much we can do about it: the audio infoframe has to change and it looks like
either G45 or YAMAHA requires some time to switch the configuration.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-11 09:08:59 +01:00
Wu Fengguang
a1667e4eea ALSA: hda - allow multi-channel HDMI audio playback when ELD is not present
The YAMAHA AV-X1800 requires audio infoframe to include speaker-channel
mapping to play >2 channel HDMI audio. In theory that mapping should be
derived from its speaker configurations contained in its ELD. However we
currently cannot get ELD in console before the KMS functionalities are ready.
This is a more or less general issue at least in the near future. As a
workaround, we propose to allow playback of mult-channel audio when ELD
is not available.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-11 09:08:47 +01:00
Takashi Iwai
9e30d7718b ASoC: Fix forgotten replacements of socdev->codec
The snd_soc_codec was moved into socdev->card, but this change wasn't
applied in some places.  Fixed now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-11 08:28:04 +01:00
Mark Brown
9e32ebdb3a Merge branch 'for-2.6.29' into for-2.6.30 2009-02-10 21:37:01 +00:00
Lopez Cruz, Misael
272edb0049 ASoC: Update SDP3430 machine driver for snd_soc_card
This patch replaces "snd_soc_machine" structure by "snd_soc_card" in
SP3430 driver. This change is needed in SDP3430 driver to reflect
changes introduced by "ASoC: Rename snd_soc_card to snd_soc_machine" patch
(875065491f).

Signed-off-by: Misael Lopez Cruz <x0052729@ti.com>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-10 21:36:27 +00:00
Takashi Iwai
501ca25629 Merge branch 'fix/hda' into topic/hda 2009-02-10 17:17:17 +01:00
Mackenzie Morgan
44a678d04b ALSA: hda - Add quirk for Asus z37e (1043:8284)
Added a quirk for Asus Z37E for fixing suspend/hibernation problem.

Reference:
	https://bugs.edge.launchpad.net/ubuntu/+source/linux/+bug/25896
	http://launchpadlibrarian.net/17053575/0001-Add-quirk-for-ASUS-Z37E-to-make-sound-audible-afte.patch
	https://bugtrack.alsa-project.org/alsa-bug/bug_view_page.php?bug_id=4282

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-10 17:13:43 +01:00
Takashi Iwai
22971e3a77 ALSA: hda - add digital beep support for ALC268
Added the digital beep support for ALC268.  It was missing in the
last patches.

However, ALC268 has a strange pin use for widget 0x1d, which could be
used as another purpose.  So, the patch adds a check of the beep control
before creating the hook for input layer.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-10 11:56:44 +01:00
Roel Kluin
f6f35bbe7c [ARM] AACI: timeout will reach -1
With a postfix decrement the timeout will reach -1 rather than 0,
so the warning will not be issued.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-02-10 09:59:20 +00:00
Jarkko Nikula
7565fc38cc ASoC: TLV320AIC3X: Add TLV information for volume controls
TLV320AIC3X volume controls are logarithmic. Export their dB ranges.

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-09 18:27:59 +00:00
Jarkko Nikula
b93f74f604 ASoC: TLV320AIC3X: Fix volume ranges
This is a minor fix but helps to define dB ranges for volume controls.

Only DAC digital volume has full register value range from 0 to 127 but
ADC PGA gain and output stage volume controls don't.

For ADC PGA, maximum value is 119 and then it saturates to the same
gain value of 59.5 dB. For output stages, value 117 corresponds to -78.3 dB
and is muted for values 118 and above.

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-09 18:27:59 +00:00
Takashi Iwai
a85165c66c ALSA: via82xx - Clean up quirk list
Use SND_PCI_QUIRK_VENDOR() macro.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-09 17:20:19 +01:00
Takashi Iwai
d9f8e9c341 Merge branch 'topic/quirk-cleanup' into topic/misc 2009-02-09 17:20:13 +01:00
Takashi Iwai
dea0a5095b ALSA: hda - Clean up quirk lists
Clean up quirk lists with bit masks.
Also, sorted in numerical order for alc662_cfg_tbl[].

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-09 17:19:32 +01:00
Takashi Iwai
2a074f4a54 Merge branch 'topic/quirk-cleanup' into topic/hda 2009-02-09 17:19:21 +01:00
Takashi Iwai
8bd4bb7a35 ALSA: Add subdevice_mask field to quirk entries
Introduced a new field, subdevice_mask, which specifies the bitmask
to match with the given subdevice ID.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-09 17:19:11 +01:00
Herton Ronaldo Krzesinski
23c7b521c2 ALSA: hda - Don't touch non-existent port f on 4-port 92hd71bxx codecs
When checking for input amps on pins 0x0a, 0x0d and 0x0f, and
initializing them for 92hd71xxx codec models, we must skip nid 0x0f
for 4-port models too like with 5-port models, as it is unused
(nid 0x0f is vendor reserved in 4-port models).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-09 08:25:23 +01:00
Herton Ronaldo Krzesinski
8663ae55f3 ALSA: hda - Bind new ecs mobo id (1019:2950) to model=ecs202
This adds a new sound quirk entry (model=ecs202) for an ecs motherboard
with IDT STAC9221 codec (1019:2950).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-09 08:25:08 +01:00
Philipp Zabel
44dd2b9168 ASoC: pxa2xx-i2s: remove I2S pin setup
This removes the calls to pxa_gpio_mode from the pxa2xx-i2s driver.
Pin setup should be done during board init via pxa2xx_mfp_config
instead.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Acked-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-08 20:40:26 +00:00
Roel Kluin
67137a5d46 ASoC: count reaches 10001, not 10000.
With a postfix increment count reaches 10001, not 10000.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-08 20:40:24 +00:00
Robert Jarzmik
8f0dc655f9 ASoC: Add initial support of Mitac mioa701 device SoC.
This machine driver enables sound functions on Mitac mio
a701 smartphone. Build upon ASoC v1, it handles :
 - rear speaker
 - front speaker
 - microphone
 - GSM

A global "Mio Mode" switch is not yet provided to cope with
audio path setup. As balance on audio chip line is no more
assured, an incorrect setup can produce a lot of heat and
even fry the battery behind the wm9713 and the speaker
amplifier.

It doesn't cope with :
 - headset jack
 - mio master mode
 - master volume control

This driver is backported from ASoc v2, and amputated from
scenario setups and master volume control.

[Minor mods for terminology in comments -- broonie]

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-08 20:39:46 +00:00
Takashi Iwai
cfb9fb5517 ALSA: hda - Fix unused variable compile warning
sound/pci/hda/patch_realtek.c:12693: warning: unused variable ‘i’

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 17:34:03 +01:00
Takashi Iwai
c5a4bcd0ca ALSA: hda - Use digital beep for AD codecs
Use digital beep instead of analog pc-beep for AD codecs.
Create the beep mixer controls dynamically on demand.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 17:22:05 +01:00
Takashi Iwai
a4ddeba9c8 ALSA: hda - Remove superfluous code in patch_realtek.c
codec->spec is reset in the caller side.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 17:21:09 +01:00
Takashi Iwai
c44765b8c8 ALSA: hda - Clear codec->beep at release
Clear codec->beep field in snd_hda_detach_beep_device() to be sure.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 16:48:10 +01:00
Takashi Iwai
c8dcdf829c ALSA: hda - Add missing NULL check in snd_hda_create_spdif_in_ctls()
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 16:21:20 +01:00
Takashi Iwai
d95ad4a9c0 Merge branch 'fix/hda' into topic/hda 2009-02-06 16:13:34 +01:00
Takashi Iwai
45bdd1c1bb ALSA: hda - Create beep mixer controls dynamically for Realtek codecs
Create beep mixer controls dynamically for Realtek codecs instead of
static arrays.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 16:13:29 +01:00
Mark Brown
e255265b47 Merge branch 'for-2.6.29' into for-2.6.30 2009-02-06 14:19:45 +00:00
Takashi Iwai
b0050cae2b Merge branch 'fix/usb-audio' into for-linus 2009-02-06 14:25:13 +01:00
Takashi Iwai
b2573eb586 Merge branch 'fix/hda' into for-linus 2009-02-06 14:25:04 +01:00
Timur Tabi
85ef2375ef ASoC: optimize init sequence of Freescale MPC8610 sound drivers
In the Freescale MPC8610 sound drivers, relocate all code from the _prepare
functions into the corresponding _hw_params functions.  These drivers assumed
that the sample size is known in the _prepare function and not in the
_hw_params function, but this is not true.

Move the code in fsl_dma_prepare() into fsl_dma_hw_param().  Create
fsl_ssi_hw_params() and move the code from fsl_ssi_prepare() into it.

Turn off snooping for DMA operations to/from I/O registers, since that's not
necessary.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-06 12:08:15 +00:00
Mike Frysinger
8836c273e4 ASoC: Blackfin: drop unnecessary dma casts
Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-06 12:07:39 +00:00
Mike Frysinger
92a950ff2b ASoC: Blackfin: cleanup sport handling in ASoC Blackfin AC97 code
- make sport number handling more dynamic as not all
  Blackfins have a linear sport map starting at 0
- indexes can be macroed away too

Signed-off-by: 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: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-06 12:07:29 +00:00
Takashi Iwai
4a5a4c56b4 ALSA: hda - Add missing COEF initialization for ALC887
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 12:46:59 +01:00
Takashi Iwai
c6e8f2daad ALSA: hda - Add missing initialization for ALC272
ALC272 needs EAPD for speaker outputs as well as other similar ALC
codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 12:45:52 +01:00
Jarkko Nikula
397d5aeeb5 ASoC: WM8990: Fix kcontrol's private value use in put callback
Function wm899x_outpga_put_volsw_vu misuses the kcontrol's private value
by still accessing it as bitfields even SOC_SINGLE_VALUE constructs it
as a pointer into struct soc_mixer_control after the commit
4eaa9819dc.

This is very similar fix than fix to TLV320AIC3X codec made by
Eero Nurkkala <ext-eero.nurkkala@nokia.com>. This fix is compile tested
only.

Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Cc: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-06 11:39:28 +00:00
Eero Nurkkala
4453dba54d ASoC: TLV320AIC3X: Fix kcontrol's private value use in put callback
Function snd_soc_dapm_put_volsw_aic3x misuses the kcontrol's private value
by still accessing it as bitfields even SOC_SINGLE_VALUE constructs it
as a pointer into struct soc_mixer_control after the commit
4eaa9819dc.

This was causing arbitrary register writes when touching the controls
defined with SOC_DAPM_SINGLE_AIC3X.

Signed-off-by: Eero Nurkkala <ext-eero.nurkkala@nokia.com>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-06 11:39:28 +00:00
Clemens Ladisch
894dcd7878 sound: usb-audio: handle wMaxPacketSize for FIXED_ENDPOINT devices
For audio devices that do not have proper audio descriptors (e.g.,
Edirol UA-20), we use hardcoded parameters from our quirks list.
However, we must still read the maximum packet size from the standard
endpoint descriptor; otherwise, we might use packets that are too big
and therefore rejected by the USB core.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 09:47:12 +01:00
Wu Fengguang
b25c9da198 ALSA: enable concurrent digital outputs for ALC1200
Add the SPDIF pin as slave digital out to enable concurrent
HDMI/SPDIF outputs for ASUS M3A-H/HDMI with ALC1200 codec.

Tested-by: Thomas Schneider <nailstudio@gmx.net>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-06 08:45:25 +01:00
Ingo Molnar
9d45cf9e36 Merge branch 'x86/urgent' into x86/apic
Conflicts:
	arch/x86/mach-default/setup.c

Semantic merge:
	arch/x86/kernel/irqinit_32.c

Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-02-05 22:30:01 +01:00
Takashi Iwai
dd542f169a ALSA: ca0106 - Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:15:39 +01:00
Takashi Iwai
2ebfb8eeb8 ALSA: Add missing KERN_* prefix to printk in other sound/*
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:11:58 +01:00
Takashi Iwai
ee419653a3 ALSA: Fix missing KERN_* prefix to printk in sound/pci
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:11:31 +01:00
Takashi Iwai
14ab086109 ALSA: intel8x0 - Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:09:57 +01:00
Takashi Iwai
28a97c194c ALSA: emu10k1 - Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:08:14 +01:00
Takashi Iwai
e2ea7cfc70 ALSA: Add missing KERN_* prefix to printk in sound/pci/ice1712
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:07:02 +01:00
Takashi Iwai
42b0158bdb ALSA: emux - Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:01:46 +01:00
Takashi Iwai
45203832df ALSA: Add missing KERN_* prefix to printk in sound/drivers
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:00:56 +01:00
Takashi Iwai
006de26735 ALSA: Add missing KERN_* prefix to printk in sound/core
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 16:00:49 +01:00
Takashi Iwai
939778aedd ALSA: hda - Add missing KERN_* prefix to printk
... and disable the annoying debug message.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:58:32 +01:00
Takashi Iwai
54530bded6 ALSA: usb - Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:55:18 +01:00
Takashi Iwai
4c9f1d3ed7 ALSA: isa/*: Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:48:34 +01:00
Takashi Iwai
91f050604c ALSA: gus - Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:46:48 +01:00
Takashi Iwai
76d498e43f ALSA: wss - Add missing KERN_* prefix to printk
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:45:05 +01:00
Hans-Christian Egtvedt
6c7578bb0a ALSA: Add Atmel ALSA drivers directory
Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:08:53 +01:00
Hans-Christian Egtvedt
4ede028f87 ALSA: Add ALSA driver for Atmel AC97 controller
This patch adds ALSA support for the AC97 controller found on Atmel
AVR32 devices.

Tested on ATSTK1006 + ATSTK1000 with a development board with a AC97
codec.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:08:51 +01:00
Hans-Christian Egtvedt
e4967d6016 ALSA: Add ALSA driver for Atmel Audio Bitstream DAC
This patch adds ALSA support for the Audio Bistream DAC found on Atmel
AVR32 devices. The ABDAC is an Atmel IP which might show up on AT91
devices in the future, hence making a generic driver which can be
utilized by AT91 arch if needed.

Datasheet describing the ABDAC peripheral is available in the AT32AP7000
datasheet, http://www.atmel.com/dyn/products/datasheets.asp?family_id=682

Tested on ATSTK1006 + ATSTK1000 with a class D amplifier stage.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:08:48 +01:00
Takashi Iwai
6bd0dd5f0e Merge branch 'topic/snd_card_new-err' into topic/atmel 2009-02-05 15:08:33 +01:00
Tim Blechmann
e616165309 ALSA: snd_pcm_new api cleanup
Impact: cleanup

snd_pcm_new takes a char *id argument, although it is not modifying
the string. it can therefore be declared as const char *id.

Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:03:27 +01:00
Takashi Iwai
632da7321b ALSA: hda - Add quirk for another HP laptop
Add model=laptop entry for another HP laptop (103c:3077) with AD1984A.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 15:02:40 +01:00
Takashi Iwai
67f7857ab1 ALSA: hda - Add quirk for HP zenith laptop
Added model=laptop for another HP laptop (103c:3072) with AD1984A codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 12:14:52 +01:00
Mark Hills
238c0270ba ALSA: snd-usb-caiaq: Increase version number to 1.3.12
Indicates fixes affecting control messages and switching of input mode
on Audio 8 DJ and Audio 4 DJ.

Signed-off-by: Mark Hills <mark@pogo.org.uk>
Acked-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 09:34:13 +01:00
Mark Hills
a8564155a9 ALSA: snd-usb-caiaq: Remove duplicate A8DJ control
Remove a duplicate control which causes an error when it is registered,
and causes later controls to not be registered. The device does not have
a fourth ground lift control.

Signed-off-by: Mark Hills <mark@pogo.org.uk>
Acked-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 09:33:52 +01:00
Mark Hills
9a9527ed49 ALSA: snd-usb-caiaq: Do not expose hardware input mode 0 of A4DJ
In the context of the Audio 4 DJ (when compared to Audio 8 DJ), hardware
input mode 0 is not used. Expose modes 1 (line) and 2 (phono) to the user
as modes 0 and 1 respectively.

Signed-off-by: Mark Hills <mark@pogo.org.uk>
Acked-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 09:33:24 +01:00
Mark Hills
e3ca4c9982 ALSA: snd-usb-caiaq: Set default input mode of A4DJ
Do not start the device with input mode undefined. Mimic the behaviour of
the Audio 8 DJ and start in phono input mode.

Signed-off-by: Mark Hills <mark@pogo.org.uk>
Acked-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 09:32:39 +01:00
Mark Hills
705350f8bd ALSA: snd-usb-caiaq: Send the correct command when setting controls
Fixes a bug where an incorrect command was sent which had no effect on the
device.

Signed-off-by: Mark Hills <mark@pogo.org.uk>
Acked-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 09:31:53 +01:00
Takashi Iwai
28b7e343ee ALSA: Remove superfluous hwdep ops
Remove NOP hwdep ops in sound drivers.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 09:28:08 +01:00
Takashi Iwai
345d0b1964 ALSA: hwdep - Make open callback optional
Don't require the open callback as mandatory.
Now all hwdeps ops can be optional.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 09:10:20 +01:00
Matthew Ranostay
45c1d85bcc ALSA: hda: Added stac378x digital slave out struct
Added the ADATOut nid to a slave digital outs struct to allow output
via the DigOut pin.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 08:01:01 +01:00
Herton Ronaldo Krzesinski
29d4ab4d6e ALSA: hda - Don't call stac92xx_parse_auto_config with wrong dig_in
Don't use uneeded/wrong third parameter for stac92xx_parse_auto_config
in patch_stac92hd71bxx (no SPDIF in).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 07:56:35 +01:00
Herton Ronaldo Krzesinski
6df703aefc ALSA: hda - Dynamic detection of dmics/dmuxes/smuxes in stac92hd71bxx
Detect the number of connected ports and number of smuxes dynamically,
looking at pin configs, using new introduced functions
stac92hd71bxx_connected_ports and stac92hd71bxx_connected_smuxes. Also
use proper input mux configuration for 4port and 5port models.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 07:54:34 +01:00
Herton Ronaldo Krzesinski
616f89e74c ALSA: hda - Additional pin nids for STAC92HD71Bx and STAC92HD75Bx codecs
Current code for STAC92HD71Bx and STAC92HD75Bx doesn't consider pin
complexes 0x20 and 0x27. Also for 4 port models, nids 0x0e and 0x0f
are vendor reserved. This commit changes code so it'll consider the
additional pin complexes for models that have it, and avoid reserved
nids to be touched on 4 port models.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 07:54:32 +01:00
Takashi Iwai
306f47bd63 Merge branch 'fix/hda' into topic/hda 2009-02-05 07:42:28 +01:00
Takashi Iwai
e8c0ee5d77 ALSA: hda - Fix misc workqueue issues
Some fixes regarding snd-hda-intel workqueue:
- Use create_singlethread_workqueue() instead of create_workqueue()
  as per-CPU work isn't required.
- Allocate workq name string properly
- Renamed the workq name to "hd-audio*" to be more obvious.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-05 07:41:04 +01:00
Takashi Iwai
8f95c102c5 Merge branch 'fix/hda' into topic/hda 2009-02-04 23:32:03 +01:00
Takashi Iwai
f67d8176ba ALSA: hda - Add quirk for FSC Amilo Xi2550
Added model=fujisu-pi2515 for FSC Amilo Xi2550 with ALC883 codec.

Refernece: Novell bnc#450979
	https://bugzilla.novell.com/show_bug.cgi?id=450979

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-04 23:31:50 +01:00
Takashi Iwai
5e7476243a ALSA: msnd - Fix build error with CONFIG_PNP=n
sound/isa/msnd/msnd_pinnacle.c:891: error: 'isapnp' undeclared (first use in this function)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-04 18:28:42 +01:00
Takashi Iwai
7df0eb424d Merge branch 'fix/asoc' into for-linus 2009-02-04 18:19:11 +01:00
Takashi Iwai
af7af69039 Merge branch 'fix/hda' into for-linus 2009-02-04 18:19:07 +01:00
Roel Kluin
7924f0cadc ALSA: pcm_oss: AFMT_S24_LE is set twice in return value
AFMT_S24_LE is set twice in return value

vi sound/core/oss/pcm_oss.c +640
#define AFMT_S24_LE      0x00008000
#define AFMT_S24_BE      0x00010000

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-04 18:18:03 +01:00
Krzysztof Helt
453e37b375 ALSA: sscape: drop redundant fields from soundscape struct
The wss_base is disuised parameter for one function.
It is converted to function parameter.

The code_type is only set but never read.
It is removed.

The midi_vol is set only to 0 so it does not work
as detection of change in midi volume. It is fixed.

The xport variable is alias to the port[dev]. Use
the port[dev] directly to increase readability.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-04 17:55:36 +01:00
Kusanagi Kouichi
680cd53652 ALSA: hda: Add digital beep generator support for Realtek codecs.
A digital beep generator can be used via input layer.

Signed-off-by: Kusanagi Kouichi <slash@ma.neweb.ne.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-04 16:17:42 +01:00
Philipp Zabel
0664678a84 ASoC: pxa-ssp: fix SSP port request
PXA2xx/3xx SSP ports start from 1, not 0. Thus, the probe function
requested the wrong SSP port. Correcting this unveiled another bug
where ssp_init tries to request the already-requested SSP port again.
So this patch replaces the ssp_init/exit calls with their internals
from mach-pxa/ssp.c, leaving out the redundant ssp_request and the
unneeded IRQ request. Effectively, that leaves us with not much more
than enabling/disabling the SSP clock.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-04 13:17:22 +00:00
Philipp Zabel
5b2474425e ASoC: uda1380: split set_dai_fmt into _both, _playback and _capture variants
This patch splits set_dai_fmt into three variants (single interface,
dual interface playback only, dual interface capture only) so that
data input and output formats can be configured separately for dual
interface setups.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Tested-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-04 13:15:15 +00:00
Vasily Khoruzhick
111f6fbeb7 ASoC: Don't unconditionally use the PLL in UDA1380
Without this fix driver switches to WSPLL in uda1380_pcm_prepare
even if SYSCLK was chosen (uda1380_pcm_prepare modifies UDA1380_CLK
register to disable R00_DAC_CLK before flushing reg cache)

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-03 17:12:16 +00:00
Tony Vroon
ba340e825f ALSA: hda - Add tyan model for Realtek ALC262
The Realtek ALC262 on the Tyan Thunder n6650W (S2915-E) mainboard has a
rather odd configuration template. As a result, the white AUX connector
can not be used. This rewrites the default config to more accurately
reflect the connector layout, colour and function.
Unfortunately the black CD_IN connector, which is suspected to be widget
0x1c refuses to switch into input (0x20), instead opting to remain on 0x0.
As such, no mixer controls are exposed for it. Autoswitching is implemented
between the front headphone output and back line output.

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-03 12:00:17 +01:00
Takashi Iwai
395707212a Merge branch 'fix/asoc' into topic/asoc 2009-02-03 07:07:15 +01:00
Liam Girdwood
64ca0404ee ALSA: ASoC: email - update email addresses.
This just updates my email address on some drivers I'd forgotten in a
previous patch.

Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-03 07:05:23 +01:00
Timur Tabi
a6c255e094 ASoC: fix message display in CS4270 codec driver
Replace printk calls with dev_xxx calls.  Set the 'dev' field of the codec
and codec_dai structures so that these calls work.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-02 21:34:06 +00:00
Timur Tabi
d9fb7fbddc ASoC: fix build break in CS4270 codec driver
Fix a oversight in the CS4270 codec driver that caused a build break.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-02 21:34:05 +00:00
Takashi Iwai
e683ec4697 ALSA: ice1724 - Dynamic MIDI TX irq control
MIDI_TX IRQ seems always pending when any bytes on FIFO is available.
Thus, it's better to enable MPU_TX only when any bytres are really
stored in the substream, and disables immediately when the queue
becomes empty.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-02 17:22:31 +01:00
Mark Brown
e50a7ea0eb Merge branch 'for-2.6.29' into for-2.6.30 2009-02-02 12:46:51 +00:00
Eero Nurkkala
21dff43456 OMAP: ASoC: Fix spinlock misuse in omap-pcm.c
omap_pcm_trigger is called also in interrupt context so CPU flags must
be restored when returning.

Signed-off-by: Eero Nurkkala <ext-eero.nurkkala@nokia.com>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-02-02 12:41:25 +00:00
Takashi Iwai
51408e8a32 Merge branch 'fix/hda' into topic/hda 2009-02-02 11:43:36 +01:00
Takashi Iwai
516a1ced45 ALSA: hda - No widget selection for volume knob widgets in proc output
Volume-knob widgets have no widget selection although they have widget
connections.  Thus, the connection list in the proc output shouldn't
contain the selection (*).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-02 11:42:08 +01:00
Krzysztof Helt
5aa13a9409 ALSA: msnd: add module description and license for the snd-msnd-lib
The missing module license generates warning
during module loading.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-02 08:24:36 +01:00
Tim Blechmann
d563ffa6b3 ALSA: pcxhr: fix trivial typo
Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-31 18:01:13 +01:00
Mark Eggleston
3077e44c48 ALSA: hda - Add support of iMac 24 Aluminium
Added the support for 24" Aluminium iMac (106b:3e00)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-31 17:57:54 +01:00
Roel Kluin
67d8a3c122 ALSA: alsa: time reaches -1, tested 0
With a postfix decrement time will reach -1 rather than 0,
so the warning will not be issued.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-31 17:56:48 +01:00
Grazvydas Ignotas
8f00806294 ASoC: Update OMAP3 pandora board file
Update pandora board file for recent TWL4030 codec changes.
Also move output related snd_soc_dapm_nc_pin() calls to
omap3pandora_out_init(), where they belong.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-31 14:59:19 +00:00
Timur Tabi
ff7bf02f63 ASoC: fix documentation in CS4270 codec driver
Spruce up the documentation in the CS4270 codec.  Use kerneldoc where
appropriate.  Fix incorrect comments.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-31 14:59:08 +00:00
Krzysztof Helt
880abd42d0 ALSA: ess1688: fix OPL3 port setting
The ess1688 driver uses the same port
for PCM audio (SB compatible) and OPL3
synthesis. It is not always right so allow to
choose a different port for OPL3 synthesis.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-30 19:55:37 +01:00
Takashi Iwai
42de55cb3b ALSA: hda - Add quirk for another HP dv5 model
Added model=hp-dv5 for another HP dv5 model with AMD chip (103c:3600)

Reference: kernel bug#12440
	http://bugzilla.kernel.org/show_bug.cgi?id=12440

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-30 15:49:58 +01:00
Timur Tabi
04eb093c7c ASoC: fix initialization order of the CS4270 codec driver
ASoC codec drivers typically serve two masters: the I2C bus and ASoC itself.
When a codec driver registers with ASoC, a probe function is called.  Most
codec drivers call ASoC first, and then register with the I2C bus in the ASoC
probe function.

However, in order to support multiple codecs on one board, it's easier if the
codec driver is probed via the I2C bus first.  This is because the call to
i2c_add_driver() can result in the I2C probe function being called multiple
times - once for each codec.  In the current design, the driver registers
once with ASoC, and in the ASoC probe function, it calls i2c_add_driver().
The results in the I2C probe function being called multiple times before the
driver can register with ASoC again.

The new design has the driver call i2c_add_driver() first.  In the I2C probe
function, the driver registers with ASoC.  This allows the ASoC probe function
to be called once per I2C device.

Also add code to check if the I2C probe function is called more than once,
since that is not supported with the current ASoC design.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-30 11:58:50 +00:00
Yinghai Lu
4272ebfbef x86: allow more than 8 cpus to be used on 32-bit
X86_PC is the only remaining 'sub' architecture, so we dont need
it anymore.

This also cleans up a few spurious references to X86_PC in the
driver space - those certainly should be X86.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-30 00:20:22 +01:00
Herton Ronaldo Krzesinski
b98b7b347e ALSA: hda - make alc882_auto_init_input_src aware of selectors
In the case of having a selector instead of mixer while initing input
sources, the case that happens with ALC889, we must select instead
of muting input. Problem was found while testing with hda-emu.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-29 16:33:02 +01:00
Peter Ujfalusi
7393958f63 ASoC: TWL4030: Add analog loopback support
This patch adds the analog loopback/bypass support for twl4030 codec.

Details for the implementation:
It seams that the analog loopback needs the DAC powered on on the channel,
where the loopback is selected. The switch for the DACs has been moved from
the DAPM_DAC to the "Analog XX Playback Mixer". In this way the DAC will be
powered while the audio playback is used or/and the loopback is enabled for
the channel.

The twl4030 codec powering has been reworked. Now the codec will be powered as
long as it does not receives the SND_SOC_BIAS_OFF event. The exceptions are
when the given change in the registers needs the codec power down/up cycle in
order to take effect. Otherwise the codec is on.

When the codec enters to STANDBY state and none of the loopback paths are
enabled, than the amplifiers, which are no in the DAPM path are forced to turn
off and the PLL is disabled. When playback/capture starts the disabled gains
are restored and the PLL is enabled.

When one of the loopback enabled in STANDBY mode, the disabled gains are
restored and the PLL is enabled also.

In short: the codec always goes to the lowest power state based on the
bias_level and the bypass_state.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-29 13:58:04 +00:00
Mark Brown
0bf5460de9 Merge branch 'for-2.6.29' into for-2.6.30 2009-01-29 13:57:59 +00:00
Takashi Iwai
de2cf591bc Merge branch 'fix/hda' into for-linus 2009-01-29 14:47:56 +01:00
Takashi Iwai
c9de36f2a2 Merge branch 'fix/asoc' into for-linus 2009-01-29 14:47:53 +01:00
Misael Lopez Cruz
ef390c0b6e ASoC: OMAP: Initialize XCCR and RCCR registers in McBSP DAI driver
This patch explicitly initializes McBSP Transmit Configuration
Control Register (XCCR) and Receive Configuration Control
Register (RCCR) to their reset values. Reset values are 26 ns
of DX delay and Transmit DMA disabled for XCCR register;
receive full cycle mode enabled and Receive DMA disabled for
RCCR register.

This patch requires a counterpart in OMAP McBSP driver before
to apply it. The required changes in McBSP were sent and approved
in linux-omap mailing list and patch is going upstream
(commit 3127f8f859 from linux-omap-2.6
tree).

Signed-off-by: Misael Lopez Cruz <x0052729@ti.com>
[ jarkko.nikula@nokia.com: Commit id for counterpart patch corrected ]
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-29 13:17:45 +00:00
Mark Brown
9e70c1f099 ASoC: Fix null string usage with WM8753 DAIs
The WM8753 driver multiplexes the DAI structures it exposes to the
outside world, leaving them uninitialised until the codec probes.  Since
the DAI name is used during the registration and setup process provide a
dummy name.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-29 13:14:21 +00:00
Krzysztof Helt
c97dff84e0 ALSA: cmi8330: add MPU-401 support
Add MPU-401 port support for the chip.
Also, update some error messages and description.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-29 11:47:02 +01:00
Krzysztof Helt
0a898e6e50 ALSA: gus: update debug messages
Convert some of them to snd_printdd() and
update arguments to make them compilable.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-29 11:46:56 +01:00
Krzysztof Helt
56305757f0 ALSA: sscape: update Kconfig description about SoundScape cards
The SoundScape driver handles more cards then described.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-29 11:46:25 +01:00
Thadeu Lima de Souza Cascardo
b833b5ec04 ALSA: AC97: Fix function name type in comment s/updat/update/
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-29 08:38:56 +01:00
Thadeu Lima de Souza Cascardo
328cc6dfaa ALSA: AC97: Print AC97 flags in proc file to make debug it easier
While debugging some code paths in AC97 codec patches and its suspend
and resume functions, getting to know the flags has proved useful to
follow those code paths.

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-29 08:38:36 +01:00
Herton Ronaldo Krzesinski
61b9b9b109 ALSA: hda - Consider additional capture source/selector in ALC889
Currently code for capture source support in ALC889 only considers
capture mixers. This change adds additional support for ADC+selector
present in ALC889, taking into account also the presence of an
additional DMIC connection item in the selector.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-28 16:25:39 +01:00
Takashi Iwai
e167280070 ALSA: intel8x0 - Fix build with CONFIG_SND_AC97_POWERSAVE=n
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-28 16:05:16 +01:00
Thadeu Lima de Souza Cascardo
e3e9c5e709 ALSA: Don't cold reset AC97 codecs in some ICH chipsets
Check in a quirk list if it should do cold reset when AC97 power saving
is enabled. Some devices do not resume properly when cold reset,
although power saving works OK.

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-28 15:56:32 +01:00
Takashi Iwai
a5f7c47391 ALSA: enable build of snd-msnd-* drivers
Added the missing msnd directory to Makefile.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-28 09:02:52 +01:00
Luke Yelavich
2a88464ceb ALSA: hda - add another MacBook Pro 4, 1 subsystem ID
Add another MacBook Pro 4,1 SSID (106b:3800). It seems that latter revisions,
(at least mine), have different IDs to earlier revisions.

Signed-off-by: Luke Yelavich <themuso@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-28 08:10:22 +01:00
Takashi Iwai
67fcdead3c Merge branch 'topic/snd_card_new-err' into topic/asoc
Conflicts:
	sound/soc/soc-core.c
2009-01-28 08:08:32 +01:00
Krzysztof Helt
f6c6383502 ALSA: Turtle Beach Multisound Classic/Pinnacle driver
This is driver for Turtle Beach Multisound cards:
Classic, Fiji and Pinnacle.

Tested pcm playback and recording and MIDI playback
on Multisound Pinnacle.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-28 07:47:36 +01:00
Takashi Iwai
5801f99227 ALSA: hda - Fix compile warning with CONFIG_SND_JACK=n
sound/pci/hda/patch_conexant.c:352: warning: 'conexant_add_jack' defined but not used

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-27 12:54:10 +01:00
Peter Ujfalusi
006f367e38 ASoC: TWL4030: Move the twl4030_power_up and _power_down function
Move the twl4030_power_up and twl4030_power_down function
earlier to facilitate the analog bypass implementation.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27 10:43:02 +00:00
Peter Ujfalusi
fb2a2f8490 ASoC: TWL4030: Physical ADC and amplifier power switch change
Change the power switches for the physical ADC and for the
amplifiers for the analog capture path to map more closely
the actual path inside of the codec.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27 10:43:02 +00:00
Peter Ujfalusi
aad749e51a ASoC: TWL4030: Enable Headset Left anti-pop/bias ramp only if the Headset Left is in use
The Headset Left anti-pop and bias ramp does not need to be
enabled, if the headset is not in use.
Move the code to DAPM event handler for HeadsetL.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27 10:42:40 +00:00
Peter Ujfalusi
db04e2c58a ASoC: TWL4030: Code clean up for codec power up and down
Merge the codec up and down functions to a simple one.
Codec is powered down by default (reg_cache change).

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27 10:42:39 +00:00
Peter Ujfalusi
3fc93030e5 ASoC: TWL4030: Syncronize the reg_cache for ANAMICL after the offset cancelation
The offset cancelation bit in ANAMICL register is self cleanig.
Make sure that the reg_cache holds the same value as the HW
register.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27 10:42:39 +00:00
Andreas Bergmeier
b9d710b3c5 ALSA: usbaudio - use printf format instead of hardcoding it
Rather use printf format instead of hardcoding prefix like 0x.
A next step would be to predefine certain formats.

Signed-off-by: Andreas Bergmeier <lcid-fire@gmx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-27 11:40:13 +01:00
Mark Brown
6627a653bc ASoC: Push the codec runtime storage into the card structure
This is a further stage on the road to refactoring away the ASoC
platform device.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27 10:30:54 +00:00
Joerg Schirottke
aa9d823bb3 ALSA: hda - Add quirk for HP DV6700 laptop
Added the matching model=laptop for HP DV6700 laptop.

Signed-off-by: Joerg Schirottke <master@kanotix.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-27 11:01:34 +01:00
Clemens Ladisch
160389c8d2 sound: usb-audio: make URB sizes more equal
Distribute the packets evenly among the URBs, instead of making all URBs
except the last one to have the maximum size.  This makes the timing of
pointer updates more regular and removes some special cases from the
code.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-26 17:05:10 +01:00
Clemens Ladisch
4d788e040b sound: usb-audio: limit playback queue length
Once our URBs contain enough packets, queueing more URBs does not give
us any additional underrun protection (as we use double-buffering) but
just increases latency unnecessarily.  Therefore, we try to limit the
queue length to some reasonable value.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-26 17:05:07 +01:00
Clemens Ladisch
b7eb4a06e9 sound: usb-audio: use normal number of frames for no-data URBs
When sending a silence URB (before playback has started, or when it is
paused), use the number of frames that would be normally sent instead of
a single frame so that the rate at which completion interrupts arrive is
consistent.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-26 17:05:02 +01:00
Matthew Ranostay
ca8d33fc9f ALSA: hda: 92hd71xxx disable unmute support for codecs that don't have input amps
Some revisions of the 92hd71xxx codec families don't have input amps
on ports 0xa, 0xd and 0xf, so probe the widget caps on port 0xa and
check for support, if found run snd_hda_sequence_write_cache() on the
stac92hd71xxx_unmute_core_init verb list.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-26 16:50:26 +01:00
Timur Tabi
0db4d07052 ASoC: improve I2C initialization code in CS4270 driver
Further improvements in the I2C initialization sequence of the CS4270 driver.
All ASoC initialization is now done in the I2C probe function.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 23:00:39 +00:00
Mark Brown
070504ade7 ASoC: Fix L3 bus handling in Kconfig
It has no external dependencies but needs to be selected for L3 based
codecs to work.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 15:37:26 +00:00
Mark Brown
01e097d6c4 ASoC: Include header file in cs4270 and wm9705
Ensures that the DAI and socdev exported by the codec match up with
their exported prototype.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 15:07:45 +00:00
Mark Brown
ef963dcf68 ASoC: Fix spurious codec driver dependencies
Kbuild ignores dependency from things that are themselves selected so
ASoC machine drivers need to ensure that the control bus is being built.
This also avoids issues where multiple buses are supported by a given
codec.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 14:53:58 +00:00
Markus Bollinger
55aef45085 ALSA: pcxhr - add support for gpio ports and minor bug fix
- add support for gpio ports (2 GPI, 2 GPO) of pcxhr stereo cards
- minor bugfixes : allow setting clock to internal by the mixer
                   even if there is no stream (but monitoring)

Signed-off-by: Markus Bollinger <bollinger@digigram.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 14:45:41 +01:00
Takashi Iwai
70040c0740 ALSA: hda - Fix wrong initial verb for AD1984 thinkpad model
The docking mic-boost (0x25) has no mute bit.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 14:18:11 +01:00
Takashi Iwai
4cfb91c6d7 ALSA: hda - Fix invalid amp init for ALC268 codec
Fix some invalid AMP initializations for ALC268 codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 12:53:09 +01:00
Mark Brown
a435869cac ASoC: Configure SSP port PLL for Zylonite
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 11:49:45 +00:00
Mark Brown
f6fca2e93c ASoC: Remove unneeded e7x0 inclusion of pxa-regs.h and hardware.h
pxa-regs.h and hardware.h are not intended for use directly in driver
code and references to them have been removed in other code - remove
them from the newly added e740 and e750 machine drivers.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 11:40:26 +00:00
Takashi Iwai
60e388e89c ALSA: hda - Fix invalid verbs for mic-boosts on AD1884*
The mic-boosts (0x14 and 0x15) on AD1884* codecs are input-amps,
not output-amps.  Fix the invalid initialization verbs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 12:37:09 +01:00
Takashi Iwai
19a2d3e9b9 ALSA: hda - Remove invalid amp initializations for AD1988* codecs
The ADC widgets on AD1988* codecs have no amp controls.
Remove invalid initialization verbs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 12:35:25 +01:00
Takashi Iwai
6d6e17de4f ALSA: hda - Fix initial verbs for mic-boosts on AD1981HD
The mic boosts (NID 0x08 and 0x18) are input-amps, not output-amps.
Fix the initial verbs for them.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 12:33:54 +01:00
Mark Brown
c91cf25ebf ASoC: Fix merge with PXA tree
Fix a merge issue caused by context overlap.

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 11:23:32 +00:00
Timur Tabi
ff637d38ea ASoC: remove stand-alone mode support from CS4270 codec driver
The CS4270 supports stand-alone mode, where the codec is not connect to the
I2C or SPI buses.  Instead, input voltages configure the codec at power-on.
The CS4270 ASoC device driver has partial support for this mode, but the
code was never tested, and partial support doesn't help anyone.  It also made
the rest of the code more complicated than necessary.

[Removed redundant CS4270 dependency on I2C -- broonie]

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23 11:12:57 +00:00
Takashi Iwai
e3c7596466 ALSA: hda - Create "Input Source" control dynamically for STAC/IDT
Instead of fixed kcontrol_new element, build "Input Source" controls
dynamically.  If the number of input-source items is 0 or 1, we don't
need to create such a control.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 11:57:22 +01:00
Takashi Iwai
028b9445b4 Merge branch 'fix/hda' into topic/hda 2009-01-23 11:55:52 +01:00
Takashi Iwai
00a602db1c ALSA: hda - Fix PCM reference NID for STAC/IDT analog outputs
The reference NID for the analog outputs of STAC/IDT codecs is set
to a fixed number 0x02.  But this isn't always correct and in many
codecs it points to a non-existing NID.

This patch fixes the initialization of the PCM reference NID taken
from the actually probed DAC list.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 11:55:42 +01:00
Takashi Iwai
8056d47e77 ALSA: hda - Add model=ref for Intel board with STAC9221
An intel board (8086:0204) works only with model=ref.

Reference: Novell bug #406529
	https://bugzilla.novell.com/show_bug.cgi?id=406529

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 09:09:43 +01:00
Takashi Iwai
092ebf7a01 Merge branch 'fix/hda' into for-linus 2009-01-23 08:13:52 +01:00
Takashi Iwai
dd501d94b5 Merge branch 'fix/asoc' into for-linus 2009-01-23 08:13:49 +01:00
Matthew Ranostay
577aa2c195 ALSA: hda: add reference board SND_PCI_QUIRK
Add another LanParty reference board SND_PCI_QUIRK to quirk lists of
all codec families.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 08:11:43 +01:00
Takashi Iwai
7907f6a411 Merge branch 'fix/hda' into topic/hda 2009-01-23 08:07:51 +01:00
Matthew Ranostay
32ed3f4640 ALSA: hda: Add STAC92HD83XXX_PWR_REF quirk
Some revisions of the 92hd8xxx codec's not supporting port power
downs in which the using of it causes capture and also randomly
playback streams to not function at all. Thus by disabling it by
default and adding a option to enable it manually will fix all issue
on current and future revisions.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 08:06:57 +01:00
Matthew Ranostay
87e88a746d ALSA: hda: revert change to 92hd83xxx power mapping
Port 0xe power mapping was incorrect set to 0x80 changed to the correct
value 0x40.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-23 08:05:02 +01:00
Takashi Iwai
d9a4268ee9 ALSA: hda - Add quirk for Gateway %1616 laptop
Gateway T1616 laptop needs EAPD always on while the current STAC9205
code turns off per HP plug.  Added a new model "eapd" to keep it on.

Reference: Novell bnc#467597
	https://bugzilla.novell.com/show_bug.cgi?id=467597

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-22 17:41:14 +01:00
Takashi Iwai
eda6829394 Merge branch 'fix/hda' into topic/hda 2009-01-22 17:10:22 +01:00
Takashi Iwai
8ce8419829 ALSA: hda - Avoid to set the pin control again if already set
Check the present pin control bit and avoid the write if it's already
set in patch_sigmatel.c.  This will reduce the number of verb execs at
jack plugging.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-22 16:59:20 +01:00
Takashi Iwai
e0c0e943af ALSA: hda - Add model entry for HP dv4
Added model=hp-dv5 for HP dv4 (103c:30f7).

Reference: kernel bug #12440
	http://bugzilla.kernel.org/show_bug.cgi?id=12440

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-22 12:58:11 +01:00
Takashi Iwai
1eaf5c0716 Merge branch 'test/hda-vol-ofs' into next/hda 2009-01-22 08:33:04 +01:00
Krzysztof Helt
a17ac45a5d ALSA: ad1816a: enable hardware timer
Enable hardware timer with 10 usec resolution.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-21 15:12:40 +01:00
Krzysztof Helt
aa9c293ae4 ALSA: do not create OPL3 timers if there is no OPL3 irq wired
Most cards have OPL3 FM synthetiser but
they do not have OPL3 interrupt wired to
a sound chip or CPU.

Do not create OPL3 timers for such cards
as the timers are useless witthout interrupt.

This patch removes OPL3 timers for following
alsa drivers: snd-ad1816a, snd-opti93x,
snd-opti92x, snd-sc6000, snd-cmi8330.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-21 15:11:02 +01:00
Steve Sakoman
80c509fdd7 ASoC: Complete Beagleboard support
Commit dc06102a0c in the asoc tree
did not include the necessary Kconfig and Makefile changes.  This patch
completes the support for Beagleboard

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-21 13:43:52 +00:00
Krzysztof Helt
c9864fd30a ALSA: sscape: use common MPU401 macros
Remove local macros which redefines the
common ones.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-21 08:37:04 +01:00
Krzysztof Helt
48972cc510 ALSA: cmi8330: add OPL3 support
Add OPL3 handling to the driver
and volume control for FM synthesis.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-21 08:36:39 +01:00
Takashi Iwai
1e137f929b ALSA: hda - Clean up old VAIO hack codes for STAC9872
Get rid of old VAIO static hack codes for STAC9872 and use the BIOS
auto-parser for all models.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-21 07:42:02 +01:00
Takashi Iwai
d30e6caac2 Merge branch 'topic/hda' into next/hda 2009-01-21 07:34:08 +01:00
Matthew Ranostay
65557f3507 ALSA: hda: 83xxx port 0xe DAC selection
On the 92hd8xxx codecs port 0xe needs the connection selected to be the
last DAC in the list.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-21 01:10:37 +01:00
Mark Brown
5669239644 Merge branch 'for-2.6.29' into for-2.6.30 2009-01-20 20:37:19 +00:00
Ian Molton
927b0aea93 ASoC: Fix WM9705 capture switch name
This patch fixes the acpture switch name so that it better reflects its
purpose.

Signed-off-by: Ian Molton <iann@mnementh.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-20 20:36:52 +00:00
Timur Tabi
75d91f9bc6 ASoC: Allow Freescale MPC8610 audio drivers to be compiled as modules
Change the Kconfig and Makefile options for Freescale MPC8610 audio drivers
so that they can be compiled as modules, and simplify the Kconfig choices
so that only the platform is selected.

Also fix the naming of the driver files to conform to ALSA standards.

[Removed extraneous SND_SOC dependency -- broonie]

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-20 20:30:59 +00:00
Timur Tabi
8a9dee59a3 ASoC: fix registration of the SoC card in the Freescale MPC8610 drivers
The Freescale MPC8610 driver was defining two SOC card (snd_soc_card)
structures, partially initializing each one, but registering only one of
them with ASoC.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-20 20:29:39 +00:00
Takashi Iwai
e64f14f4e5 ALSA: hda - Allow digital-only I/O on ALC262 codec
Some laptops like VAIO have multiple codecs and uses ALC262 only for
the SPIDF output without analog I/O.  So far, the codec-parser assumes
the presence of analog I/O and returned an error for such a case.

This patch adds some hacks to allow the digital-only configuration for
ALC262.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 18:32:55 +01:00
Takashi Iwai
8c441982fd ALSA: hda - Assign proper digital I/O type for STAC/IDT
Assign the proper PCM digital I/O type (HDA_PCM_TYPE_*) for the digital
I/O on STAC/IDT codecs.  HDA_PCM_TYPE_HDMI is assigned for the HDMI I/O.

A similar framework is implemented to patch_realtek.c, but it's not
set up and still using only HDA_PCM_TYPE_SPDIF yet.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 18:30:20 +01:00
Takashi Iwai
2297bd6e52 ALSA: hda - Check HDMI jack types in the auto configuration
Add dig_out_type and dig_in_type fields to autocfg struct.
A proper HDA_PCM_TYPE_* value is assigned to these fields according
to the pin-jack location type value.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 18:24:13 +01:00
Takashi Iwai
41b5b01afb ALSA: hda - Don't break the PCM creation loop
Don't break the loop in snd_hda_codec_build_pcms() even if the item
has no substreams.

It's possible that it's an empty item and the next item containing
the valid substreams (e.g. realtek codecs may create the analog
and alt-analog but no digitl streams).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 18:21:23 +01:00
Takashi Iwai
caa10b6e80 ALSA: hda - Improve auto-probing of STAC9872 codec
Use the standard STAC/IDT auto-probing routine for non-static
STAC9872 codec probing.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 17:19:01 +01:00
Takashi Iwai
1b52ae701f ALSA: hda - Detect non-SPDIF digital I/O
Accept non-SPDIF digital I/O pins as the digital pins.
These are usually corresponding to HDMI I/O.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 17:18:41 +01:00
Takashi Iwai
89ce9e8708 ALSA: hda - Add debug prints for digital I/O pin detections
Add the debug prints for digital I/O pin detections in
snd_hda_parse_pin_def_config() function.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 17:15:57 +01:00
Takashi Iwai
7c7767ebe2 ALSA: hda - Halve too large volume scales for STAC/IDT codecs
STAC/IDT codecs have often too large volume scales such as -96dB,
and exposing this as is results in too large scale in percentage
representation.

This patch adds the check of the volume scale and halves the
volume range if it's too large automatically.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 15:31:14 +01:00
Takashi Iwai
29fdbec2dc ALSA: hda - Add extra volume offset to standard volume amp macros
Added the volume offset to base for the standard volume controls
to handle elements with too big volume scales like -96dB..0dB.
For such elements, you can set the base volume to reduce the range.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20 15:16:47 +01:00
Mark Brown
b2a19d0239 ASoC: Staticise PCM operations tables
The PCM operations tables are not exported directly but are instead
included in the platform structure so should be declared static.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19 16:23:27 +00:00
Ian Molton
91432e976f ASoC: fixes to caching implementations
This patch takes fixes a number of bugs in the caching code used by
several ASoC codec drivers. Mostly off-by-one fixes.

Signed-off-by: Ian Molton <ian@mnementh.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19 16:23:13 +00:00
Ian Molton
28796eaf80 ASoC: machine support for Toshiba e740 PDA
This patch provides suupport for the wm9705 AC97 codec on the Toshiba e740.

Note:
The e740 has a hard headphone switch that turns the speaker off and is not
software detectable or controlable. Also both headphone and speaker amps
share a common output enable.

Signed-off-by: Ian Molton <ian@mnementh.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19 16:15:41 +00:00
Mark Brown
2c782f5981 ASoC: Implement support for CLK_POUT as MCLK on Zylonite
The Zylonite supports switching the MCLK for the WM9713 between the
AC97CLK and CLK_POUT outputs of the PXA processor via switch SW15 on
the board. This patch adds support for configuring the system to use
CLK_POUT.

Unfortunately it is not possible to read the state of SW15 from software
so this feature is controlled by a module option 'clk_pout' which should
be set to a non-zero value to enable the use of CLK_POUT.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19 16:15:35 +00:00
Takashi Iwai
f3a374e55a ALSA: ca0106 - Add quirk for GA-G1975X mobo
Giga-byte GA-G1975X mobo has a CA0106 on-board chip.
Reference: bnc#395807
	https://bugzilla.novell.com/show_bug.cgi?id=395807

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-19 14:30:48 +01:00