platform/kernel/linux-exynos.git
14 years agofbdev: sh_mobile_hdmi: Add select SND_SOC to Kconfig
Kuninori Morimoto [Thu, 9 Sep 2010 07:30:18 +0000 (16:30 +0900)]
fbdev: sh_mobile_hdmi: Add select SND_SOC to Kconfig

This patch solve compile error when .config doesn't have
CONFIG_SND_SOC which is needed for HDMI sound.
It was reported by Guennadi as follows

Besides, I think, this will not link without CONFIG_SND_SOC.

Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: fsi-hdmi: remove unneeded header
Kuninori Morimoto [Thu, 9 Sep 2010 02:48:30 +0000 (11:48 +0900)]
ASoC: fsi-hdmi: remove unneeded header

This patch solve below report from Guennadi.
But I didn't remove #include <sound/sh_fsi.h>.
Because it have FSI_PORT_B define which is used on this file.

> +#include <linux/platform_device.h>
> +#include <sound/sh_fsi.h>
> +#include <video/sh_mobile_hdmi.h>

Now that everything is done with strings - do you still need these
headers?

Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agofbdev: sh_mobile_hdmi: add new label for sound error path
Kuninori Morimoto [Thu, 9 Sep 2010 02:48:20 +0000 (11:48 +0900)]
fbdev: sh_mobile_hdmi: add new label for sound error path

This patch solve below report from Guennadi

>  /* External video parameter settings */
>  static void hdmi_external_video_param(struct sh_hdmi *hdmi)
>  {
> @@ -804,6 +862,11 @@ static int __init sh_hdmi_probe(struct platform_device *pdev)
>   return -ENOMEM;
>   }
>
> + ret =  snd_soc_register_codec(&pdev->dev,
> + &soc_codec_dev_sh_hdmi, &sh_hdmi_dai, 1);
> + if (ret < 0)
> + goto egetclk;
> +
>   hdmi->dev = &pdev->dev;
>
>   hdmi->hdmi_clk = clk_get(&pdev->dev, "ick");

NAK. This breaks the error path and has to be fixed. Firstly, please, use
a new label like "esndreg," secondly, you have to add

  clk_disable(hdmi->hdmi_clk);
 erate:
  clk_put(hdmi->hdmi_clk);
 egetclk:
+ snd_soc_unregister_codec(&pdev->dev);
+esndreg:
  mutex_destroy(&hdmi->mutex);
  kfree(hdmi);

Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agofbdev: sh_mobile_hdmi: modify snd_soc_dai_driver settings
Kuninori Morimoto [Thu, 9 Sep 2010 02:48:10 +0000 (11:48 +0900)]
fbdev: sh_mobile_hdmi: modify snd_soc_dai_driver settings

This patch solve below report from Guennadi

> +static struct snd_soc_dai_driver sh_hdmi_dai = {
> + .name = "sh_mobile_hdmi-hifi",
> + .playback = {
> + .stream_name = "Playback",
> + .channels_min = 1,

Can it actually do mono? Maybe at probe time you could look at audio flags
from your previous patch and, e.g., for SPDIF set channels_min to 2?

> + .channels_max = 2,

That's the "smallest max," yes. With some other interfaces (I2S, DSD) it
can support up to 8 channels...

> + .rates = SNDRV_PCM_RATE_8000_48000,

Hm, in the datasheet I see supported frequencies 32kHz to 192kHz. And if
you promise support for multiple frequencies, don't you want to implement
.hw_params? Besides, not all of these frequencies will be available,
depending on your supplied clock and your willingness to implement
downsampling.

Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agofbdev: sh_mobile_hdmi: modify flags name to more specific
Kuninori Morimoto [Thu, 9 Sep 2010 02:48:01 +0000 (11:48 +0900)]
fbdev: sh_mobile_hdmi: modify flags name to more specific

This patch solve below report from Guennadi

1)

> +/* Audio source select */
> +#define HDMI_SRC_MASK (0xF << 0)
> +#define HDMI_SRC_I2S (0 << 0) /* default */
> +#define HDMI_SRC_SPDIF (1 << 0)
> +#define HDMI_SRC_DSD (2 << 0)
> +#define HDMI_SRC_HBR (3 << 0)

I would be more specific with these macro names, i.e., include "AUDIO" or
"SND" or something similar in them, e.g., HDMI_AUDIO_SRC_I2S.

2)

> + case HDMI_SRC_I2S:
> + data = (0x0 << 3);
> + break;
> + case HDMI_SRC_SPDIF:
> + data = (0x1 << 3);
> + break;
> + case HDMI_SRC_DSD:
> + data = (0x2 << 3);
> + break;
> + case HDMI_SRC_HBR:
> + data = (0x3 << 3);

In all above cases parenthesis are superfluous.

Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agofbdev: sh_mobile_hdmi: modify noisy comment out
Kuninori Morimoto [Thu, 9 Sep 2010 02:47:49 +0000 (11:47 +0900)]
fbdev: sh_mobile_hdmi: modify noisy comment out

This patch solve below report from Guennadi

1)

> - hdmi_write(hdmi, 0x00, HDMI_AUDIO_SETTING_1);
> + switch (pdata->flags & HDMI_SRC_MASK) {
> + default:
> + /* FALL THROUGH */

I'm not sure I like the capitalisation here - no reason to shout;)

2)

> +/************************************************************************
> +
> +
> + HDMI sound
> +
> +
> +************************************************************************/

I don't think this comment deserves 7 lines of text, besides breaking the
multiline comment style. If you think, one line like

/* HDMI sound */

is not enough how about just

/*
 * HDMI sound
 */

3)

> +/************************************************************************
> +
> +
> + HDMI video
> +
> +
> +************************************************************************/

