di_bus_addr(3devinfo) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

di_bus_addr(3devinfo)

di_...name(3DEVINFO) Device Information Library Functions di_...name(3DEVINFO)

NAME
       di_binding_name,  di_bus_addr,  di_compatible_names,  di_devid, di_dri‐
       ver_name,  di_driver_ops,  di_driver_major,   di_instance,   di_nodeid,
       di_node_name - return libdevinfo node information

SYNOPSIS
       cc [ flag... ] file... -ldevinfo [ library... ]
       #include <libdevinfo.h>

       char *di_binding_name(di_node_t node);


       char *di_bus_addr(di_node_t node);


       int di_compatible_names(di_node_t node, char **names);


       ddi_devid_t di_devid(di_node_t node);


       char *di_driver_name(di_node_t node);


       uint_t di_driver_ops(di_node_t node);


       int di_driver_major(di_node_t node);


       int di_instance(di_node_t node);


       int di_nodeid(di_node_t node);


       char *di_node_name(di_node_t node);

PARAMETERS
       names    The address of a pointer.


       node     A handle to a device node.


DESCRIPTION
       These functions extract information associated with a device node.

RETURN VALUES
       The  di_binding_name()  function returns a pointer to the binding name.
       The binding name is the name used by the system to select a driver  for
       the device.


       The  di_bus_addr()  function  returns  a  pointer  to a null-terminated
       string containing the assigned bus address for the device. NULL is  re‐
       turned  if  a  bus address has not been assigned to the device. A zero-
       length string may be returned and is considered a valid bus address.


       The return value of di_compatible_names() is the number  of  compatible
       names. names is updated to point to a buffer contained within the snap‐
       shot.  The  buffer contains a concatenation of null-terminated strings,
       for example:

         <name1>/0<name2>/0...<namen>/0



       See the discussion of generic names in Writing Device Drivers in Oracle
       Solaris 11.4 for a description of how compatible names are used by  So‐
       laris to achieve driver binding for the node.


       The di_devid() function returns the device ID for node, if it is regis‐
       tered.  Otherwise, a null pointer is returned. Interfaces in the libde‐
       vid(3LIB) library may be used to manipulate the handle  to  the  device
       id.  This  function  is obsolete and might be removed from a future So‐
       laris release. Applications should use the "devid" property instead.


       The di_driver_name() function returns the name of the driver  bound  to
       the  node.  A null pointer is returned if node is not bound to any dri‐
       ver.


       The di_driver_ops() function returns a bit array of device driver entry
       points that are supported by the driver bound to  this  node.  Possible
       bit   fields   supported  by  the  driver  are  DI_CB_OPS,  DI_BUS_OPS,
       DI_STREAM_OPS.


       The di_driver_major() function returns the major number associated with
       the driver bound to node. If there is no driver bound to the node, this
       function returns −1.


       The di_instance() function returns the instance number of the device. A
       value of -1 indicates an instance number has not been assigned  to  the
       device by the system.


       The  di_nodeid()  function returns the type of device, which may be one
       of the following possible values: DI_PSEUDO_NODEID, DI_PROM_NODEID, and
       DI_SID_NODEID. Devices of type DI_PROM_NODEID may have additional prop‐
       erties that are defined by the  PROM.  See  di_prom_prop_data(3DEVINFO)
       and di_prom_prop_lookup_bytes(3DEVINFO).


       The  di_node_name()  function  returns  a  pointer to a null-terminated
       string containing the node name.

EXAMPLES
       See di_init(3DEVINFO) for an example demonstrating typical use of these
       functions.

ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE VALUE _ Interface StabilityCommitted (di_devid() is obsolete) _
       MT-LevelSafe


SEE ALSO
       libdevinfo(3LIB),       di_init(3DEVINFO),      di_prom_init(3DEVINFO),
       di_prom_prop_data(3DEVINFO), di_prom_prop_lookup_bytes(3DEVINFO),  lib‐
       devid(3LIB), attributes(7)


       Writing Device Drivers in Oracle Solaris 11.4

Oracle Solaris 11.4               22 Mar 2004             di_...name(3DEVINFO)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3