aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-03-22ASoC: Support !REGULATOR build for sgtl5000Mark Brown1-0/+14
The regulator is optional depending on board design. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-18ASoC: Remove bogus check for register validity in debugfs writeMark Brown1-2/+0
Since not all registers need to be cached and the cache is entirely optional anyway we shouldn't be checking that a register is in the cached range. If the register is invalid then the actual I/O code can determine that and report an error. Similarly, the step size can and should be enforced by the lower level code if it's important. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-18Merge branch 'topic/asoc' of ↵Mark Brown1-6/+36
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into for-2.6.39
2011-03-16Merge branch 'for-2.6.39' of ↵Takashi Iwai1-6/+36
git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc
2011-03-11ASoC: mini2440: Fix uda134x codec problem.Marek Belisko3-2/+11
ASoC audio for mini2440 platform in current kenrel doesn't work. First problem is samsung_asoc_dma device is missing in initialization. Next problem is with codec. Codec is initialized but never probed because no platform_device exist for codec driver. It leads to errors during codec binding to asoc dai. Next problem was platform data which was passed from board to asoc main driver but not passed to codec when called codec_soc_probe(). Following patch should fix issues. But not sure if in correct way. Please review. Signed-off-by: Marek Belisko <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]> Cc: [email protected]
2011-03-11ASoC: Fix spacing in MAX8950Mark Brown1-1/+1
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-11ASoC: PXA: Z2: Fix codec pin nameVasily Khoruzhick1-1/+1
MONO was renamed to MONO1. Signed-off-by: Vasily Khoruzhick <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]> Cc: [email protected]
2011-03-11ASoC: PXA: z2: Mute internal speaker when headphones are connectedVasily Khoruzhick1-0/+5
Signed-off-by: Vasily Khoruzhick <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-11ASoC: Add MAX9850 codec driverChristian Glindkamp4-0/+433
This patch adds ASoC support for the MAX9850 codec with headphone amplifier. Supported features: - Playback - 16, 20 and 24 bit audio - 8k - 48k sample rates - DAPM Signed-off-by: Christian Glindkamp <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-11ALSA: Add snd_ctl_activate_id()Takashi Iwai2-0/+48
Added a new API function snd_ctl_activate_id() for activate / inactivate the control element dynamically. Signed-off-by: Takashi Iwai <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-10Merge branch 'for-2.6.38' into for-2.6.39Mark Brown1-1/+9
2011-03-09ASoC: Ensure WM8958 gets all WM8994 late revision widgetsMark Brown1-0/+8
Without this fix the driver won't instantiate properly on relevant devices. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]> Cc: [email protected]
2011-03-09ASoC: Fix typo in late revision WM8994 DAC2R nameMark Brown1-1/+1
Without this fix the driver won't instantiate properly on relevant devices. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]> Cc: [email protected]
2011-03-09ASoC: Enable 192kHz sample rate for EP93xx.Alexander Sverdlin2-4/+4
Enable 192kHz sample rate for EP93xx. Signed-off-by: Alexander Sverdlin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-09ASoC: Improve EP93xx I2S clocks management.Alexander Sverdlin1-10/+9
Improve EP93xx I2S clocks management. Some freqs values are set not exact as they requested for MCLK and original code was not able to find divisors for SCLK and LRCLK. This code just picks up nearest value from 3 possible variants. This patch makes 44100 and 192000 rates working and fixes capture function (by selecting SCLK/LRCLK=64 where possible). All other rates should work as before. Signed-off-by: Alexander Sverdlin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-09ASoC: EDB93xx: Manage I2S rates according to datasheet for CS4271 CODEC.Alexander Sverdlin1-8/+8
Manage I2S rates according to datasheet for CS4271 CODEC in EDB93xx machine driver. Signed-off-by: Alexander Sverdlin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-09ASoC: Manage mode and rate bits correctly for CS4271 CODEC.Alexander Sverdlin1-30/+53
Manage mode and rate bits correctly, according to datasheet in CS4271 CODEC. This is done to make capture work properly. Signed-off-by: Alexander Sverdlin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-09Merge branch 'for-2.6.38' into for-2.6.39Mark Brown1-1/+1
Conflicts: sound/soc/codecs/wm8978.c sound/soc/soc-dapm.c
2011-03-09ASoC: Fix double addition of prefixes due to widget prefixingMark Brown1-3/+26
We're not only prefixing all controls, we're also prefixing the widget names in the runtime data. This causes us to add the prefix twice - once when using the widget name to generate the control name and once when adding the control. Really we shouldn't be prefixing the widget names at all, the matching code should be handing this as we always know which DAPM context a widget came from and always display the widget name in terms of a DAPM context. However, we're quite close to the merge window and that's relatively invasive. Signed-off-by: Mark Brown <[email protected]> Reported-by: Jarkko Nikula <[email protected]> Acked-by: Jarkko Nikula <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-09ASoC: Use the correct DAPM context when cleaning up final widget setMark Brown1-1/+1
Now we've got multi-component we need to make sure that the DAPM context (and hence register I/O context) we use to apply the pending updates at the end of a DAPM sequence is the one we were processing rather than the one that was used to initate the state change. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-09ASoC: Fix broken bitfield definitions in WM8978Mark Brown1-6/+8
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]> Cc: [email protected]
2011-03-09ASoC: Simplify WM9081 speaker startup by using widgets for spaker outputMark Brown1-26/+6
Now we have a register write minimisation code in DAPM we don't need to worry about the ordering of the enable and disable of the PGA and the output stage. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-09ASoC: omap: rx51: Enable McBSP2 sidetoneJarkko Nikula1-0/+4
McBSP sidetone is needed in telephony applications. McBSP sidetone is a configurable FIR filter that forms a loopback from McBSP input to output. This patch enables the McBSP2 sidetone ALSA controls so that it can be used on Nokia RX-51/N900. Sidetone feature can be tested with following commands: (set up codec input and output paths) # Enable and configure sidetone amixer -D hw:0 set 'McBSP2 Sidetone' on amixer set -D hw:0 'McBSP2 Sidetone Channel 0' 32767 echo 32767 >/sys/devices/platform/omap-mcbsp.2/st_taps # Do not loop audio via CPU arecord -f dat >/dev/null |aplay /dev/zero Signed-off-by: Jarkko Nikula <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: sgtl5000: use after free in ldo_regulator_register()Dan Carpenter1-1/+3
The "ldo" variable was dereferenced after free on the error path. Signed-off-by: Dan Carpenter <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-08ASoC: Fix prefixing of DAPM controls by factoring prefix into snd_soc_cnew()Mark Brown3-17/+47
Currently will ignore prefixes when creating DAPM controls. Since currently all control creation goes through snd_soc_cnew() we can fix this by factoring the prefixing into that function. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: Warn rather than set a silly constraint when we can't do symmetryMark Brown1-0/+10
Symmetric rate configuration can fail if the second stream starting tries to apply the symmetric constraint before the first stream has got far enough to pick a rate. Rather than try to enforce a nonsensical rate of 0Hz log a warning and allow the application to carry on. Things might go wrong later on but the user will know about it and there's unlikely to be lasting damage. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: Refactor symmetric_rates check to reduce indentationMark Brown1-14/+14
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: Convert WM9081 SYSCLK configuration to be device wideMark Brown1-3/+5
Also respace the CODEC ops a bit for legibility. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: Provide CODEC clocking operations and API callsMark Brown2-0/+57
When multi component systems use DAIless amplifiers which require clocking configuration it is at best hard to use the current clocking API as this requires a DAI even though the device may not even have one. Address this by adding set_sysclk() and set_pll() operations and APIs for CODECs. In order to avoid issues with devices which could be used either with or without DAIs make the DAI variants call through to their CODEC counterparts if there is no DAI specific operation. Converting over entirely would create problems for multi-DAI devices which offer per-DAI clocking setup. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: Fix section mismatch warnings in WM8994Mark Brown2-2/+2
Annoying as the __devinitdata is actually correct. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: Use data based init for WM9081 DAPMMark Brown1-6/+5
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-08ASoC: Add DAPM widget and path data to CODEC driver structureMark Brown2-2/+16
Allow a slight simplification of CODEC drivers by allowing DAPM routes and widgets to be provided in a table. They will be instantiated at the end of CODEC probe. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-07ASoC: Remove warnings in ep93xx-i2s.cAlexander Sverdlin1-2/+6
Remove warnings in ep93xx-i2s.c Signed-off-by: Alexander Sverdlin <[email protected]> Acked-by: Ryan Mallon <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: Extend range of supported sample rates for CS4271 CODEC.Alexander Sverdlin1-2/+3
Extend range of supported sample rates for CS4271 CODEC. Signed-off-by: Alexander Sverdlin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: Add LM4857 to SND_SOC_ALL_CODECSMark Brown1-0/+1
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-07ASoC: Add driver for the dfbmcs320 bluetooth moduleLars-Peter Clausen5-29/+86
This patch adds a codec driver for the dfbmcs320 bluetooth module, which is used on the neo1973 boards. The patch also modifies the neo1937_wm8753 sound board driver to use the new driver instead of registering the bluetooth DAI manually. Previously there was a name mismatch between the bluetooth DAI and the bluetooth DAI link and the sound card was not instantiated, with this patch the issue is no longer present and sound support works again. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: Samsung: Merge neo1937_wm8753 and neo1973_gta02_wm8753 sound board driverLars-Peter Clausen4-522/+196
The neo1973(GTA01) and neo1973_gta02(GTA02) have a very similar audio hardware setup. They both use the same codec with the same routing to the gsm modem and bluetooth chip. But they do use different AMPs though and there are some minor differences in the speaker setup. As a result most of the code of those two drivers is identical. So from a maintenance point of view it makes sense to merge them into a single driver. It also reduces the size of kernel images supporting both the GTA01 and GTA02. As a side-effect of this merge the GTA01 for example gains support for routing audio to and from the bluetooth DAI. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: neo1973_gta02_wm8753: Use gpio_request_array to request gpiosLars-Peter Clausen1-35/+17
Using gpio_request_array instead of requesting and setting up each gpio by hand makes the code more readable and more compact. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: neo1973_gta02_wm8753: Remove lm4853_{set,get}_stateLars-Peter Clausen1-48/+7
This patch drops the lm4853_{set,get}_state functions and the "Amp State Switch" control. Those were noops which existed to maintain alsa state file compatibility. Since the control names have changed due to internal changes in the ASoC core and state file compatibility was broken anyway it makes sense to drop them. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: neo1973_wm8753: Move lm4857 specefic code to its own moduleLars-Peter Clausen6-236/+347
This patch moves the code for the lm4857 AMP from the neo1973_wm8753 sound board driver to its own module. The lm4857 is a generic AMP IC and not specific to the neo1973. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: neo1973_wm8753: Remove scenario management code.Lars-Peter Clausen1-137/+11
It has been proven to be inflexible to do scenario management in kernel space. Since actual neo1973 board support has not been merged in mainline and this patch has been in the neo1973 tree for some time now it should be safe to remove this functionality without breaking existing userspace. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: Add machine driver for Visstrim_M10 board.Javier Martin3-0/+149
Visstrim_M10 boards have an external tlcv320aic3205 codec attached to SSI1. This driver glues together both interfaces. External amplifier is not supported in this first version. Signed-off-by: Javier Martin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: Constify i2c_device_id tableAxel Lin2-2/+2
Signed-off-by: Axel Lin <[email protected]> Acked-by: Alexander Sverdlin <[email protected]> Acked-by: Timur Tabi <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: tlv320dac33: add MODULE_DEVICE_TABLEAxel Lin1-0/+1
The device table is required to load modules based on modaliases. Signed-off-by: Axel Lin <[email protected]> Acked-by: Peter Ujfalusi <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-07ASoC: Add missing debugfs conditionalsMark Brown1-0/+2
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-07ASoC: Fix outdated API usage in tlv320aic32x4Mark Brown1-5/+5
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-04ASoC: Add TI tlv320aic32x4 codec support.Javier Martin5-0/+974
This patch adds support for tlv320aic3205 and tlv320aic3254 codecs. It doesn't include miniDSP support for aic3254. Signed-off-by: Javier Martin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-03ASoC: Add a late_probe() callback to cardsMark Brown2-0/+10
This is run after the DAPM widgets and routes are added, allowing setup of things like jacks using the routes. The main card probe() is run before anything else so can't be used for this purpose. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-03ASoC: Allow card DAPM widgets and routes to be set up at registrationMark Brown2-0/+15
These will be added after all devices are registered and allow most DAI init functions in machine drivers to be replaced by simple data. Regular controls are not supported as the registration function still works in terms of CODECs. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-03ASoC: Add a per-card DAPM contextMark Brown2-0/+16
This means that rather than adding the board specific DAPM widgets to a random CODEC DAPM context they can be added to the card itself which is a bit cleaner. Previously there only was one DAPM context and it was tied to the single supported CODEC. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>