aboutsummaryrefslogtreecommitdiff
path: root/FAQ/hardware.sgml
blob: 40e543722afb0282bcf5503bb837fdb7ffdf3cc1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
<!-- $Id: hardware.sgml,v 1.5 1998-03-23 05:56:02 yokota Exp $ -->
<!-- The FreeBSD Documentation Project -->

  <sect>
    <heading>Hardware compatibility <label id="hardware"></heading>

    <sect1>
      <heading>What kind of hard drives does FreeBSD support?</heading>

      <p>FreeBSD supports EIDE and SCSI drives (with a compatible
      controller; see the next section), and all drives using the
      original "Western Digital" interface (MFM, RLL, ESDI, and
      of course IDE). A few ESDI controllers that use proprietary
      interfaces may not work: stick to WD1002/3/6/7 interfaces
      and clones.

    <sect1>
      <heading>Which SCSI controllers are supported?</heading>

      <p>FreeBSD supports the following SCSI controllers:

      <descrip>
        <tag/Adaptec/
          AH-1505 &lt;ISA&gt; <newline>
          AH-152x Series &lt;ISA&gt; <newline>
          AH-154x Series &lt;ISA&gt; <newline>
          AH-174x Series &lt;EISA&gt; <newline>
          Sound Blaster SCSI (AH-152x compat) &lt;ISA&gt; <newline>
          AH-2742/2842 Series &lt;ISA/EISA&gt; <newline>
          AH-2820/2822/2825 Series (Narrow/Twin/Wide) &lt;VLB&gt; <newline>
          AH-294x and aic7870 MB controllers (Narrow/Twin/Wide) &lt;PCI&gt;
          <newline>
          AH-394x (Narrow/Twin/Wide)

        <tag/Buslogic/
          BT-445 Series &lt;VLB&gt; (this is one of the cards referred to
          in the section <ref id="bigram" name="on &gt;16 MB machines">)
          <newline>
          BT-545 Series &lt;ISA&gt; <newline>
          BT-742 Series &lt;EISA&gt;<newline>
          BT-747 Series &lt;EISA&gt;<newline>
          BT-946 Series &lt;PCI&gt; <newline>
          BT-956 Series &lt;PCI&gt; <newline>

        <tag/Future Domain/
          TMC-950 Series &lt;ISA&gt; <newline>

        <tag/PCI Generic/
          NCR 53C81x based controllers &lt;PCI&gt; <newline>
          NCR 53C82x based controllers &lt;PCI&gt; <newline>
          NCR 53C860/75 based controllers &lt;PCI&gt; <newline>

        <tag/ProAudioSpectrum/
          Zilog 5380 based controllers &lt;ISA&gt; <newline>
          Trantor 130 based controllers &lt;ISA&gt; <newline>

        <tag/DTC/
          DTC 3290 EISA SCSI in AHA-154x emulation.<newline>

        <tag/Seagate/
          ST-01/02 Series &lt;ISA&gt;<newline>

        <tag/UltraStor/
          UH-14f Series &lt;ISA&gt;<newline>
          UH-24f Series &lt;EISA&gt; <newline>
          UH-34f Series &lt;VLB&gt;<newline>

        <tag/Western Digital/
          WD7000 &lt;ISA&gt; &lt;No scatter/gather&gt;
      </descrip>

    <sect1>
      <heading>Which CD-ROM drives are supported by FreeBSD?</heading>

      <p>Any SCSI drive connected to a supported controller is supported.

      <p>The following proprietry CD-ROM interfaces are also supported:

      <itemize>
        <item>Mitsumi LU002 (8bit), LU005 (16bit) and FX001D (16bit 2x Speed).
        <item>Sony CDU 31/33A<newline>
        <item>Sound Blaster Non-SCSI CD-ROM<newline>
        <item>Matsushita/Panasonic CD-ROM<newline>
        <item>ATAPI compatible IDE CD-ROMs<newline>
      </itemize>

      <p>All non-SCSI cards are known to be extremely slow compared to
      SCSI drives, and some ATAPI CDROMs may not work.

      <p>As of 2.2 the FreeBSD CDROM from Walnut Creek supports booting
      directly from the CD.

    <sect1>
      <heading>Does FreeBSD support ZIP drives?</heading>

      <p>FreeBSD supports the SCSI ZIP drive out of the box, of course. The
      ZIP drive can only be set to run at SCSI target IDs 5 or 6, but if
      your SCSI host adapter's BIOS supports it you can even boot from
      it. I don't know which host adapters let you boot from targets
      other than 0 or 1... look at your docs (and let me know if it works
      out for you).

      <p>There is no built in support for the parallel ZIP drive, and if you
      haven't bought your ZIP drive already I recommend you get the SCSI
      one... the price is the same, and the performance is much better,
      and you're unlikely to ever be able to boot from the parallel port.

      <p>If you already have a parallel ZIP, there is a port of the Linux
      driver available at

        <url url="http://www.prism.uvsq.fr/~son/ppa3.html"
        name="Nicolas Souchu's home page"> in France.

      <p>Also check out <ref id="jaz" name="this note on removable drives">,
      and <ref id="disklabel" name="this note on 'formatting'">.

    <sect1>
      <heading>
        Does FreeBSD support JAZ, EZ and other removable drives?
      </heading>

      <p>Apart from the IDE version of the EZ drive, these are all SCSI
      devices, so the should all look like SCSI disks to FreeBSD, and
      the IDE EZ should look like an IDE drive.

      <p><label id="jaz">I'm not sure how well FreeBSD supports changing
      the media out while running. You will of course need to dismount the
      drive before swapping media, and make sure that any external units are
      powered on when you boot the system so FreeBSD can see them.

      <p>See <ref id="disklabel" name="this note on 'formatting'">.

    <sect1>
      <heading>Which multi-port serial cards are supported by FreeBSD?</heading>

      <p>There is a list of these in the <htmlurl
      url="../handbook/install:misc.html" name="Miscellaneous devices">
      section of the handbook.

      <p>Some unnamed clone cards have also been known to work, especially
      those that claim to be AST compatible.

      <p>Check the <htmlurl url="http://www.freebsd.org/cgi/man.cgi?sio"
      name="sio"> man page to get more information on configuring such cards.

    <sect1>
      <heading>I have an unusual bus mouse. How do I set it up?<label id="busmouse"></heading>

      <p>FreeBSD supports the bus mouse and the InPort bus mouse from such
      manufactures as Microsoft, Logitech and ATI.  The bus device driver
      is compiled in the GENERIC kernel by default.  If you are building 
      a custom kernel with the bus mouse driver, make sure to add the 
      following line to the kernel config file:

      <verb>
        device mse0 at isa? port 0x23c tty irq5 vector mseintr
      </verb>

      <p>The bus mouse usually comes with an dedicatd interface card.
      It may allow you to set the port address and the IRQ number other
      than shown above.  Refer to the manual of your mouse and the
      <htmlurl url="http://www.freebsd.org/cgi/man.cgi?mse" name="mse">
      man page for more information.

    <sect1>
      <heading>
        How do I use my PS/2 (``mouse port'' or ``keyboard'') mouse?<label id="ps2mouse"></heading>

      <p>If you're running a very recent version of FreeBSD, the necessary
      driver, psm, is included and enabled in the kernel.  The kernel 
      should detect your PS/2 mouse at boot time.

      <p>If you're running a previous but relatively recent version of 
      FreeBSD then you can simply enable it in the kernel configuration 
      menu at installation time, otherwise later with -c at the boot:
      prompt.  It is disabled by default, so you will need to enable
      it explicitly.

      <p>If you're running an older version of FreeBSD then you'll have to
      add the following lines to your kernel configuration file and compile
      a new kernel:

      <verb>
        device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr
      </verb>

      <p>See the <url url="../handbook/kernelconfig.html"
      name="Handbook entry on configuring the kernel"> if you've no
      experience with building kernels.

      <p>Once you have a kernel detecting psm0 correctly at boot time,
      make sure that an entry for psm0 exists in /dev.  You can do this
      by typing:

      <verb>
        cd /dev; sh MAKEDEV psm0
      </verb>

      <p>when logged in as root.

    <sect1>
      <heading>Is it possible to make use of a mouse in any way outside the X Window?<label id="moused"></heading>

      <p>If you are using the default console driver, syscons, you can
      use a mouse pointer in text consoles to cut & paste text.
      Run the mouse daemon, moused, and turn on the mouse pointer
      in the virtual console:

      <verb>
        moused -p /dev/xxxx -t yyyy 
        vidcontrol -m on
      </verb>

      <p>Where <tt>xxxx</tt> is the mouse device name and <tt>yyyy</tt> 
      is a protocol type for the mouse.  See the 
      <htmlurl url="http://www.freebsd.org/cgi/man.cgi?moused" name="moused">
      man page for supported protocol types.  

      <p>You may wish to run the mouse daemon automatically when the 
      system starts.  In version 2.2.1, set the following variables in
      <tt>/etc/sysconfig</tt>.

      <verb>
	mousedtype="yyyy"
	mousedport="xxxx"
	mousedflags=""
      </verb>

      In versions 2.2.2 or later, set the following variables in
      <tt>/etc/rc.conf</tt>.

      <verb>
	moused_type="yyyy"
	moused_port="xxxx"
	moused_flags=""
      </verb>

      <p>Staring from FreeBSD 2.2.6, the mouse daemon is capable of 
      determining the correct protocol type automatically unless the mouse 
      is a relatively old serial mouse model.  Specify ``<tt>auto</tt>'' as
      the protocol to invoke automatic detection.

      <p>When the mouse daemon is running, access to the mouse needs to be
      coordinated between the mouse daemon and other programs such as the
      X Window.  Refer to <ref id="x-and-moused" name="another section"> 
      on this issue".

    <sect1>
      <heading>How do I cut and paste text with mouse in the text console?</heading>

      <p>Once you get the mouse daemon running (see <ref id="moused" 
      name="previous section">), hold down the button 1 (left button) 
      and move the mouse to select a region of
      text.  Then, press the button 2 (middle button) or the button 3 (right
      button) to paste it at the text cursor.

      <p>In versions 2.2.6 and later, pressing the button 2 will paste 
      the text.  Pressing the button 3 will ``extend'' the selected region
      of text.  If your mouse does not have the middle button, you may wish
      to emulate it or remap buttons using moused options.  See the 
      <htmlurl url="http://www.freebsd.org/cgi/man.cgi?moused" name="moused">
      man page for details.

    <sect1>
      <heading>My mouse has a fancy wheel and buttons.  Can I use them in FreeBSD?</heading>

      <p>The answer is, unfortunately, ``It depends.''  These mice with
      additional features require specialized driver in most cases.
      Unless the mouse device driver or the user program has specific 
      support for the mouse, it will act just like a standard two, or 
      three button mouse.

    <sect1>
      <heading>
        How do I use the mouse/trackball/touchpad on my laptop?
      </heading>

      <p>Please refer to <ref id="ps2mouse" name="the answer to the previous
      question">.  And check out <ref id="pao" name="this note"> on the Mobile
      Computing page.

    <sect1>
      <heading>What types of tape drives are supported?</heading>

      <p>FreeBSD supports SCSI, QIC-36 (with a QIC-02 interface) and
      QIC-40/80 (Floppy based) tape drives.  This includes 8-mm (aka Exabyte)
      and DAT drives.  The QIC-40/80 drives are known to be slow.

      <p>Some of the early 8-mm drives are not quite compatible with SCSI-2,
      and may not work well with FreeBSD.

    <sect1>
      <heading>Does FreeBSD support tape changers?</heading>

      <p>FreeBSD 2.2 supports SCSI changers using the <htmlurl
      url="http://www.freebsd.org/cgi/man.cgi?ch(4)" name="ch"> device and
      the <htmlurl url="http://www.freebsd.org/cgi/man.cgi?chio" name="chio">
      command.  The details of how you actually control the changer can be
      found in the <htmlurl url="http://www.freebsd.org/cgi/man.cgi?chio"
      name="chio"> man page.

      <p>If you're not using <htmlurl
      url="http://www.freebsd.org/cgi/ports.cgi?amanda" name="AMANDA"> or
      some other product that already understands changers, remember that
      they're only know how to move a tape from one point to another, so
      you need to keep track of which slot a tape is in, and which slot the
      tape currently in the drive needs to go back to.

    <sect1>
      <heading>Which sound cards are supported by FreeBSD?</heading>

      <p>FreeBSD supports the SoundBlaster, SoundBlaster Pro, SoundBlaster
      16, Pro Audio Spectrum 16, AdLib and Gravis UltraSound sound cards.
      There is also limited support for MPU-401 and compatible MIDI cards.
      The SoundBlaster 16 ASP cards are not yet supported. The Microsoft
      Sound System is also supported.

      <p><bf/NOTE/ This is only for sound!  This driver does not support
      CD-ROMs, SCSI or joysticks on these cards, except for the
      SoundBlaster. The SoundBlaster SCSI interface and some non-SCSI
      CDROMS are supported, but you can't boot off this device.

    <sect1>
      <heading>Which network cards does FreeBSD support?</heading>

      <p>See the <htmlurl url="../handbook/install:nics.html"
      name="Ethernet cards"> section of the handbook for a more
      complete list. Since it doesn't list the drivers
      you need to use for each of the cards, this incomplete
      list will have to do.

      <descrip>
        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?de(4)"
        name="de"> driver/
        DEC DC21x40 and compatible PCI controllers<newline>
        (including 21140 100bT cards) <newline>

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?ed(4)"
        name="ed"> driver/ NE2000 and 1000<newline>
        WD/SMC 8003, 8013 and Elite Ultra (8216)<newline>
        3Com 3c503 <newline>
        HP 27247B and 27252A <newline>
        And clones of the above <newline>

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?le(4)"
        name="le"> driver/
        DEC EtherWORKS II and EtherWORKS III controllers. <newline>

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?ie(4)"
        name="ie"> driver/
        AT&amp;T EN100/StarLAN 10 <newline>
        3COM 3c507 Etherlink 16/TP<newline>
        NI5210 <newline>
        Intel EtherExpress <newline>

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?is(4)"
        name="is"> driver/
        Isolan AT 4141-0 <newline>
        Isolink 4110 <newline>

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?el(4)"
        name="el"> driver/
        3com 3c501 (does not support Multicast or DMA)

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?eg(4)"
        name="eg"> driver/
        3com 3c505 Etherlink/+

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?ze(4)"
        name="ze"> driver/
        IBM PCMCIA credit card adapter

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?lnc(4)"
        name="lnc"> drive/
        Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL)(*)

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?ep(4)"
        name="ep"> driver/
        3com 3c509 (Must disable PNP support on card)

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?cx(4)"
        name="cx"> driver/
        Cronyx/Sigma multiport Sync/Async (Cisco and PPP framing)

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?zp(4)"
        name="zp"> driver/
        3Com PCMCIA Etherlink III (aka 3c589)(A-C only)

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?fea(4)"
        name="fea"> driver/
        DEC DEFEA EISA FDDI controller

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?fpa(4)"
        name="fpa"> driver/
        DEC DEFPA PCI FDDI controller

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?fe(4)"
        name="fe"> driver/
        Fujitsu MB86960A/MB86965A Ethernet cards
      </descrip>

      <p><bf/NOTE/	Drivers marked with (*) are known to have problems.

      <p><bf/NOTE/	3C598D is NOT supported yet.

      <p><bf/NOTE/ We also support TCP/IP over parallel lines.  At this point
      we are incompatible with other versions, but we hope to correct
      this in the near future.  Refer to the description in the lp(4)
      man page.

      <p><bf/NOTE/ Some of these cards require a DOS partition on your hard
      drive to run the configuration software. Software configured cards
      may also need to be hard-reset after running another operating
      system that uses manufacturer-supplied drivers. This may even
      require a full power cycle.

    <sect1>
      <heading>I don't have a math co-processor - is that bad?</heading>

      <p><tt /Note/ This will only affect 386/486SX/486SLC owners - other
      machines will have one built into the CPU.

      <p>In general this will not cause any problems, but there are
      circumstances where you will take a hit, either in performance or
      accuracy of the math emulation code (see the section <ref id="emul"
      name="on FP emulation">).  In particular, drawing arcs in X will be
      VERY slow.  It is highly recommended that you buy a math
      co-processor; it's well worth it.

      <p><bf/NOTE/ Some math co-processors are better than others.  It pains
      us to say it, but nobody ever got fired for buying Intel.  Unless
      you're sure it works with FreeBSD, beware of clones.

    <sect1>
      <heading>What other devices does 2.X support?</heading>

      <p>Here is a listing of drivers which do not fit into any of the
      earlier categories.

      <descrip>
        <tag><tt/b004.c/</tag>
        Driver for B004 compatible Transputer boards <newline>

        <tag>``ctx'' driver</tag>
              Driver for CORTEX-I Frame grabber <newline>

        <tag>``gp'' driver</tag>
              Driver for National Instruments AT-GPIB and<newline>
              AT-GPIB/TNT boards

        <tag>``pca'' driver</tag>
              Driver for PC speakers to allow the playing of audio files

        <tag>``spigot'' driver</tag>
              Driver for the Creative Labs Video Spigot

        <tag><htmlurl url="http://www.freebsd.org/cgi/man.cgi?gsc(4)"
                name="gsc"> driver</tag>
              Driver for the Genuis GS-4500 Hand scanner

        <tag><htmlurl url="http://www.freebsd.org/cgi/man.cgi?joy(4)"
                name="joy"> driver</tag>
              Driver for a joystick

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?labpc(4)"
                name="labpc"> driver/
              Driver for National Instrument's Lab-PC and Lab-PC+

        <tag/``uart'' driver/
              Stand-alone 6850 UART for MIDI

        <tag/<htmlurl url="http://www.freebsd.org/cgi/man.cgi?psm(4)"
        name="psm"> driver/ PS/2 mouse port

        <tag><tt/tw.c/</tag>
        Driver for the X-10 POWERHOUSE <newline>
      </descrip>

<!--
    <sect1>
      <heading>I am about to buy a new machine. What do you recommend?</heading>

      <p>See the <url url="../handbook/hw.html" name="hardware section">
      of the handbook for general tips if you're going to build it
      yourself, otherwise see the 
      FreeBSD <url url="http://www.freebsd.org/commercial/hardware.html"
      name="Hardware vendors"> page for various companies who offer
      FreeBSD compatible systems.
-->

    <sect1>
      <heading>Does FreeBSD support power management on my laptop?</heading>

      <p>FreeBSD supports APM on certain machines.  Please look in the
      <tt/LINT/ kernel config file, searching for the <htmlurl 
      url="http://www.freebsd.org/cgi/man.cgi?apm" name="APM"> keyword.

  </sect>