]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
13 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Sun, 5 Dec 2010 10:52:43 +0000 (11:52 +0100)]
Merge branch 'topic/hda' into for-next

13 years agoALSA: hda - use generic hdmi parser for ATI R6xx codec
Anssi Hannula [Sun, 5 Dec 2010 00:34:15 +0000 (02:34 +0200)]
ALSA: hda - use generic hdmi parser for ATI R6xx codec

Switch to the generic hdmi parser for codec id 1002:aa01 (ATI R6xx
HDMI), as the codec appears to work fine with it.

Note that the codec is still limited to stereo output only, despite it
reportedly being multichannel capable. Some as of yet unknown quirks
will be needed to get that working.

Testing was done on 2.6.36 by John Ettedgui.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Tested-by: John Ettedgui <john.ettedgui@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoMerge branch 'fix/hda' into for-next
Takashi Iwai [Sat, 4 Dec 2010 07:58:53 +0000 (08:58 +0100)]
Merge branch 'fix/hda' into for-next

13 years agoALSA: hda - Enable jack sense for Thinkpad Edge 13
Manoj Iyer [Sat, 4 Dec 2010 00:43:55 +0000 (18:43 -0600)]
ALSA: hda - Enable jack sense for Thinkpad Edge 13

Added a quirk to cxt5066_cfg_tbl to enable jack sense for ThinkPad Edge 13.

Reference: http://launchpad.net/bugs/685015

Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoMerge branch 'topic/asoc' into for-next
Takashi Iwai [Sat, 4 Dec 2010 07:53:35 +0000 (08:53 +0100)]
Merge branch 'topic/asoc' into for-next

13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Fri, 3 Dec 2010 17:28:29 +0000 (17:28 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: When disabling WM8994 FLL force a source selection
Mark Brown [Fri, 3 Dec 2010 16:02:10 +0000 (16:02 +0000)]
ASoC: When disabling WM8994 FLL force a source selection

When we disable the WM8994 FLL code path sharing means that we end up
writing out a configuration. Currently this is the currently active
input and output frequency (which causes snd_soc_update_bits() to
suppress actual writes both immediately and in the common case where
we reenable the same configuration later) but we allow machine drivers
to pass through a source of zero. Since the register values written
are one less than the source constants this causes corruption of other
bitfields in the register.

Fix this by using the most recently configured FLL source when none is
provided.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Cc: stable@kernel.org
13 years agoASoC: WM8580: Debug interface index
Jassi Brar [Fri, 3 Dec 2010 01:34:25 +0000 (10:34 +0900)]
ASoC: WM8580: Debug interface index

We want the index of DAI's driver here.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Constify struct snd_soc_codec_driver
Mark Brown [Thu, 2 Dec 2010 16:21:08 +0000 (16:21 +0000)]
ASoC: Constify struct snd_soc_codec_driver

Allow the CODEC driver structure to be marked const by making all
the APIs that use it do so.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: soc-core: Allow machine drivers to override compress_type
Dimitris Papastamos [Thu, 2 Dec 2010 16:11:06 +0000 (16:11 +0000)]
ASoC: soc-core: Allow machine drivers to override compress_type

This patch allows machine drivers to override the compression type
provided by the codec driver.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: soc-cache: Use reg_def_copy instead of reg_cache_default
Dimitris Papastamos [Thu, 2 Dec 2010 16:11:05 +0000 (16:11 +0000)]
ASoC: soc-cache: Use reg_def_copy instead of reg_cache_default

Make sure to use codec->reg_def_copy instead of codec_drv->reg_cache_default
wherever necessary.  This change is necessary because in the next patch we
move the cache initialization code outside snd_soc_register_codec() and by that
time any data marked as __devinitconst such as the original reg_cache_default
array might have already been freed by the kernel.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: soc-core: Generalize snd_soc_prefix_map and rename to snd_soc_codec_conf
Dimitris Papastamos [Thu, 2 Dec 2010 14:53:03 +0000 (14:53 +0000)]
ASoC: soc-core: Generalize snd_soc_prefix_map and rename to snd_soc_codec_conf

The snd_soc_codec_conf struct now holds codec specific configuration
information.

A new configuration option has been added to allow machine drivers to
override the compression type set by the codec driver.

In the absence of providing an snd_soc_codec_conf struct or when providing
one but not setting the compress_type member to anything, the one supplied
by the codec driver will be used instead.  In all other cases the one
set in the snd_soc_codec_conf struct takes effect.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Change the base value of compress_type
Dimitris Papastamos [Thu, 2 Dec 2010 14:53:02 +0000 (14:53 +0000)]
ASoC: Change the base value of compress_type

Ensure that the base value of compress_type starts at 1 so that
we know whether the machine driver has provided a compress_type
for overriding the codec supplied one.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Add compress_type as a member to snd_soc_codec
Dimitris Papastamos [Thu, 2 Dec 2010 14:53:01 +0000 (14:53 +0000)]
ASoC: Add compress_type as a member to snd_soc_codec

We need to keep a copy of the compress_type supplied by the codec driver
so that we can override it if necessary with whatever the machine driver
has provided us with.  The reason for not modifying the codec->driver
struct directly is that ideally we'd like to keep it const.

Adjust the code in soc-cache and soc-core to make use of the compress_type
member in the snd_soc_codec struct.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Fri, 3 Dec 2010 14:43:11 +0000 (15:43 +0100)]
Merge branch 'topic/hda' into for-next

