#!/bin/bash # The normal set of Linux devices is too big for embedded use # (takes too many inodes for small filesystems). # This script describes an adequate subset for most purposes. # The output is in a form suitable for use by genext2fs. # See http://packages.debian.org/genext2fs # The arithmetic shell expansion syntax of bash is used, # as in "$((5+$ix))". Everything else in here should be # compatible with all Bourne shell variants. # Larry Doolittle January 2002 echo "drwx /dev" for ix in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do echo "brw- 1,$ix /dev/ram$ix" done # tty/console devices for ix in 0 1 2 3 4 5 6 7 8 9 10; do echo "crw- 4,$ix /dev/tty$ix" done echo "crw- 5,0 /dev/tty" # Traditional ttySx for ix in 0 1 2 3; do echo "crw- 4,$((64+$ix)) /dev/ttyS$ix" done # Updated SA1100 builtin serial ports, for linux-2.4.2 or later for ix in 0 1 2; do echo "crw- 204,$((5+$ix)) /dev/ttySA$ix" done # console, choose one: echo "crw- 5,1 /dev/console" # ln -s ttySA0 console # xterm needs some tty/pty pairs for ix in 0 1 2 3 4 5 6 7 8 9; do echo "crw- 2,$ix /dev/ptyp$ix" echo "crw- 3,$ix /dev/ttyp$ix" done # skip kmem and port; what was 1,6? echo "crw- 1,1 /dev/mem" # echo "crw- 1,2 /dev/kmem" echo "crw- 1,3 /dev/null" # echo "crw- 1,4 /dev/port" echo "crw- 1,5 /dev/zero" echo "crw- 1,7 /dev/full" echo "crw- 1,8 /dev/random" echo "crw- 1,9 /dev/urandom" # what are these? Ask Stuart. # echo mknod -m 640 vcs0 c 7 0; echo chown root:root vcs0 # echo mknod -m 644 initrd b 0 250; echo chown root:root initrd # echo mknod -m 664 qft0 c 25 0; echo chown root:root qft0 echo "drwx /dev/pts" # mtd (Flash) support for ix in 0 1 2 3; do echo "crw- 90,$((2*$ix+0)) /dev/mtd$ix" echo "crw- 90,$((2*$ix+1)) /dev/mtdr$ix" echo "brw- 31,$ix /dev/mtdblock$ix" done