summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-04-20ASoC: Tegra: wm8903 probe: Don't call machine_is_*()Stephen Warren
This machine driver is a platform driver, and hence will only be instantiated on the correct machines. Hence, there is no need to check the current machine during probe. (Applying Mark's TrimSlice review comments to the existing driver) Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18ASoC: Tegra: Support more boardsStephen Warren
* Ventana is identical to Harmony. * Seaboard, Kaen, and Aebl are all pretty similar, mainly with slightly different sets of GPIOs, and slightly different WM8903 pin connectivity. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18ASoC: Tegra: Don't store snd_soc_jack_gpio in an arrayStephen Warren
Storing the struct in an array makes the assignments to the GPIO member a little non-obvious, and is pointless when there's only a single GPIO. (I thought I fixed this during the review cycle when first submitting this driver, but I guess I overlooked that) Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18ASoC: Tegra: Rename Kconfig SND_TEGRA_SOC_* to SND_SOC_TEGRA_*Stephen Warren
The previous commit renames SND_TEGRA_SOC_HARMONY to SND_TEGRA_SOC_WM8903. While we're breaking people's .config files, rename all Tegra/SOC-related Kconfig variables to be more consistent with at least the core codec variables. Note that there exist machines that name their variables both ways. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18ASoC: Tegra: Rename harmony.c to tegra_wm8903.cStephen Warren
Soon, this machine driver will be updated to handle a number of Tegra boards using the WM8903 codec. Rename the file in advance to reflect this. Fix the content of tegra_wm8903.c to match the rename; replace references to Harmony board with something more generic. * s/struct tegra_harmony/struct tegra_wm8903/ * s/harmony/machine/ # variable name * Similar rename for some functions * Similar comment fix * Similar MODULE_DESCRIPTION fix Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18Merge branch 'tegra' into for-2.6.40Mark Brown
2011-04-18ASoC: Merge branch 'for-2.6.39' into for-2.6.40Mark Brown
Fix trivial conflict caused by silly spelling fix patch. Conflicts: sound/soc/codecs/wm8994.c
2011-04-18ARM: Tegra: Add to tegra_wm8903_platform_dataStephen Warren
Seaboard derivate Kaen has a GPIO to mute the headphone output. Add a field to tegra_wm8903_platform_data so the board files can pass the GPIO number for that to the ASoC machine driver. Also, initialize this new field to a "not present" value for Harmony. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18ASoC: Tegra: Rename pdev tegra-snd-harmony to tegra-snd-wm8903Stephen Warren
Soon, this machine driver will be updated to handle a number of Tegra boards using the WM8903 codec. Rename the platform device in advance to reflect this. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18ARM: Tegra: Rename harmony_audio.h -> tegra_wm8903_pdata.hStephen Warren
The audio driver will soon support more than just the Tegra Harmony board. Rename the platform data header file and data type to reflect this. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18ASoC: add a module alias to the FSI driverGuennadi Liakhovetski
This patch enables FSI driver autoloading on sh-mobile systems. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Reviewed-by: Simon Horman <horms@verge.net.au Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-18Merge commit 'v2.6.39-rc3' into for-2.6.39Mark Brown
2011-04-13Merge branch 'for-2.6.39' into for-2.6.40Mark Brown
2011-04-13ARM: s3c2440: gta02; Register dfbmcs320 device for BT audio interfaceLars-Peter Clausen
Register the dfbmcs320 device which provides the PCM DAI for the bluetooth module. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-13ASoC: codecs: JZ4740: Convert to table based controls and DAPM setupLars-Peter Clausen
Use the newly introduced dapm_widgets, dpam_routes and controls fields of the snd_soc_dai_driver struct to setup controls and DAPM. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-13ASoC: JZ4740: qi_lb60: Use the SND_SOC_DAPM_EVENT_OFF for the speakers statusLars-Peter Clausen
Use SND_SOC_DAPM_EVENT_OFF for determining whether the speaker should be turned on or off instead of open coding it. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-13ASoC: JZ4740: qi_lb60: Use gpio_request_array to request and setup gpiosLars-Peter Clausen
This patch changes the qi_lb60 setup code to use gpio_request_array instead of manually calling gpio_request and gpio_direction_output for each gpio. Doing so makes the code a bit more compact. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-13ASoC: JZ4740: Convert qi_lb60 codec to table based DAPM setupLars-Peter Clausen
Use the newly introduced dapm_widgets, dpam_routes and fields of the snd_soc_card struct to setup DAPM. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-13ASoC: Make struct snd_soc_card's dapm_widgets and dapm_routes constLars-Peter Clausen
Those should not be modified (and are not) by the core code, so make them const. This also makes them consistent with the same members of snd_soc_codec. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-13Merge branch 'for-2.6.39' into for-2.6.40Mark Brown
2011-04-13ASoC: codecs: JZ4740: Fix OOPSLars-Peter Clausen
Commit ce6120cc(ASoC: Decouple DAPM from CODECs) changed the signature of snd_soc_dapm_widgets_new to take an pointer to a snd_soc_dapm_context instead of a snd_soc_codec. The call to snd_soc_dapm_widgets_new in jz4740_codec_dev_probe was not updated to reflect this change, which results in a compiletime warning and a runtime OOPS. Since the core code calls snd_soc_dapm_widgets_new after the codec has been registered it can be dropped here. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
2011-04-13ASoC: Mark Speyside widgets as ignoring suspendMark Brown
Allow audio paths through the Speyside system to be kept active while the system is suspended (for example, when on a voice call) by marking all the external widgets and the DAI link to the WM1250-EV1 baseband module as ignoring suspend. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Add stub baseband link on SpeysideMark Brown
Demonstrate the connection of a baseband to the system. We add a DAI for the link to the baseband. This will become visible to the application layer - audio should be started from the application layer using an application such as this: http://opensource.wolfsonmicro.com/~gg/bluetooth-pcm/bluetooth_pcm.c which starts up audio as for CPU based playback and record up to the point where data is streamed. Due to non-availability of baseband simulation hardware we reuse the configuration for the CPU link with the CODEC acting as clock master, allowing signals to be observed with a scope. A more standard system would have separate configuration for the baseband with its own ops structure and operations. Normally the baseband would be clock master as the baseband audio will be synchronised to the external telephony network. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Add pin switches for fixed analogue inputs and outputs on SpeysideMark Brown
Pin switches enable direct control of the DAPM state from userspace, enabling simple enabling and disabling of the path. This is especially useful for outputs such as the speaker which are composed of several physical devices as it allows them to be controlled as a group. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Add Speyside headset jack detection supportMark Brown
Speyside makes use of support the WM8915 has for detecting the polarity of the microphone and ground connections on headsets, using a GPIO to control the polarity of the ground connection and switching between the two microphone bias supplies available on the device in order to do so. As a result of this the detection support is more involved than for most other CODECs, using a callback to configure the current polarity of the jack and translate this into the board-specific connections required for the current scenario. On Android some additional work is required to hook this up to the application layer as the Android HeadsetObserver monitors a custom drivers/switch API rather than the standard Linux APIs. This can be done by either updating HeadsetObserver or modifying the ALSA core to report via drivers/switch as well. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Support the sub speaker driver on SpeysideMark Brown
Speyside includes a WM9081 configured as an external speaker driver taking an analogue input from HPOUT2 on the WM8915 on the system. Add support for this to the driver, using a prefix of "Sub" for the WM9081 controls to ensure we avoid collisions with controls on the WM8915. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Optimise clock management for WM8915 SpeysideMark Brown
Dynamically enable and disable the FLL on the WM8915, configuring the system clock to 256fs for 48kHz when the device is active but reverting to using the input 32.768kHz clock directly at other times to support features such as jack detection with minimal power consumption. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Add basic widgets for WM8915 SpeysideMark Brown
Provide widgets for the basic widgets connected directly to the WM8915 on Speyside - the headphones, speaker, digital and analogue microphones. For the outputs this is just documentation, for the inputs this ensures that the relevant microphone biases are enabled when they are in use. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Initial audio support for Speyside on Cragganmore 6410Mark Brown
This is minimal code required to get audio out of the Speyside audio subsystem on the Wolfson Cragganmore 6410 reference platform. It sets up the link between the CPU and AIF1 of the WM8915 on the system, enabling audio playback via the headphone and speaker outputs of the device (which require no further configuration except runtime). It allows verification of basic functionality of the system. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Create card DAPM widgets early so they can be used in callbacksMark Brown
This helps with things like setting up the initial state. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-13ASoC: Move WM8915 FLL operations onto the CODECMark Brown
Since the WM8915 FLL is not tied to a particular audio interface move it to a CODEC wide operation. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-12ASoC: Fix mis cherry-pick of wm1250-ev1 driverMark Brown
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-12Linux 2.6.39-rc3Linus Torvalds
2011-04-11Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfsLinus Torvalds
* 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: use proper interfaces for on-stack plugging xfs: fix xfs_debug warnings xfs: fix variable set but not used warnings xfs: convert log tail checking to a warning xfs: catch bad block numbers freeing extents. xfs: push the AIL from memory reclaim and periodic sync xfs: clean up code layout in xfs_trans_ail.c xfs: convert the xfsaild threads to a workqueue xfs: introduce background inode reclaim work xfs: convert ENOSPC inode flushing to use new syncd workqueue xfs: introduce a xfssyncd workqueue xfs: fix extent format buffer allocation size xfs: fix unreferenced var error in xfs_buf.c Also, applied patch from Tony Luck that fixes ia64: xfs_destroy_workqueues() should not be tagged with__exit in the branch before merging.
2011-04-11xfs_destroy_workqueues() should not be tagged with__exitLuck, Tony
ia64 throws away .exit sections for the built-in CONFIG case, so routines that are used in other circumstances should not be tagged as __exit. Signed-off-by: Tony Luck <tony.luck@intel.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-04-11Merge branch 'for_linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: ext4: fix data corruption regression by reverting commit 6de9843dab3f ext4: Allow indirect-block file to grow the file size to max file size ext4: allow an active handle to be started when freezing ext4: sync the directory inode in ext4_sync_parent() ext4: init timer earlier to avoid a kernel panic in __save_error_info jbd2: fix potential memory leak on transaction commit ext4: fix a double free in ext4_register_li_request ext4: fix credits computing for indirect mapped files ext4: remove unnecessary [cm]time update of quota file jbd2: move bdget out of critical section
2011-04-11Merge branch 'for-2.6.39' of git://linux-nfs.org/~bfields/linuxLinus Torvalds
* 'for-2.6.39' of git://linux-nfs.org/~bfields/linux: nfsd4: fix oops on lock failure nfsd: fix auth_domain reference leak on nlm operations
2011-04-11Merge branch 'spi/merge' of git://git.secretlab.ca/git/linux-2.6Linus Torvalds
* 'spi/merge' of git://git.secretlab.ca/git/linux-2.6: dt/fsldma: fix build warning caused by of_platform_device changes spi: Fix race condition in stop_queue() gpio/pch_gpio: Fix output value of pch_gpio_direction_output() gpio/ml_ioh_gpio: Fix output value of ioh_gpio_direction_output() gpio/pca953x: fix error handling path in probe() call
2011-04-11ASoC: Add initial WM1250-EV1 Springbank audio I/O module driverMark Brown
The WM1250-EV1 Springbank audio I/O module for the Wolfson Glenfarclas reference platform provides a simple audio I/O with an independant clock domain, intended to simulate cellular modem and bluetooth subsystems within the platform. The card supports some limited GPIO based control but this is currently not implemented. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-11ASoC: Add WM8915 CODEC driverMark Brown
The WM8915 is an ultra low power mobile CODEC designed for smartphones, featuring a mixture of digital and analogue I/O with flexible mixing options and advanced low power accessory detection functionality in a compact package. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2011-04-11ASoC: Add soc_remove_dai_linksKuninori Morimoto
card->num_rtd should be 0 after soc_romve_dai_link Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11ASoC: SAMSUNG: Add WM8580 PCM Machine driverSangbeom Kim
This patch add WM8580 PCM machine driver to support PCM audio on SMDKC110, SMDKV210, SMDK6450, SMDK6440 boards. Playback and Capture supports 8kHz sampling rates. and It is tested on SMDKC110, SMDKV210, SMDK6450 Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11Merge branch 'for-2.6.39' into for-2.6.40Mark Brown
2011-04-11ASoC: Fix output PGA enabling in wm_hubs CODECsMark Brown
The output PGA was not being powered up in headphone and speaker paths, removing the ability to offer volume control and mute with the output PGA. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Cc: stable@kernel.org
2011-04-11ASoC: sn95031: decorate function with __devexit_p()Lu Guanqun
According to the comments in include/linux/init.h: "Pointers to __devexit functions must use __devexit_p(function_name), the wrapper will insert either the function_name or NULL, depending on the config options." Fix this issue in codecs sn95031. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11ASoC: SAMSUNG: Fix the inverted clocks handling for pcm driverSangbeom Kim
Fix the inverted clocks handling for pcm cpu driver. By using SND_SOC_DAIFMT_NB_NF, Audio noise can be generated on SMDK. Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11ASoC: sst_platform: Fix lock acquringLu Guanqun
Fix the possible dead lock shown below: spin_lock sst_get_stream_status sst_period_elapsed intel_sst_interrupt handle_IRQ_event handle_fasteoi_irq do_IRQ common_interrupt spin_lock sst_set_stream_status sst_platform_pcm_trigger Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11ASoC: fsi: driver safely remove for against irqKuninori Morimoto
free_irq and pm_runtime_disable should be called before snd_soc_unregister_xxx Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11ASoC: fsi: modify vague PM control on probeKuninori Morimoto
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11ASoC: fsi: take care in failing case of dai registerKuninori Morimoto
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>