--- a/drivers/usb/gadget/function/f_fs.c
+++ b/drivers/usb/gadget/function/f_fs.c
@@ -4295,7 +4295,7 @@
 	return data;
 }
 
-DECLARE_USB_FUNCTION_INIT(ffs, ffs_alloc_inst, ffs_alloc);
+DECLARE_USB_FUNCTION(ffs, ffs_alloc_inst, ffs_alloc);
 
 static int ffs_init(void)
 {
@@ -4303,7 +4303,7 @@
 	if (IS_ERR_OR_NULL(ffs_ipc_log))
 		ffs_ipc_log =  NULL;
 
-	return 0;
+	usb_function_register(&ffsusb_func);
 }
 module_init(ffs_init);
 
@@ -4327,6 +4327,8 @@
 		ipc_log_context_destroy(ffs_ipc_log);
 		ffs_ipc_log = NULL;
 	}
+
+	usb_function_unregister(&ffsusb_func);
 }
 module_exit(ffs_exit);
 
--- a/drivers/usb/gadget/function/f_qc_rndis.c
+++ b/drivers/usb/gadget/function/f_qc_rndis.c
@@ -1528,7 +1528,7 @@
 	return rndis_ipa_params.skip_ep_cfg;
 }
 
-DECLARE_USB_FUNCTION_INIT(rndis_bam, qcrndis_alloc_inst, qcrndis_alloc);
+DECLARE_USB_FUNCTION(rndis_bam, qcrndis_alloc_inst, qcrndis_alloc);
 
 static int __init usb_qcrndis_init(void)
 {