See above - 7 lines seem to be an overkill to me.

Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Samsung: Debug PCM platform device name
Jassi Brar [Fri, 10 Sep 2010 07:41:17 +0000 (16:41 +0900)]
ASoC: Samsung: Debug PCM platform device name

The PCM controller platform devices are registered by the
name 'samsung-pcm', so use the same in the CPU driver.

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>
14 years agoASoC: S3C: AC97: Remove the -dai suffix
Jassi Brar [Fri, 10 Sep 2010 07:40:31 +0000 (16:40 +0900)]
ASoC: S3C: AC97: Remove the -dai suffix

Drop the invalid -dai suffix appended to the Samsung AC97 CPU DAI.

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>
14 years agoASoC: fsi codecs: modify menu attribute on Kconfig
Kuninori Morimoto [Fri, 10 Sep 2010 01:34:32 +0000 (10:34 +0900)]
ASoC: fsi codecs: modify menu attribute on Kconfig

Current SND_FSI_xxx menu attributes were bool,
but it should be tristate.
This patch solve below report from Guennadi

"bool" means, if someone is linking the whole ASoC into the kernel, they
will not be able to build this as a module. Not a big deal, but you're
stealing some freedom from the user.

Reported-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
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>
14 years agoASoC: fsi-ak4642: modify platform_name
Kuninori Morimoto [Tue, 7 Sep 2010 06:46:48 +0000 (15:46 +0900)]
ASoC: fsi-ak4642: modify platform_name

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: Laim Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: rx1950: Fix clkdiv for 16khz and 48khz
Vasily Khoruzhick [Tue, 7 Sep 2010 14:04:18 +0000 (17:04 +0300)]
ASoC: rx1950: Fix clkdiv for 16khz and 48khz

Usage of 256 as clkdiv gives better rounding error (<1%)
for 16khz and 48khz

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: UDA1380: Add delay between power on and reset
Vasily Khoruzhick [Tue, 7 Sep 2010 14:04:17 +0000 (17:04 +0300)]
ASoC: UDA1380: Add delay between power on and reset

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: rx1950: remove unnecessary headers
Vasily Khoruzhick [Tue, 7 Sep 2010 14:04:16 +0000 (17:04 +0300)]
ASoC: rx1950: remove unnecessary headers

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: rx1950: check that machine is rx1950 in glue driver
Vasily Khoruzhick [Tue, 7 Sep 2010 14:04:15 +0000 (17:04 +0300)]
ASoC: rx1950: check that machine is rx1950 in glue driver

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Remove export of CS4270 DAI
Mark Brown [Tue, 7 Sep 2010 14:53:35 +0000 (15:53 +0100)]
ASoC: Remove export of CS4270 DAI

Not needed with multi-component.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Timur Tabi <timur@freescale.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Staticise WM9712 DAI list
Mark Brown [Mon, 6 Sep 2010 17:56:03 +0000 (18:56 +0100)]
ASoC: Staticise WM9712 DAI list

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Fix cut'n'paste comment in WM8994
Mark Brown [Mon, 6 Sep 2010 13:59:34 +0000 (14:59 +0100)]
ASoC: Fix cut'n'paste comment in WM8994

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoMerge branch 'for-2.6.37' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc...
Mark Brown [Mon, 6 Sep 2010 10:53:13 +0000 (11:53 +0100)]
Merge branch 'for-2.6.37' of git://git./linux/kernel/git/lrg/asoc-2.6 into for-2.6.37

14 years agoASoC: wm8753, remove dead code
Jiri Slaby [Sat, 4 Sep 2010 13:12:09 +0000 (15:12 +0200)]
ASoC: wm8753, remove dead code

There is adangling code in wm8753_probe which is never executed.
Remove it.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Acked-by: Liam Girdwood <lg@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: tlv320aic3x: Fix null pointer dereference when pdata is not set
Jarkko Nikula [Sun, 5 Sep 2010 16:10:22 +0000 (19:10 +0300)]
ASoC: tlv320aic3x: Fix null pointer dereference when pdata is not set

Null pointer dereference will occur from *setup = pdata->setup if pdata
is not set. Fix this by moving assignments from pdata inside non-null case.

Thanks to Jiri Slaby <jirislaby@gmail.com> for noticing.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Cc: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Add event variants of the AIF widgets
Mark Brown [Fri, 3 Sep 2010 18:36:28 +0000 (19:36 +0100)]
ASoC: Add event variants of the AIF widgets

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: ak4642: Revive ak4642_snd_controls
Kuninori Morimoto [Fri, 3 Sep 2010 07:12:36 +0000 (16:12 +0900)]
ASoC: ak4642: Revive ak4642_snd_controls

This patch revive ak4642_snd_controls which was removed on
f0fba2ad1b6b53d5360125c41953b7afcd6deff0

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>
14 years agoASoC: pl022_ds.c: Add of_node_put to avoid memory leak
Julia Lawall [Tue, 31 Aug 2010 15:48:56 +0000 (17:48 +0200)]
ASoC: pl022_ds.c: Add of_node_put to avoid memory leak

Add a call to of_node_put in the error handling code following a call to
of_parse_phandle.

This patch also moves the existing call to of_node_put tothe end of the
error handling code, to make it possible to jump to of_node_put without
doing the other cleanup operations.  These appear to be disjoint
operations, so the ordering doesn't matter.

The semantic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
local idexpression x;
expression E,E1,E2;
statement S;
@@

