Index: linux-2.6.16/drivers/char/ts0710_mux_usb.c =================================================================== --- linux-2.6.16.orig/drivers/char/ts0710_mux_usb.c 2007-01-17 00:10:32.000000000 +0100 +++ linux-2.6.16/drivers/char/ts0710_mux_usb.c 2007-01-17 00:42:23.000000000 +0100 @@ -811,7 +811,6 @@ /*init the related mux interface*/ if (!(bvd_ipc = kzalloc(sizeof(struct ipc_usb_data), GFP_KERNEL))) { err("usb_ipc_init: Out of memory."); - usb_deregister(&usb_ipc_driver); return -ENOMEM; } bvd_dbg("usb_ipc_init: Address of bvd_ipc:%p", bvd_ipc); @@ -819,7 +818,6 @@ if (!(bvd_ipc->xmit.buf = kmalloc(IPC_USB_XMIT_SIZE, GFP_KERNEL))) { err("usb_ipc_init: Not enough memory for the input buffer."); kfree(bvd_ipc); - usb_deregister(&usb_ipc_driver); return -ENOMEM; } bvd_dbg("usb_ipc_init: bvd_ipc->xmit.buf address:%p",