Lines Matching refs:mod

97 mc_add_ranks(topo_mod_t *mod, tnode_t *dnode, nvlist_t *auth, int dimm,
113 if (topo_node_range_create(mod, dnode, RANK, rank,
115 whinge(mod, NULL, "mc_add_ranks: node range create failed"
120 fmri = topo_mod_hcfmri(mod, dnode, FM_HC_SCHEME_VERSION,
123 whinge(mod, NULL,
127 if ((rnode = topo_node_bind(mod, dnode, RANK, rank,
130 whinge(mod, NULL, "mc_add_ranks: node bind failed"
136 if (topo_method_register(mod, rnode, rank_methods) < 0)
137 whinge(mod, &err, "rank_create: "
140 if (! is_xpv() && topo_method_register(mod, rnode,
142 whinge(mod, &err, "mc_add_ranks: "
147 if (FM_AWARE_SMBIOS(mod))
155 (void) nvprop_add(mod, nvp, PGNAME(RANK), rnode);
162 mc_add_dimms(topo_mod_t *mod, uint16_t chip_smbid, tnode_t *pnode,
181 if (topo_node_range_create(mod, pnode, DIMM, 0,
183 whinge(mod, NULL,
211 if (FM_AWARE_SMBIOS(mod)) {
215 smbid = memnode_to_smbiosid(mod, chip_smbid,
218 serial = (char *)chip_serial_smbios_get(mod,
221 part = (char *)chip_part_smbios_get(mod,
224 rev = (char *)chip_rev_smbios_get(mod,
228 fmri = topo_mod_hcfmri(mod, pnode, FM_HC_SCHEME_VERSION,
231 whinge(mod, NULL,
235 if ((dnode = topo_node_bind(mod, pnode, DIMM, dimm_number,
238 whinge(mod, NULL, "mc_add_dimms: node bind failed"
243 if (!FM_AWARE_SMBIOS(mod))
244 if (topo_method_register(mod, dnode, dimm_methods) < 0)
245 whinge(mod, NULL, "mc_add_dimms: "
256 (void) nvprop_add(mod, nvp, PGNAME(DIMM),
261 if (FM_AWARE_SMBIOS(mod)) {
267 label = (char *)chip_label_smbios_get(mod,
273 if (FM_AWARE_SMBIOS(mod))
274 topo_mod_strfree(mod, label);
281 mc_add_ranks(mod, dnode, auth, dimm_number, ranks_nvp,
288 mc_add_channel(topo_mod_t *mod, uint16_t chip_smbid, tnode_t *pnode,
299 if (mkrsrc(mod, pnode, DRAMCHANNEL, channel, auth, &fmri) != 0) {
300 whinge(mod, NULL, "mc_add_channel: mkrsrc failed\n");
303 if ((mc_channel = topo_node_bind(mod, pnode, DRAMCHANNEL, channel,
305 whinge(mod, NULL, "mc_add_channel: node bind failed for %s\n",
314 if (FM_AWARE_SMBIOS(mod))
319 mc_add_dimms(mod, chip_smbid, mc_channel, auth, dimm_nvl,
326 (void) nvprop_add(mod, nvp, PGNAME(CHAN),
335 mc_nb_create(topo_mod_t *mod, uint16_t chip_smbid, tnode_t *pnode,
353 whinge(mod, NULL,
377 if (topo_node_range_create(mod, pnode, name, 0, nmc-1) < 0) {
378 whinge(mod, NULL,
384 if (mkrsrc(mod, pnode, name, i, auth, &fmri) != 0) {
385 whinge(mod, NULL, "mc_nb_create: mkrsrc failed\n");
388 if ((mcnode = topo_node_bind(mod, pnode, name, i,
390 whinge(mod, NULL, "mc_nb_create: node bind failed"
400 if (FM_AWARE_SMBIOS(mod))
403 if (topo_node_range_create(mod, mcnode, DRAMCHANNEL, channel,
405 whinge(mod, NULL,
410 if (mc_add_channel(mod, chip_smbid, mcnode, channel,
426 (void) nvprop_add(mod, nvp, PGNAME(MCT),
436 mc_node_create(topo_mod_t *mod, uint16_t chip_smbid, tnode_t *pnode,
446 (buf = topo_mod_alloc(mod, mcs.mcs_size)) == NULL ||
449 whinge(mod, NULL, "mc failed to snapshot %s\n",
458 topo_mod_free(mod, buf, mcs.mcs_size);
461 whinge(mod, NULL, "mc nvlist is not versioned\n");
465 whinge(mod, NULL, "mc nvlist version mismatch\n");
470 rc = mc_nb_create(mod, chip_smbid, pnode, name, auth, nvl);
477 onchip_mc_create(topo_mod_t *mod, uint16_t chip_smbid, tnode_t *pnode,
481 (void) mc_node_create(mod, chip_smbid, pnode, name, auth);
485 mc_offchip_create(topo_mod_t *mod, tnode_t *pnode, const char *name,
488 return (mc_node_create(mod, IGNORE_ID, pnode, name, auth));