*x =
(of_find_node_by_path
|of_find_node_by_name
|of_find_node_by_phandle
|of_get_parent
|of_get_next_parent
|of_get_next_child
|of_find_compatible_node
|of_match_node
|of_find_node_by_type
|of_find_node_with_property
|of_find_matching_node
|of_parse_phandle
)(...);
...
if (x == NULL) S
<... when != x = E
*if (...) {
  ... when != of_node_put(x)
      when != if (...) { ... of_node_put(x); ... }
(
  return <+...x...+>;
|
*  return ...;
)
}
...>
(
E2 = x;
|
of_node_put(x);
)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Timur Tabi <timur@freescale.com>
Acked-by: Liam Girdwood <lrg@slimlogic.uo.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: kirkwood: add alias to pcm module
Arnaud Patard (Rtp) [Thu, 2 Sep 2010 08:31:47 +0000 (10:31 +0200)]
ASoC: kirkwood: add alias to pcm module

Allow snd-soc-kirkwood autoloading by adding an alias.

Signed-off-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>
14 years agoASoC: Added a missing 32-bit PCM format, to the wm8994 codec.
Ian Lartey [Tue, 31 Aug 2010 22:56:34 +0000 (23:56 +0100)]
ASoC: Added a missing 32-bit PCM format, to the wm8994 codec.

Signed-off-by: Ian Lartey <ian@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Implement WM8994 DAC data source muxes
Mark Brown [Tue, 31 Aug 2010 18:39:48 +0000 (19:39 +0100)]
ASoC: Implement WM8994 DAC data source muxes

Allow selection of the channel used for input to the AIFnDAC signals.
This isn't integrated into DAPM since we treat the data as a single
mono channel until just beyond this selection so it ends up having
no visible effect on the routing.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Add sh_mobile_hdmi sound support
Kuninori Morimoto [Tue, 31 Aug 2010 05:47:07 +0000 (14:47 +0900)]
ASoC: Add sh_mobile_hdmi sound support

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>
14 years agoASoC: fsi-codec: Add FSI - HDMI support
Kuninori Morimoto [Tue, 31 Aug 2010 05:46:53 +0000 (14:46 +0900)]
ASoC: fsi-codec: Add FSI - HDMI support

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>
14 years agofbdev: sh-mobile: Add HDMI sound type selection
Kuninori Morimoto [Tue, 31 Aug 2010 05:46:41 +0000 (14:46 +0900)]
fbdev: sh-mobile: Add HDMI sound type selection

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>
14 years agoASoC: OpenRD Client : Fix naming breakage due to multicomponent support
Arnaud Patard (Rtp) [Mon, 30 Aug 2010 14:00:05 +0000 (16:00 +0200)]
ASoC: OpenRD Client : Fix naming breakage due to multicomponent support

multicomponent support added/changed some device name but added some typos,
breaking existing OpenRD Client support.

Signed-off-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>
14 years agoASoC: fsi-ak4642/fsi-da7210: modify dai link settings for card detect
Kuninori Morimoto [Mon, 30 Aug 2010 11:47:19 +0000 (20:47 +0900)]
ASoC: fsi-ak4642/fsi-da7210: modify dai link settings for card detect

This patch modify dai link
- platform_name: sh_fsi/sh_fsi2 are used for FSI driver
- codec_name: ak4642/ak4643 are used for ak4642 driver

This is quick hack. I should modify it more wisely in future

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>
14 years agoASoC: fsi: modify compile error
Kuninori Morimoto [Mon, 30 Aug 2010 10:40:26 +0000 (19:40 +0900)]
ASoC: fsi: modify 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>
14 years agoARM: S3C24XX: I2S multi-component-related fixes
Vasily Khoruzhick [Mon, 30 Aug 2010 08:28:09 +0000 (11:28 +0300)]
ARM: S3C24XX: I2S multi-component-related fixes

Export s3c_device_pcm for all S3C24xx-devices, not
only for S3C2440;
Fix device name for s3c_device_iis;

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Add HP iPAQ RX1950 support
Vasily Khoruzhick [Mon, 30 Aug 2010 08:28:08 +0000 (11:28 +0300)]
ASoC: Add HP iPAQ RX1950 support

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: uda1380: make driver more powersave-friendly
Vasily Khoruzhick [Mon, 30 Aug 2010 08:28:07 +0000 (11:28 +0300)]
ASoC: uda1380: make driver more powersave-friendly

Disable some codec modules in standby mode, completely disable
codec in off mode to save some power.
Fix suspend/resume: mark mixer regs as dirty on resume to
restore mixer values, otherwise driver produces no sound
(master is muted by default).

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Swap bias level enumeration
Jarkko Nikula [Tue, 31 Aug 2010 11:52:35 +0000 (14:52 +0300)]
ASoC: Swap bias level enumeration

Swapping the bias level enumeration is only meant to help debugging. It is
easier if number 0 means bias off and bigger number means bigger bias level.

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>
14 years agoASoC: fix au1x platform
Manuel Lauss [Thu, 26 Aug 2010 12:53:51 +0000 (14:53 +0200)]
ASoC: fix au1x platform

This patch fixes up the au1x audio platform after the multi-component
merge:
- compile fixes and updates to get DB1200 platform audio working again,
- removal of global variables in AC97/I2S/DMA(PCM) modules.

The AC97 part is limited to one instance only for now due to issues
with getting at driver data in the soc_ac97_ops.

Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: tlv320aic3x: Sanitize output controls
Jarkko Nikula [Fri, 27 Aug 2010 13:56:50 +0000 (16:56 +0300)]
ASoC: tlv320aic3x: Sanitize output controls

Currently output controls are not uniform. Some routes are adjusted by
mono controls that don't match to associated mixer switch, many routes are
not covered at all and stereo controls have following variants:

- L-to-L & R-to-R
- R-to-L & R-to-R
- L-to-L & R-to-L

This patch attempts to fix these issues. First, for the convenience, only
direct L-to-L, R-to-R and [L | R]-to-Mono routes are controlled by the
stereo controls. This logic is also used with the output pin mute controls
so all of them except mono output are controlled by stereo switches.

