# This is a sample device table file for use with mkfs.jffs2.  You can
# do all sorts of interesting things with a device table file.  For
# example, if you want to adjust the permissions on a particular file
# you can just add an entry like:
#   /sbin/foobar	f	2755	0	0	-	-	-	-	-
# and (assuming the file /sbin/foobar exists) it will be made setuid
# root (regardless of what its permissions are on the host filesystem.
# 
# Device table entries take the form of:
# <name>		<type>	<mode>	<uid>	<gid>	<major>	<minor>	<start>	<inc>	<count>
# where name is the file name,  type can be one of: 
#	f	A regular file
#	d	Directory
#	c	Character special device file
#	b	Block special device file
#	p	Fifo (named pipe)
# uid is the user id for the target file, gid is the group id for the
# target file.  The rest of the entried apply only to device special
# file.

# When building a target filesystem, it is desirable to not have to
# become root and then run 'mknod' a thousand times.  Using a device 
# table you can create device nodes and directories "on the fly".
# Furthermore, you can use a single table entry to create a many device
# minors.  For example, if I wanted to create /dev/hda and /dev/hda[0-15]
# I could just use the following two table entries:
#   /dev/hda	b	640	0	0	3	0	0	0	-
#   /dev/hda	b	640	0	0	3	1	1	1	15
#
# Have fun
# -Erik Andersen <andersen@codepoet.org>
#

#<name>		<type>	<mode>	<uid>	<gid>	<major>	<minor>	<start>	<inc>	<count>
/dev		d	755	0	0	-	-	-	-	-
/dev/mem	c	640	0	0	1	1	0	0	-
/dev/kmem	c	640	0	0	1	2	0	0	-
/dev/null	c	640	0	0	1	3	0	0	-
/dev/zero	c	640	0	0	1	5	0	0	-
/dev/random	c	640	0	0	1	8	0	0	-
/dev/urandom	c	640	0	0	1	9	0	0	-
/dev/tty	c	666	0	0	5	0	0	0	-
/dev/tty	c	666	0	0	4	0	0	1	6
/dev/console	c	640	0	0	5	1	0	0	-
/dev/ram	b	640	0	0	1	1	0	0	-
/dev/ram	b	640	0	0	1	0	0	1	4
/dev/loop	b	640	0	0	7	0	0	1	2
/dev/ptmx	c	666	0	0	5	2	0	0	-
#/dev/ttyS	c	640	0	0	4	64	0	1	4
#/dev/psaux	c	640	0	0	10	1	0	0	-
#/dev/rtc	c	640	0	0	10	135	0	0	-

# Adjust permissions on some normal files
#/etc/shadow	f	600	0	0	-	-	-	-	-
#/bin/tinylogin	f	4755	0	0	-	-	-	-	-

# User-mode Linux stuff
/dev/ubda	b	640	0	0	98	0	0	0	-
/dev/ubda	b	640	0	0	98	1	1	1	15

# IDE Devices
/dev/hda	b	640	0	0	3	0	0	0	-
/dev/hda	b	640	0	0	3	1	1	1	15
/dev/hdb	b	640	0	0	3	64	0	0	-
/dev/hdb	b	640	0	0	3	65	1	1	15
#/dev/hdc	b	640	0	0	22	0	0	0	-
#/dev/hdc	b	640	0	0	22	1	1	1	15
#/dev/hdd	b	640	0	0	22	64	0	0	-
#/dev/hdd	b	640	0	0	22	65	1	1	15
#/dev/hde	b	640	0	0	33	0	0	0	-
#/dev/hde	b	640	0	0	33	1	1	1	15
#/dev/hdf	b	640	0	0	33	64	0	0	-
#/dev/hdf	b	640	0	0	33	65	1	1	15
#/dev/hdg	b	640	0	0	34	0	0	0	-
#/dev/hdg	b	640	0	0	34	1	1	1	15
#/dev/hdh	b	640	0	0	34	64	0	0	-
#/dev/hdh	b	640	0	0	34	65	1	1	15

# SCSI Devices
#/dev/sda	b	640	0	0	8	0	0	0	-
#/dev/sda	b	640	0	0	8	1	1	1	15
#/dev/sdb	b	640	0	0	8	16	0	0	-
#/dev/sdb	b	640	0	0	8	17	1	1	15
#/dev/sdc	b	640	0	0	8	32	0	0	-
#/dev/sdc	b	640	0	0	8	33	1	1	15
#/dev/sdd	b	640	0	0	8	48	0	0	-
#/dev/sdd	b	640	0	0	8	49	1	1	15
#/dev/sde	b	640	0	0	8	64	0	0	-
#/dev/sde	b	640	0	0	8	65	1	1	15
#/dev/sdf	b	640	0	0	8	80	0	0	-
#/dev/sdf	b	640	0	0	8	81	1	1	15
#/dev/sdg	b	640	0	0	8	96	0	0	-
#/dev/sdg	b	640	0	0	8	97	1	1	15
#/dev/sdh	b	640	0	0	8	112	0	0	-
#/dev/sdh	b	640	0	0	8	113	1	1	15
#/dev/sg		c	640	0	0	21	0	0	1	15
#/dev/scd	b	640	0	0	11	0	0	1	15
#/dev/st		c	640	0	0	9	0	0	1	8
#/dev/nst	c	640	0	0	9	128	0	1	8
#/dev/st	c	640	0	0	9	32	1	1	4
#/dev/st	c	640	0	0	9	64	1	1	4
#/dev/st	c	640	0	0	9	96	1	1	4

# Floppy disk devices
#/dev/fd		b	640	0	0	2	0	0	1	2
#/dev/fd0d360	b	640	0	0	2	4	0	0	-
#/dev/fd1d360	b	640	0	0	2	5	0	0	-
#/dev/fd0h1200	b	640	0	0	2	8	0	0	-
#/dev/fd1h1200	b	640	0	0	2	9	0	0	-
#/dev/fd0u1440	b	640	0	0	2	28	0	0	-
#/dev/fd1u1440	b	640	0	0	2	29	0	0	-
#/dev/fd0u2880	b	640	0	0	2	32	0	0	-
#/dev/fd1u2880	b	640	0	0	2	33	0	0	-

# All the proprietary cdrom devices in the world
#/dev/aztcd	b	640	0	0	29	0	0	0	-
#/dev/bpcd	b	640	0	0	41	0	0	0	-
#/dev/capi20	c	640	0	0	68	0	0	1	2
#/dev/cdu31a	b	640	0	0	15	0	0	0	-
#/dev/cdu535	b	640	0	0	24	0	0	0	-
#/dev/cm206cd	b	640	0	0	32	0	0	0	-
#/dev/sjcd	b	640	0	0	18	0	0	0	-
#/dev/sonycd	b	640	0	0	15	0	0	0	-
#/dev/gscd	b	640	0	0	16	0	0	0	-
#/dev/sbpcd	b	640	0	0	25	0	0	0	-
#/dev/sbpcd	b	640	0	0	25	0	0	1	4
#/dev/mcd	b	640	0	0	23	0	0	0	-
#/dev/optcd	b	640	0	0	17	0	0	0	-

