09 Apr, 2008

1 commit

  • snd_es1968_ac97_read() calls snd_es1968_ac97_wait() first outside a locked
    area, and later, while holding a lock.

    snd_es1968_ac97_wait() has a polling loop with a cond_resched() inside it..
    which sleeps, so the second call is invalid.

    This patch adds a version of the wait function that just pure polls. While
    this is not very elegant in principle, it's very likely the easiest thing to
    do here, we already checked if the chip was ready (while yielding) just
    before, so it is very unlikely to take a long time here.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Arjan van de Ven
    Cc: Jaroslav Kysela
    Cc: Takashi Iwai
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arjan van de Ven
     

31 Mar, 2008

1 commit


24 Mar, 2008

1 commit


11 Mar, 2008

1 commit


29 Feb, 2008

15 commits


23 Feb, 2008

16 commits

  • Call free_irq() after iounmap() because other devices could trigger our
    shared interrupt handler.

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

    Clemens Ladisch
     
  • The driver gets Oops with ATI HDMI devices due to the wrong calculation
    of index for playback streams. This patch fixes it. Reference:
    https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3746

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • Fix following warning:
    WARNING: vmlinux.o(.text+0x11ec01a): Section mismatch in reference from the function setup_card() to the function .devinit.text:snd_usb_caiaq_control_init()

    setup_card() are only used by init_card().
    init_card() are only used by snd_probe()
    snd_probe() are used for the .probe parameter in usb_driver.probe

    Annotate them all __devinit to fix the warning.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Sam Ravnborg
     
  • Pin widgets have always one amp-input value regardless of number of
    connections. The proc file showed values wrongly.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • The capture source selection for ADC list with two elements is buggy
    becaues of a wrong capture mux list. This patch fixes the starting
    index based on spec->num_adc_nids.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • The widget list of capture source selection for ALC883 contains the
    wrong NIDs.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • Don't create vmaster controls if no slaves are found in the given list.
    This prevents the error due to an empty vmaster control.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • Attached patch fix race condition in hd_codec generic bound volume/swtich
    controls

    oops on this bug can be easy reproduced by two mixer apps on SMP system with
    PREEMPT kernel

    dmesg:

    ALSA /home/ss/ALSA/alsa-driver-1.0.16/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:596:
    hda_intel: azx_get_response timeout, switching to polling mode: las
    t cmd=0x014f0900
    BUG: unable to handle kernel paging request at virtual address 00070006
    printing eip: f8f43e95 *pde = 00000000
    Oops: 0000 [#1] PREEMPT SMP
    Modules linked in: i915 drm snd_seq_dummy snd_seq_oss snd_seq_midi_event
    snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss bnep rfcomm hidp l2cap
    bluetooth w
    lan_wep acpi_cpufreq coretemp hwmon mmc_block pcspkr psmouse wlan_scan_sta
    ath_rate_sample snd_hda_intel ath_pci serio_raw wlan tg3 sdhci snd_pcm
    firewire_o
    hci mmc_core i2c_i801 snd_timer firewire_core snd_page_alloc ath_hal(P)
    snd_hwdep snd iTCO_wdt crc_itu_t iTCO_vendor_support shpchp video output
    acer_acpi b
    acklight led_class wmi_acer

    Pid: 3969, comm: gkrellm Tainted: P (2.6.24-jm #4)
    EIP: 0060:[] EFLAGS: 00010292 CPU: 0
    EIP is at snd_hda_mixer_bind_ctls_info+0x20/0x43 [snd_hda_intel]
    EAX: 00000000 EBX: f7478e00 ECX: f763e000 EDX: f764f788
    ESI: 00070002 EDI: edce5e00 EBP: edc3fe64 ESP: edc3fe54
    DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
    Process gkrellm (pid: 3969, ti=edc3e000 task=f1e4e000 task.ti=edc3e000)
    Stack: f764f77c f7478e00 edce5e00 f6dd6000 edc3fe84 f8e590e8 edc7a239 f6d14034
    f764f34c f6c0f7e0 edc3ff30 f6d14034 edc3fea8 f8e591b7 edc3ff30 edc3ff2c
    00000000 f70aa668 f6d14034 f8e59165 bfbfadb0 edc3ff40 f8e587aa edc3ff2c
    Call Trace:
    [] show_trace_log_lvl+0x1a/0x2f
    [] show_stack_log_lvl+0x9d/0xa5
    [] show_registers+0xa4/0x1bd
    [] die+0x122/0x206
    [] do_page_fault+0x535/0x623
    [] error_code+0x72/0x78
    [] snd_mixer_oss_get_volume1_vol+0x74/0xf1 [snd_mixer_oss]
    [] snd_mixer_oss_get_volume1+0x52/0xa5 [snd_mixer_oss]
    [] snd_mixer_oss_ioctl1+0x673/0x71e [snd_mixer_oss]
    [] snd_mixer_oss_ioctl+0xb/0xd [snd_mixer_oss]
    [] do_ioctl+0x22/0x67
    [] vfs_ioctl+0x237/0x24a
    [] sys_ioctl+0x31/0x4b
    [] syscall_call+0x7/0xb
    =======================
    Code: 3f 49 c7 89 f8 59 5b 5e 5f 5d c3 55 89 e5 57 89 d7 56 53 89 c3 83 ec 04
    8b 70 5c 8b 40 60 05 7c 01 00 00 89 45 f0 e8 c0 3f 49 c7 46 04 89 fa 89
    4
    3 5c 89 d8 8b 0e ff 11 89 73 5c 89 c7 8b 45
    EIP: [] snd_hda_mixer_bind_ctls_info+0x20/0x43 [snd_hda_intel]
    SS:ESP 0068:edc3fe54
    ---[ end trace 0a20bc209e9397cc ]---

    similar issue report present in ALSA bugtracking system
    https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3652

    Signed-off-by: Serge A. Suchkov
    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Serge A. Suchkov
     
  • In linus' git tree I found this problem. Is it also in the alsa tree?
    please confirm it's the right fix. The patch was not yet tested.

    Signed-off-by: Roel Kluin
    Acked-by: Timur Tabi
    Signed-off-by: Mark Brown
    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Roel Kluin
     
  • The GPIO pin 0 of the CM9780 must be set when muting the line input even
    on non-Xonar cards.

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

    Clemens Ladisch
     
  • Fixed the SPDIF output on Conexant Cx5045 codec. Added the missing
    pin output setting and fixed the wrong NID for digital audio-out widget.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • This patch enables snoop on Intel SCH chipset, eliminating static during
    playback.

    Signed-off-by: Tobin Davis
    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • Removed invalid __devinit from hdsp_request_fw_loader() and
    snd_hwdep_create_hwdep() that aren't always init functions.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • Removed invalid __devinit and __devexit that are remaining after
    split to a helper module.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • The driver resubmits URBs from an error handler and schedules the error
    handler from the URBs' completion handlers. To reliably kill the cycle
    a flag must be used.

    Signed-off-by: Oliver Neukum
    Signed-off-by: Clemens Ladisch
    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     
  • Add proper ifdef's to the patch loading code moved from the old instr
    layer so that opl3 driver can be compiled without the sequencer support.

    Signed-off-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Takashi Iwai
     

15 Feb, 2008

1 commit

  • The sound drivers and the pnpbios core test for current->root != NULL. This
    test seems to be unnecessary since we always have rootfs mounted before
    initializing the drivers.

    Signed-off-by: Jan Blunck
    Acked-by: Christoph Hellwig
    Cc: Bjorn Helgaas
    Cc: Jaroslav Kysela
    Acked-by: Takashi Iwai
    Cc: Al Viro
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Blunck
     

09 Feb, 2008

1 commit


07 Feb, 2008

3 commits

  • If count reaches zero, the loop ends, but the postfix decrement still
    subtracts: testing for 'count == 0' will not work.

    Signed-off-by: Roel Kluin
    Reviewed-by: Ray Lee
    Acked-by: Muli Ben-Yehuda
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Roel Kluin
     
  • This patch contains the scheduled removal of OSS drivers whose config
    options have been removed in 2.6.23.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • After the APUS removal, some code can be removed.

    Signed-off-by: Adrian Bunk
    Acked-by: Geert Uytterhoeven
    Cc: Bartlomiej Zolnierkiewicz
    Cc: Karsten Keil
    Cc: James Bottomley
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk