- 07 Apr, 2012 3 commits
-
-
Michael Karcher authored
The "input converter" widget of the CX20459 has only one input amplifier, expose that one as "Capture Volume/Capture Switch". The actual record source selection is already exposed through the separately installed input mux. Signed-off-by:
Michael Karcher <kernel@mkarcher.dialup.fu-berlin.de> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Michael Karcher authored
This includes renaming "Line In" to line, also in the mixer settings. Signed-off-by:
Michael Karcher <kernel@mkarcher.dialup.fu-berlin.de> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Michael Karcher authored
The CX20549 has only one single input amp on it's input converter widget. Fix printing of values in the codec file in /proc/asound. Signed-off-by:
Michael Karcher <kernel@mkarcher.dialup.fu-berlin.de> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 13 Mar, 2012 2 commits
-
-
Takashi Iwai authored
Since it's not always safe to assume that the vmaster hook is purely the mute-LED control, add the flag indicating whether to expose the mute-LED enum control or not. Currently, conexant codec sets this off for non-HP laptops where EAPD may be used really as EAPD. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Create snd_hda_add_vmaster_hook() and snd_hda_sync_vmaster_hook() helper functions to handle the mute-LED in vmaster hook more commonly. In the former function, a new enum control "Mute-LED Mode" is added. This provides user to choose whether the mute-LED should be turned on/off explicitly or to follow the master-mute status. Reviewed-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 12 Mar, 2012 1 commit
-
-
Takashi Iwai authored
Added the vmaster hook for controlling EAPD dynamically to Conexant auto-parser. When the Master is muted, EAPDs are turned off as well. This will fix the missing mute-LED control on some machines in addition to the more power-saving in the auto-parser mode. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 02 Mar, 2012 1 commit
-
-
Takashi Iwai authored
Kill hyphens from "Line-Out" name strings, as suggested by Mark Brown. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 29 Feb, 2012 2 commits
-
-
Takashi Iwai authored
It seems that Lenovo machines (or codec chip itself?) leave the unsol event tags and the enablement-flag from other pins bogusly even on the unused pins. Although this shouldn't be too critical, it's better to clear them up sanely. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Some codecs don't supply the mute amp-capabilities although the lowest volume gives the mute. It'd be handy if the parser provides the mute mixers in such a case. This patch adds an extension amp-cap bit (which is used only in the driver) to represent the min volume = mute state. Also modified the amp cache code to support the fake mute feature when this bit is set but the real mute bit is unset. In addition, conexant cx5051 parser uses this new feature to implement the missing mute controls. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=42825 Cc: <stable@kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 28 Feb, 2012 1 commit
-
-
Takashi Iwai authored
The docking-station of Thinkpad X200 & co supports also an SPDIF output, and the corresponding pin 0x1c has to be enabled for using it. Reported-and-tested-by:
Sebastian Glita <sebastian.glita@gmail.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 03 Feb, 2012 2 commits
-
-
Takashi Iwai authored
In most cases, the slave strings for vmaster are identical between volumes and switches except for "xxx Volume" and "xxx Switch" suffix. Now snd_hda_add_vmaster() takes the optional suffix argument so that each string can be composed with the given suffix, and we can share the slave name strings in both volume and switch calls nicely. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
The Lenovo laptops with cx5066 chips seem to work better with model=auto. Let's get rid of the fallback to the wrong model. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=738397 Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 02 Feb, 2012 1 commit
-
-
Takashi Iwai authored
This is an attempt to fix S3-resume problems reported for a few laptops with different Conexant codecs. They show the communication stalls at some time in S3, and the driver falls back into the single-cmd mode. This leads to the silent output or the lack of auto-mute feature. As a workaround, here enables the sync_write and the bus-reset flags to make the communication more stable. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=740115 Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=738397 Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 23 Jan, 2012 1 commit
-
-
David Henningsson authored
The user reports that model=auto works fine for him. Using model=auto bring in new features such as jack detection notification to userspace. Alsa info is available at http://paste.ubuntu.com/805351/ Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 10 Jan, 2012 1 commit
-
-
Takashi Iwai authored
These laptops can work well with the auto-parser and their BIOS setups, and in addition, the auto-parser fixes the problem with S3/S4 where the unsol event handling is killed after resume due to fallback to the single-cmd mode. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=740115 Cc: <stable@kernel.org> [v3.1+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 01 Dec, 2011 1 commit
-
-
Takashi Iwai authored
Instead of managing input-jack stuff separately, call all stuff inside the kctl-jack creation, deletion and report. The caller no longer needs to care about input-jack. The better integration between input-jack and kctl-jack should be done in the upper layer in near future, but for now, it's implemented locally for more tests. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 16 Nov, 2011 4 commits
-
-
Takashi Iwai authored
We can use the very same table in hda_jack.c for managing the list for input-jack elements, too. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Manage the tags assigned for unsolicited events dynamically together with the jack-detection routines. Basically this is almost same as what we've done in patch_sigmatel.c. Assign the new tag number for each new unsol event, associate with the given NID and the action type, etc. With this change, now all pins looked over in snd_hda_jack_add_kctls() are actually enabled for detection now even if the pins aren't used for jack-retasking by the driver. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Create kcontrols for pin jack-detections, which work similarly like jack-input layer. Each control will notify when the jack is plugged or unplugged, and also user can read the value at any time via the normal control API. The control elements are created with iface=CARD, so that they won't appear in the mixer apps. So far, only the pins that enabled the jack-detection are registered. For covering all pins, the transition of the common unsol-tag handling would be needed. Stay tuned. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Introduce a table containing the pins and their jack-detection states for avoiding the unnecessary verbs to check the pin status at each time. When the unsol event is enabled via snd_hda_jack_detect_enable(), it automatically adds the given NID to the table. Then the driver supposes that the codec driver will set the dirty flag appropariately when an unsolicited event is invoked for that pin. The behavior for reading other pins that aren't registered in the table doesn't change. Only the pins assigned to the table are cached, so far. In near futre, this table can be extended to use the central place for the unsolicited events of all pins, etc, and eventually include the jack-detect kcontrols that replace the current input-jack stuff. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 09 Nov, 2011 1 commit
-
-
David Henningsson authored
According to the bug reporter, model=auto is needed to make the internal microphone work. BugLink: https://bugs.launchpad.net/bugs/819699 Reported-by: Andrej (agno01) Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 31 Oct, 2011 1 commit
-
-
Paul Gortmaker authored
Lots of sound drivers were getting module.h via the implicit presence of it in <linux/device.h> but we are going to clean that up. So fix up those users now. Signed-off-by:
Paul Gortmaker <paul.gortmaker@windriver.com>
-
- 27 Oct, 2011 2 commits
-
-
Takashi Iwai authored
It seems that Conexant CX20549 chip handle only a single input-amp even though the audio-input widget has multiple sources. This has been never clear, and I implemented in the current way based on the debug information I got at the early time -- the device reacts individual input-amp values for different sources. This is true for another Conexant codec, but it's not applied to CX20549 actually. This patch changes the auto-parser code to handle a single input-amp per audio-in widget for CX20549. After applying this, you'll see only a single "Capture" volume control instead of separate "Mic" or "Line" captures when the device is set up to use a single ADC. We haven't tested 20551 and 20561 codecs yet. If these show the similar behavior like 20549, they need to set spec->single_adc_amp=1, too. Cc: <stable@kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
In the old Conexant chips (5045, 5047, 5051 and 5066), a single EAPD may handle both headphone and speaker outputs while it's assigned only to one of them. Turning off dynamically leads to the unexpected silent output in such a configuration with the auto-mute function. Since it's difficult to know how the EAPD is handled in the actual h/w implementation, better to keep EAPD on while running for such codecs. Cc: <stable@kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 18 Oct, 2011 1 commit
-
-
Daniel Suchy authored
This is patch for Conexant codec of Intel HDA driver, adding new quirk for Lenovo Thinkpad T520 and W520. Conexant autodetection works fine for T520 (similar subsystem ID is used also in W520 model) and detects more mixer features compared to generic (fallback) Lenovo quirk with hardcoded options in Conexant codec. Patch was activelly tested with Linux 3.0.4, 3.0.6 and 3.0.7 without any problems. Signed-off-by:
Daniel Suchy <danny@danysek.cz> Cc: <stable@kernel.org> [3.0+] Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 25 Aug, 2011 1 commit
-
-
David Henningsson authored
Headphones has stopped working for the original reported (a regression compared to 2.6.38). This is because Speaker and Headphones share the same DAC, in which case no Headphones volume control was created. This patch fixes so that both Speaker and Headphones volume controls are created in such scenario. BugLink: http://bugs.launchpad.net/bugs/817943 Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 24 Aug, 2011 2 commits
-
-
Takashi Iwai authored
Introduce the pincfg table to patch_conexant.c for fixing up the extra pin-configuration for auto-parser. As an example, Lenovo X200 model is replaced with this new mechanism. (This also fixes the wrong mixer elements for docking-station I/O in the previous model quirk automagically.) Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
The ADC-switching can work also in the auto-mic mode, too. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 23 Aug, 2011 1 commit
-
-
Takashi Iwai authored
When multiple headphones or speakers are assigned but no individual DACs are available, the driver should take the first HP/SPK DAC instead of another primary output. The patch adds a bit-flag to dac field of struct pin_dac_pair indicating that it's a slave DAC. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 26 Jul, 2011 1 commit
-
-
Takashi Iwai authored
The procedure for codec D-state change may have exceptional cases depending on the codec chip, such as a longer delay or suppressing D3. This patch adds a new codec ops, set_power_state() to override the system default function. For ease of porting, snd_hda_codec_set_power_to_all() helper function is extracted from the default set_power_state() function. As an example, the Conexant codec-specific delay is removed from the default routine but moved to patch_conexant.c. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 11 Jul, 2011 1 commit
-
-
Takashi Iwai authored
Some machines seem to use EAPD control of the unused pin for controlling the overall EAPD. Since the driver currently doesn't check the EAPD of unused pins, the EAPD isn't enabled. For avoiding such a problem, turn all extra EAPDs on as default. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 29 Jun, 2011 2 commits
-
-
Takashi Iwai authored
Let's use auto-parser as default now. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Takashi Iwai authored
Create snd_hda_get_conn_index() helper function for obtaining the connection index of the widget. Replaced the similar codes used in several codec-drivers with this common helper. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 28 Jun, 2011 2 commits
-
-
David Henningsson authored
Since we're not using the new auto parser as a fallback yet, add it manually as a quirk. Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
David Henningsson authored
Conexant ID 506c was found on Acer Aspire 3830TG. As users report no playback, sending to stable should be safe. Cc: stable@kernel.org BugLink: https://bugs.launchpad.net/bugs/783582 Reported-by: andROOM Signed-off-by:
David Henningsson <david.henningsson@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 10 Jun, 2011 1 commit
-
-
Daniel T Chen authored
BugLink: https://launchpad.net/bugs/761171 The original reporter needs the model=auto quirk for his internal speakers to be audible in the latest daily snapshot, so add an entry in the quirk table for his PCI SSID. A trivially different version of this patch using the model=asus quirk should be applied to the 2.6.38 and 2.6.39 stable kernels. We don't use the asus quirk in 3.0-rc2, because 3.0-rc2's autoparser is much improved. Reported-and-tested-by: tomdeering7 Signed-off-by:
Daniel T Chen <crimsun@ubuntu.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 06 Jun, 2011 1 commit
-
-
Stephen Warren authored
The SPDIF output controls apply to converter widgets. A future change will create a PCM device per pin widget, and hence a set of SPDIF output controls per pin widget, for certain HDMI codecs. To support this, we need the ability to virtualize the SPDIF output controls. Specifically: * Controls can be "unassigned" from real hardware when a converter is not used for the PCM the control was created for. * Control puts only write to hardware when they are assigned. * Controls can be "assigned" to real hardware when a converter is picked to support output for a particular PCM. * When a converter is assigned, the hardware is updated to the cached configuration. Signed-off-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 25 May, 2011 1 commit
-
-
Takashi Iwai authored
The new auto-parser fixes problems on Lenovo G555. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 24 May, 2011 1 commit
-
-
Takashi Iwai authored
Fix some logic failures in auto-mute handling in Conexant auto-parser. Also, modify codes to be a bit more understandable. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 23 May, 2011 1 commit
-
-
Takashi Iwai authored
Fix the initialization of capture-source route when auto-mic is enabled for Conexant auto-parser. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-