bvme6000_scsi.c (bc06cffdec85d487c77109dffcd2f285bdc502d3) bvme6000_scsi.c (3ac709c113daa19e375e8b0fef318fab1713f687)
1/*
2 * Detection routine for the NCR53c710 based BVME6000 SCSI Controllers for Linux.
3 *
4 * Based on work by Alan Hourihane and Kars de Jong
5 *
6 * Rewritten to use 53c700.c by Richard Hirst <richard@sleepie.demon.co.uk>
7 */
8

--- 60 unchanged lines hidden (view full) ---

69 host->this_id = 7;
70 host->irq = BVME_IRQ_SCSI;
71 if (request_irq(BVME_IRQ_SCSI, NCR_700_intr, 0, "bvme6000-scsi",
72 host)) {
73 printk(KERN_ERR "bvme6000-scsi: request_irq failed\n");
74 goto out_put_host;
75 }
76
1/*
2 * Detection routine for the NCR53c710 based BVME6000 SCSI Controllers for Linux.
3 *
4 * Based on work by Alan Hourihane and Kars de Jong
5 *
6 * Rewritten to use 53c700.c by Richard Hirst <richard@sleepie.demon.co.uk>
7 */
8

--- 60 unchanged lines hidden (view full) ---

69 host->this_id = 7;
70 host->irq = BVME_IRQ_SCSI;
71 if (request_irq(BVME_IRQ_SCSI, NCR_700_intr, 0, "bvme6000-scsi",
72 host)) {
73 printk(KERN_ERR "bvme6000-scsi: request_irq failed\n");
74 goto out_put_host;
75 }
76
77 dev_set_drvdata(dev, host);
77 scsi_scan_host(host);
78
79 return 0;
80
81 out_put_host:
82 scsi_host_put(host);
83 out_free:
84 kfree(hostdata);
85 out:
86 return -ENODEV;
87}
88
89static __devexit int
90bvme6000_device_remove(struct device *dev)
91{
78 scsi_scan_host(host);
79
80 return 0;
81
82 out_put_host:
83 scsi_host_put(host);
84 out_free:
85 kfree(hostdata);
86 out:
87 return -ENODEV;
88}
89
90static __devexit int
91bvme6000_device_remove(struct device *dev)
92{
92 struct Scsi_Host *host = dev_to_shost(dev);
93 struct Scsi_Host *host = dev_get_drvdata(dev);
93 struct NCR_700_Host_Parameters *hostdata = shost_priv(host);
94
95 scsi_remove_host(host);
96 NCR_700_release(host);
97 kfree(hostdata);
98 free_irq(host->irq, host);
99
100 return 0;

--- 35 unchanged lines hidden ---
94 struct NCR_700_Host_Parameters *hostdata = shost_priv(host);
95
96 scsi_remove_host(host);
97 NCR_700_release(host);
98 kfree(hostdata);
99 free_irq(host->irq, host);
100
101 return 0;

--- 35 unchanged lines hidden ---