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
     

23 Sep, 2008

1 commit


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

25 commits


25 Aug, 2008

2 commits

  • This patch fixes 3 issues:

    a) it removes the dependency on jiffies, because jiffies are incremented
    by a single CPU, and the tick is not synchronized between CPUs. Therefore
    relying on it to calculate a window to clip whacky TSC values doesn't work
    as it can drift around.

    So instead use [GTOD, GTOD+TICK_NSEC) as the window.

    b) __update_sched_clock() did (roughly speaking):

    delta = sched_clock() - scd->tick_raw;
    clock += delta;

    Which gives exponential growth, instead of linear.

    c) allows the sched_clock_cpu() value to warp the u64 without breaking.

    the results are more reliable sched_clock() deltas:

    before after sched_clock

    cpu_clock: 15750 51312 51488
    cpu_clock: 59719 51052 50947
    cpu_clock: 15879 51249 51061
    cpu_clock: 1 50933 51198
    cpu_clock: 1 50931 51039
    cpu_clock: 1 51093 50981
    cpu_clock: 1 51043 51040
    cpu_clock: 1 50959 50938
    cpu_clock: 1 50981 51011
    cpu_clock: 1 51364 51212
    cpu_clock: 1 51219 51273
    cpu_clock: 1 51389 51048
    cpu_clock: 1 51285 51611
    cpu_clock: 1 50964 51137
    cpu_clock: 1 50973 50968
    cpu_clock: 1 50967 50972
    cpu_clock: 1 58910 58485
    cpu_clock: 1 51082 51025
    cpu_clock: 1 50957 50958
    cpu_clock: 1 50958 50957
    cpu_clock: 1006128 51128 50971
    cpu_clock: 1 51107 51155
    cpu_clock: 1 51371 51081
    cpu_clock: 1 51104 51365
    cpu_clock: 1 51363 51309
    cpu_clock: 1 51107 51160
    cpu_clock: 1 51139 51100
    cpu_clock: 1 51216 51136
    cpu_clock: 1 51207 51215
    cpu_clock: 1 51087 51263
    cpu_clock: 1 51249 51177
    cpu_clock: 1 51519 51412
    cpu_clock: 1 51416 51255
    cpu_clock: 1 51591 51594
    cpu_clock: 1 50966 51374
    cpu_clock: 1 50966 50966
    cpu_clock: 1 51291 50948
    cpu_clock: 1 50973 50867
    cpu_clock: 1 50970 50970
    cpu_clock: 998306 50970 50971
    cpu_clock: 1 50971 50970
    cpu_clock: 1 50970 50970
    cpu_clock: 1 50971 50971
    cpu_clock: 1 50970 50970
    cpu_clock: 1 51351 50970
    cpu_clock: 1 50970 51352
    cpu_clock: 1 50971 50970
    cpu_clock: 1 50970 50970
    cpu_clock: 1 51321 50971
    cpu_clock: 1 50974 51324

    Signed-off-by: Peter Zijlstra
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     
  • Added Intel processor SSE4.2 feature flag.

    No in-tree user at the moment, but makes the tree-merging life easier
    for the crypto tree.

    Signed-off-by: Austin Zhang
    Signed-off-by: Ingo Molnar

    Austin Zhang