[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    ddi_create_minor_node(9F) manual page Table of Contents

Name

ddi_create_minor_node - create a minor node for this device

Synopsis

#include <sys/stat.h>
#include <sys/sunddi.h>

int ddi_create_minor_node(dev_info_t *dip, char *name, int spec_type, int minor_num, char *node_type, int is_clone);

Interface Level

Solaris DDI specific (Solaris DDI).

Arguments

dip
A pointer to the device’s dev_info structure.
name
The name of this particular minor device.
spec_type
S_IFCHR or S_IFBLK for character or block minor devices respectively.
minor_num
The minor number for this particular minor device.
node_type
Any string that uniquely identifies the type of node. The following predefined node types are provided with this release:
DDI_NT_SERIAL
For serial ports
DDI_NT_SERIAL_MB
For on board serial ports
DDI_NT_SERIAL_DO
For dial out ports
DDI_NT_SERIAL_MB_DO
For on board dial out ports
DDI_NT_BLOCK
For hard disks
DDI_NT_BLOCK_CHAN
For hard disks with channel or target numbers
DDI_NT_CD
For CDROM drives
DDI_NT_CD_CHAN
For CDROM drives with channel or target numbers
DDI_NT_FD
For floppy disks
DDI_NT_TAPE
For tape drives
DDI_NT_NET
For network devices
DDI_NT_DISPLAY
For display devices
DDI_PSEUDO
For pseudo devices
is_clone
If the device is a clone device then this flag is set to CLONE_DEV else it is set to 0.

Description

ddi_create_minor_node() provides the necessary information to enable the system to create the /dev and /devices hierarchies. The name is used to create the minor name of the block or character special file under the /devices hierarchy. At sign (@), slash (/), and space are not allowed. The spec_type specifies whether this is a block or character device. The minor_num is the minor number for the device.
The node_type is used to create the names in the /dev hierarchy that refers to the names in the /devices hierarchy. See disks(1M) , ports(1M) , tapes(1M) , devlinks(1M) . Finally is_clone determines if this is a clone device or not.

Return Values

ddi_create_minor_node() returns:

DDI_SUCCESS
if it was able to allocate memory, create the minor data structure, and place it into the linked list of minor devices for this driver.
DDI_FAILURE
if minor node creation failed.

Examples

The following example creates a data structure describing a minor device called foo which has a minor number of 0. It is of type DDI_NT_BLOCK (a block device) and it is not a clone device.

ddi_create_minor_node(dip, "foo", S_IFBLK, 0, DDI_NT_BLOCK, 0);

See Also

add_drv(1M) , devlinks(1M) , disks(1M) , drvconfig(1M) , ports(1M) , tapes(1M) , attach(9E) , ddi_remove_minor_node(9F)


Table of Contents