[openbeos] SCSI support

  • From: "Ithamar R. Adema" <iradema@xxxxxxxxx>
  • To: openbeos@xxxxxxxxxxxxx
  • Date: Tue, 04 Jul 2006 00:02:38 +0200

Hello,

I recently added the buslogic and symbios SCSI drivers to the
repository. They use the R5 SCSI bus manager interface. Now, since Haiku
uses a disk storage API layer based on Thomas' new IDE replacement
driver (+replacement driver model), the SCSI bus manager interface is
_completely_ different (for example, the CCB structure used is named
different, has different fields, etc).

To get any of the for R5 coded SCSI modules to work under current Haiku
we need to either:

1) Build an R5 SCSI wrapper (like ZETA has)
2) Depreciate the R5 SCSI bus manager interface.

Now I know Haiku was going for maximum binary compatibility but in this
case I would vote against option 1. From experience I can say that it is
quite a hack, and we've got source for 3 out of 4 of the SCSI modules in
SVN now (one of those is the usb_scsi module, which is the only 3rd
party SCSI module that I'm aware of) so we would loose little.

The only thing is, either we make the driver _really_ messy with all
kinds of _BEOS_R5_COMPATIBILITY_ #ifdef's, or the code in SVN would
become Haiku specific (no longer able of providing R5-compatible builds
of those modules).

Am I overlooking another possible option? And if not, are willing to
sacrifice our R5 packages built from svn (for the SCSI modules only)?

Opinions please :)

Regards,

Ithamar.



Other related posts: