cancel_rearming_delayed_work(&rm->cpu[1].sniffer);
 }
 
-static int rackmeter_setup(struct rackmeter *rm)
+static int __devinit rackmeter_setup(struct rackmeter *rm)
 {
        pr_debug("rackmeter: setting up i2s..\n");
        rackmeter_setup_i2s(rm);
        { }
 };
 
-static struct macio_driver rackmeter_drv = {
+static struct macio_driver rackmeter_driver = {
        .name = "rackmeter",
        .owner = THIS_MODULE,
        .match_table = rackmeter_match,
        .probe = rackmeter_probe,
-       .remove = rackmeter_remove,
+       .remove = __devexit_p(rackmeter_remove),
        .shutdown = rackmeter_shutdown,
 };
 
 {
        pr_debug("rackmeter_init()\n");
 
-       return macio_register_driver(&rackmeter_drv);
+       return macio_register_driver(&rackmeter_driver);
 }
 
 static void __exit rackmeter_exit(void)
 {
        pr_debug("rackmeter_exit()\n");
 
-       macio_unregister_driver(&rackmeter_drv);
+       macio_unregister_driver(&rackmeter_driver);
 }
 
 module_init(rackmeter_init);