mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-23 01:10:04 +00:00
ALSA: x86: Explicit specify 32bit DMA
LPE audio is capable only up to 32bit address, as it seems. Then we should limit the DMA addresses accordingly via dma-mapping API. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
c1a7c40cff
commit
412bbe7d5b
1 changed files with 6 additions and 2 deletions
|
@ -28,6 +28,7 @@
|
|||
#include <linux/module.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <asm/cacheflush.h>
|
||||
#include <sound/core.h>
|
||||
#include <sound/asoundef.h>
|
||||
|
@ -1825,8 +1826,6 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev)
|
|||
struct resource *res_mmio;
|
||||
int i, ret;
|
||||
|
||||
dev_dbg(&pdev->dev, "dma_mask: %p\n", pdev->dev.dma_mask);
|
||||
|
||||
pdata = pdev->dev.platform_data;
|
||||
if (!pdata) {
|
||||
dev_err(&pdev->dev, "%s: quit: pdata not allocated by i915!!\n", __func__);
|
||||
|
@ -1907,6 +1906,11 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev)
|
|||
/* setup the ops for playabck */
|
||||
snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK,
|
||||
&snd_intelhad_playback_ops);
|
||||
|
||||
/* only 32bit addressable */
|
||||
dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
|
||||
dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
|
||||
|
||||
/* allocate dma pages for ALSA stream operations
|
||||
* memory allocated is based on size, not max value
|
||||
* thus using same argument for max & size
|
||||
|
|
Loading…
Reference in a new issue