]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/net/wireless/atmel_cs.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6
[mv-sheeva.git] / drivers / net / wireless / atmel_cs.c
index 263c36f7ee222378f328ff86277a5c0180c2627b..77406245dc7b8fb171f82802bd8d4e494747f20e 100644 (file)
@@ -158,7 +158,7 @@ static int atmel_probe(struct pcmcia_device *p_dev)
        DEBUG(0, "atmel_attach()\n");
 
        /* Interrupt setup */
-       p_dev->irq.Attributes = IRQ_TYPE_EXCLUSIVE;
+       p_dev->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING;
        p_dev->irq.IRQInfo1 = IRQ_LEVEL_ID;
        p_dev->irq.Handler = NULL;
 
@@ -226,15 +226,12 @@ static int card_present(void *arg)
 
 static int atmel_config_check(struct pcmcia_device *p_dev,
                              cistpl_cftable_entry_t *cfg,
+                             cistpl_cftable_entry_t *dflt,
+                             unsigned int vcc,
                              void *priv_data)
 {
-       cistpl_cftable_entry_t *dflt = priv_data;
-
-       if (cfg->flags & CISTPL_CFTABLE_DEFAULT)
-               *dflt = *cfg;
        if (cfg->index == 0)
                return -ENODEV;
-       p_dev->conf.ConfigIndex = cfg->index;
 
        /* Does this card need audio output? */
        if (cfg->flags & CISTPL_CFTABLE_AUDIO) {
@@ -280,7 +277,6 @@ static int atmel_config(struct pcmcia_device *link)
        local_info_t *dev;
        int last_fn, last_ret;
        struct pcmcia_device_id *did;
-       cistpl_cftable_entry_t dflt = { 0 };
 
        dev = link->priv;
        did = handle_to_dev(link).driver_data;
@@ -299,7 +295,7 @@ static int atmel_config(struct pcmcia_device *link)
          these things without consulting the CIS, and most client drivers
          will only use the CIS to fill in implementation-defined details.
        */
-       if (pcmcia_loop_config(link, atmel_config_check, &dflt))
+       if (pcmcia_loop_config(link, atmel_config_check, NULL))
                goto failed;
 
        /*