+ struct devclass* devc = &devdef->class;
+ u32_t hash = hash_dev(devc->fn_grp, devc->device);
+ devdef->class_hash = hash;
+
+ if (!devdef->name) {
+ devdef->name = "<unspecified>";
+ }
+
+ errno = 0;
+ if (devdef->ad_tabulam) {
+ errno = devdef->ad_tabulam(devdef);
+ }
+
+ if (errno) {
+ ERROR("driver unable to register %xh:%xh.%d (err=%d)",
+ devdef->class.fn_grp,
+ devdef->class.device,
+ devdef->class.variant, errno);
+ continue;
+ }