diff options
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/bfa/include/defs/bfa_defs_cee.h | 2 | ||||
-rw-r--r-- | drivers/scsi/bfa/include/defs/bfa_defs_status.h | 4 | ||||
-rw-r--r-- | drivers/scsi/fcoe/fcoe.c | 18 | ||||
-rw-r--r-- | drivers/scsi/ipr.c | 6 | ||||
-rw-r--r-- | drivers/scsi/iscsi_tcp.c | 4 | ||||
-rw-r--r-- | drivers/scsi/libsas/sas_scsi_host.c | 2 | ||||
-rw-r--r-- | drivers/scsi/pcmcia/aha152x_stub.c | 9 | ||||
-rw-r--r-- | drivers/scsi/pcmcia/fdomain_stub.c | 9 | ||||
-rw-r--r-- | drivers/scsi/pcmcia/nsp_cs.c | 23 | ||||
-rw-r--r-- | drivers/scsi/pcmcia/nsp_cs.h | 1 | ||||
-rw-r--r-- | drivers/scsi/pcmcia/qlogic_stub.c | 13 | ||||
-rw-r--r-- | drivers/scsi/pcmcia/sym53c500_cs.c | 9 | ||||
-rw-r--r-- | drivers/scsi/zorro7xx.c | 1 |
13 files changed, 34 insertions, 67 deletions
diff --git a/drivers/scsi/bfa/include/defs/bfa_defs_cee.h b/drivers/scsi/bfa/include/defs/bfa_defs_cee.h index b0ac9ac15c5d..6eaf519eccdc 100644 --- a/drivers/scsi/bfa/include/defs/bfa_defs_cee.h +++ b/drivers/scsi/bfa/include/defs/bfa_defs_cee.h | |||
@@ -50,7 +50,7 @@ struct bfa_cee_lldp_str_s { | |||
50 | }; | 50 | }; |
51 | 51 | ||
52 | 52 | ||
53 | /* LLDP paramters */ | 53 | /* LLDP parameters */ |
54 | struct bfa_cee_lldp_cfg_s { | 54 | struct bfa_cee_lldp_cfg_s { |
55 | struct bfa_cee_lldp_str_s chassis_id; | 55 | struct bfa_cee_lldp_str_s chassis_id; |
56 | struct bfa_cee_lldp_str_s port_id; | 56 | struct bfa_cee_lldp_str_s port_id; |
diff --git a/drivers/scsi/bfa/include/defs/bfa_defs_status.h b/drivers/scsi/bfa/include/defs/bfa_defs_status.h index 4374494bd566..ec78b4cb121a 100644 --- a/drivers/scsi/bfa/include/defs/bfa_defs_status.h +++ b/drivers/scsi/bfa/include/defs/bfa_defs_status.h | |||
@@ -223,9 +223,9 @@ enum bfa_status { | |||
223 | BFA_STATUS_IM_PVID_NON_ZERO = 140, /* Port VLAN ID (PVID) is Set to | 223 | BFA_STATUS_IM_PVID_NON_ZERO = 140, /* Port VLAN ID (PVID) is Set to |
224 | * Non-Zero Value */ | 224 | * Non-Zero Value */ |
225 | BFA_STATUS_IM_INETCFG_LOCK_FAILED = 141, /* Acquiring Network | 225 | BFA_STATUS_IM_INETCFG_LOCK_FAILED = 141, /* Acquiring Network |
226 | * Subsytem Lock Failed.Please | 226 | * Subsystem Lock Failed.Please |
227 | * try after some time */ | 227 | * try after some time */ |
228 | BFA_STATUS_IM_GET_INETCFG_FAILED = 142, /* Acquiring Network Subsytem | 228 | BFA_STATUS_IM_GET_INETCFG_FAILED = 142, /* Acquiring Network Subsystem |
229 | * handle Failed. Please try | 229 | * handle Failed. Please try |
230 | * after some time */ | 230 | * after some time */ |
231 | BFA_STATUS_IM_NOT_BOUND = 143, /* IM driver is not active */ | 231 | BFA_STATUS_IM_NOT_BOUND = 143, /* IM driver is not active */ |
diff --git a/drivers/scsi/fcoe/fcoe.c b/drivers/scsi/fcoe/fcoe.c index f01b9b44e8aa..54c870b8c328 100644 --- a/drivers/scsi/fcoe/fcoe.c +++ b/drivers/scsi/fcoe/fcoe.c | |||
@@ -309,10 +309,10 @@ static int fcoe_interface_setup(struct fcoe_interface *fcoe, | |||
309 | * for multiple unicast MACs. | 309 | * for multiple unicast MACs. |
310 | */ | 310 | */ |
311 | memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN); | 311 | memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN); |
312 | dev_unicast_add(netdev, flogi_maddr); | 312 | dev_uc_add(netdev, flogi_maddr); |
313 | if (fip->spma) | 313 | if (fip->spma) |
314 | dev_unicast_add(netdev, fip->ctl_src_addr); | 314 | dev_uc_add(netdev, fip->ctl_src_addr); |
315 | dev_mc_add(netdev, FIP_ALL_ENODE_MACS, ETH_ALEN, 0); | 315 | dev_mc_add(netdev, FIP_ALL_ENODE_MACS); |
316 | 316 | ||
317 | /* | 317 | /* |
318 | * setup the receive function from ethernet driver | 318 | * setup the receive function from ethernet driver |
@@ -395,10 +395,10 @@ void fcoe_interface_cleanup(struct fcoe_interface *fcoe) | |||
395 | 395 | ||
396 | /* Delete secondary MAC addresses */ | 396 | /* Delete secondary MAC addresses */ |
397 | memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN); | 397 | memcpy(flogi_maddr, (u8[6]) FC_FCOE_FLOGI_MAC, ETH_ALEN); |
398 | dev_unicast_delete(netdev, flogi_maddr); | 398 | dev_uc_del(netdev, flogi_maddr); |
399 | if (fip->spma) | 399 | if (fip->spma) |
400 | dev_unicast_delete(netdev, fip->ctl_src_addr); | 400 | dev_uc_del(netdev, fip->ctl_src_addr); |
401 | dev_mc_delete(netdev, FIP_ALL_ENODE_MACS, ETH_ALEN, 0); | 401 | dev_mc_del(netdev, FIP_ALL_ENODE_MACS); |
402 | 402 | ||
403 | /* Tell the LLD we are done w/ FCoE */ | 403 | /* Tell the LLD we are done w/ FCoE */ |
404 | ops = netdev->netdev_ops; | 404 | ops = netdev->netdev_ops; |
@@ -491,9 +491,9 @@ static void fcoe_update_src_mac(struct fc_lport *lport, u8 *addr) | |||
491 | 491 | ||
492 | rtnl_lock(); | 492 | rtnl_lock(); |
493 | if (!is_zero_ether_addr(port->data_src_addr)) | 493 | if (!is_zero_ether_addr(port->data_src_addr)) |
494 | dev_unicast_delete(fcoe->netdev, port->data_src_addr); | 494 | dev_uc_del(fcoe->netdev, port->data_src_addr); |
495 | if (!is_zero_ether_addr(addr)) | 495 | if (!is_zero_ether_addr(addr)) |
496 | dev_unicast_add(fcoe->netdev, addr); | 496 | dev_uc_add(fcoe->netdev, addr); |
497 | memcpy(port->data_src_addr, addr, ETH_ALEN); | 497 | memcpy(port->data_src_addr, addr, ETH_ALEN); |
498 | rtnl_unlock(); | 498 | rtnl_unlock(); |
499 | } | 499 | } |
@@ -820,7 +820,7 @@ static void fcoe_if_destroy(struct fc_lport *lport) | |||
820 | 820 | ||
821 | rtnl_lock(); | 821 | rtnl_lock(); |
822 | if (!is_zero_ether_addr(port->data_src_addr)) | 822 | if (!is_zero_ether_addr(port->data_src_addr)) |
823 | dev_unicast_delete(netdev, port->data_src_addr); | 823 | dev_uc_del(netdev, port->data_src_addr); |
824 | rtnl_unlock(); | 824 | rtnl_unlock(); |
825 | 825 | ||
826 | /* receives may not be stopped until after this */ | 826 | /* receives may not be stopped until after this */ |
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c index 520461b9bc09..b90c118119d7 100644 --- a/drivers/scsi/ipr.c +++ b/drivers/scsi/ipr.c | |||
@@ -4295,7 +4295,7 @@ static void ipr_slave_destroy(struct scsi_device *sdev) | |||
4295 | res = (struct ipr_resource_entry *) sdev->hostdata; | 4295 | res = (struct ipr_resource_entry *) sdev->hostdata; |
4296 | if (res) { | 4296 | if (res) { |
4297 | if (res->sata_port) | 4297 | if (res->sata_port) |
4298 | ata_port_disable(res->sata_port->ap); | 4298 | res->sata_port->ap->link.device[0].class = ATA_DEV_NONE; |
4299 | sdev->hostdata = NULL; | 4299 | sdev->hostdata = NULL; |
4300 | res->sdev = NULL; | 4300 | res->sdev = NULL; |
4301 | res->sata_port = NULL; | 4301 | res->sata_port = NULL; |
@@ -5751,13 +5751,13 @@ static void ipr_ata_phy_reset(struct ata_port *ap) | |||
5751 | rc = ipr_device_reset(ioa_cfg, res); | 5751 | rc = ipr_device_reset(ioa_cfg, res); |
5752 | 5752 | ||
5753 | if (rc) { | 5753 | if (rc) { |
5754 | ata_port_disable(ap); | 5754 | ap->link.device[0].class = ATA_DEV_NONE; |
5755 | goto out_unlock; | 5755 | goto out_unlock; |
5756 | } | 5756 | } |
5757 | 5757 | ||
5758 | ap->link.device[0].class = res->ata_class; | 5758 | ap->link.device[0].class = res->ata_class; |
5759 | if (ap->link.device[0].class == ATA_DEV_UNKNOWN) | 5759 | if (ap->link.device[0].class == ATA_DEV_UNKNOWN) |
5760 | ata_port_disable(ap); | 5760 | ap->link.device[0].class = ATA_DEV_NONE; |
5761 | 5761 | ||
5762 | out_unlock: | 5762 | out_unlock: |
5763 | spin_unlock_irqrestore(ioa_cfg->host->host_lock, flags); | 5763 | spin_unlock_irqrestore(ioa_cfg->host->host_lock, flags); |
diff --git a/drivers/scsi/iscsi_tcp.c b/drivers/scsi/iscsi_tcp.c index 02143af7c1af..9eae04afa9a0 100644 --- a/drivers/scsi/iscsi_tcp.c +++ b/drivers/scsi/iscsi_tcp.c | |||
@@ -599,9 +599,9 @@ static void iscsi_sw_tcp_conn_stop(struct iscsi_cls_conn *cls_conn, int flag) | |||
599 | set_bit(ISCSI_SUSPEND_BIT, &conn->suspend_rx); | 599 | set_bit(ISCSI_SUSPEND_BIT, &conn->suspend_rx); |
600 | write_unlock_bh(&tcp_sw_conn->sock->sk->sk_callback_lock); | 600 | write_unlock_bh(&tcp_sw_conn->sock->sk->sk_callback_lock); |
601 | 601 | ||
602 | if (sock->sk->sk_sleep) { | 602 | if (sk_sleep(sock->sk) && waitqueue_active(sk_sleep(sock->sk))) { |
603 | sock->sk->sk_err = EIO; | 603 | sock->sk->sk_err = EIO; |
604 | wake_up_interruptible(sock->sk->sk_sleep); | 604 | wake_up_interruptible(sk_sleep(sock->sk)); |
605 | } | 605 | } |
606 | 606 | ||
607 | iscsi_conn_stop(cls_conn, flag); | 607 | iscsi_conn_stop(cls_conn, flag); |
diff --git a/drivers/scsi/libsas/sas_scsi_host.c b/drivers/scsi/libsas/sas_scsi_host.c index 822835055cef..b71b6d41baa1 100644 --- a/drivers/scsi/libsas/sas_scsi_host.c +++ b/drivers/scsi/libsas/sas_scsi_host.c | |||
@@ -818,7 +818,7 @@ void sas_slave_destroy(struct scsi_device *scsi_dev) | |||
818 | struct domain_device *dev = sdev_to_domain_dev(scsi_dev); | 818 | struct domain_device *dev = sdev_to_domain_dev(scsi_dev); |
819 | 819 | ||
820 | if (dev_is_sata(dev)) | 820 | if (dev_is_sata(dev)) |
821 | ata_port_disable(dev->sata_dev.ap); | 821 | dev->sata_dev.ap->link.device[0].class = ATA_DEV_NONE; |
822 | } | 822 | } |
823 | 823 | ||
824 | int sas_change_queue_depth(struct scsi_device *scsi_dev, int new_depth, | 824 | int sas_change_queue_depth(struct scsi_device *scsi_dev, int new_depth, |
diff --git a/drivers/scsi/pcmcia/aha152x_stub.c b/drivers/scsi/pcmcia/aha152x_stub.c index 528733b4a392..9d70aef99227 100644 --- a/drivers/scsi/pcmcia/aha152x_stub.c +++ b/drivers/scsi/pcmcia/aha152x_stub.c | |||
@@ -80,7 +80,6 @@ MODULE_LICENSE("Dual MPL/GPL"); | |||
80 | 80 | ||
81 | typedef struct scsi_info_t { | 81 | typedef struct scsi_info_t { |
82 | struct pcmcia_device *p_dev; | 82 | struct pcmcia_device *p_dev; |
83 | dev_node_t node; | ||
84 | struct Scsi_Host *host; | 83 | struct Scsi_Host *host; |
85 | } scsi_info_t; | 84 | } scsi_info_t; |
86 | 85 | ||
@@ -105,7 +104,6 @@ static int aha152x_probe(struct pcmcia_device *link) | |||
105 | link->io.NumPorts1 = 0x20; | 104 | link->io.NumPorts1 = 0x20; |
106 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; | 105 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; |
107 | link->io.IOAddrLines = 10; | 106 | link->io.IOAddrLines = 10; |
108 | link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING; | ||
109 | link->conf.Attributes = CONF_ENABLE_IRQ; | 107 | link->conf.Attributes = CONF_ENABLE_IRQ; |
110 | link->conf.IntType = INT_MEMORY_AND_IO; | 108 | link->conf.IntType = INT_MEMORY_AND_IO; |
111 | link->conf.Present = PRESENT_OPTION; | 109 | link->conf.Present = PRESENT_OPTION; |
@@ -160,8 +158,7 @@ static int aha152x_config_cs(struct pcmcia_device *link) | |||
160 | if (ret) | 158 | if (ret) |
161 | goto failed; | 159 | goto failed; |
162 | 160 | ||
163 | ret = pcmcia_request_irq(link, &link->irq); | 161 | if (!link->irq) |
164 | if (ret) | ||
165 | goto failed; | 162 | goto failed; |
166 | 163 | ||
167 | ret = pcmcia_request_configuration(link, &link->conf); | 164 | ret = pcmcia_request_configuration(link, &link->conf); |
@@ -172,7 +169,7 @@ static int aha152x_config_cs(struct pcmcia_device *link) | |||
172 | memset(&s, 0, sizeof(s)); | 169 | memset(&s, 0, sizeof(s)); |
173 | s.conf = "PCMCIA setup"; | 170 | s.conf = "PCMCIA setup"; |
174 | s.io_port = link->io.BasePort1; | 171 | s.io_port = link->io.BasePort1; |
175 | s.irq = link->irq.AssignedIRQ; | 172 | s.irq = link->irq; |
176 | s.scsiid = host_id; | 173 | s.scsiid = host_id; |
177 | s.reconnect = reconnect; | 174 | s.reconnect = reconnect; |
178 | s.parity = parity; | 175 | s.parity = parity; |
@@ -187,8 +184,6 @@ static int aha152x_config_cs(struct pcmcia_device *link) | |||
187 | goto failed; | 184 | goto failed; |
188 | } | 185 | } |
189 | 186 | ||
190 | sprintf(info->node.dev_name, "scsi%d", host->host_no); | ||
191 | link->dev_node = &info->node; | ||
192 | info->host = host; | 187 | info->host = host; |
193 | 188 | ||
194 | return 0; | 189 | return 0; |
diff --git a/drivers/scsi/pcmcia/fdomain_stub.c b/drivers/scsi/pcmcia/fdomain_stub.c index 914040684079..21b141151dfc 100644 --- a/drivers/scsi/pcmcia/fdomain_stub.c +++ b/drivers/scsi/pcmcia/fdomain_stub.c | |||
@@ -63,7 +63,6 @@ MODULE_LICENSE("Dual MPL/GPL"); | |||
63 | 63 | ||
64 | typedef struct scsi_info_t { | 64 | typedef struct scsi_info_t { |
65 | struct pcmcia_device *p_dev; | 65 | struct pcmcia_device *p_dev; |
66 | dev_node_t node; | ||
67 | struct Scsi_Host *host; | 66 | struct Scsi_Host *host; |
68 | } scsi_info_t; | 67 | } scsi_info_t; |
69 | 68 | ||
@@ -88,7 +87,6 @@ static int fdomain_probe(struct pcmcia_device *link) | |||
88 | link->io.NumPorts1 = 0x10; | 87 | link->io.NumPorts1 = 0x10; |
89 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; | 88 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; |
90 | link->io.IOAddrLines = 10; | 89 | link->io.IOAddrLines = 10; |
91 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE; | ||
92 | link->conf.Attributes = CONF_ENABLE_IRQ; | 90 | link->conf.Attributes = CONF_ENABLE_IRQ; |
93 | link->conf.IntType = INT_MEMORY_AND_IO; | 91 | link->conf.IntType = INT_MEMORY_AND_IO; |
94 | link->conf.Present = PRESENT_OPTION; | 92 | link->conf.Present = PRESENT_OPTION; |
@@ -133,8 +131,7 @@ static int fdomain_config(struct pcmcia_device *link) | |||
133 | if (ret) | 131 | if (ret) |
134 | goto failed; | 132 | goto failed; |
135 | 133 | ||
136 | ret = pcmcia_request_irq(link, &link->irq); | 134 | if (!link->irq) |
137 | if (ret) | ||
138 | goto failed; | 135 | goto failed; |
139 | ret = pcmcia_request_configuration(link, &link->conf); | 136 | ret = pcmcia_request_configuration(link, &link->conf); |
140 | if (ret) | 137 | if (ret) |
@@ -144,7 +141,7 @@ static int fdomain_config(struct pcmcia_device *link) | |||
144 | release_region(link->io.BasePort1, link->io.NumPorts1); | 141 | release_region(link->io.BasePort1, link->io.NumPorts1); |
145 | 142 | ||
146 | /* Set configuration options for the fdomain driver */ | 143 | /* Set configuration options for the fdomain driver */ |
147 | sprintf(str, "%d,%d", link->io.BasePort1, link->irq.AssignedIRQ); | 144 | sprintf(str, "%d,%d", link->io.BasePort1, link->irq); |
148 | fdomain_setup(str); | 145 | fdomain_setup(str); |
149 | 146 | ||
150 | host = __fdomain_16x0_detect(&fdomain_driver_template); | 147 | host = __fdomain_16x0_detect(&fdomain_driver_template); |
@@ -157,8 +154,6 @@ static int fdomain_config(struct pcmcia_device *link) | |||
157 | goto failed; | 154 | goto failed; |
158 | scsi_scan_host(host); | 155 | scsi_scan_host(host); |
159 | 156 | ||
160 | sprintf(info->node.dev_name, "scsi%d", host->host_no); | ||
161 | link->dev_node = &info->node; | ||
162 | info->host = host; | 157 | info->host = host; |
163 | 158 | ||
164 | return 0; | 159 | return 0; |
diff --git a/drivers/scsi/pcmcia/nsp_cs.c b/drivers/scsi/pcmcia/nsp_cs.c index 021246454872..0f0e112c3f8e 100644 --- a/drivers/scsi/pcmcia/nsp_cs.c +++ b/drivers/scsi/pcmcia/nsp_cs.c | |||
@@ -1563,13 +1563,6 @@ static int nsp_cs_probe(struct pcmcia_device *link) | |||
1563 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; | 1563 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; |
1564 | link->io.IOAddrLines = 10; /* not used */ | 1564 | link->io.IOAddrLines = 10; /* not used */ |
1565 | 1565 | ||
1566 | /* Interrupt setup */ | ||
1567 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE; | ||
1568 | |||
1569 | /* Interrupt handler */ | ||
1570 | link->irq.Handler = &nspintr; | ||
1571 | link->irq.Attributes |= IRQF_SHARED; | ||
1572 | |||
1573 | /* General socket configuration */ | 1566 | /* General socket configuration */ |
1574 | link->conf.Attributes = CONF_ENABLE_IRQ; | 1567 | link->conf.Attributes = CONF_ENABLE_IRQ; |
1575 | link->conf.IntType = INT_MEMORY_AND_IO; | 1568 | link->conf.IntType = INT_MEMORY_AND_IO; |
@@ -1646,8 +1639,7 @@ static int nsp_cs_config_check(struct pcmcia_device *p_dev, | |||
1646 | } | 1639 | } |
1647 | 1640 | ||
1648 | /* Do we need to allocate an interrupt? */ | 1641 | /* Do we need to allocate an interrupt? */ |
1649 | if (cfg->irq.IRQInfo1 || dflt->irq.IRQInfo1) | 1642 | p_dev->conf.Attributes |= CONF_ENABLE_IRQ; |
1650 | p_dev->conf.Attributes |= CONF_ENABLE_IRQ; | ||
1651 | 1643 | ||
1652 | /* IO window settings */ | 1644 | /* IO window settings */ |
1653 | p_dev->io.NumPorts1 = p_dev->io.NumPorts2 = 0; | 1645 | p_dev->io.NumPorts1 = p_dev->io.NumPorts2 = 0; |
@@ -1720,10 +1712,8 @@ static int nsp_cs_config(struct pcmcia_device *link) | |||
1720 | if (ret) | 1712 | if (ret) |
1721 | goto cs_failed; | 1713 | goto cs_failed; |
1722 | 1714 | ||
1723 | if (link->conf.Attributes & CONF_ENABLE_IRQ) { | 1715 | if (pcmcia_request_irq(link, nspintr)) |
1724 | if (pcmcia_request_irq(link, &link->irq)) | 1716 | goto cs_failed; |
1725 | goto cs_failed; | ||
1726 | } | ||
1727 | 1717 | ||
1728 | ret = pcmcia_request_configuration(link, &link->conf); | 1718 | ret = pcmcia_request_configuration(link, &link->conf); |
1729 | if (ret) | 1719 | if (ret) |
@@ -1741,7 +1731,7 @@ static int nsp_cs_config(struct pcmcia_device *link) | |||
1741 | /* Set port and IRQ */ | 1731 | /* Set port and IRQ */ |
1742 | data->BaseAddress = link->io.BasePort1; | 1732 | data->BaseAddress = link->io.BasePort1; |
1743 | data->NumAddress = link->io.NumPorts1; | 1733 | data->NumAddress = link->io.NumPorts1; |
1744 | data->IrqNumber = link->irq.AssignedIRQ; | 1734 | data->IrqNumber = link->irq; |
1745 | 1735 | ||
1746 | nsp_dbg(NSP_DEBUG_INIT, "I/O[0x%x+0x%x] IRQ %d", | 1736 | nsp_dbg(NSP_DEBUG_INIT, "I/O[0x%x+0x%x] IRQ %d", |
1747 | data->BaseAddress, data->NumAddress, data->IrqNumber); | 1737 | data->BaseAddress, data->NumAddress, data->IrqNumber); |
@@ -1764,8 +1754,6 @@ static int nsp_cs_config(struct pcmcia_device *link) | |||
1764 | 1754 | ||
1765 | scsi_scan_host(host); | 1755 | scsi_scan_host(host); |
1766 | 1756 | ||
1767 | snprintf(info->node.dev_name, sizeof(info->node.dev_name), "scsi%d", host->host_no); | ||
1768 | link->dev_node = &info->node; | ||
1769 | info->host = host; | 1757 | info->host = host; |
1770 | 1758 | ||
1771 | /* Finally, report what we've done */ | 1759 | /* Finally, report what we've done */ |
@@ -1775,7 +1763,7 @@ static int nsp_cs_config(struct pcmcia_device *link) | |||
1775 | printk(", Vpp %d.%d", link->conf.Vpp/10, link->conf.Vpp%10); | 1763 | printk(", Vpp %d.%d", link->conf.Vpp/10, link->conf.Vpp%10); |
1776 | } | 1764 | } |
1777 | if (link->conf.Attributes & CONF_ENABLE_IRQ) { | 1765 | if (link->conf.Attributes & CONF_ENABLE_IRQ) { |
1778 | printk(", irq %d", link->irq.AssignedIRQ); | 1766 | printk(", irq %d", link->irq); |
1779 | } | 1767 | } |
1780 | if (link->io.NumPorts1) { | 1768 | if (link->io.NumPorts1) { |
1781 | printk(", io 0x%04x-0x%04x", link->io.BasePort1, | 1769 | printk(", io 0x%04x-0x%04x", link->io.BasePort1, |
@@ -1823,7 +1811,6 @@ static void nsp_cs_release(struct pcmcia_device *link) | |||
1823 | if (info->host != NULL) { | 1811 | if (info->host != NULL) { |
1824 | scsi_remove_host(info->host); | 1812 | scsi_remove_host(info->host); |
1825 | } | 1813 | } |
1826 | link->dev_node = NULL; | ||
1827 | 1814 | ||
1828 | if (link->win) { | 1815 | if (link->win) { |
1829 | if (data != NULL) { | 1816 | if (data != NULL) { |
diff --git a/drivers/scsi/pcmcia/nsp_cs.h b/drivers/scsi/pcmcia/nsp_cs.h index 8c61a4fe1db9..d68c9f267c5e 100644 --- a/drivers/scsi/pcmcia/nsp_cs.h +++ b/drivers/scsi/pcmcia/nsp_cs.h | |||
@@ -224,7 +224,6 @@ | |||
224 | typedef struct scsi_info_t { | 224 | typedef struct scsi_info_t { |
225 | struct pcmcia_device *p_dev; | 225 | struct pcmcia_device *p_dev; |
226 | struct Scsi_Host *host; | 226 | struct Scsi_Host *host; |
227 | dev_node_t node; | ||
228 | int stop; | 227 | int stop; |
229 | } scsi_info_t; | 228 | } scsi_info_t; |
230 | 229 | ||
diff --git a/drivers/scsi/pcmcia/qlogic_stub.c b/drivers/scsi/pcmcia/qlogic_stub.c index f85f094870b4..f0fc6baed9fc 100644 --- a/drivers/scsi/pcmcia/qlogic_stub.c +++ b/drivers/scsi/pcmcia/qlogic_stub.c | |||
@@ -82,7 +82,6 @@ static struct scsi_host_template qlogicfas_driver_template = { | |||
82 | 82 | ||
83 | typedef struct scsi_info_t { | 83 | typedef struct scsi_info_t { |
84 | struct pcmcia_device *p_dev; | 84 | struct pcmcia_device *p_dev; |
85 | dev_node_t node; | ||
86 | struct Scsi_Host *host; | 85 | struct Scsi_Host *host; |
87 | unsigned short manf_id; | 86 | unsigned short manf_id; |
88 | } scsi_info_t; | 87 | } scsi_info_t; |
@@ -161,7 +160,6 @@ static int qlogic_probe(struct pcmcia_device *link) | |||
161 | link->io.NumPorts1 = 16; | 160 | link->io.NumPorts1 = 16; |
162 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; | 161 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; |
163 | link->io.IOAddrLines = 10; | 162 | link->io.IOAddrLines = 10; |
164 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE; | ||
165 | link->conf.Attributes = CONF_ENABLE_IRQ; | 163 | link->conf.Attributes = CONF_ENABLE_IRQ; |
166 | link->conf.IntType = INT_MEMORY_AND_IO; | 164 | link->conf.IntType = INT_MEMORY_AND_IO; |
167 | link->conf.Present = PRESENT_OPTION; | 165 | link->conf.Present = PRESENT_OPTION; |
@@ -209,8 +207,7 @@ static int qlogic_config(struct pcmcia_device * link) | |||
209 | if (ret) | 207 | if (ret) |
210 | goto failed; | 208 | goto failed; |
211 | 209 | ||
212 | ret = pcmcia_request_irq(link, &link->irq); | 210 | if (!link->irq) |
213 | if (ret) | ||
214 | goto failed; | 211 | goto failed; |
215 | 212 | ||
216 | ret = pcmcia_request_configuration(link, &link->conf); | 213 | ret = pcmcia_request_configuration(link, &link->conf); |
@@ -227,18 +224,16 @@ static int qlogic_config(struct pcmcia_device * link) | |||
227 | /* The KXL-810AN has a bigger IO port window */ | 224 | /* The KXL-810AN has a bigger IO port window */ |
228 | if (link->io.NumPorts1 == 32) | 225 | if (link->io.NumPorts1 == 32) |
229 | host = qlogic_detect(&qlogicfas_driver_template, link, | 226 | host = qlogic_detect(&qlogicfas_driver_template, link, |
230 | link->io.BasePort1 + 16, link->irq.AssignedIRQ); | 227 | link->io.BasePort1 + 16, link->irq); |
231 | else | 228 | else |
232 | host = qlogic_detect(&qlogicfas_driver_template, link, | 229 | host = qlogic_detect(&qlogicfas_driver_template, link, |
233 | link->io.BasePort1, link->irq.AssignedIRQ); | 230 | link->io.BasePort1, link->irq); |
234 | 231 | ||
235 | if (!host) { | 232 | if (!host) { |
236 | printk(KERN_INFO "%s: no SCSI devices found\n", qlogic_name); | 233 | printk(KERN_INFO "%s: no SCSI devices found\n", qlogic_name); |
237 | goto failed; | 234 | goto failed; |
238 | } | 235 | } |
239 | 236 | ||
240 | sprintf(info->node.dev_name, "scsi%d", host->host_no); | ||
241 | link->dev_node = &info->node; | ||
242 | info->host = host; | 237 | info->host = host; |
243 | 238 | ||
244 | return 0; | 239 | return 0; |
@@ -258,7 +253,7 @@ static void qlogic_release(struct pcmcia_device *link) | |||
258 | 253 | ||
259 | scsi_remove_host(info->host); | 254 | scsi_remove_host(info->host); |
260 | 255 | ||
261 | free_irq(link->irq.AssignedIRQ, info->host); | 256 | free_irq(link->irq, info->host); |
262 | pcmcia_disable_device(link); | 257 | pcmcia_disable_device(link); |
263 | 258 | ||
264 | scsi_host_put(info->host); | 259 | scsi_host_put(info->host); |
diff --git a/drivers/scsi/pcmcia/sym53c500_cs.c b/drivers/scsi/pcmcia/sym53c500_cs.c index e7564d8f0cbf..a51164171179 100644 --- a/drivers/scsi/pcmcia/sym53c500_cs.c +++ b/drivers/scsi/pcmcia/sym53c500_cs.c | |||
@@ -191,7 +191,6 @@ | |||
191 | 191 | ||
192 | struct scsi_info_t { | 192 | struct scsi_info_t { |
193 | struct pcmcia_device *p_dev; | 193 | struct pcmcia_device *p_dev; |
194 | dev_node_t node; | ||
195 | struct Scsi_Host *host; | 194 | struct Scsi_Host *host; |
196 | unsigned short manf_id; | 195 | unsigned short manf_id; |
197 | }; | 196 | }; |
@@ -719,8 +718,7 @@ SYM53C500_config(struct pcmcia_device *link) | |||
719 | if (ret) | 718 | if (ret) |
720 | goto failed; | 719 | goto failed; |
721 | 720 | ||
722 | ret = pcmcia_request_irq(link, &link->irq); | 721 | if (!link->irq) |
723 | if (ret) | ||
724 | goto failed; | 722 | goto failed; |
725 | 723 | ||
726 | ret = pcmcia_request_configuration(link, &link->conf); | 724 | ret = pcmcia_request_configuration(link, &link->conf); |
@@ -752,7 +750,7 @@ SYM53C500_config(struct pcmcia_device *link) | |||
752 | * 0x320, 0x330, 0x340, 0x350 | 750 | * 0x320, 0x330, 0x340, 0x350 |
753 | */ | 751 | */ |
754 | port_base = link->io.BasePort1; | 752 | port_base = link->io.BasePort1; |
755 | irq_level = link->irq.AssignedIRQ; | 753 | irq_level = link->irq; |
756 | 754 | ||
757 | 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", |
758 | port_base, irq_level, USE_FAST_PIO);) | 756 | port_base, irq_level, USE_FAST_PIO);) |
@@ -793,8 +791,6 @@ SYM53C500_config(struct pcmcia_device *link) | |||
793 | */ | 791 | */ |
794 | data->fast_pio = USE_FAST_PIO; | 792 | data->fast_pio = USE_FAST_PIO; |
795 | 793 | ||
796 | sprintf(info->node.dev_name, "scsi%d", host->host_no); | ||
797 | link->dev_node = &info->node; | ||
798 | info->host = host; | 794 | info->host = host; |
799 | 795 | ||
800 | if (scsi_add_host(host, NULL)) | 796 | if (scsi_add_host(host, NULL)) |
@@ -866,7 +862,6 @@ SYM53C500_probe(struct pcmcia_device *link) | |||
866 | link->io.NumPorts1 = 16; | 862 | link->io.NumPorts1 = 16; |
867 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; | 863 | link->io.Attributes1 = IO_DATA_PATH_WIDTH_AUTO; |
868 | link->io.IOAddrLines = 10; | 864 | link->io.IOAddrLines = 10; |
869 | link->irq.Attributes = IRQ_TYPE_EXCLUSIVE; | ||
870 | link->conf.Attributes = CONF_ENABLE_IRQ; | 865 | link->conf.Attributes = CONF_ENABLE_IRQ; |
871 | link->conf.IntType = INT_MEMORY_AND_IO; | 866 | link->conf.IntType = INT_MEMORY_AND_IO; |
872 | 867 | ||
diff --git a/drivers/scsi/zorro7xx.c b/drivers/scsi/zorro7xx.c index 105449c15fa9..e17764d71476 100644 --- a/drivers/scsi/zorro7xx.c +++ b/drivers/scsi/zorro7xx.c | |||
@@ -69,6 +69,7 @@ static struct zorro_device_id zorro7xx_zorro_tbl[] __devinitdata = { | |||
69 | }, | 69 | }, |
70 | { 0 } | 70 | { 0 } |
71 | }; | 71 | }; |
72 | MODULE_DEVICE_TABLE(zorro, zorro7xx_zorro_tbl); | ||
72 | 73 | ||
73 | static int __devinit zorro7xx_init_one(struct zorro_dev *z, | 74 | static int __devinit zorro7xx_init_one(struct zorro_dev *z, |
74 | const struct zorro_device_id *ent) | 75 | const struct zorro_device_id *ent) |