Then rest of the swapped L-to-R and R-to-L routes are controlled by the
mono controls that map to mixer switches with a same name. Mixers can then
associate these switches and volumes together.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: tlv320aic3x: Reimplement output mixers
Jarkko Nikula [Fri, 27 Aug 2010 13:56:49 +0000 (16:56 +0300)]
ASoC: tlv320aic3x: Reimplement output mixers

It turned out that the output mixers and their routes were misdefined: They
are not mixing output pins to internal signals but opposite. This has worked
for direct left-to-left and right-to-right routes since for those there are
complete routes. For swapped left-to-right and right-to-left routes this is
not working since there are no routes defined between them.

Another consequence is that those misdefined mixers are incorrectly routed
to several output pins leading unnecessary pin powerings even if there is no
route active to them.

Fix these by reimplementing the output mixers and routes as they are in
hardware. For completeness add also a few missing links between internal
signals and outputs.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: tlv320aic3x: Sort output pin control registers in header file
Jarkko Nikula [Fri, 27 Aug 2010 13:56:48 +0000 (16:56 +0300)]
ASoC: tlv320aic3x: Sort output pin control registers in header file

Each output pin has 7 consecutive control registers in tlv320aic3x register
map. First 6 of them control the signal mixing and one is for output level
and power control.

Sort these registers as they are sorted clearly in hardware, it makes also
definitions more readable and easier to pinpoint missing register
definitions.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: tlv320aic3x: Fix remaining output pin switch names
Jarkko Nikula [Fri, 27 Aug 2010 13:56:47 +0000 (16:56 +0300)]
ASoC: tlv320aic3x: Fix remaining output pin switch names

Bit 3 in output pin_CTRL register mutes the whole output pin not just the
route from DAC so remove misleading DAC from control name. Currently only
"Line[L | R] Playback Switch" were correct.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: ad1980: remove unneeded function declaration
Uwe Kleine-König [Tue, 24 Aug 2010 13:09:41 +0000 (15:09 +0200)]
ASoC: ad1980: remove unneeded function declaration

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Complete supported clock ratios and rate constraints for wm8741
Ian Lartey [Fri, 27 Aug 2010 14:26:27 +0000 (15:26 +0100)]
ASoC: Complete supported clock ratios and rate constraints for wm8741

Signed-off-by: Ian Lartey <ian@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoMerge branch 'for-2.6.36' into for-2.6.37
Mark Brown [Fri, 27 Aug 2010 19:10:22 +0000 (20:10 +0100)]
Merge branch 'for-2.6.36' into for-2.6.37

14 years agoASoC: soc-core: fix debugfs_pop_time file permissions
Axel Lin [Fri, 27 Aug 2010 02:34:27 +0000 (10:34 +0800)]
ASoC: soc-core: fix debugfs_pop_time file permissions

I think this is a typo, debugfs_pop_time should not be executable.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimloogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoARM: S3C64XX: Fix fallthrough bug in i2sv3 gpio configuration, improve logging
Dimitris Papastamos [Thu, 26 Aug 2010 15:07:23 +0000 (16:07 +0100)]
ARM: S3C64XX: Fix fallthrough bug in i2sv3 gpio configuration, improve logging

If the platform device id is 1, the code will fallthrough the
case and incorrectly return -EINVAL. Add a break to avoid fallthrough.

Make logging slightly more verbose by including the device id.

This fixes an issue only present in multi-component.

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>
14 years agoMerge remote branch 'broonie-asoc/for-2.6.37' into for-2.6.37
Mark Brown [Fri, 27 Aug 2010 10:22:57 +0000 (11:22 +0100)]
Merge remote branch 'broonie-asoc/for-2.6.37' into for-2.6.37

14 years agoASoC: pxa-ssp: fix a memory leak in pxa_ssp_remove()
Axel Lin [Wed, 25 Aug 2010 08:59:11 +0000 (16:59 +0800)]
ASoC: pxa-ssp: fix a memory leak in pxa_ssp_remove()

The "priv" allocated in pxa_ssp_probe() should be kfreed in pxa_ssp_remove().

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>
14 years agoMerge branch 'for-2.6.36' into for-2.6.37
Mark Brown [Mon, 23 Aug 2010 12:38:11 +0000 (13:38 +0100)]
Merge branch 'for-2.6.36' into for-2.6.37

14 years agoASoC: Enable autoloading of pxa2xx CPU I2S driver with module alias
Ian Lartey [Fri, 20 Aug 2010 16:18:45 +0000 (17:18 +0100)]
ASoC: Enable autoloading of pxa2xx CPU I2S driver with module alias

Signed-off-by: Ian Lartey <ian@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Make codec dai naming for WM8741 consistent
Ian Lartey [Fri, 20 Aug 2010 16:18:44 +0000 (17:18 +0100)]
ASoC: Make codec dai naming for WM8741 consistent

Signed-off-by: Ian Lartey <ian@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: pxa2xx-i2s is the proper name of the I2S DAI, not pxa-i2s.
Ian Lartey [Fri, 20 Aug 2010 16:18:43 +0000 (17:18 +0100)]
ASoC: pxa2xx-i2s is the proper name of the I2S DAI, not pxa-i2s.

Signed-off-by: Ian Lartey <ian@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: i.MX ssi: use SSI_STCCR in synchronous mode
Sascha Hauer [Mon, 23 Aug 2010 06:54:02 +0000 (08:54 +0200)]
ASoC: i.MX ssi: use SSI_STCCR in synchronous mode

In synchronous mode the SSI_SRCCR values are ignored. Instead
SSI_STCCR must be used for both receiving and transmitting.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Add build infrastructure for WL1273
Mark Brown [Fri, 20 Aug 2010 16:24:51 +0000 (17:24 +0100)]
ASoC: Add build infrastructure for WL1273

