@@ -1226,19 +1226,14 @@ int lg4ff_init(struct hid_device *hid)
/* Create sysfs interface */
error = device_create_file(&hid->dev, &dev_attr_range);
if (error)
- goto err_init;
+ hid_warn(hid, "Unable to create sysfs interface for \"range\", errno %d\n", error);
if (mmode_ret == LG4FF_MMODE_IS_MULTIMODE) {
error = device_create_file(&hid->dev, &dev_attr_real_id);
- if (error) {
- device_remove_file(&hid->dev, &dev_attr_range);
- goto err_init;
- }
+ if (error)
+ hid_warn(hid, "Unable to create sysfs interface for \"real_id\", errno %d\n", error);
error = device_create_file(&hid->dev, &dev_attr_alternate_modes);
- if (error) {
- device_remove_file(&hid->dev, &dev_attr_real_id);
- device_remove_file(&hid->dev, &dev_attr_range);
- goto err_init;
- }
+ if (error)
+ hid_warn(hid, "Unable to create sysfs interface for \"alternate_modes\", errno %d\n", error);
}
dbg_hid("sysfs interface created\n");
Instead of aborting the initialization allow the driver to continue in a degraded mode. Signed-off-by: Michal Malý <madcatxster@devoid-pointer.net> --- drivers/hid/hid-lg4ff.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-)