scsi_cdrom(7) UNIX System V(SCSI Drivers) scsi_cdrom(7)
NAME
scsicdrom - CD-ROM Target Driver
DESCRIPTION
scsicdrom is a SCSI Driver Interface (SDI) compliant CD-ROM target
driver that provides access to one or more CD-ROM drives. Each drive
must be attached to a SCSI Bus that is controlled by an SDI-compliant
host adapter driver [for example, see scsiadaptec(7)].
Access to the particular drive is accomplished via the scsicdrom device
nodes located in /dev/[r]cdrom. Each device node identifies a particular
drive based on the SCSI ID assigned to that drive. The binding between a
device node and a CD-ROM drive is as follows:
/dev/[r]cdrom/cd0 CD-ROM drive with lowest SCSI ID
/dev/[r]cdrom/cd1 CD-ROM drive with next to lowest SCSI ID
and so on through /dev/[r]cdrom/cd7.
Most CD-ROM drives can handle CD-ROM disks that contain two types of
data: informational data and audio data. The scsicdrom driver allows
access to both types of data.
A CD-ROM disk that contains informational data is treated as a random-
access storage device, such as a hard disk. The information on the disk
is divided into consecutively numbered, fixed-size (usually 2 Kbytes)
sectors that may be accessed in any order. The standard tools for
reading data from a random-access device, such as dd(1) or read(2), can
be used to read data from a CD-ROM. However, all write operations are
prohibited.
When accessing audio data, the commands do not return data to the host
system (as is the case with informational data). Rather, audio commands
control the operation of the drive's audio output hardware (usually a
head-phone jack physically located on the drive). For example, the
CPLAYAUDIO command causes the audio hardware to decode and convert to
analog the audio data at a specific location on the disk.
All audio data commands are invoked via the ioctl interface and often
require a parameter structure that identifies the audio data to be acted
upon. Unlike informational data, audio data is not referenced by a
sector address. The methods used to identify a particular section of
audio data should be described in the SCSI Interface section of the
reference manual supplied with your CD-ROM drive.
Audio data cannot be read as if it were informational data, and
informational data cannot be played via the drive's audio hardware.
ioctl Calls
The scsicdrom driver uses several ioctl commands that are listed below.
Many of these ioctl commands provide a convenient method for sending one
10/89 Page 1
scsi_cdrom(7) UNIX System V(SCSI Drivers) scsi_cdrom(7)
of the preselected SCSI commands directly to the drive. SCSI commands
not explicitly supported by the scsicdrom driver can be sent to the
drive via the pass-through facility provided by the SDI Host Adapter
driver; for example see scsiadaptec(7) for details.
The following ioctls are used to identify a target driver and get a
pass-through major and minor number for a target device. [for example,
see scsiadaptec(7)].
BGETTYPE Returns the type of peripheral bus (for example,
scsi) used and the name of this driver (for
example, scsicdrom).
BGETDEV Returns the major and minor number of the pass-
through device for the CD-ROM drive. See, for
example, scsiadaptec(7) for details.
The following ioctls cause the appropriate Group-0 SCSI command to be
sent to the device. These commands are defined by the SCSI Bus
specification and should also be described in the SCSI Interface section
of the reference manual supplied with your CD-ROM drive.
CTESTUNIT Sends a Test Unit Ready command to the device.
CREZERO Sends a Rezero Device command to the device.
CSEEK Sends a Seek command to the device.
CINQUIR Sends an Inquiry command to the device and
returns the resulting data back to the caller.
CSTARTUNIT Sends a Start Unit command to the device.
CSTOPUNIT Sends a Stop Unit command to the device.
CPREVMV Sends a Prevent Media Removal command to the
device.
CALLOMV Sends an Allow Media Removal command to the
device.
The following ioctls cause the appropriate Group-1 SCSI command to be
sent to the device. The Group-1 SCSI commands are defined by the SCSI
Bus specification and should be described in the SCSI Interface section
of the reference manual supplied with your CD-ROM drive.
CREADCAPA Sends a Read Capacity command to the device and
returns the data sent by the drive.
The following ioctls cause the appropriate Group-6 SCSI command to be
sent to the drive. Group-6 SCSI commands are vendor specific and should
be described in the SCSI Interface section of the reference manual
Page 2 10/89
scsi_cdrom(7) UNIX System V(SCSI Drivers) scsi_cdrom(7)
supplied with your drive. Since the format of these SCSI commands is
vendor specific, these ioctls are supported only by products compatible
with the Toshiba 3200B.
CAUDIOSEARCH Sends an Audio Search command to the device.
CPLAYAUDIO Sends a Play Audio command to the device.
CSTILL Sends a Still command to the device.
CTRAYOPEN Sends a Tray Open command to the device.
CTRAYCLOSE Sends a Tray Close command to the device.
The following ioctls are also supported the scsicdrom driver.
BGETSUBDEVS Returns the number of sub-devices supported by
this driver (e.g., 1).
CERRMSGON Enables the scsicdrom-related system error
messages.
CERRMSGOFF Disables the scsicdrom-related system error
messages.
FILES
/usr/include/sys/sc01.h
/etc/conf/pack.d/sc01/space.c
/dev/[r]cdrom/cd[0-7]
/usr/include/sys/scsi.h
/usr/include/sys/sdi.h
/usr/include/sys/sdiedt.h
SEE ALSO
scsiadaptec(7), scsidisk(7), scsidpt(7), scsitape(7), scsiwd7000(7),
scsiworm(7)
ioctl(2) in the Programme's Reference Manual
Programmer's Guide: SCSI Driver Interface (SDI)
10/89 Page 3