|
@@ -114,7 +114,7 @@ MODULE_DESCRIPTION("NCR Dual700 SCSI Driver");
|
|
MODULE_LICENSE("GPL");
|
|
MODULE_LICENSE("GPL");
|
|
module_param(NCR_D700, charp, 0);
|
|
module_param(NCR_D700, charp, 0);
|
|
|
|
|
|
-static __u8 __initdata id_array[2*(MCA_MAX_SLOT_NR + 1)] =
|
|
|
|
|
|
+static __u8 __devinitdata id_array[2*(MCA_MAX_SLOT_NR + 1)] =
|
|
{ [0 ... 2*(MCA_MAX_SLOT_NR + 1)-1] = 7 };
|
|
{ [0 ... 2*(MCA_MAX_SLOT_NR + 1)-1] = 7 };
|
|
|
|
|
|
#ifdef MODULE
|
|
#ifdef MODULE
|
|
@@ -173,7 +173,7 @@ struct NCR_D700_private {
|
|
char pad;
|
|
char pad;
|
|
};
|
|
};
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static int __devinit
|
|
NCR_D700_probe_one(struct NCR_D700_private *p, int siop, int irq,
|
|
NCR_D700_probe_one(struct NCR_D700_private *p, int siop, int irq,
|
|
int slot, u32 region, int differential)
|
|
int slot, u32 region, int differential)
|
|
{
|
|
{
|
|
@@ -243,7 +243,7 @@ NCR_D700_intr(int irq, void *data, struct pt_regs *regs)
|
|
* essentially connectecd to the MCA bus independently, it is easier
|
|
* essentially connectecd to the MCA bus independently, it is easier
|
|
* to set them up as two separate host adapters, rather than one
|
|
* to set them up as two separate host adapters, rather than one
|
|
* adapter with two channels */
|
|
* adapter with two channels */
|
|
-static int
|
|
|
|
|
|
+static int __devinit
|
|
NCR_D700_probe(struct device *dev)
|
|
NCR_D700_probe(struct device *dev)
|
|
{
|
|
{
|
|
struct NCR_D700_private *p;
|
|
struct NCR_D700_private *p;
|
|
@@ -329,7 +329,7 @@ NCR_D700_probe(struct device *dev)
|
|
for (i = 0; i < 2; i++) {
|
|
for (i = 0; i < 2; i++) {
|
|
int err;
|
|
int err;
|
|
|
|
|
|
- if ((err = NCR_D700_probe_one(p, i, slot, irq,
|
|
|
|
|
|
+ if ((err = NCR_D700_probe_one(p, i, irq, slot,
|
|
offset_addr + (0x80 * i),
|
|
offset_addr + (0x80 * i),
|
|
differential)) != 0)
|
|
differential)) != 0)
|
|
printk("D700: SIOP%d: probe failed, error = %d\n",
|
|
printk("D700: SIOP%d: probe failed, error = %d\n",
|
|
@@ -349,7 +349,7 @@ NCR_D700_probe(struct device *dev)
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-static void
|
|
|
|
|
|
+static void __devexit
|
|
NCR_D700_remove_one(struct Scsi_Host *host)
|
|
NCR_D700_remove_one(struct Scsi_Host *host)
|
|
{
|
|
{
|
|
scsi_remove_host(host);
|
|
scsi_remove_host(host);
|
|
@@ -359,7 +359,7 @@ NCR_D700_remove_one(struct Scsi_Host *host)
|
|
release_region(host->base, 64);
|
|
release_region(host->base, 64);
|
|
}
|
|
}
|
|
|
|
|
|
-static int
|
|
|
|
|
|
+static int __devexit
|
|
NCR_D700_remove(struct device *dev)
|
|
NCR_D700_remove(struct device *dev)
|
|
{
|
|
{
|
|
struct NCR_D700_private *p = dev_get_drvdata(dev);
|
|
struct NCR_D700_private *p = dev_get_drvdata(dev);
|
|
@@ -380,7 +380,7 @@ static struct mca_driver NCR_D700_driver = {
|
|
.name = "NCR_D700",
|
|
.name = "NCR_D700",
|
|
.bus = &mca_bus_type,
|
|
.bus = &mca_bus_type,
|
|
.probe = NCR_D700_probe,
|
|
.probe = NCR_D700_probe,
|
|
- .remove = NCR_D700_remove,
|
|
|
|
|
|
+ .remove = __devexit_p(NCR_D700_remove),
|
|
},
|
|
},
|
|
};
|
|
};
|
|
|
|
|