#include "sep_dev.h"
 #include "sep_crypto.h"
 
+#if defined(CONFIG_CRYPTO) || defined(CONFIG_CRYPTO_MODULE)
+
 /* Globals for queuing */
 static spinlock_t queue_lock;
 static struct crypto_queue sep_queue;
 
        tasklet_kill(&sep_dev->finish_tasklet);
 }
+
+#endif
 
        sep->power_save_setup = 1;
 #endif
        /* register kernel crypto driver */
-#if defined(CONFIG_CRYPTO)
+#if defined(CONFIG_CRYPTO) || defined(CONFIG_CRYPTO_MODULE)
        error = sep_crypto_setup();
        if (error) {
                dev_err(&sep->pdev->dev, "crypto setup failed\n");
        misc_deregister(&sep->miscdev_sep);
 
        /* Unregister from kernel crypto */
+#if defined(CONFIG_CRYPTO) || defined(CONFIG_CRYPTO_MODULE)
        sep_crypto_takedown();
-
+#endif
        /* Free the irq */
        free_irq(sep->pdev->irq, sep);