Modules: HDA Codec driver
This patch generalises a structure added for the 'fujitsu' model but which
is potentially useful for other models as well. It turns the
'alc260_fujitsu_adc_nids' array into 'alc260_dual_adc_nids'; for other
models which decide to utilise the dual ADC functionality there's really
no reason why they need to define their own list of ADC nids.
The 'fujitsu' model preset is adjusted accordingly.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
This patch adds functionality which switches the input/output buffer enables
of retasking pins when the user changes their mode with the mode control.
This probably reduces noise *slightly* for recording compared to the case
where both input and output buffers were enabled simultaneously.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
This patch fixes input mux labels used for the ALC260 'test' model. This is
needed to avoid confusion which comes about because the two ADCs in the
ALC260 have slightly different mappings for their input selectors. Since
this is just the test model it's sufficient to simply report both options
where they exist. If a model comes along for which this becomes an issue,
the ALC260 input mux code will have to be extended to allow different mux
layouts for different ADCs.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Intel driver
Switch the method to measure the current DMA position automatically
from position-buffer mode to LPIB-read mode with a sanity check.
Some hardwares seems to have problem with the position buffer.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver,HDA Intel driver
Switch to single_cmd mode automatically as a fallback when CORB/RIRB
communication doesn't work well. It may make the driver working on
some devices with broken BIOS/ACPI support.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
The following patch adds a 'test' ALC260 model specification to the
patch_realtek.c driver if CONFIG_SND_DEBUG is set. This is similar to the
'test' ALC880 model in that it sets up mixer controls for almost everything
to make it easier for people to test their laptop/soundcard when working out
what pin widgets are connected to which real-world devices.
This patch assumes my previous patch (adding the second PCM to the ALC260)
has previously been applied since it uses infrastructure added by that
patch.
In developing this patch it was found that not all retasking pins accept all
the modes - in particular, some ignore the VREFxx variants. The pin mode
control has therefore been tweaked to prevent this becoming a problem in
mixer applications.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
The following patch changes the initverbs associated with the output sum
widgets 0x08, 0x09 and 0x0a used with the fujitsu model in patch_realtek.c.
It is against alsa 1.0.11rc3.
Currently these widgets have their output muted, but a close reading of the
datasheet suggests that they don't actually have an output mute. They have
an *input* mute for each of their two inputs and a single output gain. This
patch therefore activates the input mutes and zeros the output gain. It has
not yet been tested but the above interpretation of the ALC260 datasheet
seems correct.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
The following patch against alsa 1.0.11rc3 creates a PCM device (pcm1c) for
the second ADC present on the ALC260 codec used by the hda driver. It also
defines a new mixer control allowing the mode of retasking pins to be set;
this means a user can (for example) designate the headphone jack to be a
second input. With this patch in place it is possible to do 4 channel
recording on laptops equipped with an ALC260 codec assuming both a stereo
line-in jack is provided in addition to a headphone jack.
Mixer controls are provided to allow the headphone jack to be switched as
an input. In addition, an (input only) mode control is configured for
the line-in jack to allow a bias voltage to be requested (VREF80 or VREF50)
so headsets based on condensor microphones have a chance of working.
This patch has been tested on a Fujitsu S7020 laptop and as such these
features are currently only configured for the 'fujitsu' model.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Semaphore to mutex conversion.
The conversion was generated via scripts, and the result was validated
automatically via a script as well.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: Documentation,HDA Intel driver
Added single_cmd module option for debugging in the case CORB/RIRB
doesn't work well (e.g. due to wrong irq routings).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
This little patch add the model for the motherboard K8N51 from Gigabyte
to the known models of ALC boards.
Signed-off-by: Arnaud Patard <apatard@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
* Fix init sequence so manually retaskable jacks don't get added to
the line_out list.
* Update intel mobo config defaults to specify surround outputs
as line outs rather than speakers.
Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
Fix max_channels computation for STAC92xx codecs in the case only
HP pin without line-out pins is detected in the default pin config.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
This adds support for Agere's variant of Si3054/5 based HDA modem.
Signed-off-by: Sasha Khapyorsky <sashak@alsa-project.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Intel driver
This patch adds the Intel ICH8 HD Audio DID to the hda_intel.c audio driver.
Signed-off-by: Jason Gaston <Jason.d.gaston@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver,HDA generic driver
- Common labels for input pins
- Fix and clean up of Realtek codec parsers
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver,HDA generic driver
This patch adds the support of ALC262,ALC883,ALC885,ALC861 to driver
More models and improvements for ALC880, ALC260 and ALC882 codecs, too.
Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
- Explictly set pin control as input for all input pins
- Fix bug in 922x mixer (no mute on adc0vol)
- Remove broken ch_mode control
- Add support for jack retasking mixer controls to use rear line and
mic as surround outputs
- Add board tables to support autodetect and pin config defaults for
systems with broken bioses
- Add support for several Intel mobos
- Add support for DFI mobo with reference boards attached
(gets rid of compile time switch to use reference boards)
Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Intel driver
The probe_mask module parameter comment notes that the intended
default is -1. Fix it to be so, otherwise all codecs are skipped
and init fails.
Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
Fix/enhance AD1988 support code.
- Fix for h/w bug of AD1988A rev 2
- The BIOS auto-configuration is added and used as fallback
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Intel driver
- Use the position buffer for obtaining the current DMA position
as default. This seems more stable than others.
- Add probe_mask module option (mainly for test boards with multiple
codecs).
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
This patch is to fix the problem of calculating the nid incorrectly
when auto-probe for ALC880. The problem to be fixed often behaves
with such words when using dmesg, 'num_steps = 0 for NID=0x8' when
auto-probe for ALC880.
The patch contains:
- alsa-kernel/pci/hda/patch_realtek.c: replace 'alc880_dac_to_idx'
with 'alc880_idx_to_dac' in function 'alc880_auto_fill_dac_nids()'
Signed-off-by: Libin Yang <libin.yang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: RawMidi Midlevel,HDA generic driver
This patch contains the following possible cleanups:
- pci/hda/hda_proc.c should #include 'hda_local.h' for including the
prototype of it's global function snd_hda_codec_proc_new()
- core/rawmidi.c: make the needlessly global and EXPORT_SYMBOL'ed
function snd_rawmidi_info() static
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
Fix AD1988 support. As default, 6stack model is used.
Still no auto-BIOS setup is implemented.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver,HDA generic driver
- Fix connection list parsing (with ranged flag).
- Increase the max number of connections
- Introduce widget capabilities cache
- Power up/down widgets at init, suspend and resume
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
Add AD1988 codec support to hda-codec driver.
Still experimental, and no BIOS configuration parser is implemented yet.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver
The patch fixes the problem of mute onboard HDA sound output,
buildin V.92 modem idendification and functionality.
Signed-off-by: Daniel Mueller <daniel.mueller@siemens.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Intel driver
Rate-limit the azx_get_response timeout message. A continuous 2 per second
is too much.
Signed-off-by: Randy Dunlap <randy_d_dunlap@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Modules: HDA Codec driver,HDA generic driver
- Make bound controls global to all patches
- Clean up analog patches (for the upcoming extension to AD1988)
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Remove the code for supporting eight cards from the integrated
controller drivers because There Can Be Only One controller of
each type per mainboard.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Modules: HDA Intel driver
This patch is to make the Intel HDA code work for NVIDIA azalia controller.
Modified by Takashi Iwai <tiwai@suse.de>
Signed-off-by: Vinod G. <vinodg@nvidia.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Mark the ALC882 'LFE Playback Switch' as an input, like the other
playback switch settings.
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Fix a typo (cut & paste) in the alc880_test_mixer structure.
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
The ALC260 'Mono Playback Switch' is marked as an output in
patch_realtek.c. It actually does not work unless it is marked as an
input. Go figure... This was tested and confirmed on an HP xw4300.
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Intel driver
Disable the auto-correction of DMA position temporarily.
It doesn't work as expected yet...
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver,HDA Intel driver,HDA generic driver
Assign audio PCMs first before modem PCMs.
The modem stream is assigned up to device #6, to be consistent over
different models.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Intel driver
Check the validity of the current DMA position when position_fix=0 (auto)
is set. If the DMA position overcomes the threshold, the driver changes
the fix behavior automatically to use POSBUF.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Add the subsystem PCI devid to the list (on top of 2.6.13).
Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Intel driver
Fix and clean up for the support of ULI M5461
- set CORB/RIRB sizes explicitly
- add workarounds for ULI on ia32
- max number of streams depends on the chip type now
- increase the size of BDL
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
The insertion of the rate 9600 make a shift in detection of supported
rate, put this rate at the end of the list.
Signed-off-by: Nicolas Graziano <nicolas.graziano@wanadoo.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Intel driver
- removed SNDRV_PCM_INFO_RESUME (the driver cannot do PCM resume at the time)
- fixed chip->pcm_devs initialization
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
CMI8330 driver,ENS1370/1+ driver,FM801 driver,VIA82xx driver,AC97 Codec
ALI5451 driver,CS46xx driver,EMU10K1/EMU10K2 driver,HDA Codec driver
ICE1712 driver,ICE1724 driver
Where appropriate, use the SNDRV_CTL_NAME_IEC958 instead of a literal
string.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
HDA Codec driver
- Fixed the reordering of surround channels.
Originally reported by Nicolas GRAZIANO <nicolas.graziano@wanadoo.fr>.
- Show the selected ssid when debug option is set.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
- Correct some index variable inversion in patch_cmedia.c
Signed-off-by: Nicolas Graziano <nicolas.graziano@wanadoo.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Adds support for detecting hp insertion/removal and enable/disable of
lineouts based on unsolicited events.
Signed-off-by: Matt <matt@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Intel driver
Patch enables unsolicited responses on the HDA controller. Without
the UREN bit set, the controller will not place unsolicited responses
in a RIRB.
Signed-off-by: Matt <matt@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,HDA Codec driver
- Added a new '6stack' model for ALC880.
- Fixed the typo in 6stack-digout model name.
- Added description for missing models in ALSA-Configuration.txt.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver
Adds resume support to the SigmaTel HDA patch. Please apply.
Signed-off-by: Matt <matt@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This patch creates a new kstrdup library function and changes the "local"
implementations in several places to use this function.
Most of the changes come from the sound and net subsystems. The sound part
had already been acknowledged by Takashi Iwai and the net part by David S.
Miller.
I left UML alone for now because I would need more time to read the code
carefully before making changes there.
Signed-off-by: Paulo Marques <pmarques@grupopie.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
HDA Codec driver
Adds SPDIF in/out support to the SigmaTel HDA codecs. Now builds
the input mux control element names from the defcfg regs.
Signed-off-by: Matt <matt@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Documentation,HDA Codec driver,HDA generic driver,HDA Intel driver
- Fix some invalid configurations, typos in the last patch
- Make init_verbs chainable, so that different configs can share the same
init_verbs
- Reorder and clean up the source codes in patch_realtek.c
- Add the pin default configuration parser, used commonly in cmedia
and realtek patch codes.
- Add 'auto' model to ALC880 for auto-configuration from BIOS
Use this model as default, and 3-stack as fallback
Signed-off-by: Takashi Iwai <tiwai@suse.de>
HDA Codec driver,HDA Intel driver
Merged the work of pshou <pshou@realtek.com.tw> for the support of
more models with ALC codecs: ALC880 ASUS, Uniwill, FSC1734, generic 6-stack,
and ALC260 HP. Tests with the real hardwares are appreciated.
The codec patch is cleaned up: The preset configuration of codecs are
stored in the table and copied to the spec instance.
Added/fixed comments.
Signed-off-by: Takashi Iwai <tiwai@suse.de>