Lines Matching refs:drhd

132 	drhd_t *drhd;  in drhd_list_destroy()  local
141 while ((drhd = list_remove_head(drhd_list)) != NULL) { in drhd_list_destroy()
142 scope_list_free(&(drhd->dr_scope_list)); in drhd_list_destroy()
143 kmem_free(drhd, sizeof (drhd_t)); in drhd_list_destroy()
235 ioapic_drhd_insert(scope_t *scope, drhd_t *drhd) in ioapic_drhd_insert() argument
243 idt->ioapic_drhd = drhd; in ioapic_drhd_insert()
289 drhd_t *drhd; in parse_drhd() local
306 drhd = kmem_zalloc(sizeof (drhd_t), KM_SLEEP); in parse_drhd()
307 mutex_init(&(drhd->dr_lock), NULL, MUTEX_DEFAULT, NULL); in parse_drhd()
308 list_create(&(drhd->dr_scope_list), sizeof (scope_t), in parse_drhd()
312 drhd->dr_include_all = in parse_drhd()
314 drhd->dr_seg = seg; in parse_drhd()
315 drhd->dr_regs = get_uint64(&uhead[8]); in parse_drhd()
328 ioapic_drhd_insert(scope, drhd); in parse_drhd()
331 list_insert_tail(&(drhd->dr_scope_list), scope); in parse_drhd()
335 list_insert_tail(&(tbl->tbl_drhd_list[drhd->dr_seg]), drhd); in parse_drhd()
560 drhd_t *drhd; in print_drhd_list() local
567 for (drhd = list_head(drhd_list); drhd; in print_drhd_list()
568 drhd = list_next(drhd_list, drhd)) { in print_drhd_list()
571 drhd->dr_seg); in print_drhd_list()
573 drhd->dr_regs); in print_drhd_list()
575 drhd->dr_include_all == B_TRUE ? "TRUE" : "FALSE"); in print_drhd_list()
577 (void *)drhd->dr_dip); in print_drhd_list()
579 print_scope_list(&(drhd->dr_scope_list)); in print_drhd_list()
641 drhd_devi_create(drhd_t *drhd, int unit) in drhd_devi_create() argument
650 drhd->dr_dip = dip; in drhd_devi_create()
653 reg.regspec_addr = drhd->dr_regs; in drhd_devi_create()
687 pdptr->par_reg->regspec_addr = drhd->dr_regs; in drhd_devi_create()
703 drhd_t *drhd; in dmar_devinfos_create() local
713 drhd = list_head(drhd_list); in dmar_devinfos_create()
714 for (unit = 0; drhd; in dmar_devinfos_create()
715 drhd = list_next(drhd_list, drhd), unit++) { in dmar_devinfos_create()
716 drhd_devi_create(drhd, unit); in dmar_devinfos_create()
722 drhd_devi_destroy(drhd_t *drhd) in drhd_devi_destroy() argument
727 dip = drhd->dr_dip; in drhd_devi_destroy()
735 drhd->dr_dip = NULL; in drhd_devi_destroy()
746 drhd_t *drhd; in dmar_devi_destroy() local
755 drhd = list_head(drhd_list); in dmar_devi_destroy()
756 for (; drhd; drhd = list_next(drhd_list, drhd)) { in dmar_devi_destroy()
757 drhd_devi_destroy(drhd); in dmar_devi_destroy()
1055 drhd_t *drhd; in immu_dmar_get_immu() local
1070 drhd = list_head(&(tbl->tbl_drhd_list)[seg]); in immu_dmar_get_immu()
1071 for (; drhd; drhd = list_next(&(tbl->tbl_drhd_list)[seg], in immu_dmar_get_immu()
1072 drhd)) { in immu_dmar_get_immu()
1078 if (drhd->dr_include_all == B_TRUE) in immu_dmar_get_immu()
1084 scope = list_head(&(drhd->dr_scope_list)); in immu_dmar_get_immu()
1086 scope = list_next(&(drhd->dr_scope_list), scope)) { in immu_dmar_get_immu()
1127 drhd = list_head(&(tbl->tbl_drhd_list)[seg]); in immu_dmar_get_immu()
1128 for (; drhd; drhd = list_next(&(tbl->tbl_drhd_list)[seg], in immu_dmar_get_immu()
1129 drhd)) { in immu_dmar_get_immu()
1132 if (drhd->dr_include_all == B_TRUE) in immu_dmar_get_immu()
1138 scope = list_head(&(drhd->dr_scope_list)); in immu_dmar_get_immu()
1140 scope = list_next(&(drhd->dr_scope_list), scope)) { in immu_dmar_get_immu()
1168 tdrhd = drhd; in immu_dmar_get_immu()
1175 if ((drhd = tdrhd) != NULL) { in immu_dmar_get_immu()
1180 drhd = list_head(&(tbl->tbl_drhd_list[seg])); in immu_dmar_get_immu()
1181 for (; drhd; drhd = list_next(&(tbl->tbl_drhd_list)[seg], in immu_dmar_get_immu()
1182 drhd)) { in immu_dmar_get_immu()
1184 if (drhd->dr_include_all == B_TRUE) { in immu_dmar_get_immu()
1201 if (drhd == NULL) { in immu_dmar_get_immu()
1207 return (drhd->dr_immu); in immu_dmar_get_immu()
1213 drhd_t *drhd = (drhd_t *)dmar_unit; in immu_dmar_unit_dip() local
1214 return (drhd->dr_dip); in immu_dmar_unit_dip()
1221 drhd_t *drhd = (drhd_t *)dmar_unit; in immu_dmar_walk_units() local
1225 if (drhd == NULL) { in immu_dmar_walk_units()
1228 return ((void *)list_next(drhd_list, drhd)); in immu_dmar_walk_units()
1235 drhd_t *drhd = (drhd_t *)dmar_unit; in immu_dmar_set_immu() local
1237 ASSERT(drhd); in immu_dmar_set_immu()
1240 drhd->dr_immu = immu; in immu_dmar_set_immu()