From: Alice Guo <alice.guo@nxp.com>
Add OCOTP device type data for i.MX94 SoC, including register offset,
total size, and fuse bank layout. This enables NVMEM access to the
i.MX94's eFuse regions.
Signed-off-by: Alice Guo <alice.guo@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
---
drivers/nvmem/imx-ocotp-ele.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/drivers/nvmem/imx-ocotp-ele.c b/drivers/nvmem/imx-ocotp-ele.c
index 7807ec0e2d18..7cf7e809a8f5 100644
--- a/drivers/nvmem/imx-ocotp-ele.c
+++ b/drivers/nvmem/imx-ocotp-ele.c
@@ -186,6 +186,25 @@ static const struct ocotp_devtype_data imx93_ocotp_data = {
},
};
+static const struct ocotp_devtype_data imx94_ocotp_data = {
+ .reg_off = 0x8000,
+ .reg_read = imx_ocotp_reg_read,
+ .size = 3296, /* 103 Banks */
+ .num_entry = 10,
+ .entry = {
+ { 0, 1, FUSE_FSB | FUSE_ECC },
+ { 7, 1, FUSE_FSB | FUSE_ECC },
+ { 9, 3, FUSE_FSB | FUSE_ECC },
+ { 12, 24, FUSE_FSB },
+ { 36, 2, FUSE_FSB | FUSE_ECC },
+ { 38, 14, FUSE_FSB },
+ { 59, 1, FUSE_ELE },
+ { 525, 2, FUSE_FSB | FUSE_ECC },
+ { 528, 7, FUSE_FSB },
+ { 536, 280, FUSE_FSB },
+ },
+};
+
static const struct ocotp_devtype_data imx95_ocotp_data = {
.reg_off = 0x8000,
.reg_read = imx_ocotp_reg_read,
@@ -209,6 +228,7 @@ static const struct ocotp_devtype_data imx95_ocotp_data = {
static const struct of_device_id imx_ele_ocotp_dt_ids[] = {
{ .compatible = "fsl,imx93-ocotp", .data = &imx93_ocotp_data, },
+ { .compatible = "fsl,imx94-ocotp", .data = &imx94_ocotp_data, },
{ .compatible = "fsl,imx95-ocotp", .data = &imx95_ocotp_data, },
{},
};
--
2.43.0
On Wed, Sep 24, 2025 at 06:06:24PM +0800, Alice Guo (OSS) wrote: > From: Alice Guo <alice.guo@nxp.com> > > Add OCOTP device type data for i.MX94 SoC, including register offset, > total size, and fuse bank layout. This enables NVMEM access to the > i.MX94's eFuse regions. > > 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> > drivers/nvmem/imx-ocotp-ele.c | 20 ++++++++++++++++++++ > 1 file changed, 20 insertions(+) > > diff --git a/drivers/nvmem/imx-ocotp-ele.c b/drivers/nvmem/imx-ocotp-ele.c > index 7807ec0e2d18..7cf7e809a8f5 100644 > --- a/drivers/nvmem/imx-ocotp-ele.c > +++ b/drivers/nvmem/imx-ocotp-ele.c > @@ -186,6 +186,25 @@ static const struct ocotp_devtype_data imx93_ocotp_data = { > }, > }; > > +static const struct ocotp_devtype_data imx94_ocotp_data = { > + .reg_off = 0x8000, > + .reg_read = imx_ocotp_reg_read, > + .size = 3296, /* 103 Banks */ > + .num_entry = 10, > + .entry = { > + { 0, 1, FUSE_FSB | FUSE_ECC }, > + { 7, 1, FUSE_FSB | FUSE_ECC }, > + { 9, 3, FUSE_FSB | FUSE_ECC }, > + { 12, 24, FUSE_FSB }, > + { 36, 2, FUSE_FSB | FUSE_ECC }, > + { 38, 14, FUSE_FSB }, > + { 59, 1, FUSE_ELE }, > + { 525, 2, FUSE_FSB | FUSE_ECC }, > + { 528, 7, FUSE_FSB }, > + { 536, 280, FUSE_FSB }, > + }, > +}; > + > static const struct ocotp_devtype_data imx95_ocotp_data = { > .reg_off = 0x8000, > .reg_read = imx_ocotp_reg_read, > @@ -209,6 +228,7 @@ static const struct ocotp_devtype_data imx95_ocotp_data = { > > static const struct of_device_id imx_ele_ocotp_dt_ids[] = { > { .compatible = "fsl,imx93-ocotp", .data = &imx93_ocotp_data, }, > + { .compatible = "fsl,imx94-ocotp", .data = &imx94_ocotp_data, }, > { .compatible = "fsl,imx95-ocotp", .data = &imx95_ocotp_data, }, > {}, > }; > > -- > 2.43.0 >
© 2016 - 2025 Red Hat, Inc.