Lines Matching refs:DEVI

377 	devi->devi_parent = DEVI(pdip);  in i_ddi_alloc_node()
378 devi->devi_bus_ctl = DEVI(pdip); in i_ddi_alloc_node()
420 struct dev_info *devi = DEVI(dip); in i_ddi_free_node()
434 impl_ddi_free_nodeid(DEVI(dip)->devi_nodeid); in i_ddi_free_node()
445 if (DEVI(dip)->devi_compat_names) in i_ddi_free_node()
446 kmem_free(DEVI(dip)->devi_compat_names, in i_ddi_free_node()
447 DEVI(dip)->devi_compat_length); in i_ddi_free_node()
448 if (DEVI(dip)->devi_rebinding_name) in i_ddi_free_node()
449 kmem_free(DEVI(dip)->devi_rebinding_name, in i_ddi_free_node()
450 strlen(DEVI(dip)->devi_rebinding_name) + 1); in i_ddi_free_node()
458 if (DEVI(dip)->devi_devid_str) in i_ddi_free_node()
459 ddi_devid_str_free(DEVI(dip)->devi_devid_str); in i_ddi_free_node()
511 oname = DEVI(dip)->devi_node_name; in ndi_devi_set_nodename()
531 DEVI(dip)->devi_node_name = nname; in ndi_devi_set_nodename()
632 struct dev_info *devi = DEVI(dip); in link_node()
652 dipp = (dev_info_t **)(&DEVI(parent)->devi_child); in link_node()
654 dipp = (dev_info_t **)(&DEVI(*dipp)->devi_sibling); in link_node()
686 DEVI(dip)->devi_sibling = NULL; in link_node()
707 struct dev_info *devi = DEVI(dip); in unlink_node()
729 dipp = (dev_info_t **)(&DEVI(parent)->devi_child); in unlink_node()
731 dipp = (dev_info_t **)(&DEVI(*dipp)->devi_sibling); in unlink_node()
754 for (hdlp = DEVI(parent)->devi_hp_hdlp; hdlp; hdlp = hdlp->next) { in unlink_node()
780 struct dev_info *devi = DEVI(dip); in bind_node()
788 mutex_enter(&DEVI(dip)->devi_lock); in bind_node()
789 if (DEVI(dip)->devi_flags & DEVI_NO_BIND) { in bind_node()
790 mutex_exit(&DEVI(dip)->devi_lock); in bind_node()
793 mutex_exit(&DEVI(dip)->devi_lock); in bind_node()
814 mutex_enter(&DEVI(parent)->devi_lock); in bind_node()
815 DEVI(parent)->devi_flags &= in bind_node()
817 mutex_exit(&DEVI(parent)->devi_lock); in bind_node()
829 ASSERT(DEVI(dip)->devi_node_state == DS_BOUND); in unbind_node()
830 ASSERT(DEVI(dip)->devi_major != DDI_MAJOR_T_NONE); in unbind_node()
833 if (DEVI(dip)->devi_ref) in unbind_node()
841 DEVI(dip)->devi_major = DDI_MAJOR_T_NONE; in unbind_node()
842 DEVI(dip)->devi_binding_name = DEVI(dip)->devi_node_name; in unbind_node()
875 if ((DEVI(pdip)->devi_ops->devo_bus_ops == NULL) || in init_node()
876 (f = DEVI(pdip)->devi_ops->devo_bus_ops->bus_ctl) == NULL) { in init_node()
906 mutex_enter(&DEVI(dip)->devi_lock); in init_node()
907 if ((DEVI(dip)->devi_flags & DEVI_CACHED_DEVID) || in init_node()
908 DEVI(dip)->devi_devid_str) { in init_node()
909 DEVI(dip)->devi_flags &= ~DEVI_CACHED_DEVID; in init_node()
910 mutex_exit(&DEVI(dip)->devi_lock); in init_node()
913 mutex_exit(&DEVI(dip)->devi_lock); in init_node()
949 if (!(DEVI(dip)->devi_flags & DEVI_CACHED_DEVID) && in init_node()
952 mutex_enter(&DEVI(dip)->devi_lock); in init_node()
953 DEVI(dip)->devi_flags |= DEVI_CACHED_DEVID; in init_node()
954 mutex_exit(&DEVI(dip)->devi_lock); in init_node()
977 if (driver_active(major) && (major != DEVI(dip)->devi_major) && in init_node()
981 mutex_enter(&DEVI(dip)->devi_lock); in init_node()
982 DEVI(dip)->devi_flags |= DEVI_REBIND; in init_node()
983 mutex_exit(&DEVI(dip)->devi_lock); in init_node()
1014 if (DEVI(dip)->devi_rebinding_name == NULL) in init_node()
1015 DEVI(dip)->devi_rebinding_name = in init_node()
1059 DEVI(dip)->devi_instance = e_ddi_assign_instance(dip); in init_node()
1065 mutex_enter(&DEVI(dip)->devi_lock); in init_node()
1066 DEVI(dip)->devi_flags &= ~DEVI_REBIND; in init_node()
1067 mutex_exit(&DEVI(dip)->devi_lock); in init_node()
1123 mutex_enter(&DEVI(dip)->devi_lock); in uninit_node()
1124 if ((DEVI(dip)->devi_flags & DEVI_CACHED_DEVID)) { in uninit_node()
1125 DEVI(dip)->devi_flags &= ~DEVI_CACHED_DEVID; in uninit_node()
1126 mutex_exit(&DEVI(dip)->devi_lock); in uninit_node()
1129 mutex_exit(&DEVI(dip)->devi_lock); in uninit_node()
1142 DEVI(dip)->devi_instance = -1; in uninit_node()
1174 (DEVI(dip)->devi_flags & DEVI_REBIND))) in uninit_node()
1203 DEVI(dip)->devi_ops = ndi_hold_driver(dip); in probe_node()
1204 if (DEVI(dip)->devi_ops == NULL) { in probe_node()
1218 DEVI(dip)->devi_ops = NULL; in probe_node()
1289 ASSERT(DEVI(dip)->devi_ops == NULL); in attach_node()
1294 DEVI(dip)->devi_ops = ndi_hold_driver(dip); in attach_node()
1295 if (DEVI(dip)->devi_ops == NULL) { in attach_node()
1301 DEVI(dip)->devi_major); in attach_node()
1305 if (NEXUS_DRV(DEVI(dip)->devi_ops)) in attach_node()
1306 DEVI(dip)->devi_taskq = ddi_taskq_create(dip, in attach_node()
1310 mutex_enter(&(DEVI(dip)->devi_lock)); in attach_node()
1313 mutex_exit(&(DEVI(dip)->devi_lock)); in attach_node()
1317 mutex_enter(&(DEVI(dip)->devi_lock)); in attach_node()
1322 mutex_exit(&DEVI(dip)->devi_lock); in attach_node()
1331 if (DEVI(dip)->devi_taskq) in attach_node()
1332 ddi_taskq_destroy(DEVI(dip)->devi_taskq); in attach_node()
1337 DEVI(dip)->devi_ops = NULL; in attach_node()
1342 mutex_exit(&DEVI(dip)->devi_lock); in attach_node()
1363 if (DEVI(dip)->devi_ref) in detach_node()
1387 if (DEVI(dip)->devi_taskq) in detach_node()
1388 ddi_taskq_wait(DEVI(dip)->devi_taskq); in detach_node()
1399 mutex_enter(&(DEVI(dip)->devi_lock)); in detach_node()
1401 mutex_exit(&(DEVI(dip)->devi_lock)); in detach_node()
1412 if (DEVI(dip)->devi_taskq) { in detach_node()
1413 ddi_taskq_destroy(DEVI(dip)->devi_taskq); in detach_node()
1414 DEVI(dip)->devi_taskq = NULL; in detach_node()
1424 if (DEVI(dip)->devi_flavorv_n > 1 && DEVI(dip)->devi_flavorv != NULL) { in detach_node()
1425 kmem_free(DEVI(dip)->devi_flavorv, in detach_node()
1426 (DEVI(dip)->devi_flavorv_n - 1) * sizeof (void *)); in detach_node()
1427 DEVI(dip)->devi_flavorv = NULL; in detach_node()
1435 mutex_enter(&DEVI(dip)->devi_lock); in detach_node()
1436 DEVI(dip)->devi_flags &= ~(DEVI_MADE_CHILDREN|DEVI_ATTACHED_CHILDREN); in detach_node()
1437 mutex_exit(&DEVI(dip)->devi_lock); in detach_node()
1445 dnp = &(devnamesp[DEVI(dip)->devi_major]); in detach_node()
1453 DEVI(dip)->devi_ops = NULL; in detach_node()
1522 dnp = &devnamesp[DEVI(dip)->devi_major]; in predetach_node()
1686 mutex_enter(&(DEVI(dip)->devi_lock)); in i_ndi_unconfig_node()
1688 mutex_exit(&(DEVI(dip)->devi_lock)); in i_ndi_unconfig_node()
1695 mutex_enter(&(DEVI(dip)->devi_lock)); in i_ndi_unconfig_node()
1697 mutex_exit(&(DEVI(dip)->devi_lock)); in i_ndi_unconfig_node()
1833 if (DEVI(dip)->devi_child) { in ddi_remove_child()
1839 ASSERT(DEVI(dip)->devi_child == NULL); in ddi_remove_child()
1864 mutex_enter(&DEVI(dip)->devi_lock); in ndi_hold_devi()
1865 ASSERT(DEVI(dip)->devi_ref >= 0); in ndi_hold_devi()
1866 DEVI(dip)->devi_ref++; in ndi_hold_devi()
1868 mutex_exit(&DEVI(dip)->devi_lock); in ndi_hold_devi()
1874 ASSERT(DEVI(dip)->devi_ref > 0); in ndi_rele_devi()
1876 mutex_enter(&DEVI(dip)->devi_lock); in ndi_rele_devi()
1877 DEVI(dip)->devi_ref--; in ndi_rele_devi()
1879 mutex_exit(&DEVI(dip)->devi_lock); in ndi_rele_devi()
1885 return (DEVI(dip)->devi_ref); in e_ddi_devi_holdcnt()
1897 ASSERT(DEVI(dip)->devi_major != -1); in ndi_hold_driver()
1898 return (mod_hold_dev_by_major(DEVI(dip)->devi_major)); in ndi_hold_driver()
1905 mod_rele_dev_by_major(DEVI(dip)->devi_major); in ndi_rele_driver()
1915 struct dev_info *devi = DEVI(dip); in ndi_devi_enter()
1945 struct dev_info *devi = DEVI(dip); in ndi_devi_exit()
1968 vdevi = DEVI(mdi_devi_get_vdip(dip)); in ndi_devi_exit()
1987 struct dev_info *devi = DEVI(dip); in ndi_devi_exit_and_wait()
2018 struct dev_info *devi = DEVI(dip); in ndi_devi_tryenter()
2142 return (DEVI(dip)->devi_node_state); in i_ddi_node_state()
2151 DEVI(dip)->devi_node_state = state; in i_ddi_set_node_state()
2164 return (DEVI(dip)->devi_node_state >= DS_ATTACHED); in i_ddi_devi_attached()
2235 if (strcmp(cname, DEVI(dip)->devi_node_name) != 0) in find_sibling()
2239 if (DEVI(dip)->devi_major != major) in find_sibling()
2243 if ((addr = DEVI(dip)->devi_addr) == NULL) { in find_sibling()
2249 addr = DEVI(dip)->devi_addr; in find_sibling()
2279 char *cname = DEVI(dip)->devi_node_name; in find_duplicate_child()
2280 char *caddr = DEVI(dip)->devi_addr; in find_duplicate_child()
2653 mutex_enter(&DEVI(hwdip)->devi_lock); in ndi_merge_node()
2656 mutex_exit(&DEVI(hwdip)->devi_lock); in ndi_merge_node()
2670 (DEVI(hwdip)->devi_sys_prop_ptr != NULL) || in ndi_merge_node()
2671 (DEVI(hwdip)->devi_drv_prop_ptr != NULL)) { in ndi_merge_node()
2673 mutex_exit(&DEVI(hwdip)->devi_lock); in ndi_merge_node()
2684 mutex_enter(&DEVI(dip)->devi_lock); in ndi_merge_node()
2685 DEVI(hwdip)->devi_sys_prop_ptr = DEVI(dip)->devi_sys_prop_ptr; in ndi_merge_node()
2686 DEVI(hwdip)->devi_drv_prop_ptr = DEVI(dip)->devi_drv_prop_ptr; in ndi_merge_node()
2687 DEVI(dip)->devi_sys_prop_ptr = NULL; in ndi_merge_node()
2688 DEVI(dip)->devi_drv_prop_ptr = NULL; in ndi_merge_node()
2689 mutex_exit(&DEVI(dip)->devi_lock); in ndi_merge_node()
2690 mutex_exit(&DEVI(hwdip)->devi_lock); in ndi_merge_node()
2719 mutex_enter(&DEVI(dip)->devi_lock); in ndi_merge_wildcard_node()
2738 mutex_enter(&DEVI(hwdip)->devi_lock); in ndi_merge_wildcard_node()
2740 (DEVI(hwdip)->devi_sys_prop_ptr != NULL) || in ndi_merge_wildcard_node()
2741 (DEVI(hwdip)->devi_drv_prop_ptr != NULL)) { in ndi_merge_wildcard_node()
2742 mutex_exit(&DEVI(hwdip)->devi_lock); in ndi_merge_wildcard_node()
2749 DEVI(hwdip)->devi_sys_prop_ptr = in ndi_merge_wildcard_node()
2750 i_ddi_prop_list_dup(DEVI(dip)->devi_sys_prop_ptr, KM_SLEEP); in ndi_merge_wildcard_node()
2751 DEVI(hwdip)->devi_drv_prop_ptr = in ndi_merge_wildcard_node()
2752 i_ddi_prop_list_dup(DEVI(dip)->devi_drv_prop_ptr, KM_SLEEP); in ndi_merge_wildcard_node()
2753 mutex_exit(&DEVI(hwdip)->devi_lock); in ndi_merge_wildcard_node()
2755 mutex_exit(&DEVI(dip)->devi_lock); in ndi_merge_wildcard_node()
2768 struct dev_info *devi = DEVI(dip); in ddi_compatible_driver_major()
2855 if (DEVI(dip)->devi_compat_names) { in lookup_compatible()
2889 DEVI(dip)->devi_compat_names = di_compat_strp; in lookup_compatible()
2890 DEVI(dip)->devi_compat_length = di_compat_strlen; in lookup_compatible()
2944 major_t major = DEVI(dip)->devi_major; in link_to_driver_list()
2967 major_t major = DEVI(dip)->devi_major; in unlink_from_driver_list()
2995 if ((idevi = DEVI(dnp->dn_head)) == NULL) in in_dn_list()
2999 if (idevi == DEVI(dip)) in in_dn_list()
3026 dipp = (dev_info_t **)&DEVI(*dipp)->devi_next; in add_to_ordered_dn_list()
3033 dipp = (dev_info_t **)&DEVI(*dipp)->devi_next; in add_to_ordered_dn_list()
3040 dipp = (dev_info_t **)&DEVI(*dipp)->devi_next; in add_to_ordered_dn_list()
3044 DEVI(dip)->devi_next = DEVI(*dipp); in add_to_ordered_dn_list()
3061 DEVI(dip)->devi_node_name); in add_to_dn_list()
3077 plist = (dev_info_t **)&DEVI(*plist)->devi_next; in remove_from_dn_list()
3082 *plist = (dev_info_t *)(DEVI(dip)->devi_next); in remove_from_dn_list()
3083 DEVI(dip)->devi_next = NULL; in remove_from_dn_list()
3087 DEVI(dip)->devi_node_name)); in remove_from_dn_list()
3102 ASSERT(DEVI(dip)->devi_global_prop_list == NULL); in add_global_props()
3103 ASSERT(DEVI(dip)->devi_major != DDI_MAJOR_T_NONE); in add_global_props()
3105 dnp = &devnamesp[DEVI(dip)->devi_major]; in add_global_props()
3115 mutex_enter(&DEVI(dip)->devi_lock); in add_global_props()
3116 DEVI(dip)->devi_global_prop_list = plist; in add_global_props()
3117 mutex_exit(&DEVI(dip)->devi_lock); in add_global_props()
3125 mutex_enter(&DEVI(dip)->devi_lock); in remove_global_props()
3126 proplist = DEVI(dip)->devi_global_prop_list; in remove_global_props()
3127 DEVI(dip)->devi_global_prop_list = NULL; in remove_global_props()
3128 mutex_exit(&DEVI(dip)->devi_lock); in remove_global_props()
3181 pdevi = DEVI(devi)->devi_parent; in ddi_optimize_dtree()
3187 DEVI(devi)->devi_bus_map_fault = pdevi; in ddi_optimize_dtree()
3188 DEVI(devi)->devi_bus_dma_allochdl = pdevi; in ddi_optimize_dtree()
3189 DEVI(devi)->devi_bus_dma_freehdl = pdevi; in ddi_optimize_dtree()
3190 DEVI(devi)->devi_bus_dma_bindhdl = pdevi; in ddi_optimize_dtree()
3191 DEVI(devi)->devi_bus_dma_bindfunc = in ddi_optimize_dtree()
3193 DEVI(devi)->devi_bus_dma_unbindhdl = pdevi; in ddi_optimize_dtree()
3194 DEVI(devi)->devi_bus_dma_unbindfunc = in ddi_optimize_dtree()
3196 DEVI(devi)->devi_bus_dma_flush = pdevi; in ddi_optimize_dtree()
3197 DEVI(devi)->devi_bus_dma_win = pdevi; in ddi_optimize_dtree()
3198 DEVI(devi)->devi_bus_dma_ctl = pdevi; in ddi_optimize_dtree()
3199 DEVI(devi)->devi_bus_ctl = pdevi; in ddi_optimize_dtree()
3209 DEVI(devi)->devi_bus_map_fault = pdevi->devi_bus_map_fault; in ddi_optimize_dtree()
3210 debug_dtree(devi, DEVI(devi)->devi_bus_map_fault, in ddi_optimize_dtree()
3215 DEVI(devi)->devi_bus_dma_allochdl = in ddi_optimize_dtree()
3217 debug_dtree(devi, DEVI(devi)->devi_bus_dma_allochdl, in ddi_optimize_dtree()
3222 DEVI(devi)->devi_bus_dma_freehdl = pdevi->devi_bus_dma_freehdl; in ddi_optimize_dtree()
3223 debug_dtree(devi, DEVI(devi)->devi_bus_dma_freehdl, in ddi_optimize_dtree()
3228 DEVI(devi)->devi_bus_dma_bindhdl = pdevi->devi_bus_dma_bindhdl; in ddi_optimize_dtree()
3229 DEVI(devi)->devi_bus_dma_bindfunc = in ddi_optimize_dtree()
3232 debug_dtree(devi, DEVI(devi)->devi_bus_dma_bindhdl, in ddi_optimize_dtree()
3237 DEVI(devi)->devi_bus_dma_unbindhdl = in ddi_optimize_dtree()
3239 DEVI(devi)->devi_bus_dma_unbindfunc = in ddi_optimize_dtree()
3242 debug_dtree(devi, DEVI(devi)->devi_bus_dma_unbindhdl, in ddi_optimize_dtree()
3247 DEVI(devi)->devi_bus_dma_flush = pdevi->devi_bus_dma_flush; in ddi_optimize_dtree()
3248 debug_dtree(devi, DEVI(devi)->devi_bus_dma_flush, in ddi_optimize_dtree()
3253 DEVI(devi)->devi_bus_dma_win = pdevi->devi_bus_dma_win; in ddi_optimize_dtree()
3254 debug_dtree(devi, DEVI(devi)->devi_bus_dma_win, in ddi_optimize_dtree()
3259 DEVI(devi)->devi_bus_dma_ctl = pdevi->devi_bus_dma_ctl; in ddi_optimize_dtree()
3260 debug_dtree(devi, DEVI(devi)->devi_bus_dma_ctl, "bus_dma_ctl"); in ddi_optimize_dtree()
3264 DEVI(devi)->devi_bus_ctl = pdevi->devi_bus_ctl; in ddi_optimize_dtree()
3265 debug_dtree(devi, DEVI(devi)->devi_bus_ctl, "bus_ctl"); in ddi_optimize_dtree()
3300 devinfo_audit_t *da_log, *da = DEVI(dip)->devi_audit; in da_log_enter()
3311 da->da_node_state = DEVI(dip)->devi_node_state; in da_log_enter()
3312 da->da_device_state = DEVI(dip)->devi_state; in da_log_enter()
3859 (strcmp((DEVI(parent)->devi_node_name), "iscsi") == 0)) { in resolve_pathname()
3923 for (dmn = DEVI(parent)->devi_minor; dmn; in resolve_pathname()
3937 dmn = DEVI(parent)->devi_minor; in resolve_pathname()
3944 DEVI(parent)->devi_major, in resolve_pathname()
4069 struct dev_info *devi = DEVI(dip); in should_implement_quiesce()
4324 if ((DEVI(dip)->devi_major == major) && in bind_dip()
4340 (major != DEVI(dip)->devi_major)) in bind_dip()
4408 (strcmp(DEVI(cdip)->devi_node_name, ub->drv_alias) != 0)) in unbind_children_by_alias()
4556 if (DEVI(pdip)->devi_flags & DEVI_MADE_CHILDREN) { in i_ndi_make_spec_children()
4567 mutex_enter(&DEVI(pdip)->devi_lock); in i_ndi_make_spec_children()
4568 DEVI(pdip)->devi_flags |= DEVI_MADE_CHILDREN; in i_ndi_make_spec_children()
4569 mutex_exit(&DEVI(pdip)->devi_lock); in i_ndi_make_spec_children()
4585 ASSERT(DEVI(pdip)->devi_flags & DEVI_MADE_CHILDREN); in i_ndi_init_hw_children()
4643 mutex_enter(&(DEVI(dip)->devi_lock)); in i_ndi_devi_report_status_change()
4645 mutex_exit(&(DEVI(dip)->devi_lock)); in i_ndi_devi_report_status_change()
5200 mutex_enter(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5207 mutex_exit(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5210 mutex_exit(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5213 mutex_enter(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5215 mutex_exit(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5238 mutex_enter(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5240 mutex_exit(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5242 mutex_enter(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5244 mutex_exit(&(DEVI(dip)->devi_lock)); in devi_attach_node()
5270 mutex_enter(&DEVI(pdip)->devi_lock); in config_immediate_children()
5271 DEVI(pdip)->devi_flags &= ~DEVI_MADE_CHILDREN; in config_immediate_children()
5272 mutex_exit(&DEVI(pdip)->devi_lock); in config_immediate_children()
5329 if ((DEVI(dip)->devi_ops->devo_bus_ops == NULL) || in devi_config_common()
5330 (DEVI(dip)->devi_ops->devo_bus_ops->busops_rev < BUSO_REV_5) || in devi_config_common()
5331 (f = DEVI(dip)->devi_ops->devo_bus_ops->bus_config) == NULL) { in devi_config_common()
5468 probed = (DEVI(pdip)->devi_flags & DEVI_MADE_CHILDREN); in devi_config_one()
5496 mutex_enter(&DEVI(pdip)->devi_lock); in devi_config_one()
5497 DEVI(pdip)->devi_flags &= ~DEVI_MADE_CHILDREN; in devi_config_one()
5498 mutex_exit(&DEVI(pdip)->devi_lock); in devi_config_one()
5523 mutex_enter(&DEVI(vdip)->devi_lock); in devi_config_one()
5524 DEVI(vdip)->devi_flags |= in devi_config_one()
5526 mutex_exit(&DEVI(vdip)->devi_lock); in devi_config_one()
5599 if ((DEVI(pdip)->devi_ops->devo_bus_ops == NULL) || in ndi_devi_config_one()
5600 (DEVI(pdip)->devi_ops->devo_bus_ops->busops_rev < BUSO_REV_5) || in ndi_devi_config_one()
5601 (f = DEVI(pdip)->devi_ops->devo_bus_ops->bus_config) == NULL) { in ndi_devi_config_one()
5675 if ((DEVI(parent)->devi_ops->devo_bus_ops == NULL) || in ndi_devi_config_obp_args()
5676 (DEVI(parent)->devi_ops->devo_bus_ops->busops_rev < BUSO_REV_5) || in ndi_devi_config_obp_args()
5677 (f = DEVI(parent)->devi_ops->devo_bus_ops->bus_config) == NULL) { in ndi_devi_config_obp_args()
5768 mutex_enter(&(DEVI(dip)->devi_lock)); in e_ddi_offline_notify()
5769 if ((DEVI(dip)->devi_flags & DEVI_RETIRING) && failure) { in e_ddi_offline_notify()
5772 DEVI(dip)->devi_flags |= DEVI_R_BLOCKED; in e_ddi_offline_notify()
5773 if (DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT) { in e_ddi_offline_notify()
5777 DEVI(dip)->devi_flags &= ~DEVI_R_CONSTRAINT; in e_ddi_offline_notify()
5779 } else if ((DEVI(dip)->devi_flags & DEVI_RETIRING) && constraint) { in e_ddi_offline_notify()
5782 DEVI(dip)->devi_flags |= DEVI_R_CONSTRAINT; in e_ddi_offline_notify()
5783 } else if ((DEVI(dip)->devi_flags & DEVI_RETIRING) && in e_ddi_offline_notify()
5784 ((DEVI(dip)->devi_ops != NULL && in e_ddi_offline_notify()
5785 DEVI(dip)->devi_ops->devo_bus_ops != NULL) || in e_ddi_offline_notify()
5786 DEVI(dip)->devi_ref == 0)) { in e_ddi_offline_notify()
5790 DEVI(dip)->devi_flags |= DEVI_R_CONSTRAINT; in e_ddi_offline_notify()
5800 mutex_exit(&(DEVI(dip)->devi_lock)); in e_ddi_offline_notify()
5926 mutex_enter(&(DEVI(dip)->devi_lock)); in devi_detach_node()
5928 mutex_exit(&(DEVI(dip)->devi_lock)); in devi_detach_node()
5932 struct dev_info *devi = DEVI(dip); in devi_detach_node()
5949 mutex_enter(&(DEVI(dip)->devi_lock)); in devi_detach_node()
5951 mutex_exit(&(DEVI(dip)->devi_lock)); in devi_detach_node()
5975 DEVI(dip)->devi_ev_path, in devi_detach_node()
5984 instance = DEVI(dip)->devi_ev_instance; in devi_detach_node()
6185 (DEVI(dip)->devi_ops->devo_bus_ops == NULL) || in devi_unconfig_common()
6186 (DEVI(dip)->devi_ops->devo_bus_ops->busops_rev < BUSO_REV_5) || in devi_unconfig_common()
6187 (f = DEVI(dip)->devi_ops->devo_bus_ops->bus_unconfig) == NULL) { in devi_unconfig_common()
6354 if ((DEVI(pdip)->devi_ops->devo_bus_ops == NULL) || in ndi_devi_unconfig_one()
6355 (DEVI(pdip)->devi_ops->devo_bus_ops->busops_rev < BUSO_REV_5) || in ndi_devi_unconfig_one()
6356 (f = DEVI(pdip)->devi_ops->devo_bus_ops->bus_unconfig) == NULL) { in ndi_devi_unconfig_one()
6405 ASSERT(DEVI(pdip)->devi_taskq); in i_ndi_devi_async_common()
6422 if (ddi_taskq_dispatch(DEVI(pdip)->devi_taskq, func, arg, tqflag) == in i_ndi_devi_async_common()
6549 mutex_enter(&(DEVI(dip)->devi_lock)); in ndi_devi_online_async()
6551 mutex_exit(&(DEVI(dip)->devi_lock)); in ndi_devi_online_async()
6716 if (((DEVI(dip)->devi_flags & DEVI_MADE_CHILDREN) == 0) || in reset_nexus_flags()
6724 mutex_enter(&DEVI(dip)->devi_lock); in reset_nexus_flags()
6725 DEVI(dip)->devi_flags &= ~(DEVI_MADE_CHILDREN | DEVI_ATTACHED_CHILDREN); in reset_nexus_flags()
6726 mutex_exit(&DEVI(dip)->devi_lock); in reset_nexus_flags()
6831 dip = (dev_info_t *)DEVI(dip)->devi_next) { in hold_devi()
6837 if (DEVI(dip)->devi_instance == instance) { in hold_devi()
6888 ((DEVI(dip)->devi_major != major) || in hold_devi()
6889 ((DEVI(dip)->devi_instance != instance)) || in hold_devi()
7277 for (dp = DEVI(ddip)->devi_minor; dp != NULL; dp = dp->next) { in i_ddi_minor_node_count()
7986 DEVI(dip)->devi_major = ddi_name_to_major(ddi_node_name(dip)); in i_bind_vhci_node()
7996 DEVI(dip)->devi_ops = ndi_hold_driver(dip); in i_init_vhci_node()
7997 if (DEVI(dip)->devi_ops == NULL) in i_init_vhci_node()
8000 DEVI(dip)->devi_instance = e_ddi_assign_instance(dip); in i_init_vhci_node()
8017 DEVI(dip)->devi_sibling = DEVI(scsi_vhci_dip)->devi_sibling; in i_link_vhci_node()
8018 DEVI(scsi_vhci_dip)->devi_sibling = DEVI(dip); in i_link_vhci_node()
8020 DEVI(dip)->devi_sibling = DEVI(top_devinfo)->devi_child; in i_link_vhci_node()
8021 DEVI(top_devinfo)->devi_child = DEVI(dip); in i_link_vhci_node()
8067 DEVI(dip)->devi_node_attributes |= DDI_VHCI_NODE; in ndi_devi_config_vhci()
8077 mutex_enter(&(DEVI(dip)->devi_lock)); in ndi_devi_config_vhci()
8079 mutex_exit(&(DEVI(dip)->devi_lock)); in ndi_devi_config_vhci()
8088 mutex_enter(&(DEVI(dip)->devi_lock)); in ndi_devi_config_vhci()
8090 mutex_exit(&(DEVI(dip)->devi_lock)); in ndi_devi_config_vhci()
8142 mutex_enter(&(DEVI(dip)->devi_lock)); in ndi_devi_device_remove()
8146 mutex_exit(&(DEVI(dip)->devi_lock)); in ndi_devi_device_remove()
8179 mutex_enter(&(DEVI(dip)->devi_lock)); in ndi_devi_device_insert()
8183 mutex_exit(&(DEVI(dip)->devi_lock)); in ndi_devi_device_insert()
8241 mutex_enter(&DEVI(dip)->devi_lock); in e_ddi_mark_retiring()
8242 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT)); in e_ddi_mark_retiring()
8243 DEVI(dip)->devi_flags |= DEVI_RETIRING; in e_ddi_mark_retiring()
8245 DEVI(dip)->devi_flags |= DEVI_R_CONSTRAINT; in e_ddi_mark_retiring()
8246 mutex_exit(&DEVI(dip)->devi_lock); in e_ddi_mark_retiring()
8288 mutex_enter(&(DEVI(dip)->devi_lock)); in e_ddi_retire_notify()
8289 if (!(DEVI(dip)->devi_flags & DEVI_RETIRING)) { in e_ddi_retire_notify()
8293 } else if (DEVI(dip)->devi_flags & DEVI_R_BLOCKED) { in e_ddi_retire_notify()
8294 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT)); in e_ddi_retire_notify()
8298 } else if (!(DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT)) { in e_ddi_retire_notify()
8306 mutex_exit(&DEVI(dip)->devi_lock); in e_ddi_retire_notify()
8321 mutex_enter(&DEVI(dip)->devi_lock); in e_ddi_retire_finalize()
8322 if (!(DEVI(dip)->devi_flags & DEVI_RETIRING)) { in e_ddi_retire_finalize()
8326 ASSERT(!(DEVI(dip)->devi_flags & DEVI_RETIRED)); in e_ddi_retire_finalize()
8327 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT)); in e_ddi_retire_finalize()
8328 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_BLOCKED)); in e_ddi_retire_finalize()
8329 mutex_exit(&DEVI(dip)->devi_lock); in e_ddi_retire_finalize()
8341 ASSERT(DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT); in e_ddi_retire_finalize()
8342 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_BLOCKED)); in e_ddi_retire_finalize()
8343 DEVI(dip)->devi_flags &= ~DEVI_R_CONSTRAINT; in e_ddi_retire_finalize()
8344 DEVI(dip)->devi_flags &= ~DEVI_RETIRING; in e_ddi_retire_finalize()
8345 DEVI(dip)->devi_flags |= DEVI_RETIRED; in e_ddi_retire_finalize()
8346 mutex_exit(&DEVI(dip)->devi_lock); in e_ddi_retire_finalize()
8351 if (DEVI(dip)->devi_flags & DEVI_R_BLOCKED) { in e_ddi_retire_finalize()
8352 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT)); in e_ddi_retire_finalize()
8353 DEVI(dip)->devi_flags &= ~DEVI_R_BLOCKED; in e_ddi_retire_finalize()
8354 DEVI(dip)->devi_flags &= ~DEVI_RETIRING; in e_ddi_retire_finalize()
8356 } else if (DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT) { in e_ddi_retire_finalize()
8357 DEVI(dip)->devi_flags &= ~DEVI_R_CONSTRAINT; in e_ddi_retire_finalize()
8358 DEVI(dip)->devi_flags &= ~DEVI_RETIRING; in e_ddi_retire_finalize()
8361 DEVI(dip)->devi_flags &= ~DEVI_RETIRING; in e_ddi_retire_finalize()
8368 mutex_exit(&DEVI(dip)->devi_lock); in e_ddi_retire_finalize()
8503 mutex_enter(&DEVI(dip)->devi_lock); in unmark_and_unfence()
8504 DEVI(dip)->devi_flags &= ~DEVI_RETIRED; in unmark_and_unfence()
8506 mutex_exit(&DEVI(dip)->devi_lock); in unmark_and_unfence()
8627 mutex_enter(&DEVI(dip)->devi_lock); in mark_and_fence()
8628 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_CONSTRAINT)); in mark_and_fence()
8629 ASSERT(!(DEVI(dip)->devi_flags & DEVI_R_BLOCKED)); in mark_and_fence()
8630 ASSERT(!(DEVI(dip)->devi_flags & DEVI_RETIRING)); in mark_and_fence()
8631 DEVI(dip)->devi_flags |= DEVI_RETIRED; in mark_and_fence()
8632 mutex_exit(&DEVI(dip)->devi_lock); in mark_and_fence()
8686 if (DEVI(dip)->devi_flags & DEVI_RETIRED) in i_ddi_check_retire()