From: Lukas Funke <lukas.fu...@weidmueller.com>

This series adds a driver to read and write ZynqMP eFuses [1]. The
driver can be accessed by the 'fuse read' and 'fuse write' commands

Example:

=> fuse read 0 0xc 3
Reading bank 0:

Word 0x0000000c: 3cb16685 013af244 40000000

Note: Accessing eFuses requires eFuse access to be enabled in the
underlying PMU firmware.

Use cases are:
 - Reading/writing user specific eFuses to enable device specific
   implementations
 - Revoking SPK IDs
 - Reading SoC version/DNA

[1] https://docs.amd.com/r/en-US/ug1085-zynq-ultrascale-trm/eFUSE


Changes in v2:
- Drop vendor specific fuse cmd, use existing fuse cmd
- Minor code refactoring (reverse x-mas tree)

Lukas Funke (2):
  firmware: zynqmp: Add support to access efuses
  drivers: misc: Add driver to access ZynqMP efuses

 drivers/firmware/firmware-zynqmp.c |  31 +++
 drivers/misc/Kconfig               |   8 +
 drivers/misc/Makefile              |   1 +
 drivers/misc/zynqmp_efuse.c        | 324 +++++++++++++++++++++++++++++
 include/zynqmp_firmware.h          |   2 +
 5 files changed, 366 insertions(+)
 create mode 100644 drivers/misc/zynqmp_efuse.c

-- 
2.30.2

Reply via email to