diff options
Diffstat (limited to 'include')
| -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 | 42 | ||||
| -rw-r--r-- | include/sound/sb.h | 1 |
4 files changed, 50 insertions, 2 deletions
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 13bc83ca35fb..8b611a561985 100644 --- a/include/sound/pcm.h +++ b/include/sound/pcm.h | |||
| @@ -915,6 +915,44 @@ int snd_pcm_lib_preallocate_pages_for_all(struct snd_pcm *pcm, | |||
| 915 | 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); |
| 916 | int snd_pcm_lib_free_pages(struct snd_pcm_substream *substream); | 916 | int snd_pcm_lib_free_pages(struct snd_pcm_substream *substream); |
| 917 | 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 | |||
| 918 | #ifdef CONFIG_SND_DMA_SGBUF | 956 | #ifdef CONFIG_SND_DMA_SGBUF |
| 919 | /* | 957 | /* |
| 920 | * SG-buffer handling | 958 | * SG-buffer handling |
| @@ -985,6 +1023,10 @@ int snd_pcm_lib_mmap_iomem(struct snd_pcm_substream *substream, struct vm_area_s | |||
| 985 | #define snd_pcm_lib_mmap_iomem NULL | 1023 | #define snd_pcm_lib_mmap_iomem NULL |
| 986 | #endif | 1024 | #endif |
| 987 | 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 | |||
| 988 | 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) |
| 989 | { | 1031 | { |
| 990 | *max = dma < 4 ? 64 * 1024 : 128 * 1024; | 1032 | *max = dma < 4 ? 64 * 1024 : 128 * 1024; |
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 */ |
