landing-teams/working/ti/kernel.git
2 years agoASoC: omap-abe-twl6040: Always update jack detection. tracking-topic-audio-3.4
Sebastien Guiriec [Wed, 20 Jun 2012 02:15:45 +0000 (10:15 +0800)] 
ASoC: omap-abe-twl6040: Always update jack detection.

Headset Jack detect pin need to be added for all the board in order
to get audio record working on PandaBoard. Without this patch the
BIAS of the microphone or Line IN is not set.

Signed-off-by: Sebastien Guirec <s-guiriec@ti.com>
2 years agoARM: OMAP4+: AESS: enable internal auto-gating during initial setup
Paul Walmsley [Mon, 11 Jun 2012 12:58:16 +0000 (20:58 +0800)] 
ARM: OMAP4+: AESS: enable internal auto-gating during initial setup

Enable the AESS auto-gating control bit during AESS hwmod setup.  This
fixes the following boot warning on OMAP4:

omap_hwmod: aess: _wait_target_disable failed

Without this patch, the AESS IP block does not indicate to the PRCM
that it is idle after it is reset.  This prevents some types of SoC
power management until something sets the auto-gating control bit.

[Roger Q] Ported to 3.4
Fixes OFF mode problem with AESS stuck in transition state.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Benoît Cousson <b-cousson@ti.com>
Cc: Péter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Roger Quadros <rogerq@ti.com>
2 years agoasoc disable dmic
Andy Green [Mon, 11 Jun 2012 12:50:17 +0000 (20:50 +0800)] 
asoc disable dmic

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoASoC: OMAP ABE: Restore auto-gating after pm_runtime_get_sync()
Gabriel M. Beddingfield [Thu, 31 May 2012 08:51:35 +0000 (16:51 +0800)] 
ASoC: OMAP ABE: Restore auto-gating after pm_runtime_get_sync()

After calling pm_runtime_put_sync(), the ABE can lose its clocks,
which clear the registers.  When pm_runtime_get_sync() is called, the
clocks are restored and the registers are set to their default values.
Since auto-gating is off by default, it needs to be reset every time
the clocks are restored

This patch does this by enforcing the use of the internal
abe_dsp_pm_get() and abe_dsp_pm_put() instead of the raw pm_*
functions.  After calling pm_runtime_get_sync(), the clocks are
restored by a new ABE function abe_set_auto_gating().

There are two exceptions to using the abe_dsp_pm_*() functions:

  1. In the abe_probe() method, auto-gating is restored when the
     firmware is loaded.  In addition, the registers can not be
     referenced immediately after calling pm_runtime_get_sync().
     Therefore, the calls are handled separately.

  2. In abe_irq_handler() pm_runtime_put_sync_suspend() is used
     instead of pm_runtime_put_sync().  It is left in tact.

Signed-off-by: Gabriel M. Beddingfield <gabrbedd@ti.com>
Signed-off-by: Sebastien Jan <s-jan@ti.com>
2 years agoomap: abe: plug-in device scale
Sebastien Jan [Thu, 31 May 2012 08:50:57 +0000 (16:50 +0800)] 
omap: abe: plug-in device scale

Enable OPP scaling for audio domain (device_scale callback).
However, keep in mind that IVA domain OPP50 is deactivated
(so ABE OPP50 currently ties to IVA OPP100).

Signed-off-by: Sebastien Jan <s-jan@ti.com>
2 years agoUBUNTU: SAUCE: snd_soc_abe_twl6040: add a dummy symbol to enforce dependency on snd_s...
Paolo Pisati [Wed, 30 May 2012 04:13:52 +0000 (12:13 +0800)] 
UBUNTU: SAUCE: snd_soc_abe_twl6040: add a dummy symbol to enforce dependency on snd_soc_omap and snd_soc_mcpdm

Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
2 years agoUBUNTU: SAUCE: omap4_abe: reuse #included firmware
Paolo Pisati [Wed, 30 May 2012 04:12:07 +0000 (12:12 +0800)] 
UBUNTU: SAUCE: omap4_abe: reuse #included firmware

While there're comments in the code about dinamically loading the firmware,
the blob is always statically #included[1], and we don't have the firmware
as an external file: reuse the fw array.

