Lines Matching refs:dnp

1356 	struct devnames	*dnp;  in detach_node()  local
1445 dnp = &(devnamesp[DEVI(dip)->devi_major]); in detach_node()
1446 LOCK_DEV_OPS(&dnp->dn_lock); in detach_node()
1447 dnp->dn_flags &= ~DN_DRIVER_HELD; in detach_node()
1448 UNLOCK_DEV_OPS(&dnp->dn_lock); in detach_node()
1512 struct devnames *dnp; in predetach_node() local
1522 dnp = &devnamesp[DEVI(dip)->devi_major]; in predetach_node()
1523 LOCK_DEV_OPS(&dnp->dn_lock); in predetach_node()
1524 if (dnp->dn_flags & DN_NO_AUTODETACH) { in predetach_node()
1525 UNLOCK_DEV_OPS(&dnp->dn_lock); in predetach_node()
1528 UNLOCK_DEV_OPS(&dnp->dn_lock); in predetach_node()
2461 i_ddi_prop_list_hold(ddi_prop_list_t *prop_list, struct devnames *dnp) in i_ddi_prop_list_hold() argument
2464 ASSERT(mutex_owned(&dnp->dn_lock)); in i_ddi_prop_list_hold()
2469 i_ddi_prop_list_rele(ddi_prop_list_t *prop_list, struct devnames *dnp) in i_ddi_prop_list_rele() argument
2472 ASSERT(mutex_owned(&dnp->dn_lock)); in i_ddi_prop_list_rele()
2574 struct devnames *dnp = &devnamesp[m]; in i_ddi_load_drvconf() local
2575 LOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_load_drvconf()
2576 dnp->dn_flags &= ~(DN_DRIVER_HELD|DN_DRIVER_INACTIVE); in i_ddi_load_drvconf()
2578 UNLOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_load_drvconf()
2599 struct devnames *dnp; in i_ddi_unload_drvconf() local
2607 dnp = &devnamesp[major]; in i_ddi_unload_drvconf()
2608 LOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_unload_drvconf()
2610 UNLOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_unload_drvconf()
2945 struct devnames *dnp; in link_to_driver_list() local
2953 dnp = &orphanlist; in link_to_driver_list()
2954 remove_from_dn_list(dnp, dip); in link_to_driver_list()
2960 dnp = &devnamesp[major]; in link_to_driver_list()
2961 add_to_dn_list(dnp, dip); in link_to_driver_list()
2968 struct devnames *dnp; in unlink_from_driver_list() local
2975 dnp = &devnamesp[major]; in unlink_from_driver_list()
2976 remove_from_dn_list(dnp, dip); in unlink_from_driver_list()
2982 dnp = &orphanlist; in unlink_from_driver_list()
2983 add_to_dn_list(dnp, dip); in unlink_from_driver_list()
2991 in_dn_list(struct devnames *dnp, dev_info_t *dip) in in_dn_list() argument
2995 if ((idevi = DEVI(dnp->dn_head)) == NULL) in in_dn_list()
3014 add_to_ordered_dn_list(struct devnames *dnp, dev_info_t *dip) in add_to_ordered_dn_list() argument
3018 ASSERT(mutex_owned(&(dnp->dn_lock))); in add_to_ordered_dn_list()
3020 dipp = &dnp->dn_head; in add_to_ordered_dn_list()
3053 add_to_dn_list(struct devnames *dnp, dev_info_t *dip) in add_to_dn_list() argument
3058 LOCK_DEV_OPS(&(dnp->dn_lock)); in add_to_dn_list()
3059 if (in_dn_list(dnp, dip)) { in add_to_dn_list()
3063 add_to_ordered_dn_list(dnp, dip); in add_to_dn_list()
3065 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in add_to_dn_list()
3069 remove_from_dn_list(struct devnames *dnp, dev_info_t *dip) in remove_from_dn_list() argument
3073 LOCK_DEV_OPS(&(dnp->dn_lock)); in remove_from_dn_list()
3075 plist = (dev_info_t **)&dnp->dn_head; in remove_from_dn_list()
3090 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in remove_from_dn_list()
3099 struct devnames *dnp; in add_global_props() local
3105 dnp = &devnamesp[DEVI(dip)->devi_major]; in add_global_props()
3106 LOCK_DEV_OPS(&dnp->dn_lock); in add_global_props()
3107 plist = dnp->dn_global_prop_ptr; in add_global_props()
3109 UNLOCK_DEV_OPS(&dnp->dn_lock); in add_global_props()
3112 i_ddi_prop_list_hold(plist, dnp); in add_global_props()
3113 UNLOCK_DEV_OPS(&dnp->dn_lock); in add_global_props()
3132 struct devnames *dnp; in remove_global_props() local
3136 dnp = &devnamesp[major]; in remove_global_props()
3137 LOCK_DEV_OPS(&dnp->dn_lock); in remove_global_props()
3138 i_ddi_prop_list_rele(proplist, dnp); in remove_global_props()
3139 UNLOCK_DEV_OPS(&dnp->dn_lock); in remove_global_props()
3335 struct devnames *dnp = &devnamesp[i]; in attach_drivers() local
3336 if ((dnp->dn_flags & DN_FORCE_ATTACH) && in attach_drivers()
3585 struct devnames *dnp; in e_ddi_walk_driver() local
3592 dnp = &devnamesp[major]; in e_ddi_walk_driver()
3593 LOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
3594 dip = dnp->dn_head; in e_ddi_walk_driver()
3597 UNLOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
3602 LOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
3606 UNLOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
6819 struct devnames *dnp; in hold_devi() local
6828 dnp = &(devnamesp[major]); in hold_devi()
6829 LOCK_DEV_OPS(&(dnp->dn_lock)); in hold_devi()
6830 for (dip = dnp->dn_head; dip; in hold_devi()
6853 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in hold_devi()
6864 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in hold_devi()
7117 struct devnames *dnp; in attach_driver_nodes() local
7121 dnp = &devnamesp[major]; in attach_driver_nodes()
7122 LOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7123 dip = dnp->dn_head; in attach_driver_nodes()
7126 UNLOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7140 LOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7145 dnp->dn_flags |= DN_NO_AUTODETACH; in attach_driver_nodes()
7146 UNLOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7252 struct devnames *dnp; in i_ddi_devs_attached() local
7256 dnp = &devnamesp[major]; in i_ddi_devs_attached()
7257 LOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_devs_attached()
7258 for (dip = dnp->dn_head; dip != NULL; dip = ddi_get_next(dip)) { in i_ddi_devs_attached()
7264 UNLOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_devs_attached()
7296 enter_driver(struct devnames *dnp) in enter_driver() argument
7298 mutex_enter(&dnp->dn_lock); in enter_driver()
7299 ASSERT(dnp->dn_busy_thread != curthread); in enter_driver()
7300 while (dnp->dn_flags & DN_DRIVER_BUSY) in enter_driver()
7301 cv_wait(&dnp->dn_wait, &dnp->dn_lock); in enter_driver()
7302 dnp->dn_flags |= DN_DRIVER_BUSY; in enter_driver()
7303 dnp->dn_busy_thread = curthread; in enter_driver()
7304 mutex_exit(&dnp->dn_lock); in enter_driver()
7308 exit_driver(struct devnames *dnp) in exit_driver() argument
7310 mutex_enter(&dnp->dn_lock); in exit_driver()
7311 ASSERT(dnp->dn_busy_thread == curthread); in exit_driver()
7312 dnp->dn_flags &= ~DN_DRIVER_BUSY; in exit_driver()
7313 dnp->dn_busy_thread = NULL; in exit_driver()
7314 cv_broadcast(&dnp->dn_wait); in exit_driver()
7315 mutex_exit(&dnp->dn_lock); in exit_driver()
7322 struct devnames *dnp; in ddi_hold_installed_driver() local
7334 dnp = &devnamesp[major]; in ddi_hold_installed_driver()
7335 enter_driver(dnp); in ddi_hold_installed_driver()
7338 if (dnp->dn_flags & DN_DRIVER_HELD) { in ddi_hold_installed_driver()
7339 exit_driver(dnp); in ddi_hold_installed_driver()
7346 LOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7347 dnp->dn_flags |= (DN_DRIVER_HELD | DN_NO_AUTODETACH); in ddi_hold_installed_driver()
7348 UNLOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7351 "ddi_hold_installed_driver: %s\n", dnp->dn_name)); in ddi_hold_installed_driver()
7358 if (dnp->dn_pl == NULL) { in ddi_hold_installed_driver()
7360 exit_driver(dnp); in ddi_hold_installed_driver()
7363 exit_driver(dnp); in ddi_hold_installed_driver()
7377 LOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7379 (void) impl_parlist_to_major(dnp->dn_pl, parents); in ddi_hold_installed_driver()
7381 diplist_to_parent_major(dnp->dn_head, parents); in ddi_hold_installed_driver()
7382 UNLOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7387 exit_driver(dnp); in ddi_hold_installed_driver()
7391 exit_driver(dnp); in ddi_hold_installed_driver()
7781 struct devnames *dnp = &devnamesp[par_major]; in mt_config_driver() local
7796 LOCK_DEV_OPS(&dnp->dn_lock); in mt_config_driver()
7837 UNLOCK_DEV_OPS(&dnp->dn_lock); in mt_config_driver()
8045 struct devnames *dnp; in ndi_devi_config_vhci() local
8053 dnp = &devnamesp[major]; in ndi_devi_config_vhci()
8054 LOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8055 if (dnp->dn_head) { in ndi_devi_config_vhci()
8056 dip = dnp->dn_head; in ndi_devi_config_vhci()
8057 UNLOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8060 UNLOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8097 LOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8098 dnp->dn_flags |= DN_DRIVER_HELD; in ndi_devi_config_vhci()
8099 dnp->dn_head = dip; in ndi_devi_config_vhci()
8100 UNLOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()