.set_mode       = pata_gayle_set_mode,
 };
 
-static int __init pata_gayle_init_one(struct platform_device *pdev)
+static int pata_gayle_init_one(struct platform_device *pdev)
 {
        struct resource *res;
        struct gayle_ide_platform_data *pdata;
        return 0;
 }
 
-static int __exit pata_gayle_remove_one(struct platform_device *pdev)
+static int pata_gayle_remove_one(struct platform_device *pdev)
 {
        struct ata_host *host = platform_get_drvdata(pdev);
 
 }
 
 static struct platform_driver pata_gayle_driver = {
-       .remove = __exit_p(pata_gayle_remove_one),
+       .probe = pata_gayle_init_one,
+       .remove = pata_gayle_remove_one,
        .driver   = {
                .name   = "amiga-gayle-ide",
        },
 };
 
-module_platform_driver_probe(pata_gayle_driver, pata_gayle_init_one);
+module_platform_driver(pata_gayle_driver);
 
 MODULE_AUTHOR("Bartlomiej Zolnierkiewicz");
 MODULE_DESCRIPTION("low-level driver for Amiga Gayle PATA");