Commit 7062d4e8 authored by Patrick Delaunay's avatar Patrick Delaunay Committed by Tom Rini
Browse files

scmi: translate the resource only when livetree is not activated

Call the translation function on the ofnode_read_resource result only
when the livetree is not activated.

Today of_address_to_resource() calls ofnode_read_resource() for livetree
support and fdt_get_resource() when livetree is not supported.

The fdt_get_resource() doesn't do the address translation
so when it is required when livetree is activated but this address
translation is already done by ofnode_read_resource().

Fixes: 240720e9

 ("firmware: scmi: mailbox/smt agent device")
Signed-off-by: Patrick Delaunay's avatarPatrick Delaunay <>
parent 34f8fc7c
......@@ -41,8 +41,13 @@ int scmi_dt_get_smt_buffer(struct udevice *dev, struct scmi_smt *smt)
if (ret)
return ret;
faddr = cpu_to_fdt32(resource.start);
paddr = ofnode_translate_address(args.node, &faddr);
/* TEMP workaround for ofnode_read_resource translation issue */
if (of_live_active()) {
paddr = resource.start;
} else {
faddr = cpu_to_fdt32(resource.start);
paddr = ofnode_translate_address(args.node, &faddr);
smt->size = resource_size(&resource);
if (smt->size < sizeof(struct scmi_smt_header)) {
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment