summaryrefslogtreecommitdiff
path: root/include/sound
AgeCommit message (Collapse)AuthorFilesLines
2009-12-04Merge branch 'topic/hda' into for-linusTakashi Iwai3-7/+331
2009-12-04Merge branch 'topic/asoc' into for-linusTakashi Iwai5-9/+87
2009-12-04Merge branch 'topic/misc' into for-linusTakashi Iwai3-2/+90
2009-12-01Merge branch 'topic/beep-rename' into topic/core-changeTakashi Iwai3-22/+21
2009-12-01Merge branch 'topic/ice1724-quartet' into topic/hdaTakashi Iwai3-7/+331
2009-11-25ASoC: Add BCLK calculation utility for TDM mode tooMark Brown1-0/+1
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-11-23ALSA: opti-miro: expose ACI mixer to outside driversKrzysztof Helt1-0/+17
The ACI mixer is used to control the radio FM module installed on the Miro PCM20 sound card. Expose ACI mixer outside the sound card driver. Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-23ALSA: opti-miro: make miro.h header available outside the alsa directoryKrzysztof Helt1-0/+73
Move the miro.h header to the include/sound directory. It can be used in the Miro PCM20 radio driver (v4l). Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-18ALSA: cs4236: update control namesKrzysztof Helt1-1/+0
Update control names to be more closer to their meaning. Change the "Mono" name to the "Beep" as this line is usually used to forward the PC beeper signal to sound card's output. Update names for both cs423x and wss. Clean up cs4235 controls according to the cs4235 doc. Rename some of the cs4235 controls to be consistent with the cs4236's ones. Also, delete one misnamed cs4231 register define. Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-12ASoC: Add jack_status_check callback function for GPIO jacksJoonyoung Shim1-0/+2
The jack_status_check callback function is the interface to check the status of the jack. Some target provides the method to distinguish what is the jack inserted - headphone jack, microphone jack, tvout jack, etc, so we can implement it using the jack_status_check function. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-11-12ASoC: Add bit clock rate calculator utility functionsMark Brown1-0/+5
Many devices need to calculate the bit clock rate desired to work out the clock configuration required for the device. Provide utility functions to do this using both hw_params structures and raw numbers. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2009-11-10sound: rawmidi: record a substream's owner processClemens Ladisch1-0/+2
Record the pid of the task that opened a RawMIDI substream. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-10sound: pcm: record a substream's owner processClemens Ladisch1-0/+3
Record the pid of the task that opened a PCM substream. For sound cards with hardware mixing, this allows determining which process is associated with a specific substream's volume control. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-06control: use reference-counted pidClemens Ladisch1-1/+3
Instead of storing the PID number, take a reference to the task's pid structure. This protects against duplicates due to PID overflows, and using pid_vnr() ensures that the PID returned by snd_ctl_elem_info() is correct as seen from the current namespace. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-06control: remove snd_konctrol_volatile::owner_pid fieldClemens Ladisch1-1/+0
We do not need to save the ID of the process that locked a control because that information is already available in the owner's file data. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-05ALSA: cs4236: detect chip in one passKrzysztof Helt1-1/+0
The cs4236 was two step detection with call to the snd_wss_free() between two steps. The snd_wss_free() did not free a sound device created in the snd_wss_create(). This caused an OOPS during module removal as the same sound device was released twice. The same OOPS happened if the cs4236 module loading failed. Fix this by adapting the snd_cs4236_create() to correctly work with chips less capable then cs4236. The snd_cs4236_create() behaves the same as the snd_wss_create() if the chip is less capable than the cs4236. Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-04ALSA: sh: add SuperH DAC audio driver for ALSA V4Rafael Ignacio Zurita1-0/+21
This is a port of the sound/oss/sh_dac_audio.c driver. The driver uses an on-chip 8-bit D/A converter, which has a speaker connected to one of its channels, found in several ancient HP machines. For interrupts it uses a high-resolution timer (hrtimer). Tested on SH7709 based hp6xx (HP Jornada 680/690 and HP Palmtop 620lx/660lx). Also, since OSS Emulation works, the old OSS sound/oss/sh_dac_audio.c driver would be obsolete soon, and it could be removed. Signed-off-by: Rafael Ignacio Zurita <rizurita@yahoo.com> Acked-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-04ASoC: Factor out snd_soc_init_card()Mark Brown1-1/+0
snd_soc_init_card() is always called as the last part of the CODEC probe function so we can factor it out into the core card setup rather than have each CODEC replicate the code to do the initialiastation. This will be required to support multiple CODECs per card. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-10-15ASoC: Codec driver for Texas Instruments tlv320dac33 codecPeter Ujfalusi1-0/+20
Driver for Texas Instruments TLV320DAC33 (SLAS546) low power stereo audio DAC. TLV320DAC33 is a stereo audio codec with integrated 24KB FIFO for low power audio playback. The digital interface can use I2S, DSP (A or B), Right and Left justified formats. DAC33 has stereo analog input, which can be bypassed to the analog outputs. Regarding to the internal 24KB FIFO the driver implements 'FIFO bypass' mode (default) and nSample mode (FIFO is in use). a) In 'FIFO bypass' mode the internal FIFO is not in use, the codec is working synchronously as a normal codec (it needs constant stream of data on the digital interface). b) The nSample mode implementation uses one interrupt line from DAC33 to the host: Alarm threshold is set to 10ms of audio data (limit by the driver implementation). DAC33 will signal an interrupt, when the FIFO level goes under the Alarm threshold. The host will write to nSample register a value (number of stereo samples), to tell DAC33 how many samples it should read in a burst from the host. When the DAC33 received the number of samples, it disables the clocks on the I2S bus. When the FIFO use again goes under the Alarm threshold, DAC33 signals the host with an interrupt, and the process is repeated. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-10-15ASoC: Remove snd_soc_suspend_device()Mark Brown1-5/+0
The PM core will grow pm_link infrastructure in 2.6.33 which can be used to implement the intended functionality of the ASoC-specific device suspend and resume callbacks so drop them. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-10-09ASoC: TPA6130A2 amplifier driverPeter Ujfalusi1-0/+30
Driver for Texas Instruments TPA6130A2 stereo headphone amplifier. The driver provides playback gain control and also pre-defined DAPM_HP widgets and DAPM routings for power management. The DAPM_HP widget names are: "TPA6130A2 Headphone Left" "TPA6130A2 Headphone Right" From soc machine drivers to use with the tpa6130a2 amplifier, the tpa6130a2_add_controls has to be called, which adds the alsa controls and the DAPM routing needed for the tpa6130a2. After that the machine driver can connect the codec's output with 'TPA6130A2 Left' and 'TPA6130A2 Right': {"TPA6130A2 Left", NULL, "CODEC LEFT OUT"}, {"TPA6130A2 Right", NULL, "CODEC RIGHT OUT"}, Internally the left and right channels are powered separately. When none of the channels are needed the amplifier is powered down: hard power: valid GPIO number is passed within platform data soft power: Using the software shutdown of the amplifier Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-10-06Merge branch 'for-2.6.32' into for-2.6.33Mark Brown8-41/+64
2009-10-06ASoC: Add virtual enumeration support for DAPM muxesMark Brown1-0/+10
Sometimes it is desirable to have a mux which does not reflect any direct register configuration but which will instead only have an effect implicitly (for example, as a result of changing which parts of the device are powered up). Provide a virtual mux for this purpose. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-10-02ALSA: sscape - Remove sscap_ioctl.h from include/sound/KbuildTakashi Iwai1-1/+0
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-10-01ASoC: add support for multiple cards/codecs in debugfsPeter Ujfalusi1-0/+1
In order to support multiple codecs on the same system in the debugfs the directory hierarchy need to be changed by adding directory per codec under the asoc direcorty: debugfs/asoc/{dev_name(socdev->dev)}-{codec->name}/codec_reg /dapm_pop_time /dapm/{widgets} With the original implementation only the debugfs files are only created for the first codec, other codecs loaded later would fail to create the debugfs files (since they are already exist). Furthermore in this situation any of the codecs has been removed, would cause the debugfs entries to disappear, regardless if the codec, which created them are still loaded (the one which loaded first). Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-10-01ALSA: sscape: convert to firmware loader frameworkKrzysztof Helt1-21/+0
The conversion solves the problem that firmware size was set to 64KB while non PnP cards have 128KB firmware files. An additional firmware initialization code has been moved from the OSS driver. Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-28ASoC: Add PDM DAI format definitionLopez Cruz, Misael1-0/+1
Add DAI format definition for PDM interfaces. Signed-off-by: Misael Lopez Cruz <x0052729@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-09-21ALSA: ak4113 supportPavel Hofman1-0/+321
* complete support for ak4113 * based on code for ak4114 and ak4117 Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-21ALSA: ak4620 support, codec regs listed in procPavel Hofman1-1/+4
* complete support for ak4620 * codec regs listed in proc for all codecs/chips * adding total regs for each codec * fixing nb. of steps in input attenuation controls Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-21ALSA: ak4114 - fix errors in output selector bitsPavel Hofman1-6/+6
* the previous version had a typo - values of AK4114_OPS10-12 were identical with AK4114_OPS00-02 * Since no cards actually use this feature, the bug was not identified earlier Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-18Merge branch 'for-2.6.32' into for-2.6.33Mark Brown1-1/+0
2009-09-13ASoC: Provide API for reordering channelsBarry Song1-0/+7
The patch adds an interface to set the relationship between audio channel number and slot number. The interface should be really useful because audio channel n doesn't always use slot n in all platforms. And for some devices, the relationship even can change with sound mode switch in 2.1,3.1,4.1,5.1,6.1,7.1 etc. Signed-off-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-09-10Merge branch 'topic/ymfpci' into for-linusTakashi Iwai1-0/+1
* topic/ymfpci: sound: ymfpci: increase timer resolution to 96 kHz
2009-09-10Merge branch 'topic/tlv-minmax' into for-linusTakashi Iwai1-0/+14
* topic/tlv-minmax: ALSA: usb-audio - Correct bogus volume dB information ALSA: usb-audio - Use the new TLV_DB_MINMAX type ALSA: Add new TLV types for dBwith min/max
2009-09-10Merge branch 'topic/snd-printk' into for-linusTakashi Iwai1-24/+14
* topic/snd-printk: ALSA: Fixed a typo of printk() ALSA: Add debug module option ALSA: core - strip too long file names in snd_print*()
2009-09-10Merge branch 'topic/pcm-drain-nonblock' into for-linusTakashi Iwai1-1/+1
* topic/pcm-drain-nonblock: ALSA: pcm - Increase protocol version ALSA: pcm - Fix drain behavior in non-blocking mode
2009-09-10Merge branch 'topic/misc' into for-linusTakashi Iwai2-14/+1
* topic/misc: ALSA: Remove unneeded ifdef from sound/core.h ALSA: Remove struct snd_monitor_file from public sound/core.h ALSA: Release v1.0.21
2009-09-10Merge branch 'topic/dummy' into for-linusTakashi Iwai2-2/+4
* topic/dummy: ALSA: dummy - Increase MAX_PCM_SUBSTREAMS to 128 ALSA: dummy - Add debug proc file ALSA: Add const prefix to proc helper functions ALSA: Re-export snd_pcm_format_name() function ALSA: dummy - Fake buffer allocations ALSA: dummy - Fix the timer calculation in systimer mode ALSA: dummy - Add more description ALSA: dummy - Better jiffies handling ALSA: dummy - Support high-res timer mode
2009-09-10Merge branch 'topic/dma-sgbuf' into for-linusTakashi Iwai2-0/+29
* topic/dma-sgbuf: ALSA: Fix SG-buffer DMA with non-coherent architectures
2009-09-08ASoC: Allow per-route connectedness checks for suppliesMark Brown1-0/+7
Some chips with complex internal supply (particularly clocking) arragements may have multiple options for some of the supply connections. Since these don't affect user-visible audio routing the expectation would be that they would be managed automatically by one of the drivers. Support these users by allowing routes to have a connected function which is queried before the connectedness of the path is checked as normal. Currently this is only done for supplies, other widgets could be supported but are not currently since the expectation for them is that audio routing will be under the control of userspace. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-09-08ALSA: Add const prefix to proc helper functionsTakashi Iwai1-2/+2
Add appropriate const prefix to char * arguments in proc helper functions. Also fixed the caller side to be proper const pointers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-08ALSA: Re-export snd_pcm_format_name() functionTakashi Iwai1-0/+2
Re-export snd_pcm_format_name() function to be used outside the PCM core. As a first example, usbaudio is changed to use it now again. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-07ALSA: Remove unneeded ifdef from sound/core.hTakashi Iwai1-4/+0
Remove the old hack that was needed for building alsa-driver modules externally for old kernels. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-07ALSA: Remove struct snd_monitor_file from public sound/core.hTakashi Iwai1-9/+0
The struct snd_monitor_file is used locally only in sound/core/init.c, thus it should be moved there from the public sound/core.h. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-07ASoC: Remove unuused hw_read_tMark Brown1-1/+0
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-09-05ASoC: Add source argument to PLL configurationMark Brown1-3/+3
More and more devices feature PLLs and FLLs with the ability to select between multiple input clocks. In order to better support these devices a new argument, source, has been added to the set_pll() configuration API. Using set_clkdiv() is often difficult due to the need to stop the PLL/FLL before any reconfiguration can be done. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-09-03ALSA: Release v1.0.21Jaroslav Kysela1-1/+1
Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-28ALSA: Fixed a typo of printk()Takashi Iwai1-1/+1
Fixed a silly typo of printk() included in the previous patch... Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-27ALSA: pcm - Increase protocol versionTakashi Iwai1-1/+1
Increase the PCM protocol version to indicate the drain ioctl behavior change. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-27ALSA: Add debug module optionTakashi Iwai1-24/+14
Add debug module option to snd core. This controls the debug print level. When CONFIG_SND_DEBUG_VERBOSE is set, you can suppress the debug messages by giving or changing this parameter to a lower value. debug=0 means no debug messsages. As default, it's set to the verbose level 2. Since this option can be changed dynamically via sysfs file, you can suppress the verbose debug messages on the fly, which wasn't possible before. Signed-off-by: Takashi Iwai <tiwai@suse.de>