Lines Matching refs:devi
220 dv_mkino(dev_info_t *devi, vtype_t typ, dev_t dev)
228 major = ((L_MAXMAJ32 + 1) >> 1) + DEVI(devi)->devi_major;
229 minor = ddi_get_instance(devi);
234 major = DEVI(devi)->devi_major;
331 dv_mkdir(struct dv_node *ddv, dev_info_t *devi, char *nm)
337 ASSERT((devi));
355 dv->dv_devi = devi;
356 ndi_hold_devi(devi);
358 dv->dv_ino = dv_mkino(devi, VDIR, NODEV);
382 dv_mknod(struct dv_node *ddv, dev_info_t *devi, char *nm,
407 ASSERT(DEVI_BUSY_OWNED(devi));
408 mutex_enter(&DEVI(devi)->devi_lock);
409 dv->dv_devi = devi;
410 DEVI(devi)->devi_ref++; /* ndi_hold_devi(dip) */
411 mutex_exit(&DEVI(devi)->devi_lock);
413 dv->dv_ino = dv_mkino(devi, vp->v_type, vp->v_rdev);
838 dv_find_leafnode(dev_info_t *devi, char *minor_nm, struct ddi_minor_data *r_mi)
842 ASSERT(i_ddi_devi_attached(devi));
845 ASSERT(DEVI_BUSY_OWNED(devi));
846 for (dmd = DEVI(devi)->devi_minor; dmd; dmd = dmd->next) {
933 dev_info_t *pdevi, *devi = NULL;
1087 * If successful, devi is held upon returning.
1092 rv = ndi_devi_config_one(pdevi, nm, &devi, ndi_flags | NDI_NO_EVENT);
1100 ASSERT(devi);
1103 if (ddi_aliases_present == B_TRUE && ddi_get_parent(devi) != pdevi) {
1106 (void) ddi_pathname(devi, curr);
1120 if (ndi_dev_is_hidden_node(devi)) {
1121 ndi_rele_devi(devi);
1130 if (isminiroot == 0 && ddi_get_parent(devi) != pdevi) {
1131 ndi_rele_devi(devi);
1136 ASSERT(devi && i_ddi_devi_attached(devi));
1150 dv = dv_mkdir(ddv, devi, nm);
1157 ndi_devi_enter(devi, &circ);
1158 if (devi == clone_dip) {
1168 if (dv_find_leafnode(devi, mnm + 1, dmd) == 0) {
1169 dv = dv_mknod(ddv, devi, nm, dmd);
1174 ndi_devi_exit(devi, circ);
1180 ndi_rele_devi(devi);
1271 dev_info_t *devi, *pdevi;
1290 for (devi = ddi_get_child(pdevi); devi;
1291 devi = ddi_get_next_sibling(devi)) {
1301 if (i_ddi_node_state(devi) < DS_ATTACHED)
1305 if (ndi_dev_is_hidden_node(devi))
1308 dcmn_err3(("dv_filldir: node %s\n", ddi_node_name(devi)));
1310 ndi_devi_enter(devi, &ccirc);
1311 for (dmd = DEVI(devi)->devi_minor; dmd; dmd = dmd->next) {
1324 addr = ddi_get_name_addr(devi);
1327 ddi_node_name(devi), addr, dmd->ddm_name);
1330 ddi_node_name(devi), dmd->ddm_name);
1338 dv = dv_mknod(ddv, devi, devnm, dmd);
1342 ndi_devi_exit(devi, ccirc);
1344 (void) ddi_deviname(devi, devnm);
1347 dv = dv_mkdir(ddv, devi, devnm + 1);