NAME
mcd — Mitsumi CD-ROM driver
SYNOPSIS
device mcd
In /boot/device.hints:
hint.mcd.0.at="isa"
hint.mcd.0.port="0x300"
hint.mcd.0.irq="10"
DEPRECATION NOTICE
The mcd driver will be removed in FreeBSD 12.0.
DESCRIPTION
The mcd driver provides a data and audio interface to the Mitsumi-brand CD-ROM player. The CD-ROM player must be interfaced to the ISA bus through one of the Mitsumi proprietary controller boards. The controller boards supported are the LU002S, LU005S, the FX001 and the quite common FX001D.
The mcd driver responds to disk-specific ioctl() commands, namely the DIOCGPART command. Other disk-specific ioctl() commands will return an error.
The mcd driver also responds to special CD-ROM ioctl() commands. These commands control the CD-ROM player’s audio features. The commands are:
CDIOCREADSUBCHANNEL
get sub-channel information on current status of disc playing
CDIOCREADTOCHEADER
get table of contents header
CDIOCREADTOCENTRYS
gets all of the table of contents
CDIOCPLAYTRACKS
begins audio playing at location specified
CDIOCPLAYBLOCKS
fails with error EINVAL
CDIOCPLAYMSF
begins audio playing at location specified
CDIOCRESUME
resumes playing a previously paused disc
CDIOCPAUSE
pauses a playing disc
CDIOCSTART
begins playing a disc
CDIOCSTOP
stops a previously playing disc
CDIOCEJECT
opens the disc tray (there is no support for a corresponding un-eject command).
CDIOCRESET
stops any play and resets the Mitsumi controller board
CDIOCSETDEBUG
cause the kernel to print debug messages to the console about the mcd driver
CDIOCCLRDEBUG
cause the kernel to quit printing debug messages about the mcd driver
The ioctl() commands defined above are the only ones that the mcd driver supports. There are other CD-ROM related ioctl() commands (such as CDIOCSETVOL and CDIOCSETSTERIO) which are available and may be supported by future versions of the driver.
FILES
/dev/(r)mcd0a
accesses BSD partition on the disc. Normally, there is only one file system on a CD-ROM disc.
/dev/(r)mcd0c
accesses raw device.
NOTES
The character-mode devices for the mcd driver should only be used for accessing the audio features of the CD-ROM player as the performance on data is abysmal.
The current version of the driver uses neither the DMA or IRQ features of the interface board, although it has an interrupt handler for any IRQ requests that are generated. Until the DMA features are supported, the only interrupts that the board generates are those that are not supported by the driver anyway.
SEE ALSO
<sys/cdio.h>
HISTORY
An mcd driver appeared in FreeBSD 1.0.
AUTHORS
The driver was written by Holger Veit (data part) and Brian Moore (audio part). Changes were provided by Gary Clark II, Andrew A. Chernov, and Jordan K. Hubbard.
BSD July 8, 2017 BSD