use_pio_instead:
pci_unmap_sg(hwif->pci_dev, hwif->sg_table, hwif->sg_nents,
hwif->sg_dma_direction);
- hwif->sg_dma_active = 0;
return 0; /* revert to PIO for this request */
}
hwif->name, d->name);
probe_hwif_init(hwif);
+
+ /* Create /proc/ide entries */
+ create_proc_ide_interfaces();
+
return 0;
}
static ide_pci_device_t sgiioc4_chipsets[] __devinitdata = {
{
/* Channel 0 */
- .vendor = PCI_VENDOR_ID_SGI,
- .device = PCI_DEVICE_ID_SGI_IOC4,
.name = "SGIIOC4",
.init_hwif = ide_init_sgiioc4,
.init_dma = ide_dma_sgiioc4,
static int __devinit
sgiioc4_init_one(struct pci_dev *dev, const struct pci_device_id *id)
{
- ide_pci_device_t *d = &sgiioc4_chipsets[id->driver_data];
- if (dev->device != d->device) {
- printk(KERN_ERR "Error in %s(dev 0x%p | id 0x%p )\n",
- __FUNCTION__, (void *) dev, (void *) id);
- BUG();
- }
-
- if (pci_init_sgiioc4(dev, d))
- return 0;
-
+ pci_init_sgiioc4(dev, &sgiioc4_chipsets[id->driver_data]);
return 0;
}
MODULE_DEVICE_TABLE(pci, sgiioc4_pci_tbl);
static struct pci_driver driver = {
- .name = "SGI-IOC4 IDE",
+ .name = "SGI-IOC4_IDE",
.id_table = sgiioc4_pci_tbl,
.probe = sgiioc4_init_one,
};