struct dentry *root;
 
        root = debugfs_create_dir(udc->gadget.name, usb_debug_root);
-       udc->debugfs_root = root;
-
        debugfs_create_file("udcstate", 0400, root, udc, &state_dbg_fops);
        debugfs_create_file("queues", 0400, root, udc, &queues_dbg_fops);
        debugfs_create_file("epstate", 0400, root, udc, &eps_dbg_fops);
 
 static void pxa_cleanup_debugfs(struct pxa_udc *udc)
 {
-       debugfs_remove_recursive(udc->debugfs_root);
+       debugfs_remove(debugfs_lookup(udc->gadget.name, usb_debug_root));
 }
 
 #else
 
  * @last_interface: UDC interface of the last SET_INTERFACE host request
  * @last_alternate: UDC altsetting of the last SET_INTERFACE host request
  * @udccsr0: save of udccsr0 in case of suspend
- * @debugfs_root: root entry of debug filesystem
  * @debugfs_state: debugfs entry for "udcstate"
  * @debugfs_queues: debugfs entry for "queues"
  * @debugfs_eps: debugfs entry for "epstate"
 #ifdef CONFIG_PM
        unsigned                                udccsr0;
 #endif
-#ifdef CONFIG_USB_GADGET_DEBUG_FS
-       struct dentry                           *debugfs_root;
-#endif
 };
 #define to_pxa(g)      (container_of((g), struct pxa_udc, gadget))