Upcoming plans for CAM

Bernard Buri berni at ask-us.at
Fri Apr 20 18:59:39 UTC 2007


Scott Long wrote:
> All,
> 
> Now that the MPSAFE work is mostly done and settled, it's time to move
> onto the next phase of the overall work.
> 
this is great news!
I've been working with the CAM layer in my last project, and I loved it. 
It is the most advanced scsi stack I've seen, so I'm glad it gets some 
refinement now.

> ...
> SATA and IDE transports, ATA protocol
> -------------------------------------
> 
> The transport modularization work described above will allow non-SCSI
> transports to be easily added.  So, the next step is the long-promised
> unification with IDE and SATA.  Instead of hacks like atapicam and
> atacam that try to force IDE/SATA into the SCSI model, a whole new
> subtransport will be written that understands the topology and nature of
> the devices, as well as natively understanding the ATA command set.
> 
> There are still some interesting design questions that need to be
> answered here.  SATA controllers essentially use a star topology instead
> of a bus topology.  So does it make sense to treat all devices as each
> having a private bus, or is it better to have a single virtual bus?
> Also, ATAPI devices basically speak the SCSI protocol so they'll attach
> to things like the 'cd' driver, but ATA disks speak ATA, which is very
> different from SCSI.  Should they get their own unique peripheral
> device, or should they be part of the 'da' device?  If they get their
> own peripheral device, should they still generate '/dev/da' device
> nodes, or should they retain the current '/dev/ad' naming?
> 
I think that for the user, the device name doesn't really make a 
difference. Like with network interface cards, it is not a problem that 
some of them show up as fxp*, while others show up as myk*. As long as 
there is not a separate fxpconfig and mykconfig tool.

I think for the way cam is desigend right now, it is more intuitive to 
have separate device names.

In fact, I don't know much about ATA disks. I recognized recently, that 
SATA disks show up as /dev/sdX on linux while PATA disks show up as 
/dev/hdX. And SATA disks are said to be compatible to serial attached 
scsi. Does it mean that only PATA disks will be /dev/ad* ?



More information about the freebsd-scsi mailing list