08 Oct, 2009

5 commits

  • Takashi Iwai
     
  • Takashi Iwai
     
  • Increase the default and maximum PCM buffer prellocation size for ice1724's
    SPDIF and independent stereo pair outputs to 256K, which is the hardware's
    maximum supported size. This allows a reduction in interrupt rate and
    potentially power usage when an application is not latency-critical.

    Signed-off-by: Robert Hancock
    Signed-off-by: Takashi Iwai

    Robert Hancock
     
  • Fix following circular locking in the opl3 driver.

    =======================================================
    [ INFO: possible circular locking dependency detected ]
    2.6.32-rc3 #87
    -------------------------------------------------------
    swapper/0 is trying to acquire lock:
    (&opl3->voice_lock){..-...}, at: [] snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth]

    but task is already holding lock:
    (&opl3->sys_timer_lock){..-...}, at: [] snd_opl3_timer_func+0x19/0xc0 [snd_opl3_synth]

    which lock already depends on the new lock.

    the existing dependency chain (in reverse order) is:

    -> #1 (&opl3->sys_timer_lock){..-...}:
    [] validate_chain+0xa25/0x1040
    [] __lock_acquire+0x2da/0xab0
    [] lock_acquire+0x7a/0xa0
    [] _spin_lock_irqsave+0x40/0x60
    [] snd_opl3_note_on+0x686/0x790 [snd_opl3_synth]
    [] snd_midi_process_event+0x322/0x590 [snd_seq_midi_emul]
    [] snd_opl3_synth_event_input+0x15/0x20 [snd_opl3_synth]
    [] snd_seq_deliver_single_event+0x100/0x200 [snd_seq]
    [] snd_seq_deliver_event+0x47/0x1f0 [snd_seq]
    [] snd_seq_dispatch_event+0x3b/0x140 [snd_seq]
    [] snd_seq_check_queue+0x10c/0x120 [snd_seq]
    [] snd_seq_enqueue_event+0x6b/0xe0 [snd_seq]
    [] snd_seq_client_enqueue_event+0xdd/0x100 [snd_seq]
    [] snd_seq_write+0xea/0x190 [snd_seq]
    [] vfs_write+0x96/0x160
    [] sys_write+0x3d/0x70
    [] syscall_call+0x7/0xb

    -> #0 (&opl3->voice_lock){..-...}:
    [] validate_chain+0x1036/0x1040
    [] __lock_acquire+0x2da/0xab0
    [] lock_acquire+0x7a/0xa0
    [] _spin_lock_irqsave+0x40/0x60
    [] snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth]
    [] snd_opl3_timer_func+0xa0/0xc0 [snd_opl3_synth]
    [] run_timer_softirq+0x166/0x1e0
    [] __do_softirq+0x78/0x110
    [] do_softirq+0x46/0x50
    [] irq_exit+0x36/0x40
    [] do_IRQ+0x42/0xb0
    [] common_interrupt+0x2e/0x40
    [] apm_cpu_idle+0x10f/0x290
    [] cpu_idle+0x21/0x40
    [] rest_init+0x4d/0x60
    [] start_kernel+0x235/0x280
    [] i386_start_kernel+0x66/0x70

    other info that might help us debug this:

    2 locks held by swapper/0:
    #0: (&opl3->tlist){+.-...}, at: [] run_timer_softirq+0xf0/0x1e0
    #1: (&opl3->sys_timer_lock){..-...}, at: [] snd_opl3_timer_func+0x19/0xc0 [snd_opl3_synth]

    stack backtrace:
    Pid: 0, comm: swapper Not tainted 2.6.32-rc3 #87
    Call Trace:
    [] print_circular_bug+0xc8/0xd0
    [] validate_chain+0x1036/0x1040
    [] ? check_usage_forwards+0x54/0xd0
    [] __lock_acquire+0x2da/0xab0
    [] lock_acquire+0x7a/0xa0
    [] ? snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth]
    [] _spin_lock_irqsave+0x40/0x60
    [] ? snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth]
    [] snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth]
    [] ? _spin_lock_irqsave+0x47/0x60
    [] snd_opl3_timer_func+0xa0/0xc0 [snd_opl3_synth]
    [] run_timer_softirq+0x166/0x1e0
    [] ? run_timer_softirq+0xf0/0x1e0
    [] ? snd_opl3_timer_func+0x0/0xc0 [snd_opl3_synth]
    [] __do_softirq+0x78/0x110
    [] ? _spin_unlock+0x1d/0x20
    [] ? handle_level_irq+0xaf/0xe0
    [] do_softirq+0x46/0x50
    [] irq_exit+0x36/0x40
    [] do_IRQ+0x42/0xb0
    [] ? trace_hardirqs_on_caller+0x12c/0x180
    [] common_interrupt+0x2e/0x40
    [] ? default_idle+0x38/0x50
    [] apm_cpu_idle+0x10f/0x290
    [] cpu_idle+0x21/0x40
    [] rest_init+0x4d/0x60
    [] start_kernel+0x235/0x280
    [] ? unknown_bootoption+0x0/0x210
    [] i386_start_kernel+0x66/0x70

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Takashi Iwai

    Krzysztof Helt
     
  • * PLEASE NOTE - this change requires the corresponding update of
    envy24control for ice1712 - kind of an ABI change.
    * The "Multi Track Peak" control is read-only level meters indicator.
    * The control is VERY confusing to most users since it is currently displayed
    in regular mixers. E.g. alsamixer ignores its read-only status
    and allows changing the levels with keys which makes no sense.

    Signed-off-by: Pavel Hofman
    Acked-by: Jaroslav Kysela
    Signed-off-by: Takashi Iwai

    Pavel Hofman
     

