return rc;
 }
 
-static int aspeed_acry_remove(struct platform_device *pdev)
+static void aspeed_acry_remove(struct platform_device *pdev)
 {
        struct aspeed_acry_dev *acry_dev = platform_get_drvdata(pdev);
 
        crypto_engine_exit(acry_dev->crypt_engine_rsa);
        tasklet_kill(&acry_dev->done_task);
        clk_disable_unprepare(acry_dev->clk);
-
-       return 0;
 }
 
 MODULE_DEVICE_TABLE(of, aspeed_acry_of_matches);
 
 static struct platform_driver aspeed_acry_driver = {
        .probe          = aspeed_acry_probe,
-       .remove         = aspeed_acry_remove,
+       .remove_new     = aspeed_acry_remove,
        .driver         = {
                .name   = KBUILD_MODNAME,
                .of_match_table = aspeed_acry_of_matches,