13 years agoALSA: hda - Fix beep-tone on IDT 92HD87/88 codecs
Takashi Iwai [Fri, 3 Dec 2010 14:19:14 +0000 (15:19 +0100)]
ALSA: hda - Fix beep-tone on IDT 92HD87/88 codecs

It sounds like a non-linear beep tone on my test machines...

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoALSA: hda - Enable beep for IDT92HD87 / 88 codecs
Takashi Iwai [Fri, 3 Dec 2010 13:58:37 +0000 (14:58 +0100)]
ALSA: hda - Enable beep for IDT92HD87 / 88 codecs

These codecs have the digital beep widget in NID 0x21.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoASoC: Don't oops in soc_probe_aux_dev in case of missing codec
Jarkko Nikula [Fri, 3 Dec 2010 07:18:22 +0000 (09:18 +0200)]
ASoC: Don't oops in soc_probe_aux_dev in case of missing codec

Blind copy of codec finding algorithm from soc_bind_dai_link does not work
in soc_probe_aux_dev if matching codec name is not found. In that case the
code falls through and tries to start the probing procedure with invalid
codec pointer.

Fix this and add an error print showing the codec name that cannot be found.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix inconsistent meaning of default case while checking alc5623->id
Axel Lin [Fri, 3 Dec 2010 09:25:57 +0000 (17:25 +0800)]
ASoC: Fix inconsistent meaning of default case while checking alc5623->id

In alc5623_i2c_probe(),
the default case for checking alc5623->id behaves the same as case 0x23.
However, In alc5623_probe() the default case for checking alc5623->id
becomes to be the same as case 0x21.
This makes the meaning of default case inconsistent.

Since we have checked codec id in alc5623_i2c_probe() by comparing
vid2 with id->driver_data, it is not possible to run into the default case now.

In case we may add more supported devices to alc5623_i2c_table in the future,
this patch changes the default case return -EINVAL to let people know that
they should not run into this case. They should also add a new case accordingly
for the new id.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi: remove runtime register check from fsi_master_xxx
Kuninori Morimoto [Fri, 3 Dec 2010 08:38:03 +0000 (17:38 +0900)]
ASoC: sh: fsi: remove runtime register check from fsi_master_xxx

Current FSI driver was checking register range on fsi_master_xxx function.
This runtime check was added to avoid an illegal access
from wrong/mistake implementation.
But it is useless check under the correct implementation.
This patch escape runtime check by using macro technique.
If there is wrong implementation, it will be compile error.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi: remove runtime register check from fsi_reg_xxx
Kuninori Morimoto [Fri, 3 Dec 2010 08:37:55 +0000 (17:37 +0900)]
ASoC: sh: fsi: remove runtime register check from fsi_reg_xxx

Current FSI driver was checking register range on fsi_reg_xxx function.
This runtime check was added to avoid an illegal access
from wrong/mistake implementation.
But it is useless check under the correct implementation.
This patch escape runtime check by using macro technique.
If there is wrong implementation, it will be compile error.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi: change fsi->mst_ctrl to master->a/b_mclk
Kuninori Morimoto [Fri, 3 Dec 2010 08:37:44 +0000 (17:37 +0900)]
ASoC: sh: fsi: change fsi->mst_ctrl to master->a/b_mclk

There was a strange part where fsi->xxx had been used
for fsi_master_xxx function instead of master->xxx in current FSI.
This patch modify it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi: remove fsi_master_write
Kuninori Morimoto [Fri, 3 Dec 2010 08:37:31 +0000 (17:37 +0900)]
ASoC: sh: fsi: remove fsi_master_write

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi: clean up SPDIF defines
Kuninori Morimoto [Fri, 3 Dec 2010 08:36:24 +0000 (17:36 +0900)]
ASoC: sh: fsi: clean up SPDIF defines

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Move active copy of CODEC read and write into runtime structure
Mark Brown [Thu, 2 Dec 2010 16:15:29 +0000 (16:15 +0000)]
ASoC: Move active copy of CODEC read and write into runtime structure

