ddi_prop_exists(9f) 맨 페이지 - 윈디하나의 솔라나라

개요

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

ddi_prop_exists(9f)

ddi_prop_exists(9F)            Kernel Functions            ddi_prop_exists(9F)



NAME
       ddi_prop_exists - check for the existence of a property

SYNOPSIS
       #include <sys/ddi.h>
       #include <sys/sunddi.h>

       int ddi_prop_exists(dev_t match_dev, dev_info_t *dip, uint_t flags,
            char *name);

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI).

PARAMETERS
       match_dev

           Device number associated with property or DDI_DEV_T_ANY.


       dip

           Pointer  to  the  device  info  node  of device whose property list
           should be searched.


       flags

           Possible flag values are some combination of:

           DDI_PROP_DONTPASS

               Do not pass request to parent device information  node  if  the
               property is not found.


           DDI_PROP_NOTPROM

               Do  not  look  at PROM properties (ignored on platforms that do
               not support PROM properties).



       name

           String containing the name of the property.


DESCRIPTION
       ddi_prop_exists() checks for the existence of a property regardless  of
       the property value data type.


       Properties  are searched for based on the dip, name, and match_dev. The
       property search order is as follows:

           1.     Search software properties created by the driver.


           2.     Search the software properties created  by  the  system  (or
                  nexus nodes in the device info tree).


           3.     Search the driver global properties list.


           4.     If  DDI_PROP_NOTPROM  is not set, search the PROM properties
                  (if they exist).


           5.     If DDI_PROP_DONTPASS is not set, pass this  request  to  the
                  parent device information node.


           6.     Return 0 if not found and 1 if found.




       Usually, the match_dev argument should be set to the actual device num‐
       ber that this property is associated with. However,  if  the  match_dev
       argument  is  DDI_DEV_T_ANY,  then  ddi_prop_exists()  will  match  the
       request regardless of the match_dev the property was created with. That
       is  the  first  property whose name matches name will be returned. If a
       property was created with match_dev set to DDI_DEV_T_NONE then the only
       way  to look up this property is with a match_dev set to DDI_DEV_T_ANY.
       PROM  properties   are   always   created   with   match_dev   set   to
       DDI_DEV_T_NONE.


       name must always be set to the name of the property being looked up.

RETURN VALUES
       ddi_prop_exists() returns 1 if the property exists and 0 otherwise.

CONTEXT
       These functions can be called from user or kernel context.

EXAMPLES
       Example 1 : Using ddi_prop_exists()



       The following example demonstrates the use of ddi_prop_exists().




         /*
              * Enable "whizzy" mode if the "whizzy-mode" property exists
              */
              if (ddi_prop_exists(xx_dev, xx_dip, DDI_PROP_NOTPROM,
                      "whizzy-mode") == 1) {
                    xx_enable_whizzy_mode(xx_dip);
              } else {
                    xx_disable_whizzy_mode(xx_dip);
              }


SEE ALSO
       ddi_prop_get_int(9F),     ddi_prop_lookup(9F),     ddi_prop_remove(9F),
       ddi_prop_update(9F)


       Writing Device Drivers in Oracle Solaris 11.4



Oracle Solaris 11.4               22 May 1995              ddi_prop_exists(9F)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3