aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/isdn')
-rw-r--r--drivers/isdn/hardware/avm/avm_cs.c10
-rw-r--r--drivers/isdn/hisax/avma1_cs.c8
-rw-r--r--drivers/isdn/hisax/sedlbauer_cs.c8
3 files changed, 11 insertions, 15 deletions
diff --git a/drivers/isdn/hardware/avm/avm_cs.c b/drivers/isdn/hardware/avm/avm_cs.c
index f3889bdc8e4..5f70661994d 100644
--- a/drivers/isdn/hardware/avm/avm_cs.c
+++ b/drivers/isdn/hardware/avm/avm_cs.c
@@ -284,25 +284,25 @@ found_port:
284 cs_error(link->handle, RequestIO, i); 284 cs_error(link->handle, RequestIO, i);
285 break; 285 break;
286 } 286 }
287 287
288 /* 288 /*
289 * allocate an interrupt line 289 * allocate an interrupt line
290 */ 290 */
291 i = pcmcia_request_irq(link->handle, &link->irq); 291 i = pcmcia_request_irq(link->handle, &link->irq);
292 if (i != CS_SUCCESS) { 292 if (i != CS_SUCCESS) {
293 cs_error(link->handle, RequestIRQ, i); 293 cs_error(link->handle, RequestIRQ, i);
294 pcmcia_release_io(link->handle, &link->io); 294 /* undo */
295 pcmcia_disable_device(link->handle);
295 break; 296 break;
296 } 297 }
297 298
298 /* 299 /*
299 * configure the PCMCIA socket 300 * configure the PCMCIA socket
300 */ 301 */
301 i = pcmcia_request_configuration(link->handle, &link->conf); 302 i = pcmcia_request_configuration(link->handle, &link->conf);
302 if (i != CS_SUCCESS) { 303 if (i != CS_SUCCESS) {
303 cs_error(link->handle, RequestConfiguration, i); 304 cs_error(link->handle, RequestConfiguration, i);
304 pcmcia_release_io(link->handle, &link->io); 305 pcmcia_disable_device(link->handle);
305 pcmcia_release_irq(link->handle, &link->irq);
306 break; 306 break;
307 } 307 }
308 308
diff --git a/drivers/isdn/hisax/avma1_cs.c b/drivers/isdn/hisax/avma1_cs.c
index 729c2de0bc1..845fa14e1ba 100644
--- a/drivers/isdn/hisax/avma1_cs.c
+++ b/drivers/isdn/hisax/avma1_cs.c
@@ -313,18 +313,18 @@ found_port:
313 i = pcmcia_request_irq(link->handle, &link->irq); 313 i = pcmcia_request_irq(link->handle, &link->irq);
314 if (i != CS_SUCCESS) { 314 if (i != CS_SUCCESS) {
315 cs_error(link->handle, RequestIRQ, i); 315 cs_error(link->handle, RequestIRQ, i);
316 pcmcia_release_io(link->handle, &link->io); 316 /* undo */
317 pcmcia_disable_device(link->handle);
317 break; 318 break;
318 } 319 }
319 320
320 /* 321 /*
321 * configure the PCMCIA socket 322 * configure the PCMCIA socket
322 */ 323 */
323 i = pcmcia_request_configuration(link->handle, &link->conf); 324 i = pcmcia_request_configuration(link->handle, &link->conf);
324 if (i != CS_SUCCESS) { 325 if (i != CS_SUCCESS) {
325 cs_error(link->handle, RequestConfiguration, i); 326 cs_error(link->handle, RequestConfiguration, i);
326 pcmcia_release_io(link->handle, &link->io); 327 pcmcia_disable_device(link->handle);
327 pcmcia_release_irq(link->handle, &link->irq);
328 break; 328 break;
329 } 329 }
330 330
diff --git a/drivers/isdn/hisax/sedlbauer_cs.c b/drivers/isdn/hisax/sedlbauer_cs.c
index e59539157d1..fd0f127e40b 100644
--- a/drivers/isdn/hisax/sedlbauer_cs.c
+++ b/drivers/isdn/hisax/sedlbauer_cs.c
@@ -374,15 +374,11 @@ static void sedlbauer_config(dev_link_t *link)
374 } 374 }
375 /* If we got this far, we're cool! */ 375 /* If we got this far, we're cool! */
376 break; 376 break;
377 377
378 next_entry: 378 next_entry:
379/* new in dummy.cs 2001/01/28 MN
380 if (link->io.NumPorts1)
381 pcmcia_release_io(link->handle, &link->io);
382*/
383 CS_CHECK(GetNextTuple, pcmcia_get_next_tuple(handle, &tuple)); 379 CS_CHECK(GetNextTuple, pcmcia_get_next_tuple(handle, &tuple));
384 } 380 }
385 381
386 /* 382 /*
387 Allocate an interrupt line. Note that this does not assign a 383 Allocate an interrupt line. Note that this does not assign a
388 handler to the interrupt, unless the 'Handler' member of the 384 handler to the interrupt, unless the 'Handler' member of the