*BSD News Article 22000


Return to BSD News archive

Newsgroups: comp.os.386bsd.apps
Path: sserve!newshost.anu.edu.au!munnari.oz.au!spool.mu.edu!uwm.edu!cs.utexas.edu!uunet!world!hd
From: hd@world.std.com (HD Associates)
Subject: User SCSI commands (was Re: Reading audio data from CDs)
Message-ID: <CEJ3Gt.59B@world.std.com>
Organization: The World Public Access UNIX, Brookline, MA
References: <CE7pyo.8Fn@sztaki.hu> <hastyCE8DFB.64u@netcom.com> <1993Oct7.034514.25839@fcom.cc.utah.edu> <CEIw3t.846@festival.ed.ac.uk>
Date: Thu, 7 Oct 1993 13:14:52 GMT
Lines: 48

Let me try again.

In article <CEIw3t.846@festival.ed.ac.uk>,
Richard Tobin <richard@castle.ed.ac.uk> wrote:
>
>jmclaugh@bnr.ca posted an article to comp.periphs.scsi advertising an
>MSDOS program he'd written to do this.  I've mailed him to ask how it's
>done.
>
>My plan for implementing this under BSD was not to write a special
>purpose driver (assuming it needs new SCSI commands) but rather to
>add the ability to issue arbitrary SCSI commands from user programs.
>This looks fairly trivial - just add an ioctl that takes a SCSI command
>and buffer and passes them on to the hardware.  I believe Sun have
>something of this kind already.
>
>Obviously this facility would have to be used with care :-) but it
>would save cluttering up the kernel with support for random vendor-
>specific commands.

This is already done.  Julian's new release will include it out of the
box.  If you need it now, I can give you the patches that provide a
clone of the SGI /dev/scsi interface.

The new release should have both a "native" (read: Uses Julian's data
structures) and the SGI clone (using OPTIONS SGI_DEVSCSI).  Note that
while the SGI clone is there now I can't really promise the native
version because it counts on both mine and Julian's schedule meshing; I
want to wait until he is done changing things to add my changes and I'm
not sure how soon he has promised to release it.

What I would like is a program that takes an abstract
description of the SCSI CDB and data phase and can:

1. Send the CDB to a SCSI device and display results in readable form
and also

2. Generate the code for a C interface, both for inside the kernel and
outside the kernel (these should be able to be the same with some
work).

But I don't have time to do this.

Peter
-- 
Peter Dufault               Real Time Machine Control and Simulation
HD Associates               Voice: 508 433 6936
hd@world.std.com            Fax:   508 433 5267