Lines Matching defs:dinfo
137 iobus_add_intr(phandle_t devnode, struct iobus_devinfo *dinfo)
142 resource_list_add(&dinfo->id_resources,
145 dinfo->id_interrupt = intr;
150 iobus_add_reg(phandle_t devnode, struct iobus_devinfo *dinfo,
156 size = OF_getprop(devnode, "reg", dinfo->id_reg,sizeof(dinfo->id_reg));
159 dinfo->id_nregs = size / (sizeof(dinfo->id_reg[0]));
161 for (i = 0; i < dinfo->id_nregs; i+= 3) {
167 dinfo->id_reg[i+1] -= iobus_off;
169 resource_list_add(&dinfo->id_resources,
171 dinfo->id_reg[i+1],
172 dinfo->id_reg[i+1] +
173 dinfo->id_reg[i+2],
174 dinfo->id_reg[i+2]);
184 struct iobus_devinfo *dinfo;
226 dinfo = malloc(sizeof(*dinfo), M_IOBUS, M_WAITOK);
227 memset(dinfo, 0, sizeof(*dinfo));
228 resource_list_init(&dinfo->id_resources);
229 dinfo->id_node = child;
230 dinfo->id_name = name;
231 iobus_add_intr(child, dinfo);
232 iobus_add_reg(child, dinfo, sc->sc_addr);
233 device_set_ivars(cdev, dinfo);
246 struct iobus_devinfo *dinfo;
250 dinfo = device_get_ivars(child);
251 rl = &dinfo->id_resources;
255 retval += printf(" offset 0x%x", dinfo->id_reg[1]);
273 struct iobus_devinfo *dinfo;
275 if ((dinfo = device_get_ivars(child)) == 0)
280 *result = dinfo->id_node;
283 *result = (uintptr_t)dinfo->id_name;
286 *result = dinfo->id_nregs;
289 *result = (uintptr_t)dinfo->id_reg;