- size_t strlen =
- __ksprintf_internal(dev->name_val, fmt, DEVICE_NAME_SIZE, args);
+ va_list args;
+ morph_t* morphed, *parent;
+
+ morphed = &devm->mobj;
+ va_start(args, fmt);
+
+ if (fmt) {
+ device_setname_vargs(devm, fmt, args);
+ }
+
+ if (class && morph_type_of(morphed, device_morpher))
+ {
+ struct device* dev = to_dev(devm);
+ dev->ident = (struct devident) {
+ .fn_grp = class->fn_grp,
+ .unique = DEV_UNIQUE(class->device, class->variant)
+ };
+ }