aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
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-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]>
2011-03-03ASoC: Check for a CODEC before dereferencing in DAPMMark Brown1-3/+3
A CODEC pointer is optional (and is checked for in most contexts within DAPM) - add checks to the few places where it was missed. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-03ASoC: Get the card directly from the DAPM contextMark Brown1-4/+4
Rather than indirecting through the CODEC we can look the card up directly from the card pointer in the DAPM context. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-03ASoC: Add TLV information for WM8978 DAC limiterMark Brown1-2/+3
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-03Merge branch 'for-2.6.38' into for-2.6.39Mark Brown1-6/+8
2011-03-03ASoC: 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-03ASoC: WM8994: Ensure MICBIAS is provided with a clockDimitris Papastamos1-0/+13
The patch 'ASoC: WM8994: Improve Playback Robustness' did not handle this case properly. Signed-off-by: Dimitris Papastamos <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-01ASoC: Add platform data for WM9081 IRQ pin configurationMark Brown2-13/+25
The WM9081 IRQ output can be either active high or active low and can support either CMOS or open drain modes. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-01ASoC: Remove module probe announcements from CODEC driversMark Brown2-3/+0
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2011-03-01ASoC: Fix burstsize and DSP_B format problems in imx-ssi.Javier Martin1-1/+4
When choosing IMX_DMA flag, burtsizes are set to its default value (0) which leads to driver malfunction. Change them to 4. DSP_B interface needs additional flag to match DSP_B formats as described in several codecs as wm8741 and aic3205. Signed-off-by: Javier Martin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-01ASoC: WM8994: Ensure MICBIAS is provided with a clockDimitris Papastamos1-0/+13
The patch 'ASoC: WM8994: Improve Playback Robustness' did not handle this case properly. Signed-off-by: Dimitris Papastamos <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-03-01Merge branch 'for-2.6.38' into for-2.6.39Mark Brown2-9/+47
2011-03-01ASoC: WM8994: Ensure late enable events are processed for the ADCsDimitris Papastamos1-3/+23
Ensure that the ADCs are provided with a clock as the previous patch "ASoC: WM8994: Improve playback robustness" did not handle this case properly. Signed-off-by: Dimitris Papastamos <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]> Cc: [email protected]
2011-03-01ASoC: WM8994: Don't disable the AIF[1|2]CLK_ENA unconditionalyDimitris Papastamos1-6/+19
Since we began using the late clock disable functionality, ensure that we don't disable the clock if any of the ADC or DAC paths are still enabled. This happens when we have simultaneous playback and recording. Signed-off-by: Dimitris Papastamos <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]> Cc: [email protected]
2011-03-01ASoC: Fix WM9081 platform data initialisationMark Brown1-0/+5
It went AWOL in the multi-component conversion. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]> Cc: [email protected]
2011-02-28ASoC: Tegra: Fix error handling in DMA channel allocStephen Warren1-2/+2
tegra_dma_allocate_channel() returns NULL on errors, not an error pointer. Signed-off-by: Stephen Warren <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-02-28ASoC: Staticise non-exported symbols in SGTL5000Mark Brown1-3/+3
Signed-off-by: Mark Brown <[email protected]>
2011-02-28ASoC: remove unnecessary header including in SGTL5000 codec driverZeng Zhaoming2-3/+0
Remove unnecessary headers: - mach/hardware.h in sgtl5000.c - linux/i2c.h in sgtl5000.h Signed-off-by: Zeng Zhaoming <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2011-02-26Merge branch 'for-2.6.38' into for-2.6.39Mark Brown1-1/+1