We shouldn't be assigning to the driver structure (which really ought
to be const, further patch to follow) though there's unlikely to be any
actual problem except in the unlikely case that two devices with the
same driver but different bus types appear in the same system.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Make the DAI ops constant in the DAI structure
Mark Brown [Thu, 2 Dec 2010 16:10:09 +0000 (16:10 +0000)]
ASoC: Make the DAI ops constant in the DAI structure

Neither drivers nor the core should be fiddling with the actual ops
structure at runtime.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Apostrophe patrol in soc-core.c
Mark Brown [Thu, 2 Dec 2010 16:24:24 +0000 (16:24 +0000)]
ASoC: Apostrophe patrol in soc-core.c

Silly little grammar nit but it bugs the hell out of me.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Fri, 3 Dec 2010 11:32:28 +0000 (12:32 +0100)]
Merge branch 'topic/hda' into for-next

13 years agoALSA: hda - Clean up cxt5066 port-D handling & co
Takashi Iwai [Fri, 3 Dec 2010 11:29:14 +0000 (12:29 +0100)]
ALSA: hda - Clean up cxt5066 port-D handling & co

Instead of hard-coded magic numbers, properly define and use macros
for improve the readability.  Also, dell_automute is handled samely
as thinkpad, since it also sets port_d_mode, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Fri, 3 Dec 2010 11:27:47 +0000 (12:27 +0100)]
Merge branch 'fix/hda' into topic/hda

13 years agoALSA: hda - Fix ThinkPad T410[s] docking station line-out
John Baboval [Thu, 2 Dec 2010 16:21:31 +0000 (11:21 -0500)]
ALSA: hda - Fix ThinkPad T410[s] docking station line-out

On the docking station for the Lenovo T410 and T410s, the line-out
doesn't work. The trouble seems to be that it generates a plug event,
but then doesn't report that the jack is connected. So automute mutes
the jack when you plug something into it. The following patch (next
message) fixes it.

Signed-off-by: John Baboval <john.baboval at virtualcomputer.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoMerge branch 'fix/hda' into for-next
Takashi Iwai [Fri, 3 Dec 2010 10:28:14 +0000 (11:28 +0100)]
Merge branch 'fix/hda' into for-next

13 years agoALSA: hda: Use model=lg quirk for LG P1 Express to enable playback and capture
Daniel T Chen [Fri, 3 Dec 2010 03:45:45 +0000 (22:45 -0500)]
ALSA: hda: Use model=lg quirk for LG P1 Express to enable playback and capture

BugLink: https://launchpad.net/bugs/595482
The original reporter states that audible playback from the internal
speaker is inaudible despite the hardware being properly detected.  To
work around this symptom, he uses the model=lg quirk to properly enable
both playback, capture, and jack sense.  Another user corroborates this
workaround on separate hardware.  Add this PCI SSID to the quirk table
to enable it for further LG P1 Expresses.

Reported-and-tested-by: Philip Peitsch <philip.peitsch@gmail.com>
Tested-by: nikhov
Cc: <stable@kernel.org> [2.6.32+]
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoMerge branch 'fix/asoc' into for-next
Takashi Iwai [Thu, 2 Dec 2010 16:32:18 +0000 (17:32 +0100)]
Merge branch 'fix/asoc' into for-next

13 years agoMerge branch 'for-2.6.37' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc...
Takashi Iwai [Thu, 2 Dec 2010 16:31:18 +0000 (17:31 +0100)]
Merge branch 'for-2.6.37' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into fix/asoc

13 years agoMerge branch 'fix/asoc' into for-next
Takashi Iwai [Thu, 2 Dec 2010 16:14:39 +0000 (17:14 +0100)]
Merge branch 'fix/asoc' into for-next

13 years agoASoC: Tune performance of WM8958 revision A
Mark Brown [Tue, 30 Nov 2010 14:56:18 +0000 (14:56 +0000)]
ASoC: Tune performance of WM8958 revision A

Update some of the default configuration for the device to improve
the performance.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Automatically manage WM8731 deemphasis
Mark Brown [Thu, 2 Dec 2010 11:44:00 +0000 (11:44 +0000)]
ASoC: Automatically manage WM8731 deemphasis

The deemphasis filter should be selected based on sample rate for
optimal performance.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Split WM8731 enumeration array into individual enums
Mark Brown [Tue, 30 Nov 2010 21:03:44 +0000 (21:03 +0000)]
ASoC: Split WM8731 enumeration array into individual enums

This is much more maintainable than the array.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Provide WM8731 microphone boost TLV information
Mark Brown [Tue, 30 Nov 2010 21:03:09 +0000 (21:03 +0000)]
ASoC: Provide WM8731 microphone boost TLV information

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: omap: N810: Don't select CONFIG_OMAP_MUX but make it as dependency
Jarkko Nikula [Wed, 1 Dec 2010 09:01:20 +0000 (11:01 +0200)]
ASoC: omap: N810: Don't select CONFIG_OMAP_MUX but make it as dependency

