Jeff Garzik wrote:
But again, please remember that these USB devices are really SCSI
devices. Same for SATA devices. There is a reason they are using the
SCSI layer, and it isn't just because the developers felt like it :)
/somewhat/ true I'm afraid: libata uses the SCSI layer for ATAPI
devices because they are essentially bridges to SCSI devices. It uses
the SCSI layer for ATA devices because the SCSI layer provided a huge
amount of infrastructure that would need to have been otherwise
duplicated, /then/ massaged into coordinating between <jgarzik's ATA
layer> and <SCSI layer> when dealing with ATAPI.
There is also a detail that was of /huge/ value when introducing a new
device class: distro installers automatically work, if you use SCSI. If
you use a new block device type, that behaves differently from other
types and is on a different major, you have to poke the distros into
action or do it yourself.
IOW, it was the high Just Works(tm) value of the SCSI layer when it came
to ATA (not ATAPI) devices.
For the future, ATA will eventually be more independent (though the SCSI
simulator will be available as an option, for compat), but the value is
big enough to put that task on the back-burner.
I remember being told that I didn't understand the problem when I
suggested using ide-scsi for everything and just hiding the transport. I
get great pleasure from having been (mostly) right on that one. I still
have old systems running ZIP drives as scsi...
--
Bill Davidsen <[email protected]>
"We have more to fear from the bungling of the incompetent than from
the machinations of the wicked." - from Slashdot
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]