[1] = see sound/soc/omap/abe/abe_ini.c::aess_firmware_array

Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
2 years agoUBUNTU: SAUCE: create aess device at boot time even when snd_soc_abe=m
Paolo Pisati [Wed, 30 May 2012 04:09:09 +0000 (12:09 +0800)] 
UBUNTU: SAUCE: create aess device at boot time even when snd_soc_abe=m

snc_soc_abe* attaches to aess, make sure the device is created even when
snd_soc_abe=m.

Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
2 years agoUBUNTU: SAUCE: omap-pm: export missing symbol (omap_pm_get_dev_context_loss_count)
Paolo Pisati [Wed, 30 May 2012 03:57:37 +0000 (11:57 +0800)] 
UBUNTU: SAUCE: omap-pm: export missing symbol (omap_pm_get_dev_context_loss_count)

omap_pm_get_dev_context_loss_count() is referenced in many places, among which
snd_abe: export it so we can compile snd_abe*=m.

Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
2 years agoASoC: OMAP ABE: Do not disable IO task before OFF mode
Sebastien Guiriec [Mon, 28 May 2012 10:22:13 +0000 (18:22 +0800)] 
ASoC: OMAP ABE: Do not disable IO task before OFF mode

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoASoC: omap-abe-twl6040: Make sure we dont add DMIC rous for Panda
Liam Girdwood [Mon, 28 May 2012 10:21:57 +0000 (18:21 +0800)] 
ASoC: omap-abe-twl6040: Make sure we dont add DMIC rous for Panda

Pandaboard does not have DMICs so don't add any routes.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: omap-dmic: ABE support
Peter Ujfalusi [Mon, 28 May 2012 10:21:46 +0000 (18:21 +0800)] 
ASoC: omap-dmic: ABE support

Implementation of EBE integration with the DMIC driver.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
ASoC: omap-dmic: ABE support

Implementation of ABE integration with the DMIC driver.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoASoC: OMAP ABE: put back Mono mixer functionality.
Sebastien Guiriec [Mon, 28 May 2012 10:21:37 +0000 (18:21 +0800)] 
ASoC: OMAP ABE: put back Mono mixer functionality.

Update generic code for ABE port in order to enable/disable mono
mixer configuration

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoARM: OMAP5: board-omap5evm: Update audio parameter for AMIC
Sebastien Guiriec [Mon, 28 May 2012 10:21:27 +0000 (18:21 +0800)] 
ARM: OMAP5: board-omap5evm: Update audio parameter for AMIC

Update audio data in order to get correct registration of AMIC and
headset Mic on OMAP5 board.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoASoC: omap-abe-twl6040: Add DMIC DAIs into audio path
Liam Girdwood [Mon, 28 May 2012 10:21:10 +0000 (18:21 +0800)] 
ASoC: omap-abe-twl6040: Add DMIC DAIs into audio path

Make sure we connect the DMIC DAIs to the ABE

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: omap dmic: Add stream names for each ABE DAI
Liam Girdwood [Mon, 28 May 2012 10:21:00 +0000 (18:21 +0800)] 
ASoC: omap dmic: Add stream names for each ABE DAI

Add stream names for ABE DAIs stream DAI matching.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoARM: OMAP5: clockdata: Add fclk alias for DMIC
Sebastien Guiriec [Mon, 28 May 2012 10:19:39 +0000 (18:19 +0800)] 
ARM: OMAP5: clockdata: Add fclk alias for DMIC

Create an alias for the PAD CLK as 'pad_clks_ck'.
OMAP4 colck data uses pad_clks_ck for the clock name.
In order to get the DMIC clock parenting working we need to
have consistent names for the pad clock.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoASoC: ABE - Unmute Tones DL2 gain when appropriate.
Gabriel M. Beddingfield [Mon, 28 May 2012 10:19:24 +0000 (18:19 +0800)] 
ASoC: ABE - Unmute Tones DL2 gain when appropriate.

When unmuting the "Tones" gains, only the DL1 gain was being un-muted.
This was obviously a typo.

