aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/ac97/ac97_codec.c
Commit message (Collapse)AuthorAge
* [ALSA] ac97: YMF743 missing controls support (2/2)Keita Maehara2007-10-16
| | | | | | | | | | | | | | | These patches enable a few YMF743 controls (Tone/3D/IEC958) that won't be detected with the current version of ALSA. The second one contains following changes: - A chip-specific SPDIF support for YMF743 (It doesn't have AC97 standard SPDIF registers seen on YMF753). - The implementation for 'IEC958 Playback Source' and 'IEC958 Mute' are identical to the ones for YMF753. But there is no 'IEC958 Output Pin' for YMF743. Signed-off-by: Keita Maehara <maehara@debian.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add default values for power-saving as Kconfig optionsTakashi Iwai2007-10-16
| | | | | | | | | Added CONFIG_SND_AC97_POWER_SAVE_DEFAULT and CONFIG_SND_HDA_POWER_SAVE_DEFAULT Kconfig options as the default values for power-saving mode of AC97 and HD-audio drivers, respectively. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97 - Suppress the reset of audio-codec from modem-codec at resumeTakashi Iwai2007-10-16
| | | | | | | | | | | | | | On codec chips with both audio and modem functions (e.g. Conexant one), performing AC97_RESET resets the whole registers. When both audio and modem drivers are resumed at the same time, the modem one often is resumed after the audio, and it results in the reset of audio registers (ALSA bug#3333). This patch fixes such a problem. Since the modem codec basically doesn't need AC97_RESET, skip this initialization unless specified as audio. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Use msecs_to_jiffies() in ac97_codec.cTakashi Iwai2007-10-16
| | | | | | | Replace the direct calculation of jiffies with msecs_to_jiffies(). Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add missing static in ac97_codec.cTakashi Iwai2007-10-16
| | | | | | | | Added missing static to snd_ac97_restore_status() and snd_ac97_restore_iec958() functions. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97 - Make patch functions staticTakashi Iwai2007-05-11
| | | | | | | | Include ac97_patch.c from the main ac97_codec.c in order to make bunch of patch_*() functions static. This helps optimization. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* Fix occurrences of "the the "Michael Opdenacker2007-05-09
| | | | | Signed-off-by: Michael Opdenacker <michael@free-electrons.com> Signed-off-by: Adrian Bunk <bunk@stusta.de>
* [ALSA] ac97 - Fix silent output problem with Cx20551 codecTakashi Iwai2007-02-14
| | | | | | | | | Fixed the silent output problem on laptops with Conexant Cx20551 codec chip, such as Packard-bell EasyNote A* series. The information was taken from ALSA bug#1134. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Remove delayed work properly at free and suspendTakashi Iwai2007-02-09
| | | | | | | | Remove delayed work properly at free and suspend in ac97 codec and ak4114 drivers. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add even more 'const' to everything related to TLVTakashi Iwai2007-02-09
| | | | | | | | Mark TLV data as 'const' Signed-of-by: Philipp Matthias Hahn <pmhahn@pmhahn.de> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97 - fix various issues with AD1986/AD1986A supportRandy Cushman2007-02-09
| | | | | | | | | | | | | | | | | | Previously, ac97_codec.c was coded to support AD1986 and AD1986A CODECs using code written for the AD1985 CODEC. This allowed the LINE_OUT and HEADPHONE jacks to function properly, however register differences between the CODECs prevented line and microphone inputs from functioning. Specifically, this patch fixes issues with the following mixer controls: 'V_REFOUT', 'Spread Front to Surround and Center/LFE', 'Exchange Front/Surround', 'Surround Jack Mode', and 'Channel Mode'. This patch removes the undocumented AD1888 control 'High Pass Filter Enable' and adds the new control 'Exchange Mic/Line In'. Signed-off-by: Randy Cushman <rcushman_linux@earthlink.net> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97 - Suppress power-saving mode on non-supporting driversTakashi Iwai2007-02-09
| | | | | | | | | | | | | | Don't enable power-saving mode on drivers that don't support it. The supporting drivers set AC97_SCAP_POWER_SAVE to scaps at creation of ac97 instance. Currently enable on the following drivers: intel8x0, intel8x0m, atiixp, atiixp-modem, via82xx and via82xx-modem. Also, a bit clean up of power-saving stuff: - Don't create an own workq - Remove superfluous ifdefs Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97: Identify CMI9761 chips.James Courtier-Dutton2006-12-20
| | | | | Signed-off-by: James Courtier-Dutton <James@superbug.co.uk> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97_codec - trivial fix for bit update functionsJames C Georgas2006-12-20
| | | | | | | | | | | This patch fixes a couple of bit update functions in alsa-kernel/pci/ac97/ac97_codec.c, which could possibly corrupt bits not in the given mask. Specifically, it'll clobber unset bits in the target that are not in the mask, when the corresponding bit in the given new value is set. Signed-off-by: James C Georgas <jgeorgas@rogers.com> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* WorkStruct: make allyesconfigDavid Howells2006-11-22
| | | | | | Fix up for make allyesconfig. Signed-Off-By: David Howells <dhowells@redhat.com>
* [ALSA] Fix AC97 power-saving modeTakashi Iwai2006-10-22
| | | | | | | | Fix the bug in AC97 power-saving mode that the power isn't turned on when power_save is set to 1 via sysfs during the power off state. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97 - Enable S/PDIF on ASUS P5P800-VM moboMagnus Sandin2006-09-23
| | | | | | | | | | The attached patch will force building the S/PDIF controls on the PCU SSID for Asus P5P800-VM motherboard, even if the AC97_EI_SPDIF bit is not set. Signed-off-by: Magnus Sandin <magnus@sandin.cx> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add TLV support to AC97 codec driverTakashi Iwai2006-09-23
| | | | | | | | Added the TLV support to AC97 codec driver for addition of dB range information. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] add codec-specific controls for UCB1400Mike Rapoport2006-09-23
| | | | | | | | This patch adds some codec-specific controls for Philips UCB1400 codec. Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Add experimental support of aggressive AC97 power-saving modeTakashi Iwai2006-09-23
| | | | | | | | | | | | | Added CONFIG_SND_AC97_POWER_SAVE kernel config to enable the support of aggressive AC97 power-saving mode. In this mode, the AC97 powerdown register bits are dynamically controlled at each open/close of PCM streams. The mode is activated via power_save option for snd-ac97-codec driver. As default it's off. It can be turned on/off on the fly via sysfs, too. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] Unregister device files at disconnectionTakashi Iwai2006-09-23
| | | | | | | | | | | | Orignally proposed by Sam Revitch <sam.revitch@gmail.com>. Unregister device files at disconnection to avoid the futher accesses. Also, the dev_unregister callback is removed and replaced with the combination of disconnect + free. A new function snd_card_free_when_closed() is introduced, which is used in USB disconnect callback. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [PATCH] ALSA: ac97: correct some Mic mixer elementsTakashi Iwai2006-09-01
| | | | | | | | | | Revert the mixer element names of some Mic controls to the state of 2.6.17. This should fix the name mismatch in alsactl. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: Jaroslav Kysela <perex@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [ALSA] Disable AC97 AUX and VIDEO controls for WM9705 touchscreenRodolfo Giometti2006-06-22
| | | | | | | | | | | | | | | This patch by Rodolfo Giometti disables the AC97 AUX and VIDEO controls on the WM9705 when the touchscreen is selected as the AUX and VIDEO lines are shared with the touch controller. Changes:- o Added AC97_HAS_NO_AUX flag o Test for AC97_HAS_NO_AUX flag in snd_ac97_mixer_build() o Sets AC97_HAS_NO_VIDEO and AC97_HAS_NO_AUX in patch_wolfson05() when WM9705 touch driver is selected. Signed-off-by: Rodolfo Giometti <giometti@linux.it> Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97_codec - fix duplicate control creation in AC97Jaya Kumar2006-06-22
| | | | | | | | | | | This patch conditions AC97 control creation by whether or not the codec is an AD18xx codec. This fixes the case where the default control would get created and then snd_ac97_mixer_build fails out when creation of ad18xx specific control would get attempted. This problem was found and debuged by Marcelo Tosatti. Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
* [ALSA] ac97 - Move EXPORT_SYMBOL() to adjacent to each functionTakashi Iwai2006-06-22
| | | | | | Move EXPORT_SYMBOL() to adjacent to each exported function/variable. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] AC97: Correct Mic Boost label.James Courtier-Dutton2006-06-22
| | | | Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
* [ALSA] emu10k1: Add support for Audigy4 (not Pro)James Courtier-Dutton2006-06-22
| | | | Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
* [ALSA] ac97 - Add entry for VIA VT1618 codecTakashi Iwai2006-04-12
| | | | | | | | | Modules: AC97 Codec Added the missing entry for VIA VT1618 codec. No particular patch is needed, though. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - Clean up obsolete workaroundsTakashi Iwai2006-03-22
| | | | | | | | Modules: AC97 Codec Clean up obsolete workarounds provided only for nm256. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - Allow drivers to set static volume resolution tableTakashi Iwai2006-03-22
| | | | | | | | | Modules: AC97 Codec Add the pointer to a static volume resolution table to ac97 template, so that the drivers can define the volume resolution, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - Added a codec patch for LM4550Charl Coetzee2006-03-22
| | | | | | | | | Modules: AC97 Codec Added a codec patch for LM4550. It sets up a static volume resolution table. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - Add support of static resolution tablesTakashi Iwai2006-03-22
| | | | | | | | | | | Modules: AC97 Codec Added the support of static resolution table support for codecs that the driver cannot probe the volume resolution properly. The table pointer should be set in each codec patch. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] semaphore -> mutex (PCI part)Ingo Molnar2006-03-22
| | | | | | | | | | | 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>
* [ALSA] Add a new quirk for mute-LED and HP-only.Matthew Garrett2006-01-03
| | | | | | | | | | | | | | Modules: AC97 Codec,ATIIXP driver,Intel8x0 driver This patch adds a new quirk for ac97 hardware that combines the existing AC97_TUNE_MUTE_LED and AC97_TUNE_HP_ONLY quirks. This is needed for several current HP laptops. Additionally, it adds the HP nx6125 to the AC97_TUNE_MUTE_LED list. Fixed for the latest version of ALSA by Takashi Iwai <tiwai@suse.de>. Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - Small fix for ALC65x codecTakashi Iwai2006-01-03
| | | | | | | | | | Modules: AC97 Codec Small fix for ALC65x codec, sync with Realtek's driver codes: - Rename 'IEC958 Playback Route' to 'IEC958 Playback Source' so that mixer can handle it properly Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Optimize for config without PROC_FS (pci drivers)Takashi Iwai2006-01-03
| | | | | | Optimize the code when compiled without CONFIG_PROC_FS for some pci drivers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - NULL check in snd_ac97_suspend/resumeTakashi Iwai2006-01-03
| | | | | | | | | Modules: AC97 Codec Add NULL check in snd_ac97_suspend() and snd_ac97_resume() so that the caller doesn't have to do it by itself. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97-codec - Better ac97_bus nameTakashi Iwai2006-01-03
| | | | | | | | | Modules: AC97 Codec Generate a better name string for ac97_bus sysfs interface including the name of ac97 codec chip. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Remove xxx_t typedefs: AC97Takashi Iwai2006-01-03
| | | | | | | | Modules: AC97 Codec Remove xxx_t typedefs from the AC97 codec support. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - Fix confliction of DRA and surround slotsTakashi Iwai2005-11-04
| | | | | | | | Modules: AC97 Codec Fixed the confliction of DRA and surround slots 7/8. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Fix schedule_timeout usageNishanth Aravamudan2005-11-04
| | | | | | | | | | | Use schedule_timeout_{,un}interruptible() instead of set_current_state()/schedule_timeout() to reduce kernel size. Also use human-time conversion functions instead of hard-coded division to avoid rounding issues. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Remove snd_runtime_check() macroTakashi Iwai2005-11-04
| | | | | | | | | | | Remove snd_runtime_check() macro. This macro worsens the readability of codes. They should be either normal if() or removable asserts. Also, the assert displays stack-dump, instead of only the last caller pointer. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Removing obsolete AC97_SHARED_TYPESSasha Khapyorsky2005-11-04
| | | | | | | | | | This patch cleans last ac97 audio/modem codec interception in initialization procedures (ac97_mixer_new()) and removes obsolete SHARED_TYPE 'locking' which prevents from AMC codecs to function correctly. Signed-off-by: Sasha Khapyorsky <sashak@smlink.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] remove redundent assignment to the ac97 device structureNicolas Pitre2005-10-07
| | | | | | | | | | | AC97 Codec Don't use dev.platform_data to store a reference to the containing ac97_t structure. Such assignment is redundent since we can deduce the ac97_t structure location from the contained device structure. This sets platform_data free for other purposes. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] no templated index for mc97 controlsSasha Khapyorsky2005-10-07
| | | | | | | | AC97 Codec No index is templated for mdoem controls. Signed-off-by: Sasha Khapyorsky <sashak@smlink.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Replace with kzalloc() - pci stuffTakashi Iwai2005-09-12
| | | | | | | | | | | | | | AD1889 driver,ATIIXP driver,ATIIXP-modem driver,AZT3328 driver BT87x driver,CMIPCI driver,CS4281 driver,ENS1370/1+ driver ES1938 driver,ES1968 driver,FM801 driver,Intel8x0 driver Intel8x0-modem driver,Maestro3 driver,SonicVibes driver,VIA82xx driver VIA82xx-modem driver,AC97 Codec,AK4531 codec,au88x0 driver CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,HDA Codec driver HDA generic driver,HDA Intel driver,ICE1712 driver,ICE1724 driver KORG1212 driver,MIXART driver,NM256 driver,Trident driver,YMFPCI driver Replace kcalloc(1,..) with kzalloc(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Fix ALC658D supportTakashi Iwai2005-09-12
| | | | | | | | AC97 Codec Fix the internal speaker problem (e.g. Targa Traveller 826) with ALC658D codec. The info is taken from Cyberlink/realtek-modified code. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] ac97 - make ac97 codec device name uniqueBjorge Dijkstra2005-08-30
| | | | | | | | | AC97 Codec The patch fixes the bus_id conflict error when registering two codecs of the same type (ALSA bug#1334). Signed-off-by: Bjorge Dijkstra <bjorge@gmx.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] Add VT1617A codec supportPhilip Prindeville2005-08-30
| | | | | | | AC97 Codec Added (minimal) support of VT1617A codec with SPDIF. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* [ALSA] AC97 bus interface for ad-hoc driversLiam Girdwood2005-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AC97 Codec,PCI drivers I've made the review changes and as requested I've pasted the RFC by Nicolas below:- 'I would like to know what people think of the following patch. It allows for a codec on an AC97 bus to be shared with other drivers which are completely unrelated to audio. It registers a new bus type, and whenever a codec instance is created then a device for it is also registered with the driver model using that bus type. This allows, for example, to use the extra features of the UCB1400 like the touchscreen interface and the additional GPIOs and ADCs available on that chip for battery monitoring. I have a working UCB1400 touchscreen driver here that simply registers with the driver model happily working alongside with audio features using this.' Changes over RFC:- o Now matches codec name within codec group. o Added ac97_dev_release() to stop kernel complaining about no release method for device. o Added 'config SND_AC97_BUS' to sound/pci/Kconfig and moved 'config SND_AC97_CODEC' out with the PCI=n statement. o module is now called snd-ac97-bus Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com> Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>