Lines Matching refs:prop

1447 di_prop_next(di_node_t node, di_prop_t prop)  in di_prop_next()  argument
1462 if (prop != DI_PROP_NIL) in di_prop_next()
1463 list = DI_PROP(prop)->prop_list; in di_prop_next()
1468 prop = di_prop_drv_next(node, prop); in di_prop_next()
1471 prop = di_prop_sys_next(node, prop); in di_prop_next()
1474 prop = di_prop_global_next(node, prop); in di_prop_next()
1477 prop = di_prop_hw_next(node, prop); in di_prop_next()
1483 } while ((prop == DI_PROP_NIL) && (list <= DI_PROP_HW_LIST)); in di_prop_next()
1485 return (prop); in di_prop_next()
1489 di_prop_devt(di_prop_t prop) in di_prop_devt() argument
1491 return (makedev(DI_PROP(prop)->dev_major, DI_PROP(prop)->dev_minor)); in di_prop_devt()
1495 di_prop_name(di_prop_t prop) in di_prop_name() argument
1497 if (DI_PROP(prop)->prop_name == 0) in di_prop_name()
1500 return ((caddr_t)prop - DI_PROP(prop)->self + DI_PROP(prop)->prop_name); in di_prop_name()
1504 di_prop_type(di_prop_t prop) in di_prop_type() argument
1506 uint_t flags = DI_PROP(prop)->prop_flags; in di_prop_type()
1511 if (DI_PROP(prop)->prop_len == 0) in di_prop_type()
1547 di_prop_ints(di_prop_t prop, int **prop_data) in di_prop_ints() argument
1549 if (DI_PROP(prop)->prop_len == 0) in di_prop_ints()
1552 if ((DI_PROP(prop)->prop_data == 0) || in di_prop_ints()
1553 (DI_PROP(prop)->prop_data == (di_off_t)-1)) { in di_prop_ints()
1559 *prop_data = (int *)((void *)((caddr_t)prop - DI_PROP(prop)->self in di_prop_ints()
1560 + DI_PROP(prop)->prop_data)); in di_prop_ints()
1563 DI_PROP(prop)->prop_len, DI_PROP_TYPE_INT, 0)); in di_prop_ints()
1567 di_prop_int64(di_prop_t prop, int64_t **prop_data) in di_prop_int64() argument
1569 if (DI_PROP(prop)->prop_len == 0) in di_prop_int64()
1572 if ((DI_PROP(prop)->prop_data == 0) || in di_prop_int64()
1573 (DI_PROP(prop)->prop_data == (di_off_t)-1)) { in di_prop_int64()
1579 *prop_data = (int64_t *)((void *)((caddr_t)prop - DI_PROP(prop)->self in di_prop_int64()
1580 + DI_PROP(prop)->prop_data)); in di_prop_int64()
1583 DI_PROP(prop)->prop_len, DI_PROP_TYPE_INT64, 0)); in di_prop_int64()
1587 di_prop_strings(di_prop_t prop, char **prop_data) in di_prop_strings() argument
1589 if (DI_PROP(prop)->prop_len == 0) in di_prop_strings()
1592 if ((DI_PROP(prop)->prop_data == 0) || in di_prop_strings()
1593 (DI_PROP(prop)->prop_data == (di_off_t)-1)) { in di_prop_strings()
1599 *prop_data = (char *)((caddr_t)prop - DI_PROP(prop)->self in di_prop_strings()
1600 + DI_PROP(prop)->prop_data); in di_prop_strings()
1603 DI_PROP(prop)->prop_len, DI_PROP_TYPE_STRING, 0)); in di_prop_strings()
1607 di_prop_bytes(di_prop_t prop, uchar_t **prop_data) in di_prop_bytes() argument
1609 if (DI_PROP(prop)->prop_len == 0) in di_prop_bytes()
1612 if ((DI_PROP(prop)->prop_data == 0) || in di_prop_bytes()
1613 (DI_PROP(prop)->prop_data == (di_off_t)-1)) { in di_prop_bytes()
1619 *prop_data = (uchar_t *)((caddr_t)prop - DI_PROP(prop)->self in di_prop_bytes()
1620 + DI_PROP(prop)->prop_data); in di_prop_bytes()
1623 DI_PROP(prop)->prop_len, DI_PROP_TYPE_BYTE, 0)); in di_prop_bytes()
1630 match_prop(di_prop_t prop, dev_t match_dev, const char *name, int type) in match_prop() argument
1635 if (di_prop_name(prop) == NULL) { in match_prop()
1641 if (strcmp(name, di_prop_name(prop)) != 0) in match_prop()
1644 if ((match_dev != DDI_DEV_T_ANY) && (di_prop_devt(prop) != match_dev)) in match_prop()
1650 prop_type = di_prop_type(prop); in match_prop()
1662 di_prop_t prop = DI_PROP_NIL; in di_prop_search() local
1674 while ((prop = di_prop_next(node, prop)) != DI_PROP_NIL) { in di_prop_search()
1676 di_prop_name(prop), di_prop_devt(prop), in di_prop_search()
1677 di_prop_type(prop))); in di_prop_search()
1678 if (match_prop(prop, match_dev, name, type)) in di_prop_search()
1679 return (prop); in di_prop_search()
1688 di_prop_t prop = DI_PROP_NIL; in di_prop_find() local
1696 while ((prop = di_prop_next(node, prop)) != DI_PROP_NIL) { in di_prop_find()
1698 di_prop_name(prop), di_prop_devt(prop), in di_prop_find()
1699 di_prop_type(prop))); in di_prop_find()
1701 if (strcmp(name, di_prop_name(prop)) == 0 && in di_prop_find()
1703 di_prop_devt(prop) == match_dev)) in di_prop_find()
1704 return (prop); in di_prop_find()
1714 di_prop_t prop; in di_prop_lookup_ints() local
1716 if ((prop = di_prop_search(dev, node, prop_name, in di_prop_lookup_ints()
1720 return (di_prop_ints(prop, (void *)prop_data)); in di_prop_lookup_ints()
1727 di_prop_t prop; in di_prop_lookup_int64() local
1729 if ((prop = di_prop_search(dev, node, prop_name, in di_prop_lookup_int64()
1733 return (di_prop_int64(prop, (void *)prop_data)); in di_prop_lookup_int64()
1740 di_prop_t prop; in di_prop_lookup_strings() local
1742 if ((prop = di_prop_search(dev, node, prop_name, in di_prop_lookup_strings()
1746 return (di_prop_strings(prop, (void *)prop_data)); in di_prop_lookup_strings()
1753 di_prop_t prop; in di_prop_lookup_bytes() local
1755 if ((prop = di_prop_search(dev, node, prop_name, in di_prop_lookup_bytes()
1759 return (di_prop_bytes(prop, (void *)prop_data)); in di_prop_lookup_bytes()
1773 di_prop_next_common(di_node_t node, di_prop_t prop, int prop_type) in di_prop_next_common() argument
1778 if (prop != DI_PROP_NIL) { in di_prop_next_common()
1779 if (DI_PROP(prop)->next) { in di_prop_next_common()
1780 return (DI_PROP((caddr_t)prop - in di_prop_next_common()
1781 DI_PROP(prop)->self + DI_PROP(prop)->next)); in di_prop_next_common()
1833 di_prop_drv_next(di_node_t node, di_prop_t prop) in di_prop_drv_next() argument
1835 return (di_prop_next_common(node, prop, PROP_TYPE_DRV)); in di_prop_drv_next()
1839 di_prop_sys_next(di_node_t node, di_prop_t prop) in di_prop_sys_next() argument
1841 return (di_prop_next_common(node, prop, PROP_TYPE_SYS)); in di_prop_sys_next()
1845 di_prop_global_next(di_node_t node, di_prop_t prop) in di_prop_global_next() argument
1847 return (di_prop_next_common(node, prop, PROP_TYPE_GLOB)); in di_prop_global_next()
1851 di_prop_hw_next(di_node_t node, di_prop_t prop) in di_prop_hw_next() argument
1853 return (di_prop_next_common(node, prop, PROP_TYPE_HW)); in di_prop_hw_next()
1857 di_prop_rawdata(di_prop_t prop, uchar_t **prop_data) in di_prop_rawdata() argument
1860 if (prop == DI_PROP_NIL) { in di_prop_rawdata()
1866 if (DI_PROP(prop)->prop_len == 0) { in di_prop_rawdata()
1871 if ((DI_PROP(prop)->prop_data == 0) || in di_prop_rawdata()
1872 (DI_PROP(prop)->prop_data == (di_off_t)-1)) { in di_prop_rawdata()
1881 *prop_data = (uchar_t *)((caddr_t)prop - DI_PROP(prop)->self + in di_prop_rawdata()
1882 DI_PROP(prop)->prop_data); in di_prop_rawdata()
1884 return (DI_PROP(prop)->prop_len); in di_prop_rawdata()
2128 di_path_prop_next(di_path_t path, di_path_prop_t prop) in di_path_prop_next() argument
2140 if (prop != DI_PROP_NIL) { in di_path_prop_next()
2141 if (DI_PROP(prop)->next != 0) in di_path_prop_next()
2142 return (DI_PATHPROP((caddr_t)prop - in di_path_prop_next()
2143 DI_PROP(prop)->self + DI_PROP(prop)->next)); in di_path_prop_next()
2171 di_path_prop_name(di_path_prop_t prop) in di_path_prop_name() argument
2174 pa = (caddr_t)prop - DI_PATHPROP(prop)->self; in di_path_prop_name()
2175 return ((char *)(pa + DI_PATHPROP(prop)->prop_name)); in di_path_prop_name()
2179 di_path_prop_len(di_path_prop_t prop) in di_path_prop_len() argument
2181 return (DI_PATHPROP(prop)->prop_len); in di_path_prop_len()
2185 di_path_prop_type(di_path_prop_t prop) in di_path_prop_type() argument
2187 switch (DI_PATHPROP(prop)->prop_type) { in di_path_prop_type()
2201 di_path_prop_bytes(di_path_prop_t prop, uchar_t **prop_data) in di_path_prop_bytes() argument
2203 if ((DI_PATHPROP(prop)->prop_data == 0) || in di_path_prop_bytes()
2204 (DI_PATHPROP(prop)->prop_data == (di_off_t)-1)) { in di_path_prop_bytes()
2210 *prop_data = (uchar_t *)((caddr_t)prop - DI_PATHPROP(prop)->self in di_path_prop_bytes()
2211 + DI_PATHPROP(prop)->prop_data); in di_path_prop_bytes()
2214 DI_PATHPROP(prop)->prop_len, DI_PROP_TYPE_BYTE, 0)); in di_path_prop_bytes()
2218 di_path_prop_ints(di_path_prop_t prop, int **prop_data) in di_path_prop_ints() argument
2220 if (DI_PATHPROP(prop)->prop_len == 0) in di_path_prop_ints()
2223 if ((DI_PATHPROP(prop)->prop_data == 0) || in di_path_prop_ints()
2224 (DI_PATHPROP(prop)->prop_data == (di_off_t)-1)) { in di_path_prop_ints()
2230 *prop_data = (int *)((void *)((caddr_t)prop - DI_PATHPROP(prop)->self in di_path_prop_ints()
2231 + DI_PATHPROP(prop)->prop_data)); in di_path_prop_ints()
2234 DI_PATHPROP(prop)->prop_len, DI_PROP_TYPE_INT, 0)); in di_path_prop_ints()
2238 di_path_prop_int64s(di_path_prop_t prop, int64_t **prop_data) in di_path_prop_int64s() argument
2240 if (DI_PATHPROP(prop)->prop_len == 0) in di_path_prop_int64s()
2243 if ((DI_PATHPROP(prop)->prop_data == 0) || in di_path_prop_int64s()
2244 (DI_PATHPROP(prop)->prop_data == (di_off_t)-1)) { in di_path_prop_int64s()
2250 *prop_data = (int64_t *)((void *)((caddr_t)prop - in di_path_prop_int64s()
2251 DI_PATHPROP(prop)->self + DI_PATHPROP(prop)->prop_data)); in di_path_prop_int64s()
2254 DI_PATHPROP(prop)->prop_len, DI_PROP_TYPE_INT64, 0)); in di_path_prop_int64s()
2258 di_path_prop_strings(di_path_prop_t prop, char **prop_data) in di_path_prop_strings() argument
2260 if (DI_PATHPROP(prop)->prop_len == 0) in di_path_prop_strings()
2263 if ((DI_PATHPROP(prop)->prop_data == 0) || in di_path_prop_strings()
2264 (DI_PATHPROP(prop)->prop_data == (di_off_t)-1)) { in di_path_prop_strings()
2270 *prop_data = (char *)((caddr_t)prop - DI_PATHPROP(prop)->self in di_path_prop_strings()
2271 + DI_PATHPROP(prop)->prop_data); in di_path_prop_strings()
2274 DI_PATHPROP(prop)->prop_len, DI_PROP_TYPE_STRING, 0)); in di_path_prop_strings()
2280 di_path_prop_t prop = DI_PROP_NIL; in di_path_prop_search() local
2291 while ((prop = di_path_prop_next(path, prop)) != DI_PROP_NIL) { in di_path_prop_search()
2292 int prop_type = di_path_prop_type(prop); in di_path_prop_search()
2295 di_path_prop_name(prop), prop_type)); in di_path_prop_search()
2297 if (strcmp(name, di_path_prop_name(prop)) != 0) in di_path_prop_search()
2303 return (prop); in di_path_prop_search()
2313 di_path_prop_t prop; in di_path_prop_lookup_bytes() local
2315 if ((prop = di_path_prop_search(path, prop_name, in di_path_prop_lookup_bytes()
2319 return (di_path_prop_bytes(prop, prop_data)); in di_path_prop_lookup_bytes()
2326 di_path_prop_t prop; in di_path_prop_lookup_ints() local
2328 if ((prop = di_path_prop_search(path, prop_name, in di_path_prop_lookup_ints()
2332 return (di_path_prop_ints(prop, prop_data)); in di_path_prop_lookup_ints()
2339 di_path_prop_t prop; in di_path_prop_lookup_int64s() local
2341 if ((prop = di_path_prop_search(path, prop_name, in di_path_prop_lookup_int64s()
2345 return (di_path_prop_int64s(prop, prop_data)); in di_path_prop_lookup_int64s()
2351 di_path_prop_t prop; in di_path_prop_lookup_strings() local
2353 if ((prop = di_path_prop_search(path, prop_name, in di_path_prop_lookup_strings()
2357 return (di_path_prop_strings(prop, prop_data)); in di_path_prop_lookup_strings()
2898 struct di_prom_prop *prop = (struct di_prom_prop *)prom_prop; in di_prom_prop_found() local
2917 (void) strcpy(opp->oprom_array, prop->name); in di_prom_prop_found()
2926 if ((prop = malloc(sizeof (struct di_prom_prop))) == NULL) in di_prom_prop_found()
2932 if ((prop->name = strdup(opp->oprom_array)) == NULL) { in di_prom_prop_found()
2933 free(prop); in di_prom_prop_found()
2944 free(prop->name); in di_prom_prop_found()
2945 free(prop); in di_prom_prop_found()
2952 prop->len = opp->oprom_size; in di_prom_prop_found()
2954 if (prop->len == 0) in di_prom_prop_found()
2955 prop->data = NULL; in di_prom_prop_found()
2956 else if ((prop->data = malloc(prop->len)) == NULL) { in di_prom_prop_found()
2957 free(prop->name); in di_prom_prop_found()
2958 free(prop); in di_prom_prop_found()
2962 bcopy(opp->oprom_array, prop->data, prop->len); in di_prom_prop_found()
2967 prop->next = p->list; in di_prom_prop_found()
2968 p->list = prop; in di_prom_prop_found()
2970 return ((di_prom_prop_t)prop); in di_prom_prop_found()
3048 struct di_prom_prop *prop; in di_prom_prop_lookup_common() local
3095 if ((prop = malloc(sizeof (struct di_prom_prop))) == NULL) { in di_prom_prop_lookup_common()
3099 prop->name = NULL; /* we don't need the name */ in di_prom_prop_lookup_common()
3100 prop->len = opp->oprom_len; in di_prom_prop_lookup_common()
3102 if (prop->len == 0) { /* boolean property */ in di_prom_prop_lookup_common()
3103 prop->data = NULL; in di_prom_prop_lookup_common()
3104 prop->next = p->list; in di_prom_prop_lookup_common()
3105 p->list = prop; in di_prom_prop_lookup_common()
3107 return (prop); in di_prom_prop_lookup_common()
3121 free(prop); in di_prom_prop_lookup_common()
3128 if ((prop->data = malloc(prop->len)) == NULL) { in di_prom_prop_lookup_common()
3130 free(prop); in di_prom_prop_lookup_common()
3134 bcopy(opp->oprom_array, prop->data, prop->len); in di_prom_prop_lookup_common()
3136 prop->next = p->list; in di_prom_prop_lookup_common()
3137 p->list = prop; in di_prom_prop_lookup_common()
3140 return (prop); in di_prom_prop_lookup_common()
3148 struct di_prom_prop *prop; in di_prom_prop_lookup_ints() local
3150 prop = di_prom_prop_lookup_common(ph, node, prom_prop_name); in di_prom_prop_lookup_ints()
3152 if (prop == NULL) { in di_prom_prop_lookup_ints()
3157 if (prop->len == 0) { /* boolean property */ in di_prom_prop_lookup_ints()
3162 len = di_prop_decode_common((void *)&prop->data, prop->len, in di_prom_prop_lookup_ints()
3164 *prom_prop_data = (int *)((void *)prop->data); in di_prom_prop_lookup_ints()
3174 struct di_prom_prop *prop; in di_prom_prop_lookup_strings() local
3176 prop = di_prom_prop_lookup_common(ph, node, prom_prop_name); in di_prom_prop_lookup_strings()
3178 if (prop == NULL) { in di_prom_prop_lookup_strings()
3183 if (prop->len == 0) { /* boolean property */ in di_prom_prop_lookup_strings()
3192 if (((char *)prop->data)[prop->len - 1] != '\0') { in di_prom_prop_lookup_strings()
3194 prop->len++; in di_prom_prop_lookup_strings()
3195 if ((tmp = realloc(prop->data, prop->len)) == NULL) in di_prom_prop_lookup_strings()
3198 prop->data = tmp; in di_prom_prop_lookup_strings()
3199 ((char *)prop->data)[prop->len - 1] = '\0'; in di_prom_prop_lookup_strings()
3202 di_node_name(node), prom_prop_name, prop->data)); in di_prom_prop_lookup_strings()
3205 len = di_prop_decode_common((void *)&prop->data, prop->len, in di_prom_prop_lookup_strings()
3207 *prom_prop_data = (char *)prop->data; in di_prom_prop_lookup_strings()
3217 struct di_prom_prop *prop; in di_prom_prop_lookup_bytes() local
3219 prop = di_prom_prop_lookup_common(ph, node, prom_prop_name); in di_prom_prop_lookup_bytes()
3221 if (prop == NULL) { in di_prom_prop_lookup_bytes()
3226 if (prop->len == 0) { /* boolean property */ in di_prom_prop_lookup_bytes()
3231 len = di_prop_decode_common((void *)&prop->data, prop->len, in di_prom_prop_lookup_bytes()
3233 *prom_prop_data = prop->data; in di_prom_prop_lookup_bytes()
3244 di_prop_slot_names(di_prop_t prop, di_slot_name_t **prop_data) in di_prop_slot_names() argument
3248 char *nm = di_prop_name(prop); in di_prop_slot_names()
3253 rawlen = di_prop_rawdata(prop, &rawdata); in di_prop_slot_names()
3273 di_prop_t prop; in di_prop_lookup_slot_names() local
3279 if ((prop = di_prop_find(dev, node, DI_PROP_SLOT_NAMES)) == in di_prop_lookup_slot_names()
3285 return (di_prop_slot_names(prop, (void *)prop_data)); in di_prop_lookup_slot_names()