Signed-off-by: Gabriel M. Beddingfield <gabrbedd@ti.com>
2 years agoASoC: OMAP ABE: Remove build warning for ABE port.
Sebastien Guiriec [Mon, 28 May 2012 10:19:14 +0000 (18:19 +0800)] 
ASoC: OMAP ABE: Remove build warning for ABE port.

Remove build warning form ABE port initialization

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoARM: OMAP5: clockdata: Add fclk alias for DMIC
Sebastien Guiriec [Mon, 28 May 2012 10:16:48 +0000 (18:16 +0800)] 
ARM: OMAP5: clockdata: Add fclk alias for DMIC

Create an alias for the DMIC FCLK as 'dmic_fck'.
OMAP4 colck data uses dmic_fck for the functional clock name.
In order to get the DMIC clock parenting working we need to
have consistent names for the functional clock.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoASoC: OMAP ABE: Update to ABE Firmware 09.56
Sebastien Guiriec [Mon, 28 May 2012 10:16:35 +0000 (18:16 +0800)] 
ASoC: OMAP ABE: Update to ABE Firmware 09.56

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoASoC: dapm: Make sure all dapm contexts are updated
Liam Girdwood [Mon, 28 May 2012 10:16:19 +0000 (18:16 +0800)] 
ASoC: dapm: Make sure all dapm contexts are updated

Make sure we set the bias level for all DAPM contexts when
changing level.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoconfig audio
Andy Green [Fri, 20 Apr 2012 07:21:46 +0000 (15:21 +0800)] 
config audio

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agouplevel 3.4 rc4 usb fixes
Andy Green [Sun, 22 Apr 2012 23:51:19 +0000 (07:51 +0800)] 
uplevel 3.4 rc4 usb fixes

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoSOC OMAP HACK remove dmic as selection from abe
Andy Green [Fri, 20 Apr 2012 06:46:31 +0000 (14:46 +0800)] 
SOC OMAP HACK remove dmic as selection from abe

Otherwise dmic.2 moans about invalid dma memory from hwmod

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoOMAP5 OPP fixes
Andy Green [Fri, 20 Apr 2012 07:11:02 +0000 (15:11 +0800)] 
OMAP5 OPP fixes

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoOMAP5 devices fix missing mcbsp init
Andy Green [Fri, 20 Apr 2012 07:09:39 +0000 (15:09 +0800)] 
OMAP5 devices fix missing mcbsp init

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agodebug OPP hear about problems
Andy Green [Fri, 20 Apr 2012 07:08:27 +0000 (15:08 +0800)] 
debug OPP hear about problems

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoOMAP5 board add in twl6040 i2c data
Andy Green [Fri, 20 Apr 2012 07:07:31 +0000 (15:07 +0800)] 
OMAP5 board add in twl6040 i2c data

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoOMAP5 id call omap5xxx check revision
Andy Green [Fri, 20 Apr 2012 07:06:02 +0000 (15:06 +0800)] 
OMAP5 id call omap5xxx check revision

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoHACK: PALMAS: Enable 32 kHz Audio form start.
Sebastien Guiriec [Fri, 20 Apr 2012 06:47:13 +0000 (14:47 +0800)] 
HACK: PALMAS: Enable 32 kHz Audio form start.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agouplevel omap5 asoc do devices dmic stuff for omap5 as well
Andy Green [Fri, 20 Apr 2012 05:26:49 +0000 (13:26 +0800)] 
uplevel omap5 asoc do devices dmic stuff for omap5 as well

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agouplevel omap5 asoc devices use new generic dmic codec config name
Andy Green [Fri, 20 Apr 2012 05:25:54 +0000 (13:25 +0800)] 
uplevel omap5 asoc devices use new generic dmic codec config name

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoasoc omap abe twl6040 allow on omap4 panda machine
Andy Green [Fri, 20 Apr 2012 05:10:24 +0000 (13:10 +0800)] 
asoc omap abe twl6040 allow on omap4 panda machine

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoomap4 panda define audpwron better and set mux
Andy Green [Fri, 20 Apr 2012 05:09:41 +0000 (13:09 +0800)] 
omap4 panda define audpwron better and set mux

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoomap5xxx: setup padconf for ABE_CLKS
Sebastien Jan [Fri, 20 Apr 2012 05:09:04 +0000 (13:09 +0800)] 
omap5xxx: setup padconf for ABE_CLKS

