Even if bus is not hot-pluggable, the devices can be unbound from the
driver via sysfs, so we should not be using __exit annotations on
remove() methods. The only exception is drivers registered with
platform_driver_probe() which specifically disables sysfs bind/unbind
attributes.
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: "Maciej W. Rozycki" <macro@linux-mips.org>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
        return err;
 }
 
-static int __exit pmagbafb_remove(struct device *dev)
+static int pmagbafb_remove(struct device *dev)
 {
        struct tc_dev *tdev = to_tc_dev(dev);
        struct fb_info *info = dev_get_drvdata(dev);
                .name   = "pmagbafb",
                .bus    = &tc_bus_type,
                .probe  = pmagbafb_probe,
-               .remove = __exit_p(pmagbafb_remove),
+               .remove = pmagbafb_remove,
        },
 };