File Formats driver.itu(4)
NAME
driver.itu - Driver Update (DU) description file
SYNOPSIS
driver.itu
DESCRIPTION
The driver.itu file specifies information about installable
kernel modules and device drivers (see pkg_drv(1M)). The
information is used early in the Solaris (Intel Platform
Edition) boot to augment install media with additional boot-
able components.
Typical driver components include, but are not limited to,
the realmode driver (driver.bef), the Solaris driver, the
Solaris driver's configuration file (driver.conf), and the
driver manual page (driver.7D). The description file
(driver.itu) lists the components being delivered and
describes the changes that must occur on the system to boot
from the device. By default, the pkg_drv(1M) command
automatically creates the description file, though it can
be manually created (see Example 1).
The driver.itu file is included in the DU diskette format
and is used during an install boot, since the driver may be
needed to access the install medium.
The driver.itu file is an ASCII text file. The format is
line-oriented, with a single keyword=value assignment on
each line. The lines in the file must follow the following
syntactical rules:
Lines with # in the first column are comments.
Keyword assignments are made with the = operator. Space and
tabs around this operator are permitted.
Common items can be grouped using { and }, but only one
level of nesting is permitted.
The following keywords must be assigned values in the
driver.itu configuration file.
name Name of the driver being delivered.
itu_type Defines whether the DU delivers a complete new
driver or just pieces that replace or update a
driver that was delivered as part of a Solaris
release. Valid types are complete and partial.
interface_version
Internal versioning. Currently set to Version 1.0.
The following keywords are optionally assigned values in the
driver.itu description file.
driverpkg Name of the package where the driver delivered in
this DU resides on the install medium. This key-
word must be defined if a Solaris module is
delivered.
driverpkgvers
The pkginfo VERSION value for the package that
exists on the install medium. This keyword must
be defined if the driverpkg keyword has an
assigned value.
driverpkgdesc
The pkginfo NAME value for the package that exists
on the install medium. The descriptive name of
the package. This keyword must be assigned if the
driverpkg keyword has an assigned value.
class Driver entry to add to the /etc/driver_classes
file.
system_entry
Driver entry to add to the /etc/system file. Mul-
tiple assignments are permitted, each adding a
line to the /etc/system file.
devlink_entry
Driver entry to add to the /etc/devlink.tab file.
Multiple assignments are permitted, each adding a
line to the /etc/devlink.tab file.
bef_name Name of the realmode driver (bef). This keyword
must have an assignment if the DU is only adding
an entry in the device database.
legacy_device
Set to FALSE by default. Set to TRUE only if the
realmode driver supports the legacyprobe() func-
tion, for example, for non-self-identifying dev-
ices, such as ISA and VLB.
driver_path
Location of the Solaris driver on the installed
system. The default location is
/platform/machine-type/kernel/drv, where
machine-type is the value returned from the uname
-m command.
realmode_path
Path to the realmode driver. Required only when
updating an existing realmode driver. If not
defined, a reasonable default path will be
assigned.
load_always
Set to FALSE by default. Set to TRUE only if the
realmode driver always must be loaded at boot
time.
install_always
Set to FALSE by default. Set to TRUE only if the
module must always be installed on the Solaris
system.
The following keywords modify the boot system's device
description database. If any of these keywords are assigned
values, they must all be assigned values.
dev_id Unique device identifier. Multiple assignments
are permitted; each assignment describes the name
of a device the driver supports.
node_name Name of the driver as it will appear in the device
tree under the /devices directory. Multiple
assignments are permitted; each assignment
describes the name of a device the driver sup-
ports.
dev_type Type of device. Used to tell if the driver should
be displayed in the list of bootable devices. One
of com, mem, mfc, msd, net, oth, plat, ptr, vid,
or prt.
bus_type Bus type supported by the driver (such as ISA, PnP
ISA, EISA, MCA, PCI, PCMCIA, or all).
describe_dev
Free-form descriptive text. Limited to 80 charac-
ters and must be a quoted string.
The following keywords, though unsupported, might occassion-
ally appear in driver.itu files generated by Sun.
driverpkgarch
The pkginfo ARCH value for the package that exists
on the install medium. The architecture of the
package.
befpkg Name of the package where the bef delivered in
this DU resides on the install medium. This key-
word must be defined if a Solaris module is
delivered.
befpkgvers
The pkginfo VERSION value for the package that
exists on the install medium. This keyword must
be defined if the befpkg keyword has an assigned
value.
befpkgdesc
The pkginfo NAME value for the package that exists
on the install medium. The descriptive name of
the package. This keyword must be assigned if the
befpkg keyword has an assigned value.
befpkgarch
The pkginfo ARCH value for the package that exists
on the install medium. The architecture of the
package.
manpkg Name of the package where the man pages delivered
in this DU reside on the install medium. This
keyword must be defined if a Solaris module is
delivered.
manpkgvers
The pkginfo VERSION value for the package that
exists on the install medium. This keyword must
be defined if the manpkg keyword has an assigned
value.
manpkgdesc
The pkginfo NAME value for the package that exists
on the install medium. The descriptive name of
the package. This keyword must be assigned if the
manpkg keyword has an assigned value.
manpkgarch
The pkginfo ARCH value for the package that exists
on the install medium. The architecture of the
package.
patchid The Sun patch ID assigned to a Solaris patch asso-
ciated with this driver.
patch_requires
A list of patches required for the installation of
patchid.
patch_obsoletes
A list of patches obsoleted by the installation of
patchid.
patch_incompat
A list of patches incompatible with patchid.
file_edit
A keyword which applies sed style edits to a file,
early in boot.
EXAMPLES
Example 1: Simple driver.itu Entry
This example describes a driver that supports two models of
a controller. The different models are distinguishable
within the PCI configuration space, and this description
file will cause different descriptions of the device to be
presented to the end user based upon which model is found.
Note that the bus_type didn't need to be grouped with the
descriptions, since it was common to both descriptions.
#
#ident "@(#)ABCdisk.itu 1.1 98/06/01 SMI"
#
interface_version = 1.0
itu_type = complete
name = ABCdisk
class = scsi
dev_type = msd
bus_type = pci
{
dev_id = pci1234,1
node_name = pci1234,1
describe_dev = "ABC BR-549 SCSI Controller"
}
{
dev_id = pci1234,2
node_name = pci1234,2
describe_dev = "ABC BR-555 SCSI Controller"
}
driverpkg=ABCdisk
driverpkgvers="1.0.0,REV=1998.06.01.07.22"
driverpkgdesc="ABC Scsi Controllers"
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWpkgd |
|_____________________________|_____________________________|
| CSI | Enabled |
|_____________________________|_____________________________|
| Interface Stability | Evolving |
|_____________________________|_____________________________|
SEE ALSO
add_drv(1M), boot(1M), pkg_drv(1M), pkgadd(1M), devicedb(4),
driver.conf(4), attributes(5).
Writing Device Drivers
SunOS 5.7 Last change: 24 May 1999
|