The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

ddi_create_minor_node (9)
  • >> ddi_create_minor_node (9) ( Solaris man: Ядро )
  •  

    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,
        minor_t minor_num, char *node_type, int flag);
    

     

    INTERFACE LEVEL

    Solaris DDI specific (Solaris DDI).  

    PARAMETERS

    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 literal 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 DLPI style 1 or style 2 network devices

    DDI_NT_DISPLAY

    For display devices

    DDI_PSEUDO

    For pseudo devices

    flag

    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 flag determines if this is a clone device or not, and what device class the node belongs to.  

    RETURN VALUES

    ddi_create_minor_node() returns:

    DDI_SUCCESS

    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

    Minor node creation failed.

     

    CONTEXT

    The ddi_create_minor_node() function can be called from user context. It is typically called from attach(9E) or ioctl(9E).  

    EXAMPLES

    Example 1 Create Data Structure Describing Minor Device with Minor Number of 0

    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)

    Writing Device Drivers  

    NOTES

    If the driver is for a network device (node_type DDI_NT_NET), note that the driver name will undergo the driver name constraints identified in the NOTES section of dlpi(7P). Additionally, the minor name must match the driver name for a DLPI style 2 provider. If the driver is a DLPI style 1 provider, the minor name must also match the driver name with the exception that the ppa is appended to the minor name.

    Non-gld(7D)-based DLPI network streams drivers are encouraged to switch to gld(7D). Failing this, a driver that creates DLPI style-2 minor nodes must specify CLONE_DEV for its style-2 ddi_create_minor_node() nodes and use qassociate(9F). A driver that supports both style-1 and style-2 minor nodes should return DDI_FAILURE for DDI_INFO_DEVT2INSTANCE and DDI_INFO_DEVT2DEVINFO getinfo(9E) calls to style-2 minor nodes. (The correct association is already established by qassociate(9F)). A driver that only supports style-2 minor nodes can use ddi_no_info(9F) for its getinfo(9E) implementation. For drivers that do not follow these rules, the results of a modunload(1M) of the driver or a cfgadm(1M) remove of hardware controlled by the driver are undefined.  

    WARNING

    Drivers must remove references to GLOBAL_DEV, NODEBOUND_DEV, NODESPECIFIC_DEV, and ENUMERATED_DEV to compile under Solaris 10 and later versions.


     

    Index

    NAME
    SYNOPSIS
    INTERFACE LEVEL
    PARAMETERS
    DESCRIPTION
    RETURN VALUES
    CONTEXT
    EXAMPLES
    SEE ALSO
    NOTES
    WARNING


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру