Subject: some perplexity
To: tech-kern@NetBSD.ORG <>
From: Dante Profeta <>
List: tech-kern
Date: 09/25/1998 15:08:51
Hi folks

I've just implemented a driver for the AdvanSys Ultra Wide SCSI boards,
but before I commit the sources I need some suggestions:

Actually these boards uses a completely different chipset than the
narrow boards, so the driver implementation is completely different as
Thus, at this time I've implemented it as a separate driver.

Merging the two drivers would led in a messy code: two different kinds
of softc and ccb structures should be merged together using "union"s.
Personally I hate unions, but I think it is objectively deprecable using
unions in a structure that must be allocated in a DMA memory; The
interfacing code with the scsi layer (actually "adv.c") would result
full of conditional operators for setting up and building the requests
and for calling the relative drivers functions.

On the other hand these two drivers would be the only ones in the whole
system having the same manufacturer and the same bus architecture.

I'd like to know what do you think about it. I hope I have been able to
explain my perplexity...