Lines Matching refs:llc1
345 llc1_t *llc1; in llc1_open() local
384 llc1 = kmem_zalloc(sizeof (llc1_t), KM_SLEEP); in llc1_open()
385 llc1->llc_qptr = q; in llc1_open()
386 WR(q)->q_ptr = q->q_ptr = (caddr_t)llc1; in llc1_open()
390 llc1->llc_state = DL_UNATTACHED; in llc1_open()
391 llc1->llc_style = DL_STYLE2; in llc1_open()
392 llc1->llc_minor = minordev; in llc1_open()
394 mutex_init(&llc1->llc_lock, NULL, MUTEX_DRIVER, NULL); in llc1_open()
395 llc1insque(llc1, llc1_device_list.llc1_str_prev); in llc1_open()
410 llc1_t *llc1; in llc1_close() local
416 llc1 = (llc1_t *)q->q_ptr; in llc1_close()
421 (void) llc1remque(llc1); /* remove from active list */ in llc1_close()
424 mutex_enter(&llc1->llc_lock); in llc1_close()
425 if (llc1->llc_state == DL_IDLE || llc1->llc_state == DL_UNBOUND) { in llc1_close()
426 llc1->llc_state = DL_UNBOUND; /* force the issue */ in llc1_close()
429 if (llc1->llc_mcast != NULL) { in llc1_close()
435 if ((mcast = llc1->llc_mcast[i]) != NULL) { in llc1_close()
440 if (llc1->llc_mac_info && in llc1_close()
441 llc1->llc_mac_info->llcp_flags & in llc1_close()
444 llc1->llc_mac_info, in llc1_close()
446 llc1->llc_mcast[i] = NULL; in llc1_close()
449 kmem_free(llc1->llc_mcast, in llc1_close()
450 sizeof (llc_mcast_t *) * llc1->llc_multicnt); in llc1_close()
451 llc1->llc_mcast = NULL; in llc1_close()
453 llc1->llc_state = DL_UNATTACHED; in llc1_close()
455 mutex_exit(&llc1->llc_lock); in llc1_close()
457 mutex_destroy(&llc1->llc_lock); in llc1_close()
459 kmem_free(llc1, sizeof (llc1_t)); in llc1_close()