Re: devicefs & sleep support for IDE

From: Pavel Machek (pavel@ucw.cz)
Date: Mon Sep 23 2002 - 16:24:11 EST


Hi!

> > New patch, rediffed against 2.5.36.
> >
> > More patches will be needed to support IDE properly (like DVD burners
> > you mentioned), but this is known to fix data corruption. It has zero
> > impact on actual I/O. It affects initialization and suspend only.
> > Please apply this time.
>
> Basic driver model support for IDE is in 2.5.38. This just involves
> creating an IDE bus type, and registering drives as devices. I.e. there is
> no driver set for any of the drives.

Yep, I saw the support and it confused me a lot.

Questions: is it possible that in hwif_register you don't need to
initialize parent?

Where is device_put of hwif->gendev? I miss it.

> I do have a couple of comments though.
>
> > +static struct device_driver idedisk_devdrv = {
> > + .lock = RW_LOCK_UNLOCKED,
> > + .suspend = idedisk_suspend,
> > + .resume = idedisk_resume,
> > +};
>
> You don't need to initialize .lock. But, you do need a .name and .bus. The
> driver won't even be registered unless .bus is set.
>
> > @@ -835,6 +837,7 @@
> > int crc_count; /* crc counter to reduce drive speed */
> > struct list_head list;
> > struct gendisk *disk;
> > + struct device device; /* for driverfs */
> > } ide_drive_t;
>
> There is a struct device in struct gendisk; that should suffice. But note
> that you may have to do an extra conversion in order to access it in the
> driver callbacks.

Thanx for info.

Ouch. There are actually two devices in struct gendisk. I choosed
disk_dev. Was it right?

> > + struct device device; /* for devicefs */
>
> Please: it's driver model support, not driverfs. And devicefs does not
> even exist. :)

Okay, okay ;-).
                                                                Pavel

-- 
Casualities in World Trade Center: ~3k dead inside the building,
cryptography in U.S.A. and free speech in Czech Republic.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Sep 23 2002 - 22:00:40 EST