home *** CD-ROM | disk | FTP | other *** search
/ Chip 1994 March / CHIP0394.BIN / digital / praxis / linux / devices.txt < prev    next >
Text File  |  1994-06-27  |  14KB  |  279 lines

  1. -------------------------------------------------------------------------
  2.  
  3.                T H E   L I N U X   D E V I C E   L I S T
  4.  
  5.    maintained by rick@ee.uwm.edu (Rick Miller, Linux Device Registrar)
  6.  
  7.                      Last revised:  April 26, 1993
  8.  
  9. This is a list of the device names, along with Major and minor numbers,
  10. which the Linux kernel may currently recognize.  I say "may" because some
  11. of them may require patches to your kernel, others must be configured-in
  12. using the Linux kernel's "make config" routine before compiling.
  13.  
  14. My profuse thanks to all the writers of device drivers for Linux, and to
  15. all those patient folks who took the time to explain their devices to me.
  16. May they become obscenely rich.  Until then, I hope this list will help
  17. prevent driver collisions and perhaps lend a clue to a newbie or two.
  18.  
  19.  
  20.         IF YOU WANT ANY CHANGES OR ADDITIONS TO THIS LIST, *TELL ME*!
  21.  
  22.         DEVICES NOT LISTED HERE SHOULD USE MAJOR NUMBERS *ABOVE 127*
  23.         UNTIL ALLOCATED A MORE PERMANENT NUMBER IN THE LOWER RANGE.
  24.         (I suggest using a more-or-less random number to avoid the
  25.          chance of collisions with any other experimental drivers.)
  26.  
  27.         TO HAVE MAJOR/MINOR NUMBERS ALLOCATED (OFFICIALLY) FOR
  28.         YOUR DEVICE DRIVER, SEND E-MAIL TO:  RICK@EE.UWM.EDU
  29.  
  30. Majors:
  31.   0.  Unnamed .......  (unknown) ....  for proc-fs, NFS clients, etc. (???)
  32.   1.  Memory ........  (character) ..  mem ramdisk kmem null port zero core
  33.   2.  Floppy ........  (block) ......  fd[0-3]<[dhDH]{360,720,1200,1440}>
  34.   3.  AT-Disk .......  (block) ......  hd[a-b]<[0-8]>
  35.   4.  Tty ...........  (character) ..  tty's and pty's
  36.   5.  Dial-out ......  (character) ..  tty cua*
  37.   6.  Parallel ......  (character) ..  par[0-2] lp[0-2]
  38.   8.  SCSI-Disk .....  (block) ......  sd[a-h]<[0-8]>
  39.   9.  SCSI-Tape .....  (character) ..  <n>st[0-1] or <n>rmt[0-1]
  40.  10.  Mouse .........  (character) ..  logibm psaux inportbm atibm (mouse)
  41.  11.  CD-ROM ........  (block) ......  scd[0-1]
  42.  12.  QIC-tape? .....  (character) ..  rmt{8,16} tape<{-d,-reset}>
  43.  13.  XT-disk .......  (block) ......  xd[a-b]<[0-8]>
  44.  14.  Audio .........  (character) ..  audio dsp midi mixer sequencer
  45.  15.  Joystick ......  (character) ..  js[0-1]
  46.  16.  Socket ........  (character) ..  net arp
  47.  17.  AF_UNIX .......  (character) ..  unix
  48.  18.  AF_INET .......  (character) ..  inet ip icmp tcp udp
  49.  19.  WE-driver .....  (character) ..  we[0-3]
  50.  20.  DP8390-driver .  (character) ..  wd[0-3] ec[0-3] ne[0-3]
  51.  21.  Sony-CD-ROM ...  (block) ......  sonycd
  52.  22.  2nd AT-Cntrlr .  (block) ......  hd1[a-b]<[0-8]>
  53.  23.  Mitsumi CD-ROM   (block) ......  mcd
  54.  31.  Link Interface   (character?) .  ???
  55.  
  56. Breakdown of minors by Majors:
  57. ------------------------------
  58.   0.  Unnamed .......  (unknown) ....  for proc-fs, NFS clients, etc.
  59.         Minors?
  60.  
  61.   1.  Memory ........  (character) ..  ram mem kmem null port zero core
  62.         (0.  /dev/ram:  was supposed to be the ramdisk, but never got used.
  63.          As of this date it has not been implemented and probably won't be.)
  64.         1.  /dev/mem
  65.         1.  /dev/ramdisk: a BLOCK device (the RAM-disk)
  66.         2.  /dev/kmem
  67.         3.  /dev/null
  68.         4.  /dev/port
  69.         5.  /dev/zero
  70.         6.  /dev/core:  like /dev/mem, but in "core"-file format for gdb
  71.  
  72.   2.  Floppy ........  (block) ......  fd[0-3]<[dhDH]{360,720,1200,1440}>
  73.         Minors are [[4 * type] + drive] where drive 0-3 == A:-D: (floppy)
  74.         and type is:    0: Autodetect           4: 720k on 3.5" DD
  75.                         1: 360k on 5.25" DD     5: 360k on 5.25" HD
  76.                         2: 1.2M on 5.25" HD     6. 720k on 5.25" HD
  77.                         3: 360k on 3.5" DD      7. 1.44M on 3.5" HD
  78.  
  79.         0. /dev/fd0:  Autodetected first floppy.
  80.         1. /dev/fd1:  Autodetected second floppy.
  81.         2. /dev/fd2:  Autodetected third floppy.
  82.         3. /dev/fd3:  Autodetected fourth floppy.
  83.         4. /dev/fd0d360:  360k on 5.25" DD in first drive
  84.         5. /dev/fd1d360:  360k on 5.25" DD in second drive
  85.                 (You can work out the rest of the intermediates...)
  86.         8. /dev/fd0h1200:  1.2M on 5.25" HD in first drive
  87.         12. /dev/fd0D360 (/dev/fd0H360):  360k on 3.5" DD in first drive
  88.         16. /dev/fd0D720 (/dev/fd0H720):  720k on 3.5" DD in first drive
  89.         20. /dev/fd0h360:  360k on 5.25" HD in first drive
  90.         24. /dev/fd0h720:  720k on 5.25" HD in first drive
  91.         28. /dev/fd0H1440:  1.44M on 3.5" HD in first drive
  92.  
  93.      Naming goes like this:
  94.         fd[drive][media][size]
  95.          where: [drive]=0-3:  Corresponds to DOS's "A:"-"D:".
  96.                 [media]={d,h,D,H}:  d=Double Density 5.25" diskette
  97.                                     h=High Density 5.25" diskette
  98.                                     D=Double Density 3.5" diskette
  99.                                     H=High Density 3.5" diskette
  100.                 [size]={360,720,1200,1440} kilobytes.
  101.  
  102.      Floppies are assumed to be double-sided (DS), and
  103.         drives are assumed to be high-density devices.
  104.  
  105.   3.  AT-Disk .......  (block) ......  hd[a-d]<[0-8]>
  106.      (For IDE, MFM, and RLE drives and controllers.)
  107.       On the first AT controller card:
  108.         0.  /dev/hda (/dev/hda0):  The whole first HD, including its MBR.
  109.         1-4.  /dev/hda{1-4}:  Primary partitions on the first hard drive.
  110.         5-8.  /dev/hda{5-8}:  Extended partitions on the first hard drive.
  111.         64.  /dev/hdb (/dev/hdb0):  The whole second HD, including its MBR.
  112.         65-68.  /dev/hdb{1-4}:  Primary partitions on the second hard drive.
  113.         69-72.  /dev/hdb{5-8}:  Extended partitions on the second hard drive.
  114.       On the second AT controller card:
  115.         128.  /dev/hdc (/dev/hdc0):  The whole third HD, including its MBR.
  116.         129-132.  /dev/hdc{1-4}:  Primary partitions on the third hard drive.
  117.         133-136.  /dev/hdc{5-8}:  Extended partitions on the third hard drive.
  118.         192.  /dev/hdd (/dev/hdd0):  The whole fourth HD, including its MBR.
  119.         193-196.  /dev/hdd{1-4}:  Primary partitions on the fourth hard drive.
  120.         197-200.  /dev/hdd{5-8}:  Extended partitions on the fourth hard drive.
  121.  
  122.         Notes:  BE *VERY* CAREFUL WITH the four "whole drive" devices (hda,
  123.                 hdb, hdc, and hdd)!!  These four devices embody the *entire*
  124.                 *drive*, not just one partition.  The only things that use
  125.                 them are things that need to read/change the partition table
  126.                 (like fdisk).
  127.  
  128.                 Linux doesn't order anything.  It perceives partitions in the
  129.                 order in which they appear in the partition table.  Thus,
  130.                 /dev/hd?1 may follow /dev/hd?2 in the cylinder numbering.
  131.  
  132.                 The names of the hard drives are not the same as under Minix.
  133.  
  134.   4.  Tty ...........  (character) ..  tty's and pty's
  135.         0.  /dev/tty0:  This is the currently active Virtual Console.
  136.         1-9.  /dev/tty[1-9]:  Specific virtual consoles.
  137.         10-63.  /dev/ttyV[10-63]:  More virtual consoles that nobody uses.
  138.         64-127.  /dev/tty[0-?][0-63]:  Dial-in serial ([controller][port]).
  139.         128-191.  /dev/pty[p-s][0-f]:  PTY Masters.
  140.         192-255.  /dev/tty[p-s][0-f]:  PTY Slaves. ([0-f]=0123456789abcdef)
  141.  
  142.         Notes:  NOTICE THE NEW NAMING FOR SERIAL LINES.  Serial lines will
  143.                 be named either "tty..." or "cua..." (See Major #5) followed
  144.                 by the one-digit number of the *board* the line is from, and
  145.                 the number of the line on that board.  The four default lines
  146.                 are considered to be on board "0", so what DOS calls "COM2:"
  147.                 should now be known as "/dev/tty01" or "/dev/cua01".
  148.  
  149.                 For more information on the use of multi-port boards, read
  150.                 the documentation which accompanies the serial patches.
  151.  
  152.   5.  Dial-out ......  (character) ..  tty cua*
  153.         0.  /dev/tty:  the tty that owns the process calling it.
  154.         64-127.  /dev/cua[0-?][0-63]:  Dial-out serial ([controller][port]).
  155.                 (See Major #4 for NEW NAMING CONVENTION.)
  156.  
  157.   6.  Parallel ......  (character) ..  par[0-2] lp[0-2]
  158.      Parallel (printer) ports.  (Increasable in include/linux/lp.h)
  159.         0.  /dev/par0 (/dev/lp0):  First XT parallel port
  160.         1.  /dev/par1 (/dev/lp1):  First AT parallel port
  161.         2.  /dev/par2 (/dev/lp2):  Second AT parallel port
  162.  
  163.         Notes:  The number of line printers is defined by LP_NO which is
  164.                 found in [/usr/src]/linux/include/lp.h.
  165.  
  166.   7.  Unused.  (First come, first serve.)
  167.         This one's getting old.  No minor numbers are yet assigned.
  168.         It's not even in the source code.  Maybe it never will be...
  169.  
  170.   8.  SCSI-Disk .....  (block) ......  sd[a-h]<[0-8]>
  171.         Minors numbers are ((16 * Drive) + Partition)
  172.         where
  173.           Drive is the number of the physical drive in order of detection
  174.         and
  175.           Partition is as follows:
  176.                 0   is the whole drive
  177.                 1-4 are the DOS "primary" partitions
  178.                 5-15 are the DOS "extended" (or "logical") partitions, so...
  179.  
  180.         0.  /dev/sda (/dev/sda0):  The first (detected) SCSI drive.
  181.         1-4.  /dev/sda[1-4]:  Primary partitions on the first SCSI drive.
  182.         5-15.  /dev/sda[5-15]:  Extended partitions on the first SCSI drive.
  183.         16.  /dev/sdb (/dev/sdb0):  The second (detected) SCSI drive.
  184.         17-20.  /dev/sdb[1-4]:  Primary partitions on the second drive.
  185.         21-31.  /dev/sdb[5-15]:  Extended partitions on the second drive.
  186.         32.  /dev/sdc (/dev/sdc0):  The third (detected) SCSI drive.
  187.         ...and so on.
  188.  
  189.   9.  SCSI-Tape .....  (character) ..  <n>st[0-1] or <n>rmt[0-1]
  190.         0.  /dev/st0:  First (detected) SCSI tape drive, rewind-on-close.
  191.         1.  /dev/st1:  Second (detected) SCSI tape drive, rewind-on-close.
  192.         128.  /dev/nst0:  First (detected) SCSI tape, *no* rewind-on-close.
  193.         129.  /dev/nst1:  Second (detected) SCSI tape, *no* rewind-on-close.
  194.  
  195.  10.  Mouse .........  (character) ..  logibm psaux inportbm atibm (mouse)
  196.      (MGR may require that /dev/mouse be linked to one of these...)
  197.                 NOTE THE CHANGES TO DIFFERENTIATE MOUSE TYPES!
  198.                 (Please implement these in the distributions.)
  199.         0.  /dev/logibm:  Logitec-'compatible' bus mouse
  200.         1.  /dev/psaux:  PS/2 mouse port (may not work on some lap-tops, yet)
  201.         2.  /dev/inportbm:  MicroSoft "InPort" bus mouse
  202.         3.  /dev/atibm:  ATI XL bus mouse
  203.  
  204.  11.  CD-ROM ........  (block) ......  scd[0-1]
  205.         0.  /dev/scd0:  The first (detected) SCSI CD-ROM.
  206.         1.  /dev/scd1:  The second (detected) SCSI CD-ROM.
  207.         ("There's not much more to it than that" says Eric Youngdale.)
  208.  
  209.  12.  QIC-tape? .....  (character) ..  rmt{8,16} tape<{-d,-reset}>
  210.      (I really don't have much info on this one... )
  211.         6.  /dev/rmt8:  QIC-120
  212.         8.  /dev/rmt16 (/dev/tape):  QIC-150
  213.         136.  /dev/tape-d:  (It has something to do with being 128+8... ?)
  214.         255.  /dev/tape-reset:  For resetting only.
  215.  
  216.  13.  XT-disk .......  (block) ......  xd[a-b]<[0-8]>
  217.      XT (8-bit) hard disk controller devices.
  218.         Minor numbers are assigned in the same manner as for the
  219.         normal (AT-type) Hard Drive devices ("/dev/hd*").
  220.  
  221.  14.  Audio .........  (character) ..  audio dsp midi mixer sequencer
  222.         0.  /dev/mixer:  Mixer and Control Device
  223.         1.  /dev/sequencer:  FM-synthesizer and Midi
  224.         2.  /dev/midi:  (for future use)
  225.         3.  /dev/dsp:  Digitized voice (DAC/ADC)
  226.         4.  /dev/audio:  (Reserved for compatibility with Sun)
  227.  
  228.  15.  Joystick ......  (character) ..  js[0-1]
  229.         0.  /dev/js0:  (Left/Right?) joystick.
  230.         1.  /dev/js1:  (Right/Left?) joystick.
  231.  
  232.  16.  Socket ........  (character) ..  net arp
  233.         0.  /dev/net:  Generic layer (sockets)
  234.         1.  /dev/arp:  Address Resolution Protocol (ARP)
  235.  
  236.  17.  AF_UNIX .......  (character) ..  unix
  237.         0.  /dev/unix:  AF_UNIX protocol layer
  238.  
  239.  18.  AF_INET .......  (character) ..  inet ip icmp tcp udp
  240.         0.  /dev/inet:  AF_INET protocol layer
  241.         1.  /dev/ip:  Inernet Protocol (IP)
  242.         2.  /dev/icmp:  Internet Control Message Protocol (ICMP)
  243.         3.  /dev/tcp:  Transmission Control Protocol (TCP)
  244.         4.  /dev/udp:  User Datagram Protocol (UDP)
  245.  
  246.  19.  WE-driver .....  (character) ..  we[0-3]
  247.         0-3.  /dev/we[0-3]:  "WE" driver
  248.  
  249.  20.  DP8390-driver .  (character) ..  wd[0-3] ec[0-3] ne[0-3]
  250.         0-3.  /dev/wd[0-3]:  "DP8390" driver, WD8003
  251.         8-11.  /dev/ec[0-3]:  "DP8390" driver, 3C503
  252.         16-19.  /dev/ne[0-3]:  "DP8390" driver, NE2000
  253.  
  254.  21.  Sony-CD-ROM ...  (block) ......  sonycd
  255.         0.  /dev/sonycd:  Sony CDU-535 CD-ROM, I think.
  256.  
  257.  22.  2nd AT-Cntrlr .  (block) ......  hd1[a-b]<[0-8]>
  258.      Minor numbers are like those of the primary AT-Disk controller.
  259.         THIS MAY WORK FOR HARD-CARDS.
  260.      (Note the "1" in the device name for the secondary controller.
  261.       This is because we may eventually wish to change the names of
  262.       the primary-controller drives to "hd0[a-b]...".)
  263.  
  264.  23.  Mitsumi CD-ROM   (block) ......  mcd
  265.      I don't know much about this one.
  266.  
  267.  31.  Link Interface   (character?) .  ???
  268.         0.  ???
  269.      Link Interface for use with Christoph Niemann's driver for the
  270.      INMOS C012-based high-speed serial link interface card (useful
  271.      for talking to transputers or video digitizers).
  272.  
  273.  
  274. --
  275. Rick Miller  <rick@ee.uwm.edu> | <ricxjo@discus.mil.wi.us>   Ricxjo Muelisto
  276. Send a postcard, get one back! | Enposxtigu bildkarton kaj vi ricevos alion!
  277.           RICK MILLER // 16203 WOODS // MUSKEGO, WIS. 53150 // USA
  278.  
  279.