Lines Matching +full:multi +full:- +full:chip
38 #define ANY_ID (uint_t)-1
92 wp->chipid = chipid; in walk_init()
93 wp->coreid = coreid; in walk_init()
94 wp->strandid = strandid; in walk_init()
99 if ((wp->cbfunc = cbfunc) == NULL) { in walk_init()
100 wp->hdls = kmem_alloc(sizeof (cmi_hdl_t) * INIT_HDLS, KM_SLEEP); in walk_init()
101 wp->nhdl_max = INIT_HDLS; in walk_init()
102 wp->nhdl = 0; in walk_init()
109 if (wp->cbfunc == NULL) in walk_fini()
110 kmem_free(wp->hdls, sizeof (cmi_hdl_t) * wp->nhdl_max); in walk_fini()
118 if (wp->chipid != ANY_ID && wp->chipid != cmi_hdl_chipid(hdl)) in select_cmi_hdl()
120 if (wp->coreid != ANY_ID && wp->coreid != cmi_hdl_coreid(hdl)) in select_cmi_hdl()
122 if (wp->strandid != ANY_ID && wp->strandid != cmi_hdl_strandid(hdl)) in select_cmi_hdl()
131 if (wp->cbfunc != NULL) in select_cmi_hdl()
132 return (wp->cbfunc(hdl, arg2, arg3)); in select_cmi_hdl()
134 if (wp->nhdl == wp->nhdl_max) { in select_cmi_hdl()
135 size_t sz = sizeof (cmi_hdl_t) * wp->nhdl_max; in select_cmi_hdl()
138 bcopy(wp->hdls, newarray, sz); in select_cmi_hdl()
139 kmem_free(wp->hdls, sz); in select_cmi_hdl()
140 wp->hdls = newarray; in select_cmi_hdl()
141 wp->nhdl_max <<= 1; in select_cmi_hdl()
145 wp->hdls[wp->nhdl++] = hdl; in select_cmi_hdl()
161 * more information on the chip's physical roots in populate_cpu()
164 * ordering & this has to match the ereport's chip in populate_cpu()
166 * Multi-Chip-Module support should set the chipid in populate_cpu()
443 * Gather all of the different per-CPU leaves and return them as a series of