staging: greybus: vibrator: remove KERNEL_VERSION checks
authorGreg Kroah-Hartman <gregkh@google.com>
Thu, 8 Sep 2016 13:47:30 +0000 (15:47 +0200)
committerGreg Kroah-Hartman <gregkh@google.com>
Mon, 19 Sep 2016 14:30:41 +0000 (16:30 +0200)
No need to support older kernel versions in the Greybus Vibrator driver,
so remove the checks as needed, we can now rely on all of the correct
driver core apis being present.

Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/vibrator.c

index 7296a4dd0a0cbb10f07f560dece70f1f118275ae..4ba0e168930f01981abf89b9aa0fe2efd7fdd22c 100644 (file)
@@ -108,9 +108,7 @@ ATTRIBUTE_GROUPS(vibrator);
 static struct class vibrator_class = {
        .name           = "vibrator",
        .owner          = THIS_MODULE,
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)
        .dev_groups     = vibrator_groups,
-#endif
 };
 
 static DEFINE_IDA(minors);
@@ -169,19 +167,6 @@ static int gb_vibrator_probe(struct gb_bundle *bundle,
        }
        vib->dev = dev;
 
-#if LINUX_VERSION_CODE <= KERNEL_VERSION(3,11,0)
-       /*
-        * Newer kernels handle this in a race-free manner, by the dev_groups
-        * field in the struct class up above.  But for older kernels, we need
-        * to "open code this :(
-        */
-       retval = sysfs_create_group(&dev->kobj, vibrator_groups[0]);
-       if (retval) {
-               device_unregister(dev);
-               goto err_ida_remove;
-       }
-#endif
-
        INIT_DELAYED_WORK(&vib->delayed_work, gb_vibrator_worker);
 
        gb_pm_runtime_put_autosuspend(bundle);
@@ -212,9 +197,6 @@ static void gb_vibrator_disconnect(struct gb_bundle *bundle)
        if (cancel_delayed_work_sync(&vib->delayed_work))
                turn_off(vib);
 
-#if LINUX_VERSION_CODE <= KERNEL_VERSION(3,11,0)
-       sysfs_remove_group(&vib->dev->kobj, vibrator_groups[0]);
-#endif
        device_unregister(vib->dev);
        ida_simple_remove(&minors, vib->minor);
        gb_connection_disable(vib->connection);