summaryrefslogtreecommitdiff
path: root/sound/pci/hda/patch_cirrus.c
AgeCommit message (Collapse)AuthorFilesLines
2011-08-20ALSA: hda - Fix error check from snd_hda_get_conn_index() in patch_cirrus.cTakashi Iwai1-3/+5
snd_hda_get_conn_index() returns a negative value while the current code stores it in an unsigned int. It must be stored in a signed integer. Reported-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-07-26ALSA: hda - Cirrus Logic CS421x supportTim Howe1-34/+709
This update includes the changes necessary for supporting the CS421x family of codecs. Previously this file only supported the CS420x family of codecs. This file also contains init verbs to correct several issues in the CS421x hardware. Behavior between the CS421x and CS420x codec families is similar, so several functions have been reused with "if" statements to determine which codec family (CS421x or CS420x) is present. Also, this file will be updated sometime in the near future in order to add support for a system using CS421x that requires mono mix on the speaker output only. [Fix const usages and adaption for new APIs by tiwai] Signed-off-by: Tim Howe <tim.howe@cirrus.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-06-29ALSA: hda - Create snd_hda_get_conn_index() helper functionTakashi Iwai1-11/+5
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>
2011-06-06ALSA: hda: Virtualize SPDIF out controlsStephen Warren1-1/+2
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>
2011-05-17ALSA: hda - Check unsol-cap in is_jack_detectalbe()Takashi Iwai1-1/+1
Also replace more open-codes with this function. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-05-17ALSA: hda - Use get_wcaps_type()Takashi Iwai1-2/+1
Replace the open-code with get_wcaps_type() macro. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-05-17ALSA: hda - Use is_jack_detectable() helperTakashi Iwai1-5/+4
Replaced the open-code with the new helper function. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-05-02ALSA: hda - Constify fixup and other array data in patch_cirrus.cTakashi Iwai1-19/+19
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-03-03ALSA: hda - Don't set to D3 in Cirrus errata init verbsTakashi Iwai1-0/+2
The errata init verbs for CS42xx codecs contain the verbs to set the power-state of SPDIF nodes to D3, which seem to break the SPDIF output on some MacBooks. Since this is executed during the power-up initialization, we shouldn't turn them down there. Reported-by: Arun Raghavan <arun.raghavan@collabora.co.uk> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-01-18ALSA: hda - consitify string arraysTakashi Iwai1-2/+2
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-11-03ALSA: hda - MacBookAir3,1(3,2) alsa supportEdgar (gimli) Hucek1-0/+1
This patch add support for the MacBookAir3,1 and MacBookAir3,2 to the alsa sound system. Signed-off-by: Edgar (gimli) Hucek <gimli@dark-green.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-10-11ALSA: hda - Add input volume control for each mic/line-in pinTakashi Iwai1-0/+27
The input pins on cirrus codecs have also input amps. Let's make control elemetns for them. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-10-11ALSA: hda - Add model=mbp55 entry for MacBookPro 7,1Takashi Iwai1-0/+1
Reference: Novell bnc#645066 https://bugzilla.novell.com/show_bug.cgi?id=645066 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-09-23ALSA: hda - MacBookPro 5,3 line-in supportVince Weaver1-1/+21
I've found the following patch is necessary to enable line-in on my MacBookPro 5,3 machine. With the patch applied I've successfully recorded audio from the line-in jack. This is based on the existing 5,5 support. Signed-off-by: Vince Weaver <vweaver1@eecs.utk.edu> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-09-17ALSA: hda - Make snd_hda_get_input_pin_attr() helperTakashi Iwai1-1/+1
Make the helper function to give the input-pin attribute for jack connectivity and location. This simplifies checks of input-pin jacks a bit in some places. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-09-09ALSA: hda - Improve the input source name labelsTakashi Iwai1-1/+3
This patch improves the input-source label strings to be generated from the pin information instead of fixed strings per AUTO_PIN_* type. This gives more suitable labels, especially for mic and line-in pins. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-09-09ALSA: hda - Remove AUTO_PIN_FRONT_{MIC|LINE}Takashi Iwai1-3/+3
We can assign multiple pins to a single role now, let's reduce the redundant FRONT_MIC and FRONT_LINE. Also, autocfg->input_pins[] is no longer used, so this is removed as well. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-09-08Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-0/+50
2010-09-08ALSA: hda - Add errata initverb sequence for CS42xx codecsBrian Austin1-0/+50
Add init verb sequence for errata ER880C3 http://www.cirrus.com/en/pubs/errata/ER880C3.pdf Signed-off-by: Brian Austin <brian.austin@cirrus.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-08-30ALSA: hda - Use new inputs[] field to parse input-pins for CirrusLogic codecsTakashi Iwai1-21/+17
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-08-13ALSA: hda - Fix dynamic ADC change working againTakashi Iwai1-1/+1
The commit eb541337b7a43822fce7d0c9d967ee149b2d9a96 ALSA: hda - Make converter setups sticky changes the semantics of snd_hda_codec_cleanup_stream() not to clean up the stream at that moment but delay the action. This broke the codes expecting that the clean-up is done immediately, such as dynamic ADC changes in some codec drivers. This patch fixes the issue by introducing a lower helper, __snd_hda_codec_cleanup_stream(), to allow the immediate clean up. The original snd_hda_codec_cleanup_stream() is kept as is now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-05-05ALSA: hda - fix array indexing while creating inputs for Cirrus codecsBrian J. Tarricone1-1/+1
This fixes a problem where cards show up as only having a single mixer element, suppressing all sound output. Signed-off-by: Brian J. Tarricone <brian@tarricone.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-23ALSA: hda - Fix NID association for capture mixersTakashi Iwai1-4/+8
Fix the wrong implementation of NID <-> kctl mapping for capture mixers introduced by the ocmmit 5b0cb1d850c26893b1468b3a519433a1b7a176be. So far, the driver returns an error at probe. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-23Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-1/+21
2009-12-22ALSA: hda - Add support for the new 27 inch IMacsRafael Avila de Espindola1-1/+21
With the attached patch I am able to use the sound on a new IMac 27. What works: *) Internal speakers *) Internal microphone *) Headphone I don't have an external mic or a SPDIF device to test the rest. Signed-off-by: Rafael Avila de Espindola <rafael.espindola@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-15ALSA: hda - simplify usage of HDA_SUBDEV_AMP_FLAGJaroslav Kysela1-2/+2
The HDA_SUBDEV_NID_FLAG is duplicate for amplifier control elements. Move get_amp_nid_() call to the snd_hda_ctl_add() function. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2009-12-15ALSA: hda - introduce HDA_SUBDEV_AMP_FLAG (ControlAmp in proc)Jaroslav Kysela1-0/+2
The purpose of this changeset is to show information about amplifier setting in the codec proc file. Something like: Control: name="Front Playback Volume", index=0, device=0 ControlAmp: chs=3, dir=Out, idx=0, ofs=0 Control: name="Front Playback Switch", index=0, device=0 ControlAmp: chs=3, dir=In, idx=2, ofs=0 Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2009-12-15ALSA: hda - add more NID->Control mappingJaroslav Kysela1-0/+4
This set of changes add missing NID values to some static control elemenents. Also, it handles all "Capture Source" or "Input Source" controls. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2009-12-10Merge branch 'for-linus' of ↵Linus Torvalds1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits) tree-wide: fix misspelling of "definition" in comments reiserfs: fix misspelling of "journaled" doc: Fix a typo in slub.txt. inotify: remove superfluous return code check hdlc: spelling fix in find_pvc() comment doc: fix regulator docs cut-and-pasteism mtd: Fix comment in Kconfig doc: Fix IRQ chip docs tree-wide: fix assorted typos all over the place drivers/ata/libata-sff.c: comment spelling fixes fix typos/grammos in Documentation/edac.txt sysctl: add missing comments fs/debugfs/inode.c: fix comment typos sgivwfb: Make use of ARRAY_SIZE. sky2: fix sky2_link_down copy/paste comment error tree-wide: fix typos "couter" -> "counter" tree-wide: fix typos "offest" -> "offset" fix kerneldoc for set_irq_msi() spidev: fix double "of of" in comment comment typo fix: sybsystem -> subsystem ...
2009-11-18ALSA: hda - introduce snd_hda_jack_detect() and snd_hda_pin_sense()Wu Fengguang1-14/+5
This helps merge duplicate code. v2: add snd_hda_jack_detect() and comments recommended by Takashi. Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-16ALSA: hda - proc - introduce Control: lines to show mixer<->NID assignmentJaroslav Kysela1-6/+6
This is an initial patch to show universal control<->NID assigment in proc codec file. The change helps to debug codec related problems. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-09tree-wide: fix typos "selct" + "slect" -> "select"Uwe Kleine-König1-1/+1
This patch was generated by git grep -E -i -l 's(le|el)ct' | xargs -r perl -p -i -e 's/([Ss])(le|el)ct/$1elect/ with only skipping net/netfilter/xt_SECMARK.c and include/linux/netfilter/xt_SECMARK.h which have a struct member called selctx. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2009-07-30ALSA: hda - Enable HP output with Macbook Pro 5, 5Stelian Pop1-4/+9
The patch below, to be applied on the latest sound-unstable-2.6.git, enables headphones output on my MacBookPro 5,5, together with the automuting feature. Here is the exact soundcard id: Vendor Id: 0x10134206 Subsystem Id: 0x106b4d00 Revision Id: 0x100301 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-09ALSA: hda - don't build digital output controls if not existTakashi Iwai1-0/+3
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-08ALSA: hda - Fix compile warnings in patch_cirrus.cTakashi Iwai1-10/+5
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-07ALSA: hda - Fix the speaker volume control nameTakashi Iwai1-1/+1
Increase the name string buffer size so that "Surround Speaker Playback Volume" won't be truncated. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-07ALSA: hda - Add GPIO setup for MacBook pro 5,5 with CS420xTakashi Iwai1-13/+36
GPIO3 seems corresponding to EAPD that is required for the speaker output. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-06ALSA: hda - Add quirk for MacBook Pro 5,5 with CS4206Takashi Iwai1-0/+57
Add the default pin configs for MBP55. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-06ALSA: hda - Fix double creation of SPDIF input controlsTakashi Iwai1-6/+3
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-06ALSA: hda - Add CS420x-specific coef setupTakashi Iwai1-0/+110
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-06ALSA: hda - Force to initialize input mixer setup for CS420xTakashi Iwai1-5/+7
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-06ALSA: hda - Fix cirrus codec parsingTakashi Iwai1-133/+198
The parser wasn't called in the proper order. Split now the parser to be called in patch_cirrus(), and the rest are just for building PCMs and controls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-07-01ALSA: hda - Add Cirrus Logic CS420x supportTakashi Iwai1-0/+937
Signed-off-by: Takashi Iwai <tiwai@suse.de>