Lines Matching refs:simba_p

302 static void simba_save_config_regs(simba_devstate_t *simba_p);
303 static void simba_restore_config_regs(simba_devstate_t *simba_p);
342 simba_devstate_t *simba_p; /* per simba state pointer */
346 simba_p = (simba_devstate_t *)ddi_get_soft_state(simba_state,
358 if (simba_p == NULL)
360 *result = (void *)simba_p->dip;
878 simba_save_config_regs(simba_devstate_t *simba_p)
885 for (i = 0, dip = ddi_get_child(simba_p->dip); dip != NULL;
892 simba_p->simba_config_state_p =
894 if (!simba_p->simba_config_state_p) {
898 simba_p->config_state_index = i;
900 for (statep = simba_p->simba_config_state_p,
901 dip = ddi_get_child(simba_p->dip);
907 ddi_driver_name(simba_p->dip),
908 ddi_get_instance(simba_p->dip),
915 ddi_driver_name(simba_p->dip),
916 ddi_get_instance(simba_p->dip),
922 ddi_driver_name(simba_p->dip),
923 ddi_get_instance(simba_p->dip),
930 ddi_driver_name(simba_p->dip),
931 ddi_get_instance(simba_p->dip),
979 simba_restore_config_regs(simba_devstate_t *simba_p)
984 struct simba_cfg_state *statep = simba_p->simba_config_state_p;
985 if (!simba_p->config_state_index)
988 for (i = 0; i < simba_p->config_state_index; i++, statep++) {
993 ddi_driver_name(simba_p->dip),
994 ddi_get_instance(simba_p->dip),
1000 ddi_driver_name(simba_p->dip),
1001 ddi_get_instance(simba_p->dip),
1008 ddi_driver_name(simba_p->dip),
1009 ddi_get_instance(simba_p->dip),
1043 kmem_free(simba_p->simba_config_state_p,
1044 simba_p->config_state_index * sizeof (struct simba_cfg_state));
1045 simba_p->simba_config_state_p = NULL;
1046 simba_p->config_state_index = 0;
1053 simba_devstate_t *simba_p;
1064 simba_p = (simba_devstate_t *)ddi_get_soft_state(simba_state,
1066 if (simba_p == NULL)
1072 mutex_enter(&simba_p->simba_mutex);
1074 if (simba_p->simba_soft_state != SIMBA_SOFT_STATE_CLOSED) {
1075 mutex_exit(&simba_p->simba_mutex);
1078 simba_p->simba_soft_state = SIMBA_SOFT_STATE_OPEN_EXCL;
1080 if (simba_p->simba_soft_state == SIMBA_SOFT_STATE_OPEN_EXCL) {
1081 mutex_exit(&simba_p->simba_mutex);
1084 simba_p->simba_soft_state = SIMBA_SOFT_STATE_OPEN;
1086 mutex_exit(&simba_p->simba_mutex);
1095 simba_devstate_t *simba_p;
1100 simba_p = (simba_devstate_t *)ddi_get_soft_state(simba_state,
1102 if (simba_p == NULL)
1105 mutex_enter(&simba_p->simba_mutex);
1106 simba_p->simba_soft_state = SIMBA_SOFT_STATE_CLOSED;
1107 mutex_exit(&simba_p->simba_mutex);
1120 simba_devstate_t *simba_p;
1126 simba_p = (simba_devstate_t *)ddi_get_soft_state(simba_state,
1128 if (simba_p == NULL)
1131 self = simba_p->dip;
1196 simba_devstate_t *simba_p = ddi_get_soft_state(simba_state,
1199 *ibc = simba_p->fm_ibc;
1200 return (simba_p->fm_cap);