13 Oct, 2009
7 commits
-
In the commit f0613d5752d8f7d1d02e6d40947f38877fdf9c90
ALSA: hda - Add full rates/formats support for Nvidia HDMI
the flag LIMITIED_RATE_FMT_SUPPORT was set as default, as I forgot
to clear before commit.Let's enable all formats/rates as default.
Signed-off-by: Takashi Iwai
-
After a reboot on an ARM1176 which amounts to a softreset, it has been
noted that the ALSA driver does not get registered and the probe fails
with the error "aaci-pl041 fpga:04: ac97 read back fail". In the process
of reading from a register the SL1TxBusy bit is set indicating that the
transceiver is busy and remains so until the default timeout occurs.
Set the Power down register 0x26 to an arbitrary value as specified in
the PL041 manual (page: 3-18) so that AACISL1TX/AACISL2TX registers take
their default state.Signed-off-by: Philby John
Signed-off-by: Takashi Iwai -
The volume-knob widget needs to be set with 0x7f instead of 0xff
for Dell laptops with STAC9228 codec, too, like the previous commit.Reference: Novell bnc#545013
http://bugzilla.novell.com/show_bug.cgi?id=545013Signed-off-by: Takashi Iwai
-
On FSC laptops, the sound gets muted gradually when the volume is chnaged.
This is due to the wrong volume-knob widget setup. The delta bit (bit 7)
shouldn't be set for these devices.This patch adds a new quirk to set the value 0x7f to the widget 0x24
instead of 0xff.Reference: Novell bnc#546006
http://bugzilla.novell.com/show_bug.cgi?id=546006Signed-off-by: Takashi Iwai
-
Signed-off-by: Takashi Iwai
-
ALC861-VD lenovo model causes overflow of spec->init_verbs entries due to
the recent changes. Simply increase the array size to avoid the overflow.Reported-by: Luca Tettamanti
Signed-off-by: Takashi Iwai
12 Oct, 2009
1 commit
-
If two streams are started immediately after one another (such as a
playback and a recording stream), the call to set hw params fails with
EBUSY. This patch makes the call succeed, so playback and recording will
work properly.Signed-off-by: David Henningsson
Signed-off-by: Takashi Iwai
10 Oct, 2009
1 commit
-
Fix the num_total_dacs setting for Chaintech AV710. The existing comment
that only PSDOUT0 is connected is correct, but since the card is using
packed AC97 mode to send 6 channels to the codec, num_total_dacs should be
set to 6 and not 2. This allows 6-channel surround to work. Also clarify
a comment regarding the additional WM8728 codec on this card (it's connected
to the SPDIF output and always receives the same data).Signed-off-by: Robert Hancock
Signed-off-by: Takashi Iwai
09 Oct, 2009
1 commit
-
Allow Nvidia HDMI to support more possible sample rates and formats.
At best, the really supported rates and formats should be determined
together with the negotiation with the HDMI receiver, but it's currently
not implemented yet (Nvidia stuff seems incompatible with HDMI 1.3
standard in this regard). As a compromise, we enable all bits, assuming
that all recent devices do support such rates/formats.Tested-by: Alan Alan
Signed-off-by: Takashi Iwai
08 Oct, 2009
5 commits
-
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 -
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/0x70other 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/0x70Signed-off-by: Krzysztof Helt
Signed-off-by: Takashi Iwai -
* 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
07 Oct, 2009
4 commits
-
Since patch_alc268() doesn't call set_capture_mixer() (due to its h/w
design different from other siblings), it needs to call fixup_automic_adc()
explicitly to set up the auto-mic routing. Otherwise the indices for
int/ext mics aren't set properly.Reference: Novell bnc#544899
http://bugzilla.novell.com/show_bug.cgi?id=544899Signed-off-by: Takashi Iwai
-
Signed-off-by: Mark Brown
Cc: stable@kernel.org -
These should be handled via set_tdm_slot() now and cause build
failures as-is.Signed-off-by: Mark Brown
06 Oct, 2009
4 commits
-
The "VIA DXS" controls are actually volume controls that apply to the
four PCM substreams, so we better indicate this connection by moving the
controls to the PCM interface.Commit b452e08e73c0e3dbb0be82130217be4b7084299e in 2.6.30 broke the
restoring of these volumes by "alsactl restore" that most distributions
use; the renaming in this patch cures that regression by preventing
alsactl from applying the old, wrong volume levels to the new controls.
http://bugzilla.kernel.org/show_bug.cgi?id=14151
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=532613Signed-off-by: Clemens Ladisch
Cc:
Signed-off-by: Takashi Iwai -
alc_subsystem_id() tries to pick up a headphone pin if not configured,
but this caused side-effects as the problem in commit
15870f05e90a365f8022da416e713be0c5024e2f.This patch fixes the driver behavior to pick up invalid HP pins; at least,
the pins that are listed as the primary outputs aren't taken any more.Signed-off-by: Takashi Iwai
-
…ie/sound-2.6 into for-2.6.32
-
ASUS A7K needs additional GPIO1 bit setup; it has to be cleared.
Added a new fixup hook for this laptop so that it works as is.Refernece: Novell bnc#494309
http://bugzilla.novell.com/show_bug.cgi?id=494309Signed-off-by: Takashi Iwai
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=544161Signed-off-by: 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
...
02 Oct, 2009
8 commits
-
Fix for typo in commit 8d50e447d19fec64adebeef55f2b60d695435412
ASoC: Factor out I/O for Wolfson 8 bit data 16 bit register CODECsSigned-off-by: Jonathan Cameron
Signed-off-by: Mark Brown -
Don't pass the advanced position to strlcat() but just gives the buffer
head position so that the max size limit can be checked correctly.
Introduced a new helper function to standaralize strlcat() calls.Signed-off-by: Takashi Iwai
-
Since the SND_SOC_DAPM_LINE can be input or output, additional check is
needed in order to determine if the widget is connected as input or
output.
When checking for connected outputs, if the widget is line, than check
if the sources list is not empty (line is connected as output)
For input endpoint check, when the widget is line, also check if the
sinks list is not empty (line is connected as input).Signed-off-by: Peter Ujfalusi
Signed-off-by: Mark Brown -
The remove callback has to be marked as __devexit, as the dynamic unbind
is possible.Reported-by: Uwe Kleine-König
Signed-off-by: Takashi Iwai -
The auto-parser for ALC662/663/272 codecs doesn't work properly when
a speaker is connected to mono NID 0x17, and doesn't handle the dynamic
DAC assignment properly.This patch fixes the issues and also improves the assignment of DACs
so that HP and speakers can have independent volume controls.Signed-off-by: Takashi Iwai
-
On Soundblaster X-FI Titenium with emu20k2 the SIDE and SURROUND mute
functions are swapped.
It was checked with 'speaker-test -c 8 -s 3' and (un)mute surround or
'speaker-test -c 8 -s 7' and (un)mute side. The volume seems not
to be affected and works as expected.Signed-off-by: Sven Eckelmann
Signed-off-by: Takashi Iwai -
I can't see any reason for struct i2c_driver keywest_driver to not be
static.Signed-off-by: Jean Delvare
Signed-off-by: Takashi Iwai -
BugLink: https://bugs.launchpad.net/bugs/410933
This Sony VAIO model also needs External Amplifier unmuted for audible
playback, so make sure we set the inv_eapd quirk.Signed-off-by: Daniel T Chen
Signed-off-by: Takashi Iwai
01 Oct, 2009
5 commits
-
When the auto-mic switching between an analog and a digital mic is
needed with IDT codecs, the current driver doesn't reset the connection
of the digital mux.This patch fixes the behavior by checking both mux connections properly.
Signed-off-by: Takashi Iwai
-
Some of the Blackfin options don't directly follow the kconfig options
they depend on, so kconfig is unable to display the proper tree. So sort
the options such they expand/collapse properly.Signed-off-by: Barry Song
Signed-off-by: Mike Frysinger
Signed-off-by: Mark Brown -
Patch was tested on Toshiba NB200 and is found to enable sound.
Signed-off-by: Manoj Iyer
Cc: stable@kernel.org
Signed-off-by: Takashi Iwai -
wm8940 requires I2C.
Signed-off-by: Takashi Iwai