diff options
| author | Vincent Stehlé <[email protected]> | 2025-03-10 13:36:21 +0100 |
|---|---|---|
| committer | Fabio Estevam <[email protected]> | 2025-03-13 15:15:50 -0300 |
| commit | 048fabc21bf2e5333eeca7971e0e464fbe000912 (patch) | |
| tree | 7071cbb643de9bfcdb7680214d9168ced7324267 /doc/develop/driver-model | |
| parent | cf9b20cdef4fd0342b6113fee288dcab6c53dcf8 (diff) | |
imx8m: soc: cope with existing optee node
On i.MX8M SoCs, the /firmware/optee Devicetree node is created just before
booting the OS when OP-TEE is found running. If the node already exists,
this results in an error, which prevents the OS to boot:
Could not create optee node.
ERROR: system-specific fdt fixup failed: FDT_ERR_EXISTS
- must RESET the board to recover.
failed to process device tree
On the i.MX8M systems where CONFIG_OF_SYSTEM_SETUP is defined, the
ft_add_optee_node() function is called before booting the OS. It will
create the OP-TEE Devicetree node and populate it with reserved memory
informations gathered at runtime.
On on most i.MX8M systems the Devicetree is built with an optee node if
CONFIG_OPTEE is defined. This node is indeed necessary for commands and
drivers communicating with OP-TEE, even before attempting OS boot.
The aforementioned issue can happen on the Compulab IOT-GATE-iMX8, which is
the only in-tree i.MX8M system where both CONFIG_OPTEE and
CONFIG_OF_SYSTEM_SETUP are defined (see the imx8mm-cl-iot-gate*
defconfigs).
Deal with an existing optee node gracefully at runtime to fix this issue.
Signed-off-by: Vincent Stehlé <[email protected]>
Reviewed-by: Peng Fan <[email protected]>
Cc: Stefano Babic <[email protected]>
Cc: Fabio Estevam <[email protected]>
Cc: Tom Rini <[email protected]>
Cc: Tim Harvey <[email protected]>
Diffstat (limited to 'doc/develop/driver-model')
0 files changed, 0 insertions, 0 deletions
