35dec69 | Peter Ujfalusi | 14 October 2011, 11:43:34 UTC | ASoC: twl6040: Request core to inline the DAPM sequence We need to have as less time between McPDM shutdown, and power down of the DAC on the twl6040 codec as possible. Request core to ignore the pmdown_time for the playback stream. Backround: with the McPDM protocol we are sendning not only the pure audio stream, but OMAP McPDM also transmits additional information (for example offset cancellation). If McPDM is stopped prior to the DAC this information will be not sent to the codec, which can result noise rendered by the twl6040 codec. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:42:21 UTC |
1d69c5c | Peter Ujfalusi | 14 October 2011, 11:43:33 UTC | ASoC: core: Add flag to ignore pmdown_time at pcm_close With this flag codec drivers can indicate that it is desired to ignore the pmdown_time for DAPM shutdown sequence when playback stream is stopped. The DAPM sequence will be executed without delay in this case. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:42:21 UTC |
7a0e67b | Ashish Chavan | 14 October 2011, 10:55:25 UTC | ASoC: da7210: bugfix for head phone volume control This patch takes care of reserved bits of headphone volume register by using correct volume range. Signed-off-by: Ashish Chavan <ashish.chavan@kpitcummins.com> Signed-off-by: David Dajun Chen <dchen@diasemi.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:31 UTC |
f3aa721 | Axel Lin | 14 October 2011, 09:01:59 UTC | ASoC: ad193x: Fix define of AD193X_PLL_INPUT_MASK Current code defines AD193X_PLL_INPUT_MASK as (~0x6) which is quite different from other MASK defines. To make it consistent with other mask defines, define AD193X_PLL_INPUT_MASK as 0x6 and change the code accordingly. I think this change improves the readability. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:05 UTC |
79d0726 | Axel Lin | 14 October 2011, 06:30:05 UTC | ASoC: wm8990: Use snd_soc_update_bits for read-modify-write Use snd_soc_update_bits for read-modify-write register access instead of open-coding it using snd_soc_read and snd_soc_write This patch also includes a comment fix in wm8990_set_dai_pll(), if freq_in and freq_out are 0, what we do is to clear WM8990_PLL_ENA bit. Thus the comment should be "Turn off PLL". Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:05 UTC |
790f932 | Axel Lin | 14 October 2011, 05:57:48 UTC | ASoC: wm8990: Fix wrong bit setting for WM8990_POWER_MANAGEMENT_2 If (fakepower & ((1 << WM8990_INMIXR_PWR_BIT) | (1 << WM8990_AINRMUX_PWR_BIT))) is false, we should clear WM8990_AINR_ENA bits instead of WM8990_AINL_ENA. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:05 UTC |
1a8e8d2 | Axel Lin | 14 October 2011, 05:56:49 UTC | ASoC: wm8400: Fix wrong bit setting for WM8400_POWER_MANAGEMENT_2 If (fakepower & ((1 << WM8400_INMIXR_PWR) | (1 << WM8400_AINRMUX_PWR))) is false, we should clear WM8400_AINR_ENA bits instead of WM8400_AINL_ENA. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:05 UTC |
c639adc | Axel Lin | 14 October 2011, 04:09:48 UTC | ASoC: wm8991: Use snd_soc_update_bits for read-modify-write Use snd_soc_update_bits for read-modify-write register access instead of open-coding it using snd_soc_read and snd_soc_write Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:05 UTC |
3f387a2 | Axel Lin | 14 October 2011, 04:08:00 UTC | ASoC: wm8991: Fix wrong bit setting for WM8991_POWER_MANAGEMENT_2 If (fakepower & ((1 << WM8991_INMIXR_PWR_BIT)|(1 << WM8991_AINRMUX_PWR_BIT)))) is false, we should clear WM8991_AINR_ENA bits instead of WM8991_AINL_ENA. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:04 UTC |
370f464 | Axel Lin | 14 October 2011, 01:39:14 UTC | ASoC: wm8961: Convert codec->hw_read to snd_soc_read codec->hw_read is broken now, let's covert to snd_soc_read. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:04 UTC |
38c436a | Axel Lin | 14 October 2011, 01:37:00 UTC | ASoC: tlv320aic3x: Convert codec->hw_read to snd_soc_read codec->hw_read is broken now, let's covert to snd_soc_read. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:04 UTC |
524205c | Axel Lin | 14 October 2011, 01:35:20 UTC | ASoC: alc5623: Convert codec->hw_read to snd_soc_read codec->hw_read is broken now, let's covert to snd_soc_read. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:04 UTC |
f9dfbf9 | Axel Lin | 13 October 2011, 07:06:43 UTC | ASoC: tlv320aic23: convert to soc-cache Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:29:04 UTC |
a6f096f | Mark Brown | 14 October 2011, 19:18:49 UTC | ASoC: Convert DA7210 to table based DAPM init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 14 October 2011, 19:18:49 UTC |
bc6ae96 | Axel Lin | 13 October 2011, 14:56:34 UTC | ASoC: tlv320aic32x4: Use snd_soc_update_bits for read-modify-write Use snd_soc_update_bits for read-modify-write register access instead of open-coding it using snd_soc_read and snd_soc_write. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 16:38:36 UTC |
694b000 | Peter Ujfalusi | 13 October 2011, 12:05:44 UTC | ASoC: twl6040: Rename the Earphone Driver event handler Since the event handler is only used by the Earphone Driver, it is better to rename it from twl6040_power_mode_event to twl6040_ep_drv_event. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 16:19:40 UTC |
aa1a410 | Peter Ujfalusi | 13 October 2011, 12:05:43 UTC | ASoC: twl6040: Change event ordering for Earphone driver It is better to switch HS Power Mode (if it was in low power mode) before we enable the Earpiece driver. The switched off EP driver can filter out noise coming from the Low Power to High Performance transition on the HSL DAC. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 16:19:40 UTC |
fac2f3e | Peter Ujfalusi | 13 October 2011, 12:05:42 UTC | ASoC: twl6040: Remove PLL usage restrictions There is no limitation dictated by outputs or inputs regarding to the selected PLL (LP/HP). Remove the checks for this, and allow all path with any PLL configuration. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 16:19:39 UTC |
f872826 | Peter Ujfalusi | 13 October 2011, 12:05:41 UTC | ASoC: twl6040: Remove Capture restriction for 17.64MHz sysclk Capture is supported in all PLL configuration. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 16:19:39 UTC |
1cba77c | Mark Brown | 12 October 2011, 17:39:53 UTC | ASoC: Update WM5100 accessory detection for revision A Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 11:20:24 UTC |
7c04241 | Axel Lin | 13 October 2011, 09:17:06 UTC | ASoC: ak4535: fixup cache register table ak4535_reg should be 8bit, but cache table is defined as 16bit. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org | 13 October 2011, 10:59:20 UTC |
19b115e | Kuninori Morimoto | 13 October 2011, 09:03:54 UTC | ASoC: ak4642: fixup cache register table ak4642 register was 8bit, but cache table was defined as 16bit. ak4642 doesn't work correctry without this patch. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org | 13 October 2011, 10:58:10 UTC |
edf413f | Axel Lin | 13 October 2011, 06:57:31 UTC | ASoC: sta32x: Write the register default value to cache for reserved registers Chip documentation explicitly requires that the reset values of reserved register bits are left untouched. codec->hw_read is broken now. Here we use below trick to avoid writing to reserved registers while resume. Write the register default value to cache for reserved registers, so the write to the these registers are suppressed by the cache restore code when it skips writes of default registers. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 10:50:05 UTC |
f0bbc2b | Axel Lin | 13 October 2011, 06:40:08 UTC | ASoC: sta32x: Set reg_cache_default to sta32x_regs Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 10:50:05 UTC |
dbe37db | Axel Lin | 12 October 2011, 23:38:56 UTC | ASoC: pxa: Remove redundant snd_soc_dapm_sync() calls from machine drivers The core will sync DAPM as part of the card initialization, there is no need for machine drivers to do so during their setup. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 13 October 2011, 10:50:04 UTC |
b29a33a | Axel Lin | 12 October 2011, 13:43:08 UTC | ASoC: Make SND_SOC_SAARB and SND_SOC_TAVOREVB3 select MFD_88PM860X In saarb_pm860x_init() and evb3_pm860x_init(), we call pm860x_hs_jack_detect() and pm860x_mic_jack_detect() which in turn calls pm860x_set_bits(). Thus make SND_SOC_SAARB and SND_SOC_TAVOREVB3 select MFD_88PM860X. This patch fixes below build error if CONFIG_MFD_88PM860X is not configured. LD .tmp_vmlinux1 sound/built-in.o: In function `pm860x_write_reg_cache': last.c:(.text+0x29e9c): undefined reference to `pm860x_reg_write' sound/built-in.o: In function `pm860x_set_bias_level': last.c:(.text+0x29ecc): undefined reference to `pm860x_set_bits' last.c:(.text+0x29f00): undefined reference to `pm860x_reg_write' last.c:(.text+0x29f18): undefined reference to `pm860x_reg_write' sound/built-in.o: In function `pm860x_read_reg_cache': last.c:(.text+0x29f40): undefined reference to `pm860x_reg_read' sound/built-in.o: In function `pm860x_probe': last.c:(.text+0x2a034): undefined reference to `pm860x_bulk_read' sound/built-in.o: In function `pm860x_codec_handler': last.c:(.text+0x2a344): undefined reference to `pm860x_reg_read' last.c:(.text+0x2a354): undefined reference to `pm860x_reg_read' sound/built-in.o: In function `pm860x_mic_jack_detect': last.c:(.text+0x2a450): undefined reference to `pm860x_set_bits' sound/built-in.o: In function `pm860x_hs_jack_detect': last.c:(.text+0x2a4d0): undefined reference to `pm860x_set_bits' last.c:(.text+0x2a4f8): undefined reference to `pm860x_set_bits' last.c:(.text+0x2a510): undefined reference to `pm860x_set_bits' make: *** [.tmp_vmlinux1] Error 1 Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 16:09:15 UTC |
0f8ea58 | Ashish Chavan | 12 October 2011, 15:03:21 UTC | ASoC: da7210: Add support for other DAI word lengths, format and mode This patchs adds support for following, (1) DAI 20 and 32 bit word sizes (2) DAI left and right justified formats (3) DAI slave mode Signed-off-by: Ashish Chavan <ashish.chavan@kpitcummins.com> Signed-off-by: David Dajun Chen <dchen@diasemi.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 14:57:06 UTC |
33b6816 | Peter Ujfalusi | 12 October 2011, 11:46:02 UTC | ASoC: twl6040: Workaround for headset DC offset caused pop noise Both Headset DAC need to be turned on/off at the same time before any of the output drivers are enabled (HS Left/Right, Earpiece). Move the HS DAC enable code to sequenced DAPM_SUPPLY, and attach it to the DACs. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 12:11:54 UTC |
67c3413 | Peter Ujfalusi | 12 October 2011, 08:57:57 UTC | ASoC: twl6040: Support for vibra output paths twl6040 have two vibra output drivers. They can be operated with audio stream coming through the PDM interface (fifth channel). The vibra outputs can be controlled via the input/FF driver as well. Selection between the two mode is implemented within the codec driver, the input/FF driver can only operate if the routing is set to "Input FF". Changing from "Input FF" to "Audio PDM" mode is protected as well: The switchin can only be done, if there is no running effect from the input/FF. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:48:52 UTC |
5f07c32 | Peter Ujfalusi | 12 October 2011, 08:57:56 UTC | Input: twl6040-vibra: Check the selected path for vibra The VIBSELL/R bit in the VIBCTLL/R register tells the source of the data, which is going to be used to drive the attached motor(s). Do not allow effect execution if any of the channels are set to receive audio data. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:48:51 UTC |
70601ec | Peter Ujfalusi | 12 October 2011, 08:57:55 UTC | MFD: twl6040: function to query the vibra status for clients If the client only interested, if any of the vibra channels enabled, or if any of the channels are set to receive audio data via PDM. This function targets mainly the vibra driver, so it can check if it is allowed to execute effects ot not. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Samuel Ortiz <samuel.ortiz@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:48:49 UTC |
31b402e | Peter Ujfalusi | 12 October 2011, 08:57:54 UTC | MFD: twl6040: Cache the vibra control registers The vibra control register will be used from the ASoC codec driver as well. In order to avoid latency issues caused by I2C read access, cache the two control register within the core driver, so we do not need to reach out to the chip to read it back. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Samuel Ortiz <samuel.ortiz@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:48:46 UTC |
1e036f6 | Peter Ujfalusi | 12 October 2011, 08:57:53 UTC | Input: twl6040: Simplify vibra regsiter definitions The bits within the two control registers (for left and right channel) are identical. Use common names for the bits acros the two register. Also add the missing definition for the path selection bit. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:48:35 UTC |
40a4971 | Axel Lin | 11 October 2011, 23:16:25 UTC | ASoC: da7210: convert to soc-cache Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:25:59 UTC |
48df93d | Axel Lin | 11 October 2011, 23:03:09 UTC | ASoC: Remove impossible case from wm8994_hw_params We set hw_params callback for wm8994_aif3_dai_ops to wm8994_aif3_hw_params. Thus no need to check wm8994-aif3 in wm8994_hw_params. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:25:58 UTC |
75b9a57 | Axel Lin | 11 October 2011, 22:57:25 UTC | ASoC: Delete ads117x.h This is not required after multi-component patch. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:25:58 UTC |
b91470b | Axel Lin | 11 October 2011, 12:20:53 UTC | ASoC: ak4642: convert to soc-cache Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 12 October 2011, 10:21:12 UTC |
b90d2f9 | Mark Brown | 10 October 2011, 12:38:06 UTC | ASoC: Instantiate card widgets immediately This ensures they are available prior to the card late_probe(). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 17:59:17 UTC |
ba896ed | Mark Brown | 27 September 2011, 16:39:50 UTC | ASoC: Implement WM5100 accessory detection support The WM5100 includes an advanced, low power, accessory detect subsystem capable of detecting both accessory presence and button presses while the device is in an ultra low power mode. Implement initial support for this. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 17:59:01 UTC |
3a53d82 | Mark Brown | 11 October 2011, 14:37:38 UTC | ASoC: Add missing default for WM5100 Clocking 1 Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 17:25:11 UTC |
684a65d | Wolfram Sang | 11 October 2011, 10:43:02 UTC | ASoC: Fix typo in Kconfig symbol for tlv320aic32x4 It is currently named "TVL" instead of "TLV". Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Cc: Javier Martin <javier.martin@vista-silicon.com> Cc: Liam Girdwood <lrg@ti.com> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 13:32:22 UTC |
8066eb5 | Peter Ujfalusi | 11 October 2011, 10:11:55 UTC | ASoC: tlv320dac33: Convert to table based init Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 13:32:22 UTC |
f7c93f0 | Peter Ujfalusi | 11 October 2011, 10:11:32 UTC | ASoC: twl4030: Convert to table based init Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 13:32:22 UTC |
a175fce | Peter Ujfalusi | 11 October 2011, 10:11:12 UTC | ASoC: twl6040: Convert to table based init Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 13:32:22 UTC |
6f25e4e | Axel Lin | 11 October 2011, 09:55:00 UTC | ASoC: Writing register default value for the reset register The WM8983 can be reset by performing a write of any value to the software reset register. To avoid writing to the software reset register while resume, we should write the same value in wm8983_reg_defs to software reset register in wm8983_probe(). The write to the reset register is suppressed by the cache restore code when it skips writes of default registers. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 11 October 2011, 13:32:22 UTC |
35f0678 | Mark Brown | 08 October 2011, 11:02:13 UTC | ASoC: Convert Goni to data based DAPM init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> | 11 October 2011, 13:30:19 UTC |
f8cf149 | Peter Ujfalusi | 10 October 2011, 12:34:12 UTC | ASoC: sdp3430: Let core to deal with the DAPM widgets Pass the DAPM widgets/routes via the snd_soc_card struct to core. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:12 UTC |
93b4d79 | Peter Ujfalusi | 10 October 2011, 12:34:11 UTC | ASoC: osk5912: Let core to deal with the DAPM widgets Pass the DAPM widgets/routes via the snd_soc_card struct to core. With this change we do not need the init function since the remaining snd_soc_dapm_enable_pin calls are not needed. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:12 UTC |
8966c2d | Peter Ujfalusi | 10 October 2011, 12:34:10 UTC | ASoC: n810: Let the core to register DAPM widgets/routes and controls Pass the DAPM widgets/routes and static controls via the snd_soc_card struct to core. In this way the machine driver does not need to handle the DAPM widgets/routes. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Jarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:11 UTC |
d226602 | Peter Ujfalusi | 10 October 2011, 12:34:09 UTC | ASoC: am3517evm: Let core to deal with the DAPM widgets Pass the DAPM widgets/routes via the snd_soc_card struct to core. With this change we do not need the init function since the remaining snd_soc_dapm_enable_pin calls are not needed. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Anuj Aggarwal <anuj.aggarwal@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:11 UTC |
d805846 | Peter Ujfalusi | 10 October 2011, 12:34:16 UTC | ASoC: sdp4430: No need to call dapm_pin_enable at init time Widgets are connected by default. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:11 UTC |
fc8e5b4 | Peter Ujfalusi | 10 October 2011, 12:34:15 UTC | ASoC: sdp4430: Let core to deal with the DAPM widgets Pass the DAPM widgets/routes via the snd_soc_card struct to core. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:11 UTC |
cd4a3d5 | Peter Ujfalusi | 10 October 2011, 12:34:14 UTC | ASoC: zoom2: No need to call dapm_pin_enable at init time Widgets are connected by default. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:11 UTC |
1083dbd | Peter Ujfalusi | 10 October 2011, 12:34:13 UTC | ASoC: zoom2: Let core to deal with the DAPM widgets Pass the DAPM widgets/routes via the snd_soc_card struct to core. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:11 UTC |
cb42487 | Peter Ujfalusi | 10 October 2011, 12:34:08 UTC | ASoC: OMAP machines: Remove soc_dapm_sync() call from init No need to call soc_dapm_sync at init time. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Anuj Aggarwal <anuj.aggarwal@ti.com> Cc: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl> Cc: Jarkko Nikula <jarkko.nikula@bitmer.com> Cc: Gražvydas Ignotas <notasas@gmail.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 15:18:10 UTC |
03b5362 | Mark Brown | 08 October 2011, 12:30:17 UTC | ASoC: Convert Jive to table based init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com> | 10 October 2011, 10:10:44 UTC |
ce363f6 | Mark Brown | 08 October 2011, 12:31:18 UTC | ASoC: Convert SMDK WM8580 to table based DAPM init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com> | 10 October 2011, 10:07:36 UTC |
257fe59 | Mark Brown | 08 October 2011, 12:30:55 UTC | ASoC: Convert SmartQ to table based init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com> | 10 October 2011, 10:07:33 UTC |
8ae2322 | Mark Brown | 08 October 2011, 12:30:35 UTC | ASoC: Convert RX1950 to table based init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com> | 10 October 2011, 10:07:30 UTC |
6119d01 | Mark Brown | 08 October 2011, 12:30:06 UTC | ASoC: Convert H1940 to table based init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com> | 10 October 2011, 10:07:26 UTC |
4f5448a | Mark Brown | 08 October 2011, 11:19:12 UTC | ASoC: Convert Simtec machines to table based DAPM init Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 10:06:22 UTC |
6179b77 | Michael Opdenacker | 10 October 2011, 05:07:08 UTC | ASoC: fix checkpatch.pl error in omap-mcbsp Signed-off-by: Michael Opdenacker <michael.opdenacker@linaro.org> Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:31:59 UTC |
3b18450 | Axel Lin | 06 October 2011, 02:11:51 UTC | ASoC: ak4535: convert to soc-cache Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:59 UTC |
fa5fdb4 | Axel Lin | 07 October 2011, 13:53:39 UTC | ASoC: wm8988: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:59 UTC |
0bad3d8 | Axel Lin | 07 October 2011, 13:52:42 UTC | ASoC: wm8974: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:59 UTC |
e46199e | Axel Lin | 07 October 2011, 13:52:00 UTC | ASoC: wm8971: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:58 UTC |
bc45df2 | Axel Lin | 07 October 2011, 13:50:23 UTC | ASoC: wm8960: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:58 UTC |
788b6e8 | Axel Lin | 07 October 2011, 13:42:49 UTC | ASoC: wm8940: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:58 UTC |
abe11d0 | Axel Lin | 07 October 2011, 13:41:41 UTC | ASoC: wm8776: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:58 UTC |
4d4adfc | Axel Lin | 07 October 2011, 13:40:44 UTC | ASoC: wm8750: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:57 UTC |
9bf311f | Axel Lin | 07 October 2011, 13:39:09 UTC | ASoC: wm8731: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:57 UTC |
960622d | Axel Lin | 07 October 2011, 13:37:54 UTC | ASoC: wm8711: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:57 UTC |
94f17e9 | Axel Lin | 07 October 2011, 13:36:27 UTC | ASoC: wm8510: Convert to snd_soc_cache_sync Convert to snd_soc_cache_sync for sync reg_cache with the hardware. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 10 October 2011, 09:29:56 UTC |
25c77c5 | Mark Brown | 08 October 2011, 12:36:03 UTC | ASoC: Fix DAPM sync for TLV320AIC3x custom DAPM widget We really should be doing this in the core, not in a driver... Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Tested-by: Jarkko Nikula <jarkko.nikula@bitmer.com> | 10 October 2011, 09:28:26 UTC |
3ebb5c9 | Mark Brown | 09 October 2011, 13:06:13 UTC | ASoC: Squash error codes from regmap down to -1 on read The ASoC code always uses -1 as the error code due to reporting errors in band with the value. Ensure we don't confuse anything by making sure we don't pass actual error codes back into the rest of the code on read. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 09 October 2011, 13:35:59 UTC |
024dc07 | Mark Brown | 09 October 2011, 10:52:05 UTC | ASoC: Cache connected input and output recursions The number of connected input and output endpoints for a given widgets can't change during a DAPM run so there is no need to redo the recursion through branches of the tree we've already visited. Doing this on one of my test systems gives an improvement of: Power Path Neighbour Before: 63 607 731 After: 63 141 181 which scales up well as more widgets are involved in paths. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 09 October 2011, 11:07:48 UTC |
7ca3a18 | Mark Brown | 08 October 2011, 13:04:50 UTC | ASoC: Assign power_check when we allocate DAPM widgets This ensures none of the rest of the code ever encounters a widget which does not have a power check function. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 08 October 2011, 16:55:55 UTC |
2dc0021 | Mark Brown | 08 October 2011, 12:59:44 UTC | ASoC: Ensure all DAPM widgets are instantiated with the card Specifically for the widgets added by machine driver late probe functions. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 08 October 2011, 16:55:51 UTC |
87bea31 | Mark Brown | 08 October 2011, 12:29:18 UTC | ASoC: Remove redundant snd_soc_dapm_sync() calls from machine drivers The core will sync DAPM as part of the card initialization, there is no need for machine drivers to do so during their setup. OMAP drivers are omitted as I know Peter already has patches for them. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 08 October 2011, 13:10:54 UTC |
4f4c007 | Mark Brown | 07 October 2011, 13:29:19 UTC | ASoC: Suppress early calls to snd_soc_dapm_sync() Ensure we only have one sync during the initial startup of the card by making snd_soc_dapm_sync() a noop on non-instantiated cards. This avoids any bounces due to things like jacks reporting their initial state on partially initialised cards. The callers that don't also get called at runtime should just be removed. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 08 October 2011, 10:47:32 UTC |
a1ff89e | Mark Brown | 24 July 2011, 11:40:48 UTC | regulator: Add WM1811 support The WM1811 has a slightly different range on LDO2 to other WM8994 class devices. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 07 October 2011, 11:49:18 UTC |
4f6d45f | Mark Brown | 06 October 2011, 19:03:18 UTC | Merge branch 'for-3.1' into for-3.2 | 06 October 2011, 19:03:18 UTC |
ac60155 | Axel Lin | 05 October 2011, 23:29:56 UTC | ASoC: Return early with -EINVAL if invalid dai format is detected Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 06 October 2011, 19:02:56 UTC |
3c08600 | Axel Lin | 06 October 2011, 03:44:56 UTC | ASoC: wm8990: Remove incorrect comments Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 06 October 2011, 19:02:56 UTC |
416a0ce | Axel Lin | 06 October 2011, 03:00:19 UTC | ASoC: wm8990: Convert to snd_soc_cache_sync for sync reg_cache with the hardware Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 06 October 2011, 19:02:55 UTC |
a92f139 | Peter Ujfalusi | 06 October 2011, 04:43:21 UTC | ASoC: fix codec breakage caused by the volsw/volsw_2r merger By accident few places still uses the _2r calls from the core. This is a quick fix, the drivers using the old callbacks going to be changed. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 06 October 2011, 19:02:55 UTC |
23524eb | Wolfram Sang | 06 October 2011, 18:53:36 UTC | ASoC: tlv320aic32x4 fix initialization of micpga routing Checking the pdata-flags used 'or', so the check is always true. Use 'and' to correctly mask the flags. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Cc: Javier Martin <javier.martin@vista-silicon.com> Cc: Liam Girdwood <lrg@ti.com> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 06 October 2011, 19:00:11 UTC |
143d62a | Mark Brown | 06 October 2011, 12:30:55 UTC | ASoC: Ensure DAPM widgets are set up before we sync jacks We synchronise jack state on startup - when we do that make sure that we have set up all the DAPM widgets first in case we end up touching any of the partially set up widgets when syncing the jack pins. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com> | 06 October 2011, 15:18:39 UTC |
c4671a9 | Peter Ujfalusi | 06 October 2011, 06:59:12 UTC | ASoC: Replace remaining use of *_volsw_2r with *_volsw The snd_soc_*_volsw_2r functionality has been merged to *volsw callbacks. Few places still used the get, or put variant of volsw_2r, replace those with the corresponding *_volsw. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 06 October 2011, 10:16:08 UTC |
9a185b9 | Mark Brown | 06 October 2011, 10:10:01 UTC | ASoC: Remove references to linux@wolfsonmicro.com Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 06 October 2011, 10:10:01 UTC |
6985700 | Axel Lin | 05 October 2011, 06:47:15 UTC | ASoC: Remove unused variable 'wm9090' in wm9090_probe Eliminate below build warning: CC sound/soc/codecs/wm9090.o sound/soc/codecs/wm9090.c: In function 'wm9090_probe': sound/soc/codecs/wm9090.c:550: warning: unused variable 'wm9090' Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:16:58 UTC |
0df2c59 | Axel Lin | 05 October 2011, 06:41:35 UTC | ASoC: imx: Remove unused variable 'dai' Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:16:58 UTC |
089f338 | Axel Lin | 05 October 2011, 06:40:46 UTC | ASoC: Remove unused function declaration in imx-ssi.h These functions are removed in commit f0fba2ad "ASoC: multi-component - ASoC Multi-Component Support". Let's remove the leftover function declaration in header file. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:16:58 UTC |
a0acf47 | Peter Ujfalusi | 05 October 2011, 07:29:28 UTC | ASoC: twl6040: Warn user in twl6040_put_volsw for error case Let the user know, that the callback has been called with unexpected register parameter. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:10:10 UTC |
1576a5f | Peter Ujfalusi | 05 October 2011, 07:29:27 UTC | ASoC: core: Remove snd_soc_put_volsw_2r definition We do not have users for snd_soc_put_volsw_2r anymore. It can be removed. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:10:10 UTC |
db382da | Peter Ujfalusi | 05 October 2011, 07:29:26 UTC | ASoC: twl6040: Simply call snd_soc_put_volsw form the custom code The ASoC core now have one callback function, which can handle single, and double register mixer controls. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:10:10 UTC |
974815b | Peter Ujfalusi | 05 October 2011, 07:29:25 UTC | ASoC: core: Combine snd_soc_put_volsw/put_volsw_2r functions Handle the put_volsw/put_volsw_2r in one function. To avoid build breakage in twl6040 keep the snd_soc_put_volsw_2r as define, and map it snd_soc_put_volsw. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:10:10 UTC |
f7915d9 | Peter Ujfalusi | 05 October 2011, 07:29:24 UTC | ASoC: core: Combine snd_soc_get_volsw/get_volsw_2r functions Handle the get_volsw/get_volsw_2r in one function. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:10:09 UTC |
e8f5a10 | Peter Ujfalusi | 05 October 2011, 07:29:23 UTC | ASoC: core: Combine snd_soc_info_volsw/info_volsw_2r functions Handle the info_volsw/info_volsw_2r in one function. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:10:09 UTC |
30d86ba | Peter Ujfalusi | 05 October 2011, 07:29:22 UTC | ASoC: core: Change SOC_SINGLE/DOUBLE_VALUE representation SOC_SINGLE/DOUBLE_VALUE is used for mixer controls, where the bits are within one register. Assign .rreg to be the same as .reg for these types. With this change we can tell if the mixer in question: is mono: mc->reg == mc->rreg && mc->shift == mc->rshift is stereo, within single register: mc->reg == mc->rreg && mc->shift != mc->rshift is stereo, in two registers: mc->reg != mc->rreg The patch provide a small inline function to query, if the mixer is stereo, or mono. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> | 05 October 2011, 16:10:09 UTC |