Lines Matching refs:ntwdt_ptr
430 static void ntwdt_add_callbacks(ntwdt_state_t *ntwdt_ptr);
579 ntwdt_state_t *ntwdt_ptr = NULL; in ntwdt_attach() local
611 ntwdt_ptr = ddi_get_soft_state(ntwdt_statep, instance); in ntwdt_attach()
612 ASSERT(ntwdt_ptr != NULL); in ntwdt_attach()
616 ntwdt_ptr->ntwdt_dip = dip; in ntwdt_attach()
617 ntwdt_ptr->ntwdt_cycl_id = CYCLIC_NONE; in ntwdt_attach()
618 mutex_init(&ntwdt_ptr->ntwdt_mutex, NULL, in ntwdt_attach()
624 ntwdt_ptr->ntwdt_wdog_state = in ntwdt_attach()
626 wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_attach()
649 (void) ntwdt_read_props(ntwdt_ptr); in ntwdt_attach()
655 hdlr->cyh_arg = (void *)ntwdt_ptr; in ntwdt_attach()
658 if (ntwdt_add_mbox_handlers(ntwdt_ptr) != DDI_SUCCESS) in ntwdt_attach()
663 NULL, NULL, ntwdt_cyclic_softint, (caddr_t)ntwdt_ptr) in ntwdt_attach()
670 ntwdt_add_callbacks(ntwdt_ptr); in ntwdt_attach()
699 ntwdt_ptr->ntwdt_wdog_state = NULL; in ntwdt_attach()
701 mutex_destroy(&ntwdt_ptr->ntwdt_mutex); in ntwdt_attach()
793 ntwdt_state_t *ntwdt_ptr = NULL; in ntwdt_detach() local
798 ntwdt_ptr = ddi_get_soft_state(ntwdt_statep, instance); in ntwdt_detach()
799 if (ntwdt_ptr == NULL) { in ntwdt_detach()
814 ntwdt_stop_timer_lock((void *)ntwdt_ptr); in ntwdt_detach()
822 mutex_destroy(&ntwdt_ptr->ntwdt_wdog_state->ntwdt_event_lock); in ntwdt_detach()
823 mutex_destroy(&ntwdt_ptr->ntwdt_wdog_state->ntwdt_wdog_mutex); in ntwdt_detach()
824 kmem_free(ntwdt_ptr->ntwdt_wdog_state, in ntwdt_detach()
826 ntwdt_ptr->ntwdt_wdog_state = NULL; in ntwdt_detach()
828 mutex_destroy(&ntwdt_ptr->ntwdt_mutex); in ntwdt_detach()
852 ntwdt_add_mbox_handlers(ntwdt_state_t *ntwdt_ptr) in ntwdt_add_mbox_handlers() argument
870 if (ddi_add_softintr(ntwdt_ptr->ntwdt_dip, DDI_SOFTINT_LOW, in ntwdt_add_mbox_handlers()
872 (caddr_t)ntwdt_ptr) != DDI_SUCCESS) { in ntwdt_add_mbox_handlers()
887 &sbbc_msg, NULL, &ntwdt_ptr->ntwdt_wdog_state->ntwdt_event_lock); in ntwdt_add_mbox_handlers()
976 ntwdt_state_t *ntwdt_ptr = getstate(inst); in ntwdt_open() local
979 inst, (void *)ntwdt_ptr)); in ntwdt_open()
990 if (ntwdt_ptr == NULL) in ntwdt_open()
993 mutex_enter(&ntwdt_ptr->ntwdt_wdog_state->ntwdt_wdog_mutex); in ntwdt_open()
994 mutex_enter(&ntwdt_ptr->ntwdt_mutex); in ntwdt_open()
995 if (ntwdt_ptr->ntwdt_open_flag != 0) in ntwdt_open()
998 ntwdt_ptr->ntwdt_open_flag = 1; in ntwdt_open()
999 mutex_exit(&ntwdt_ptr->ntwdt_mutex); in ntwdt_open()
1000 mutex_exit(&ntwdt_ptr->ntwdt_wdog_state->ntwdt_wdog_mutex); in ntwdt_open()
1022 ntwdt_state_t *ntwdt_ptr = getstate(inst); in ntwdt_close() local
1025 inst, (void *)ntwdt_ptr)); in ntwdt_close()
1027 if (ntwdt_ptr == NULL) in ntwdt_close()
1030 mutex_enter(&ntwdt_ptr->ntwdt_wdog_state->ntwdt_wdog_mutex); in ntwdt_close()
1031 mutex_enter(&ntwdt_ptr->ntwdt_mutex); in ntwdt_close()
1032 if (ntwdt_ptr->ntwdt_open_flag != 0) { in ntwdt_close()
1033 ntwdt_ptr->ntwdt_open_flag = 0; in ntwdt_close()
1035 mutex_exit(&ntwdt_ptr->ntwdt_mutex); in ntwdt_close()
1036 mutex_exit(&ntwdt_ptr->ntwdt_wdog_state->ntwdt_wdog_mutex); in ntwdt_close()
1048 ntwdt_state_t *ntwdt_ptr = NULL; in ntwdt_ioctl() local
1051 if ((ntwdt_ptr = getstate(inst)) == NULL) in ntwdt_ioctl()
1058 wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_ioctl()
1151 ntwdt_start_timer(ntwdt_ptr); in ntwdt_ioctl()
1160 ntwdt_stop_timer(ntwdt_ptr); in ntwdt_ioctl()
1443 ntwdt_state_t *ntwdt_ptr = (ntwdt_state_t *)arg; in ntwdt_cyclic_softint() local
1446 wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_cyclic_softint()
1461 (ntwdt_ptr->ntwdt_cycl_id == CYCLIC_NONE) || in ntwdt_cyclic_softint()
1486 ntwdt_reprogram_wd(ntwdt_ptr); in ntwdt_cyclic_softint()
1509 (void) timeout(ntwdt_stop_timer_lock, ntwdt_ptr, 0); in ntwdt_cyclic_softint()
1532 ntwdt_reprogram_wd(ntwdt_state_t *ntwdt_ptr) in ntwdt_reprogram_wd() argument
1534 ntwdt_wdog_t *wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_reprogram_wd()
1578 ntwdt_start_timer(ntwdt_state_t *ntwdt_ptr) in ntwdt_start_timer() argument
1580 ntwdt_wdog_t *wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_start_timer()
1595 if (ntwdt_ptr->ntwdt_cycl_id == CYCLIC_NONE) in ntwdt_start_timer()
1596 ntwdt_ptr->ntwdt_cycl_id = cyclic_add(hdlr, when); in ntwdt_start_timer()
1613 ntwdt_state_t *ntwdt_ptr = (void *)arg; in ntwdt_stop_timer() local
1614 ntwdt_wdog_t *wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_stop_timer()
1617 if (ntwdt_ptr->ntwdt_cycl_id != CYCLIC_NONE) in ntwdt_stop_timer()
1618 cyclic_remove(ntwdt_ptr->ntwdt_cycl_id); in ntwdt_stop_timer()
1622 ntwdt_ptr->ntwdt_cycl_id = CYCLIC_NONE; in ntwdt_stop_timer()
1639 ntwdt_state_t *ntwdt_ptr = (void *)arg; in ntwdt_stop_timer_lock() local
1640 ntwdt_wdog_t *wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_stop_timer_lock()
1651 ntwdt_add_callbacks(ntwdt_state_t *ntwdt_ptr) in ntwdt_add_callbacks() argument
1655 (void *)ntwdt_ptr, CB_CL_PANIC, "ntwdt_panic_cb"); in ntwdt_add_callbacks()
1689 ntwdt_read_props(ntwdt_state_t *ntwdt_ptr) in ntwdt_read_props() argument
1694 wdog_state = ntwdt_ptr->ntwdt_wdog_state; in ntwdt_read_props()
1709 ntwdt_ptr->ntwdt_dip, DDI_PROP_DONTPASS, in ntwdt_read_props()