diff options
| author | James Bottomley <jejb@mulgrave.(none)> | 2005-01-17 19:04:34 -0800 |
|---|---|---|
| committer | James Bottomley <jejb@mulgrave.(none)> | 2005-01-17 19:04:34 -0800 |
| commit | 14cb343ca16fdb7a91fdf1556d72b293fad94e6d (patch) | |
| tree | 04e49f54a36401810ebc2fd8e71b9303c3f33105 /drivers/base/Makefile | |
| parent | 06ff5a987ec67d2117c5a285e523a7c1cf8609f9 (diff) | |
add a generic device transport class
Transport classes are a mechanism for providing transport specific
services to drivers that the more generic command processing layers
don't care about. A good example is the SCSI mid-layer not caring about
parallel transfer characteristics or providing services for domain
validation. Transport classes usually provide a transport specific API
at one end and a class interface at the other (for the user to
interrogate and set parameters).
Originally, transport classes were SCSI specific. However, this code is
generic to the device model. As long as you have a generic device
representing a storage interface (or device) then you can attach a
transport class to it. The new code also allows an arbitrary number of
transport classes to be attached to a device, unlike SCSI which only
allowed one. This is going to be important for things like SATA and SAS
which share the PHY layer (and hence should be capable of sharing a PHY
transport class).
The generic transport class is designed to operate identically to the
current SCSI transport classes, except that it uses generic devices
rather than SCSI devices.
We have five events:
setup
add
-----
configure
-----
remove
destroy
With callbacks for setup configure and remove.
There's also an anonymous transport class which can only respond to
configure events (and which has no attributes).
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/base/Makefile')
| -rw-r--r-- | drivers/base/Makefile | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/base/Makefile b/drivers/base/Makefile index f046fa4dfc6c..6662b545e0a9 100644 --- a/drivers/base/Makefile +++ b/drivers/base/Makefile @@ -3,7 +3,7 @@ obj-y := core.o sys.o interface.o bus.o \ driver.o class.o class_simple.o platform.o \ cpu.o firmware.o init.o map.o dmapool.o \ - attribute_container.o + attribute_container.o transport_class.o obj-y += power/ obj-$(CONFIG_FW_LOADER) += firmware_class.o obj-$(CONFIG_NUMA) += node.o |
