Lines Matching refs:dnp
1374 struct devnames *dnp; in detach_node() local
1463 dnp = &(devnamesp[DEVI(dip)->devi_major]); in detach_node()
1464 LOCK_DEV_OPS(&dnp->dn_lock); in detach_node()
1465 dnp->dn_flags &= ~DN_DRIVER_HELD; in detach_node()
1466 UNLOCK_DEV_OPS(&dnp->dn_lock); in detach_node()
1530 struct devnames *dnp; in predetach_node() local
1540 dnp = &devnamesp[DEVI(dip)->devi_major]; in predetach_node()
1541 LOCK_DEV_OPS(&dnp->dn_lock); in predetach_node()
1542 if (dnp->dn_flags & DN_NO_AUTODETACH) { in predetach_node()
1543 UNLOCK_DEV_OPS(&dnp->dn_lock); in predetach_node()
1546 UNLOCK_DEV_OPS(&dnp->dn_lock); in predetach_node()
2564 i_ddi_prop_list_hold(ddi_prop_list_t *prop_list, struct devnames *dnp) in i_ddi_prop_list_hold() argument
2567 ASSERT(mutex_owned(&dnp->dn_lock)); in i_ddi_prop_list_hold()
2572 i_ddi_prop_list_rele(ddi_prop_list_t *prop_list, struct devnames *dnp) in i_ddi_prop_list_rele() argument
2575 ASSERT(mutex_owned(&dnp->dn_lock)); in i_ddi_prop_list_rele()
2677 struct devnames *dnp = &devnamesp[m]; in i_ddi_load_drvconf() local
2678 LOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_load_drvconf()
2679 dnp->dn_flags &= ~(DN_DRIVER_HELD|DN_DRIVER_INACTIVE); in i_ddi_load_drvconf()
2681 UNLOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_load_drvconf()
2702 struct devnames *dnp; in i_ddi_unload_drvconf() local
2710 dnp = &devnamesp[major]; in i_ddi_unload_drvconf()
2711 LOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_unload_drvconf()
2713 UNLOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_unload_drvconf()
3053 struct devnames *dnp; in link_to_driver_list() local
3061 dnp = &orphanlist; in link_to_driver_list()
3062 remove_from_dn_list(dnp, dip); in link_to_driver_list()
3068 dnp = &devnamesp[major]; in link_to_driver_list()
3069 add_to_dn_list(dnp, dip); in link_to_driver_list()
3076 struct devnames *dnp; in unlink_from_driver_list() local
3083 dnp = &devnamesp[major]; in unlink_from_driver_list()
3084 remove_from_dn_list(dnp, dip); in unlink_from_driver_list()
3090 dnp = &orphanlist; in unlink_from_driver_list()
3091 add_to_dn_list(dnp, dip); in unlink_from_driver_list()
3099 in_dn_list(struct devnames *dnp, dev_info_t *dip) in in_dn_list() argument
3103 if ((idevi = DEVI(dnp->dn_head)) == NULL) in in_dn_list()
3122 add_to_ordered_dn_list(struct devnames *dnp, dev_info_t *dip) in add_to_ordered_dn_list() argument
3126 ASSERT(mutex_owned(&(dnp->dn_lock))); in add_to_ordered_dn_list()
3128 dipp = &dnp->dn_head; in add_to_ordered_dn_list()
3161 add_to_dn_list(struct devnames *dnp, dev_info_t *dip) in add_to_dn_list() argument
3166 LOCK_DEV_OPS(&(dnp->dn_lock)); in add_to_dn_list()
3167 if (in_dn_list(dnp, dip)) { in add_to_dn_list()
3171 add_to_ordered_dn_list(dnp, dip); in add_to_dn_list()
3173 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in add_to_dn_list()
3177 remove_from_dn_list(struct devnames *dnp, dev_info_t *dip) in remove_from_dn_list() argument
3181 LOCK_DEV_OPS(&(dnp->dn_lock)); in remove_from_dn_list()
3183 plist = (dev_info_t **)&dnp->dn_head; in remove_from_dn_list()
3198 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in remove_from_dn_list()
3207 struct devnames *dnp; in add_global_props() local
3213 dnp = &devnamesp[DEVI(dip)->devi_major]; in add_global_props()
3214 LOCK_DEV_OPS(&dnp->dn_lock); in add_global_props()
3215 plist = dnp->dn_global_prop_ptr; in add_global_props()
3217 UNLOCK_DEV_OPS(&dnp->dn_lock); in add_global_props()
3220 i_ddi_prop_list_hold(plist, dnp); in add_global_props()
3221 UNLOCK_DEV_OPS(&dnp->dn_lock); in add_global_props()
3240 struct devnames *dnp; in remove_global_props() local
3244 dnp = &devnamesp[major]; in remove_global_props()
3245 LOCK_DEV_OPS(&dnp->dn_lock); in remove_global_props()
3246 i_ddi_prop_list_rele(proplist, dnp); in remove_global_props()
3247 UNLOCK_DEV_OPS(&dnp->dn_lock); in remove_global_props()
3443 struct devnames *dnp = &devnamesp[i]; in attach_drivers() local
3444 if ((dnp->dn_flags & DN_FORCE_ATTACH) && in attach_drivers()
3690 struct devnames *dnp; in e_ddi_walk_driver() local
3697 dnp = &devnamesp[major]; in e_ddi_walk_driver()
3698 LOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
3699 dip = dnp->dn_head; in e_ddi_walk_driver()
3702 UNLOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
3707 LOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
3711 UNLOCK_DEV_OPS(&dnp->dn_lock); in e_ddi_walk_driver()
6995 struct devnames *dnp; in hold_devi() local
7004 dnp = &(devnamesp[major]); in hold_devi()
7005 LOCK_DEV_OPS(&(dnp->dn_lock)); in hold_devi()
7006 for (dip = dnp->dn_head; dip; in hold_devi()
7029 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in hold_devi()
7040 UNLOCK_DEV_OPS(&(dnp->dn_lock)); in hold_devi()
7293 struct devnames *dnp; in attach_driver_nodes() local
7297 dnp = &devnamesp[major]; in attach_driver_nodes()
7298 LOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7299 dip = dnp->dn_head; in attach_driver_nodes()
7302 UNLOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7316 LOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7321 dnp->dn_flags |= DN_NO_AUTODETACH; in attach_driver_nodes()
7322 UNLOCK_DEV_OPS(&dnp->dn_lock); in attach_driver_nodes()
7428 struct devnames *dnp; in i_ddi_devs_attached() local
7432 dnp = &devnamesp[major]; in i_ddi_devs_attached()
7433 LOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_devs_attached()
7434 for (dip = dnp->dn_head; dip != NULL; dip = ddi_get_next(dip)) { in i_ddi_devs_attached()
7440 UNLOCK_DEV_OPS(&dnp->dn_lock); in i_ddi_devs_attached()
7471 enter_driver(struct devnames *dnp) in enter_driver() argument
7473 mutex_enter(&dnp->dn_lock); in enter_driver()
7474 ASSERT(dnp->dn_busy_thread != curthread); in enter_driver()
7475 while (dnp->dn_flags & DN_DRIVER_BUSY) in enter_driver()
7476 cv_wait(&dnp->dn_wait, &dnp->dn_lock); in enter_driver()
7477 dnp->dn_flags |= DN_DRIVER_BUSY; in enter_driver()
7478 dnp->dn_busy_thread = curthread; in enter_driver()
7479 mutex_exit(&dnp->dn_lock); in enter_driver()
7483 exit_driver(struct devnames *dnp) in exit_driver() argument
7485 mutex_enter(&dnp->dn_lock); in exit_driver()
7486 ASSERT(dnp->dn_busy_thread == curthread); in exit_driver()
7487 dnp->dn_flags &= ~DN_DRIVER_BUSY; in exit_driver()
7488 dnp->dn_busy_thread = NULL; in exit_driver()
7489 cv_broadcast(&dnp->dn_wait); in exit_driver()
7490 mutex_exit(&dnp->dn_lock); in exit_driver()
7497 struct devnames *dnp; in ddi_hold_installed_driver() local
7509 dnp = &devnamesp[major]; in ddi_hold_installed_driver()
7510 enter_driver(dnp); in ddi_hold_installed_driver()
7513 if (dnp->dn_flags & DN_DRIVER_HELD) { in ddi_hold_installed_driver()
7514 exit_driver(dnp); in ddi_hold_installed_driver()
7521 LOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7522 dnp->dn_flags |= (DN_DRIVER_HELD | DN_NO_AUTODETACH); in ddi_hold_installed_driver()
7523 UNLOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7526 "ddi_hold_installed_driver: %s\n", dnp->dn_name)); in ddi_hold_installed_driver()
7533 if (dnp->dn_pl == NULL) { in ddi_hold_installed_driver()
7535 exit_driver(dnp); in ddi_hold_installed_driver()
7538 exit_driver(dnp); in ddi_hold_installed_driver()
7552 LOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7554 (void) impl_parlist_to_major(dnp->dn_pl, parents); in ddi_hold_installed_driver()
7556 diplist_to_parent_major(dnp->dn_head, parents); in ddi_hold_installed_driver()
7557 UNLOCK_DEV_OPS(&dnp->dn_lock); in ddi_hold_installed_driver()
7562 exit_driver(dnp); in ddi_hold_installed_driver()
7566 exit_driver(dnp); in ddi_hold_installed_driver()
7955 struct devnames *dnp = &devnamesp[par_major]; in mt_config_driver() local
7970 LOCK_DEV_OPS(&dnp->dn_lock); in mt_config_driver()
8011 UNLOCK_DEV_OPS(&dnp->dn_lock); in mt_config_driver()
8219 struct devnames *dnp; in ndi_devi_config_vhci() local
8227 dnp = &devnamesp[major]; in ndi_devi_config_vhci()
8228 LOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8229 if (dnp->dn_head) { in ndi_devi_config_vhci()
8230 dip = dnp->dn_head; in ndi_devi_config_vhci()
8231 UNLOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8234 UNLOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8271 LOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()
8272 dnp->dn_flags |= DN_DRIVER_HELD; in ndi_devi_config_vhci()
8273 dnp->dn_head = dip; in ndi_devi_config_vhci()
8274 UNLOCK_DEV_OPS(&dnp->dn_lock); in ndi_devi_config_vhci()