diff options
Diffstat (limited to 'include/sound')
-rw-r--r-- | include/sound/asound.h | 2 | ||||
-rw-r--r-- | include/sound/core.h | 3 | ||||
-rw-r--r-- | include/sound/cs46xx_dsp_spos.h | 6 | ||||
-rw-r--r-- | include/sound/pcm.h | 54 | ||||
-rw-r--r-- | include/sound/pcm_oss.h | 2 | ||||
-rw-r--r-- | include/sound/sb.h | 1 | ||||
-rw-r--r-- | include/sound/version.h | 2 |
7 files changed, 64 insertions, 6 deletions
diff --git a/include/sound/asound.h b/include/sound/asound.h index 1f57bb92eb5a..098595500632 100644 --- a/include/sound/asound.h +++ b/include/sound/asound.h | |||
@@ -544,7 +544,7 @@ struct snd_rawmidi_status { | |||
544 | * Timer section - /dev/snd/timer | 544 | * Timer section - /dev/snd/timer |
545 | */ | 545 | */ |
546 | 546 | ||
547 | #define SNDRV_TIMER_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 5) | 547 | #define SNDRV_TIMER_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 6) |
548 | 548 | ||
549 | enum { | 549 | enum { |
550 | SNDRV_TIMER_CLASS_NONE = -1, | 550 | SNDRV_TIMER_CLASS_NONE = -1, |
diff --git a/include/sound/core.h b/include/sound/core.h index a61499c22b0b..89e0ac17f44a 100644 --- a/include/sound/core.h +++ b/include/sound/core.h | |||
@@ -458,5 +458,8 @@ struct snd_pci_quirk { | |||
458 | const struct snd_pci_quirk * | 458 | const struct snd_pci_quirk * |
459 | snd_pci_quirk_lookup(struct pci_dev *pci, const struct snd_pci_quirk *list); | 459 | snd_pci_quirk_lookup(struct pci_dev *pci, const struct snd_pci_quirk *list); |
460 | 460 | ||
461 | const struct snd_pci_quirk * | ||
462 | snd_pci_quirk_lookup_id(u16 vendor, u16 device, | ||
463 | const struct snd_pci_quirk *list); | ||
461 | 464 | ||
462 | #endif /* __SOUND_CORE_H */ | 465 | #endif /* __SOUND_CORE_H */ |
diff --git a/include/sound/cs46xx_dsp_spos.h b/include/sound/cs46xx_dsp_spos.h index 7c44667e79a6..49b03c9e5e55 100644 --- a/include/sound/cs46xx_dsp_spos.h +++ b/include/sound/cs46xx_dsp_spos.h | |||
@@ -118,9 +118,11 @@ struct dsp_scb_descriptor { | |||
118 | 118 | ||
119 | struct snd_info_entry *proc_info; | 119 | struct snd_info_entry *proc_info; |
120 | int ref_count; | 120 | int ref_count; |
121 | spinlock_t lock; | ||
122 | 121 | ||
123 | int deleted; | 122 | u16 volume[2]; |
123 | unsigned int deleted :1; | ||
124 | unsigned int updated :1; | ||
125 | unsigned int volume_set :1; | ||
124 | }; | 126 | }; |
125 | 127 | ||
126 | struct dsp_task_descriptor { | 128 | struct dsp_task_descriptor { |
diff --git a/include/sound/pcm.h b/include/sound/pcm.h index c83a4a79f16b..8b611a561985 100644 --- a/include/sound/pcm.h +++ b/include/sound/pcm.h | |||
@@ -262,6 +262,8 @@ struct snd_pcm_hw_constraint_list { | |||
262 | unsigned int mask; | 262 | unsigned int mask; |
263 | }; | 263 | }; |
264 | 264 | ||
265 | struct snd_pcm_hwptr_log; | ||
266 | |||
265 | struct snd_pcm_runtime { | 267 | struct snd_pcm_runtime { |
266 | /* -- Status -- */ | 268 | /* -- Status -- */ |
267 | struct snd_pcm_substream *trigger_master; | 269 | struct snd_pcm_substream *trigger_master; |
@@ -310,7 +312,9 @@ struct snd_pcm_runtime { | |||
310 | struct snd_pcm_mmap_control *control; | 312 | struct snd_pcm_mmap_control *control; |
311 | 313 | ||
312 | /* -- locking / scheduling -- */ | 314 | /* -- locking / scheduling -- */ |
313 | wait_queue_head_t sleep; | 315 | unsigned int twake: 1; /* do transfer (!poll) wakeup */ |
316 | wait_queue_head_t sleep; /* poll sleep */ | ||
317 | wait_queue_head_t tsleep; /* transfer sleep */ | ||
314 | struct fasync_struct *fasync; | 318 | struct fasync_struct *fasync; |
315 | 319 | ||
316 | /* -- private section -- */ | 320 | /* -- private section -- */ |
@@ -340,6 +344,10 @@ struct snd_pcm_runtime { | |||
340 | /* -- OSS things -- */ | 344 | /* -- OSS things -- */ |
341 | struct snd_pcm_oss_runtime oss; | 345 | struct snd_pcm_oss_runtime oss; |
342 | #endif | 346 | #endif |
347 | |||
348 | #ifdef CONFIG_SND_PCM_XRUN_DEBUG | ||
349 | struct snd_pcm_hwptr_log *hwptr_log; | ||
350 | #endif | ||
343 | }; | 351 | }; |
344 | 352 | ||
345 | struct snd_pcm_group { /* keep linked substreams */ | 353 | struct snd_pcm_group { /* keep linked substreams */ |
@@ -834,6 +842,8 @@ void snd_pcm_set_sync(struct snd_pcm_substream *substream); | |||
834 | int snd_pcm_lib_interleave_len(struct snd_pcm_substream *substream); | 842 | int snd_pcm_lib_interleave_len(struct snd_pcm_substream *substream); |
835 | int snd_pcm_lib_ioctl(struct snd_pcm_substream *substream, | 843 | int snd_pcm_lib_ioctl(struct snd_pcm_substream *substream, |
836 | unsigned int cmd, void *arg); | 844 | unsigned int cmd, void *arg); |
845 | int snd_pcm_update_state(struct snd_pcm_substream *substream, | ||
846 | struct snd_pcm_runtime *runtime); | ||
837 | int snd_pcm_update_hw_ptr(struct snd_pcm_substream *substream); | 847 | int snd_pcm_update_hw_ptr(struct snd_pcm_substream *substream); |
838 | int snd_pcm_playback_xrun_check(struct snd_pcm_substream *substream); | 848 | int snd_pcm_playback_xrun_check(struct snd_pcm_substream *substream); |
839 | int snd_pcm_capture_xrun_check(struct snd_pcm_substream *substream); | 849 | int snd_pcm_capture_xrun_check(struct snd_pcm_substream *substream); |
@@ -905,6 +915,44 @@ int snd_pcm_lib_preallocate_pages_for_all(struct snd_pcm *pcm, | |||
905 | int snd_pcm_lib_malloc_pages(struct snd_pcm_substream *substream, size_t size); | 915 | int snd_pcm_lib_malloc_pages(struct snd_pcm_substream *substream, size_t size); |
906 | int snd_pcm_lib_free_pages(struct snd_pcm_substream *substream); | 916 | int snd_pcm_lib_free_pages(struct snd_pcm_substream *substream); |
907 | 917 | ||
918 | int _snd_pcm_lib_alloc_vmalloc_buffer(struct snd_pcm_substream *substream, | ||
919 | size_t size, gfp_t gfp_flags); | ||
920 | int snd_pcm_lib_free_vmalloc_buffer(struct snd_pcm_substream *substream); | ||
921 | struct page *snd_pcm_lib_get_vmalloc_page(struct snd_pcm_substream *substream, | ||
922 | unsigned long offset); | ||
923 | #if 0 /* for kernel-doc */ | ||
924 | /** | ||
925 | * snd_pcm_lib_alloc_vmalloc_buffer - allocate virtual DMA buffer | ||
926 | * @substream: the substream to allocate the buffer to | ||
927 | * @size: the requested buffer size, in bytes | ||
928 | * | ||
929 | * Allocates the PCM substream buffer using vmalloc(), i.e., the memory is | ||
930 | * contiguous in kernel virtual space, but not in physical memory. Use this | ||
931 | * if the buffer is accessed by kernel code but not by device DMA. | ||
932 | * | ||
933 | * Returns 1 if the buffer was changed, 0 if not changed, or a negative error | ||
934 | * code. | ||
935 | */ | ||
936 | static int snd_pcm_lib_alloc_vmalloc_buffer | ||
937 | (struct snd_pcm_substream *substream, size_t size); | ||
938 | /** | ||
939 | * snd_pcm_lib_alloc_vmalloc_32_buffer - allocate 32-bit-addressable buffer | ||
940 | * @substream: the substream to allocate the buffer to | ||
941 | * @size: the requested buffer size, in bytes | ||
942 | * | ||
943 | * This function works like snd_pcm_lib_alloc_vmalloc_buffer(), but uses | ||
944 | * vmalloc_32(), i.e., the pages are allocated from 32-bit-addressable memory. | ||
945 | */ | ||
946 | static int snd_pcm_lib_alloc_vmalloc_32_buffer | ||
947 | (struct snd_pcm_substream *substream, size_t size); | ||
948 | #endif | ||
949 | #define snd_pcm_lib_alloc_vmalloc_buffer(subs, size) \ | ||
950 | _snd_pcm_lib_alloc_vmalloc_buffer \ | ||
951 | (subs, size, GFP_KERNEL | __GFP_HIGHMEM | __GFP_ZERO) | ||
952 | #define snd_pcm_lib_alloc_vmalloc_32_buffer(subs, size) \ | ||
953 | _snd_pcm_lib_alloc_vmalloc_buffer \ | ||
954 | (subs, size, GFP_KERNEL | GFP_DMA32 | __GFP_ZERO) | ||
955 | |||
908 | #ifdef CONFIG_SND_DMA_SGBUF | 956 | #ifdef CONFIG_SND_DMA_SGBUF |
909 | /* | 957 | /* |
910 | * SG-buffer handling | 958 | * SG-buffer handling |
@@ -975,6 +1023,10 @@ int snd_pcm_lib_mmap_iomem(struct snd_pcm_substream *substream, struct vm_area_s | |||
975 | #define snd_pcm_lib_mmap_iomem NULL | 1023 | #define snd_pcm_lib_mmap_iomem NULL |
976 | #endif | 1024 | #endif |
977 | 1025 | ||
1026 | int snd_pcm_lib_mmap_noncached(struct snd_pcm_substream *substream, | ||
1027 | struct vm_area_struct *area); | ||
1028 | #define snd_pcm_lib_mmap_vmalloc snd_pcm_lib_mmap_noncached | ||
1029 | |||
978 | static inline void snd_pcm_limit_isa_dma_size(int dma, size_t *max) | 1030 | static inline void snd_pcm_limit_isa_dma_size(int dma, size_t *max) |
979 | { | 1031 | { |
980 | *max = dma < 4 ? 64 * 1024 : 128 * 1024; | 1032 | *max = dma < 4 ? 64 * 1024 : 128 * 1024; |
diff --git a/include/sound/pcm_oss.h b/include/sound/pcm_oss.h index cc4e226f35fd..760c969d885d 100644 --- a/include/sound/pcm_oss.h +++ b/include/sound/pcm_oss.h | |||
@@ -61,7 +61,7 @@ struct snd_pcm_oss_runtime { | |||
61 | struct snd_pcm_plugin *plugin_first; | 61 | struct snd_pcm_plugin *plugin_first; |
62 | struct snd_pcm_plugin *plugin_last; | 62 | struct snd_pcm_plugin *plugin_last; |
63 | #endif | 63 | #endif |
64 | unsigned int prev_hw_ptr_interrupt; | 64 | unsigned int prev_hw_ptr_period; |
65 | }; | 65 | }; |
66 | 66 | ||
67 | struct snd_pcm_oss_file { | 67 | struct snd_pcm_oss_file { |
diff --git a/include/sound/sb.h b/include/sound/sb.h index 4e62ee1e4115..95353542256a 100644 --- a/include/sound/sb.h +++ b/include/sound/sb.h | |||
@@ -33,6 +33,7 @@ enum sb_hw_type { | |||
33 | SB_HW_20, | 33 | SB_HW_20, |
34 | SB_HW_201, | 34 | SB_HW_201, |
35 | SB_HW_PRO, | 35 | SB_HW_PRO, |
36 | SB_HW_JAZZ16, /* Media Vision Jazz16 */ | ||
36 | SB_HW_16, | 37 | SB_HW_16, |
37 | SB_HW_16CSP, /* SB16 with CSP chip */ | 38 | SB_HW_16CSP, /* SB16 with CSP chip */ |
38 | SB_HW_ALS100, /* Avance Logic ALS100 chip */ | 39 | SB_HW_ALS100, /* Avance Logic ALS100 chip */ |
diff --git a/include/sound/version.h b/include/sound/version.h index 22939142dd23..7fed23442db8 100644 --- a/include/sound/version.h +++ b/include/sound/version.h | |||
@@ -1,3 +1,3 @@ | |||
1 | /* include/version.h */ | 1 | /* include/version.h */ |
2 | #define CONFIG_SND_VERSION "1.0.21" | 2 | #define CONFIG_SND_VERSION "1.0.22.1" |
3 | #define CONFIG_SND_DATE "" | 3 | #define CONFIG_SND_DATE "" |