Not all omap boards use kernel based pin multiplexing so
CONFIG_SND_OMAP_SOC_N810 should not select it by default as it can make
harm to other boards in multi-board kernels.

Therefore put CONFIG_OMAP_MUX as a dependency to N810 ASoC machine driver.

Thanks to Tony Lindgren <tony@atomide.com> for noticing.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Cc: Tony Lindgren <tony@atomide.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'fix/hda' into for-next
Takashi Iwai [Thu, 2 Dec 2010 07:06:23 +0000 (08:06 +0100)]
Merge branch 'fix/hda' into for-next

13 years agoALSA: hda: Use "alienware" model quirk for another SSID
Daniel T Chen [Thu, 2 Dec 2010 00:16:07 +0000 (19:16 -0500)]
ALSA: hda: Use "alienware" model quirk for another SSID

BugLink: https://launchpad.net/bugs/683695
The original reporter states that headphone jacks do not appear to
work.  Upon inspecting his codec dump, and upon further testing, it is
confirmed that the "alienware" model quirk is correct.

Reported-and-tested-by: Cody Thierauf
Cc: <stable@kernel.org> [2.6.32+]
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoASoC: ak4535: Improve readability for setting mute
Axel Lin [Wed, 1 Dec 2010 09:22:34 +0000 (17:22 +0800)]
ASoC: ak4535: Improve readability for setting mute

The mute/unmute is controled by SMUTE (Soft Mute Control bit):
        0: Normal Operation (Default)
        1: DAC outputs soft-muted

I think this change improves readability.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi-ak4642: midify card name
Kuninori Morimoto [Wed, 1 Dec 2010 06:50:52 +0000 (15:50 +0900)]
ASoC: sh: fsi-ak4642: midify card name

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi-ak4642: tidyup unnecessary variables
Kuninori Morimoto [Wed, 1 Dec 2010 06:50:42 +0000 (15:50 +0900)]
ASoC: sh: fsi-ak4642: tidyup unnecessary variables

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Allow user-specified WM8958 multiband compressor configurations
Mark Brown [Tue, 30 Nov 2010 17:03:39 +0000 (17:03 +0000)]
ASoC: Allow user-specified WM8958 multiband compressor configurations

The paramters of the WM8958 multiband compressor can be tuned by the
user for their system using a graphical configuration tool on the host.
Allow the user to specify a set of such paramters in platform data and
select between them at runtime.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Correct event flags for WM8958 AIF DACs
Mark Brown [Tue, 30 Nov 2010 16:59:29 +0000 (16:59 +0000)]
ASoC: Correct event flags for WM8958 AIF DACs