The Makefile and Kconfig updates for WL1273 appear to have been mising
from the patch posted, add them.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Log WM8994 separate ADC LRCLKs every time we configure
Mark Brown [Mon, 23 Aug 2010 09:54:43 +0000 (10:54 +0100)]
ASoC: Log WM8994 separate ADC LRCLKs every time we configure

This makes it that little bit easier to spot the diagnostics in the
logs.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoMerge remote branch 'broonie-asoc/for-2.6.37' into for-2.6.37
Liam Girdwood [Mon, 23 Aug 2010 11:58:01 +0000 (12:58 +0100)]
Merge remote branch 'broonie-asoc/for-2.6.37' into for-2.6.37

14 years agoomap: rx51: Remove redefinition of rx51_aic3x_data
Jarkko Nikula [Mon, 23 Aug 2010 07:35:05 +0000 (10:35 +0300)]
omap: rx51: Remove redefinition of rx51_aic3x_data

Redefinition of rx51_aic3x_data got introduced when merging upstread changes
for 2.6.36 and ASoC Multi-Component Support.

This must go together with multi-component commit f0fba2a.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Cc: Tony Lindgren <tony@atomide.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: omap: rx51: Use gpio_set_value_cansleep for speaker amp control
Jarkko Nikula [Mon, 23 Aug 2010 07:36:41 +0000 (10:36 +0300)]
ASoC: omap: rx51: Use gpio_set_value_cansleep for speaker amp control

Speaker amplifier is controlled by TWL4030 GPIO which may sleep. Therefore
use gpio_set_value_cansleep to get rid of runtime warning that is introduced
after the commit 9c4ba94 and to get a stack trace if ever executing this
code in atomic context.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Fix tlv320aic3x GPIO initialization
Jarkko Nikula [Mon, 23 Aug 2010 07:38:40 +0000 (10:38 +0300)]
ASoC: Fix tlv320aic3x GPIO initialization

aic3x_init does a soft reset first and thus TLV320AIC3x GPIO setup must be
done after doing the basic init. Before multi-component the init was done
at i2c probe time and GPIO setup at soc probe time.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: mpc8610: replace of_device with platform_device
Timur Tabi [Thu, 19 Aug 2010 20:26:58 +0000 (15:26 -0500)]
ASoC: mpc8610: replace of_device with platform_device

'struct of_device' no longer exists, and its functionality has been merged
into platform_device.  Update the MPC8610 HPCD audio drivers (fsl_ssi, fsl_dma,
and mpc8610_hpcd) accordingly.

Also add a #include for slab.h, which is now needed for kmalloc and kfree.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoMerge branch 'for-2.6.37' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc...
Mark Brown [Fri, 20 Aug 2010 16:19:27 +0000 (17:19 +0100)]
Merge branch 'for-2.6.37' of git://git./linux/kernel/git/lrg/asoc-2.6 into for-2.6.37

14 years agoASoC: Don't call DAI registration for CODECs with no DAI
Mark Brown [Wed, 18 Aug 2010 19:20:55 +0000 (20:20 +0100)]
ASoC: Don't call DAI registration for CODECs with no DAI

Otherwise we generate worrying (but benign) warnings for amps.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: TI WL1273 FM Radio Codec.
Matti J. Aaltonen [Fri, 20 Aug 2010 09:32:46 +0000 (12:32 +0300)]
ASoC: TI WL1273 FM Radio Codec.

This is an ALSA codec for the Texas Instruments WL1273 FM Radio.

Signed-off-by: Matti J. Aaltonen <matti.j.aaltonen@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: add support for the Freescale P1022 DS reference board
Timur Tabi [Thu, 19 Aug 2010 22:11:40 +0000 (17:11 -0500)]
ASoC: add support for the Freescale P1022 DS reference board

The Freescale P1022 is a dual-core e500-based SOC with multimedia capabilities,
specifically the same SSI audio controller on the MPC8610.  The P1022 DS
reference board includes a P1022 and a Wolfson Microelectronics WM8776
codec.

Signed-off-by: Timur Tabi <timur@freescale.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: remove include of pxa2xx-pcm.h in pxa2xx-ac97.c
Axel Lin [Fri, 20 Aug 2010 05:23:36 +0000 (13:23 +0800)]
ASoC: remove include of pxa2xx-pcm.h in pxa2xx-ac97.c

Fix reference to moved header file, which was unused anyway.
This change fixes below build error:
  CC      sound/soc/pxa/pxa2xx-ac97.o
sound/soc/pxa/pxa2xx-ac97.c:27:24: error: pxa2xx-pcm.h: No such file or directory
make[3]: *** [sound/soc/pxa/pxa2xx-ac97.o] Error 1
make[2]: *** [sound/soc/pxa] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Add support for tlv320aic3007 to tlv320aic3x codec.
Randolph Chung [Fri, 20 Aug 2010 04:47:53 +0000 (12:47 +0800)]
ASoC: Add support for tlv320aic3007 to tlv320aic3x codec.

This patch adds support for the tlv320aic3007 codec to the tlv320aic3x
driver.

The tlv320aic3007 is similar to the aic31, but has an additional class-D
speaker amp. The speaker amp control register overlaps with the mono
output register of other codecs in this family, so we add logic to
identify the actual codec being registered to set things up accordingly.

Signed-off-by: Randolph Chung <tausq@parisc-linux.org>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: add support for separate codec DAIs to the fsl_dma driver
Timur Tabi [Thu, 19 Aug 2010 21:43:42 +0000 (16:43 -0500)]
ASoC: add support for separate codec DAIs to the fsl_dma driver

Some codecs have separate DAIs for playback and capture, so the DMA driver
should allocate a DMA buffer only for the streams that are valid when the
driver is opened.

Signed-off-by: Timur Tabi <timur@freescale.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: e740_wm9705 - free gpio in e740_exit()
Axel Lin [Thu, 19 Aug 2010 06:40:25 +0000 (14:40 +0800)]
ASoC: e740_wm9705 - free gpio in e740_exit()

