Commit Graph

68 Commits

Author SHA1 Message Date
Takashi Iwai ebef7cfc81 Merge branch 'topic/ca0106-spdif-stream' into topic/ca0106 2008-12-20 23:43:06 +01:00
Takashi Iwai 6bcdbd55b4 Merge branch 'topic/ca0106-resume' into topic/ca0106 2008-12-20 23:43:00 +01:00
Takashi Iwai 6a8436419d Merge branch 'topic/ca0106-capture-no-44khz' into topic/ca0106 2008-12-20 23:42:55 +01:00
Takashi Iwai ff75427a7f ALSA: ca0106 - disable 44.1kHz capture
The capture with 44.1kHz on ca0106 seems to cause loud noises on
later playbacks, which doesn't support 44.1kHz.  A simple fix is to
disable 44.1kHz, as the "default" PCM with dsnoop is anyway only with
48kHz.

Reference: Novell bnc#447624
	https://bugzilla.novell.com/show_bug.cgi?id=447624

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-20 11:20:55 +01:00
Takashi Iwai 72077aa336 ALSA: ca0106 - Add missing card->private_data initialization
Added the missing card->private_data initialization that caused obvious
problems at PM.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-20 11:12:51 +01:00
Takashi Iwai 50232d62ca ALSA: ca0106 - Check ac97 availability at PM
Check the availability of ac97 at PM suspend/resume callbacks.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-20 09:42:09 +01:00
Takashi Iwai 3d4758299f ALSA: ca0106 - Add IEC958 PCM Stream controls
Added "IEC958 PCM Stream" controls for the per-stream IEC958 status
bits.  Using this instead of "IEC958 Default" is safer since the status
bits will be recovered to the default states after closing the PCM
stream.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19 12:13:18 +01:00
Takashi Iwai 86effd7e12 ALSA: ca0106 - Don't override the values at resume
Don't override some values in ca0106_init_chip() at resume.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19 12:04:06 +01:00
Ben Stanley bb1f24bf00 ALSA: ca0106 MSI K8N Diamond MB spi_dac 2->1
This patch removes an inconsistency that became apparent when I
documented the fields of snd_ca0106_details. spi_dac is always
used in a 'boolean' sense, so this cleanup should make no difference.

[Actually, there is one place checking explicitly spi_dac == 1, so
 this will change the behavior.  But, supposing it's rather a typo,
 I apply this clean-up patch -- tiwai]

Signed-off-by: Ben Stanley <Ben.Stanley@exemail.com.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-16 15:33:54 +01:00
Takashi Iwai 44411e07c2 ALSA: ca0106 - Check return value of pci_enable_device() in resume
The return value of pci_enable_device() must be checked even in resume
callback:
  sound/pci/ca0106/ca0106_main.c:1779: warning: ignoring return value of ‘pci_enable_device’, declared with attribute warn_unused_result

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-10 08:30:40 +01:00
Takashi Iwai 5da95273c2 ALSA: ca0106 - Add power-management support
Added the missing PM support for snd-ca0106 driver.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-04 15:25:03 +01:00
Mariusz Kozlowski e78521f321 ALSA: misc typo fixes
Fixed typos in disabled codes via #if 0.

Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-19 10:36:08 +02:00
Jaroslav Kysela d67f49b021 ALSA: Cosmetic change: CA0106 on MSI K8N Diamond PLUS Motherboard
Make ',' delimited with space as for other entries in table.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-08-29 10:01:04 +02:00
Stephen Rothwell e5778ec91e ALSA: fix for CA0106 on MSI K8N Diamond PLUS Motherboard
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-08-25 17:47:42 -07:00
Travis Place c5d44423d5 ALSA: CA0106 on MSI K8N Diamond PLUS Motherboard
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 <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-08-25 08:13:46 +02:00
Takashi Iwai f52845ad77 ALSA: ca0106 - Add entry for another MSI K8N Diamond MB
Added an entry for another MSI K8N Diamond mobo with SSID 1102:1009.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-06-18 09:31:59 +02:00
Takashi Iwai ebf029da38 [ALSA] Fix possible races at free_irq in PCI drivers
The irq handler of PCI drivers must be released before releasing other
resources since the handler for a shared irq can be still called and
may access the freed resource again.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-04-24 12:00:41 +02:00
Harvey Harrison d967a02712 [ALSA] sound: ca0106_main.c fix shadowed variable warnings
change to intr_enable as per the two functions it is defined in.
sound/pci/ca0106/ca0106_main.c:438:15: warning: symbol 'enable' shadows an earlier one
sound/pci/ca0106/ca0106_main.c:159:12: originally declared here
sound/pci/ca0106/ca0106_main.c:449:15: warning: symbol 'enable' shadows an earlier one
sound/pci/ca0106/ca0106_main.c:159:12: originally declared here

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-04-24 12:00:17 +02:00
Takashi Iwai 9004acc70e [ALSA] Remove sound/driver.h
This header file exists only for some hacks to adapt alsa-driver
tree.  It's useless for building in the kernel.  Let's move a few
lines in it to sound/core.h and remove it.
With this patch, sound/driver.h isn't removed but has just a single
compile warning to include it.  This should be really killed in
future.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:48 +01:00
Clemens Ladisch b83f346bc4 [ALSA] remove incorrect usage of SNDRV_PCM_INFO_SYNC_START and snd_pcm_set_sync()
Set the SNDRV_PCM_INFO_SYNC_START flag and the substream's sync ID
(only) if the substream actually can be linked to another one.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:52 +02:00
Clemens Ladisch 29998d24ab [ALSA] check for linked substreams of different cards
It is possible to have linked substreams that belong to different cards
and/or different drivers.  This patch changes some drivers to make sure
that they do not incorrectly try to handle substreams of a different
card.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:13 +02:00
Trent Piepho b87c464ea2 [ALSA] ca0106: remove extra commands in SPI DAC init sequence
The init sequence set a number of registers more than once to different
values.  It's only necessary to set them once to their final values.
It also never actually updated the digital attenuation settings.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:00 +02:00
Trent Piepho 18b5d32f20 [ALSA] ca0106: Add more symbol SPI register names and use them
Add more symbol name for SPI register values.  Change the SPI_XXX_BIT defines
from the bit number to a mask.  Saves having to write (1<<SPI_XXX_BIT) all the
time to convert to mask.  We never end up wanting the bit number.
Use all the symbol names for the SPI DAC init sequence.  The sequence is
exactly the same as it was before.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:57:59 +02:00
Trent Piepho 485100706b [ALSA] ca0106: power down SPI DAC channels when not in use
For cards with an SPI DAC (SB Live 24-bit / Audigy SE), power down channels
0-2 when not in use.  They are powered up on PCM open and down again on PCM
close.  Channel 4 (== Front) is not powered down, as it is used for capture
feedback.  Powering it down would effectively kill line in pass-through.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:57:58 +02:00
Trent Piepho b18cd538a9 [ALSA] ca0106: Add analog mute controls for cards with SPI DAC
Add four mute controls for the analog output channels for cards that use
an SPI DAC, like the SB0570 SB Live! 24-bit / Audigy SE.  The Wolfson DAC
doesn't support muting left/right so the controls are mono.
The chip state struct gets a 32-byte array to act as a shadow of the spi
dac registers.  Only two registers are used for mute, but more would be
needed for analog gain, de-emphasis, DAC power down, phase inversion, and
other features.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:57:55 +02:00