]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/man/man4/cfumass.4
disk(9): Fix a few mandoc related errors
[FreeBSD/FreeBSD.git] / share / man / man4 / cfumass.4
1 .\" Copyright (c) 2017 The FreeBSD Foundation
2 .\"
3 .\" This software was developed by Edward Tomasz Napierala under sponsorship
4 .\" from the FreeBSD Foundation.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\"
15 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 .\" SUCH DAMAGE.
26 .\"
27 .\" $FreeBSD$
28 .Dd April 21, 2018
29 .Dt CFUMASS 4
30 .Os
31 .Sh NAME
32 .Nm cfumass
33 .Nd USB device side support for Mass Storage Class Transport
34 .Sh SYNOPSIS
35 This driver can be compiled into the kernel by placing these lines in
36 the kernel configuration file:
37 .Bd -ragged -offset indent
38 .Cd "device usb"
39 .Cd "device usb_template"
40 .Cd "device ctl"
41 .Cd "device cfumass"
42 .Ed
43 .Pp
44 The driver module can also be loaded at boot by adding this line to
45 .Xr loader.conf 5 :
46 .Bd -literal -offset indent
47 cfumass_load="YES"
48 .Ed
49 .Sh DESCRIPTION
50 The
51 .Nm
52 driver provides device side support for emulating an USB mass storage
53 device compliant with the USB Mass Storage Class Bulk-Only (BBB) Transport
54 specification, implemented as a
55 .Xr ctl 4
56 frontend driver.
57 .Pp
58 To use
59 .Nm :
60 .Bl -bullet
61 .It
62 .Xr cfumass 4
63 must be loaded as a module or compiled into the kernel.
64 .It
65 The USB Mass Storage template must be chosen by setting the
66 .Va hw.usb.template
67 sysctl to 0.
68 .It
69 The USB OTG port must be working in USB device-side mode.
70 This happens automatically upon connection to a USB host.
71 .It
72 There must be a
73 .Xr ctl 4
74 LUN configured for the
75 .Pa cfumass
76 port.
77 .El
78 .Pp
79 Upon loading, the driver creates a
80 .Xr ctl 4
81 port named
82 .Pa cfumass ,
83 presenting the first LUN mapped for that port - usually LUN 0 - to
84 the USB host.
85 See
86 .Xr ctl.conf 5
87 and
88 .Xr ctld 8
89 for details on configuring the LUN.
90 See the
91 .Cm cfumass_enable
92 and
93 .Cm cfumass_dir
94 .Xr rc 8
95 variables in
96 .Xr rc.conf 5
97 for an automated way to configure it at boot.
98 .Sh SYSCTL VARIABLES
99 These variables are available as both
100 .Xr sysctl 8
101 variables and
102 .Xr loader 8
103 tunables:
104 .Bl -tag -width indent
105 .It Va hw.usb.cfumass.debug
106 Verbosity level for log messages from the
107 .Nm
108 driver.
109 Set to 0 to disable logging or 1 to warn about potential problems.
110 Larger values enable debugging output.
111 Defaults to 1.
112 .It Va hw.usb.cfumass.ignore_stop
113 Ignore START STOP UNIT SCSI commands with START and LOEJ bits cleared.
114 Some initiators send that command to stop the target when the user
115 attempts to gracefully eject the drive, but fail to start it when the
116 drive is reconnected.
117 Set to 0 to handle the command in a standards-compliant way,
118 1 to ignore it and log a warning, or 2 to ignore it silently.
119 Defaults to 1.
120 .It Va hw.usb.cfumass.max_lun
121 Max LUN number to report to the initiator (USB host).
122 Must be between 0 and 15.
123 Some initiators incorrectly handle values larger than 0.
124 Defaults to 0.
125 .El
126 .Sh SEE ALSO
127 .Xr ctl 4 ,
128 .Xr umass 4 ,
129 .Xr usb 4 ,
130 .Xr usb_template 4 ,
131 .Xr ctl.conf 5 ,
132 .Xr ctld 8
133 .Sh HISTORY
134 The
135 .Nm
136 driver first appeared in
137 .Fx 11.1 .
138 .Sh AUTHORS
139 The
140 .Nm
141 driver was developed by
142 .An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org
143 under sponsorship from the FreeBSD Foundation.