/* This function will be called when the adapter is removed from the USB bus.  */
static void disconnect_st5481(struct usb_interface *intf)
/* This function will be called when the adapter is removed from the USB bus.  */
static void disconnect_st5481(struct usb_interface *intf)
{
	struct st5481_adapter *adapter = usb_get_intfdata(intf);
	DBG(1,"");
	usb_set_intfdata(intf, NULL);
	if (!adapter)
		return;
	list_del(&adapter->list);
	st5481_stop(adapter);
	st5481_release_b(&adapter->bcs[1]);
	st5481_release_b(&adapter->bcs[0]);
	st5481_release_d(adapter);
	mdelay(2);
	st5481_release_usb(adapter);
	hisax_unregister(&adapter->hisax_d_if);
	kfree(adapter);
}