Lines Matching defs:deva
76 static struct deva errdeva;
89 static void selectbase(struct devbase *, struct deva *);
653 defdevattach(struct deva *deva, struct devbase *dev, struct nvlist *atlist,
662 if (deva == NULL)
663 deva = getdevattach(dev->d_name);
664 if (deva == &errdeva)
670 if (deva->d_isdef) {
672 deva->d_name, deva->d_where.w_srcfile, deva->d_where.w_srcline);
680 deva->d_isdef = 1;
692 deva->d_attrs = attrs;
693 deva->d_atlist = atlist;
694 deva->d_devbase = dev;
695 CFGDBG(3, "deva `%s' defined", deva->d_name);
700 refattr(deva->d_name);
722 for (struct deva *da = dev->d_ahead; da; da = da->d_bsame)
740 *dev->d_app = deva;
741 dev->d_app = &deva->d_bsame;
752 struct deva *
756 struct deva *deva;
770 deva = ht_lookup(devatab, name);
771 if (deva == NULL) {
772 deva = ecalloc(1, sizeof *deva);
773 deva->d_name = name;
774 deva->d_bsame = NULL;
775 deva->d_isdef = 0;
776 deva->d_devbase = NULL;
777 deva->d_atlist = NULL;
778 deva->d_attrs = NULL;
779 deva->d_ihead = NULL;
780 deva->d_ipp = &deva->d_ihead;
781 deva->d_where.w_srcfile = yyfile;
782 deva->d_where.w_srcline = currentline();
783 TAILQ_INSERT_TAIL(&alldevas, deva, d_next);
784 if (ht_insert(devatab, name, deva))
787 return (deva);
1276 struct deva *iba; /* devbase attachment used */
1277 struct deva *lastiba;
1422 struct deva *iba;
1502 panic("%s: deva (%s) doesn't list the devi (%s)", __func__,
1575 CFGDBG(5, "deselecting deva `%s'", at);
1709 struct deva *iba;
2173 selectbase(struct devbase *d, struct deva *da)