08 Jan, 2011

1 commit

  • * 'next-spi' of git://git.secretlab.ca/git/linux-2.6: (77 commits)
    spi/omap: Fix DMA API usage in OMAP MCSPI driver
    spi/imx: correct the test on platform_get_irq() return value
    spi/topcliff: Typo fix threhold to threshold
    spi/dw_spi Typo change diable to disable.
    spi/fsl_espi: change the read behaviour of the SPIRF
    spi/mpc52xx-psc-spi: move probe/remove to proper sections
    spi/dw_spi: add DMA support
    spi/dw_spi: change to EXPORT_SYMBOL_GPL for exported APIs
    spi/dw_spi: Fix too short timeout in spi polling loop
    spi/pl022: convert running variable
    spi/pl022: convert busy flag to a bool
    spi/pl022: pass the returned sglen to the DMA engine
    spi/pl022: map the buffers on the DMA engine
    spi/topcliff_pch: Fix data transfer issue
    spi/imx: remove autodetection
    spi/pxa2xx: pass of_node to spi device and set a parent device
    spi/pxa2xx: Modify RX-Tresh instead of busy-loop for the remaining RX bytes.
    spi/pxa2xx: Add chipselect support for Sodaville
    spi/pxa2xx: Consider CE4100's FIFO depth
    spi/pxa2xx: Add CE4100 support
    ...

    Linus Torvalds
     

03 Jan, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ALSA: hda: Use LPIB quirk for Dell Inspiron m101z/1120
    sound: Prevent buffer overflow in OSS load_mixer_volumes
    ASoC: codecs: wm8753: Fix register cache incoherency
    ASoC: codecs: wm9090: Fix register cache incoherency
    ASoC: codecs: wm8962: Fix register cache incoherency
    ASoC: codecs: wm8955: Fix register cache incoherency
    ASoC: codecs: wm8904: Fix register cache incoherency
    ASoC: codecs: wm8741: Fix register cache incoherency
    ASoC: codecs: wm8523: Fix register cache incoherency
    ASoC: codecs: max98088: Fix register cache incoherency
    ASoC: codecs: Add missing control_type initialization

    Linus Torvalds
     

02 Jan, 2011

1 commit


30 Dec, 2010

2 commits

  • Sjoerd Simons reports that, without using position_fix=1, recording
    experiences overruns. Work around that by applying the LPIB quirk
    for his hardware.

    Reported-and-tested-by: Sjoerd Simons
    Cc:
    Signed-off-by: Daniel T Chen
    Signed-off-by: Takashi Iwai

    Daniel T Chen
     
  • The load_mixer_volumes() function, which can be triggered by
    unprivileged users via the SOUND_MIXER_SETLEVELS ioctl, is vulnerable to
    a buffer overflow. Because the provided "name" argument isn't
    guaranteed to be NULL terminated at the expected 32 bytes, it's possible
    to overflow past the end of the last element in the mixer_vols array.
    Further exploitation can result in an arbitrary kernel write (via
    subsequent calls to load_mixer_volumes()) leading to privilege
    escalation, or arbitrary kernel reads via get_mixer_levels(). In
    addition, the strcmp() may leak bytes beyond the mixer_vols array.

    Signed-off-by: Dan Rosenberg
    Cc: stable
    Signed-off-by: Takashi Iwai

    Dan Rosenberg
     

29 Dec, 2010

10 commits

  • * 'spi' of git://git.linutronix.de/users/bigeasy/soda into spi/next
    spi/pxa2xx: register driver properly
    spi/pxa2xx: add support for shared IRQ handler
    spi/pxa2xx: Use define for SSSR_TFL_MASK instead of plain numbers
    arm/pxa2xx: reorgazine SSP and SPI header files
    spi/pxa2xx: Add CE4100 support
    spi/pxa2xx: Consider CE4100's FIFO depth
    spi/pxa2xx: Add chipselect support for Sodaville
    spi/pxa2xx: Modify RX-Tresh instead of busy-loop for the remaining RX bytes.
    spi/pxa2xx: pass of_node to spi device and set a parent device

    Grant Likely
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the wm8753 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Furthermore the generic cache uses zero-based numbering while the wm8753 cache
    uses one-based numbering.
    Thus we end up with two from each other incoherent caches, which leads to undefined
    behaviour and crashes.
    This patch fixes the issue by changing the wm8753 driver to use the generic
    register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Mark Brown

    Lars-Peter Clausen
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the wm9090 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Thus we end up with two from each other incoherent caches, which can lead to
    undefined behaviour.
    This patch fixes the issue by changing the wm9090 driver to use the
    generic register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the wm8962 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Thus we end up with two from each other incoherent caches, which can lead to
    undefined behaviour.
    This patch fixes the issue by changing the wm8962 driver to use the
    generic register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the wm8955 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Thus we end up with two from each other incoherent caches, which can lead to
    undefined behaviour.
    This patch fixes the issue by changing the wm8955 driver to use the
    generic register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the wm8904 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Thus we end up with two from each other incoherent caches, which can lead to
    undefined behaviour.
    This patch fixes the issue by changing the wm8904 driver to use the
    generic register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Cc: Ian Lartey
    Cc: Dimitris Papastamos
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the wm8741 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Thus we end up with two from each other incoherent caches, which can lead to
    undefined behaviour.
    This patch fixes the issue by changing the wm8741 driver to use the
    generic register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Cc: Ian Lartey
    Cc: Dimitris Papastamos
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the wm8523 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Thus we end up with two from each other incoherent caches, which can lead to
    undefined behaviour.
    This patch fixes the issue by changing the wm8523 driver to use the
    generic register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Cc: Ian Lartey
    Cc: Dimitris Papastamos
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     
  • The multi-component patch(commit f0fba2ad1) moved the allocation of the
    register cache from the driver to the ASoC core. Most drivers where adjusted to
    this, but the max98088 driver still uses its own register cache for its
    private functions, while functions from the ASoC core use the generic cache.
    Thus we end up with two from each other incoherent caches, which can lead to
    undefined behaviour.
    This patch fixes the issue by changing the max98088 driver to use the
    generic register cache in its private functions.

    Signed-off-by: Lars-Peter Clausen
    Cc: Peter Hsiang
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     
  • Some codec drivers do not initialize the control_type field in their private
    device struct, but still use it when calling snd_soc_codec_set_cache_io.
    This patch fixes the issue by properly initializing it in the drivers probe
    functions.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Mark Brown
    Cc: stable@kernel.org (for 2.6.37 only)

    Lars-Peter Clausen
     

