Lines Matching defs:softsp
144 static int mc_get_memory_reg_info(struct mc_soft_state *softsp);
145 static void mc_construct(struct mc_soft_state *softsp);
214 struct mc_soft_state *softsp;
235 softsp = ddi_get_soft_state(mcp, instance);
238 softsp->dip = devi;
240 if ((softsp->portid = (int)ddi_getprop(DDI_DEV_T_ANY, softsp->dip,
248 instance, softsp->portid, CPU->cpu_id));
252 if ((ddi_getlongprop_buf(DDI_DEV_T_ANY, softsp->dip, DDI_PROP_DONTPASS,
253 "memory-control-register-1", (caddr_t)&(softsp->mcreg1),
256 softsp->mcr_read_ok = 1;
258 instance, softsp->mcreg1));
262 if (!softsp->mcr_read_ok) {
277 err = ddi_getlongprop(DDI_DEV_T_ANY, softsp->dip, DDI_PROP_DONTPASS,
281 softsp->memlayoutp = dimminfop;
282 softsp->memlayoutlen = len;
289 softsp->memlayoutp = NULL;
290 softsp->memlayoutlen = 0;
300 if (mc_get_memory_reg_info(softsp) != 0) {
307 mc_construct(softsp);
329 mc_delete(softsp->portid);
331 if (softsp->memlayoutp != NULL)
332 kmem_free(softsp->memlayoutp, softsp->memlayoutlen);
345 struct mc_soft_state *softsp;
351 softsp = ddi_get_soft_state(mcp, instance);
365 softsp->portid));
370 mc_delete(softsp->portid);
372 if (softsp->memlayoutp != NULL)
373 kmem_free(softsp->memlayoutp, softsp->memlayoutlen);
793 mc_get_memory_reg_info(struct mc_soft_state *softsp)
800 _NOTE(ARGUNUSED(softsp))
1130 mc_logical_layout(struct mctrl_info *mctrl, struct mc_soft_state *softsp)
1142 interleave = (softsp->mcreg1 & MCREG1_INTERLEAVE_MASK) >>
1147 (softsp->mcreg1 & MCREG1_XOR_ENABLE)) {
1217 mc_add_devgrp(int dgrpid, struct mc_soft_state *softsp)
1222 struct dimm_info *dimmp = (struct dimm_info *)softsp->memlayoutp;
1224 mcid = softsp->portid;
1240 if (softsp->mcreg1 & MCREG1_DIMM1_BANK1)
1244 dgrp->base_device = (softsp->mcreg1 & MCREG1_ADDRGEN1_MASK) >>
1246 dgrp->part_type = (softsp->mcreg1 & MCREG1_X4DIMM1_MASK) >>
1250 if (softsp->mcreg1 & MCREG1_DIMM2_BANK3)
1254 dgrp->base_device = (softsp->mcreg1 & MCREG1_ADDRGEN2_MASK) >>
1256 dgrp->part_type = (softsp->mcreg1 & MCREG1_X4DIMM2_MASK) >>
1305 mc_construct(struct mc_soft_state *softsp)
1310 mcid = softsp->portid;
1313 mcid, softsp->mcreg1));
1334 if (softsp->mcreg1 & MCREG1_DIMM1_BANK0) {
1335 mc_add_devgrp(dgrpid, softsp);
1341 if (softsp->mcreg1 & MCREG1_DIMM2_BANK2) {
1343 mc_add_devgrp(dgrpid, softsp);
1348 mc_logical_layout(mctrl, softsp);
1350 mctrl->dimminfop = (struct dimm_info *)softsp->memlayoutp;