Clemens Ladisch [Mon, 21 Jan 2008 07:51:55 +0000 (08:51 +0100)]
[ALSA] oxygen: move model-specific data out of common header
Instead of having model-specific fields in the common struct oxygen, put
them into a private structure that is allocated together with the card
structure.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Clemens Ladisch [Mon, 21 Jan 2008 07:45:37 +0000 (08:45 +0100)]
[ALSA] oxygen: remove MIDI autodetection
The MIDI bit in the MISC register is set by default and cannot be used
to detect the presence of a MIDI port. Instead, add a parameter to the
oxygen_pci_probe() function so that model drivers can specify this.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Fri, 18 Jan 2008 14:32:32 +0000 (15:32 +0100)]
[ALSA] hda-intel - Make azx_get_response() a bit more robust
In azx_[rirb_]get_response(), the timeout is checked at the end of the loop.
It's better to be checked just after the check of the RIRB index to avoid
a bogus error with a too long msleep().
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Fri, 18 Jan 2008 12:36:07 +0000 (13:36 +0100)]
[ALSA] ice1712, ice1724 - Code clean up
Clean up ice1712/ice1724 codes. The board-specific data is allocated
locally in each code instead of having an ungly union in struct ice1712.
Also, fix coding issues in prodigy_hifi.c.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Andrew Paprocki [Fri, 18 Jan 2008 11:51:11 +0000 (12:51 +0100)]
[ALSA] hda_proc - Add a number of new settings to proc codec output
This patch adds additional output to the /proc codec#X info.
The following pieces of information are added to the output:
- Balanced, L/R swap, trigger, impedance sense pin capabilities
- Vref pin capabilities
- Current Vref pin widget control setting
- Default configuration association, sequence, and misc bit test
- EAPD/BTL bits conveying balanced mode, EAPD, and L/R swap
- Power state modified to show state name as well as setting vs actual value
- GPIO parameter output on Audio Function Group, including enumeration of IO
pins which are indicated present (Any I and O pins are not output at this
time)
- Stripe and L/R swap widget capabilities
- All digital converter bits: enable, validity, validity config, preemphasis,
copyright, non-audio, professional, generation level, and content category
- Converter stream and channel values for in/out widgets
- SDI select value for in widgets
- Unsolicited response widget capability tag and enabled bit
- Delay widget capability value
- Processing widget capability benign bit and number of coefficients
- Realtek Define Registers: processing coefficient, coefficient index
[Also, fixed space/tab issues and make codes a bit more readable
-- Takashi]
Signed-off-by: Andrew Paprocki <andrew@ishiboo.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jiang zhe [Thu, 17 Jan 2008 10:19:26 +0000 (11:19 +0100)]
[ALSA] hda-codec - Fix capture source for Cx5045 codec
For codec conexant 5045, I found that the name of 'Capture Source Items'
is different from the name of mixer.
The mixer is:
HDA_CODEC_VOLUME('Ext Mic Playback Volume', 0x17, 0x2, HDA_INPUT),
HDA_CODEC_MUTE('Ext Mic Playback Switch', 0x17, 0x2, HDA_INPUT),
But the capture source item is :
static struct hda_input_mux cxt5045_capture_source = {
.num_items = 2,
.items = {
{ 'IntMic', 0x1 },
{ 'LineIn', 0x2 },
}
};
I think that it's better to change the name of capture_source to avoid
misunderstanding.
Jiang Zhe [Thu, 17 Jan 2008 10:18:41 +0000 (11:18 +0100)]
[ALSA] hda-codec - New model for conexant 5045 codec to support benq r55e
The benq r55e laptop have 3 jacks on the front panel.
One for HP, one for Line In and one for Mic In.
This patch implemented a new model to support it.
[ALSA] hda-codec - remove 11c1:1040 from patch_si3054.c id list
Codec with id 11c1:1040 sitting on hda bus isn't si3054-compatible.
It should be removed from patch_si3054.c id list.
The detailed information
http://archives.linmodems.org/26457
From: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Wed, 16 Jan 2008 15:09:47 +0000 (16:09 +0100)]
[ALSA] hda-intel - Add workarounds for STAC codecs
Some machines with STAC codecs seem to have problems (e.g. no audible
playback) when the delay in codec-read routine is too short.
I still don't figure out which command sequence causes this problem
(due to lack of test hardware), but it's known that increasing the
delay fixes. So, added a stupid workaround here temporarily...
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
T. H. Huth [Wed, 16 Jan 2008 14:57:08 +0000 (15:57 +0100)]
[ALSA] snd-powermac: handle dead DMA transfers
This patch provides the snd-powermac sound driver with the ability to handle
dead DMA transfers. If a dead DMA transfer is detected, the driver now sets
up a new DMA transfer to continue with the sound output at the point where the
old transfer died.
This dead DMA transfer handling has become necessary with recent kernels on
certain G4 PowerMacs. Please refer to the following URLs for more information:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3126
https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/87652
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=436723
The patch is based on the dead DMA transfer handling code from the old dmasound
driver which can be found in the file sound/oss/dmasound/dmasound_awacs.c in
the Linux source code.
Signed-off-by: T. H. Huth <th.huth@googlemail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Randy Dunlap [Wed, 16 Jan 2008 13:56:04 +0000 (14:56 +0100)]
[ALSA] sound: fix caiaq section mismatches
Fix section mismatch in caiaq: these __devinit functions can be
called at any time so they should not be __devinit.
WARNING: vmlinux.o(.text+0x10a8dae): Section mismatch: reference to .init.text:snd_usb_caiaq_audio_init (between 'setup_card' and 'create_card')
WARNING: vmlinux.o(.text+0x10a8dd6): Section mismatch: reference to .init.text:snd_usb_caiaq_midi_init (between 'setup_card' and 'create_card')
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Randy Dunlap [Wed, 16 Jan 2008 13:55:42 +0000 (14:55 +0100)]
[ALSA] sound: fix rme9652 section mismatch
Fix section mismatch in hdsp: snd_hdsp_proc_init() can be called from
an ioctl at any time.
WARNING: vmlinux.o(.text+0x1089bc2): Section mismatch: reference to .init.text: (between 'snd_hdsp_create_alsa_devices' and 'snd_hdsp_free')
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Randy Dunlap [Wed, 16 Jan 2008 13:55:07 +0000 (14:55 +0100)]
[ALSA] sound: fix atiixp section mismatch
Fix section mismatch in atiixp by making some functions __devinit.
WARNING: vmlinux.o(.text+0xfd9304): Section mismatch: reference to .init.data:atiixp_quirks (between 'ac97_probing_bugs' and 'snd_atiixp_codec_detect')
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Randy Dunlap [Wed, 16 Jan 2008 13:54:46 +0000 (14:54 +0100)]
[ALSA] sound: fix ad1889 section mismatch
Fix section mismatch in ad1889 by renaming the pci_driver variable to a
whitelisted variable name.
WARNING: vmlinux.o(.data+0x2e5ff0): Section mismatch: reference to .init.text:snd_ad1889_probe (between 'ad1889_pci' and 'index')
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Randy Dunlap [Wed, 16 Jan 2008 13:54:21 +0000 (14:54 +0100)]
[ALSA] sound: fix mts64 section mismatches
Fix section mismatches in mts64 by making a static variable __devinitdata.
WARNING: vmlinux.o(.data+0x2e33f0): Section mismatch: reference to .init.data:mts64_ctl_smpte_switch (between 'control.19929' and 'snd_mts64_rawmidi_output_ops')
WARNING: vmlinux.o(.data+0x2e33f8): Section mismatch: reference to .init.data:mts64_ctl_smpte_time_hours (between 'control.19929' and 'snd_mts64_rawmidi_output_ops')
WARNING: vmlinux.o(.data+0x2e3400): Section mismatch: reference to .init.data:mts64_ctl_smpte_time_minutes (between 'control.19929' and 'snd_mts64_rawmidi_output_ops')
WARNING: vmlinux.o(.data+0x2e3408): Section mismatch: reference to .init.data:mts64_ctl_smpte_time_seconds (between 'control.19929' and 'snd_mts64_rawmidi_output_ops')
WARNING: vmlinux.o(.data+0x2e3410): Section mismatch: reference to .init.data:mts64_ctl_smpte_time_frames (between 'control.19929' and 'snd_mts64_rawmidi_output_ops')
WARNING: vmlinux.o(.data+0x2e3418): Section mismatch: reference to .init.data:mts64_ctl_smpte_fps (between 'control.19929' and 'snd_mts64_rawmidi_output_ops')
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Tue, 15 Jan 2008 10:41:41 +0000 (11:41 +0100)]
[ALSA] hda-codec - Disable PCBEEP mixer element in test model
It turned out that the PCBEEP element (0x1d) is disabled on some hardwares
although it's defined in the datasheet. Because of the error at info of
this element, the mixer gets totally unusable.
Since the PCBEEP isn't that important feature, it's safer to disable this.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Tobin Davis [Tue, 15 Jan 2008 10:23:55 +0000 (11:23 +0100)]
[ALSA] HDA: Enable chipset gcap usage
This patch removes hardcoded values for the number of streams supported
by the southbridge in most chipsets, and reads these values from the
chipset directly. Most systems are hardwired for 4 streams in each
direction, but newer chipsets change that capability.
Signed-off-by: Tobin Davis <tdavis@dsl-only.net> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Miguel Boton [Sun, 13 Jan 2008 11:03:53 +0000 (12:03 +0100)]
[ALSA] fix compilation warning in GCC
'snd_shutdown_f_ops' is not a pointer so its address will never be NULL.
GCC will complain because 'fops_get' will do an unnecessary check because
'&snd_shutdown_f_ops' is always true.
Signed-off-by: Miguel Boton <mboton@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Claudio Matsuoka [Sun, 13 Jan 2008 10:58:27 +0000 (11:58 +0100)]
[ALSA] hda: Fix 5.1 sound in Dell 6stack ALC888 HDA
This patch fixes 5.1 surround output and headphone detection in the
Dell Inspiron 530 and possibly other Dell systems using the ALC888
codec (mode 6stack-dell).
Andrew Paprocki [Sun, 13 Jan 2008 10:57:17 +0000 (11:57 +0100)]
[ALSA] hda_intel: Fix multiple device support by incrementing device count
Fixes multiple device support by incrementing the static device counter
at the end of the azx_probe() call. Without this, subsequent probes would
always use the index specified for the first card.
Signed-off-by: Andrew Paprocki <andrew@ishiboo.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Fri, 11 Jan 2008 16:38:35 +0000 (17:38 +0100)]
[ALSA] hda-codec - Don't build boost controls for digital mics
The ALC auto-probe creates mic boost controls automatically for the
probed pins, but it assumes that they are analog mics. The digital
mics have no boost controls and must be skipped.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jaroslav Kysela [Fri, 11 Jan 2008 07:45:08 +0000 (08:45 +0100)]
[ALSA] PCM interface - rename SNDRV_PCM_TSTAMP_MMAP to SNDRV_PCM_TSTAMP_ENABLE
Change semantics for SNDRV_PCM_TSTAMP_MMAP. Doing timestamping only in
the interrupt handler might cause that hw_ptr is not related to actual
timestamp. With this change, grab timestamp at every hw_ptr update to
have always valid timestamp + ring buffer position pair.
With this change, SNDRV_PCM_TSTAMP_MMAP was renamed to
SNDRV_PCM_TSTAMP_ENABLE. It's no regression (I think).
Matthew Ranostay [Thu, 10 Jan 2008 15:55:06 +0000 (16:55 +0100)]
[ALSA] hda: 92HD7XXX power management support
Added support for advanced power management support for output ports on
92HD7xxx family of codecs. Inactive output ports are powered down when
the pin sense doesn't detect a connection, and powered back up when a
connection is sensed.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Thu, 10 Jan 2008 15:52:42 +0000 (16:52 +0100)]
[ALSA] Add virtual master control helpers
Added helper functions to implement virtual master volume controls.
The virtual master control is a control element that has multiple
slave controls. The value of master element is equally added to
slave elements.
The functions are written for general purpose, but it's put in the
HD-audio directory as now, since HD-audio driver is the only user.
It should be moved to the common place once after other drivers use
vmaster.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Ian Molton [Thu, 10 Jan 2008 13:50:34 +0000 (14:50 +0100)]
[ALSA] soc - Preliminary ac97 drivers for Toshiba e800 PDAs
Currently only the AUX channel is used (touchscreen)
Signed-off-by: Ian Molton <spyro@f2s.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Ben Dooks [Thu, 10 Jan 2008 13:48:37 +0000 (14:48 +0100)]
[ALSA] S3C2412: suspend and resume support
Support for suspend/resume for the S3C2412 ASoC IIS
core driver.
Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Ben Dooks [Thu, 10 Jan 2008 13:47:21 +0000 (14:47 +0100)]
[ALSA] ASoC: S3C2412 IIS driver
S3C2412 SoC IIS support for ALSA/ASoC
Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Graeme Gregory [Thu, 10 Jan 2008 13:44:24 +0000 (14:44 +0100)]
[ALSA] soc - Reinitialise DMA on every resume
This one changes the DMA initialisation as it turns out the DMA driver
in s3c24xx doesnt store registers between suspend/resume so you have
to re-initialise the channels on every resume.
Signed-off-by: Graeme Gregory <graeme@openmoko.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Mark Brown [Thu, 10 Jan 2008 13:53:48 +0000 (14:53 +0100)]
[ALSA] Bump ASoC core version number
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Mark Brown [Thu, 10 Jan 2008 13:41:46 +0000 (14:41 +0100)]
[ALSA] soc - Don't lock the codec list in snd_soc_dapm_new_widgets()
snd_soc_dapm_new_widgets() takes the codec lock when adding new widgets,
causing lockdep warnings when applications later call down through ALSA
to adjust controls. Since widgets are only added during probe this lock
should be unneeded so don't take it.
Thanks to Dmitry Baryshkov <dbaryshkov@gmail.com> for reporting this issue. Cc: Dmitry Baryshkov <dbaryshkov@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Joe Sauer [Thu, 10 Jan 2008 13:34:56 +0000 (14:34 +0100)]
[ALSA] Fix inverted Phone volume WM9712 mixer control
Signed-off-by: Joe Sauer <jsauer@vernier.com> Signed-off-by: Liam Girdwood <lg@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Matthew Ranostay [Thu, 10 Jan 2008 12:06:26 +0000 (13:06 +0100)]
[ALSA] hda: STAC9228 VT fixes
Moved 2 systems PCI_QUIRK values to STAC_DELL_BIOS. Also the second
front HP jack is incorrect defined in the BIOS VT's for some laptops,
this patch corrects this.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jiang zhe [Thu, 10 Jan 2008 12:05:47 +0000 (13:05 +0100)]
[ALSA] hda-codec - Device ID for Macbook sound card
Please refer to the [0003680] on ALSA bugtracking system.
The user found that 'model=mbp3' works and provided the ID.
From: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Marcin Ślusarz [Wed, 9 Jan 2008 16:56:07 +0000 (17:56 +0100)]
[ALSA] rawmidi: let sparse know what is going on _for real_
snd_rawmidi_kernel_read1/write1 weren't annotated but used
copy_to_user/copy_from_user when one of parameters (kernel) was equal to 0
remove it and add properly annotated parameter
Signed-off-by: Marcin Ślusarz <marcin.slusarz@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Added a mono output mute mixer for the 92hd71bxx family of codecs, this
also removes the need for the mono out node to explicitly unmuted in the
core init.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Tue, 8 Jan 2008 17:13:27 +0000 (18:13 +0100)]
[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>
Takashi Iwai [Tue, 8 Jan 2008 17:09:57 +0000 (18:09 +0100)]
[ALSA] Remove PCM sleep_min and tick
The 'tick' in PCM is set (again) via sw_params. And, nobody uses
this feature at all except for a command line option of aplay.
(This is literally 'nobody', as I checked alsa-lib API calls in all
programs in major distros.)
Above all, if we need finer wake-ups for the position update, it's
basically an issue that the driver should solve, not tuned by each
application.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Tue, 8 Jan 2008 17:05:26 +0000 (18:05 +0100)]
[ALSA] Remove PCM xfer_align sw params
The xfer_align sw_params parameter has never been used in a sane manner,
and no one understands what this does exactly. The current
implementation looks also buggy because it allows write of shorter size
than xfer_align. So, if you do partial writes, the write isn't actually
aligned at all.
Removing this parameter will make some pcm_lib_* code more readable
(and less buggy).
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Tue, 8 Jan 2008 17:00:04 +0000 (18:00 +0100)]
[ALSA] Fix PCM write blocking
The snd_pcm_lib_write1() may block in some weird condition:
- the stream isn't started
- avail_min is big (e.g. period size)
- partial write up to buffer_size - avail_min
The patch fixes this invalid blocking problem.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Tue, 8 Jan 2008 16:57:26 +0000 (17:57 +0100)]
[ALSA] Remove indirect control access
This patch removes the indirect control access to the control elements.
The indirect access has never been used and is even broken on 32bit
ioctl wrapper. Let's clean it up.
The pointers still remain in snd_ctl_elem_* structs just to make sure
that the struct size won't change. Once after checking the size
consistency, we can get rid of them, too.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jonathan Woithe [Tue, 8 Jan 2008 11:33:19 +0000 (12:33 +0100)]
[ALSA] hda-codec - Add test model for ALC268
This implements a test model for the ALC268. It depends on the feature
added by alc260-test-eapd-0.2.diff. This patch also adds a mention of
the ALC260 test model to ALSA-Configuration.txt since this seems to have
been missed.
Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jonathan Woithe [Tue, 8 Jan 2008 11:16:54 +0000 (12:16 +0100)]
[ALSA] hda-codec - Add EAPD controls for ALC260 test model
This implements a switch control for the EAPD signal output by the ALC26x
chips. Since some laptops may utilise this to activate useful things it
is handy to have a control for this in the ALC26x test models. The patch
includes the control in the ALC260 test model.
Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jaroslav Kysela [Tue, 8 Jan 2008 11:24:01 +0000 (12:24 +0100)]
[ALSA] PCM core - remove SNDRV_PCM_TSTAMP_MMAP condition in snd_pcm_status()
The condition caused that the returned ring buffer position does not match
with timestamp when SNDRV_PCM_TSTAMP_MMAP mode was enabled. Removing
condition makes unified behaviour and interrupt based timestamp can be
accessed via PCM_IOCTL_SYNC_PTR or mmaped status area.
[ALSA] hda: Dynamically create digital gain mixers
Dynamically create digital gain mixers for dmics that have out-amp
support. Also some 92HD73xx's codecs don't have DMIC gains, so this also
prevents creating dead mixers.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Takashi Iwai [Mon, 7 Jan 2008 14:16:37 +0000 (15:16 +0100)]
[ALSA] hda-intel - Support multiple devices
It turned out that there can be multiple HD-audio devices on a single
machine (e.g. on-board audio and HDMI on graphic cards), so we need to
support multiple devices with snd-hda-intel driver.
Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Julia Lawall [Mon, 7 Jan 2008 12:33:45 +0000 (13:33 +0100)]
[ALSA] sound: Use time_before, time_before_eq, etc.
The functions time_before, time_before_eq, time_after, and time_after_eq
are more robust for comparing jiffies against other values.
A simplified version of the semantic patch making this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)
// <smpl>
@ change_compare_np @
expression E;
@@
(
- jiffies <= E
+ time_before_eq(jiffies,E)
|
- jiffies >= E
+ time_after_eq(jiffies,E)
|
- jiffies < E
+ time_before(jiffies,E)
|
- jiffies > E
+ time_after(jiffies,E)
)
@ include depends on change_compare_np @
@@
#include <linux/jiffies.h>
@ no_include depends on !include && change_compare_np @
@@
#include <linux/...>
+ #include <linux/jiffies.h>
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Krzysztof Helt [Mon, 7 Jan 2008 11:24:45 +0000 (12:24 +0100)]
[ALSA] es18xx: Enable wavetable input from ESS chips
This patch enables wavetable chips ES689/ES69X connected to
ESS ES18xx chips. The wavetable chip uses FM DAC if the clock signal
from the wavetable is active.
It has no effect if there is no ESS wavetable chip present.
Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jerone Young [Mon, 7 Jan 2008 11:22:18 +0000 (12:22 +0100)]
[ALSA] hda-codec - Add IEC958 digital out support for Lenovo Thinkpads T61/X61
This patch adds IEC958 digital out support for the AD1984 sound card.
This card can be found in Lenovo Thinkapds T61/X61. The digital out is
not located on the Thinkpad, but optional docking station (it's coxial
digital out). I've add this support as it is done the exact same way
for the AD1983 & AD1884.
I have tested this patch with my Lenovo Thinkpad T61 hooked up to a
docking station (that has the digital coxial) and then run to my home
theater reciever. Works like a charm :-)
Signed-off-by: Jerone Young <jerone@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Some laptops incorrectly assume the front input jack as a line in
instead of a microphone in. Which in turn disables the voltage
reference, in which non-amplified input is not possible. This patch
enables VREF80 for the input jack.
Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Clemens Ladisch [Fri, 4 Jan 2008 08:22:20 +0000 (09:22 +0100)]
[ALSA] oxygen: use uintptr_t in pointer casts
When we store the DMA channel number in the substream's private_data
pointer, use uintptr_t as an intermediate step when casting from/to
unsigned int to prevent the compiler from whining when the pointer size
is different.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>