In e740_init(), we call gpio_request() for
GPIO_E740_MIC_ON, GPIO_E740_AMP_ON and GPIO_E740_WM9705_nAVDD2.
We should free the these gpio accordingly in e740_exit().

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>
14 years agoASoC: Use a more adequate name for the CX20442 codec DAI
Janusz Krzysztofik [Thu, 19 Aug 2010 13:15:50 +0000 (15:15 +0200)]
ASoC: Use a more adequate name for the CX20442 codec DAI

In the process of unification of codec DAI names while implementing
multi-component, the CX20442 codec DAI has been renamed to "cx20442-hifi".
This new name seems not adequate for a 8kHz voice codec.

Use a better name, "cx20442-voice", as suggested by Liam Girdwood.

Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Configure symmetric rates for tlv320aic3x
Randolph Chung [Thu, 19 Aug 2010 11:06:17 +0000 (12:06 +0100)]
ASoC: Configure symmetric rates for tlv320aic3x

The tlv320aic3x codec driver only supports symmetric rates for capture/
playback. Set the flag in the DAI accordingly.

Signed-off-by: Randolph Chung <tausq@parisc-linux.org>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoasoc/multi-component: fsl: add support for variable SSI FIFO depth
Timur Tabi [Fri, 6 Aug 2010 17:16:12 +0000 (12:16 -0500)]
asoc/multi-component: fsl: add support for variable SSI FIFO depth

Add code that programs the DMA and SSI controllers differently based on the
FIFO depth of the SSI.

The SSI devices on the MPC8610 and the P1022 are identical in every way except
one: the transmit and receive FIFO depth.  On the MPC8610, the depth is eight.
On the P1022, it's fifteen.  The device tree nodes for the SSI include a
"fsl,fifo-depth" property that specifies the FIFO depth.

Signed-off-by: Timur Tabi <timur@freescale.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: add saarb machine driver for 88pm860x
Haojian Zhuang [Wed, 18 Aug 2010 16:36:30 +0000 (00:36 +0800)]
ASoC: add saarb machine driver for 88pm860x

88PM860x codec is used in Marvell saarb development board. 88PM860x codec
is used as master mode for SSP communication. Only I2S format is supported.

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: add tavorevb3 machine driver for 88pm860x
Haojian Zhuang [Wed, 18 Aug 2010 16:36:00 +0000 (00:36 +0800)]
ASoC: add tavorevb3 machine driver for 88pm860x

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: add 88pm860x codec driver
Haojian Zhuang [Wed, 18 Aug 2010 16:35:25 +0000 (00:35 +0800)]
ASoC: add 88pm860x codec driver

Add 88PM860x codec driver. 88PM860x codec supports two interfaces. And it
also supports headset/mic/hook/short detection.

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Add simplfied device registration for Atmel SSC devices
Mark Brown [Wed, 18 Aug 2010 15:29:37 +0000 (16:29 +0100)]
ASoC: Add simplfied device registration for Atmel SSC devices

Since the SSC is already being registered as a device under arch and
the DMA and SSC hardware are pretty much the same provide a simplified
device registration function for the Atmel SSC which will add the
ASoC-specific devices within the ASoC code, parenting the SSC device
off the actual SSC device. Also use it in the sam9g20-ek driver.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Fix device name for AT91SAM9G20-EK devices
Mark Brown [Wed, 18 Aug 2010 15:25:59 +0000 (16:25 +0100)]
ASoC: Fix device name for AT91SAM9G20-EK devices

A couple of typos in the multi-component conversion.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Support non-crystal master clocks for WM8731
Mark Brown [Tue, 17 Aug 2010 22:40:24 +0000 (23:40 +0100)]
ASoC: Support non-crystal master clocks for WM8731

Instead of unconditionally enabling the crystal oscillator on the WM8731
only enable it when explicitly selected via set_sysclk(), allowing machine
drivers to specify that they drive a clock into MCLK alone. This avoids
any conflicts between the oscillator and the external MCLK source and saves
power for systems which do not need the oscillator.

This should also deliver a small power saving on systems using the crystal
since the oscillator will only be enabled when the ADC or DAC is active.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoMerge remote branch 'broonie-asoc/for-2.6.37' into for-2.6.37
Liam Girdwood [Wed, 18 Aug 2010 13:05:39 +0000 (14:05 +0100)]
Merge remote branch 'broonie-asoc/for-2.6.37' into for-2.6.37

14 years agoASoC: core - fix build warning on x86_64
Liam Girdwood [Tue, 17 Aug 2010 23:30:30 +0000 (00:30 +0100)]
ASoC: core - fix build warning on x86_64

Output size_t type as a "%Zu" to avoid warnings.

Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: core - fix build warning on x86_64
Liam Girdwood [Tue, 17 Aug 2010 23:25:12 +0000 (00:25 +0100)]
ASoC: core - fix build warning on x86_64

Output size_t type as a "%Zu" to avoid warnings.

Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Support non-crystal master clocks for WM8731
Mark Brown [Tue, 17 Aug 2010 22:40:24 +0000 (23:40 +0100)]
ASoC: Support non-crystal master clocks for WM8731

Instead of unconditionally enabling the crystal oscillator on the WM8731
only enable it when explicitly selected via set_sysclk(), allowing machine
drivers to specify that they drive a clock into MCLK alone. This avoids
any conflicts between the oscillator and the external MCLK source and saves
power for systems which do not need the oscillator.

This should also deliver a small power saving on systems using the crystal
since the oscillator will only be enabled when the ADC or DAC is active.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Fix a few more PXA build errors
Mark Brown [Tue, 17 Aug 2010 22:35:31 +0000 (23:35 +0100)]
ASoC: Fix a few more PXA build errors

