02 Oct, 2008

4 commits


30 Sep, 2008

2 commits

  • Dell Inspiron 1525 seems to have a buggy BIOS setup and screws up
    the recent codec parser, as reported by Oleksandr Natalenko:
    http://lkml.org/lkml/2008/9/12/203

    This patch adds the working model, dell-3stack, statically.

    Signed-off-by: Takashi Iwai
    Cc:

    Takashi Iwai
     
  • The error path in cs4270_probe/cs4270_remove is pretty broken:
    * If cs4270_probe fails, codec is leaked.
    * If snd_soc_register_card fails, cs4270_i2c_driver stays registered.
    * If I2C support is enabled but no I2C device is found, i2c_del_driver
    is never called (neither in cs4270_probe nor in cs4270_remove.

    Fix all 3 problems by implementing a clean error path in cs4270_probe
    and jumping to its labels as needed.

    Signed-off-by: Jean Delvare
    Acked-by: Timur Tabi
    Signed-off-by: Takashi Iwai

    Jean Delvare
     

29 Sep, 2008

2 commits

  • Conversion to new-style i2c driver missed the error path of the
    probe function. Fix it.

    Signed-off-by: Jean Delvare
    Cc: Timur Tabi
    Signed-off-by: Takashi Iwai

    Jean Delvare
     
  • Update the CS4270 ALSA device driver to use the new-style I2C interface.
    Starting with the 2.6.27 PowerPC kernel, I2C devices that have entries in the
    device trees can no longer be probed by old-style I2C drivers. The device
    tree for Freescale MPC8610 HPCD has included an entry for the CS4270 since
    2.6.25, but that entry was previously ignored by the PowerPC I2C subsystem.
    Since that's no longer the case, the best solution is to update the CS4270
    driver to a new-style interface, rather than try to revert the behavior of
    new PowerPC I2C subsystem.

    Signed-off-by: Timur Tabi
    Signed-off-by: Takashi Iwai

    Timur Tabi
     

25 Sep, 2008

2 commits

  • The power_mutex lock in snd_pcm_drop may cause a possible deadlock
    chain, and above all, it's unneeded. Let's get rid of it.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • The PCM and rawmidi open callbacks have a lock against card->controls_list
    but it takes a wrong one, card->controls_rwsem, instead of a right one
    card->ctl_files_rwlock. This patch fixes them.

    This change also fixes automatically the potential deadlocks due to
    mm->mmap_sem in munmap and copy_from/to_user, reported by Sitsofe
    Wheeler:

    A: snd_ctl_elem_user_tlv(): card->controls_rwsem => mm->mmap_sem
    B: snd_pcm_open(): card->open_mutex => card->controls_rwsem
    C: munmap: mm->mmap_sem => snd_pcm_release(): card->open_mutex

    The patch breaks the chain.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

22 Sep, 2008

1 commit


06 Sep, 2008

1 commit

  • CONFIG_AC97_BUS is used from both sound and ucb1400 drivers.
    The recent change in Kconfig introduced the exclusive dependency on
    CONFIG_SOUND, and disabled the ucb1400 build without sound.
    This patch makes CONFIG_AC97_BUS independent.

    Signed-off-by: Takashi Iwai
    Tested-by: Randy Dunlap

    Takashi Iwai
     

02 Sep, 2008

2 commits


01 Sep, 2008

2 commits


29 Aug, 2008

1 commit

  • When changing the sample rate, the CMI8788's master clock output becomes
    unstable for a short time. The AK4396 needs the master clock to do SPI
    writes, so writing to an AK4396 control register directly after a sample
    rate change will garble the value. In our case, this leads to the DACs
    being misconfigured to I2S sample format, which results in a wrong
    output level and horrible distortions on samples louder than -6 dB.

    To fix this, we need to wait until the new master clock signal has
    become stable before doing SPI writes.

    Signed-off-by: Clemens Ladisch
    Signed-off-by: Takashi Iwai

    Clemens Ladisch
     

27 Aug, 2008

1 commit

  • This reverts commit 3e0e469fa216ec70c93b1593821b759d19ee2e6b.

    The patch introduced a wrong detection of other intel Macs with
    ALC88* codec because they share the same PCI SSID (but have different
    codec subsystem-IDs). See http://lkml.org/lkml/2008/8/24/143

    Reported-and-tested-by: Guillaume Chazarain
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

26 Aug, 2008

4 commits


25 Aug, 2008

2 commits

  • Many SoC audio codec drivers have improper freeing of memory in error
    paths.

    * codec is allocated in the platform device probe function, but is not
    freed there in case of error. Instead it is freed in the i2c device
    probe function's error path. However the success or failure of both
    functions is not linked, so this could result in a double free (if
    the platform device is successfully probed, the i2c device probing
    fails and then the platform driver is unregistered.)

    * codec->private_data is allocated in many platform device probe
    functions but not freed in their error paths.

    This patch hopefully solves all these problems.

    Signed-off-by: Jean Delvare
    Signed-off-by: Mark Brown
    Signed-off-by: Takashi Iwai

    Jean Delvare
     
  • Correct a previous patch for the ca0106 onboard the MSI K8N Diamond PLUS
    motherboard. Confirmed to have Line/Mic/Aux working for input, and sound
    output working as expected.

    Signed-off-by: Travis Place
    Signed-off-by: Takashi Iwai

    Travis Place
     

24 Aug, 2008

1 commit


22 Aug, 2008

1 commit


21 Aug, 2008

1 commit


17 Aug, 2008

1 commit

  • On some Realtek codecs like ALC882 or ALC883, the capture source is
    no mux but sum widget. We have to initialize all channels properly
    for this type, otherwise noises may come in from the unused route.

    The patch assures to mute unused routes, and unmute the currently
    selected route.

    Signed-off-by: Takashi Iwai
    Tested-by: Daniel J Blueman

    Takashi Iwai
     

15 Aug, 2008

2 commits


14 Aug, 2008

1 commit


12 Aug, 2008

4 commits


11 Aug, 2008

1 commit


09 Aug, 2008

1 commit

  • Conflicts:

    drivers/watchdog/at91rm9200_wdt.c
    drivers/watchdog/davinci_wdt.c
    drivers/watchdog/ep93xx_wdt.c
    drivers/watchdog/ixp2000_wdt.c
    drivers/watchdog/ixp4xx_wdt.c
    drivers/watchdog/ks8695_wdt.c
    drivers/watchdog/omap_wdt.c
    drivers/watchdog/pnx4008_wdt.c
    drivers/watchdog/sa1100_wdt.c
    drivers/watchdog/wdt285.c

    Russell King
     

08 Aug, 2008

1 commit


07 Aug, 2008

2 commits