linux/sound/soc/samsung
Russell King c9bd5e690a DMA-API: sound: fix dma mask handling in a lot of drivers
This code sequence is unsafe in modules:

static u64 mask = DMA_BIT_MASK(something);
...
	if (!dev->dma_mask)
		dev->dma_mask = &mask;

as if a module is reloaded, the mask will be pointing at the original
module's mask address, and this can lead to oopses.  Moreover, they
all follow this with:

	if (!dev->coherent_dma_mask)
		dev->coherent_dma_mask = mask;

where 'mask' is the same value as the statically defined mask, and this
bypasses the architecture's check on whether the DMA mask is possible.

Fix these issues by using the new dma_coerce_coherent_and_mask()
function.

Acked-by: Mark Brown <broonie@linaro.org>
Acked-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2013-10-31 14:48:47 +00:00
..
ac97.c ASoC: samsung: Rename DMA platform registration functions 2013-08-20 10:36:33 +01:00
bells.c ASoC: bells: Hookup DMICs for Bells 2013-05-27 08:05:19 -04:00
dma.c DMA-API: sound: fix dma mask handling in a lot of drivers 2013-10-31 14:48:47 +00:00
dma.h ASoC: samsung: Rename DMA platform registration functions 2013-08-20 10:36:33 +01:00
goni_wm8994.c ASoC: switch over to use snd_soc_register_component() on goni_wm8994 2013-03-26 21:57:42 +00:00
h1940_uda1380.c ASoC: samsung: move plat/ headers to local directory 2013-04-11 18:17:38 +01:00
i2s-regs.h ASoC: Samsung: I2S: Modify the I2S driver to support I2S on Exynos5420 2013-08-13 13:44:09 +01:00
i2s.c Merge remote-tracking branch 'asoc/topic/samsung' into asoc-next 2013-08-22 14:28:49 +01:00
i2s.h ASoC: samsung: Rename samsung i2s secondary device name 2013-01-24 14:40:13 +08:00
idma.c DMA-API: sound: fix dma mask handling in a lot of drivers 2013-10-31 14:48:47 +00:00
idma.h ASoC: Fix __iomem annotation for IDMA registers 2011-11-29 17:28:16 +00:00
jive_wm8750.c ASoC: Samsung: Do not register samsung audio dma device as pdev 2012-12-07 19:36:07 +09:00
Kconfig Remove GENERIC_HARDIRQ config option 2013-09-13 15:09:52 +02:00
littlemill.c ASoC: Samsung: remove __dev* attributes 2012-12-10 00:30:19 +09:00
ln2440sbc_alc650.c ASoC: Samsung: Do not register samsung audio dma device as pdev 2012-12-07 19:36:07 +09:00
lowland.c ASoC: Samsung: remove __dev* attributes 2012-12-10 00:30:19 +09:00
Makefile ASoC: bells: Add machine driver for Wolfson Bells boards 2012-08-09 19:34:30 +01:00
neo1973_wm8753.c ASoC: dfbmcs320: make the driver common for other BT modules 2013-05-21 13:17:08 -05:00
pcm.c ASoC: samsung: Fix build error with dma function rename 2013-08-22 14:28:00 +01:00
pcm.h
regs-ac97.h ASoC: samsung: move plat/ headers to local directory 2013-04-11 18:17:38 +01:00
regs-i2s-v2.h
regs-iis.h ASoC: samsung: move plat/ headers to local directory 2013-04-11 18:17:38 +01:00
rx1950_uda1380.c ASoC: samsung: move plat/ headers to local directory 2013-04-11 18:17:38 +01:00
s3c24xx_simtec_hermes.c ASoC: Samsung: remove __dev* attributes 2012-12-10 00:30:19 +09:00
s3c24xx_simtec_tlv320aic23.c ASoC: Samsung: remove __dev* attributes 2012-12-10 00:30:19 +09:00
s3c24xx_simtec.c ASoC: Samsung: remove __dev* attributes 2012-12-10 00:30:19 +09:00
s3c24xx_simtec.h
s3c24xx_uda134x.c ASoC: samsung: move plat/ headers to local directory 2013-04-11 18:17:38 +01:00
s3c24xx-i2s.c ASoC: samsung: Fix build error with dma function rename 2013-08-22 14:28:00 +01:00
s3c24xx-i2s.h
s3c2412-i2s.c ASoC: samsung: Fix build error with dma function rename 2013-08-22 14:28:00 +01:00
s3c2412-i2s.h
s3c-i2s-v2.c ASoC: Samsung: Remove redundant comment 2013-07-04 13:51:14 +01:00
s3c-i2s-v2.h ASoC: switch over to use snd_soc_register_component() on s3c i2s 2013-03-26 21:57:31 +00:00
smartq_wm8987.c ASoC: Samsung: Do not register samsung audio dma device as pdev 2012-12-07 19:36:07 +09:00
smdk2443_wm9710.c ASoC: Samsung: Do not register samsung audio dma device as pdev 2012-12-07 19:36:07 +09:00
smdk_spdif.c ASoC: Samsung: Do not register samsung audio dma device as pdev 2012-12-07 19:36:07 +09:00
smdk_wm8580.c ASoC: samsung: Rename samsung i2s secondary device name 2013-01-24 14:40:13 +08:00
smdk_wm8580pcm.c ASoC: Samsung: Remove redundant platform_set_drvdata() 2013-05-12 20:49:13 +04:00
smdk_wm8994.c ASoC: smdk_wm8994: Configure the MCLK1 rate based on the board 2013-07-29 18:34:29 +01:00
smdk_wm8994pcm.c ASoC: Samsung: Remove redundant platform_set_drvdata() 2013-05-12 20:49:13 +04:00
smdk_wm9713.c ASoC: Samsung: Do not register samsung audio dma device as pdev 2012-12-07 19:36:07 +09:00
spdif.c ASoC: samsung: Fix build error with dma function rename 2013-08-22 14:28:00 +01:00
spdif.h
speyside.c ASoC: Samsung: remove __dev* attributes 2012-12-10 00:30:19 +09:00
tobermory.c ASoC: Samsung: remove __dev* attributes 2012-12-10 00:30:19 +09:00