Signed-off-by: Sebastien Jan <s-jan@ti.com>
2 years agoomap5 asoc board define common mux pdm
Andy Green [Fri, 20 Apr 2012 05:07:31 +0000 (13:07 +0800)] 
omap5 asoc board define common mux pdm

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoomap5 asoc board different gpio on uevm
Andy Green [Fri, 20 Apr 2012 05:05:00 +0000 (13:05 +0800)] 
omap5 asoc board different gpio on uevm

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agouplevel omap5 asoc correct dependencies for abe twl6040 kconfig
Andy Green [Fri, 20 Apr 2012 05:03:47 +0000 (13:03 +0800)] 
uplevel omap5 asoc correct dependencies for abe twl6040 kconfig

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agouplevel kconfig allow able 6040 on omap5
Andy Green [Fri, 20 Apr 2012 05:02:06 +0000 (13:02 +0800)] 
uplevel kconfig allow able 6040 on omap5

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agouplevel add abe audio data to omap5evm boardfile
Andy Green [Fri, 20 Apr 2012 04:50:01 +0000 (12:50 +0800)] 
uplevel add abe audio data to omap5evm boardfile

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agouplevel 3.4 rc3 fixes
Andy Green [Fri, 20 Apr 2012 02:55:41 +0000 (10:55 +0800)] 
uplevel 3.4 rc3 fixes

Signed-off-by: Andy Green <andy.green@linaro.org>
2 years agoASoC: ABE: Add hw_rule for 250us period constraint
Misael Lopez Cruz [Sun, 22 Apr 2012 22:31:59 +0000 (06:31 +0800)] 
ASoC: ABE: Add hw_rule for 250us period constraint

Audio Backend requires period time in steps of 250us.

Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
2 years agoALSA: pcm: export 'snd_interval_step' symbol
Misael Lopez Cruz [Sun, 22 Apr 2012 22:31:47 +0000 (06:31 +0800)] 
ALSA: pcm: export 'snd_interval_step' symbol

Export 'snd_interval_step' symbol so that ALSA drivers can use it
to add hw rules.

Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
2 years agoASoC: dpcm: check all DAI widgets for BE type when creating new DPCMs
Liam Girdwood [Sun, 22 Apr 2012 22:31:35 +0000 (06:31 +0800)] 
ASoC: dpcm: check all DAI widgets for BE type when creating new DPCMs

Recent DAI widget updates mean we have to make sure that the DAIs returned
in the valid audio path are all BE type (and not FE).

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: twl6040: Fix legacy playback, and capture
Peter Ujfalusi [Sun, 22 Apr 2012 22:31:22 +0000 (06:31 +0800)] 
ASoC: twl6040: Fix legacy playback, and capture

In order to get the legacy mode working (to DAPM power on the path) we need
to connect the legacy stream name to the DACs of the codec.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoASoC: twl6040: Remove HS/HF gain ramp feature
Peter Ujfalusi [Sun, 22 Apr 2012 22:31:10 +0000 (06:31 +0800)] 
ASoC: twl6040: Remove HS/HF gain ramp feature

None of the machines uses the gain ramp possibility for HS/HF.
This code path is mostly unused, but it can cause race conditions
in certain scenarios.
Remove the gain ramp, and related features form the driver.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoASoC: omap-abe-twl6040: Fix Voice Port
Liam Girdwood [Sun, 22 Apr 2012 22:30:58 +0000 (06:30 +0800)] 
ASoC: omap-abe-twl6040: Fix Voice Port

Modem is handled by the McBSP DAI and not the voice port.
To be squshed for upstream.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: abe mixer: Simplify graph for MM_DL.
Liam Girdwood [Sun, 22 Apr 2012 22:30:46 +0000 (06:30 +0800)] 
ASoC: abe mixer: Simplify graph for MM_DL.

To be squshed for upstreaming.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: Make sure we only create one widget per DAI.
Liam Girdwood [Sun, 22 Apr 2012 22:30:34 +0000 (06:30 +0800)] 
ASoC: dapm: Make sure we only create one widget per DAI.

