Lines Matching refs:ihp
70 ipmi_entity_add_assoc(ipmi_handle_t *ihp, ipmi_entity_impl_t *eip, in ipmi_entity_add_assoc() argument
79 if ((cp = ipmi_hash_lookup(ihp->ih_entities, &search)) == NULL) { in ipmi_entity_add_assoc()
80 if ((cp = ipmi_zalloc(ihp, in ipmi_entity_add_assoc()
87 ipmi_hash_insert(ihp->ih_entities, cp); in ipmi_entity_add_assoc()
194 ipmi_entity_visit(ipmi_handle_t *ihp, const char *name, ipmi_sdr_t *sdrp, in ipmi_entity_visit() argument
209 if ((eip = ipmi_hash_lookup(ihp->ih_entities, &search)) == NULL) { in ipmi_entity_visit()
210 if ((eip = ipmi_zalloc(ihp, in ipmi_entity_visit()
217 ipmi_hash_insert(ihp->ih_entities, eip); in ipmi_entity_visit()
237 if (ipmi_entity_add_assoc(ihp, eip, in ipmi_entity_visit()
249 if (ipmi_entity_add_assoc(ihp, eip, in ipmi_entity_visit()
262 if (ipmi_entity_add_assoc(ihp, eip, type, in ipmi_entity_visit()
268 if ((esp = ipmi_zalloc(ihp, in ipmi_entity_visit()
287 ipmi_entity_present_sdr(ipmi_handle_t *ihp, ipmi_sdr_t *sdrp, in ipmi_entity_present_sdr() argument
354 if ((srp = ipmi_get_sensor_reading(ihp, number)) == NULL) { in ipmi_entity_present_sdr()
355 if (ipmi_errno(ihp) == EIPMI_NOT_PRESENT) { in ipmi_entity_present_sdr()
401 ipmi_entity_present(ipmi_handle_t *ihp, ipmi_entity_t *ep, boolean_t *valp) in ipmi_entity_present() argument
478 if ((srp = ipmi_get_sensor_reading(ihp, number)) == NULL) { in ipmi_entity_present()
479 if (ipmi_errno(ihp) == EIPMI_NOT_PRESENT) { in ipmi_entity_present()
513 if ((srp = ipmi_get_sensor_reading(ihp, number)) == NULL) { in ipmi_entity_present()
514 if (ipmi_errno(ihp) == EIPMI_NOT_PRESENT) in ipmi_entity_present()
532 if (ipmi_entity_present(ihp, &cp->ie_entity, valp) != 0) in ipmi_entity_present()
549 if (ipmi_fru_read(ihp, frup, &frudata) >= 0) { in ipmi_entity_present()
550 ipmi_free(ihp, frudata); in ipmi_entity_present()
555 if (ipmi_errno(ihp) != EIPMI_NOT_PRESENT) in ipmi_entity_present()
564 ipmi_entity_refresh(ipmi_handle_t *ihp) in ipmi_entity_refresh() argument
566 if (ipmi_hash_first(ihp->ih_entities) != NULL && in ipmi_entity_refresh()
567 !ipmi_sdr_changed(ihp)) in ipmi_entity_refresh()
570 if (ipmi_sdr_iter(ihp, ipmi_entity_visit, NULL) != 0) in ipmi_entity_refresh()
577 ipmi_entity_iter(ipmi_handle_t *ihp, int (*func)(ipmi_handle_t *, in ipmi_entity_iter() argument
583 if (ipmi_entity_refresh(ihp) != 0) in ipmi_entity_iter()
586 for (eip = ipmi_hash_first(ihp->ih_entities); eip != NULL; in ipmi_entity_iter()
587 eip = ipmi_hash_next(ihp->ih_entities, eip)) { in ipmi_entity_iter()
591 if ((ret = func(ihp, &eip->ie_entity, data)) != 0) in ipmi_entity_iter()
599 ipmi_entity_iter_sdr(ipmi_handle_t *ihp, ipmi_entity_t *ep, in ipmi_entity_iter_sdr() argument
610 if ((ret = func(ihp, ep, isp->ies_name, in ipmi_entity_iter_sdr()
619 ipmi_entity_iter_children(ipmi_handle_t *ihp, ipmi_entity_t *ep, in ipmi_entity_iter_children() argument
629 if ((ret = func(ihp, &cp->ie_entity, data)) != 0) in ipmi_entity_iter_children()
637 ipmi_entity_parent(ipmi_handle_t *ihp, ipmi_entity_t *ep) in ipmi_entity_parent() argument
643 (void) ipmi_set_error(ihp, EIPMI_NOT_PRESENT, NULL); in ipmi_entity_parent()
651 ipmi_entity_lookup(ipmi_handle_t *ihp, uint8_t type, uint8_t instance) in ipmi_entity_lookup() argument
656 if (ipmi_entity_refresh(ihp) != 0) in ipmi_entity_lookup()
662 if ((eip = ipmi_hash_lookup(ihp->ih_entities, &search)) == NULL) { in ipmi_entity_lookup()
663 (void) ipmi_set_error(ihp, EIPMI_NOT_PRESENT, NULL); in ipmi_entity_lookup()
671 ipmi_entity_lookup_sdr(ipmi_handle_t *ihp, const char *name) in ipmi_entity_lookup_sdr() argument
677 if ((sdrp = ipmi_sdr_lookup(ihp, name)) == NULL) in ipmi_entity_lookup_sdr()
681 (void) ipmi_set_error(ihp, EIPMI_NOT_PRESENT, in ipmi_entity_lookup_sdr()
686 return (ipmi_entity_lookup(ihp, id, instance)); in ipmi_entity_lookup_sdr()
719 ipmi_entity_init(ipmi_handle_t *ihp) in ipmi_entity_init() argument
721 if ((ihp->ih_entities = ipmi_hash_create(ihp, in ipmi_entity_init()
732 ipmi_entity_clear(ipmi_handle_t *ihp) in ipmi_entity_clear() argument
737 while ((eip = ipmi_hash_first(ihp->ih_entities)) != NULL) { in ipmi_entity_clear()
740 ipmi_free(ihp, esp); in ipmi_entity_clear()
742 ipmi_hash_remove(ihp->ih_entities, eip); in ipmi_entity_clear()
743 ipmi_free(ihp, eip); in ipmi_entity_clear()
748 ipmi_entity_fini(ipmi_handle_t *ihp) in ipmi_entity_fini() argument
750 if (ihp->ih_entities != NULL) { in ipmi_entity_fini()
751 ipmi_entity_clear(ihp); in ipmi_entity_fini()
752 ipmi_hash_destroy(ihp->ih_entities); in ipmi_entity_fini()