Dead pxa2xx-pcm.h includes and a missing ,

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: multi-component - Drop board-n8x0.c changes
Jarkko Nikula [Tue, 17 Aug 2010 06:58:02 +0000 (09:58 +0300)]
ASoC: multi-component - Drop board-n8x0.c changes

These will conflict with queued changes to board-n8x0.c coming from
linux-omap tree. Only side effect from this dropping is that the integrated
digital microphone on Nokia N810 will stop working when ASoC multi-component
is merged.

As currently the N810 is not very usable in mainline, I consider this as a
minor issue that can be fixed in linux-omap tree the after the
multi-component is merged.

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>
14 years agoASoC: Multi-component: JZ4740: QI_LB60 board fixes
Lars-Peter Clausen [Sun, 15 Aug 2010 15:48:47 +0000 (17:48 +0200)]
ASoC: Multi-component: JZ4740: QI_LB60 board fixes

This patch contains two small fixes for the sound board driver for the qi_lb60
introduced by the multi-component patches:
* Remove unnecessary includes: Those includes where only used to get the
  definitions for the DAI devices and are thus not needed anymore.
* Fix a typo.

Signed-off-By: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
14 years agoASoC: Remove unused WM8974 private data
Mark Brown [Mon, 16 Aug 2010 19:06:26 +0000 (20:06 +0100)]
ASoC: Remove unused WM8974 private data

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Fix argument ordering for snd_soc_update_bits() in WM8580
Mark Brown [Mon, 16 Aug 2010 18:27:05 +0000 (19:27 +0100)]
ASoC: Fix argument ordering for snd_soc_update_bits() in WM8580

Reported-by: Seungwhan Youn <claude.youn@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoASoC: Fix WM8580 CLKSEL mask selection
Mark Brown [Mon, 16 Aug 2010 18:26:41 +0000 (19:26 +0100)]
ASoC: Fix WM8580 CLKSEL mask selection

The RX and TX directions were inverted.

Reported-by: Seungwhan Youn <claude.youn@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
14 years agoMerge branch 'for-2.6.36' into for-2.6.37
Mark Brown [Mon, 16 Aug 2010 17:42:58 +0000 (18:42 +0100)]
Merge branch 'for-2.6.36' into for-2.6.37

Fairly simple conflicts, the most serious ones are the i.MX ones which I
suspect now need another rename.

Conflicts:
arch/arm/mach-mx2/clock_imx27.c
arch/arm/mach-mx2/devices.c
arch/arm/mach-omap2/board-rx51-peripherals.c
arch/arm/mach-omap2/board-zoom2.c
sound/soc/fsl/mpc5200_dma.c
sound/soc/fsl/mpc5200_dma.h
sound/soc/fsl/mpc8610_hpcd.c
sound/soc/pxa/spitz.c

14 years agoASoC: Remove DSP mode support for WM8776
Mark Brown [Mon, 16 Aug 2010 10:46:57 +0000 (11:46 +0100)]
ASoC: Remove DSP mode support for WM8776

This is not supported by current hardware revisions.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Cc: stable@kernel.org
14 years agoLinux 2.6.36-rc1 v2.6.36-rc1
Linus Torvalds [Mon, 16 Aug 2010 00:41:37 +0000 (17:41 -0700)]
Linux 2.6.36-rc1

14 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux...
Linus Torvalds [Mon, 16 Aug 2010 00:37:07 +0000 (17:37 -0700)]
Merge branch 'release' of git://git./linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  gcc-4.6: ACPI: fix unused but set variables in ACPI
  ACPI thermal: make procfs I/F depend on CONFIG_ACPI_PROCFS
  ACPI video: make procfs I/F depend on CONFIG_ACPI_PROCFS
  ACPI processor: remove deprecated ACPI procfs I/F
  ACPI power_resource: remove unused procfs I/F
  ACPI: remove deprecated ACPI procfs I/F
  ACPI: introduce drivers/acpi/sysfs.c
  ACPI: introduce module parameter acpi.aml_debug_output
  ACPI: introduce drivers/acpi/debugfs.c
  ACPI, APEI, ERST debug support
  ACPI, APEI, Manage GHES as platform devices
  ACPI, APEI, Rename CPER and GHES severity constants
  ACPI, APEI, Fix a typo of error path of apei_resources_request
  ACPI / ACPICA: Fix reference counting problems with GPE handlers
  ACPI: Add the check of ADR flag in course of finding ACPI handle for PCI device
  ACPI / Sleep: Drop acpi_suspend_finish()
  ACPI / Sleep: Consolidate suspend and hibernation routines
  ACPI / Wakeup: Simplify enabling of wakeup devices
  ACPI / Sleep: Rework enabling wakeup devices
  ACPI / Sleep: Free NVS copy if suspending of devices fails

Fixed up totally buggered "ACPI: fix unused but set variables in ACPI"
patch that doesn't even compile in the merge.

Thanks to Sedat Dilek <sedat.dilek@googlemail.com> for noticing the
breakage before I even pulled.  And a big "Grrr.." at Len for not even
bothering to compile the tree before asking me to pull.

14 years agoMerge git://git.infradead.org/iommu-2.6
Linus Torvalds [Mon, 16 Aug 2010 00:34:20 +0000 (17:34 -0700)]
Merge git://git.infradead.org/iommu-2.6

* git://git.infradead.org/iommu-2.6:
  intel-iommu: Fix 32-bit build warning with __cmpxchg()
  intr-remap: allow disabling source id checking

14 years agoMerge git://git.infradead.org/mtd-2.6
Linus Torvalds [Mon, 16 Aug 2010 00:32:47 +0000 (17:32 -0700)]
Merge git://git.infradead.org/mtd-2.6

