freebsd-dev/sys/dev/ata
Poul-Henning Kamp bfbb9ce670 Divorce "dev_t" from the "major|minor" bitmap, which is now called
udev_t in the kernel but still called dev_t in userland.

Provide functions to manipulate both types:
        major()         umajor()
        minor()         uminor()
        makedev()       umakedev()
        dev2udev()      udev2dev()

For now they're functions, they will become in-line functions
after one of the next two steps in this process.

Return major/minor/makedev to macro-hood for userland.

Register a name in cdevsw[] for the "filedescriptor" driver.

In the kernel the udev_t appears in places where we have the
major/minor number combination, (ie: a potential device: we
may not have the driver nor the device), like in inodes, vattr,
cdevsw registration and so on, whereas the dev_t appears where
we carry around a reference to a actual device.

In the future the cdevsw and the aliased-from vnode will be hung
directly from the dev_t, along with up to two softc pointers for
the device driver and a few houskeeping bits.  This will essentially
replace the current "alias" check code (same buck, bigger bang).

A little stunt has been provided to try to catch places where the
wrong type is being used (dev_t vs udev_t), if you see something
not working, #undef DEVT_FASCIST in kern/kern_conf.c and see if
it makes a difference.  If it does, please try to track it down
(many hands make light work) or at least try to reproduce it
as simply as possible, and describe how to do that.

Without DEVT_FASCIST I belive this patch is a no-op.

Stylistic/posixoid comments about the userland view of the <sys/*.h>
files welcome now, from userland they now contain the end result.

Next planned step: make all dev_t's refer to the same devsw[] which
means convert BLK's to CHR's at the perimeter of the vnodes and
other places where they enter the game (bootdev, mknod, sysctl).
1999-05-11 19:55:07 +00:00
..
ata-all.c Move the declaration of the interrupt type from the driver structure 1999-05-08 21:59:43 +00:00
ata-all.h Update to use the new-bus framework. No functional changes. 1999-04-18 20:48:15 +00:00
ata-disk.c Divorce "dev_t" from the "major|minor" bitmap, which is now called 1999-05-11 19:55:07 +00:00
ata-disk.h Fourth update to the new ATA/ATAPI driver: 1999-03-28 18:57:20 +00:00
ata-dma.c Update to use the new-bus framework. No functional changes. 1999-04-18 20:48:15 +00:00
atapi-all.c Bring the 'new-bus' to the i386. This extensively changes the way the 1999-04-16 21:22:55 +00:00
atapi-all.h Fourth update to the new ATA/ATAPI driver: 1999-03-28 18:57:20 +00:00
atapi-cd.c Introduce two functions: physread() and physwrite() and use these directly 1999-05-07 07:03:47 +00:00
atapi-cd.h Added driver to support ATAPI floppies ie LS-120 & ZIP drives. 1999-03-03 21:10:29 +00:00
atapi-fd.c Introduce two functions: physread() and physwrite() and use these directly 1999-05-07 07:03:47 +00:00
atapi-fd.h Added driver to support ATAPI floppies ie LS-120 & ZIP drives. 1999-03-03 21:10:29 +00:00
atapi-tape.c Introduce two functions: physread() and physwrite() and use these directly 1999-05-07 07:03:47 +00:00
atapi-tape.h ZIP drives should now be working, I'm not sure about LS120 drives, 1999-03-07 21:49:14 +00:00