Provided by: freebsd-manpages_12.2-1_all bug


     cfumass — USB device side support for Mass Storage Class Transport


     This driver can be compiled into the kernel by placing these lines in the kernel
     configuration file:

           device usb
           device usb_template
           device ctl
           device cfumass

     The driver module can also be loaded at boot by adding this line to loader.conf(5):



     The cfumass driver provides device side support for emulating an USB mass storage device
     compliant with the USB Mass Storage Class Bulk-Only (BBB) Transport specification,
     implemented as a ctl(4) frontend driver.

     To use cfumass:

        cfumass(4) must be loaded as a module or compiled into the kernel.

        The USB Mass Storage template must be chosen by setting the hw.usb.template sysctl to 0.

        The USB OTG port must be working in USB device-side mode.  This happens automatically
         upon connection to a USB host.

        There must be a ctl(4) LUN configured for the cfumass port.

     Upon loading, the driver creates a ctl(4) port named cfumass, presenting the first LUN
     mapped for that port - usually LUN 0 - to the USB host.  See ctl.conf(5) and ctld(8) for
     details on configuring the LUN.  See the cfumass_enable and cfumass_dir rc(8) variables in
     rc.conf(5) for an automated way to configure it at boot.


     These variables are available as both sysctl(8) variables and loader(8) tunables:

             Verbosity level for log messages from the cfumass driver.  Set to 0 to disable
             logging or 1 to warn about potential problems.  Larger values enable debugging
             output.  Defaults to 1.

             Ignore START STOP UNIT SCSI commands with START and LOEJ bits cleared.  Some
             initiators send that command to stop the target when the user attempts to gracefully
             eject the drive, but fail to start it when the drive is reconnected.  Set to 0 to
             handle the command in a standards-compliant way, 1 to ignore it and log a warning,
             or 2 to ignore it silently.  Defaults to 1.

             Max LUN number to report to the initiator (USB host).  Must be between 0 and 15.
             Some initiators incorrectly handle values larger than 0.  Defaults to 0.


     ctl(4), umass(4), usb(4), usb_template(4), ctl.conf(5), ctld(8)


     The cfumass driver first appeared in FreeBSD 11.1.


     The cfumass driver was developed by Edward Tomasz Napierala <> under
     sponsorship from the FreeBSD Foundation.