24 Dec, 2010

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ALSA: hda - Fix GPIO2-fixup for Sony laptops
    ALSA: hda - Try to find an empty control index when it's occupied
    ALSA: hda - Fix conflict of d-mic capture volume controls
    ALSA: hda - Don't apply ALC269-specific initialization to ALC275
    ALSA: hda - Add fix-up for Sony VAIO with ALC275 codecs
    ALSA: pcm: remember to always call va_end() on stuff that we va_start()
    ALSA: HDA: Add auto-mute for Thinkpad SL410/SL510

    Linus Torvalds
     

23 Dec, 2010

5 commits


21 Dec, 2010

3 commits


20 Dec, 2010

1 commit


18 Dec, 2010

1 commit


17 Dec, 2010

3 commits


15 Dec, 2010

3 commits

  • Set default association/sequence right on pin 0x17 in order for
    the automatic parser to recognize the subwoofer correctly.

    Signed-off-by: David Henningsson
    Signed-off-by: Takashi Iwai

    David Henningsson
     
  • BugLink: http://launchpad.net/bugs/690530

    The SKU value of this machine dictates that auto-mute should be
    disabled. Since the SKU value is similar to the PCI SSID, the most
    likely conclusion is that the SKU value should be ignored.

    Signed-off-by: David Henningsson
    Signed-off-by: Takashi Iwai

    David Henningsson
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ALSA: HDA: Quirk for Dell Vostro 320 to make microphone work
    ALSA: hda - Reset sample sizes and max bitrates when reading ELD
    ALSA: hda - Always allow basic audio irrespective of ELD info
    ALSA: hda - Do not wrongly restrict min_channels based on ELD
    ASoC: Correct WM8962 interrupt mask register read
    ASoC: WM8580: Debug BCLK and sample size
    ASoC: Fix resource leak if soc_register_ac97_dai_link failed
    ASoC: Hold client_mutex while calling snd_soc_instantiate_cards()
    ASoC: Fix swap of left and right channels for WM8993/4 speaker boost gain
    ASoC: Fix off by one error in WM8994 EQ register bank size
    ALSA: hda: Use position_fix=1 for Acer Aspire 5538 to enable capture on internal mic
    ALSA: hda - Enable jack sense for Thinkpad Edge 13
    ALSA: hda - Fix ThinkPad T410[s] docking station line-out
    ALSA: hda: Use model=lg quirk for LG P1 Express to enable playback and capture

    Linus Torvalds
     

14 Dec, 2010

1 commit

  • Currently bias of non-DAPM codec will be powered down (standby/off) whenever
    there is a stream stop. This is wrong in simultaneous playback/capture since
    the bias is put down immediately after stopping the first stream.

    Fix this by using the codec->active count when figuring out the needed bias
    level after stream stop.

    Signed-off-by: Jarkko Nikula
    Acked-by: Liam Girdwood
    Signed-off-by: Mark Brown

    Jarkko Nikula
     

09 Dec, 2010

5 commits


08 Dec, 2010

2 commits

  • When a new HDMI/DP device is plugged in, hdmi_update_short_audio_desc()
    is called for every SAD (Short Audio Descriptor) in the ELD data. For
    LPCM coding type SAD defines the supported sample sizes. For several
    other coding types (such as AC-3), a maximum bitrate is defined.

    The maximum bitrate and sample size fields are not always cleared.
    Therefore, if a device is unplugged and a different one is plugged in,
    and the coding types of some SAD positions differ between the devices,
    the old max_bitrate or sample_bits values will persist if the new SADs
    do not define those values.

    The leftover max_bitrate and sample_bits do not cause any issues other
    than wrongly showing up in eld#X.Y procfs file and kernel log.

    Fix that by always clearing sample_bits and max_bitrate when reading
    SADs.

    Signed-off-by: Anssi Hannula
    Signed-off-by: Takashi Iwai

    Anssi Hannula
     
  • Commit bbbe33900d1f3c added functionality to restrict PCM parameters
    based on ELD info (derived from EDID data) of the audio sink.

    However, according to CEA-861-D no SAD is needed for basic audio
    (32/44.1/48kHz stereo 16-bit audio), which is instead indicated with a
    basic audio flag in the CEA EDID Extension.

    The flag is not present in ELD. However, as all audio capable sinks are
    required to support basic audio, we can assume it to be always
    available.

    Fix allowed audio formats with sinks that have SADs (Short Audio
    Descriptors) which do not completely overlap with the basic audio
    formats (there are no reports of affected devices so far) by always
    assuming that basic audio is supported.

    Reported-by: Stephen Warren
    Signed-off-by: Anssi Hannula
    Cc: stable@kernel.org
    Signed-off-by: Takashi Iwai

    Anssi Hannula