Sometimes more than 1 widget per DAI can be created when the
DAI is embedded with a codec or platform component.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: abe mixer: Update graph with recent DAI widget changes.
Liam Girdwood [Sun, 22 Apr 2012 22:30:22 +0000 (06:30 +0800)] 
ASoC: abe mixer: Update graph with recent DAI widget changes.

To be squashed for upstreaming.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: Only create DAI widgets for valid DAIs streams.
Liam Girdwood [Sun, 22 Apr 2012 22:30:10 +0000 (06:30 +0800)] 
ASoC: dapm: Only create DAI widgets for valid DAIs streams.

Check that the DAI can support the stream direction and make sure
we dont try and deref a NULL widget.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: Free dapm mutex on new widget failure
Liam Girdwood [Sun, 22 Apr 2012 22:29:58 +0000 (06:29 +0800)] 
ASoC: dapm: Free dapm mutex on new widget failure

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dpcm: Use locked version for DPCM stream events.
Liam Girdwood [Sun, 22 Apr 2012 22:29:45 +0000 (06:29 +0800)] 
ASoC: dpcm: Use locked version for DPCM stream events.

Make sure we hold the DAPM mutex for DPCM based stream events.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: pcm: Use locked stream event for PCM ops.
Liam Girdwood [Sun, 22 Apr 2012 22:29:33 +0000 (06:29 +0800)] 
ASoC: pcm: Use locked stream event for PCM ops.

Guarantee we hold the DAPM mutex for all PCM DAPM stream ops

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: Dont hold the DAPM mutex for runtime updates.
Liam Girdwood [Sun, 22 Apr 2012 22:29:21 +0000 (06:29 +0800)] 
ASoC: dapm: Dont hold the DAPM mutex for runtime updates.

To be squahed into DPCM upstream series.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: Simplify stream event logic.
Liam Girdwood [Sun, 22 Apr 2012 22:29:09 +0000 (06:29 +0800)] 
ASoC: dapm: Simplify stream event logic.

If statement not needed after recent updates. To be squashed.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: Fix and unlock the card mutex on add route errors
Liam Girdwood [Sun, 22 Apr 2012 22:28:57 +0000 (06:28 +0800)] 
ASoC: dapm: Fix and unlock the card mutex on add route errors

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: make sure we use the correct widget for connected widgets.
Liam Girdwood [Sun, 22 Apr 2012 22:28:45 +0000 (06:28 +0800)] 
ASoC: dapm: make sure we use the correct widget for connected widgets.

We should use the capture widget for capture streams. To be squashed.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dpcm core: Make sure we use card mutex for FE open/close.
Liam Girdwood [Thu, 19 Apr 2012 13:25:37 +0000 (21:25 +0800)] 
ASoC: dpcm core: Make sure we use card mutex for FE open/close.

Bring this up a level to additionally protect the paths and
status. To be squashed for upstream.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm: Fix runtime connected widgets update deadlock.
Liam Girdwood [Thu, 19 Apr 2012 13:25:05 +0000 (21:25 +0800)] 
ASoC: dapm: Fix runtime connected widgets update deadlock.

Introduced in the 3.5 mutex updates, to be squashed for upstream.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dpcm core: Hold card mutex on runtime updates.
Liam Girdwood [Thu, 19 Apr 2012 13:24:34 +0000 (21:24 +0800)] 
ASoC: dpcm core: Hold card mutex on runtime updates.

Somehow this was dropped from recent mutex work and will be squashed
into upstream submission.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: omap-abe-twl6040: Move the TPS6130x init out of probe.
Liam Girdwood [Thu, 19 Apr 2012 13:24:02 +0000 (21:24 +0800)] 
ASoC: omap-abe-twl6040: Move the TPS6130x init out of probe.

Deferred probe can cause this to happen more than once. Move to machine init
to fix.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: omap-abe-twl6040: Use correct DAPM context.
Liam Girdwood [Thu, 19 Apr 2012 13:23:32 +0000 (21:23 +0800)] 
ASoC: omap-abe-twl6040: Use correct DAPM context.