07 Oct, 2009

4 commits


06 Oct, 2009

4 commits


05 Oct, 2009

1 commit

  • The recent auto-parser doesn't work for machines with a single output
    with ALC861, such as Toshiba laptops, because alc_subsystem_id() sets
    the hp_pins[0] while it's listed in line_outs[0].
    This ends up with the doubled initialization of the same mixer widget,
    and it mutes the DAC route because hp_pins has no DAC assigned.

    To fix this problem, just check spec->autocfg.hp_outs and speaker_outs
    so that they are really detected pins.

    Reference: Novell bnc#544161
    http://bugzilla.novell.com/show_bug.cgi?id=544161

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

04 Oct, 2009

3 commits

  • * 'for-linus' of ssh://master.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (21 commits)
    ALSA: usb - Use strlcat() correctly
    ALSA: Fix invalid __exit in sound/mips/*.c
    ALSA: hda - Fix / improve ALC66x parser
    ALSA: ctxfi: Swapped SURROUND-SIDE mute
    sound: Make keywest_driver static
    ALSA: intel8x0 - Mute External Amplifier by default for Sony VAIO VGN-B1VP
    ALSA: hda - Fix digita/analog mic auto-switching with IDT codecs
    ASoC: fix kconfig order of Blackfin drivers
    ALSA: hda - Added quirk to enable sound on Toshiba NB200
    ASoC: Fix dependency of CONFIG_SND_PXA2XX_SOC_IMOTE2
    ALSA: Don't assume i2c device probing always succeeds
    ALSA: intel8x0 - Mute External Amplifier by default for Sony VAIO VGN-T350P
    ALSA: echoaudio - Re-enable the line-out control for the Mia card
    ALSA: hda - Resurrect input-source mixer of ALC268 model=acer
    ALSA: hda - Analog Devices AD1984A add HP Touchsmart model
    ALSA: hda - Add HP Pavilion dv4t-1300 to MSI whitelist
    ALSA: hda - CD-audio sound for hda-intel conexant benq laptop
    ASoC: DaVinci: Correct McASP FIFO initialization
    ASoC: Davinci: Fix race with cpu_dai->dma_data
    ASoC: DaVinci: Fix divide by zero error during 1st execution
    ...

    Linus Torvalds
     
  • Takashi Iwai
     
  • Takashi Iwai
     

02 Oct, 2009

8 commits


01 Oct, 2009

7 commits


30 Sep, 2009

2 commits


29 Sep, 2009

1 commit

  • Reference: ALSA bug #0004614
    https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4614

    port-A (0x11) - front hp-out
    port-D (0x12) - rear line out
    port-E (0x1c) - front mic-in
    port-F (0x16) - Internal speakers
    digital-mic (0x17) - Internal mic

    init verbs, mixers, jack sensing and PCI_QUIRK to support this hardware

    Signed-off-by: Miguel de Barros
    Signed-off-by: Takashi Iwai

    Miguel de Barros
     

28 Sep, 2009

1 commit


25 Sep, 2009

1 commit


24 Sep, 2009

3 commits