 |
Index for Section 9 |
|
 |
Alphabetical listing for C |
|
 |
Bottom of page |
|
controller_config(9s)
NAME
controller_config - General: Contains information needed to create a
controller data structure
SYNOPSIS
struct controller_config {
long revision;
char subsystem_name[NAME_SIZE_REG];
char bus_name[NAME_SIZE_REG];
struct driver * devdriver;
ulong flags;
long ctlr_num;
long slot_num
long parent_instance;};
MEMBERS
revision
Specifies the version number of the controller_config structure. You
set this member to the constant CTLR_CONFIG_REV_V2. Compaq defines this
constant to the appropriate version number in the
/usr/sys/include/io/common/devdriver.h file.
subsystem_name
Specifies the name of the device driver. This name is a string that
matches the string you specified for the entry_name item in the
/etc/sysconfigtab database. Typically, third-party driver writers
specify the driver name (followed by a colon) in the sysconfigtab file
fragment, which is appended to the /etc/sysconfigtab database during
the driver product installation.
bus_name
Specifies the name of the bus to which the controller is connected. You
can pass any string up to a maximum of thirty characters. You can pass
the constant DRIVER_WILDNAME to indicate a wildcard (this bus can be
any bus supported by Compaq). For buses supported by Compaq, the bus
name is one of the valid device definition keywords associated with the
bus. See the System Administration guide (specifically, the section
that discusses how to build the kernel to add support for a new device)
for information on how to obtain the device definition keywords
asssociated with devices supported by Compaq.
Third-party driver writers who write drivers that operate on non-Compaq
buses can select a string that might include the vendor and product
names. The string could also include version and release numbers. This
type of naming scheme reduces the chance of name conflicts with other
vendors.
devdriver
Specifies a pointer to the driver's driver data structure. You set
this member to the name of the filled-in driver data structure for this
device driver.
flags
This is a set of bit indicators that allows for further refinement of
the controller structure to be created. The following bit definitions
are defined:
CONFIG_PERSIST
Set this indicator bit to specify that the created controller
structure is to persist in the hwconfig persistence database.
CONFIG_PREF_CTLRNO
Set this indicator bit to specify that the value in the ctlr_num
member field is valid. If this bit is clear, the ctlr_num member
field is ignored.
CONFIG_PREF_SLOTNO
Set this indicator bit to specify that the value in the slot_num
member field is valid. If this bit is clear, the slot_num member
field is ignored.
CONFIG_PREF_PBUS_INST
Set this indicator bit to specify that the value in the
parent_instance member field is valid. If this bit is clear, the
parent_instance member field is ignored.
ctlr_num
Specifies the preferred instance number for the controller structure to
be created. Normally, controller instance numbers are assigned
sequentially by the system. This member allows for a controller to be
assigned a particular instance number.
slot_num
Specifies the node or slot number of the parent bus that this
controller exists in. This is primarily for the recreation of the
hardware topology from the hardware persistence database, or for
those controller options that are fixed on the system platform.
parent_instance
Specifies the instance number of the parent bus that this controller
exists in. This is primarily for the recreation of the hardware
topology from the hardware persistence database, or for those
controller options that are fixed on the system platform.
DESCRIPTION
The controller_config data structure contains the information needed to
create a controller data structure and to integrate it into the system
(hardware) configuration tree. To create a controller data structure, you
set the members of the controller_config data structure to appropriate
values and call the create_controller_struct routine. This routine takes as
an argument a pointer to the filled-in controller_config data structure.
FILES
<io/common/devdriver.h>
SEE ALSO
Routines: create_controller_struct(9r)
Data Structures: controller(9s), device_config(9s), driver(9s)
 |
Index for Section 9 |
|
 |
Alphabetical listing for C |
|
 |
Top of page |
|