aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* ASoC: Add WM8915 CODEC driverMark Brown2011-04-11
| | | | | | | | | | 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>
* ASoC: Add soc_remove_dai_linksKuninori Morimoto2011-04-11
| | | | | | | | 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>
* ASoC: SAMSUNG: Add WM8580 PCM Machine driverSangbeom Kim2011-04-11
| | | | | | | | | | | | 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>
* Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-04-11
|\
| * ASoC: Fix output PGA enabling in wm_hubs CODECsMark Brown2011-04-11
| | | | | | | | | | | | | | | | | | | | 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
| * ASoC: sn95031: decorate function with __devexit_p()Lu Guanqun2011-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * ASoC: SAMSUNG: Fix the inverted clocks handling for pcm driverSangbeom Kim2011-04-11
| | | | | | | | | | | | | | | | | | | | 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>
| * ASoC: sst_platform: Fix lock acquringLu Guanqun2011-04-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * ASoC: fsi: driver safely remove for against irqKuninori Morimoto2011-04-11
| | | | | | | | | | | | | | | | | | 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>
| * ASoC: fsi: modify vague PM control on probeKuninori Morimoto2011-04-11
| | | | | | | | | | | | 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>
| * ASoC: fsi: take care in failing case of dai registerKuninori Morimoto2011-04-11
| | | | | | | | | | | | 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>
* | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-04-08
|\|
| * MAINTAINERS: Update Samsung ASoC maintainer's idJassi Brar2011-04-08
| | | | | | | | | | | | Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Allow DAPM pin operations to match any contextMark Brown2011-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DAPM pin operations currently require that the specific DAPM context that the pin being operated in is contained in be specified. With multi component and especially with the addition of a per-card DAPM context this isn't ideal as it means that things like disabling unused pins on CODECs require looking up the CODEC DAPM context. Fix this by falling back to matching a widget in any context if there isn't a match in the current context. The code isn't ideal currently but will do the job. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Force all DAPM contexts into the same bias stateMark Brown2011-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently we allow all DAPM contexts to determine their own bias level. While this should in general work in most situations and will deliver the lowest possible power it causes problems for our integration with the card bias level as we're calling the card bias level functions for each DAPM context even though they're card wide but don't say which CODEC we're calling them for. Mitigate against this by forcing everything to be in the same state. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Remove special casing for registerless widgetsMark Brown2011-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | Since we recently explicitly set the register for registerless widgets to no register there is no longer any need to special case power updates for them, we can allow them to be handled with the register compression code as other widgets are. As this is the only remaining user of dapm_generic_apply_power() and dapm_update_bits() also remove those functions. Noticed-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | sst: fix compile errorLu Guanqun2011-04-07
| | | | | | | | | | | | | | | | | | | | | | Add several include files to fix the below compile error. drivers/staging/intel_sst/intelmid.c: In function ‘snd_intelmad_sst_register’: drivers/staging/intel_sst/intelmid.c:805:2: error: ‘sst_drv_ctx’ undeclared (first use in this function) drivers/staging/intel_sst/intelmid.c:805:2: note: each undeclared identifier is reported only once for each function it appears in Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-04-07
|\|
| * ASoC: WM8903: HP and Line out PGA/mixer DAPM fixesDilan Lee2011-04-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the headphone and line out mixers and PGAs use the same logical set of register bits and sequencing as the speaker mixer/PGA. This allows ALSA controls for mute and volume on headphone and line out to operate correctly. Per conversation on alsa-devel, earlier datasheets indicated that the POWER_MANAGEMENT_* register bits 0 and 1 were aliases to ANALOG_* register bits 0 and 4, and hence only one copy of those bits was programmed. However, later datasheets corrected this. From: Dilan Lee <dilee@nvidia.com> [swarren: Applied same change to headphone widgets] Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: SSM2602: add SPI supportMike Frysinger2011-04-07
| | | | | | | | | | | | | | | | The ssm2602 codec has a SPI interface as well as I2C, so add the simple bit of glue to make it usable. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Add data based control initialisation for CODECs and cardsMark Brown2011-04-07
| | | | | | | | | | | | | | Allow CODEC and card drivers to point to an array of controls from their driver structure rather than explicitly calling snd_soc_add_controls(). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-04-06
|\|
| * ASoC: Set left channel volume update bits for WM8994Mark Brown2011-04-06
| | | | | | | | | | | | Ensures that we apply volume updates that don't affect the right channel. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * ASoC: fix config error pathLu Guanqun2011-04-06
| | | | | | | | | | | | | | | | | | | | initialize ret to invalid value so that when we reach the config error path in soc_pcm_open, it will return the correct error code. without this patch, though config error path is executed, soc_pcm_open will return 0 in snd_pcm_open_substream and then cause double release of substream. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * ASoC: check channel mismatch between cpu_dai and codec_daiLu Guanqun2011-04-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suppose we have: cpu_dai channels_min = 1 channels_max = 1 codec_dai channels_min = 2 channels_max = 2 This is a mismatch that should not happen, however according to the current code, the result of runtime->hw will be: channels_min = 2 channels_max = 1 We better spot it early. This patch checks this mismatch. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: sst_platform: unregister sst card when being closedLu Guanqun2011-04-06
| | | | | | | | | | Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | sst: make register_sst_card more self-containedLu Guanqun2011-04-06
| | | | | | | | | | | | | | | | register_sst_card is used in ASoC code with field `scard_ops` being NULL. Without this patch, there will be NULL dereference. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: sst_platform: free the resources on fail pathLu Guanqun2011-04-06
| | | | | | | | | | Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: sst_platform: initialize module_name properlyLu Guanqun2011-04-06
| | | | | | | | | | | | | | | | module_name will be checked in register_sst_card. It will fail to register sst card if it's not initialized. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Add max98095 CODEC driverPeter Hsiang2011-04-06
| | | | | | | | | | | | | | This patch adds the MAX98095 CODEC driver. Signed-off-by: Peter Hsiang <peter.hsiang@maxim-ic.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-04-06
|\|
| * ASoC: Tegra: Suspend/resume supportStephen Warren2011-04-06
| | | | | | | | | | | | | | | | | | | | | | ASoC machine drivers that are their own platform_driver (as opposed to those using the soc-audio platform_driver) need to explicitly set up power-management operation callbacks. To avoid cut/paste, snd_soc_pm_ops also needs to be exported. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-2.6.40' of ↵Takashi Iwai2011-04-05
|\ \ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc
| * | ASoC: Add bias level data to DAPM context debugfsMark Brown2011-04-04
| | | | | | | | | | | | | | | | | | | | | This is also in the old sysfs diagnostics but it's nice to have everything in one place. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Fix comment width in soc-cache.cMark Brown2011-04-04
| | | | | | | | | | | | | | | | | | Lines should be less than 80 columns. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Remove excessively verbose logging on I2C writeMark Brown2011-04-04
| | | | | | | | | | | | | | | | | | We don't need to log every I2C transfer, and certainly not at error level. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Fix to avoid compile errorSeungwhan Youn2011-04-04
| | | | | | | | | | | | | | | | | | | | | | | | This patch fixes to avoid compile error when ASoC codec doesn't use I2C nor SPI on snd_soc_hw_bulk_write_raw(). Signed-off-by: Seungwhan Youn <sw.youn@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-04-03
| |\|
| | * ASoC: format_register_str: Don't clip register valuesStephen Warren2011-04-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wordsize is used as the textual width of a register address. regsize is used as the textual width of a register value. The assignments to these values were swapped. In the case of WM8903, which has 8-bit register addresses and 16-bit register values, this caused the register values to be clipped to 2 digits instead of the full 4. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Properly handle spitz MIC GPIOMarek Vasut2011-04-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch firstly restructurizes the code a bit by getting rid of continuous checking for machine type in spitz_mic_bias(). Then the patch properly requests the MIC GPIO in the spitz_init() and frees it in spitz_exit(). Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Name jack GPIOs based on jack not codecStephen Warren2011-04-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | snd_soc_jack_gpio has a name field. Use that name when registering the IRQ, since this is far more informative than the codec driver name. This shows up in /proc/interrupts. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-04-03
| |\|
| | * Merge branch 'for-2.6.39' of ↵Mark Brown2011-04-03
| | |\ | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into for-2.6.39
| | | * ASoC: PXA: Fix oops in __pxa2xx_pcm_prepareVasily Khoruzhick2011-04-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pxa2xx_pcm_hw_free frees dma channel and sets prtd->dma_ch to -1, but does not set prtd->params to NULL, so if pxa2xx_pcm_hw_params will be called immediately, it leaves prtd->dma_ch initialized with -1, and it results in oops in __pxa2xx_pcm_prepare. This bug is triggered via SDL. This patch adds check for prtd->dma_ch to __pxa2xx_pcm_prepare and cleans prtd->params, so now it works properly. Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * ASoC: zylonite: set .codec_dai_name in initializerAntonio Ospite2011-03-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the initialization of .codec_dai_name in zylonite_dai initializer, do not mix it with the initialization of .codec_name which is set already a few lines above. Signed-off-by: Antonio Ospite <ospite@studenti.unina.it> Acked-by: Eric Miao <eric.y.miao@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | Linux 2.6.39-rc1Linus Torvalds2011-03-29
| | | |
| | * | Merge branch 'for-linus' of ↵Linus Torvalds2011-03-29
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (26 commits) mmc: SDHI should depend on SUPERH || ARCH_SHMOBILE mmc: tmio_mmc: Move some defines into a shared header mmc: tmio: support aggressive clock gating mmc: tmio: fix power-mode interpretation mmc: tmio: remove work-around for unmasked SDIO interrupts sh: fix SDHI IO address-range ARM: mach-shmobile: fix SDHI IO address-range mmc: tmio: only access registers above 0xff, if available mfd: remove now redundant sh_mobile_sdhi.h header sh: convert boards to use linux/mmc/sh_mobile_sdhi.h ARM: mach-shmobile: convert boards to use linux/mmc/sh_mobile_sdhi.h mmc: tmio: convert the SDHI MMC driver from MFD to a platform driver sh: ecovec: use the CONFIG_MMC_TMIO symbols instead of MFD mmc: tmio: split core functionality, DMA and MFD glue mmc: tmio: use PIO for short transfers mmc: tmio-mmc: Improve DMA stability on sh-mobile mmc: fix mmc_app_send_scr() for dma transfer mmc: sdhci-esdhc: enable esdhc on imx53 mmc: sdhci-esdhc: use writel/readl as general APIs mmc: sdhci: add the abort CMDTYPE bits definition ...
| | | * | mmc: SDHI should depend on SUPERH || ARCH_SHMOBILEGuennadi Liakhovetski2011-03-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix build breakage on platforms, not providing readsw and writesw functions, e.g., on x86(_64). Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Chris Ball <cjb@laptop.org>
| | | * | mmc: tmio_mmc: Move some defines into a shared headerSimon Horman2011-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add TMIO_BBS. This allows these defines to also be used by zboot. Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Chris Ball <cjb@laptop.org>
| | | * | mmc: tmio: support aggressive clock gatingGuennadi Liakhovetski2011-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Chris Ball <cjb@laptop.org>