Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

crypto: caam - i.MX8ULP donot have CAAM page0 access

iMX8ULP have a secure-enclave hardware IP called EdgeLock Enclave(ELE),
that control access to caam controller's register page, i.e., page0.

At all, if the ELE release access to CAAM controller's register page,
it will release to secure-world only.

Clocks are turned on automatically for iMX8ULP. There exists the caam
clock gating bit, but it is not advised to gate the clock at linux, as
optee-os or any other entity might be using it.

Signed-off-by: Pankaj Gupta <pankaj.gupta@nxp.com>
Reviewed-by: Gaurav Jain <gaurav.jain@nxp.com>
Reviewed-by: Horia Geanta <horia.geanta@nxp.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Pankaj Gupta and committed by
Herbert Xu
d2835701 61444368

+3
+3
drivers/crypto/caam/ctrl.c
··· 563 563 .num_clks = ARRAY_SIZE(caam_vf610_clks), 564 564 }; 565 565 566 + static const struct caam_imx_data caam_imx8ulp_data; 567 + 566 568 static const struct soc_device_attribute caam_imx_soc_table[] = { 567 569 { .soc_id = "i.MX6UL", .data = &caam_imx6ul_data }, 568 570 { .soc_id = "i.MX6*", .data = &caam_imx6_data }, 569 571 { .soc_id = "i.MX7*", .data = &caam_imx7_data }, 570 572 { .soc_id = "i.MX8M*", .data = &caam_imx7_data }, 573 + { .soc_id = "i.MX8ULP", .data = &caam_imx8ulp_data }, 571 574 { .soc_id = "VF*", .data = &caam_vf610_data }, 572 575 { .family = "Freescale i.MX" }, 573 576 { /* sentinel */ }