ASoC: davinci-pcm: trivial: make ping-pong params setup symmetrical

    The setup of the pong channel uses EDMA_CHAN_SLOT instead of & 0x3f as the
    setup of the ping channel does.

    Make the setup of ping and pong symmetric. There is no functional change
    introduced by this patch.

    Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
    Reviewed-by: Steven Faludi <stevenfaludi@nanometrics.ca>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: davinci-pcm: expand the .formats

    Based on the data_type test in ping_pong_dma_setup, davinci-pcm is capable of
    handling data of width up to and including 32bits.

    "
    	if ((data_type == 0) || (data_type > 4)) {
    		printk(KERN_ERR "%s: data_type=%i\n", __func__, data_type);
    		return -EINVAL;
    	}
    "

    Update the .format member of the snd_pcm_hardware instances it registers to
    reflect this capability.

    Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
    Reviewed-by: Steven Faludi <stevenfaludi@nanometrics.ca>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: davinci-pcm: increase the maximum channels

    Based on the registration of davinci-mcasp.1 in the davinci-evm platform
    setup for da830 and dm6467, davinci-pcm can handle more than the currently
    reported maximum channels of 2.

    Increase the maximum channels to 384 to match the maximum reported by
    davinci-mcasp.1.

    Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
    Reviewed-by: Steven Faludi <stevenfaludi@nanometrics.ca>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: davinci-pcm: fix audible glitch on 2nd ping-pong playback

    The release of the dma channels was being performed in prepare and there was a
    edma_resume call for the asp-channel only being executed on START, RESUME and
    PAUSE_RELEASE.

    The mcasp on da850evm with ping-pong buffers enabled was exhibiting an audible
    glitch on every playback after the first. It was determined through trial and
    error that the following two changes fix this problem:

    1) Move the edma_start calls from prepare to trigger and 2) reverse the order
    of starting the asp and ram channels.

    Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
    Reviewed-by: Steven Faludi <stevenfaludi@nanometrics.ca>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: davinci-pcm: extract period elapsed functions

    Extract functions that modify the prtd->period member in preparation for
    conversion to BATCH mode playback.

    Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
    Reviewed-by: Steven Faludi <stevenfaludi@nanometrics.ca>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: davinci-pcm: convert to BATCH mode

    The davinci-pcm driver's snd_pcm_ops pointer function currently calls into
    the edma controller driver to read the current positions of the edma channels
    to determine pos to return to the ALSA framework. In particular,
    davinci_pcm_pointer() calls edma_get_position() and the latter has a comment
    indicating that "Its channel should not be active when this is called" whereas
    the channel is surely active when snd_pcm_ops.pointer is called.

    The operation of davinci-pcm in capture and playback appears to follow close
    the other pcm drivers who export SNDRV_PCM_INFO_BATCH except that davinci-pcm
    does not report it's positions from pointer() using the last transferred
    chunk. Instead it peeks directly into the edma controller to determine the
    current position as discussed above.

    Convert the davinci-pcm driver to BATCH mode: count the periods elapsed in the
    prtd->period member and use its value to report the 'pos' to the alsa
    framework in the davinci_pcm_pointer function.

    There is a phase offset of 2 periods between the position used by dma setup
    and the position reported in the pointer function. Either +2 in the dma
    setup or -2 in the pointer function (with wrapping, both) accounts for this
    offset -- I opted for the latter since it makes the first-time setup clearer.

    Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
    Reviewed-by: Steven Faludi <stevenfaludi@nanometrics.ca>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
hwrng: fix spelling mistake in header comment

    Cc: Herbert Xu <herbert@gondor.apana.org.au>
    Cc: Matt Mackall <mpm@selenic.com>
    Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
kconfig: Only generate config_is_xxx for bool and tristate options

    For strings and integers, the config_is_xxx macros are useless and
    sometimes misleading:

      #define CONFIG_INITRAMFS_SOURCE ""
      #define config_is_initramfs_source() 1

    Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
    Signed-off-by: Michal Marek <mmarek@suse.cz>
ASoC: davinci-pcm: comments for the conversion to BATCH mode

    In the previous commit 'ASoC: davinci-pcm: convert to BATCH mode', the phase
    offset of 2 was mentioned in the commit message but not well commented in the
    source.

    Add descriptive comments of the phase offset with and without ping-pong
    buffers enabled.

    Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
x86, build: Do not set the root_dev field in bzImage

    This has been obsoleted by the root= commandline and the rdev utility
    for many, many years.  People who still depend on this will surely
    have a copy of the rdev utility around, the rest of the world gets rid
    of another piece of buildhost-dependent data in the build. Thanks to
    Paul Bolle for the build.c cleanup.

    Cc: Paul Bolle <pebolle@tiscali.nl>
    Signed-off-by: Michal Marek <mmarek@suse.cz>
    Link: http://lkml.kernel.org/r/1302607824-24699-1-git-send-email-mmarek@suse.cz
    Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
ASoC: Fix comment in cs4270 codec driver

    The comment does not reflect reality anymore since the multi-component
    monster patch landed. Things are matched by names now, and not by
    exporting and referencing a struct. Fix it to avoid confusion.

    Signed-off-by: Daniel Mack <zonque@gmail.com>
    Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
    Acked-by: Timur Tabi <timur@freescale.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: trivial: typo in debug comment

    Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: trivial: typo in atmel_pcm_dma_params strucutre comment

    Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
ASoC: atmel_ssc_dai: fix ssc error path

    We do not have to free a resource that is not allocated yet.

    Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

commit 97b4fc3c445bf10b6fe0d8543137a6ad30a0fdab
Author: Nicolas Ferre <nicolas.ferre@atmel.com>
Date:   Thu May 26 13:44:11 2011 +0200
ASoC: Convert 7x9 write to use cpu_to_be16()

    Run the data through cpu_to_be16() so it's at least clear what we're up to.

    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Acked-by: Liam Girdwood <lrg@ti.com>
ASoC: Use cpu_to_be16() in 8x16 write

    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Acked-by: Liam Girdwood <lrg@ti.com>
ASoC: Use explicit endianness conversion in snd_soc_16_8_write()

    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Acked-by: Liam Girdwood <lrg@ti.com>
ASoC: Tegra: Enable Kaen HP_MUTE at boot

    We want the default state of the HP_MUTE signal to be asserted, so that
    the headphones are muted before the first audio playback. Without this,
    the headphones are left unmuted until shortly after the first audio
    playback completes.

    Signed-off-by: Stephen Warren <swarren@nvidia.com>
    Acked-by: Liam Girdwood <lrg@ti.com>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
perf: Optimize ctx_sched_out()

    Oleg noted that ctx_sched_out() disables the PMU even though it might
    not actually do something, avoid needless PMU-disabling.

    Reported-by: Oleg Nesterov <oleg@redhat.com>
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Link: http://lkml.kernel.org/r/20110409192141.665385503@chello.nl
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
perf: Clean up 'ctx' reference counting

    Small cleanup to how we refcount in find_get_context(), this also
    allows us to use put_ctx() to free things instead of using kfree().

    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Link: http://lkml.kernel.org/r/20110409192141.719340481@chello.nl
    Signed-off-by: Ingo Molnar <mingo@elte.hu>