diff options
author | Takashi Iwai <tiwai@suse.de> | 2010-01-18 08:58:57 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2010-01-18 09:00:34 -0500 |
commit | c32d977b8157bf67cdf47729ce7dd054a26eb534 (patch) | |
tree | fedbd1c0d4382e88362abf81f719e6f127e19fa7 /sound/usb | |
parent | 3e879d7bac705be4813a0ec9560cbe31db4b269f (diff) |
ALSA: pcm - Call pgprot_noncached() for vmalloc'ed buffers
pgprot_noncached() can be set for vmalloc'ed buffers safely, and we'd
need non-cached behavior more or less, even for the intermediate ring-
buffers.
Now snd_pcm_lib_mmap_vmalloc() is added as the common PCM mmap callback
that is coupled with snd_pcm_lib_alloc_vmalloc_buffer() & co.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb')
-rw-r--r-- | sound/usb/ua101.c | 2 | ||||
-rw-r--r-- | sound/usb/usbaudio.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/sound/usb/ua101.c b/sound/usb/ua101.c index 16dc7bd5e120..4f4ccdf70dd0 100644 --- a/sound/usb/ua101.c +++ b/sound/usb/ua101.c | |||
@@ -911,6 +911,7 @@ static struct snd_pcm_ops capture_pcm_ops = { | |||
911 | .trigger = capture_pcm_trigger, | 911 | .trigger = capture_pcm_trigger, |
912 | .pointer = capture_pcm_pointer, | 912 | .pointer = capture_pcm_pointer, |
913 | .page = snd_pcm_lib_get_vmalloc_page, | 913 | .page = snd_pcm_lib_get_vmalloc_page, |
914 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
914 | }; | 915 | }; |
915 | 916 | ||
916 | static struct snd_pcm_ops playback_pcm_ops = { | 917 | static struct snd_pcm_ops playback_pcm_ops = { |
@@ -923,6 +924,7 @@ static struct snd_pcm_ops playback_pcm_ops = { | |||
923 | .trigger = playback_pcm_trigger, | 924 | .trigger = playback_pcm_trigger, |
924 | .pointer = playback_pcm_pointer, | 925 | .pointer = playback_pcm_pointer, |
925 | .page = snd_pcm_lib_get_vmalloc_page, | 926 | .page = snd_pcm_lib_get_vmalloc_page, |
927 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
926 | }; | 928 | }; |
927 | 929 | ||
928 | static const struct uac_format_type_i_discrete_descriptor * | 930 | static const struct uac_format_type_i_discrete_descriptor * |
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c index 4ada98e16309..b8e0b8fda607 100644 --- a/sound/usb/usbaudio.c +++ b/sound/usb/usbaudio.c | |||
@@ -1997,6 +1997,7 @@ static struct snd_pcm_ops snd_usb_playback_ops = { | |||
1997 | .trigger = snd_usb_pcm_playback_trigger, | 1997 | .trigger = snd_usb_pcm_playback_trigger, |
1998 | .pointer = snd_usb_pcm_pointer, | 1998 | .pointer = snd_usb_pcm_pointer, |
1999 | .page = snd_pcm_lib_get_vmalloc_page, | 1999 | .page = snd_pcm_lib_get_vmalloc_page, |
2000 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
2000 | }; | 2001 | }; |
2001 | 2002 | ||
2002 | static struct snd_pcm_ops snd_usb_capture_ops = { | 2003 | static struct snd_pcm_ops snd_usb_capture_ops = { |
@@ -2009,6 +2010,7 @@ static struct snd_pcm_ops snd_usb_capture_ops = { | |||
2009 | .trigger = snd_usb_pcm_capture_trigger, | 2010 | .trigger = snd_usb_pcm_capture_trigger, |
2010 | .pointer = snd_usb_pcm_pointer, | 2011 | .pointer = snd_usb_pcm_pointer, |
2011 | .page = snd_pcm_lib_get_vmalloc_page, | 2012 | .page = snd_pcm_lib_get_vmalloc_page, |
2013 | .mmap = snd_pcm_lib_mmap_vmalloc, | ||
2012 | }; | 2014 | }; |
2013 | 2015 | ||
2014 | 2016 | ||