summaryrefslogtreecommitdiff
path: root/include/sound/ac97_codec.h
AgeCommit message (Collapse)Author
2009-12-04comment typo fix: sybsystem -> subsystemJean Delvare
Signed-off-by: Jean Delvare <jdelvare@suse.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2009-08-13ALSA: Allow passing platform_data for pxa2xx-ac97Marek Vasut
This patch adds support for passing platform data to ac97 bus devices from PXA2xx-AC97 driver.. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-07-23ALSA: Allow passing platform_data to devices attached to AC97 busMarek Vasut
This patch allows passing platform_data to devices attached to AC97 bus (like touchscreens, battery measurement chips ...). Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-12-10ALSA: cs5535audio: stick AD1888 bitshift values into a header fileAndres Salomon
We'd like to use the High Pass Filter and V_REFOUT bitshift values elsewhere, so stick them into a ac97_codec.h. Signed-off-by: Andres Salomon <dilinger@debian.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-05-30[ALSA] ac97 - Fix ASUS A9T laptop outputTakashi Iwai
ASUS A9T laptop uses line-out pin as the real front-output while other devices use it as the surround. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-04-24[ALSA] intel8x0 - Add support of 8 channel soundTakashi Iwai
Added the support of 8 channel sound for codecs that are known to work. So far, only ALC850 is marked as a 8ch-support codec. This fix is a modified version of the patch on ALSA BTS#2097 by Martin Ellis: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=2097 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2007-10-16[ALSA] Changed Jaroslav Kysela's e-mail from perex@suse.cz to perex@perex.czJaroslav Kysela
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2007-10-16[ALSA] ac97: YMF743 missing controls support (1/2)Keita Maehara
These patches enable some YMF743 controls (Tone/3D/IEC958) that won't be detected with the current version of ALSA. The first one contains only cosmetic changes to share a few YMF753-specific symbols with 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>
2007-02-09[ALSA] ac97 - fix various issues with AD1986/AD1986A supportRandy Cushman
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>
2007-02-09[ALSA] ac97 - Suppress power-saving mode on non-supporting driversTakashi Iwai
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>
2007-02-09[ALSA] ASoC: core and dapm headersRichard Purdie
This patch adds the ASoC and DAPM headers. Features:- o Defines Digital Audio Interface (DAI) API o Defines Codec, Platform and Machine API o Defines Dynamic Audio Power Management API Signed-off-by: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-11-22WorkStruct: make allyesconfigDavid Howells
Fix up for make allyesconfig. Signed-Off-By: David Howells <dhowells@redhat.com>
2006-09-23[ALSA] Add experimental support of aggressive AC97 power-saving modeTakashi Iwai
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>
2006-06-28[ALSA] AD1888 mixer controls for DC modeJaya Kumar
This patch adds two mixer controls. The V_REFOUT enable is a documented register that couples the microphone input lines to the V_REFOUT DC source. The High Pass Filter enable in the AC97_AD_TEST2 (0x5c) is an undocumented register provided by Miller Puckette via Analog Devices that enables the AD codec to apply a high pass filter to the input. Signed-off-by: Jaya Kumar <jayakumar.alsa@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-06-22[ALSA] Disable AC97 AUX and VIDEO controls for WM9705 touchscreenRodolfo Giometti
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>
2006-03-22[ALSA] ac97 - Clean up obsolete workaroundsTakashi Iwai
Modules: AC97 Codec Clean up obsolete workarounds provided only for nm256. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-22[ALSA] ac97 - Allow drivers to set static volume resolution tableTakashi Iwai
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>
2006-03-22[ALSA] ac97 - Add support of static resolution tablesTakashi Iwai
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>
2006-03-22[ALSA] semaphore -> mutex (PCI part)Ingo Molnar
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>
2006-01-03[ALSA] Add a new quirk for mute-LED and HP-only.Matthew Garrett
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>
2006-01-03[ALSA] Remove xxx_t typedefs: AC97Takashi Iwai
Modules: AC97 Codec Remove xxx_t typedefs from the AC97 codec support. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] ac97 - Remove ac9_enum definition from public headerTakashi Iwai
Modules: AC97 Codec Remove the definition of ac97_enum struct from the public ac97_codec.h. It's used only in the module. The location of struct ac97_pcm is moved closer to its accessor to improve readability. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04[ALSA] Removing obsolete AC97_SHARED_TYPESSasha Khapyorsky
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>
2005-10-07[ALSA] remove redundent assignment to the ac97 device structureNicolas Pitre
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>
2005-08-30[ALSA] AC97 bus interface for ad-hoc driversLiam Girdwood
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>
2005-08-30[ALSA] WM97xx AC97 codec controlsLiam Girdwood
AC97 Codec o Enhanced current WM97xx support to provide additional controls and use the kcontrol suffix naming convention. o Added AC97_HAS_NO_MIC, AC97_HAS_NO_TONE and AC97_HAS_NO_STD_PCM. o Cleaned up WM97xx related comments. o Removed some wm9713 double mono controls and replaced with stereo controls. Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-06-22[ALSA] AC97 - renamed vendor/device to subvendor/subdevice where appropriateJaroslav Kysela
AC97 Codec,ATIIXP driver,VIA82xx driver To avoid confusion, the structure members vendor/device were renamed to subvendor/subdevice, because we compare them with PCI subsystem vendor and subsystem device. Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2005-05-29[ALSA] Improve the shared-jack handling on ac97Takashi Iwai
AC97 Codec The handling of shared surround/clfe output jacks with line/mic-in on some AC97 codecs is improved. Instead of 'Line-In As Surround' or 'Mic As Center/LFE' switch, two new enum controls are introduced: 'Channel Mode' and 'Surround Jack Mode'. The formar changes the current output mode among 2, 4 and 6-channels. The latter controls whether the jacks are shared or independent. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-03-24[ALSA] Add AC97_SCAP_NO_SPDIF flagJaroslav Kysela
AC97 Codec,ATIIXP driver,au88x0 driver,EMU10K1/EMU10K2 driver Added a new flag, AC97_SCAP_NO_SPDIF, to prevent to build the SPDIF-related controls on ac97 codec. This flag is used when the sound chip has its native SPDIF support and it conflicts with the one of AC97 codec. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-03-11[ALSA] AC97 wm9713 supportJaroslav Kysela
AC97 Codec This patch series adds support for the WM9713/WM9714 family of AC97 codecs. This family is different from 'standard' AC97 codecs in that the default codec power state is 'off'. i.e. performing a register reset will power the device down. This patch also adds better support for larger single/double channel enumerated mixer types. Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-01-12[ALSA] Add suspend callbackJaroslav Kysela
AC97 Codec Core Add suspend callback for each codec patch. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-01-04[ALSA] Fix C-Media codecsJaroslav Kysela
AC97 Codec Core Don't create PCM (and Master for CM9739/9761) volume controls for some of C-Media codecs. The volume is supposed to be controlled via softvol plugin. The wrong (duble) entry for a CM9761 model is removed, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-01-03[ALSA] Allow strings for ac97_quirk optionsJaroslav Kysela
AC97 Codec Core,Intel8x0 driver,VIA82xx driver Since there are many ac97_quirk values, the number is no longer good to remember what it really means. Now ac97_quirk option becomes as a string option, and more undstandable. For example, you can pass like 'ac97_quirk=hp_only'. The old number is still kept and parsed for backward compatibility. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-01-03[ALSA] Remove spinlock in callbacksJaroslav Kysela
AC97 Codec Core,AK4531 codec Removed spinlocks in callback, use sempahore instead since all ac97 callbacks are supposed to be non-atomic. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-01-03[ALSA] Add mute LED quirkJaroslav Kysela
AC97 Codec Core,Intel8x0 driver A new quirk type, AC97_TUNE_MUTE_LED, is added for HP/Compaq laptops. With this quirk, the EAPD bit is used to control the mute LED in conjunction with the master mute switch. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-12-21[ALSA] Fix compilation without CONFIG_PMJaroslav Kysela
AC97 Codec Core Fixed the compilation without CONFIG_PM. The resume callback is built only with CONFIG_PM. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-11-29[ALSA] AD18xx/19xx resume fixJaroslav Kysela
AC97 Codec Core Added resume callback so that the codec-specific resume code can be called properly. Moved AD-specific initialization code into it. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-09-22[ALSA] show codec name in card descriptionJaroslav Kysela
AC97 Codec Core,ATIIXP driver,Intel8x0 driver,VIA82xx driver Include the AC97 codec name in the card longname of motherboard controllers. (to enhance the chance of getting useful bug reports :) Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2004-09-22[ALSA] [ac97 core] added AC97_SCAP_DETECT_BY_VENDOR flagJaroslav Kysela
AC97 Codec Core,Intel8x0 driver This patch adds a AC97_SCAP_DETECT_BY_VENDOR flag for Xbox. If the flag is set, the AC97 codec is detected only by reading of a reasonable vendor ID. It seems that Xbox has accessible only vendor/device ID registers for reading. Also, a new xbox parameter for snd-intel8x0 has been introduced to let user force this behaviour. Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2004-09-07[ALSA] inverted EAPD supportJaroslav Kysela
Documentation,AC97 Codec Core,Intel8x0 driver,CS46xx driver Since there are more than one (broken) implementation of EAPD bit on ac97 chips, the new scaps bit is added for the inverted EAPD. Also, AC97_TUNE_INV_EAPD is used to tune this behavior later by snd_ac97_tune_hardware(). The ac97 quirk entry for Sony S1XP is added to turn this on. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-09-07[ALSA] [ac97] Check ac97 codec id in quirk tableJaroslav Kysela
AC97 Codec Core Added codec_id field to ac97_quirk struct so that the devices with the same PCI subsystem IDs but with different AC97 chips can be distinguished properly. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-09-07[ALSA] [ac97] Added VIA shared type.Jaroslav Kysela
AC97 Codec Core,VIA82xx driver Added a new shared type AC97_SHARED_TYPE_VIA for via82xx southbridge to share codecs between audio and modem drivers. Signed-off-by: Sasha Khapyorsky <sashak@smlink.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-09-07[ALSA] AC97 96 kHz sample rate supportJaroslav Kysela
Documentation,AC97 Codec Core,Intel8x0 driver Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2004-08-02ALSA CVS updateJaroslav Kysela
AC97 Codec Core,ATIIXP driver,ATIIXP-modem driver,Intel8x0 driver Intel8x0-modem driver Fixed the reset problem of shared audio/modem drivers. This patch fixes the problem that the shared audio/modem drivers reset the codecs with each other at loading time. Currently, intel8x0 and atiixp drivers are supported. The other drivers (if any) should add the new shared type in ac97_codec.h. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-07-28ALSA CVS updateJaroslav Kysela
AC97 Codec Core,Intel8x0 driver,Intel8x0-modem driver Fixed the detection of sample rates with no VRA support. - Changed ac97bus->vra to ac97bus->no_vra to indicate the VRA is NOT supported. - In the case of no_vra=1, only 48k is set as the possible rates in snd_ac97_pcm_assign(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2004-07-28ALSA CVS updateJaroslav Kysela
Documentation,AC97 Codec Core,ATIIXP driver,CS4281 driver ENS1370/1+ driver,ES1968 driver,FM801 driver,Intel8x0 driver Intel8x0-modem driver,Maestro3 driver,VIA82xx driver,ALI5451 driver au88x0 driver,EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver NM256 driver,Trident driver,YMFPCI driver replace ac97_t template with ac97_template_t Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2004-07-28ALSA CVS updateJaroslav Kysela
Documentation,AC97 Codec Core,ATIIXP driver,CS4281 driver ENS1370/1+ driver,ES1968 driver,FM801 driver,Intel8x0 driver Intel8x0-modem driver,Maestro3 driver,VIA82xx driver,ALI5451 driver au88x0 driver,CS46xx driver,EMU10K1/EMU10K2 driver,ICE1712 driver ICE1724 driver,NM256 driver,Trident driver,YMFPCI driver move AC'97 bus callbacks into seperate ops record; remove ac97_bus_t template requirement from snd_ac97_bus() Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2004-05-28ALSA CVS update - Takashi Iwai <tiwai@suse.de>Jaroslav Kysela
AC97 Codec Core added ac97_can_spdif() for checking the SPDIF support.
2004-05-28ALSA CVS update - Takashi Iwai <tiwai@suse.de>Jaroslav Kysela
AC97 Codec Core - added the global mutex for ac97_t (ad18xx mutex is removed). used to protect paging and AD18xx multi-codecs. - set PAGE_INT register explicitly before accessing (for STAC9758). - moved ALC650 revision check to patch_alc650(). - support stereo Mic playback. - moved STAC9708 quirk to patch_stac9708(). - don't clear PC_BEEP high bits (ac97 2.3 sets frequency there). - avoid the unnecessary RESET-waiting for audio/modem codec. - fixed the evaluation of modem codec to call mpatch callback properly. - determine the SPDIF rate in the build path. - added suffix argument to snd_ac97_rename|remove|swap_ctl(). - added snd_ac97_rename_vol_ctl().
2004-04-24ALSA CVS update - Clemens Ladisch <clemens@ladisch.de>Jaroslav Kysela
AC97 Codec Core show AC'97 2.3 information in proc file