if (cf->cf_fstate == FSTATE_DNOTFOUND |
if (cf->cf_fstate == FSTATE_DNOTFOUND ||
config_scan(fn, parent)	cfscan_t fn;	register struct device *parent;{	register struct cfdata *cf;	register short *p;	void *match;	int indirect;	struct cftable *t;	indirect = parent && parent->dv_cfdata->cf_driver->cd_indirect;	for (t = allcftables.tqh_first; t; t = t->list.tqe_next) {	  for (cf = t->tab; cf->cf_driver; cf++) {	    /*	     * Skip cf if no longer eligible, otherwise scan through	     * parents for one matching `parent', and try match function.	     */	    if (cf->cf_fstate == FSTATE_FOUND)	      continue;	    if (cf->cf_fstate == FSTATE_DNOTFOUND |		cf->cf_fstate == FSTATE_DSTAR)	      continue;	    for (p = cf->cf_parents; *p >= 0; p++)	      if (parent->dv_cfdata == &(t->tab)[*p]) {		if (indirect)		  match = config_make_softc(parent, cf);		else		  match = cf;		(*fn)(parent, match);	      }	  }	}}