# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
#	           ChangeSet	1.609   -> 1.610  
#	 include/linux/usb.h	1.37    -> 1.38   
#	drivers/usb/core/usb.c	1.58    -> 1.59   
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/05/30	mochel@osdl.org	1.610
# USB: define usb_bus_type and register on startup 
# --------------------------------------------
#
diff -Nru a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c
--- a/drivers/usb/core/usb.c	Fri May 31 00:41:12 2002
+++ b/drivers/usb/core/usb.c	Fri May 31 00:41:12 2002
@@ -2757,12 +2757,16 @@
 }
 #endif
 
+struct bus_type usb_bus_type = {
+	name:	"usb",
+};
 
 /*
  * Init
  */
 static int __init usb_init(void)
 {
+	bus_register(&usb_bus_type);
 	usb_major_init();
 	usbfs_init();
 	usb_hub_init();
@@ -2775,6 +2779,7 @@
  */
 static void __exit usb_exit(void)
 {
+	put_bus(&usb_bus_type);
 	usb_major_cleanup();
 	usbfs_cleanup();
 	usb_hub_cleanup();
diff -Nru a/include/linux/usb.h b/include/linux/usb.h
--- a/include/linux/usb.h	Fri May 31 00:41:12 2002
+++ b/include/linux/usb.h	Fri May 31 00:41:12 2002
@@ -713,6 +713,8 @@
 	/* void (*resume)(struct usb_device *dev); */
 };
 
+extern struct bus_type usb_bus_type;
+
 /*
  * use these in module_init()/module_exit()
  * and don't forget MODULE_DEVICE_TABLE(usb, ...)
