aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hid/hid-input.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/hid/hid-input.c')
-rw-r--r--drivers/hid/hid-input.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/hid/hid-input.c b/drivers/hid/hid-input.c
index 6559e2e3364..1483c8296d5 100644
--- a/drivers/hid/hid-input.c
+++ b/drivers/hid/hid-input.c
@@ -971,6 +971,9 @@ int hidinput_connect(struct hid_device *hid, unsigned int force)
971 * UGCI) cram a lot of unrelated inputs into the 971 * UGCI) cram a lot of unrelated inputs into the
972 * same interface. */ 972 * same interface. */
973 hidinput->report = report; 973 hidinput->report = report;
974 if (hid->driver->input_register &&
975 hid->driver->input_register(hid, hidinput))
976 goto out_cleanup;
974 if (input_register_device(hidinput->input)) 977 if (input_register_device(hidinput->input))
975 goto out_cleanup; 978 goto out_cleanup;
976 hidinput = NULL; 979 hidinput = NULL;
@@ -978,6 +981,10 @@ int hidinput_connect(struct hid_device *hid, unsigned int force)
978 } 981 }
979 } 982 }
980 983
984 if (hidinput && hid->driver->input_register &&
985 hid->driver->input_register(hid, hidinput))
986 goto out_cleanup;
987
981 if (hidinput && input_register_device(hidinput->input)) 988 if (hidinput && input_register_device(hidinput->input))
982 goto out_cleanup; 989 goto out_cleanup;
983 990