[146] in linux-scsi channel archive
Re: SCSI defines for pass-thru commands
daemon@ATHENA.MIT.EDU (Michael Neuffer)
Sat Apr 15 10:05:28 1995
From: Michael Neuffer <neuffer@goofy.zdv.Uni-Mainz.de>
To: Linus.Torvalds@cs.Helsinki.FI (Linus Torvalds)
Date: Sat, 15 Apr 95 14:53:30 GMT-1:00
Cc: drew@boulder.openware.com, jfree@caldera.com, linux-scsi@vger.rutgers.edu,
linux-kernel@vger.rutgers.edu
In-Reply-To: <199504140659.JAA18109@keos.Helsinki.FI>; from "Linus Torvalds" at Apr 14, 95 9:59 am
X-Confirm-Reading-To: neuffer@goofy.zdv.uni-mainz.de
> I'd actually want all the "high-level" SCSI header files under
> <linux/xxx.h> (or we could make it <scsi/xxx.h>, but I doubt it really
> needs a separate directory). The reason is kernel drivers: in the
> not-too-far future we'll find ourselves with different low-level scsi
> drivers for different architectures (m68k, sparc, whatever), and I don't
> want to keep them all under linux/drivers/scsi/xxx. In fact, I'd want
> something like "linux/drivers/pci/scsi" and "linux/drivers/xxx/scsi" for
> different bus systems (with linux/drivers/scsi only containing the
> high-level scsi interface).
I don't know if this structure would be such a good idea. There
are a number of scsi drivers which support more than bussystem
and can be used with more than one architecture.
My eata_dma driver for example supports ISA, EISA and PCI bussystems
and is currently in use on Intel architecture based machines.
However I also plan to add support to the driver for the Mips and Alpha
machines (which not all use PCI but also EISA as bussystem).
I will add this as time permits and I get a machine in my
fingers. It will probably not take very long for Mips because Ralf
has always access to his Mips machine.
So, putting the eata_dma driver under linux/drivers/pci/scsi or
linux/drivers/arch/scsi is not possible if you don't wan't to have
multiple copies of exactly the same driver.
It might be more useful to go for something like the following:
linux/drivers/scsi/<system independent high and midlevel code>
linux/drivers/scsi/<arch>/<system dependent lowlevel drivers>
linux/drivers/scsi/generic/<system independend lowlevel drivers>
The eata_dma and IMHO the NCR and qlogic drivers would be candidates
for the generic subdirectory.
Mike