idinstall(1M) UNIX System V(Base System) idinstall(1M)
NAME
idinstall - add, delete, update, or get device driver configuration data
SYNOPSIS
/etc/conf/bin/idinstall -[adug] [-e] -[msoptnirhcl] dev_name
DESCRIPTION
The idinstall command is called by a Driver Software Package (DSP)
Install script or Remove script to Add (-a), Delete (-d), Update (-u),
or Get (-g) device driver configuration data. idinstall expects to find
driver component files in the current directory. When components are
installed or updated, they are moved or appended to files in the
/etc/conf directory and then deleted from the current directory unless
the -k flag is used. The options for the command are as follows:
Action Specifiers:
-a Add the DSP components
-d Remove the DSP components
-u Update the DSP components
-g Get the DSP components (print to std out, except Master)
Component Specifiers: (*)
-m Master component
-s System component
-o Driver.o component
-p Space.c component
-t Stubs.c component
-n Node (special file) component
-i Inittab component
-r Device Initialization (rc) component
-h Device shutdown (sd) component
-c Mfsys component: file system type config (Master) data
-l Sfsys component: file system type local (System) data
(*) If no component is specified, the default is all except for
the -g option where a single component must be specified
explicitly.
10/89 Page 1
idinstall(1M) UNIX System V(Base System) idinstall(1M)
Miscellaneous:
-e Disable free disk space check
-k Keep files (do not remove from current directory) on add or
update.
In the simplest case of installing a new DSP, the command syntax used by
the DSP's Install script should be idinstall -a dev_name. In this case
the command will require and install a Driver.o, Master and System entry,
and optionally install the Space.c, Stubs.c, Node, Init, Rc, Shutdown,
Mfsys, and Sfsys components if those modules are present in the current
directory.
The Driver.o, Space.c, and Stubs.c files are moved to a directory in
/etc/conf/pack.d. The dev_name is passed as an argument, which is used
as the directory name. The remaining components are stored in the
corresponding directories under /etc/conf in a file whose name is
dev_name. For example, the Node file would be moved to
/etc/conf/node.d/devname.
The idinstall -m usage provides an interface to the idmaster command
which will add, delete, and update mdevice file entries using a Master
file from the local directory. An interface is provided here so that
driver writers have a consistent interface to install any DSP component.
As stated above, driver writers will generally use only the idinstall -a
dev_name form of the command. Other options of idinstall are provided to
allow an Update DSP (i.e., one that replaces an existing device driver
component) to be installed, and to support installation of multiple
controller boards of the same type.
If the call to idinstall uses the -u (update) option, it will:
overlay the files of the old DSP with the files of the new DSP.
invoke the idmaster command with the 'update' option if a Master
module is part of the new DSP.
idinstall also does a verification that enough free disk space is
available to start the reconfiguration process. This is done by calling
the idspace command. idinstall will fail if insufficient space exists,
and exit with a non-zero return code. The -e option bypasses this check.
This version of UNIX Supports Multiple Major numbers per device. For the
case of a DSP package where idinstall is invoked by the installation
software in the DSP, the range specification will be used. The range
"3.6" will mean four major numbers are being requested. The ID Software
will then look for the first four available (consecutive) major numbers.
If a driver supports both block and charcter I/O both block and character
majors are assigned by idinstall. These major numbers do not have to be
the same. For SCSI developers who require them to be the same, a new
field 'v' has to be added to the third field of the master file.
Page 2 10/89
idinstall(1M) UNIX System V(Base System) idinstall(1M)
idinstall makes a record of the last device installed in a file
(/etc/.lastdevadd), and saves all removed files from the last delete
operation in a directory (/etc/.lastdevdel). These files are recovered
by /etc/conf/bin/idmkenv whenever it is determined that a system
reconfiguration was aborted due to a power failure or unexpected system
reboot.
ERROR MESSAGES
An exit value of zero indicates success. If an error was encountered,
idinstall will exit with a non-zero value, and report an error message.
All error messages are designed to be self-explanatory. Typical error
message that can be generated by idinstall are as follows:
Device package already exists.
Cannot make the driver package directory.
Cannot remove driver package directory.
Local directory does not contain a Driver object (Driver.o) file.
Local directory does not contain a Master file.
Local directory does not contain a System file.
Cannot remove driver entry.
SEE ALSO
idspace(1m), idcheck(1m).
mdevice(4), sdevice(4) in the Programmer's Reference Manual.
10/89 Page 3