We need a post notification as we need to shut down the MBC after the
data stops flowing rather than before.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Wed, 1 Dec 2010 11:34:27 +0000 (11:34 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Fix build failure in soc-core.c
Jarkko Nikula [Wed, 1 Dec 2010 07:10:47 +0000 (09:10 +0200)]
ASoC: Fix build failure in soc-core.c

Commit 2eea392 "ASoC: Add support for optional auxiliary dailess codecs"
causes a build failure in soc-core.c: soc_probe_aux_dev since code tries to
access non-existing struct snd_soc_dapm_context and struct snd_soc_card
members.

Root cause for this was a double accident. Author sent the RFC patch from
top of another patch set and the RFC got committed. Fix the build failure
by removing the code line that depends on that another patch set.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: WM8731: Fix incorrect mask for bypass path disable
Dimitris Papastamos [Wed, 1 Dec 2010 09:38:55 +0000 (09:38 +0000)]
ASoC: WM8731: Fix incorrect mask for bypass path disable

According to the datasheet the bypass path enable/disable is
bit 3 therefore we need 0x8 and not 0x4.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'topic/misc' into for-next
Takashi Iwai [Wed, 1 Dec 2010 11:15:37 +0000 (12:15 +0100)]
Merge branch 'topic/misc' into for-next

13 years agoALSA: hdsp - Add support for RPM io box
Florian Faber [Wed, 1 Dec 2010 11:14:47 +0000 (12:14 +0100)]
ALSA: hdsp - Add support for RPM io box

Add support for the RME HDSP RPM IO box. Changes have been made in the identification of the IO box and the neccessary controls have been added.

Signed-off-by: Florian Faber <faberman@linuxproaudio.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoASoC: Add support for optional auxiliary dailess codecs
Jarkko Nikula [Thu, 25 Nov 2010 15:47:38 +0000 (17:47 +0200)]
ASoC: Add support for optional auxiliary dailess codecs

This makes possible to register auxiliary dailess codecs in a machine
driver. Term dailess is used here for amplifiers and codecs without DAI or
DAI being unused.

Dailess auxiliary codecs are kept in struct snd_soc_aux_dev and those codecs
are probed after initializing the DAI links. There are no major differences
between DAI link codecs and dailess codecs in ASoC core point of view. DAPM
handles them equally and sysfs and debugfs directories for dailess codecs
are similar except the pmdown_time node is not created.

Only suspend and resume functions are modified to traverse all probed codecs
instead of DAI link codecs.

Example below shows a dailess codec registration.

struct snd_soc_aux_dev foo_aux_dev[] = {
{
.name = "Amp",
.codec_name = "codec.2",
.init = foo_init2,
},
};

static struct snd_soc_card card = {
...
.aux_dev = foo_aux_dev,
.num_aux_devs = ARRAY_SIZE(foo_aux_dev),
};

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: soc-cache: Fix memory overflow in LZO initialization
Dimitris Papastamos [Mon, 29 Nov 2010 11:43:33 +0000 (11:43 +0000)]
ASoC: soc-cache: Fix memory overflow in LZO initialization

The bitmap_zero() nbits argument was improperly set to reg_size
but the underlying buffer was bmp_size long.  This caused the memset
to zero past the end of the allocated buffer and into the kernel heap
causing strange kernel crashes sometimes by overwriting critical
kernel structures.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Tue, 30 Nov 2010 11:35:43 +0000 (11:35 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Simplify pm860x_probe error handling
Axel Lin [Tue, 30 Nov 2010 07:34:11 +0000 (15:34 +0800)]
ASoC: Simplify pm860x_probe error handling

Simplify pm860x_probe error handling and return actual error code we got.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sh: fsi-ak4642: Add FSI port and ak464x selection
Kuninori Morimoto [Tue, 30 Nov 2010 02:32:04 +0000 (11:32 +0900)]
ASoC: sh: fsi-ak4642: Add FSI port and ak464x selection

Current FSI-Ak4642 device had niche settings which were
FSI2-A-AK4643 and FSI-A-AK4642.
This patch add platform_device_id which can control
FSI/FSI2, PortA/PortB, AK4642/AK4643 from platform data.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agos6105-ipcam: fix compilation
Daniel Glöckner [Tue, 30 Nov 2010 00:00:18 +0000 (01:00 +0100)]
s6105-ipcam: fix compilation

When the s6105-ipcam ASoC driver had been converted to the
multi-component API, a single reference to a former structure
element remained, blocking successful compilation.

Signed-off-by: Daniel Glöckner <daniel-gl@gmx.net>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agos6000-pcm: fix compilation
Daniel Glöckner [Tue, 30 Nov 2010 00:00:17 +0000 (01:00 +0100)]
s6000-pcm: fix compilation

s6000_soc_platform has lost its forward declaration and there no
longer is a name element in it, so use a string constant when
calling request_irq.

Signed-off-by: Daniel Glöckner <daniel-gl@gmx.net>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agos6000-i2s: fix compilation
Daniel Glöckner [Tue, 30 Nov 2010 00:00:16 +0000 (01:00 +0100)]
s6000-i2s: fix compilation

A semicolon was missing.

Signed-off-by: Daniel Glöckner <daniel-gl@gmx.net>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix missing spin_unlock_irqrestore
Axel Lin [Mon, 29 Nov 2010 09:42:47 +0000 (17:42 +0800)]
ASoC: Fix missing spin_unlock_irqrestore

In nuc900_dma_hw_params(), if snd_pcm_lib_malloc_pages failed
it returns without calling spin_unlock_irqrestore().

Since snd_pcm_lib_malloc_pages() does not touch struct nuc900_audio,
we don't need to hold the lock while calling snd_pcm_lib_malloc_pages().
Fix it by moving spin_lock_irqsave() down to after snd_pcm_lib_malloc_pages().

In nuc900_dma_prepare(), spin_unlock_irqrestore() is missing in the error path.
Fix it by removing the return in default case.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Wan ZongShun <mcuos.com@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'fix/misc' into for-next
Takashi Iwai [Tue, 30 Nov 2010 07:19:28 +0000 (08:19 +0100)]
Merge branch 'fix/misc' into for-next

13 years agoALSA: Fix SNDCTL_DSP_RESET ioctl for OSS emulation
Takashi Iwai [Tue, 30 Nov 2010 07:14:21 +0000 (08:14 +0100)]
ALSA: Fix SNDCTL_DSP_RESET ioctl for OSS emulation

In OSS emulation, SNDCTL_DSP_RESET ioctl needs the reset of the internal
buffer state in addition to drop of the running streams.  Otherwise the
succeeding access becomes inconsistent.

Tested-by: Amit Nagal <helloin.amit@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoMerge branch 'topic/asoc' into for-next
Takashi Iwai [Tue, 30 Nov 2010 07:13:55 +0000 (08:13 +0100)]
Merge branch 'topic/asoc' into for-next

13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Mon, 29 Nov 2010 18:33:47 +0000 (18:33 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Add missing dev_set_drvdata in p1022_ds_probe
Axel Lin [Mon, 29 Nov 2010 06:55:58 +0000 (14:55 +0800)]
ASoC: Add missing dev_set_drvdata in p1022_ds_probe

Otherwise, calling dev_get_drvdata in p1022_ds_remove returns NULL.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Timur Tabi <timur@freescale.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Add missing dev_set_drvdata in mpc8610_hpcd_probe
Axel Lin [Mon, 29 Nov 2010 06:54:58 +0000 (14:54 +0800)]
ASoC: Add missing dev_set_drvdata in mpc8610_hpcd_probe

Otherwise, calling dev_get_drvdata in mpc8610_hpcd_remove returns NULL.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Timur Tabi <timur@freescale.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Remove unneeded !! operations while checking return value of nuc900_checkready
Axel Lin [Mon, 29 Nov 2010 09:43:39 +0000 (17:43 +0800)]
ASoC: Remove unneeded !! operations while checking return value of nuc900_checkready

I think this unneededd !! operations just reduce the readability.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix compile error for nuc900-pcm.c
Axel Lin [Mon, 29 Nov 2010 09:40:53 +0000 (17:40 +0800)]
ASoC: Fix compile error for nuc900-pcm.c

This patch fixes below error:

  CC      sound/soc/nuc900/nuc900-pcm.o
sound/soc/nuc900/nuc900-pcm.c: In function 'nuc900_dma_open':
sound/soc/nuc900/nuc900-pcm.c:267: error: 'nuc900_ac97_data' undeclared (first use in this function)
sound/soc/nuc900/nuc900-pcm.c:267: error: (Each undeclared identifier is reported only once
sound/soc/nuc900/nuc900-pcm.c:267: error: for each function it appears in.)
sound/soc/nuc900/nuc900-pcm.c: At top level:
sound/soc/nuc900/nuc900-pcm.c:337: error: expected ',' or ';' before 'static'
sound/soc/nuc900/nuc900-pcm.c:354: error: 'nuc900_soc_platform_probe' undeclared here (not in a function)
make[3]: *** [sound/soc/nuc900/nuc900-pcm.o] Error 1
make[2]: *** [sound/soc/nuc900] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix prototype for nuc900_ac97_probe and nuc900_ac97_remove
Axel Lin [Mon, 29 Nov 2010 09:40:05 +0000 (17:40 +0800)]
ASoC: Fix prototype for nuc900_ac97_probe and nuc900_ac97_remove

This patch fixes below compile warning:

  CC      sound/soc/nuc900/nuc900-ac97.o
sound/soc/nuc900/nuc900-ac97.c:300: warning: initialization from incompatible pointer type
sound/soc/nuc900/nuc900-ac97.c:301: warning: initialization from incompatible pointer type

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix compile error for nuc900-ac97.c
Axel Lin [Mon, 29 Nov 2010 09:39:10 +0000 (17:39 +0800)]
ASoC: Fix compile error for nuc900-ac97.c

Fix below compile error by add a missing ';'.

  CC      sound/soc/nuc900/nuc900-ac97.o
sound/soc/nuc900/nuc900-ac97.c:300: warning: initialization from incompatible pointer type
sound/soc/nuc900/nuc900-ac97.c:301: warning: initialization from incompatible pointer type
sound/soc/nuc900/nuc900-ac97.c:318: error: expected ',' or ';' before 'static'
sound/soc/nuc900/nuc900-ac97.c:405: error: 'nuc900_ac97_drvprobe' undeclared here (not in a function)
make[3]: *** [sound/soc/nuc900/nuc900-ac97.o] Error 1
make[2]: *** [sound/soc/nuc900] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: soc-cache: Ensure consistent cache naming
Dimitris Papastamos [Mon, 29 Nov 2010 10:54:28 +0000 (10:54 +0000)]
ASoC: soc-cache: Ensure consistent cache naming

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: soc-cache: Add error checking in the *_cache_sync functions
Dimitris Papastamos [Mon, 29 Nov 2010 10:24:54 +0000 (10:24 +0000)]
ASoC: soc-cache: Add error checking in the *_cache_sync functions

Ensure that we report any errors encountered during reads/writes
in the cache syncing functions.

Remove redundant newline in the source code.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix resource leak in smdk_spdif.c
Axel Lin [Fri, 26 Nov 2010 06:54:42 +0000 (14:54 +0800)]
ASoC: Fix resource leak in smdk_spdif.c

Properly free allocated resources in smdk_init() error path.
Add missing platform_device_unregister() in smdk_exit().

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Add missing gpio_free(S3C64XX_GPK(12)) in smartq_exit()
Axel Lin [Fri, 26 Nov 2010 06:53:38 +0000 (14:53 +0800)]
ASoC: Add missing gpio_free(S3C64XX_GPK(12)) in smartq_exit()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix resource leak in neo1973_gta02_init() error path
Axel Lin [Fri, 26 Nov 2010 06:52:47 +0000 (14:52 +0800)]
ASoC: Fix resource leak in neo1973_gta02_init() error path

Properly free allocated resources in neo1973_gta02_init() error path.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix resource leak in goni_wm8994.c
Axel Lin [Fri, 26 Nov 2010 06:51:56 +0000 (14:51 +0800)]
ASoC: Fix resource leak in goni_wm8994.c

Properly free allocated resources in goni_init() error path.
Add missing snd_soc_unregister_dai() in goni_exit().

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'topic/hda' into for-next
Takashi Iwai [Mon, 29 Nov 2010 07:13:37 +0000 (08:13 +0100)]
Merge branch 'topic/hda' into for-next

13 years agoALSA: hda - Remove dead md2 quirk code
Takashi Iwai [Mon, 29 Nov 2010 06:42:59 +0000 (07:42 +0100)]
ALSA: hda - Remove dead md2 quirk code

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Mon, 29 Nov 2010 06:44:01 +0000 (07:44 +0100)]
Merge branch 'fix/hda' into topic/hda

13 years agoALSA: hda: Use BIOS auto-parsing instead of existing model quirk for MEDION MD2
Daniel T Chen [Sat, 27 Nov 2010 18:58:04 +0000 (13:58 -0500)]
ALSA: hda: Use BIOS auto-parsing instead of existing model quirk for MEDION MD2

BugLink: https://launchpad.net/bugs/682199
A 2.6.35 (Ubuntu Maverick) user, burningphantom1, reported a regression
in audio: playback was inaudible through both speakers and headphones.
In commit 272a527c04 of sound-2.6.git, a new model was added with this
machine's PCI SSID.  Fortunately, it is now sufficient to use the auto
model for BIOS auto-parsing instead of the existing quirk.

Playback, capture, and jack sense were verified working for both
2.6.35 and the alsa-driver snapshot from 2010-11-27 when model=auto is
used.

Reported-and-tested-by: burningphantom1
Cc: <stable@kernel.org> [2.6.35+]
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agoASoC: Implement runtime PM for WM8994/58
Mark Brown [Fri, 26 Nov 2010 17:23:43 +0000 (17:23 +0000)]
ASoC: Implement runtime PM for WM8994/58

This allows us to communicate our power management state back to the
parent device, allowing it to do a full power down when the device is
idle.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Enable rbtree compression for WM8994/58 register cache
Mark Brown [Fri, 26 Nov 2010 17:23:42 +0000 (17:23 +0000)]
ASoC: Enable rbtree compression for WM8994/58 register cache

The WM8994 and WM8958 register map is relatively sparse so benefits
from compression. The rbtree compression gives better results than
LZO for both memory and CPU consumption on a map as sparse as this.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Convert WM8994 to use soc-cache.c cache functions
Mark Brown [Fri, 26 Nov 2010 17:23:41 +0000 (17:23 +0000)]
ASoC: Convert WM8994 to use soc-cache.c cache functions

In the process we convert the driver to read registers one at a time
when initialising the cache. This has the effect of working around
limitations in the sizes of I2C transactions which can be done by some
CPUs. Due to the sparseness of the register map the overhead from this
should be minimual unless I2C transactions are very expensive to start.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Add WM8958 microphone detection support
Mark Brown [Fri, 26 Nov 2010 15:21:09 +0000 (15:21 +0000)]
ASoC: Add WM8958 microphone detection support

The WM8958 contains an advanced accessory detection feature which allows
detection of up to seven different impedence levels on the microphone
bias output, including detection of video outputs. Since some of the
more involved accessory interfaces may involve noticable interactions
with external components a simple detection scheme is provided by
default with the option to provide custom handling of accessory detect.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Add WM8958 Multi-band compressor support
Mark Brown [Fri, 26 Nov 2010 15:21:08 +0000 (15:21 +0000)]
ASoC: Add WM8958 Multi-band compressor support

The WM8958 features a multi-band compressor which can be enabled on
any of the AIF inputs. The MBC allows different gains to be applied to
differnt audio bands, providing an improvement in perceived loudness
of the signal by avoiding overdriving the output transducers. This
patch enables support for the MBC.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Implement support for enhanced AIF3 on WM8958
Mark Brown [Fri, 26 Nov 2010 15:21:07 +0000 (15:21 +0000)]
ASoC: Implement support for enhanced AIF3 on WM8958

Additional audio routing options are available on the WM8958 audio
interface 3. Add support for these.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Initial WM8958 audio configuration
Mark Brown [Fri, 26 Nov 2010 15:21:06 +0000 (15:21 +0000)]
ASoC: Initial WM8958 audio configuration

The WM8958 is a WM8994 derivative. This patch merely ensures that some
revision specific configuration for WM8994 is not enabled on WM8994,
additional patches will add support for the new features introduced on
the WM8958.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Use DC servo startup mode when not doing DCS correction
Mark Brown [Fri, 26 Nov 2010 17:23:44 +0000 (17:23 +0000)]
ASoC: Use DC servo startup mode when not doing DCS correction

Devices which do not have a DCS correction applied can use the explicit
DC servo startup mode for optimal startup performance. This most
immediately affects the WM8958.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'fix/hda' into for-next
Takashi Iwai [Fri, 26 Nov 2010 16:17:24 +0000 (17:17 +0100)]
Merge branch 'fix/hda' into for-next

13 years agoALSA: hda - Use ALC_INIT_DEFAULT for really default initialization
Takashi Iwai [Fri, 26 Nov 2010 16:11:18 +0000 (17:11 +0100)]
ALSA: hda - Use ALC_INIT_DEFAULT for really default initialization

When SKU assid gives no valid bits for 0x38, the driver didn't take
any action, so far.  This resulted in the missing initialization for
external amps, etc, thus the silent output in the end.

Especially users hit this problem on ALC888 newly since 2.6.35,
where the driver doesn't force to use ALC_INIT_DEFAULT any more.

This patch sets the default initialization scheme to use
ALC_INIT_DEFAULT when no valid bits are set for SKU assid.

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

Reported-and-tested-by: Kyle McMartin <kyle@redhat.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
13 years agogpiolib: Add WM8958 support to the WM8994 driver
Mark Brown [Wed, 1 Sep 2010 09:47:16 +0000 (10:47 +0100)]
gpiolib: Add WM8958 support to the WM8994 driver

Several of the GPIOs on the WM8994 are fixed function on the WM8958 so
error out if the user tries to request them with gpiolib.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agomfd: Add initial WM8958 support
Mark Brown [Tue, 31 Aug 2010 18:25:12 +0000 (19:25 +0100)]
mfd: Add initial WM8958 support

The WM8958 is a derivative of the WM8994 which is register compatible
with the addition of some extra features, mostly in the CODEC side.
The major change visible at the MFD level is that rather than a single
DBVDD supply we now have three separate DBVDDs so we must request and
enable a different set of supplies.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Remove redundant hw_write initialisation in WM8737
Mark Brown [Fri, 26 Nov 2010 11:50:03 +0000 (11:50 +0000)]
ASoC: Remove redundant hw_write initialisation in WM8737

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'fix/asoc' into for-next
Takashi Iwai [Fri, 26 Nov 2010 14:36:30 +0000 (15:36 +0100)]
Merge branch 'fix/asoc' into for-next

13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Thu, 25 Nov 2010 21:16:52 +0000 (21:16 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Fix resource reclaim for osk5912
Axel Lin [Wed, 24 Nov 2010 14:24:01 +0000 (22:24 +0800)]
ASoC: Fix resource reclaim for osk5912

In current implementation, there are resources leak in the error path.
This patch properly reclaims the allocated resources in the error path.

Also adds a missing clk_put in osk_soc_exit.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: tlv320aic3x - fix variable may be used uninitialized warning
Axel Lin [Wed, 24 Nov 2010 14:40:59 +0000 (22:40 +0800)]
ASoC: tlv320aic3x - fix variable may be used uninitialized warning

If aic3x_read failed , val is used uninitialized.
Fix it by initializing val to 0.

This patch fixes below compile warning:
sound/soc/codecs/tlv320aic3x.c: In function 'aic3x_get_gpio':
sound/soc/codecs/tlv320aic3x.c:1183: warning: 'val' may be used uninitialized in this function
sound/soc/codecs/tlv320aic3x.c: In function 'aic3x_headset_detected':
sound/soc/codecs/tlv320aic3x.c:1211: warning: 'val' may be used uninitialized in this function
sound/soc/codecs/tlv320aic3x.c: In function 'aic3x_button_pressed':
sound/soc/codecs/tlv320aic3x.c:1219: warning: 'val' may be used uninitialized in this function

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoARM: Samsung: Make sure ASoC DMA device is prototyped
Mark Brown [Wed, 24 Nov 2010 15:48:01 +0000 (15:48 +0000)]
ARM: Samsung: Make sure ASoC DMA device is prototyped

Ensure that the prototype agrees with the definition and stop sparse
complaining when building the file.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>