Use the correct DAPM context for pins that ignore suspend.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: core: Fix build for deferred probe ?
Liam Girdwood [Thu, 19 Apr 2012 13:22:29 +0000 (21:22 +0800)] 
ASoC: core: Fix build for deferred probe ?

Looks like either a merge issue or a missing patch here.
TODO: fixup and squash before upstreaming

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: omap-mcbsp: Export functions for threshold configuration
Peter Ujfalusi [Thu, 19 Apr 2012 13:21:57 +0000 (21:21 +0800)] 
ASoC: omap-mcbsp: Export functions for threshold configuration

ABE has certain requirements towards the FIFO configuration in McBSP.
Make it posssible to configure the McBSP FIFO threshold from outside of
the McBSP driver stack.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoARM: OMAP4: clock: Add aliases for McBSP fclk clocks
Peter Ujfalusi [Thu, 19 Apr 2012 13:21:25 +0000 (21:21 +0800)] 
ARM: OMAP4: clock: Add aliases for McBSP fclk clocks

CLKS signal for McBSP ports can be selected from internal (PRCM) or external
(ABE_CLKS pin) source.
To be able to use existing code we need to create clock aliases consistent
among OMAP2/3/4.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoASoC: omap-mcpdm: Fix legacy capture
Peter Ujfalusi [Thu, 19 Apr 2012 13:20:53 +0000 (21:20 +0800)] 
ASoC: omap-mcpdm: Fix legacy capture

We need only one DAI for legacy mode, which provides
the playback, and capture capability.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoASoC: omap-abe-twl6040 - General ABE support
Liam Girdwood [Thu, 19 Apr 2012 13:20:22 +0000 (21:20 +0800)] 
ASoC: omap-abe-twl6040 - General ABE support

To be squshed prior to release.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: TWL6040: HACK for ABE support of 44.1 kHz
Sebastien Guiriec [Thu, 19 Apr 2012 13:19:50 +0000 (21:19 +0800)] 
ASoC: TWL6040: HACK for ABE support of 44.1 kHz

Temporary hack to set McPDM CLK at 96 kHz for all the mode. With
updated ABE the FW is doing the SRC from 44.1 to 48 internally.
Previous custom mode needs to be removed.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoASoC: twl6040: Add digital mute
Misael Lopez Cruz [Thu, 19 Apr 2012 13:19:19 +0000 (21:19 +0800)] 
ASoC: twl6040: Add digital mute

TWL6040 shutdown sequence requires turning analog components off
before PDM interface is disabled. This sequence cannot be achieved
with current ASoC pcm operations.

ASoC enables CODEC's digital mute before shutting down a PCM stream,
this can be used to disable the analog side by sending a DAPM stop
event to DAPM core.

Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
2 years agoASoC: twl6040: Configure init gain to minimal value
Sebastien Guiriec [Thu, 19 Apr 2012 13:18:47 +0000 (21:18 +0800)] 
ASoC: twl6040: Configure init gain to minimal value

Set amplifier gain to minimal value after the driver is probed.
Today gain likes HSGAIN is set to maximum vaule. So at the first
playback the gain will no be configured. Default value should be
the minimal gain after power up.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoOPP: Export export symbols for module usage.
Liam Girdwood [Thu, 19 Apr 2012 13:18:16 +0000 (21:18 +0800)] 
OPP: Export export symbols for module usage.

This has probably been already implemented by PM team but not
upstream yet.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: omap-abe-twl6040: DAI link update for ABE mode.
Sebastien Guiriec [Thu, 19 Apr 2012 13:17:44 +0000 (21:17 +0800)] 
ASoC: omap-abe-twl6040: DAI link update for ABE mode.

When using ABE several link and ports can be used. Update the DAI
link for ABE+ TWL6040 port.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoOMAP4: omap4panda: Enable ABE audio support.
Sebastien Guiriec [Thu, 19 Apr 2012 13:17:13 +0000 (21:17 +0800)] 
OMAP4: omap4panda: Enable ABE audio support.

PandaBoard has ABE + twl6040 codec for audio. As of now the ABE is
not enable by default. Add ABE support in order to probe all the
different audio link.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoOMAP4: 4430sdp: Enable ABE audio support.
Sebastien Guiriec [Thu, 19 Apr 2012 13:16:42 +0000 (21:16 +0800)] 
OMAP4: 4430sdp: Enable ABE audio support.

