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

nvmem: imx-ocotp-ele: Add i.MX94 OCOTP support

Add OCOTP device type for i.MX94, including register offset, total size,
and fuse layout. This enables NVMEM access to the eFuse of i.MX94.

Signed-off-by: Alice Guo <alice.guo@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
Link: https://patch.msgid.link/20251114110636.143268-9-srini@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Alice Guo and committed by
Greg Kroah-Hartman
d54d5e29 c7ea8ead

+20
+20
drivers/nvmem/imx-ocotp-ele.c
··· 186 186 }, 187 187 }; 188 188 189 + static const struct ocotp_devtype_data imx94_ocotp_data = { 190 + .reg_off = 0x8000, 191 + .reg_read = imx_ocotp_reg_read, 192 + .size = 3296, /* 103 Banks */ 193 + .num_entry = 10, 194 + .entry = { 195 + { 0, 1, FUSE_FSB | FUSE_ECC }, 196 + { 7, 1, FUSE_FSB | FUSE_ECC }, 197 + { 9, 3, FUSE_FSB | FUSE_ECC }, 198 + { 12, 24, FUSE_FSB }, 199 + { 36, 2, FUSE_FSB | FUSE_ECC }, 200 + { 38, 14, FUSE_FSB }, 201 + { 59, 1, FUSE_ELE }, 202 + { 525, 2, FUSE_FSB | FUSE_ECC }, 203 + { 528, 7, FUSE_FSB }, 204 + { 536, 280, FUSE_FSB }, 205 + }, 206 + }; 207 + 189 208 static const struct ocotp_devtype_data imx95_ocotp_data = { 190 209 .reg_off = 0x8000, 191 210 .reg_read = imx_ocotp_reg_read, ··· 228 209 229 210 static const struct of_device_id imx_ele_ocotp_dt_ids[] = { 230 211 { .compatible = "fsl,imx93-ocotp", .data = &imx93_ocotp_data, }, 212 + { .compatible = "fsl,imx94-ocotp", .data = &imx94_ocotp_data, }, 231 213 { .compatible = "fsl,imx95-ocotp", .data = &imx95_ocotp_data, }, 232 214 {}, 233 215 };