27 Oct, 2011
7 commits
-
FIFO should be flushed before it is enabled for the first time
This fixes the I/O errors reported by the ASoC core on a fresh bootSigned-off-by: Vaibhav Bedia
-
This patch adds the machine driver for AM335x EVM in conformance with the new
ASoC framework.Signed-off-by: Hebbar, Gururaja
-
AM33xx uses same McASP IP as the Davinci Platform. This patch adds
config option to enable the McASP driver for AM335x (Kconfig & Makefile)Signed-off-by: Hebbar, Gururaja
-
Few OMAP platform has a new Variant of McASP than those found on Davinci
Platform.This patch adds support for the same.
Changes
- Add new MCASP_VERSION_3 to identify new IP
- The FIFO offsets for the McASP in new platform are different from the
ones seen on previous varianats. Use version member to identify and
process accordinglyThis has been tested on DM365 platform to make sure nothing existing
breaksSigned-off-by: Hebbar, Gururaja
Signed-off-by: Vaibhav Hiremath -
parameters from isnt used anywhere. Hence removed
Signed-off-by: Hebbar, Gururaja
Signed-off-by: Vaibhav Hiremath -
Davinci McASP IP & its Driver is shared by few OMAP platforms. Moving the
McASP ddefines to a common place, helps to share the same header file
across platformsThis patch moves asp.h from
arch/arm/mach-davinci/include/mach/asp.h -> arch/arm/include/asm/hardware/asp.hHeader define check is also updated to reflect hardware name rather than
platformSigned-off-by: Hebbar, Gururaja
Signed-off-by: Vaibhav Hiremath -
We have two SoCs using SRAM, both with their own allocation systems,
and both with their own ways of copying functions into the SRAM.Let's unify this before we have additional SoCs re-implementing this
obviously common functionality themselves.For this use the generic allocator and the newly introduce
gen_pool_add_virt and gen_pool_virt_to_physUio_pruss should probably take the SRAM pool pointer via
platform data so that it doesn't have to include Davinci specific
includes.Signed-off-by: Russell King
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD
Acked-by: Sekhar Nori
Cc: Kevin Hilman
Cc: Tony Lindgren
Cc: Sascha HauerSigned-off-by: Hebbar, Gururaja
03 Oct, 2011
3 commits
-
omap_mcpdm_remove is used from asoc_mcpdm_probe, which is an
initcall, and must not be discarded when HOTPLUG is disabled.Signed-off-by: Arnd Bergmann
Signed-off-by: Mark Brown -
Current code set update bits for WM8753_LDAC and WM8753_RDAC twice,
but missed setting update bits for WM8753_LADC and WM8753_RADC.I think it is a copy-paste bug in commit 776065
"ASoC: codecs: wm8753: Fix register cache incoherency".Signed-off-by: Axel Lin
Signed-off-by: Mark Brown
Cc: stable@kernel.org -
A recent conversion has introduced references to &pdev->dev, which does
not actually exist in all the contexts it's used in.Replace this with card->dev where necessary, in order to let
the driver build again.Signed-off-by: Arnd Bergmann
Signed-off-by: Mark Brown
Cc: stable@kernel.org
27 Sep, 2011
1 commit
-
Currently the the internal oscillator is powered down when entering BIAS_OFF
state, but not re-enabled when going back to BIAS_STANDBY. As a result the
CODEC will stop working after suspend if the internal oscillator is used to
generate the sysclock signal. This patch fixes it by clearing the appropriate
bit in the power down register when the CODEC is re-enabled.Signed-off-by: Lars-Peter Clausen
Signed-off-by: Mark Brown
Cc: stable@kernel.org
23 Sep, 2011
1 commit
-
Attempt to change McBSP CLKS source while another stream is active is not
safe after commit d135865 ("OMAP: McBSP: implement functional clock
switching via clock framework") in 2.6.37.CLKS parent clock switching using clock framework have to idle the McBSP
before switching and then activate it again. This short break can cause a
DMA transaction error to already running stream which halts and recovers
only by closing and restarting the stream.This goes more fatal after commit e2fa61d ("OMAP3: l3: Introduce
l3-interconnect error handling driver") in 2.6.39 where l3 driver detects a
severe timeout error and does BUG_ON().Fix this by not changing any configuration in omap_mcbsp_dai_set_dai_sysclk
if the McBSP is already active. This test should have been here just from
the beginning anyway.Signed-off-by: Jarkko Nikula
Acked-by: Peter Ujfalusi
Signed-off-by: Mark Brown
Cc: stable@kernel.org
21 Sep, 2011
1 commit
-
Commit 873bd4c (ASoC: Don't set invalid name string to snd_card->driver
field) broke generation of a driver name for all ASoC cards relying on the
automatic generation of one. Fix this by using the old default with spaces
replaced by underscores.Signed-off-by: Mark Brown
Acked-by: Takashi Iwai
20 Sep, 2011
1 commit
-
This functionality is now subsumed within the bias management, using the
standard cache management functionality, without assuming the cache type.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
16 Sep, 2011
1 commit
-
Fix below build warning:
sound/soc/blackfin/bf5xx-ad73311.c: warning: initialization from incompatible pointer typeSigned-off-by: Axel Lin
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
12 Sep, 2011
1 commit
-
A fix merged in 3.1-rc2 introduced a small regression, this should get it
to build again.Signed-off-by: Arnd Bergmann
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
06 Sep, 2011
2 commits
-
Fix the codec_name field of the dai_link to match the actual device name
of the codec. Otherwise the card won't be instantiated.Signed-off-by: Lars-Peter Clausen
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
Cc: stable@kernel.org -
We need to report the entire jack state to the core jack code, not just
the bits that were being updated by the caller, otherwise the status
reported by other detection methods will be omitted from the state seen
by userspace.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
Cc: stable@kernel.org
31 Aug, 2011
4 commits
-
Fixes the following warning:
CC sound/soc/imx/imx-pcm-fiq.o
sound/soc/imx/imx-pcm-fiq.c: In function 'imx_pcm_fiq_new':
sound/soc/imx/imx-pcm-fiq.c:243: warning: unused variable 'card'
CC sound/soc/imx/imx-pcm-dma-mx2.oSigned-off-by: Fabio Estevam
Signed-off-by: Mark Brown -
Currently the condition for these WARN_ONs is reversed and they are placed
before the actual check whether we are going to write to that register. So if
the codec implements the register_writable callback we'll get a warning for each
writable register when syncing the register cache.While we are at it change the check to use snd_soc_codec_writable_register
instead of open-coding it.Signed-off-by: Lars-Peter Clausen
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
Change the default return value of snd_soc_codec_{readable,writable}_register to
true when no codec specific callback for this function is given. Otherwise all
registers of that codec will neither be readable nor writable, which is most
certainly not what we want.Signed-off-by: Lars-Peter Clausen
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
We have dapm_context instead of codec parameter.
Signed-off-by: Peter Ujfalusi
Signed-off-by: Mark Brown
25 Aug, 2011
2 commits
-
'struct of_device' no longer exists, and its functionality has been merged
into platform_device. Update the MPC5200 audio DMA driver (mpc5200_dma)
accordingly. This fixes a build break.Signed-off-by: Timur Tabi
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
Cc: stable@kernel.org -
I can count. Honest.
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
24 Aug, 2011
2 commits
-
Board file support for Ventana is not yet mainlined, and probably won't
ever be given the move to Device-Tree. Consequently, the Ventana entry
is being removed from arch/arm/tools/mach-types in the next merge window,
since it was registered over a year ago.This will also remove function machine_is_ventana(), which is used by
the ASoC Tegra WM8903 machine driver. This will cause compilation
failures. Drop Ventana support to resolve this.Hopefully, in the not-too-distant future, tegra_wm8903.c will be able to
configure itself from Device-Tree, and hence we'll be able to re-instate
Ventana support just by creating a .dts file for the board.Also note that Aebl support is in a similar boat. However, that board
isn't scheduled for deprecation for at least another 5 months, and
perhaps we will have completely removed non-Device-Tree support from
tegra_wm8903.c by then and/or adjusted mach-types policy.Signed-off-by: Stephen Warren
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
Signed-off-by: Joseph Pentland
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
23 Aug, 2011
6 commits
-
The first change is to add an of_node_put, since codec_np has previously
been allocated. The rest of the patch reorganizes the error handling code
so the only code executed is that which is needed.A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)//
@@
identifier x;
expression E1!=0,E2,E3,E4;
statement S;
iterator I;
@@(
if (...) { ... when != of_node_put(x)
when != x = E3
when != E3 = x
* return ...;
}
... when != x = E2
when != I(...,x,...) S
if (...) { ... when != x = E4
of_node_put(x); ... return ...; }
)
//Signed-off-by: Julia Lawall
Acked-by: Timur Tabi
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
dma_channel_np has been accessed at this point, so decrease its reference
count before leaving the function.A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)//
@@
identifier x;
expression E1!=0,E2,E3,E4;
statement S;
iterator I;
@@(
if (...) { ... when != of_node_put(x)
when != x = E3
when != E3 = x
* return ...;
}
... when != x = E2
when != I(...,x,...) S
if (...) { ... when != x = E4
of_node_put(x); ... return ...; }
)
//Signed-off-by: Julia Lawall
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
Introduce a new label that includes kfree and jump to that one.
A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)//
@@
identifier x;
expression E1!=0,E2,E3,E4;
statement S;
iterator I;
@@(
if (...) { ... when != kfree(x)
when != x = E3
when != E3 = x
* return ...;
}
... when != x = E2
when != I(...,x,...) S
if (...) { ... when != x = E4
kfree(x); ... return ...; }
)
//Signed-off-by: Julia Lawall
Acked-by: Alexander Sverdlin
Reviewed-by: H Hartley Sweeten
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
Adjust the goto to jump to the error handling code that includes kfree.
A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)//
@@
identifier x;
expression E1!=0,E2,E3,E4;
statement S;
iterator I;
@@(
if (...) { ... when != kfree(x)
when != x = E3
when != E3 = x
* return ...;
}
... when != x = E2
when != I(...,x,...) S
if (...) { ... when != x = E4
kfree(x); ... return ...; }
)
//Signed-off-by: Julia Lawall
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
GFP_ATOMIC is not needed here, use GFP_KERNEL instead.
Signed-off-by: Axel Lin
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
of_parse_phandle increments the reference count of np, so this should be
decremented before trying the next possibility.Since we don't actually use np, we can decrement the reference count
immediately.Reported-by: Julia Lawall
Signed-off-by: Timur Tabi
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
22 Aug, 2011
5 commits
-
In case we have a pending completion, for example due to a problem with
the input clock which got corrected after we timed out.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
Ensure that we don't spuriously trigger early.
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
We get called once per DAPM context but only need to run once. When DAPM
was serialized this was a series of noops but now it can run in parallel
we need to take proper care.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
There's no need for separate widgets for the enables (as the map already
shows).Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
Make AIFCLK supply the record paths otherwise record will not work unless
there is a simultaneous playback.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
19 Aug, 2011
1 commit
-
Fix "error: too few arguments to function 'ams_delta_set_bias_level'"
build errors in ams-delta.c that were introduced after commit d4c6005 ("ASoC:
Add context parameter to card DAPM callbacks") by adding dapm context
to ams_delta_set_bias_level calls.Signed-off-by: Jarkko Nikula
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown
17 Aug, 2011
1 commit
-
The ASoC core tries to not enforce symmetric rates when
two streams open simultaneously. It does so by checking
rtd->rate being zero. This works exactly once after booting
because it is not set to zero again when the streams close.
Fix this by setting rtd->rate when no active stream is left.[This leads to lots of warnings about not enforcing the symmetry in some
situations as there's a race in the userspace API where we know we've
got two applications but don't know what rates they want to set.
-- broonie ]Signed-off-by: Sascha Hauer
Signed-off-by: Mark Brown
15 Aug, 2011
1 commit
-
asoc cache layer can't support this kind of spi registers well.
remove cache support and read/write registers directlySigned-off-by: Scott Jiang
Signed-off-by: Mark Brown