diff options
| author | Patrick Delaunay <patrick.delaunay@foss.st.com> | 2022-05-20 18:24:41 +0200 |
|---|---|---|
| committer | Patrick Delaunay <patrick.delaunay@foss.st.com> | 2022-06-17 09:58:21 +0200 |
| commit | 3865a7ec9523122c4932d8e8d4b406d60884e8ae (patch) | |
| tree | 4a3c9d4f0a36d667095d4d3101b293cb85ed8bdc /arch/arm/mach-stm32mp/bsec.c | |
| parent | 2ff0866b45e8069753b8f962e5018ddcdfd7b966 (diff) | |
arm: stm32mp: move the get_otp helper function in bsec
As the get_otp() helper function in bsec are common for all STM32MP family,
move this function in bsec driver
Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
Diffstat (limited to 'arch/arm/mach-stm32mp/bsec.c')
| -rw-r--r-- | arch/arm/mach-stm32mp/bsec.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/mach-stm32mp/bsec.c b/arch/arm/mach-stm32mp/bsec.c index 506caa0a31b..c00130b08b3 100644 --- a/arch/arm/mach-stm32mp/bsec.c +++ b/arch/arm/mach-stm32mp/bsec.c @@ -632,3 +632,20 @@ bool bsec_dbgswenable(void) return false; } + +u32 get_otp(int index, int shift, int mask) +{ + int ret; + struct udevice *dev; + u32 otp = 0; + + ret = uclass_get_device_by_driver(UCLASS_MISC, + DM_DRIVER_GET(stm32mp_bsec), + &dev); + + if (!ret) + ret = misc_read(dev, STM32_BSEC_SHADOW(index), + &otp, sizeof(otp)); + + return (otp >> shift) & mask; +} |
