25 Aug, 2011
3 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
5 commits
-
This patch adds Kconfig to support SMDK4212.
SMDK4212 is based on samsung exynos4212 SoC.
And WM8994 is used for audio codec.Signed-off-by: Sangbeom Kim
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
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: Sangbeom Kim
Acked-by: Jassi Brar
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
12 commits
-
Signed-off-by: Dong Aisheng
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
Move the test on pdev->id before the kzalloc to avoid requiring kfree when
the test fails. This fix was suggested by Wolfram Sang.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: Dong Aisheng
Reviewed-by: Wolfram Sang
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
Saif needs clear clk gate first before writing registers or the write
will not success.The original xx_get_mclk function clear clk gate after mclk setting
that may cause the former mclk setting unwork, then the real output
mclk maybe inaccurate.
Placing the clear before setting mclk to avoid such an issue.We also have to clear clk gate in startup instead of in prepare function.
Signed-off-by: Dong Aisheng
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
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 -
If devices can unconditionally support idle_bias_off let them flag it in
their driver structure.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood
22 Aug, 2011
12 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 -
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 -
This should never happen with level triggered IRQs.
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
The WM8962 features a DSP providing a number of signal processing
features including HD Bass and Virtual Surround Sound (VSS). Enable
initial support for this, allowing users to enable and disable the
algorithms using the default coefficient sets. Further patches will
add support for runtime configuration of the DSP coefficients.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 -
Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
This occurs frequently if we are in edge triggered mode as we must poll the
interrupt status register until we get no more interrupts so it's worth
the effort - it means we skip writing null acknowledgements to the chip.Signed-off-by: Mark Brown
Acked-by: Liam Girdwood -
For non-audio uses like accessory detection we can use a lower quality,
unregulated microphone bias, saving a little power. As the hardware can
manually enable and disable the biases we can select regulating mode
automatically with supply widgets connected to the biases.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
3 commits
-
This patch includes below small fixes:
1. Move sta32x_set_bias_level() from sta32x_i2c_remove() to sta32x_remove().
2. Remove a redundant regulator_bulk_free() call in sta32x_i2c_remove(),
as we will call regulator_bulk_free() in sta32x_remove().
3. Remove unneeded snd_soc_codec_set_drvdata(codec, NULL) in sta32x_i2c_remove.
The i2c core will set the clientdata to NULL.Signed-off-by: Axel Lin
Johannes Stezenbach
Acked-by: Liam Girdwood
Signed-off-by: Mark Brown -
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
5 commits
-
Signed-off-by: Axel Lin
Signed-off-by: Mark Brown -
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 -
The previous patch to fsl_dma.c ("fix initialization of DMA buffers")
left behind an unused local variable that causes a build warning.Signed-off-by: Timur Tabi
Signed-off-by: Mark Brown -
Signed-off-by: Mark Brown
Reported-by: Stephen Rothwell