Lines Matching defs:dgrp

445 	struct dgrp_info *dgrp = NULL;
629 if ((dgrp = mc_node_get(mcdevgrp.id, dgrp_head)) == NULL) {
636 mcdevgrp.ndevices = dgrp->ndevices;
637 mcdevgrp.size = dgrp->size;
943 get_row_shift(int row_index, struct dgrp_info *dgrp)
947 switch (dgrp->base_device) {
960 if (dgrp->part_type == PART_TYPE_X4)
970 get_device_select(int interleave, struct dgrp_info *dgrp,
980 if (dgrp->nlogbanks == 2) {
988 if (dgrp->nlogbanks == 2) {
990 *bs_shift = get_row_shift(2, dgrp);
994 if (dgrp->nlogbanks == 2) {
996 *ds_shift = get_row_shift(3, dgrp);
999 *bs_shift = get_row_shift(2, dgrp);
1002 *ds_shift = get_row_shift(2, dgrp);
1018 struct dgrp_info *dgrp;
1021 if ((dgrp = mc_node_get(mctrl->devgrpids[0], dgrp_head)) == NULL) {
1025 get_device_select(interleave, dgrp, &ds_shift, &bs_shift);
1032 if (dgrp->nlogbanks == NLOGBANKS_PER_DGRP) {
1049 size = (dgrp->size * 2)/nbanks;
1081 struct dgrp_info *dgrp;
1086 if ((dgrp = mc_node_get(dgrpid, dgrp_head)) == NULL) {
1090 get_device_select(interleave, dgrp, &ds_shift, &bs_shift);
1096 size = dgrp->size/dgrp->nlogbanks;
1107 if (dgrp->nlogbanks == 2) {
1177 /* dgrp end address */
1220 struct dgrp_info *dgrp;
1227 if ((dgrp = mc_node_get(dgrpid, dgrp_head)) != NULL) {
1233 dgrp = kmem_zalloc(sizeof (*dgrp), KM_SLEEP);
1235 dgrp->dgrp_node.id = dgrpid;
1241 dgrp->nlogbanks = 2;
1243 dgrp->nlogbanks = 1;
1244 dgrp->base_device = (softsp->mcreg1 & MCREG1_ADDRGEN1_MASK) >>
1246 dgrp->part_type = (softsp->mcreg1 & MCREG1_X4DIMM1_MASK) >>
1251 dgrp->nlogbanks = 2;
1253 dgrp->nlogbanks = 1;
1254 dgrp->base_device = (softsp->mcreg1 & MCREG1_ADDRGEN2_MASK) >>
1256 dgrp->part_type = (softsp->mcreg1 & MCREG1_X4DIMM2_MASK) >>
1260 dgrp->base = MC_BASE(mcid) + DGRP_BASE(dgrpid);
1261 dgrp->size = get_devgrp_size(dgrp->base);
1264 " base_device %d part_type %d\n", dgrpid, dgrp->size,
1265 dgrp->nlogbanks, dgrp->base_device, dgrp->part_type));
1268 dgrp->ndevices = NDIMMS_PER_DGRP;
1272 dgrp->deviceids[i] = devid;
1284 dev->size = dgrp->size/2;
1298 mc_node_add((mc_dlist_t *)dgrp, &dgrp_head, &dgrp_tail);
1371 struct dgrp_info *dgrp;
1389 if (!(dgrp = mc_node_get(dgrpid, dgrp_head))) {
1404 mc_node_del((mc_dlist_t *)dgrp, &dgrp_head, &dgrp_tail);
1405 kmem_free(dgrp, sizeof (*dgrp));
1596 "dgrp %d\n", mcid, bank->bank_node.id, bank->devgrp_id));