4430SDP board has ABE + twl6040 codec for audio. As of now the ABE is
not enable by default. Add ABE support in order to probe all the
different audio link.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoinclude: platform_data: Update platform data header for OMAP4 ASoc audio
Sebastien Guiriec [Thu, 19 Apr 2012 13:16:10 +0000 (21:16 +0800)] 
include: platform_data: Update platform data header for OMAP4 ASoc audio

Add on flied inside the platform data in order to indicate if the ABE
engine is usde or not. According to the usage of ABE the number of links
is not the same.

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoASoC: OMAP ABE: Update to 09.54.2
Liam Girdwood [Thu, 19 Apr 2012 13:15:37 +0000 (21:15 +0800)] 
ASoC: OMAP ABE: Update to 09.54.2

Update ABE FW in order to add the next features:
  - Support of 48 kHz for Voice ports and BT
  - Support of Mono 16 bits support for all FE except MM_UL

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
2 years agoASoC: ABE - Add core ABE support
Liam Girdwood [Thu, 19 Apr 2012 13:15:05 +0000 (21:15 +0800)] 
ASoC: ABE - Add core ABE support

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: ABE - Add ABE port manager
Liam Girdwood [Thu, 19 Apr 2012 13:14:34 +0000 (21:14 +0800)] 
ASoC: ABE - Add ABE port manager

Add ABE port manager to manage ABE port resources for the ABE
DAI driver, ABE platform driver and ABE firmware interface.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: ABE - Add ABE build support
Liam Girdwood [Thu, 19 Apr 2012 13:14:03 +0000 (21:14 +0800)] 
ASoC: ABE - Add ABE build support

2 years agoASoC: ABE - Add ABE PM support
Liam Girdwood [Thu, 19 Apr 2012 13:13:31 +0000 (21:13 +0800)] 
ASoC: ABE - Add ABE PM support

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: ABE - Add ABE PCM operations.
Liam Girdwood [Thu, 19 Apr 2012 13:12:59 +0000 (21:12 +0800)] 
ASoC: ABE - Add ABE PCM operations.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: ABE - Add ABE OPP support
Liam Girdwood [Thu, 19 Apr 2012 13:12:27 +0000 (21:12 +0800)] 
ASoC: ABE - Add ABE OPP support

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: ABE - Add ABE low power mmap support.
Liam Girdwood [Thu, 19 Apr 2012 13:11:56 +0000 (21:11 +0800)] 
ASoC: ABE - Add ABE low power mmap support.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: ABE - Add ABE mixers and DAPM.
Liam Girdwood [Thu, 19 Apr 2012 13:11:25 +0000 (21:11 +0800)] 
ASoC: ABE - Add ABE mixers and DAPM.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: ABE - Add ABE debugFS support.
Liam Girdwood [Thu, 19 Apr 2012 13:10:53 +0000 (21:10 +0800)] 
ASoC: ABE - Add ABE debugFS support.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: OMAP DMIC - Add initial ABE support.
Liam Girdwood [Thu, 19 Apr 2012 13:10:22 +0000 (21:10 +0800)] 
ASoC: OMAP DMIC - Add initial ABE support.

To be completed.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: McPDM - Add ABE support
Peter Ujfalusi [Thu, 19 Apr 2012 13:09:50 +0000 (21:09 +0800)] 
ASoC: McPDM - Add ABE support

Support for ABE modes

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
2 years agoOMAP4: AESS: device creation to mach-omap2
Sebastien Guiriec [Thu, 19 Apr 2012 13:06:15 +0000 (21:06 +0800)] 
OMAP4: AESS: device creation to mach-omap2

Audio Engine Subsystem is only present in OMAP4 so its
device should built in mach-omap2 as it's not applicable
for OMAP1.

Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
Conflicts:

arch/arm/mach-omap2/devices.c

