}
 EXPORT_SYMBOL_GPL(driver_remove_file);
 
-/**
- * driver_add_kobj - add a kobject below the specified driver
- * @drv: requesting device driver
- * @kobj: kobject to add below this driver
- * @fmt: format string that names the kobject
- *
- * You really don't want to do this, this is only here due to one looney
- * iseries driver, go poke those developers if you are annoyed about
- * this...
- */
-int driver_add_kobj(struct device_driver *drv, struct kobject *kobj,
-                   const char *fmt, ...)
-{
-       va_list args;
-       char *name;
-       int ret;
-
-       va_start(args, fmt);
-       name = kvasprintf(GFP_KERNEL, fmt, args);
-       va_end(args);
-
-       if (!name)
-               return -ENOMEM;
-
-       ret = kobject_add(kobj, &drv->p->kobj, "%s", name);
-       kfree(name);
-       return ret;
-}
-EXPORT_SYMBOL_GPL(driver_add_kobj);
-
 /**
  * get_driver - increment driver reference count.
  * @drv: driver.
 
 extern void driver_remove_file(struct device_driver *driver,
                               const struct driver_attribute *attr);
 
-extern int __must_check driver_add_kobj(struct device_driver *drv,
-                                       struct kobject *kobj,
-                                       const char *fmt, ...);
-
 extern int __must_check driver_for_each_device(struct device_driver *drv,
                                               struct device *start,
                                               void *data,