Command Section
MCD(4)                 FreeBSD Kernel Interfaces Manual                 MCD(4)

     mcd - Mitsumi CD-ROM driver

     device mcd

     In /boot/device.hints:"isa""0x300""10"

     The mcd driver will be removed in FreeBSD 12.0.

     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

     The mcd driver responds to disk-specific ioctl() commands, namely the
     DIOCGPART command.  Other disk-specific ioctl() commands will return an

     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.

     /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.

     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.


     An mcd driver appeared in FreeBSD 1.0.

     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.

FreeBSD 11.1-RELEASE-p4          July 8, 2017          FreeBSD 11.1-RELEASE-p4
Command Section