aboutsummaryrefslogtreecommitdiffstats
path: root/sound/drivers/opl3/opl3_lib.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2007-10-30 06:49:22 -0400
committerJaroslav Kysela <perex@perex.cz>2008-01-31 11:29:13 -0500
commit224a033252bba46c5c8b5df625f5e781ca138f48 (patch)
tree11bb0ad9a3bab736091c73bb46b79d42ee0ff34d /sound/drivers/opl3/opl3_lib.c
parentceac4bf34e14d9040d16b35fd97a92d6e951ccf4 (diff)
[ALSA] opl3 - Use hwdep for patch loading
Use the hwdep device for loading OPL2/3 patch data instead of the messy sequencer instrument layer. Due to this change, the sbiload program should be updated, too. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/drivers/opl3/opl3_lib.c')
-rw-r--r--sound/drivers/opl3/opl3_lib.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/drivers/opl3/opl3_lib.c b/sound/drivers/opl3/opl3_lib.c
index a2b9ce060295..a657da922b4d 100644
--- a/sound/drivers/opl3/opl3_lib.c
+++ b/sound/drivers/opl3/opl3_lib.c
@@ -327,6 +327,7 @@ static int snd_opl3_free(struct snd_opl3 *opl3)
327 snd_assert(opl3 != NULL, return -ENXIO); 327 snd_assert(opl3 != NULL, return -ENXIO);
328 if (opl3->private_free) 328 if (opl3->private_free)
329 opl3->private_free(opl3); 329 opl3->private_free(opl3);
330 snd_opl3_clear_patches(opl3);
330 release_and_free_resource(opl3->res_l_port); 331 release_and_free_resource(opl3->res_l_port);
331 release_and_free_resource(opl3->res_r_port); 332 release_and_free_resource(opl3->res_r_port);
332 kfree(opl3); 333 kfree(opl3);
@@ -521,6 +522,7 @@ int snd_opl3_hwdep_new(struct snd_opl3 * opl3,
521 /* operators - only ioctl */ 522 /* operators - only ioctl */
522 hw->ops.open = snd_opl3_open; 523 hw->ops.open = snd_opl3_open;
523 hw->ops.ioctl = snd_opl3_ioctl; 524 hw->ops.ioctl = snd_opl3_ioctl;
525 hw->ops.write = snd_opl3_write;
524 hw->ops.release = snd_opl3_release; 526 hw->ops.release = snd_opl3_release;
525 527
526 opl3->seq_dev_num = seq_device; 528 opl3->seq_dev_num = seq_device;