Hello NXP Team,
I am working on a custom board based on the NXP i.MX93 processor and am currently trying to enable and test the tamper detection functionality under Linux.
Processor: NXP i.MX93
BSP Version: LF 6.6.52_2.2.0
Operating System: Linux (Yocto-based build)
Reviewed the BBNSM (Battery-Backed Non-Secure Monitor) block and identified relevant registers:
Base Address: 0x44440000
Tamper Status / Enable / Clear Offsets: 0x30 / 0x34 / 0x38
Developed a small kernel module to map this region using ioremap() and read the registers.
However, the system crashes or powers off immediately after accessing these addresses.
Error observed:
=> Internal error: synchronous external abort: 000000009600001
Attempted reading with devmem2, but it results in a Bus error.
These symptoms suggest that the BBNSM or tamper registers are secure-only, and thus not accessible from the non-secure (Linux) domain.
Could you please provide guidance or documentation on:
How to enable and access the tamper detection functionality from Linux on i.MX93.
Whether tamper registers are accessible only in the secure domain.
Any device tree examples, reference drivers, or firmware configuration steps.required to expose tamper events to Linux.