* git://git.infradead.org/mtd-2.6:
  mtd/nand_ids: Fix buswidth
  mtd/m25p80: fix test for end of loop
  mtd/m25p80: retlen is never NULL
  MIPS: Fix gen_nand probe structures contents
  gen_nand: Test if nr_chips field is valid
  BFIN: Fix gen_nand probe structures contents
  nand/denali: move all hardware initialization work to denali_hw_init
  nand/denali: Add a page check in denali_read_page & denali_read_page_raw
  nand/denali: use cpu_relax() while waiting for hardware interrupt
  nand/denali: change read_status function method
  nand/denali: Fixed check patch warnings
  ARM: Fix gen_nand probe structures contents
  mtd/nand_base: fix kernel-doc warnings & typos
  nand/denali: use dev_xx debug function to replace nand_dbg_print and some printk
  nand/denali: Fixed handle ECC error bugs
  nand/denali: use iowrite32() to replace denali_write32()
  nand/denali: Fixed probe function bugs

14 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile
Linus Torvalds [Mon, 16 Aug 2010 00:31:43 +0000 (17:31 -0700)]
Merge git://git./linux/kernel/git/cmetcalf/linux-tile

* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
  arch/tile: don't validate CROSS_COMPILE needlessly
  arch/tile: export only COMMAND_LINE_SIZE to userspace.
  arch/tile: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN
  arch/tile: Rename the hweight() implementations to __arch_hweight()
  arch/tile: extend syscall ABI to set r1 on return as well.
  arch/tile: Various cleanups.
  arch/tile: support backtracing on TILE-Gx
  arch/tile: Fix a couple of issues with the COMPAT code for TILE-Gx.
  arch/tile: Use separate, better minsec values for clocksource and sched_clock.
  arch/tile: correct a bug in freeing bootmem by VA for the optional second initrd.
  arch: tile: mm: pgtable.c: Removed duplicated #include
  arch: tile: kernel/proc.c Removed duplicated #include
  Add fanotify syscalls to <asm-generic/unistd.h>.
  arch/tile: support new kunmap_atomic() naming convention.
  tile: remove unused ISA_DMA_THRESHOLD define

Conflicts in arch/tile/configs/tile_defconfig (pick the mainline version
with the reduced defconfig).

14 years agoarch/tile: don't validate CROSS_COMPILE needlessly
Chris Metcalf [Sun, 15 Aug 2010 19:01:45 +0000 (15:01 -0400)]
arch/tile: don't validate CROSS_COMPILE needlessly

With this change, the arch/tile Makefile will only check for a valid
combination of CROSS_COMPILE vs "uname -m" for a few common targets
that are typically the ones we get wrong (vmlinux, all, and modules).
The change handles the case of an empty "make" goal like "make all".

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
14 years agomm: fix up some user-visible effects of the stack guard page
Linus Torvalds [Sun, 15 Aug 2010 18:35:52 +0000 (11:35 -0700)]
mm: fix up some user-visible effects of the stack guard page

This commit makes the stack guard page somewhat less visible to user
space. It does this by:

 - not showing the guard page in /proc/<pid>/maps

   It looks like lvm-tools will actually read /proc/self/maps to figure
   out where all its mappings are, and effectively do a specialized
   "mlockall()" in user space.  By not showing the guard page as part of
   the mapping (by just adding PAGE_SIZE to the start for grows-up
   pages), lvm-tools ends up not being aware of it.

 - by also teaching the _real_ mlock() functionality not to try to lock
   the guard page.

   That would just expand the mapping down to create a new guard page,
   so there really is no point in trying to lock it in place.

It would perhaps be nice to show the guard page specially in
/proc/<pid>/maps (or at least mark grow-down segments some way), but
let's not open ourselves up to more breakage by user space from programs
that depends on the exact deails of the 'maps' file.

Special thanks to Henrique de Moraes Holschuh for diving into lvm-tools
source code to see what was going on with the whole new warning.

Reported-and-tested-by: François Valenduc <francois.valenduc@tvcablenet.be
Reported-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
14 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
Linus Torvalds [Sun, 15 Aug 2010 18:22:00 +0000 (11:22 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/tiwai/sound-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
  ALSA: sound/usb/format: silence uninitialized variable warnings
  MAINTAINERS: Add Ian Lartey as comaintaner for Wolfson devices
  MAINTAINERS: Make Wolfson entry also cover CODEC drivers
  ASoC: Only tweak WM8994 chip configuration on devices up to rev D
  ASoC: Optimise DSP performance for WM8994
  ALSA: hda - Fix dynamic ADC change working again
  ALSA: hda - Restrict PCM parameters per ELD information over HDMI
  sound: oss: sh_dac_audio.c removed duplicated #include

14 years agoMerge branch 'idle-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb...
Linus Torvalds [Sun, 15 Aug 2010 18:17:52 +0000 (11:17 -0700)]
Merge branch 'idle-release' of git://git./linux/kernel/git/lenb/linux-idle-2.6

* 'idle-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6:
  intel_idle: recognize Lincroft Atom Processor
  intel_idle: no longer EXPERIMENTAL
  intel_idle: disable module support
  intel_idle: add support for Westmere-EX
  intel_idle: delete power_policy modparam, and choose substate functions
  intel_idle: delete substates DEBUG modparam

14 years agoarch/tile: export only COMMAND_LINE_SIZE to userspace.
Chris Metcalf [Sun, 15 Aug 2010 16:14:41 +0000 (12:14 -0400)]
arch/tile: export only COMMAND_LINE_SIZE to userspace.

This fixes a failure in "make headers_check" for tile.
I hadn't realized this file was exported to userspace by default.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
14 years agoarch/tile: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN
Chris Metcalf [Sat, 14 Aug 2010 00:43:39 +0000 (20:43 -0400)]
arch/tile: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN

See commit a6eb9fe105d5de0053b261148cee56c94b4720ca.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Acked-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>