Lines Matching refs:d
156 insert_device(pcidb_vendor_t *v, pcidb_device_t *d)
158 d->pd_vend = v;
160 v->pv_dstart = d;
161 v->pv_dend = d;
162 d->pd_next = NULL;
163 d->pd_prev = NULL;
165 d->pd_prev = v->pv_dend;
166 d->pd_next = NULL;
167 v->pv_dend->pd_next = d;
168 v->pv_dend = d;
175 pcidb_device_t *d;
178 d = malloc(sizeof (pcidb_device_t));
179 if (d == NULL)
180 return (d);
182 d->pd_sstart = NULL;
183 d->pd_send = NULL;
184 insert_device(v, d);
188 d->pd_id = strtol(buf, NULL, 16);
194 (void) strlcpy(d->pd_name, buf, PCI_NAME_MAX);
195 return (d);
199 insert_subdev(pcidb_device_t *d, pcidb_subvd_t *s)
201 s->ps_dev = d;
202 s->ps_vend = d->pd_vend;
203 if (d->pd_sstart == NULL) {
204 d->pd_sstart = s;
205 d->pd_send = s;
209 s->ps_prev = d->pd_send;
211 d->pd_send->ps_next = s;
212 d->pd_send = s;
217 parse_subdev(char *buf, pcidb_device_t *d)
225 insert_subdev(d, s);
264 pcidb_device_t *d = NULL;
296 d = parse_device(buf, v);
297 if (d == NULL)
312 assert(d != NULL);
313 (void) parse_subdev(buf, d);
356 pcidb_device_t *d, *td;
364 d = v->pv_dstart;
365 while (d != NULL) {
366 s = d->pd_sstart;
372 td = d;
373 d = d->pd_next;
425 pcidb_device_t *d;
428 for (d = v->pv_dstart; d != NULL; d = d->pd_next)
429 if (d->pd_id == id)
430 return (d);
454 pcidb_device_iter_next(pcidb_device_t *d)
456 return (d->pd_next);
460 pcidb_device_name(pcidb_device_t *d)
462 return (d->pd_name);
466 pcidb_device_id(pcidb_device_t *d)
468 return (d->pd_id);
472 pcidb_device_vendor(pcidb_device_t *d)
474 return (d->pd_vend);
478 pcidb_lookup_subvd_by_device(pcidb_device_t *d, uint16_t svid, uint16_t sdid)
482 assert(d != NULL);
484 for (s = d->pd_sstart; s != NULL; s = s->ps_next)
495 pcidb_device_t *d;
498 d = pcidb_lookup_device_by_vendor(v, devid);
499 if (d == NULL)
502 return (pcidb_lookup_subvd_by_device(d, svid, sdid));
509 pcidb_device_t *d;
512 d = pcidb_lookup_device(h, vid, did);
513 if (d == NULL)
516 return (pcidb_lookup_subvd_by_device(d, svid, sdid));
520 pcidb_subvd_iter(pcidb_device_t *d)
522 return (d->pd_sstart);