diff options
author | Takashi Iwai <tiwai@suse.de> | 2014-02-14 10:53:57 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2014-02-14 10:53:57 +0100 |
commit | 83ac7c11abd5c5ce134f9944eb8737743138b24a (patch) | |
tree | 9666e16e85d81da15f5d547dabe480dfeb323471 | |
parent | fdc19212371684782577e14810a1e97c5eedf8cd (diff) | |
download | alsa-driver-build-unstable-83ac7c11abd5c5ce134f9944eb8737743138b24a.tar.gz |
Refresh patches
Mostly for adjusting snd_card_new() changes.
The CONFIG_SYSFS_DEPRECATED ifdefs are dropped as well.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | alsa/acore/info.patch | 22 | ||||
-rw-r--r-- | alsa/acore/init.patch | 101 | ||||
-rw-r--r-- | alsa/acore/memalloc.patch | 28 | ||||
-rw-r--r-- | alsa/acore/pcm.patch | 12 | ||||
-rw-r--r-- | alsa/acore/pcm_native.patch | 54 | ||||
-rw-r--r-- | alsa/acore/sound.patch | 6 | ||||
-rw-r--r-- | alsa/drivers/pcsp/pcsp.patch | 8 | ||||
-rw-r--r-- | alsa/include/sound/core.patch | 40 | ||||
-rw-r--r-- | alsa/include/sound/pcm.patch | 28 | ||||
-rw-r--r-- | alsa/pci/hda/hda_beep.patch | 12 | ||||
-rw-r--r-- | alsa/pci/hda/hda_intel.patch | 38 | ||||
-rw-r--r-- | alsa/pci/via82xx.patch | 18 | ||||
-rw-r--r-- | alsa/usb/usx2y/usbusx2y.patch | 12 | ||||
-rw-r--r-- | alsa/usb/usx2y/usx2yhwdeppcm.patch | 6 |
14 files changed, 135 insertions, 250 deletions
diff --git a/alsa/acore/info.patch b/alsa/acore/info.patch index d983bf3c2..2cb0f2f52 100644 --- a/alsa/acore/info.patch +++ b/alsa/acore/info.patch @@ -1,5 +1,5 @@ ---- ../alsa-kernel/core/info.c 2013-05-13 10:01:02.042914933 +0200 -+++ info.c 2013-05-13 10:18:58.422914805 +0200 +--- ../alsa-kernel/core/info.c 2014-02-14 08:10:32.317887679 +0100 ++++ info.c 2014-02-14 10:32:00.169618030 +0100 @@ -1,3 +1,7 @@ +#define __NO_VERSION__ +#include "adriver.h" @@ -54,7 +54,7 @@ static loff_t snd_info_entry_llseek(struct file *file, loff_t offset, int orig) { struct snd_info_private_data *data; -@@ -485,9 +516,28 @@ +@@ -490,9 +521,28 @@ return -ENOTTY; } @@ -83,7 +83,7 @@ struct snd_info_private_data *data; struct snd_info_entry *entry; -@@ -513,7 +563,11 @@ +@@ -518,7 +568,11 @@ .read = snd_info_entry_read, .write = snd_info_entry_write, .poll = snd_info_entry_poll, @@ -95,7 +95,7 @@ .mmap = snd_info_entry_mmap, .open = snd_info_entry_open, .release = snd_info_entry_release, -@@ -573,7 +627,11 @@ +@@ -578,7 +632,11 @@ #ifdef CONFIG_SND_OSSEMUL snd_info_free_entry(snd_oss_root); #endif @@ -107,7 +107,7 @@ } return 0; } -@@ -635,7 +693,11 @@ +@@ -640,7 +698,11 @@ { mutex_lock(&info_mutex); if (card->proc_root_link) { @@ -119,7 +119,7 @@ card->proc_root_link = NULL; } if (strcmp(card->id, card->proc_root->name)) -@@ -654,7 +716,11 @@ +@@ -659,7 +721,11 @@ if (!card) return; mutex_lock(&info_mutex); @@ -131,7 +131,7 @@ card->proc_root_link = NULL; if (card->proc_root) snd_info_disconnect(card->proc_root); -@@ -842,7 +908,11 @@ +@@ -847,7 +913,11 @@ list_del_init(&entry->list); root = entry->parent == NULL ? snd_proc_root : entry->parent->p; snd_BUG_ON(!root); @@ -143,7 +143,7 @@ entry->p = NULL; } -@@ -943,6 +1013,17 @@ +@@ -948,6 +1018,17 @@ return -ENXIO; root = entry->parent == NULL ? snd_proc_root : entry->parent->p; mutex_lock(&info_mutex); @@ -161,7 +161,7 @@ if (S_ISDIR(entry->mode)) { p = proc_mkdir_mode(entry->name, entry->mode, root); if (!p) { -@@ -958,6 +1039,7 @@ +@@ -963,6 +1044,7 @@ } proc_set_size(p, entry->size); } @@ -169,7 +169,7 @@ entry->p = p; if (entry->parent) list_add_tail(&entry->list, &entry->parent->children); -@@ -975,9 +1057,20 @@ +@@ -980,9 +1062,20 @@ static void snd_info_version_read(struct snd_info_entry *entry, struct snd_info_buffer *buffer) { diff --git a/alsa/acore/init.patch b/alsa/acore/init.patch index 3d7c90f16..d73e460ce 100644 --- a/alsa/acore/init.patch +++ b/alsa/acore/init.patch @@ -1,12 +1,12 @@ ---- ../alsa-kernel/core/init.c 2012-04-05 17:55:31.000000000 +0200 -+++ init.c 2012-07-19 14:04:35.000000000 +0200 +--- ../alsa-kernel/core/init.c 2014-02-14 10:29:56.461067921 +0100 ++++ init.c 2014-02-14 10:35:47.863521502 +0100 @@ -1,3 +1,5 @@ +#define __NO_VERSION__ +#include "adriver.h" /* * Initialization routines * Copyright (c) by Jaroslav Kysela <perex@perex.cz> -@@ -298,11 +300,19 @@ +@@ -329,11 +331,19 @@ return POLLERR | POLLNVAL; } @@ -26,7 +26,7 @@ static int snd_disconnect_mmap(struct file *file, struct vm_area_struct *vma) { -@@ -322,10 +332,14 @@ +@@ -353,10 +363,14 @@ .write = snd_disconnect_write, .release = snd_disconnect_release, .poll = snd_disconnect_poll, @@ -41,96 +41,3 @@ .mmap = snd_disconnect_mmap, .fasync = snd_disconnect_fasync }; -@@ -394,10 +408,12 @@ - snd_printk(KERN_ERR "not all devices for card %i can be disconnected\n", card->number); - - snd_info_card_disconnect(card); -+#ifndef CONFIG_SYSFS_DEPRECATED - if (card->card_dev) { - device_unregister(card->card_dev); - card->card_dev = NULL; - } -+#endif - #ifdef CONFIG_PM - wake_up(&card->power_sleep); - #endif -@@ -600,6 +616,7 @@ - } - EXPORT_SYMBOL(snd_card_set_id); - -+#ifndef CONFIG_SYSFS_DEPRECATED - static ssize_t - card_id_show_attr(struct device *dev, - struct device_attribute *attr, char *buf) -@@ -651,6 +668,7 @@ - - static struct device_attribute card_number_attrs = - __ATTR(number, S_IRUGO, card_number_show_attr, NULL); -+#endif /* CONFIG_SYSFS_DEPRECATED */ - - /** - * snd_card_register - register the soundcard -@@ -669,15 +687,27 @@ - - if (snd_BUG_ON(!card)) - return -EINVAL; -- -+#ifndef CONFIG_SYSFS_DEPRECATED - if (!card->card_dev) { -+#ifdef CONFIG_SND_HAS_DEVICE_CREATE_DRVDATA -+ card->card_dev = device_create_drvdata(sound_class, card->dev, -+ MKDEV(0, 0), card, -+ "card%i", card->number); -+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) - card->card_dev = device_create(sound_class, card->dev, - MKDEV(0, 0), card, - "card%i", card->number); -+#else -+ card->card_dev = device_create(sound_class, card->dev, -+ MKDEV(0, 0), -+ "card%i", card->number); -+ if (card->card_dev && !IS_ERR(card->card_dev)) -+ dev_set_drvdata(card->card_dev, card); -+#endif - if (IS_ERR(card->card_dev)) - card->card_dev = NULL; - } -- -+#endif - if ((err = snd_device_register_all(card)) < 0) - return err; - mutex_lock(&snd_card_mutex); -@@ -705,6 +735,7 @@ - if (snd_mixer_oss_notify_callback) - snd_mixer_oss_notify_callback(card, SND_MIXER_OSS_NOTIFY_REGISTER); - #endif -+#ifndef CONFIG_SYSFS_DEPRECATED - if (card->card_dev) { - err = device_create_file(card->card_dev, &card_id_attrs); - if (err < 0) -@@ -713,7 +744,7 @@ - if (err < 0) - return err; - } -- -+#endif - return 0; - } - -@@ -979,3 +1010,16 @@ - - EXPORT_SYMBOL(snd_power_wait); - #endif /* CONFIG_PM */ -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 30) -+/* just for old ABI compatibility */ -+struct snd_card *snd_card_new(int idx, const char *id, -+ struct module *module, int extra_size) -+{ -+ struct snd_card *card; -+ if (snd_card_create(idx, id, module, extra_size, &card) < 0) -+ return NULL; -+ return card; -+} -+EXPORT_SYMBOL(snd_card_new); -+#endif diff --git a/alsa/acore/memalloc.patch b/alsa/acore/memalloc.patch index e1aef9ce9..2837bf0e9 100644 --- a/alsa/acore/memalloc.patch +++ b/alsa/acore/memalloc.patch @@ -1,12 +1,12 @@ ---- ../alsa-kernel/core/memalloc.c 2014-01-08 16:20:14.751778402 +0100 -+++ memalloc.c 2014-01-08 16:25:14.024853133 +0100 +--- ../alsa-kernel/core/memalloc.c 2014-02-14 08:10:32.318887692 +0100 ++++ memalloc.c 2014-02-14 10:46:42.307855817 +0100 @@ -1,3 +1,4 @@ +#include "memalloc.inc" /* * Copyright (c) by Jaroslav Kysela <perex@perex.cz> * Takashi Iwai <tiwai@suse.de> -@@ -42,11 +43,131 @@ - +@@ -28,11 +29,131 @@ + #include <sound/memalloc.h> /* + * Hacks @@ -137,7 +137,7 @@ /** * snd_malloc_pages - allocate pages with the given size * @size: the size to allocate in bytes -@@ -59,6 +180,7 @@ +@@ -45,6 +166,7 @@ void *snd_malloc_pages(size_t size, gfp_t gfp_flags) { int pg; @@ -145,7 +145,7 @@ if (WARN_ON(!size)) return NULL; -@@ -66,7 +188,9 @@ +@@ -52,7 +174,9 @@ return NULL; gfp_flags |= __GFP_COMP; /* compound page lets parts be mapped */ pg = get_order(size); @@ -156,7 +156,7 @@ } /** -@@ -83,6 +207,7 @@ +@@ -69,6 +193,7 @@ if (ptr == NULL) return; pg = get_order(size); @@ -164,7 +164,7 @@ free_pages((unsigned long) ptr, pg); } -@@ -96,6 +221,7 @@ +@@ -82,6 +207,7 @@ /* allocate the coherent DMA pages */ static void *snd_malloc_dev_pages(struct device *dev, size_t size, dma_addr_t *dma) { @@ -172,7 +172,7 @@ int pg; gfp_t gfp_flags; -@@ -106,7 +232,11 @@ +@@ -92,7 +218,11 @@ | __GFP_COMP /* compound page lets parts be mapped */ | __GFP_NORETRY /* don't trigger OOM-killer */ | __GFP_NOWARN; /* no stack trace print - this call is non-critical */ @@ -185,7 +185,7 @@ } /* free the coherent DMA pages */ -@@ -118,6 +248,7 @@ +@@ -104,6 +234,7 @@ if (ptr == NULL) return; pg = get_order(size); @@ -193,7 +193,7 @@ dma_free_coherent(dev, PAGE_SIZE << pg, ptr, dma); } -@@ -137,6 +268,7 @@ +@@ -123,6 +254,7 @@ dmab->area = NULL; dmab->addr = 0; @@ -201,7 +201,7 @@ if (dev->of_node) pool = of_get_named_gen_pool(dev->of_node, "iram", 0); -@@ -147,6 +279,7 @@ +@@ -133,6 +265,7 @@ dmab->private_data = pool; dmab->area = gen_pool_dma_alloc(pool, size, &dmab->addr); @@ -209,7 +209,7 @@ } /** -@@ -155,10 +288,12 @@ +@@ -141,10 +274,12 @@ */ static void snd_free_dev_iram(struct snd_dma_buffer *dmab) { @@ -222,7 +222,7 @@ } #endif /* CONFIG_GENERIC_ALLOCATOR */ #endif /* CONFIG_HAS_DMA */ -@@ -311,3 +446,5 @@ +@@ -297,3 +432,5 @@ EXPORT_SYMBOL(snd_malloc_pages); EXPORT_SYMBOL(snd_free_pages); diff --git a/alsa/acore/pcm.patch b/alsa/acore/pcm.patch index 84058ee3c..262a3b8a4 100644 --- a/alsa/acore/pcm.patch +++ b/alsa/acore/pcm.patch @@ -1,11 +1,11 @@ ---- ../alsa-kernel/core/pcm.c 2009-11-10 18:21:52.000000000 +0100 -+++ pcm.c 2009-12-15 22:17:50.000000000 +0100 +--- ../alsa-kernel/core/pcm.c 2014-02-14 08:10:32.319887704 +0100 ++++ pcm.c 2014-02-14 10:32:00.189618285 +0100 @@ -1,3 +1,4 @@ +#include "adriver.h" /* * Digital Audio (PCM) abstract layer * Copyright (c) by Jaroslav Kysela <perex@perex.cz> -@@ -928,8 +929,12 @@ +@@ -998,8 +999,12 @@ substream->pstr->substream_opened--; } @@ -18,7 +18,7 @@ { struct snd_pcm *pcm; const char *str; -@@ -940,7 +945,11 @@ +@@ -1010,7 +1015,11 @@ [SNDRV_PCM_CLASS_DIGITIZER] = "digitizer", }; @@ -30,7 +30,7 @@ pcm->dev_class > SNDRV_PCM_CLASS_LAST) str = "none"; else -@@ -948,7 +957,11 @@ +@@ -1018,7 +1027,11 @@ return snprintf(buf, PAGE_SIZE, "%s\n", str); } @@ -42,7 +42,7 @@ __ATTR(pcm_class, S_IRUGO, show_pcm_class, NULL); static int snd_pcm_dev_register(struct snd_device *device) -@@ -1000,7 +1013,7 @@ +@@ -1070,7 +1083,7 @@ return err; } snd_add_device_sysfs_file(devtype, pcm->card, pcm->device, diff --git a/alsa/acore/pcm_native.patch b/alsa/acore/pcm_native.patch index abaeffc0b..a10ad9e05 100644 --- a/alsa/acore/pcm_native.patch +++ b/alsa/acore/pcm_native.patch @@ -1,5 +1,5 @@ ---- ../alsa-kernel/core/pcm_native.c 2013-07-09 17:32:00.144639747 +0200 -+++ pcm_native.c 2013-07-09 17:48:51.026434838 +0200 +--- ../alsa-kernel/core/pcm_native.c 2014-02-14 08:10:32.320887717 +0100 ++++ pcm_native.c 2014-02-14 10:32:00.211618565 +0100 @@ -1,3 +1,7 @@ +#define __NO_VERSION__ +#include "adriver.h" @@ -23,7 +23,7 @@ #include <linux/dma-mapping.h> #include <sound/core.h> #include <sound/control.h> -@@ -377,7 +383,10 @@ static void snd_pcm_set_state(struct snd +@@ -377,7 +383,10 @@ snd_pcm_stream_unlock_irq(substream); } @@ -35,7 +35,7 @@ struct snd_pcm_hw_params *params) { struct snd_pcm_runtime *runtime; -@@ -462,11 +471,33 @@ static int snd_pcm_hw_params(struct snd_ +@@ -462,11 +471,33 @@ snd_pcm_timer_resolution_change(substream); snd_pcm_set_state(substream, SNDRV_PCM_STATE_SETUP); @@ -69,7 +69,7 @@ return 0; _error: /* hardware might be unusable from this time, -@@ -521,7 +552,17 @@ static int snd_pcm_hw_free(struct snd_pc +@@ -521,7 +552,17 @@ if (substream->ops->hw_free) result = substream->ops->hw_free(substream); snd_pcm_set_state(substream, SNDRV_PCM_STATE_OPEN); @@ -87,9 +87,9 @@ return result; } -@@ -956,7 +997,11 @@ static struct action_ops snd_pcm_action_ +@@ -956,7 +997,11 @@ * - * Return: Zero if succesful, or a negative error code. + * Return: Zero if successful, or a negative error code. */ +#if defined(__GENKSYMS__) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 38) +int snd_pcm_stop(struct snd_pcm_substream *substream, int state) @@ -99,7 +99,7 @@ { return snd_pcm_action(&snd_pcm_action_stop, substream, state); } -@@ -1591,7 +1636,13 @@ static int snd_pcm_drop(struct snd_pcm_s +@@ -1592,7 +1637,13 @@ static bool is_pcm_file(struct file *file) { @@ -113,7 +113,7 @@ unsigned int minor; if (!S_ISCHR(inode->i_mode) || imajor(inode) != snd_major) -@@ -2038,8 +2089,21 @@ void snd_pcm_release_substream(struct sn +@@ -2039,8 +2090,21 @@ substream->ops->close(substream); substream->hw_opened = 0; } @@ -135,7 +135,7 @@ if (substream->pcm_release) { substream->pcm_release(substream); substream->pcm_release = NULL; -@@ -2859,23 +2923,42 @@ static ssize_t snd_pcm_write(struct file +@@ -2862,23 +2926,42 @@ pcm_file = file->private_data; substream = pcm_file->substream; @@ -185,7 +185,7 @@ { struct snd_pcm_file *pcm_file; struct snd_pcm_substream *substream; -@@ -2885,7 +2968,11 @@ static ssize_t snd_pcm_aio_read(struct k +@@ -2888,7 +2971,11 @@ void __user **bufs; snd_pcm_uframes_t frames; @@ -197,7 +197,7 @@ substream = pcm_file->substream; if (PCM_RUNTIME_CHECK(substream)) return -ENXIO; -@@ -2909,8 +2996,13 @@ static ssize_t snd_pcm_aio_read(struct k +@@ -2912,8 +2999,13 @@ return result; } @@ -211,7 +211,7 @@ { struct snd_pcm_file *pcm_file; struct snd_pcm_substream *substream; -@@ -2920,7 +3012,11 @@ static ssize_t snd_pcm_aio_write(struct +@@ -2923,7 +3015,11 @@ void __user **bufs; snd_pcm_uframes_t frames; @@ -223,7 +223,7 @@ substream = pcm_file->substream; if (PCM_RUNTIME_CHECK(substream)) return -ENXIO; -@@ -2942,6 +3038,7 @@ static ssize_t snd_pcm_aio_write(struct +@@ -2945,6 +3041,7 @@ kfree(bufs); return result; } @@ -231,7 +231,7 @@ static unsigned int snd_pcm_playback_poll(struct file *file, poll_table * wait) { -@@ -3029,6 +3126,19 @@ static unsigned int snd_pcm_capture_poll +@@ -3032,6 +3129,19 @@ * mmap support */ @@ -251,7 +251,7 @@ /* * Only on coherent architectures, we can mmap the status and the control records * for effcient data transfer. On others, we have to use HWSYNC ioctl... -@@ -3037,6 +3147,7 @@ static unsigned int snd_pcm_capture_poll +@@ -3040,6 +3150,7 @@ /* * mmap status record */ @@ -259,7 +259,7 @@ static int snd_pcm_mmap_status_fault(struct vm_area_struct *area, struct vm_fault *vmf) { -@@ -3050,10 +3161,35 @@ static int snd_pcm_mmap_status_fault(str +@@ -3053,10 +3164,35 @@ get_page(vmf->page); return 0; } @@ -295,7 +295,7 @@ }; static int snd_pcm_mmap_status(struct snd_pcm_substream *substream, struct file *file, -@@ -3074,6 +3210,7 @@ static int snd_pcm_mmap_status(struct sn +@@ -3077,6 +3213,7 @@ /* * mmap control record */ @@ -303,7 +303,7 @@ static int snd_pcm_mmap_control_fault(struct vm_area_struct *area, struct vm_fault *vmf) { -@@ -3087,10 +3224,36 @@ static int snd_pcm_mmap_control_fault(st +@@ -3090,10 +3227,36 @@ get_page(vmf->page); return 0; } @@ -340,7 +340,7 @@ }; static int snd_pcm_mmap_control(struct snd_pcm_substream *substream, struct file *file, -@@ -3144,9 +3307,12 @@ snd_pcm_default_page_ops(struct snd_pcm_ +@@ -3147,9 +3310,12 @@ return virt_to_page(vaddr); } @@ -353,7 +353,7 @@ static int snd_pcm_mmap_data_fault(struct vm_area_struct *area, struct vm_fault *vmf) { -@@ -3173,6 +3339,45 @@ static int snd_pcm_mmap_data_fault(struc +@@ -3176,6 +3342,45 @@ vmf->page = page; return 0; } @@ -399,7 +399,7 @@ static const struct vm_operations_struct snd_pcm_vm_ops_data = { .open = snd_pcm_mmap_data_open, -@@ -3182,7 +3387,14 @@ static const struct vm_operations_struct +@@ -3185,7 +3390,14 @@ static const struct vm_operations_struct snd_pcm_vm_ops_data_fault = { .open = snd_pcm_mmap_data_open, .close = snd_pcm_mmap_data_close, @@ -414,7 +414,7 @@ }; #ifndef ARCH_HAS_DMA_MMAP_COHERENT -@@ -3228,7 +3440,35 @@ int snd_pcm_lib_mmap_iomem(struct snd_pc +@@ -3239,7 +3451,35 @@ struct snd_pcm_runtime *runtime = substream->runtime;; area->vm_page_prot = pgprot_noncached(area->vm_page_prot); @@ -450,7 +450,7 @@ } EXPORT_SYMBOL(snd_pcm_lib_mmap_iomem); -@@ -3262,7 +3502,7 @@ int snd_pcm_mmap_data(struct snd_pcm_sub +@@ -3273,7 +3513,7 @@ runtime->access == SNDRV_PCM_ACCESS_RW_NONINTERLEAVED) return -EINVAL; size = area->vm_end - area->vm_start; @@ -459,7 +459,7 @@ dma_bytes = PAGE_ALIGN(runtime->dma_bytes); if ((size_t)size > dma_bytes) return -EINVAL; -@@ -3293,7 +3533,7 @@ static int snd_pcm_mmap(struct file *fil +@@ -3304,7 +3544,7 @@ if (PCM_RUNTIME_CHECK(substream)) return -ENXIO; @@ -468,7 +468,7 @@ switch (offset) { case SNDRV_PCM_MMAP_OFFSET_STATUS: if (pcm_file->no_compat_mmap) -@@ -3326,12 +3566,34 @@ static int snd_pcm_fasync(int fd, struct +@@ -3337,12 +3577,34 @@ /* * ioctl32 compat */ @@ -504,7 +504,7 @@ /* * To be removed helpers to keep binary compatibility */ -@@ -3472,29 +3734,49 @@ const struct file_operations snd_pcm_f_o +@@ -3483,29 +3745,49 @@ { .owner = THIS_MODULE, .write = snd_pcm_write, diff --git a/alsa/acore/sound.patch b/alsa/acore/sound.patch index 269aab7bf..4d1adcb64 100644 --- a/alsa/acore/sound.patch +++ b/alsa/acore/sound.patch @@ -1,5 +1,5 @@ ---- ../alsa-kernel/core/sound.c 2013-11-27 08:48:59.677641394 +0100 -+++ sound.c 2013-11-27 09:17:08.461746060 +0100 +--- ../alsa-kernel/core/sound.c 2014-02-14 08:10:32.325887782 +0100 ++++ sound.c 2014-02-14 10:46:42.306855804 +0100 @@ -1,3 +1,4 @@ +#include "adriver.h" /* @@ -137,7 +137,7 @@ + snd_memory_info_init(); snd_info_minor_register(); #ifndef MODULE - printk(KERN_INFO "Advanced Linux Sound Architecture Driver Initialized.\n"); + pr_info("Advanced Linux Sound Architecture Driver Initialized.\n"); @@ -475,9 +544,13 @@ static void __exit alsa_sound_exit(void) { diff --git a/alsa/drivers/pcsp/pcsp.patch b/alsa/drivers/pcsp/pcsp.patch index ef5794c94..91626ca2c 100644 --- a/alsa/drivers/pcsp/pcsp.patch +++ b/alsa/drivers/pcsp/pcsp.patch @@ -1,11 +1,11 @@ ---- ../../alsa-kernel/drivers/pcsp/pcsp.c 2009-11-04 07:58:49.000000000 +0100 -+++ pcsp.c 2009-12-15 22:17:50.000000000 +0100 +--- ../../alsa-kernel/drivers/pcsp/pcsp.c 2014-02-14 10:29:56.461067921 +0100 ++++ pcsp.c 2014-02-14 10:46:42.548858883 +0100 @@ -1,3 +1,4 @@ +#include "adriver.h" /* * PC-Speaker driver for Linux * -@@ -102,6 +103,9 @@ +@@ -103,6 +104,9 @@ return -EINVAL; hrtimer_init(&pcsp_chip.timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); @@ -14,4 +14,4 @@ +#endif pcsp_chip.timer.function = pcsp_do_timer; - err = snd_card_create(index, id, THIS_MODULE, 0, &card); + err = snd_card_new(dev, index, id, THIS_MODULE, 0, &card); diff --git a/alsa/include/sound/core.patch b/alsa/include/sound/core.patch index fb55d4a15..e27ac292f 100644 --- a/alsa/include/sound/core.patch +++ b/alsa/include/sound/core.patch @@ -1,6 +1,6 @@ ---- ../../alsa-kernel/include/core.h 2012-10-30 11:00:52.000000000 +0100 -+++ core.h 2012-11-23 17:56:50.000000000 +0100 -@@ -104,8 +104,16 @@ +--- ../../alsa-kernel/include/core.h 2014-02-14 10:29:56.461067921 +0100 ++++ core.h 2014-02-14 10:30:41.512621336 +0100 +@@ -108,8 +108,16 @@ char shortname[32]; /* short name of this soundcard */ char longname[80]; /* name of this soundcard */ char mixername[80]; /* mixer name */ @@ -17,7 +17,7 @@ struct module *module; /* top-level module */ void *private_data; /* private data for soundcard */ -@@ -125,7 +133,15 @@ +@@ -129,7 +137,15 @@ struct snd_info_entry *proc_id; /* the card id */ struct proc_dir_entry *proc_root_link; /* number link to real id */ @@ -33,17 +33,7 @@ struct snd_shutdown_f_ops *s_f_ops; /* file operations in the shutdown state */ spinlock_t files_lock; /* lock the files for this card */ -@@ -134,7 +150,9 @@ - wait_queue_head_t shutdown_sleep; - atomic_t refcount; /* refcount for disconnection */ - struct device *dev; /* device assigned to this card */ -+#ifndef CONFIG_SYSFS_DEPRECATED - struct device *card_dev; /* cardX object for sysfs */ -+#endif - - #ifdef CONFIG_PM - unsigned int power_state; /* power state */ -@@ -146,6 +164,17 @@ +@@ -149,6 +165,17 @@ struct snd_mixer_oss *mixer_oss; int mixer_oss_change_count; #endif @@ -60,22 +50,10 @@ +#endif /* !__GENKSYMS__ */ }; - #ifdef CONFIG_PM -@@ -196,7 +225,11 @@ - /* return a device pointer linked to each sound device as a parent */ - static inline struct device *snd_card_get_device_link(struct snd_card *card) - { -+#ifdef CONFIG_SYSFS_DEPRECATED -+ return card ? card->dev : NULL; -+#else - return card ? card->card_dev : NULL; -+#endif - } - - /* sound.c */ -@@ -299,7 +332,11 @@ + #define dev_to_snd_card(p) container_of(p, struct snd_card, card_dev) +@@ -310,7 +337,11 @@ int snd_card_file_remove(struct snd_card *card, struct file *file); - void snd_card_unref(struct snd_card *card); + #define snd_card_unref(card) put_device(&(card)->card_dev) +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) +#define snd_card_set_dev(card,dev) /* no struct device */ @@ -85,7 +63,7 @@ /* device.c */ -@@ -424,13 +461,21 @@ +@@ -438,13 +469,21 @@ /* for easier backward-porting */ #if defined(CONFIG_GAMEPORT) || defined(CONFIG_GAMEPORT_MODULE) diff --git a/alsa/include/sound/pcm.patch b/alsa/include/sound/pcm.patch index a4bed0e97..9809fd119 100644 --- a/alsa/include/sound/pcm.patch +++ b/alsa/include/sound/pcm.patch @@ -1,6 +1,6 @@ ---- ../../alsa-kernel/include/pcm.h 2012-10-23 16:14:36.000000000 +0200 -+++ pcm.h 2012-10-25 00:44:04.000000000 +0200 -@@ -280,10 +280,18 @@ +--- ../../alsa-kernel/include/pcm.h 2014-02-14 08:10:32.314887640 +0100 ++++ pcm.h 2014-02-14 10:46:42.233854876 +0100 +@@ -282,10 +282,18 @@ snd_pcm_uframes_t avail_max; snd_pcm_uframes_t hw_ptr_base; /* Position at buffer restart */ snd_pcm_uframes_t hw_ptr_interrupt; /* Position at interrupt time */ @@ -19,7 +19,7 @@ /* -- HW params -- */ snd_pcm_access_t access; /* access mode */ -@@ -294,6 +302,9 @@ +@@ -296,6 +304,9 @@ snd_pcm_uframes_t period_size; /* period size */ unsigned int periods; /* periods */ snd_pcm_uframes_t buffer_size; /* buffer size */ @@ -29,7 +29,7 @@ snd_pcm_uframes_t min_align; /* Min alignment for the format */ size_t byte_align; unsigned int frame_bits; -@@ -301,11 +312,17 @@ +@@ -303,11 +314,17 @@ unsigned int info; unsigned int rate_num; unsigned int rate_den; @@ -47,7 +47,7 @@ snd_pcm_uframes_t start_threshold; snd_pcm_uframes_t stop_threshold; snd_pcm_uframes_t silence_threshold; /* Silence filling happens when -@@ -323,9 +340,22 @@ +@@ -325,9 +342,22 @@ struct snd_pcm_mmap_control *control; /* -- locking / scheduling -- */ @@ -70,7 +70,7 @@ struct fasync_struct *fasync; /* -- private section -- */ -@@ -342,8 +372,9 @@ +@@ -344,8 +374,9 @@ /* -- timer -- */ unsigned int timer_resolution; /* timer resolution */ @@ -81,7 +81,7 @@ /* -- DMA -- */ unsigned char *dma_area; /* DMA area */ dma_addr_t dma_addr; /* physical bus address (not accessible from main CPU) */ -@@ -356,9 +387,37 @@ +@@ -358,9 +389,37 @@ struct snd_pcm_oss_runtime oss; #endif @@ -119,7 +119,7 @@ }; struct snd_pcm_group { /* keep linked substreams */ -@@ -376,7 +435,15 @@ +@@ -378,7 +437,15 @@ int number; char name[32]; /* substream name */ int stream; /* stream (direction) */ @@ -134,8 +134,8 @@ +#endif size_t buffer_bytes_max; /* limit ring buffer size */ struct snd_dma_buffer dma_buffer; - unsigned int dma_buf_id; -@@ -388,6 +455,9 @@ + size_t dma_max; +@@ -389,6 +456,9 @@ /* -- timer section -- */ struct snd_timer *timer; /* timer */ unsigned timer_running: 1; /* time is running */ @@ -145,7 +145,7 @@ /* -- next substream -- */ struct snd_pcm_substream *next; /* -- linked substreams -- */ -@@ -400,7 +470,9 @@ +@@ -401,7 +471,9 @@ atomic_t mmap_count; unsigned int f_flags; void (*pcm_release)(struct snd_pcm_substream *); @@ -155,7 +155,7 @@ #if defined(CONFIG_SND_PCM_OSS) || defined(CONFIG_SND_PCM_OSS_MODULE) /* -- OSS things -- */ struct snd_pcm_oss_substream oss; -@@ -416,6 +488,13 @@ +@@ -417,6 +489,13 @@ #endif /* misc flags */ unsigned int hw_opened: 1; @@ -169,7 +169,7 @@ }; #define SUBSTREAM_BUSY(substream) ((substream)->ref_count > 0) -@@ -499,7 +578,11 @@ +@@ -500,7 +579,11 @@ int snd_pcm_status(struct snd_pcm_substream *substream, struct snd_pcm_status *status); int snd_pcm_start(struct snd_pcm_substream *substream); diff --git a/alsa/pci/hda/hda_beep.patch b/alsa/pci/hda/hda_beep.patch index 193071432..82f20084f 100644 --- a/alsa/pci/hda/hda_beep.patch +++ b/alsa/pci/hda/hda_beep.patch @@ -1,5 +1,5 @@ ---- ../../alsa-kernel/pci/hda/hda_beep.c 2013-10-24 11:38:36.463985941 +0200 -+++ hda_beep.c 2013-10-24 14:55:48.026984530 +0200 +--- ../../alsa-kernel/pci/hda/hda_beep.c 2013-12-19 17:11:11.245210883 +0100 ++++ hda_beep.c 2014-02-14 10:46:43.090865780 +0100 @@ -1,3 +1,5 @@ +#define __NO_VERSION__ +#include "adriver.h" @@ -18,7 +18,7 @@ switch (code) { case SND_BELL: -@@ -127,7 +133,9 @@ +@@ -128,7 +134,9 @@ static void turn_off_beep(struct hda_beep *beep) { @@ -28,7 +28,7 @@ if (beep->playing) { /* turn off beep */ snd_hda_codec_write(beep->codec, beep->nid, 0, -@@ -140,6 +148,9 @@ +@@ -141,6 +149,9 @@ static void snd_hda_do_detach(struct hda_beep *beep) { input_unregister_device(beep->dev); @@ -38,7 +38,7 @@ beep->dev = NULL; turn_off_beep(beep); } -@@ -150,7 +161,11 @@ +@@ -151,7 +162,11 @@ struct hda_codec *codec = beep->codec; int err; @@ -50,7 +50,7 @@ if (!input_dev) return -ENOMEM; -@@ -166,15 +181,26 @@ +@@ -167,15 +182,26 @@ input_dev->evbit[0] = BIT_MASK(EV_SND); input_dev->sndbit[0] = BIT_MASK(SND_BELL) | BIT_MASK(SND_TONE); input_dev->event = snd_hda_beep_event; diff --git a/alsa/pci/hda/hda_intel.patch b/alsa/pci/hda/hda_intel.patch index 8b732b010..0cea292ff 100644 --- a/alsa/pci/hda/hda_intel.patch +++ b/alsa/pci/hda/hda_intel.patch @@ -1,5 +1,5 @@ ---- ../../alsa-kernel/pci/hda/hda_intel.c 2013-04-05 07:36:57.760588767 +0200 -+++ hda_intel.c 2013-04-05 08:55:45.636009218 +0200 +--- ../../alsa-kernel/pci/hda/hda_intel.c 2014-02-14 10:29:56.470068031 +0100 ++++ hda_intel.c 2014-02-14 10:51:14.000311502 +0100 @@ -1,3 +1,4 @@ +#include "hda_intel_hack.c" /* @@ -15,7 +15,7 @@ #include <linux/time.h> #include <linux/completion.h> -@@ -426,8 +429,10 @@ +@@ -428,8 +431,10 @@ unsigned int wc_marked:1; unsigned int no_period_wakeup:1; @@ -24,9 +24,9 @@ struct cyclecounter azx_cc; +#endif - #ifdef CONFIG_SND_HDA_DSP_LOADER - struct mutex dsp_mutex; -@@ -679,6 +684,57 @@ + int delay_negative_threshold; + +@@ -696,6 +701,57 @@ #define get_azx_dev(substream) (substream->runtime->private_data) #ifdef CONFIG_X86 @@ -84,7 +84,7 @@ static void __mark_pages_wc(struct azx *chip, struct snd_dma_buffer *dmab, bool on) { int pages; -@@ -1845,6 +1901,7 @@ +@@ -1876,6 +1932,7 @@ azx_dev->opened = 0; } @@ -92,7 +92,7 @@ static cycle_t azx_cc_read(const struct cyclecounter *cc) { struct azx_dev *azx_dev = container_of(cc, struct azx_dev, azx_cc); -@@ -1902,6 +1959,9 @@ +@@ -1954,6 +2011,9 @@ return 0; } @@ -102,7 +102,7 @@ static struct snd_pcm_hardware azx_pcm_hw = { .info = (SNDRV_PCM_INFO_MMAP | -@@ -2269,6 +2329,7 @@ +@@ -2330,6 +2390,7 @@ azx_readl(chip, OLD_SSYNC) & ~sbits); else azx_writel(chip, SSYNC, azx_readl(chip, SSYNC) & ~sbits); @@ -110,7 +110,7 @@ if (start) { azx_timecounter_init(substream, 0, 0); if (nsync > 1) { -@@ -2285,6 +2346,7 @@ +@@ -2346,6 +2407,7 @@ } } } @@ -118,7 +118,7 @@ spin_unlock(&chip->reg_lock); return 0; } -@@ -2517,7 +2579,11 @@ +@@ -2582,7 +2644,11 @@ struct azx_pcm *apcm = snd_pcm_substream_chip(substream); struct azx *chip = apcm->chip; if (!azx_snoop(chip)) @@ -130,7 +130,7 @@ return snd_pcm_lib_default_mmap(substream, area); } #else -@@ -3192,6 +3258,7 @@ +@@ -3322,6 +3388,7 @@ static bool check_hdmi_disabled(struct pci_dev *pci) { bool vga_inactive = false; @@ -138,7 +138,7 @@ struct pci_dev *p = get_bound_vga(pci); if (p) { -@@ -3199,6 +3266,7 @@ +@@ -3329,6 +3396,7 @@ vga_inactive = true; pci_dev_put(p); } @@ -146,7 +146,7 @@ return vga_inactive; } #endif /* SUPPORT_VGA_SWITCHEROO */ -@@ -3307,6 +3375,10 @@ +@@ -3437,6 +3505,10 @@ } } @@ -157,7 +157,7 @@ /* * white/black-list for enable_msi */ -@@ -3319,6 +3391,14 @@ +@@ -3454,6 +3526,14 @@ {} }; @@ -172,7 +172,7 @@ static void check_msi(struct azx *chip) { const struct snd_pci_quirk *q; -@@ -3327,7 +3407,11 @@ +@@ -3462,7 +3542,11 @@ chip->msi = !!enable_msi; return; } @@ -184,7 +184,7 @@ q = snd_pci_quirk_lookup(chip->pci, msi_black_list); if (q) { printk(KERN_INFO -@@ -3336,6 +3420,16 @@ +@@ -3471,6 +3555,16 @@ chip->msi = q->value; return; } @@ -201,7 +201,7 @@ /* NVidia chipsets seem to cause troubles with MSI */ if (chip->driver_caps & AZX_DCAPS_NO_MSI) { -@@ -3357,7 +3451,7 @@ +@@ -3492,7 +3586,7 @@ if (snoop) { u8 val; pci_read_config_byte(chip->pci, 0x42, &val); @@ -210,7 +210,7 @@ snoop = false; } break; -@@ -3506,7 +3600,7 @@ +@@ -3650,7 +3744,7 @@ PCI_DEVICE_ID_ATI_SBX00_SMBUS, NULL); if (p_smbus) { diff --git a/alsa/pci/via82xx.patch b/alsa/pci/via82xx.patch index d2b663fe2..3d8d470f3 100644 --- a/alsa/pci/via82xx.patch +++ b/alsa/pci/via82xx.patch @@ -1,19 +1,19 @@ ---- ../alsa-kernel/pci/via82xx.c 2012-04-24 12:18:48.000000000 +0200 -+++ via82xx.c 2012-04-24 12:32:51.000000000 +0200 +--- ../alsa-kernel/pci/via82xx.c 2014-02-14 10:29:56.475068093 +0100 ++++ via82xx.c 2014-02-14 10:46:42.779861823 +0100 @@ -1,3 +1,4 @@ +#include "adriver.h" /* * ALSA driver for VIA VT82xx (South Bridge) * -@@ -2513,6 +2514,7 @@ +@@ -2541,6 +2542,7 @@ int chip_type = 0, card_type; unsigned int i; int err; + unsigned char revision = snd_pci_revision(pci); - err = snd_card_create(index, id, THIS_MODULE, 0, &card); + err = snd_card_new(&pci->dev, index, id, THIS_MODULE, 0, &card); if (err < 0) -@@ -2522,14 +2524,14 @@ +@@ -2550,14 +2552,14 @@ switch (card_type) { case TYPE_CARD_VIA686: strcpy(card->driver, "VIA686A"); @@ -31,7 +31,7 @@ chip_type = via823x_cards[i].type; strcpy(card->shortname, via823x_cards[i].name); break; -@@ -2537,7 +2539,7 @@ +@@ -2565,7 +2567,7 @@ } if (chip_type != TYPE_VIA8233A) { if (dxs_support == VIA_DXS_AUTO) @@ -40,7 +40,7 @@ /* force to use VIA8233 or 8233A model according to * dxs_support module option */ -@@ -2548,7 +2550,7 @@ +@@ -2576,7 +2578,7 @@ } if (chip_type == TYPE_VIA8233A) strcpy(card->driver, "VIA8233A"); @@ -49,7 +49,7 @@ strcpy(card->driver, "VIA8237"); /* no slog assignment */ else strcpy(card->driver, "VIA8233"); -@@ -2559,7 +2561,7 @@ +@@ -2587,7 +2589,7 @@ goto __error; } @@ -58,7 +58,7 @@ ac97_clock, &chip)) < 0) goto __error; card->private_data = chip; -@@ -2631,3 +2633,5 @@ +@@ -2657,3 +2659,5 @@ }; module_pci_driver(via82xx_driver); diff --git a/alsa/usb/usx2y/usbusx2y.patch b/alsa/usb/usx2y/usbusx2y.patch index 5c4362c46..69e47fdaa 100644 --- a/alsa/usb/usx2y/usbusx2y.patch +++ b/alsa/usb/usx2y/usbusx2y.patch @@ -1,5 +1,5 @@ ---- usbusx2y.c.orig 2012-01-17 12:21:23.764268787 +0100 -+++ usbusx2y.c 2012-01-17 12:22:04.419266082 +0100 +--- ../../alsa-kernel/usb/usx2y/usbusx2y.c 2014-02-14 08:10:32.368888338 +0100 ++++ usbusx2y.c 2014-02-14 10:51:14.716320606 +0100 @@ -1,3 +1,5 @@ +#include "usbusx2y.inc" + @@ -92,8 +92,8 @@ +#endif return -EINVAL; - err = usX2Y_create_card(device, &card); -@@ -397,6 +427,7 @@ + err = usX2Y_create_card(device, intf, &card); +@@ -396,6 +426,7 @@ return 0; } @@ -101,7 +101,7 @@ /* * new 2.5 USB kernel API */ -@@ -417,13 +448,35 @@ +@@ -416,13 +447,35 @@ usX2Y_usb_disconnect(interface_to_usbdev(intf), usb_get_intfdata(intf)); } @@ -137,7 +137,7 @@ }; static void snd_usX2Y_card_private_free(struct snd_card *card) -@@ -455,8 +508,14 @@ +@@ -454,8 +507,14 @@ } if (usX2Y->us428ctls_sharedmem) wake_up(&usX2Y->us428ctls_wait_queue_head); diff --git a/alsa/usb/usx2y/usx2yhwdeppcm.patch b/alsa/usb/usx2y/usx2yhwdeppcm.patch index ba5a969bd..1fe50b647 100644 --- a/alsa/usb/usx2y/usx2yhwdeppcm.patch +++ b/alsa/usb/usx2y/usx2yhwdeppcm.patch @@ -1,11 +1,11 @@ ---- ../../alsa-kernel/usb/usx2y/usx2yhwdeppcm.c 2013-04-29 11:45:04.825944327 +0200 -+++ usx2yhwdeppcm.c 2013-04-29 18:04:28.975941611 +0200 +--- ../../alsa-kernel/usb/usx2y/usx2yhwdeppcm.c 2013-10-02 17:57:10.236598197 +0200 ++++ usx2yhwdeppcm.c 2014-02-14 10:46:43.917876302 +0100 @@ -1,3 +1,4 @@ +#include "usx2yhwdeppcm.inc" /* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by -@@ -443,6 +444,9 @@ +@@ -438,6 +439,9 @@ if (0 == u) atomic_set(&subs->state, state_STARTING3); urb->dev = usX2Y->dev; |