ATAPICAM(4)

NAME
atapicam - CAM XPT (transport) module for ATAPI devices

SYNOPSIS
To compile this driver into the kernel, place the following lines in your kernel configuration file:

device scbus
device ata
device atapicam

Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5):

    atapicam_load="YES"

DESCRIPTION
The ATAPI/CAM module allows ATAPI devices (CD-ROM, CD-RW, DVD drives, floppy drives such as Iomega Zip, tape drives) to be accessed through the SCSI subsystem, cam(4).

ata(4) and scbus(4) must be configured in the kernel as well. The SCSI target drivers ((cd) 4, da(4), or st(4)) can then be used to access the devices. The generic passthrough device, pass(4), can also be used to send SCSI commands directly to the devices through the CAM API.

A separate CAM bus is created for each ATA bus in the system. On each of these buses, target ID 0 is assigned to the master device, and ID 1 is assigned to the slave (provided they are ATAPI devices).

IMPLEMENTATION NOTES
Some SCSI commands are intercepted by the driver, and undergo special processing in order to work around limitations of ATAPI devices. Such limitations can be consequences of the ATAPI specification. For example, ATAPI devices do not implement the 6-byte versions of MODE_SELECT, MODE_SENSE, READ, or WRITE. They can also be common bugs, such as hanging when queried for extended INQUIRY information.

EXAMPLES

    device ata
    device atapicam
    device scbus
    device cd
    device pass

Add the atapicam driver to the kernel.

    camcontrol devlist

Print the list of all devices available through CAM.

    mount -t cd9660 /dev/cd0 /mnt

Mount a CD-ROM from an ATAPI CD-ROM drive (the command above assumes that the ATAPI drive is the only CD-ROM unit).

SEE ALSO
ata(4), cam(4), scsi(4), atacontrol(8), camcontrol(8)

HISTORY
The ATAPI/CAM driver first appeared in FreeBSD 4.8 and FreeBSD 5.0.

AUTHORS
The ATAPI/CAM driver was written by Thomas Quinot <thomas@FreeBSD.org>.

BUGS
atapicam and ATAPI-specific target drivers ((acd) 4, ast(4), and afd(4)) can be configured in the same kernel. Simultaneous access to the same device through the SCSI generic drivers and the ATAPI-specific drivers may cause problems and is strongly discouraged.