]> git.hungrycats.org Git - linux/commitdiff
ALSA CVS update
authorJaroslav Kysela <perex@suse.cz>
Thu, 25 Sep 2003 17:40:36 +0000 (19:40 +0200)
committerJaroslav Kysela <perex@suse.cz>
Thu, 25 Sep 2003 17:40:36 +0000 (19:40 +0200)
D:2003/09/24 17:47:04
C:Digigram VX Pocket driver
A:Takashi Iwai <tiwai@suse.de>
F:pcmcia/vx/vx_entry.c:1.2->1.3
L:remove timer and clean up for 2.6 kernel.

sound/pcmcia/vx/vx_entry.c

index d3578156801f87b4d9a999cbfe5844cbbaca1f47..cd6d880bd07216a052d8cf47be382b2dd5831c9a 100644 (file)
@@ -34,10 +34,8 @@ static void vxpocket_config(dev_link_t *link);
 static int vxpocket_event(event_t event, int priority, event_callback_args_t *args);
 
 
-static void vxpocket_release(u_long arg)
+static void vxpocket_release(dev_link_t *link)
 {
-       dev_link_t *link = (dev_link_t *)arg;
-       
        if (link->state & DEV_CONFIG) {
                /* release cs resources */
                CardServices(ReleaseConfiguration, link->handle);
@@ -56,7 +54,7 @@ static int snd_vxpocket_free(vx_core_t *chip)
        struct snd_vxp_entry *hw;
        dev_link_t *link = &vxp->link;
 
-       vxpocket_release((u_long)link);
+       vxpocket_release(link);
 
        /* Break the link with Card Services */
        if (link->handle)
@@ -148,9 +146,6 @@ dev_link_t *snd_vxpocket_attach(struct snd_vxp_entry *hw)
        link->irq.Handler = &snd_vx_irq_handler;
        link->irq.Instance = chip;
 
-       link->release.function = &vxpocket_release;
-       link->release.data = (u_long)link;
-
        link->conf.Attributes = CONF_ENABLE_IRQ;
        link->conf.Vcc = 50;
        link->conf.IntType = INT_MEMORY_AND_IO;
@@ -229,8 +224,6 @@ void snd_vxpocket_detach(struct snd_vxp_entry *hw, dev_link_t *link)
 {
        vx_core_t *chip = snd_magic_cast(vx_core_t, link->priv, return);
 
-       del_timer(&link->release);
-
        snd_printdd(KERN_DEBUG "vxpocket_detach called\n");
        /* Remove the interface data from the linked list */
        if (hw) {
@@ -326,7 +319,6 @@ static int vxpocket_event(event_t event, int priority, event_callback_args_t *ar
                snd_printdd(KERN_DEBUG "CARD_REMOVAL..\n");
                link->state &= ~DEV_PRESENT;
                if (link->state & DEV_CONFIG) {
-                       mod_timer(&link->release, jiffies + HZ/20);
                        chip->chip_status |= VX_STAT_IS_STALE;
                }
                break;