2 years agoOMAP4: hwmod - enable AESS hwmod device.
Liam Girdwood [Thu, 19 Apr 2012 13:02:32 +0000 (21:02 +0800)] 
OMAP4: hwmod - enable AESS hwmod device.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoOMAP4: OPP: Add OPPs for AESS
Misael Lopez Cruz [Thu, 19 Apr 2012 12:51:52 +0000 (20:51 +0800)] 
OMAP4: OPP: Add OPPs for AESS

Add OPPs for Audio Engine Subsystem.

Acked-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
2 years agoASoC: dsp - add core support for bespoke trigger()
Liam Girdwood [Thu, 19 Apr 2012 12:50:45 +0000 (20:50 +0800)] 
ASoC: dsp - add core support for bespoke trigger()

This allows the DSP core to call a beskope trigger() call
on DAIs and platforms that require it.

TODO: move into DSP patch series.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: core - add hostless DAI support
Liam Girdwood [Thu, 19 Apr 2012 12:50:14 +0000 (20:50 +0800)] 
ASoC: core - add hostless DAI support

Allow DAI's to be hostless so that no PCM data is sent between DAI
and CPU. This allows for power savings as there is no DMA or CPU
interaction required.

TODO: we shouldn't need to allocate a PAGE for a dummy DMA buffer.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoALSA: pcm - add support for hostless audio
Liam Girdwood [Thu, 19 Apr 2012 12:49:42 +0000 (20:49 +0800)] 
ALSA: pcm - add support for hostless audio

Allow some PCM devices to be hostless, i.e. there is no PCM data transferred
to or from the host CPU. This can be used to minimise power on systems since
the CPU can idle/sleep during the PCM device operation (e.g. a phone call
where the DAI is between a MODEM and DSP)

TODO: cleanup, look at adding a read/write blocker.

Singed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2 years agoASoC: core - add dynamic kcontrols
Liam Girdwood [Thu, 19 Apr 2012 12:49:10 +0000 (20:49 +0800)] 
ASoC: core - add dynamic kcontrols

TODO: First phase of dynamic kcontrols. More todo.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: pcm core - Lock stream events for non DPCM DAI links.
Liam Girdwood [Thu, 19 Apr 2012 12:48:40 +0000 (20:48 +0800)] 
ASoC: pcm core - Lock stream events for non DPCM DAI links.

Dynamic PCM users of snd_soc_dapm_stream_event() already have the car mutex
locked prior to issueing a stream event. Provide a thin wrapper to make sure
regular PCM operations also call snd_soc_dapm_stream_event() with the card
mutex locked.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: DPCM - Add ASoC Dynamic PCM core
Liam Girdwood [Thu, 19 Apr 2012 12:48:09 +0000 (20:48 +0800)] 
ASoC: DPCM - Add ASoC Dynamic PCM core

This adds ASoC core support for internal and external DSPs and represents them
to the audio user as a CODEC like device with mixers, muxes and runtime audio
route changing.

The DPCM core allows DSP DAIs to be dynamically re-routed at runtime between the
PCM device end (or Frontend - FE) and the physical DAI (Backend - BE) using
regular kcontrols (just like a hardware CODEC).

The DPCM core also deal with DSP FE+BE suspend and resume PM ops.

Blah blah blah

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: DAPM - Add support for sending stream events to individual DAI links
Liam Girdwood [Thu, 19 Apr 2012 12:47:38 +0000 (20:47 +0800)] 
ASoC: DAPM - Add support for sending stream events to individual DAI links

Sometimes it is necessary to send a stream event to an individula DAI link
before the event is then sent to the whole sound card. This can be used in
cases  where the DAI link is providing DC offset information to it's
attached DACs and allows the DACS to receive the stream event before the
DAI link is disabled by the core PCM operations. This preserves the DC offset
information so the DAI can switch ON/OFF silently.

Signed-off-by: Liam Girdwood <lrg@ti.com>
2 years agoASoC: dapm - Allow path discovery for active DAI widgets
Liam Girdwood [Thu, 19 Apr 2012 12:47:08 +0000 (20:47 +0800)] 
ASoC: dapm - Allow path discovery for active DAI widgets

Currently DAI widget path discovery stops with the DAI when the DAI
is active. Allow path discovery to continue after the active DAI
since subsequent widgets can exist for some DAI widgets.

Signed-off-by: Liam Girdwood <lrg@ti.com>