topregs = (struct caam_full __iomem *)ctrlpriv->ctrl;
#ifndef CONFIG_OF
+#ifdef CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO
+ caam_secvio_shutdown(pdev);
+#endif /* SECVIO */
+
#ifdef CONFIG_CRYPTO_DEV_FSL_CAAM_SM
caam_sm_shutdown(pdev);
#endif
ctrlpriv->sm_base = (void __force *)sm_base;
ctrlpriv->sm_size = res->end - res->start + 1;
- /* Get the IRQ for security violations only */
+ /*
+ * Get the IRQ for security violations
+ */
#ifdef CONFIG_OF
ctrlpriv->secvio_irq = of_irq_to_resource(nprop, 0, NULL);
#else
#endif /* SM_TEST */
#endif /* SM */
+#ifdef CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO
+ caam_secvio_startup(pdev);
+#endif /* SECVIO */
+
#endif /* CONFIG_OF */
return status;
}
#ifdef CONFIG_CRYPTO_DEV_FSL_CAAM_SM
struct device *smdev; /* Secure Memory dev */
#endif
+
+#ifdef CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO
+ struct device *secviodev;
+#endif
+
/*
* debugfs entries for developer view into driver/device
* variables at runtime.
int caam_sm_example_init(struct platform_device *pdev);
#endif
+#ifdef CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO
+int caam_secvio_startup(struct platform_device *pdev);
+void caam_secvio_shutdown(struct platform_device *pdev);
+#endif /* SECVIO */
+
#endif /* CONFIG_OF */
#endif /* INTERN_H */
#define HP_SECVIO_INTEN_SRC2 0x00000004
#define HP_SECVIO_INTEN_SRC1 0x00000002
#define HP_SECVIO_INTEN_SRC0 0x00000001
+#define HP_SECVIO_INTEN_ALL 0x8000003f
#define HP_SECVIO_ICTL_CFG_SHIFT 30
#define HP_SECVIO_ICTL_CFG_MASK (0x3 << HP_SECVIO_ICTL_CFG_SHIFT)
#define HP_SECVIOST_ZMK_ECC_FAIL 0x08000000 /* write to clear */
#define HP_SECVIOST_ZMK_SYN_SHIFT 16
#define HP_SECVIOST_ZMK_SYN_MASK (0x1ff << HP_SECVIOST_ZMK_SYN_SHIFT)
-#define HP_SECVIOST_ZMK_SECVIO5 0x00000020
-#define HP_SECVIOST_ZMK_SECVIO4 0x00000010
-#define HP_SECVIOST_ZMK_SECVIO3 0x00000008
-#define HP_SECVIOST_ZMK_SECVIO2 0x00000004
-#define HP_SECVIOST_ZMK_SECVIO1 0x00000002
-#define HP_SECVIOST_ZMK_SECVIO0 0x00000001
+#define HP_SECVIOST_SECVIO5 0x00000020
+#define HP_SECVIOST_SECVIO4 0x00000010
+#define HP_SECVIOST_SECVIO3 0x00000008
+#define HP_SECVIOST_SECVIO2 0x00000004
+#define HP_SECVIOST_SECVIO1 0x00000002
+#define HP_SECVIOST_SECVIO0 0x00000001
+#define HP_SECVIOST_SECVIOMASK 0x0000003f
/*
* SNVS Low Power Domain