HDA Codec driver
Fixed the handling of amp cache in hda-codec driver.
The confliction of cache values with different indices should be fixed now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,Memalloc module,RME HDSP driver,RME9652 driver
Add the write support to snd-page-alloc proc file for buffer pre-allocation.
Removed the pre-allocation codes via module options.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Timer Midlevel,ALSA sequencer,ALSA<-OSS sequencer,Digigram VX core
I2C tea6330t,GUS Library,VIA82xx driver,VIA82xx-modem driver
CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,YMFPCI driver
Digigram VX Pocket driver,Common EMU synth,USB generic driver,USB USX2Y
Checking a pointer for NULL before calling kfree() on it is redundant,
kfree() deals with NULL pointers just fine.
This patch removes such checks from sound/
This patch also makes another, but closely related, change.
It avoids casting pointers about to be kfree()'ed.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Intel8x0 driver
To avoid confusion, the structure members vendor/device were renamed
to subvendor/subdevice, because we compare them with PCI subsystem vendor
and subsystem device.
Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
AC97 Codec,ATIIXP driver,VIA82xx driver
To avoid confusion, the structure members vendor/device were renamed
to subvendor/subdevice, because we compare them with PCI subsystem vendor
and subsystem device.
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
ALI5451 driver
This patch adds modem support for ali5451. Since it is same pci device
all is done in ali5451.c.
Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
CA0106 driver
Use the DMA_32BIT_MASK constant from dma-mapping.h
when calling pci_set_dma_mask() or pci_set_consistent_dma_mask()
See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details
Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch>
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
AC97 Codec
Simple MC97 modem mixer with two common controls: Off-hook and CID,
and Si3056 MC specific control: Modem Speaker.
Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Documentation,ICE1724 driver
Add the support of Chaintech AV-710 to ice1724 driver.
The patch includes the WM-codec initialization fix by
Jaanus Kivistik <jaanus@no.spam.ee>.
Since both AV-710 and AMP Audio2000 have the same SSID, initialize
WM codecs as default for both devices. In case it breaks Audio2000,
you can pass 'model=amp2000' option to avoid WM codec initialization.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Fixed the capture on some ALC880 devices.
The node 0x07 is sometimes invalid as an ADC. Also, the intialization
of ADC nodes are fixed on some models.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,ICE1712 driver
Updated the documentation for ice1712 and ice1724 drivers.
Added the device description for shuttle SN25P missing in the last patch.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
CA0106 driver
This fixes a bug whereby when the snd-ca0106 module first loads,
alsamixer says 'SPDIF Out [Off]' but no analog sound comes from the speakers.
This covers any bug reports that said things like
'mixer fails to remember analog output on, when the system is rebooted.'
Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
Maestro3 driver
Add a hardware volume quirk list to the maestro3 driver. Details were
taken from the Windows driver. Hardware volume control is enabled only for
the systems in the list.
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Suppressing the error message regarding no AFG.
This is often harmless (e.g. probing a modem codec).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
CA0106 driver,HDA Codec driver
This patch makes needlessly global code static.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,HDA Intel driver
Added the support of VIA VT8251/VT8237A HD-Audio controllers.
They are (almost) compatible with Intel ICH6/7.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,HDA Intel driver
This patch changes the Intel HD Audio device driver to include
the support of HD Audio device embedded in ATI south bridge
IXP450. Because the design of ATI chipset follows intel HD Audio
specification 1.0, the programming method is the same as that
of intel HD Audio device exception one minor change which requires
to enable snoop for DMA transport. There are 3 changes that have been
made to hda_intel.c file.
1. Added device ID for ATI HD Audio device;
2. Increase maximum CODEC supported to 4;
3. Enable snoop during the driver initialization.
Signed-off-by: Frederick Li <fli@ati.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Added 'test' model for testing/debugging the devices with ALC880 codec.
This model is built only when CONFIG_SND_DEBUG is set.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,HDA Intel driver
Added position_fix module option to HDA-intel driver for fixing up
the DMA position (possibly hardware-) bugs.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Maestro3 driver
Some HP OmniBook laptops (500 and 6000 at least) require some GPIO magic
before the HW volume buttons work. This patch makes them work mostly.
Something is still missing to make them work perfectly. However I have been
unable to figure out what exactly.
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Maestro3 driver
Due to a typo interrupts were never actually acked or disabled.
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
EMU10K1/EMU10K2 driver
The following patch adds SB0060 to emu_chip_details.
Signed-off-by: Mikael Magnusson <mikaelmagnusson@glocalnet.net>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
AC97 Codec
The code for AD1980/AD1985/AD1986 codecs forgot to enable the code to
switch the jack sharing bits on AD1888-compatible codecs.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
AC97 Codec
The code for modifying the center/LFE disable bit on AD1888 codecs
accidentally toggled the mute split bit instead.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
CS4281 driver
Reset the FPDN bit of the EPPMC register if needed.
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
EMU10K1/EMU10K2 driver
e.g. When HD Capture source is set to SPDIF,
setting HD Capture channel to 0 captures from CDROM digital input.
setting HD Capture channel to 1 captures from SPDIF in.
Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
EMU10K1/EMU10K2 driver
The capture rate does in fact vary, but it only captures anything if
the HD Capture source is set to I2S or AC97. I have not tested if the sound
is actually captured from an physical input of some type or not.
TODO: Get SPDIF capture working.
Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
AC97 Codec
Add the 'Mic Front Input Switch' control to the mixer for ALC850.
Enabling this input is required for using the front panel microphone
connector with ASUS A8V motherboard.
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
AC97 Codec
ac97_enum mixer elements (e.g., 'Capture Source') did not work because
of wrong bitmask calculation in snd_ac97_get_enum_double() and
snd_ac97_put_enum_double().
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=1072
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
HDA Codec driver
Fix and cleanup of CM9880 automatic PIN configuration.
snd_hda_codec_setup_stream() doesn't do anything when NID is 0.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
EMU10K1/EMU10K2 driver
When building with gcc -W sound/pci/emu10k1/emupcm.c produces this little
warning in 2.6.12-rc2-mm3 :
sound/pci/emu10k1/emupcm.c:265: warning: 'inline' is not at beginning of
declaration
No big deal, but trivial to fix.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA generic driver,HDA Codec driver
Add initial SigmaTel codec support for 9200 and 922x. Note that
this hda patch relies on the configuration default registers to
be set correctly (normally by BIOS/firmware) in order for it to
set up pin widgets properly. There's a test switch in the patch
so it will work with the SigmaTel reference boards that are usually
plugged into a system that doesn't set the configuration default
registers. It supports 2 channel analog out and line/mic in. I
plan to add >2 channel support and spdif support shortly.
Please apply.
Signed-off-by: Matt <matt@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver,HDA generic driver
Fix some vref defines so they are valid for the different bits in
the pin cap and pin control registers. Please apply.
Signed-off-by: Matt <matt@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
AC97 Codec
The handling of shared surround/clfe output jacks with line/mic-in
on some AC97 codecs is improved.
Instead of 'Line-In As Surround' or 'Mic As Center/LFE' switch, two
new enum controls are introduced: 'Channel Mode' and 'Surround Jack Mode'.
The formar changes the current output mode among 2, 4 and 6-channels.
The latter controls whether the jacks are shared or independent.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
PCM Midlevel,CA0106 driver,EMU10K1/EMU10K2 driver
Fix by Guillaume Chazarain <guichaz@yahoo.fr>:
Some tunables in /proc have a write() function, but as their
permission does not reflect it, it can be confusing to the user.
So here is a patch that corrects the mode of those files. Note that I
have only tested the 'xrun_debug' entry.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,VIA82xx driver
Add support for full sample rate conversion capabilities of DXS
channels present in VIA VT8233/5/7 controllers:
- any sample rate in the 8000 ... 48000 Hz range is supported even if
the AC'97 codec supports only 48000 Hz output;
- different DXS channels can use different sample rates at the same
time (the controller performs required sample rate conversion and
mixing in hardware).
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
FM801 driver
The Gallant Odyssey Sound 4 card is based on the ForteMedia FM801
chip, but has a different PCI ID.
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
YMFPCI driver
This patch removes some dead code found by the Coverity checker.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ICE1712 driver
Provides preliminary support for the Terratec Phase 28 card.
Not extensively tested and probably buggy, but it seems to work.
Signed-off-by: Simone Zinanni <simone@develer.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
EMU10K1/EMU10K2 driver
Although we can set 44100 as the output rate, the SPDIF can do it, but the Analog output cannot.
The SPDIF has the bug, whereby the Left channel arrives one sample late, so although we don't do any resampling,
it is not good for AC3 non-audio output.
Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
HDA Codec driver
Patch by C.L. Tien <cltien@cmedia.com.tw>:
The patch makes cm9880 to choose multi-channel jacks automatically.
1. I found the current code has basic_init, which already includes
necessary controls for 6-stack initialization, so I don't need
another model.
2. I add a new model 'auto' to let the driver find a. if there are
option real panel/front panel, b. the jacks to be used for multichannel.
Because the jack color are based on MS's channel sequence, so the 'auto'
model will pick the same jacks for multichannel MS uses. I did this to
hope to minimize users questions. These code can also be applied to other
codecs but I don't have any to test.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Intel8x0-modem driver
With some intel based ac97 modems codec access semaphore is not cleared
after 0x54 AC97 register (GPIO_STATUS) reads. This may causes problems
with newly applied modem mixer (Off-hook switch) and in other cases.
Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
AC97 Codec
- Added CM9780 patch
- Fix the SPDIF support on CM9761/CM9780
- Allow the generic enum callback to pass any number (not power of 2)
as the value mask
Signed-off-by: Takashi Iwai <tiwai@suse.de>
EMU10K1/EMU10K2 driver
This add identification of Audigy 1 model SB0090 and fixes
problems with ac97 codec (mic not working).
Signed-off-by: Peter Zubaj <pzad@pobox.sk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
EMU10K1/EMU10K2 driver
Use expliciitly the old default id strings for backward compatibility.
This will make 'alsactl restore' working again.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
EMU10K1/EMU10K2 driver
This patch converts the emu10k1 driver to use the card capabilities
structure for some more things.
Not extensively tested but seems to work.
Signed-off-by: Lee Revell <rlrevell@joe-job.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
AC97 Codec
Fixed the detection of bit resolution of ac97 mixer controls.
This will fix the problem with TI ac97 codecs.
Signed-off-by: Takashi Iwai <tiwai@suse.de>