aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/pcmcia/cm4040_cs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/pcmcia/cm4040_cs.c')
-rw-r--r--drivers/char/pcmcia/cm4040_cs.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/drivers/char/pcmcia/cm4040_cs.c b/drivers/char/pcmcia/cm4040_cs.c
index a6bbf199dde9..815cde1d0570 100644
--- a/drivers/char/pcmcia/cm4040_cs.c
+++ b/drivers/char/pcmcia/cm4040_cs.c
@@ -527,16 +527,12 @@ static int cm4040_config_check(struct pcmcia_device *p_dev,
527 return -ENODEV; 527 return -ENODEV;
528 528
529 /* Get the IOaddr */ 529 /* Get the IOaddr */
530 p_dev->io.BasePort1 = cfg->io.win[0].base; 530 p_dev->resource[0]->start = cfg->io.win[0].base;
531 p_dev->io.NumPorts1 = cfg->io.win[0].len; 531 p_dev->resource[0]->end = cfg->io.win[0].len;
532 p_dev->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; 532 p_dev->resource[0]->flags |= pcmcia_io_cfg_data_width(cfg->io.flags);
533 if (!(cfg->io.flags & CISTPL_IO_8BIT)) 533 p_dev->io_lines = cfg->io.flags & CISTPL_IO_LINES_MASK;
534 p_dev->io.Attributes1 = IO_DATA_PATH_WIDTH_16; 534 rc = pcmcia_request_io(p_dev);
535 if (!(cfg->io.flags & CISTPL_IO_16BIT)) 535
536 p_dev->io.Attributes1 = IO_DATA_PATH_WIDTH_8;
537 p_dev->io.IOAddrLines = cfg->io.flags & CISTPL_IO_LINES_MASK;
538
539 rc = pcmcia_request_io(p_dev, &p_dev->io);
540 dev_printk(KERN_INFO, &p_dev->dev, 536 dev_printk(KERN_INFO, &p_dev->dev,
541 "pcmcia_request_io returned 0x%x\n", rc); 537 "pcmcia_request_io returned 0x%x\n", rc);
542 return rc; 538 return rc;
@@ -548,10 +544,6 @@ static int reader_config(struct pcmcia_device *link, int devno)
548 struct reader_dev *dev; 544 struct reader_dev *dev;
549 int fail_rc; 545 int fail_rc;
550 546
551 link->io.BasePort2 = 0;
552 link->io.NumPorts2 = 0;
553 link->io.Attributes2 = 0;
554
555 if (pcmcia_loop_config(link, cm4040_config_check, NULL)) 547 if (pcmcia_loop_config(link, cm4040_config_check, NULL))
556 goto cs_release; 548 goto cs_release;
557 549