diff options
| author | Olof Johansson <olof@lixom.net> | 2013-02-12 15:08:21 -0800 | 
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2013-02-12 15:08:21 -0800 | 
| commit | 2cb6a0708e6680f0b8e6f3ab6b0a46d1c19d8b39 (patch) | |
| tree | b81bc4cc720e6a86498de1edc675e24845e611e0 /sound/soc/fsl/imx-pcm.c | |
| parent | 78d9b8055b9aaf53ced11fc15728df31610a21e9 (diff) | |
| parent | 836dc9e3fbbab0c30aa6e664417225f5c1fb1c39 (diff) | |
| download | olio-linux-3.10-2cb6a0708e6680f0b8e6f3ab6b0a46d1c19d8b39.tar.xz olio-linux-3.10-2cb6a0708e6680f0b8e6f3ab6b0a46d1c19d8b39.zip  | |
Merge tag 'v3.8-rc7' into next/boards
Linux 3.8-rc7
Diffstat (limited to 'sound/soc/fsl/imx-pcm.c')
| -rw-r--r-- | sound/soc/fsl/imx-pcm.c | 35 | 
1 files changed, 35 insertions, 0 deletions
diff --git a/sound/soc/fsl/imx-pcm.c b/sound/soc/fsl/imx-pcm.c index 0c9f188ddc6..0d0625bfcb6 100644 --- a/sound/soc/fsl/imx-pcm.c +++ b/sound/soc/fsl/imx-pcm.c @@ -31,6 +31,7 @@ int snd_imx_pcm_mmap(struct snd_pcm_substream *substream,  			runtime->dma_bytes);  	return ret;  } +EXPORT_SYMBOL_GPL(snd_imx_pcm_mmap);  static int imx_pcm_preallocate_dma_buffer(struct snd_pcm *pcm, int stream)  { @@ -79,6 +80,7 @@ int imx_pcm_new(struct snd_soc_pcm_runtime *rtd)  out:  	return ret;  } +EXPORT_SYMBOL_GPL(imx_pcm_new);  void imx_pcm_free(struct snd_pcm *pcm)  { @@ -100,6 +102,39 @@ void imx_pcm_free(struct snd_pcm *pcm)  		buf->area = NULL;  	}  } +EXPORT_SYMBOL_GPL(imx_pcm_free); + +static int imx_pcm_probe(struct platform_device *pdev) +{ +	if (strcmp(pdev->id_entry->name, "imx-fiq-pcm-audio") == 0) +		return imx_pcm_fiq_init(pdev); + +	return imx_pcm_dma_init(pdev); +} + +static int imx_pcm_remove(struct platform_device *pdev) +{ +	snd_soc_unregister_platform(&pdev->dev); +	return 0; +} + +static struct platform_device_id imx_pcm_devtype[] = { +	{ .name = "imx-pcm-audio", }, +	{ .name = "imx-fiq-pcm-audio", }, +	{ /* sentinel */ } +}; +MODULE_DEVICE_TABLE(platform, imx_pcm_devtype); + +static struct platform_driver imx_pcm_driver = { +	.driver = { +			.name = "imx-pcm", +			.owner = THIS_MODULE, +	}, +	.id_table = imx_pcm_devtype, +	.probe = imx_pcm_probe, +	.remove = imx_pcm_remove, +}; +module_platform_driver(imx_pcm_driver);  MODULE_DESCRIPTION("Freescale i.MX PCM driver");  MODULE_AUTHOR("Sascha Hauer <s.hauer@pengutronix.de>");  |