EmbeddedPkg: Remove misleading error message in FindNextMemoryNodeReg

FindNextMemoryNodeReg prints "ignoring disabled memory node" for all
top-level disabled nodes in the tree, not just the ones with the
"device_type" property set to "memory". Rework the loop to only print
the message for the relevant nodes.

Signed-off-by: Oleksandr Tymoshenko <ovt@google.com>
This commit is contained in:
Oleksandr Tymoshenko 2025-01-06 04:41:16 +00:00 committed by mergify[bot]
parent 107981f3f0
commit 9bb11cad9d

View File

@ -262,43 +262,45 @@ FindNextMemoryNodeReg (
break; break;
} }
DeviceType = fdt_getprop (mDeviceTreeBase, Next, "device_type", &Len);
if ((DeviceType == NULL) || (AsciiStrCmp (DeviceType, "memory") != 0)) {
continue;
}
if (!IsNodeEnabled (Next)) { if (!IsNodeEnabled (Next)) {
DEBUG ((DEBUG_WARN, "%a: ignoring disabled memory node\n", __func__)); DEBUG ((DEBUG_WARN, "%a: ignoring disabled memory node\n", __func__));
continue; continue;
} }
DeviceType = fdt_getprop (mDeviceTreeBase, Next, "device_type", &Len); //
if ((DeviceType != NULL) && (AsciiStrCmp (DeviceType, "memory") == 0)) { // Get the 'reg' property of this memory node. For now, we will assume
// // 8 byte quantities for base and size, respectively.
// Get the 'reg' property of this memory node. For now, we will assume // TODO use #cells root properties instead
// 8 byte quantities for base and size, respectively. //
// TODO use #cells root properties instead Status = GetNodeProperty (This, Next, "reg", Reg, RegSize);
// if (EFI_ERROR (Status)) {
Status = GetNodeProperty (This, Next, "reg", Reg, RegSize); DEBUG ((
if (EFI_ERROR (Status)) { DEBUG_WARN,
DEBUG (( "%a: ignoring memory node with no 'reg' property\n",
DEBUG_WARN, __func__
"%a: ignoring memory node with no 'reg' property\n", ));
__func__ continue;
));
continue;
}
if ((*RegSize % 16) != 0) {
DEBUG ((
DEBUG_WARN,
"%a: ignoring memory node with invalid 'reg' property (size == 0x%x)\n",
__func__,
*RegSize
));
continue;
}
*Node = Next;
*AddressCells = 2;
*SizeCells = 2;
return EFI_SUCCESS;
} }
if ((*RegSize % 16) != 0) {
DEBUG ((
DEBUG_WARN,
"%a: ignoring memory node with invalid 'reg' property (size == 0x%x)\n",
__func__,
*RegSize
));
continue;
}
*Node = Next;
*AddressCells = 2;
*SizeCells = 2;
return EFI_SUCCESS;
} }
return EFI_NOT_FOUND; return EFI_NOT_FOUND;