linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* nvmem: imx-ocotp: fusing write tools
@ 2019-12-18 10:10 Stefan Agner
  2019-12-18 10:18 ` Barisani, Andrea
  0 siblings, 1 reply; 2+ messages in thread
From: Stefan Agner @ 2019-12-18 10:10 UTC (permalink / raw)
  To: pure.logic, richard.leitner
  Cc: peng.fan, andrea, festevam, kernel, linux-arm-kernel

Hi,

We are looking to replace the NXP downstream OTP driver (CONFIG_FSL_OTP)
with the new upstream nvmem based driver. I was wondering if there is
user-space tooling around which can be used to write fuses. The NXP
driver had the fuse map as part of the API, so fusing was rather simple
and only required an echo into the right file. The new driver requires a
seek to the right offset. 

I found this tool which provides fuse maps as yaml files and makes
fusing rather simple:
https://github.com/inversepath/crucible

At this point it seems to miss i.MX 8 series fuse maps. Also we so far
have no go runtime on our production system, we consider writing a
(probably simpler) C implementation thereof.

What is generally used to write fuses using the nvmem driver?

--
Stefan

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: nvmem: imx-ocotp: fusing write tools
  2019-12-18 10:10 nvmem: imx-ocotp: fusing write tools Stefan Agner
@ 2019-12-18 10:18 ` Barisani, Andrea
  0 siblings, 0 replies; 2+ messages in thread
From: Barisani, Andrea @ 2019-12-18 10:18 UTC (permalink / raw)
  To: Stefan Agner
  Cc: peng.fan@nxp.com, kernel@pengutronix.de,
	pure.logic@nexus-software.ie, festevam@gmail.com,
	linux-arm-kernel@lists.infradead.org, richard.leitner@skidata.com

On Wed, Dec 18, 2019 at 11:10:59AM +0100, Stefan Agner wrote:
> Hi,
> 
> We are looking to replace the NXP downstream OTP driver (CONFIG_FSL_OTP)
> with the new upstream nvmem based driver. I was wondering if there is
> user-space tooling around which can be used to write fuses. The NXP
> driver had the fuse map as part of the API, so fusing was rather simple
> and only required an echo into the right file. The new driver requires a
> seek to the right offset. 
> 
> I found this tool which provides fuse maps as yaml files and makes
> fusing rather simple:
> https://github.com/inversepath/crucible
> 
> At this point it seems to miss i.MX 8 series fuse maps. Also we so far
> have no go runtime on our production system, we consider writing a
> (probably simpler) C implementation thereof.
> 

Go runtime is not needed to execute crucible which can be compiled like any C
application to generate a binary which requires no supporting files (other
than the fusemap YAML).

Crucible does support NVMEM based drivers and therefore I think it can be
adapted also to include i.MX8 support.

If would like to sponsor it we would be happy to generate the fusemap file
for the i.MX8. If you send us a development board, or we can purchase one as
part of the sponsorship, it would be ideal to test it.

Cheers

> What is generally used to write fuses using the nvmem driver?
> 
> --
> Stefan

-- 
Andrea Barisani | Head of Hardware Security | F-Secure

 www.f-secure.com • foundry.f-secure.com • andrea.bio
  0A76 074A 02CD E989 CE7F AC3F DA47 578E 864C 9B9E
    "Pluralitas non est ponenda sine necessitate"
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-12-18 10:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-18 10:10 nvmem: imx-ocotp: fusing write tools Stefan Agner
2019-12-18 10:18 ` Barisani, Andrea

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).