diff options
Diffstat (limited to 'recipes/alsa/alsa-driver/sound.p.patch')
-rw-r--r-- | recipes/alsa/alsa-driver/sound.p.patch | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/recipes/alsa/alsa-driver/sound.p.patch b/recipes/alsa/alsa-driver/sound.p.patch new file mode 100644 index 0000000000..38b073c8bd --- /dev/null +++ b/recipes/alsa/alsa-driver/sound.p.patch @@ -0,0 +1,59 @@ +--- ./acore/sound.patch.orig 2003-07-03 16:05:15.000000000 +0200 ++++ ./acore/sound.patch 2005-06-26 09:45:05.000000000 +0200 +@@ -1,6 +1,26 @@ +---- sound.c 2003-05-30 15:29:14.000000000 +0200 +-+++ sound.c.old 2003-05-30 15:30:11.000000000 +0200 +-@@ -154,7 +154,9 @@ ++--- sound.c.orig 2005-06-25 23:33:07.000000000 +0200 +++++ sound.c 2005-06-25 23:33:07.000000000 +0200 ++@@ -77,6 +77,7 @@ ++ void snd_request_card(int card) ++ { ++ int locked; +++ char *str; ++ ++ read_lock(&snd_card_rwlock); ++ locked = snd_cards_lock & (1 << card); ++@@ -85,7 +86,10 @@ ++ return; ++ if (card < 0 || card >= cards_limit) ++ return; ++- request_module("snd-card-%i", card); +++ str = kmalloc(15,GFP_KERNEL); +++ snprintf(str,15,"snd-card-%i",card); +++ request_module(str); +++ kfree(str); ++ } ++ ++ static void snd_request_other(int minor) ++@@ -154,7 +158,9 @@ + + struct file_operations snd_fops = + { +@@ -10,7 +30,7 @@ + .open = snd_open + }; + +-@@ -364,6 +366,9 @@ ++@@ -364,6 +370,9 @@ + #ifndef MODULE + printk(KERN_INFO "Advanced Linux Sound Architecture Driver Version " CONFIG_SND_VERSION CONFIG_SND_DATE ".\n"); + #endif +@@ -20,7 +40,7 @@ + return 0; + } + +-@@ -378,6 +383,9 @@ ++@@ -378,6 +387,9 @@ + snd_info_minor_unregister(); + #endif + snd_info_done(); +@@ -30,7 +50,7 @@ + #ifdef CONFIG_SND_DEBUG_MEMORY + snd_memory_done(); + #endif +-@@ -490,3 +498,5 @@ ++@@ -508,3 +520,5 @@ + EXPORT_SYMBOL(snd_wrapper_vmalloc); + EXPORT_SYMBOL(snd_wrapper_vfree); + #endif |