kernel-hacking-2024-linux-s.../drivers
Patrick Delaunay f0ac5b2303 nvmem: stm32: add support for STM32MP25 BSEC to control OTP data
On STM32MP25, OTP area may be read/written by using BSEC (boot, security
and OTP control). The BSEC internal peripheral is only managed by the
secure world.

The 12 Kbits of OTP (effective) are organized into the following regions:
- lower OTP (OTP0 to OTP127) = 4096 lower OTP bits,
  bitwise (1-bit) programmable
- mid OTP (OTP128 to OTP255) = 4096 middle OTP bits,
  bulk (32-bit) programmable
- upper OTP (OTP256 to OTP383) = 4096 upper OTP bits,
  bulk (32-bit) programmable,
  only accessible when BSEC is in closed state.

As HWKEY and ECIES key are only accessible by ROM code;
only 368 OTP words are managed in this driver (OTP0 to OTP267).

This patch adds the STM32MP25 configuration for reading and writing
the OTP data using the OP-TEE BSEC TA services.

Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20231215111536.316972-11-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-12-15 13:30:08 +01:00
..
accel
accessibility
acpi ACPI: utils: Fix error path in acpi_evaluate_reference() 2023-12-07 21:38:21 +01:00
amba
android android: binder: fix a kernel-doc enum warning 2023-12-06 08:48:26 +09:00
ata SCSI fixes on 20231130 2023-12-02 06:27:20 +09:00
atm
auxdisplay
base Char/Misc driver fixes for 6.7-rc5 2023-12-09 12:44:10 -08:00
bcma
block
bluetooth
bus
cache
cdrom
cdx
char
clk
clocksource
comedi drivers/comedi: use standard array-copy-function 2023-12-07 11:08:45 +09:00
connector
counter
cpufreq cpufreq/amd-pstate: Only print supported EPP values for performance governor 2023-11-29 22:04:15 +01:00
cpuidle
crypto
cxl
dax
dca
devfreq
dio
dma
dma-buf dma-buf: fix check in dma_resv_add_fence 2023-11-27 20:00:47 +01:00
dpll
edac
eisa
extcon
firewire firewire fixes for 6.7-rc4 2023-12-03 09:03:07 +09:00
firmware Merge 6.7-rc5 into char-misc-next 2023-12-11 08:39:35 +01:00
fpga
fsi
gnss
gpio gpiolib: sysfs: Fix error handling on failed export 2023-12-01 10:44:48 +01:00
gpu Two fixups 2023-12-08 13:55:32 +10:00
greybus Revert "greybus: gb-beagleplay: Ensure le for values in transport" 2023-12-05 09:10:01 +09:00
hid
hsi
hte
hv
hwmon hwmon: (corsair-psu) Fix probe when built-in 2023-12-08 10:36:02 -08:00
hwspinlock
hwtracing
i2c
i3c
idle
iio
infiniband RDMA/irdma: Avoid free the non-cqp_request scratch 2023-12-04 20:02:41 -04:00
input
interconnect
iommu iommufd 6.7 first rc pull request 2023-12-05 06:54:52 +09:00
ipack ipack: Remove usage of the deprecated ida_simple_xx() API 2023-12-07 11:09:19 +09:00
irqchip
isdn
leds leds: trigger: netdev: fix RTNL handling to prevent potential deadlock 2023-12-06 07:36:55 -08:00
macintosh
mailbox
mcb
md block-6.7-2023-12-08 2023-12-08 12:36:45 -08:00
media
memory
memstick
message
mfd
misc Merge 6.7-rc5 into char-misc-next 2023-12-11 08:39:35 +01:00
mmc
most
mtd
mux
net net: dsa: microchip: provide a list of valid protocols for xmit handler 2023-12-07 10:03:17 -08:00
nfc
ntb
nubus
nvdimm
nvme nvme-pci: Add sleep quirk for Kingston drives 2023-12-07 08:53:20 -08:00
nvmem nvmem: stm32: add support for STM32MP25 BSEC to control OTP data 2023-12-15 13:30:08 +01:00
of of: device: Export of_device_make_bus_id() 2023-12-15 13:30:07 +01:00
opp
parisc
parport Merge 6.7-rc5 into char-misc-next 2023-12-11 08:39:35 +01:00
pci
pcmcia
peci
perf
phy
pinctrl
platform Merge 6.7-rc5 into char-misc-next 2023-12-11 08:39:35 +01:00
pmdomain Power management fixes for 6.7-rc4 2023-12-02 09:01:00 +09:00
pnp
power
powercap powercap: DTPM: Fix missing cpufreq_cpu_put() calls 2023-12-05 20:51:24 +01:00
pps
ps3
ptp
pwm
rapidio
ras
regulator
remoteproc
reset
rpmsg
rtc
s390
sbus
scsi scsi: be2iscsi: Fix a memleak in beiscsi_init_wrb_handle() 2023-12-05 20:38:26 -05:00
sh
siox
slimbus
soc drivers: soc: xilinx: Fix error message on SGI registration failure 2023-12-07 11:18:29 +09:00
soundwire
spi
spmi
ssb
staging
target
tc
tee OP-TEE fix for supplicant based device enumeration 2023-12-06 16:15:26 +01:00
thermal
thunderbolt
tty serial: 8250_dw: Add ACPI ID for Granite Rapids-D UART 2023-12-07 10:48:56 +09:00
ufs scsi: ufs: core: Clear cmd if abort succeeds in MCQ mode 2023-11-24 20:35:24 -05:00
uio
usb usb: gadget: f_hid: fix report descriptor allocation 2023-12-07 10:12:05 +09:00
vdpa pds_vdpa: set features order 2023-12-01 09:55:01 -05:00
vfio vfio/pds: Fix possible sleep while in atomic context 2023-11-27 09:29:03 -07:00
vhost
video vgacon: drop IA64 reference in VGA_CONSOLE dependency list 2023-11-28 19:04:20 +00:00
virt vmgenid: emit uevent when VMGENID updates 2023-11-30 10:52:00 +00:00
virtio
w1
watchdog
xen xen/events: fix error code in xen_bind_pirq_msi_to_irq() 2023-11-28 12:48:27 +01:00
zorro
Kconfig
Makefile