diff options
Diffstat (limited to 'drivers/isdn/hisax/sedlbauer_cs.c')
-rw-r--r-- | drivers/isdn/hisax/sedlbauer_cs.c | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/drivers/isdn/hisax/sedlbauer_cs.c b/drivers/isdn/hisax/sedlbauer_cs.c index 71b3ddef03bb..7778385b05b2 100644 --- a/drivers/isdn/hisax/sedlbauer_cs.c +++ b/drivers/isdn/hisax/sedlbauer_cs.c | |||
@@ -143,10 +143,6 @@ static int __devinit sedlbauer_probe(struct pcmcia_device *link) | |||
143 | local->p_dev = link; | 143 | local->p_dev = link; |
144 | link->priv = local; | 144 | link->priv = local; |
145 | 145 | ||
146 | /* Interrupt setup */ | ||
147 | link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING; | ||
148 | link->irq.Handler = NULL; | ||
149 | |||
150 | /* | 146 | /* |
151 | General socket configuration defaults can go here. In this | 147 | General socket configuration defaults can go here. In this |
152 | client, we assume very little, and rely on the CIS for almost | 148 | client, we assume very little, and rely on the CIS for almost |
@@ -227,9 +223,7 @@ static int sedlbauer_config_check(struct pcmcia_device *p_dev, | |||
227 | else if (dflt->vpp1.present & (1<<CISTPL_POWER_VNOM)) | 223 | else if (dflt->vpp1.present & (1<<CISTPL_POWER_VNOM)) |
228 | p_dev->conf.Vpp = dflt->vpp1.param[CISTPL_POWER_VNOM]/10000; | 224 | p_dev->conf.Vpp = dflt->vpp1.param[CISTPL_POWER_VNOM]/10000; |
229 | 225 | ||
230 | /* Do we need to allocate an interrupt? */ | 226 | p_dev->conf.Attributes |= CONF_ENABLE_IRQ; |
231 | if (cfg->irq.IRQInfo1 || dflt->irq.IRQInfo1) | ||
232 | p_dev->conf.Attributes |= CONF_ENABLE_IRQ; | ||
233 | 227 | ||
234 | /* IO window settings */ | 228 | /* IO window settings */ |
235 | p_dev->io.NumPorts1 = p_dev->io.NumPorts2 = 0; | 229 | p_dev->io.NumPorts1 = p_dev->io.NumPorts2 = 0; |
@@ -313,17 +307,6 @@ static int __devinit sedlbauer_config(struct pcmcia_device *link) | |||
313 | goto failed; | 307 | goto failed; |
314 | 308 | ||
315 | /* | 309 | /* |
316 | Allocate an interrupt line. Note that this does not assign a | ||
317 | handler to the interrupt, unless the 'Handler' member of the | ||
318 | irq structure is initialized. | ||
319 | */ | ||
320 | if (link->conf.Attributes & CONF_ENABLE_IRQ) { | ||
321 | ret = pcmcia_request_irq(link, &link->irq); | ||
322 | if (ret) | ||
323 | goto failed; | ||
324 | } | ||
325 | |||
326 | /* | ||
327 | This actually configures the PCMCIA socket -- setting up | 310 | This actually configures the PCMCIA socket -- setting up |
328 | the I/O windows and the interrupt mapping, and putting the | 311 | the I/O windows and the interrupt mapping, and putting the |
329 | card and host interface into "Memory and IO" mode. | 312 | card and host interface into "Memory and IO" mode. |
@@ -346,7 +329,7 @@ static int __devinit sedlbauer_config(struct pcmcia_device *link) | |||
346 | if (link->conf.Vpp) | 329 | if (link->conf.Vpp) |
347 | printk(", Vpp %d.%d", link->conf.Vpp/10, link->conf.Vpp%10); | 330 | printk(", Vpp %d.%d", link->conf.Vpp/10, link->conf.Vpp%10); |
348 | if (link->conf.Attributes & CONF_ENABLE_IRQ) | 331 | if (link->conf.Attributes & CONF_ENABLE_IRQ) |
349 | printk(", irq %d", link->irq.AssignedIRQ); | 332 | printk(", irq %d", link->irq); |
350 | if (link->io.NumPorts1) | 333 | if (link->io.NumPorts1) |
351 | printk(", io 0x%04x-0x%04x", link->io.BasePort1, | 334 | printk(", io 0x%04x-0x%04x", link->io.BasePort1, |
352 | link->io.BasePort1+link->io.NumPorts1-1); | 335 | link->io.BasePort1+link->io.NumPorts1-1); |
@@ -358,7 +341,7 @@ static int __devinit sedlbauer_config(struct pcmcia_device *link) | |||
358 | req->Base+req->Size-1); | 341 | req->Base+req->Size-1); |
359 | printk("\n"); | 342 | printk("\n"); |
360 | 343 | ||
361 | icard.para[0] = link->irq.AssignedIRQ; | 344 | icard.para[0] = link->irq; |
362 | icard.para[1] = link->io.BasePort1; | 345 | icard.para[1] = link->io.BasePort1; |
363 | icard.protocol = protocol; | 346 | icard.protocol = protocol; |
364 | icard.typ = ISDN_CTYPE_SEDLBAUER_PCMCIA; | 347 | icard.typ = ISDN_CTYPE_SEDLBAUER_PCMCIA; |