return 0;
}
+extern ide_driver_t idedefault_driver;
+
struct kobject *ata_probe(dev_t dev, int *part, void *data)
{
ide_hwif_t *hwif = data;
ide_drive_t *drive = &hwif->drives[unit];
if (!drive->present)
return NULL;
- if (!drive->driver) {
+ if (drive->driver == &idedefault_driver) {
if (drive->media == ide_disk)
(void) request_module("ide-disk");
if (drive->scsi)
if (drive->media == ide_floppy)
(void) request_module("ide-floppy");
}
- if (!drive->driver)
+ if (drive->driver == &idedefault_driver)
return NULL;
*part &= (1 << PARTN_BITS) - 1;
return get_disk(drive->disk);