parent = get_device(dev->parent);
setup_parent(dev, parent);
parent = get_device(dev->parent);
setup_parent(dev, parent);
/* first, register with generic layer. */
error = kobject_add(&dev->kobj, dev->kobj.parent, "%s", dev->bus_id);
if (error)
/* first, register with generic layer. */
error = kobject_add(&dev->kobj, dev->kobj.parent, "%s", dev->bus_id);
if (error)
if (!kobject_move(&dev->kobj, &old_parent->kobj)) {
if (new_parent)
klist_remove(&dev->knode_parent);
if (!kobject_move(&dev->kobj, &old_parent->kobj)) {
if (new_parent)
klist_remove(&dev->knode_parent);
klist_add_tail(&dev->knode_parent,
&old_parent->klist_children);
klist_add_tail(&dev->knode_parent,
&old_parent->klist_children);