diff options
Diffstat (limited to 'drivers/scsi/pcmcia/sym53c500_cs.c')
-rw-r--r-- | drivers/scsi/pcmcia/sym53c500_cs.c | 31 |
1 files changed, 15 insertions, 16 deletions
diff --git a/drivers/scsi/pcmcia/sym53c500_cs.c b/drivers/scsi/pcmcia/sym53c500_cs.c index a51164171179..321e390c9120 100644 --- a/drivers/scsi/pcmcia/sym53c500_cs.c +++ b/drivers/scsi/pcmcia/sym53c500_cs.c | |||
@@ -71,7 +71,6 @@ | |||
71 | #include <scsi/scsi.h> | 71 | #include <scsi/scsi.h> |
72 | #include <scsi/scsi_host.h> | 72 | #include <scsi/scsi_host.h> |
73 | 73 | ||
74 | #include <pcmcia/cs_types.h> | ||
75 | #include <pcmcia/cs.h> | 74 | #include <pcmcia/cs.h> |
76 | #include <pcmcia/cistpl.h> | 75 | #include <pcmcia/cistpl.h> |
77 | #include <pcmcia/ds.h> | 76 | #include <pcmcia/ds.h> |
@@ -691,13 +690,14 @@ static int SYM53C500_config_check(struct pcmcia_device *p_dev, | |||
691 | unsigned int vcc, | 690 | unsigned int vcc, |
692 | void *priv_data) | 691 | void *priv_data) |
693 | { | 692 | { |
694 | p_dev->io.BasePort1 = cfg->io.win[0].base; | 693 | p_dev->io_lines = 10; |
695 | p_dev->io.NumPorts1 = cfg->io.win[0].len; | 694 | p_dev->resource[0]->start = cfg->io.win[0].base; |
695 | p_dev->resource[0]->end = cfg->io.win[0].len; | ||
696 | 696 | ||
697 | if (p_dev->io.BasePort1 == 0) | 697 | if (p_dev->resource[0]->start == 0) |
698 | return -ENODEV; | 698 | return -ENODEV; |
699 | 699 | ||
700 | return pcmcia_request_io(p_dev, &p_dev->io); | 700 | return pcmcia_request_io(p_dev); |
701 | } | 701 | } |
702 | 702 | ||
703 | static int | 703 | static int |
@@ -734,9 +734,9 @@ SYM53C500_config(struct pcmcia_device *link) | |||
734 | (info->manf_id == MANFID_PIONEER) || | 734 | (info->manf_id == MANFID_PIONEER) || |
735 | (info->manf_id == 0x0098)) { | 735 | (info->manf_id == 0x0098)) { |
736 | /* set ATAcmd */ | 736 | /* set ATAcmd */ |
737 | outb(0xb4, link->io.BasePort1 + 0xd); | 737 | outb(0xb4, link->resource[0]->start + 0xd); |
738 | outb(0x24, link->io.BasePort1 + 0x9); | 738 | outb(0x24, link->resource[0]->start + 0x9); |
739 | outb(0x04, link->io.BasePort1 + 0xd); | 739 | outb(0x04, link->resource[0]->start + 0xd); |
740 | } | 740 | } |
741 | 741 | ||
742 | /* | 742 | /* |
@@ -749,7 +749,7 @@ SYM53C500_config(struct pcmcia_device *link) | |||
749 | * 0x130, 0x230, 0x280, 0x290, | 749 | * 0x130, 0x230, 0x280, 0x290, |
750 | * 0x320, 0x330, 0x340, 0x350 | 750 | * 0x320, 0x330, 0x340, 0x350 |
751 | */ | 751 | */ |
752 | port_base = link->io.BasePort1; | 752 | port_base = link->resource[0]->start; |
753 | irq_level = link->irq; | 753 | irq_level = link->irq; |
754 | 754 | ||
755 | DEB(printk("SYM53C500: port_base=0x%x, irq=%d, fast_pio=%d\n", | 755 | DEB(printk("SYM53C500: port_base=0x%x, irq=%d, fast_pio=%d\n", |
@@ -822,15 +822,15 @@ static int sym53c500_resume(struct pcmcia_device *link) | |||
822 | if ((info->manf_id == MANFID_MACNICA) || | 822 | if ((info->manf_id == MANFID_MACNICA) || |
823 | (info->manf_id == MANFID_PIONEER) || | 823 | (info->manf_id == MANFID_PIONEER) || |
824 | (info->manf_id == 0x0098)) { | 824 | (info->manf_id == 0x0098)) { |
825 | outb(0x80, link->io.BasePort1 + 0xd); | 825 | outb(0x80, link->resource[0]->start + 0xd); |
826 | outb(0x24, link->io.BasePort1 + 0x9); | 826 | outb(0x24, link->resource[0]->start + 0x9); |
827 | outb(0x04, link->io.BasePort1 + 0xd); | 827 | outb(0x04, link->resource[0]->start + 0xd); |
828 | } | 828 | } |
829 | /* | 829 | /* |
830 | * If things don't work after a "resume", | 830 | * If things don't work after a "resume", |
831 | * this is a good place to start looking. | 831 | * this is a good place to start looking. |
832 | */ | 832 | */ |
833 | SYM53C500_int_host_reset(link->io.BasePort1); | 833 | SYM53C500_int_host_reset(link->resource[0]->start); |
834 | 834 | ||
835 | return 0; | 835 | return 0; |
836 | } | 836 | } |
@@ -859,9 +859,8 @@ SYM53C500_probe(struct pcmcia_device *link) | |||
859 | return -ENOMEM; | 859 | return -ENOMEM; |
860 | info->p_dev = link; | 860 | info->p_dev = link; |
861 | link->priv = info; | 861 | link->priv = info; |
862 | link->io.NumPorts1 = 16; | 862 | link->resource[0]->end = 16; |
863 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; | 863 | link->resource[0]->flags |= IO_DATA_PATH_WIDTH_AUTO; |
864 | link->io.IOAddrLines = 10; | ||
865 | link->conf.Attributes = CONF_ENABLE_IRQ; | 864 | link->conf.Attributes = CONF_ENABLE_IRQ; |
866 | link->conf.IntType = INT_MEMORY_AND_IO; | 865 | link->conf.IntType = INT_MEMORY_AND_IO; |
867 | 866 | ||